L'esportazione di sicurezza di Mac OS X non accetta la passphrase


11

Sto cercando di esportare alcuni elementi sul mio portachiavi in ​​questo modo:

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

ma ottengo sempre questo errore:

security: SecKeychainItemExport: Passphrase is required for import/export

Cosa dà?

chiarimento : ho effettuato l'accesso tramite SSH.

Risposte:


2

Quando corro

security export -t identities

Ottengo lo stesso messaggio di errore:

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

Tuttavia, se specifico un formato con -f open (e inserisco il flusso di output binario in un file), funziona:

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

produce un file su cui posso lavorare tramite openssl.

Mi sembra che securitystia semplicemente usando il messaggio di errore sbagliato qui, quindi sembra che la funzione non funzioni. Probabilmente dovrebbe dire "Devi specificare un formato per esportare le chiavi private", o parole in tal senso.

L'intuizione reale viene da questo tweet .


5

Questo è solo rotto, IMO. 'export di sicurezza' si comporta molto male se si tenta di esportare le chiavi private e si accede con SSH. Gli stessi comandi funzionano quando si accede dalla GUI. È apposta?

A seconda di ciò di cui hai bisogno, potresti essere in grado di aggirare il problema con "security find-certificate" o "security export -t certs". Funziona tutto fino a quando non esporti una chiave privata.


3

Se la tua passphrase ha dei simboli dispari che la tua shell sta deglutendo, prova a usare virgolette singole anziché doppie per impedire l'interpolazione.

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

Penso che questo non sia un problema di quotazioni.
Charles Stewart,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.