如何使这个RSA lib(只有en / decryption功能(!))签署一些东西?

时间:2010-08-30 21:40:08

标签: javascript cryptography rsa

或具体 - 我正在使用this javascript RSA库作为我的实验项目的客户端代码...我希望能够签名并验证消息( - >加密私有和解密公钥)

有没有办法以en / decrypting的算法用“反向”键来改变密钥数据?我试图交换e和d(因为这就是我从维基百科看来的不同之处) - 用于“签名”它有效(但我认为它是不可加密的垃圾)...用于“验证”我试图计算d mod(p-1),d mod(q-1)和1 / q mod p用e而不是e用于验证的解密算法......但它真的是我认为的吗?如果是,我想它不必存储在私钥中,因为它很容易计算,有d,p和q ......?

关键点:如果有办法将修改后的私钥提供给加密算法进行签名,对应对方也是如此 - 我该怎么做?必须对密钥进行哪些修改?

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

你不能。

加密和签名具有不同的填充。有时,您会看到加密邮件哈希以获取签名的建议。但是,这个建议是bincorrect。它导致与正确的签名方案不兼容的东西。而且,您的实施可能实际上是不安全的。 RSA填充有很长的缺陷历史。即使是标准化的委员也不总能做对。