Closed makmorit closed 1 year ago
f9e9003の対応による調査コーディング(EC鍵の内部形式変換処理[注1])の出力をご参考までに掲載いたします。
2023-03-29 17:05:21.444 [debug] EC key data for restore (97 bytes)
04 90 99 23 34 d1 db 65 29 f3 da 89 52 42 33 fb
f6 3c a5 25 02 e3 41 91 e8 a5 16 6f 3f cc 32 f3
3b 30 bd 98 bb 85 6f 75 85 05 e7 81 4e 19 57 65
c2 df 9b be 2b 20 7a e8 aa 21 b2 bd fc 1b 13 77
1f cf 91 6d 82 30 03 cb 4b 4d c8 6a ff 05 14 49
c1 f4 11 fc 67 37 b7 3a 71 53 a3 4e 65 0d 03 95
d0
2023-03-29 17:05:21.451 [debug] SecKeyCreateWithData: <SecKeyRef curve type: kSecECCurveSecp256r1, algorithm id: 3, key type: ECPrivateKey, version: 4, block size: 256 bits, addr: 0x7f9095f0c500>
2023-03-29 17:05:21.452 [debug] SecKeyCopyPublicKey: <SecKeyRef curve type: kSecECCurveSecp256r1, algorithm id: 3, key type: ECPublicKey, version: 4, block size: 256 bits, y: 30BD98BB856F758505E7814E195765C2DF9BBE2B207AE8AA21B2BDFC1B13771F, x: 90992334D1DB6529F3DA89524233FBF63CA52502E34191E8A5166F3FCC32F33B, addr: 0x7f9095f0be80>
[注1] インポートした秘密鍵/証明書ファイルから、Objective-C内部形式(SecKeyRef
)に変換する処理
53d64abまでの対応による調査コーディング(本件移行対象である、EC鍵の妥当性チェック処理)の出力をご参考までに掲載いたします。
2023-03-29 21:32:28.405 [debug] EC key data for restore (97 bytes)
04 90 99 23 34 d1 db 65 29 f3 da 89 52 42 33 fb
f6 3c a5 25 02 e3 41 91 e8 a5 16 6f 3f cc 32 f3
3b 30 bd 98 bb 85 6f 75 85 05 e7 81 4e 19 57 65
c2 df 9b be 2b 20 7a e8 aa 21 b2 bd fc 1b 13 77
1f cf 91 6d 82 30 03 cb 4b 4d c8 6a ff 05 14 49
c1 f4 11 fc 67 37 b7 3a 71 53 a3 4e 65 0d 03 95
d0
2023-03-29 21:32:28.412 [debug] privSecKeyRef: <SecKeyRef curve type: kSecECCurveSecp256r1, algorithm id: 3, key type: ECPrivateKey, version: 4, block size: 256 bits, addr: 0x7f80b82490c0> [注1]
2023-03-29 21:32:28.412 [debug] pubSecKeyRef: <SecKeyRef curve type: kSecECCurveSecp256r1, algorithm id: 3, key type: ECPublicKey, version: 4, block size: 256 bits, y: 30BD98BB856F758505E7814E195765C2DF9BBE2B207AE8AA21B2BDFC1B13771F, x: 90992334D1DB6529F3DA89524233FBF63CA52502E34191E8A5166F3FCC32F33B, addr: 0x7f80b8248570> [注1]
2023-03-29 21:32:28.413 [debug] ECDSA signature (71 bytes)
30 45 02 21 00 e2 3f 62 36 1f 7f 4c 63 cb bb d5
64 c7 d1 d2 52 1e 42 f6 d8 52 6f cd f5 87 6d 74
7d 81 39 78 68 02 20 5e 89 d1 bb 46 13 c9 11 cb
92 cd bb fa 3e cd 8a 5f d2 cb b5 16 b1 27 06 97
ae 3f 7e 86 00 e6 5a
2023-03-29 21:32:28.414 [info] ECDSA signature verify success [注2]
[注1] インポートした秘密鍵/証明書ファイルから、Objective-C内部形式(SecKeyRef
)に変換する処理(既報)
[注2] 秘密鍵で署名し、証明書から抽出した公開鍵で検証する処理の結果
7b799beまでの対応の結果、macOS版管理ツールの「鍵・証明書ファイルのインストール処理」における暗号化処理が、OpenSSLからAppleのSecurityフレームワークに置き換えられた事を確認しています。[注1]
[注1] OpenSSLを使用していた「秘密鍵と証明書の整合性検証」処理を、Securityフレームワークで置き換えています。
概要
macOS版管理ツールの暗号化処理で使用中のOpenSSL(1.1.1t)が2023年9月でサポートを打ち切るそうですので、段階的にApple社から用意されている
CommonCrypto
により、移行を進めていきます。 (こちらのコメントをご参照)本プルリクエストの対象は「FIDO Attestation」周りの処理になります。 (関連機能はこちらのドキュメント)