マスターシークレット/キーを生成するには、シェルスクリプトで概説されている手順に従いました。これらの手順を手動で数回入力して($keyを手動で入力して)、データが正しく渡されていることを確認しましたが、最終的には同じ結果/データに到達しました。
キー = 前のステップで復号化されたプレマスターキー
03033ab0d673caefc4a9f6d35cf51d349815d67a09ac454f11dfb9741c96001a
66a3e82f688b82138403018384cf35f2
mseed.key = "master secret" + client.random + server.random ファイルはバイナリ ファイルなので、hexdump xxd -p mseed.key を使用するとデータを確認できます。
6d617374657220736563726574 5b689404b500456eef2f1a79ec782eb3ee
aac3a8d7c02ae03c8426f363b18a33 5b6894043bb1289e158b0278ef66dc
53c9fa71e75e900739af2657cd4476ec1e
Note: the spaces are not in the data I added those manually to make it clear
クライアント.ランダムxxd -p crnd.bin
5b689404b500456eef2f1a79ec782eb3eeaac3a8d7c02ae03c8426f363b1
8a33
server.random xxd - srnd.bin
5b6894043bb1289e158b0278ef66dc53c9fa71e75e900739af2657cd4476
ec1e
念のため、これらのランダムには UNIX 時間のプレフィックスも含まれています (正しいですか?)
key=${1} #passed to shell script
openssl dgst -sha256 -mac hmac -macopt hexkey:$key <mseed.key -binary >a1
openssl dgst -sha256 -mac hmac -macopt hexkey:$key <a1 -binary >a2
openssl dgst -sha256 -mac hmac -macopt hexkey:$key <a2 -binary >a3
openssl dgst -sha256 -mac hmac -macopt hexkey:$key <a3 -binary >a4
次のステップは次のとおりです。
cat a1 mseed.key | openssl dgst -sha256 -mac hmac -macopt hexkey:$key -binary >k1
cat a2 mseed.key | openssl dgst -sha256 -mac hmac -macopt hexkey:$key -binary >k2
cat a3 mseed.key | openssl dgst -sha256 -mac hmac -macopt hexkey:$key -binary >k3
cat a4 mseed.key | openssl dgst -sha256 -mac hmac -macopt hexkey:$key -binary >k4
続いてマスターシークレットを抽出する
cat k1 k2 | head -c48 | xxd -p -c48 > master_secret.hex
truncate -s-1 master_secret.hex
この時点でのmaster_secret
$cat master_secret.hex
ee45b637f95ddf3b3bf51661cdf4e07bdd63a67f2d2df776322992b3fd871fe4ba38debcd7179bf4
ef8b8bb814fe4544d
Wiresharkのログから、会話中のクライアントのランダムを抽出し、バイナリファイルcrnd.binとして保存しました。
Random: 5b689404b500456eef2f1a79ec782eb3eeaac3a8d7c02ae0...
GMT Unix Time: Aug 6, 2018 14:31:32.000000000 Eastern Daylight Time
Random Bytes: b500456eef2f1a79ec782eb3eeaac3a8d7c02ae03c8426f3...
その後、サーバーの時間とランダムバイトをキャプチャし、srnd.binとして保存します。
Random: 5b6894043bb1289e158b0278ef66dc53c9fa71e75e900739...
GMT Unix Time: Aug 6, 2018 14:31:32.000000000 Eastern Daylight Time
Random Bytes: 3bb1289e158b0278ef66dc53c9fa71e75e900739af2657cd...
デイブ、この時点では、何が足りないのかわかりません。変数の null など、何かが足りないとは思いません。データと手順を注意深く確認しましたが、何が足りないのかわかりません。これらの手順で何か気づきましたか? ありがとうございます