【发布时间】:2015-05-01 04:46:21
【问题描述】:
给定 pem 格式的密钥,类似于
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,DE1BB301BDE4BB45
msUEpZKZ0uaOmhGXBPnh2GoNSXyExdeqETd9w71l0G1bk1cCbiV4EOnmR7bcN+OE
(20 lines)
YoIx/E+tFHkt3gQcFhVUNgSOe/5+huXwRwUC5dthPzzZFlDCXHfwfrrBzOSGxZpX
uBs1JxY4qOLRdZVaZlQespForxBTYD6RuHi1UI5lqEW7363VyCLho9QYgGFM0LUi
qbln5WV37PTmayxMfzlGUB2XazwON+WU3obbXuCFXAy96Y6VGzv0lQ==
-----END RSA PRIVATE KEY-----
我尝试使用以下代码解密的加密字符串(使用公钥加密)
TripleDESCryptoServiceProvider des = new TripleDESCryptoServiceProvider();
des.IV = HextoByte("DE1BB301BDE4BB45");
des.Padding = PaddingMode.None;
des.Mode = CipherMode.CBC;
des.Key = Convert.FromBase64String(//Key from above from ms.. to ==);
byte[] encrypted = Convert.FromBase64String("");
byte[] decrypted = des.CreateDecryptor().TransformFinalBlock(encrypt, 0, encrypt.Length);
string decryptedString = Encoding.UTF8.GetString(decrypted)
分配键时导致异常 “指定的密钥不是该算法的有效大小”
密钥是使用生成的(也尝试使用 192)
openssl genrsa -des3 -out Key.pem 2048
公钥是使用
生成的openssl rsa -in Key.pem -pubout > Key.pub
谁能帮我指出我遗漏了什么或做错了什么?
谢谢
【问题讨论】:
-
您使用的是哪个版本的 OpenSSH?
-
ssh -v OpenSSH_6.2p2, OSSLShim 0.9.8r 2011 年 12 月 8 日。版本会影响什么吗?
-
不确定,但拥有版本信息是一个完整的问题。
-
我什至尝试过使用从 openssl genrsa -des3 -out Key.pem 192 生成的密钥
-
"ms...==" 是序列化和编码的私钥,而不是 DES 密钥!只是为了确保,您是说您没有使用密码加密私钥?
标签: c# encryption rsa