在C#中,我们有一种方法可以从模数字符串中得出RSA密钥大小,如下所示,
是否有类似的方法来获取JavaScript或打字稿中的密钥大小?
var bytesModulus = Convert.FromBase64String(modulusString);
using (var rsa = new RSACryptoServiceProvider())
{
var rsaKeyInfo = rsa.ExportParameters(false);
rsaKeyInfo.Modulus = modulus;
rsa.ImportParameters(rsaKeyInfo);
return rsa.KeySize;
}
答案 0 :(得分:0)
假设密钥遵循使模数在2^(8n - 1)
和(2^(8n) - 1)
之间的规则,则只需知道模数的字节长度(然后乘以8)即可。
删除任何空白后,答案将是:
length * 4
(长度/ 2为字节,* 8为位)((length + 3) / 4) * 24
—或仅获得=填充版本:length * 6
(长度/ 4 * 3字节,* 8表示位,当输入时减小为* 3 * 2已知是4的倍数)length * 3.3
,小于length * 6.7
(或者,如果愿意,可以小于3和7)。