次の C++ コードに相当するものを go で実行するにはどうすればよいですか?
RSA *key = PEM_read_RSAPrivateKey(f, NULL, NULL, NULL);
std::vector<CK_BYTE> out(128);
RSA_private_encrypt(in.size(), &in[0], &out[0], key, RSA_PKCS1_PADDING)
Go rsa パッケージを見てきました。EncryptPKCS1v15() は RSA_private_encrypt() と同等のようです。しかし、GenerateKey() 以外の PrivateKey オブジェクトを作成する方法がわかりません。これは (ソースを見て確認できます) ランダムな素数を使用してオブジェクトを生成します。
PEM ファイルをデコードして PrivateKey フィールドの値を引き出す方法を理解する必要がありますか?
更新:上記の Python の C++ コードに相当するものは次のとおりです。
from M2Crypto import RSA
rsa_private_key = RSA.load_key('privkey.pem')
encrypted = rsa_private_key.private_encrypt(digest, RSA.pkcs1_padding)
Goに既存の同等物はありますか?