2

coreFoundation の署名を含む証明書のエンコードされたコンテンツ全体をハッシュするにはどうすればよいですか?

私は実際に Windows CryptHashCertificate() に相当するものを探しています。

サンプルコードをいただければ幸いです。

4

1 に答える 1

0

誰かがこれが役に立つと思った場合に備えて、答えを投稿しています...

キーチェーン内の証明書を検索し、検索項目を SecCertificateRef にキャストすることで、Windows 関数の結果を一致させることができました。

// certItem is of SecKeychainItemRef 


CSSM_DATA certData;
unsigned char checksumResult[CC_MD5_DIGEST_LENGTH] = {0};
SecCertificateRef certRef = (SecCertificateRef) certItem;

SecCertificateGetData(certRef, &certData);
memset(checksumResult, 0, CC_MD5_DIGEST_LENGTH);
CC_MD5(certData.Data, certData.Length, checksumResult);
于 2013-07-22T09:14:56.820 に答える