作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要使用 SAML 2.0 标准化算法 (RSAwithSHA256) 对 XML SAML 消息进行签名。但我的 saml 插件(passport-saml)似乎只支持 sha1 和 sha256。 SHA256 听起来与 RSAwithSHA256 非常接近,但可能不是同一件事?有什么区别,如何使用 RSAwithSHA256 代替?我可能需要编辑 Passport-saml 库,以允许使用 RSAwithSHA256 算法?
最佳答案
我尝试解释差异,但不解释如何解决您的问题。
RSA 是一种公钥加密算法(公钥和私钥对算法),它确保 secret 性、真实性(包括识别)和不可否认性。
SHA-256 是一种哈希算法,可生成唯一的、固定大小的 256 位(32 字节)哈希值,并确保消息完整性。
采用的哈希算法如下,
这里,接收者如何确认消息及其哈希值确实是由预期的发送者发送的?在上述情况下,接收者没有对发送者进行身份验证或识别。
为此,我们必须同时使用公钥加密和哈希算法(如 RSAWithSHA256)来满足上述要求。
因此,当同时使用公钥加密和哈希算法时,
关于javascript - RSAwithSHA256 和 SHA256 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37941450/
我是一名优秀的程序员,十分优秀!