2016-11-13 2 views
1

インストールされているすべての証明書をキーチェーンに一覧表示し、Apple開発ポータルから証明書の作成/有効期限と比較するスクリプトを作成しようとしています。Mac Keychainのすべての証明書を列挙し、作成/有効期限を比較します

私はsecurityhttps://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/man1/security.1.html)とopensslのドキュメントを見ましたが、私は証明書を一方から他方に渡すことはできません。

代わりにSecurity.frameworkを直接使用することですが、証明書の作成/有効期限をダンプする明白な方法はありません。

ガイダンスはありますか?

+0

* Keychain Dumper *のソースコードを確認してください。通常、Pentesterで使用されているiOS脱獄ユーティリティの周りに見つけることができます。 – jww

+0

ソースコードは 'security find-certificate'と同じように見えますが、コマンドラインで確認できる値をダンプします。日付はありません。 – ray

答えて

0

コマンドラインでsecurity find-certificate -a -pを実行し、返されたPEMエンコードされた証明書を分割してopenssl x509 -inform PEM ....に1つずつフィードすると思います。

コードで、あなたはkSecClass = kSecClassCertificateと= kSecMatchLimitAllkSecMatchLimitSecItemCopyMatchingを使用して証明書を列挙することができます。 SecCertificateCopyValues()を使用して証明書の有効期限を取得できるかもしれませんが、そうでない場合は、SecCertificateCopyData()を使用して証明書自体(DERエンコードされたブロブとして)を取得し、openssl x509 -inform DER ....にパイプすることができます。

関連する問題