Экспорт безопасности Mac OS X не принимает парольную фразу


11

Я пытаюсь экспортировать некоторые элементы в моей цепочке для ключей, как это:

hostname:~ username$ security export -k login.keychain -t all -P "passphrase"

но я всегда получаю эту ошибку:

security: SecKeychainItemExport: Passphrase is required for import/export

Что дает?

уточнение : я вошел через SSH.

Ответы:


2

Когда я бегу

security export -t identities

Я получаю то же сообщение об ошибке:

security: SecKeychainItemExport: Passphrase is required for import/export.

Однако, если я укажу формат с открытым ключом -f (и помещу двоичный поток вывода в файл), он будет работать:

security export -P testing -f pkcs12 -t identities -o test.p12

дает файл, с которым я могу работать через openssl.

Мне кажется, что я securityпросто использую здесь неправильное сообщение об ошибке, поэтому кажется, что эта функция не работает. Вероятно, в нем должно быть сказано «Вы должны указать формат для экспорта закрытых ключей» или слова на этот счет.

Фактическое понимание приходит из этого твита .


5

Это просто сломано, ИМО. «экспорт безопасности» ведет себя очень плохо, если вы пытаетесь экспортировать закрытые ключи и входите в систему с помощью SSH. Те же команды работают, когда вы входите из GUI. Это специально?

В зависимости от того, что вам нужно, вы можете обойти это с помощью «security find-сертификаты» или «security export -t certs». Все это работает до тех пор, пока вы не экспортируете закрытый ключ.


3

Если в вашей парольной фразе есть какие-то нечетные символы, которые глотает ваша оболочка, попробуйте использовать одинарные кавычки вместо двойных, чтобы избежать интерполяции.

security export -k login.keychain -t all -P 'passphrase'

Я думаю, что это не вопрос цитаты.
Чарльз Стюарт
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.