0

在 xml 签名中的签名方法中,您已经指定了这种格式:SignatureMethod.RSA_SHA1但是当使用普通签名时,您只需执行

Cipher c1=Cipher.getInstance("RSA");

那么这两者有什么区别呢?

4

1 回答 1

2

区别很简单:

RSA是一种(公钥加密算法,其中公钥用于加密重要消息。加密数据必须用私钥解密。

RSA-SHA1另一方面,是RSA密码学+SHA1消息摘要的组合。消息摘要是一种单向散列函数,具有四个主要或重要的属性:

  • 很容易计算任何给定消息的哈希值
  • 生成具有给定哈希的消息是不可行的
  • 在不更改哈希的情况下修改消息是不可行的
  • 找到具有相同哈希的两条不同消息是不可行的

数字签名中,需要保证签名从发送者到接收者都是有效的。通过密码算法(例如)创建签名,然后通过散列函数(例如)对RSA公钥、消息和签名进行验证过程以确保真实性SHA-1

于 2012-04-10T07:27:23.543 回答