2016-11-14 11 views
0

SSL *コンテキスト変数からTLSセッションの秘密鍵を取得することはできますか?私は公開鍵で暗号化された文字列を持っており、SSL *コンテキストから対応する秘密鍵を使って解読したいと思います。openssl(ssl_st)のSSLコンテキストで秘密鍵を使用してデータを復号する

私はこれを試してみましたが、あるが動作しない:

EVP_PKEY_CTX *ctx; 
ctx = EVP_PKEY_CTX_new(pkey, NULL); 
EVP_PKEY_decrypt(ctx, *out, &outlen, in, inlen) 

in/inlenが暗号化されている pkeys->cert->key->privatekeyである(SはTLSセッションでは、既存のSSL *変数です)文字列、

out/outlenが期待される出力です。

ご提案は大歓迎です。ありがとう。

答えて

1

申し訳ありませんが、そのコードは実際には機能していますが、それはちょうどパディングの問題でした。

私が呼んでいた。

EVP_PKEY_CTX_set_rsa_padding(ctx, RSA_PKCS1_OAEP_PADDING); 

できるだけ早く私は解読が働いて、その行を削除したとして。どうしてパッディングがうまくいくのか誰でも説明できるのかどうかわからないのですか?つまり、どのようなパディングが使用されているかわかっていなければ、無視することができます(つまり、ラインを削除する)。

関連する問題