为签名目的加密原始消息是否有任何缺点。据我所知,这并不能提供实际的保障,而任何持有公钥的人士(如果公开的话,世界上任何一个都是公开的),但似乎这些公钥只限于TLS隧道及所需的密码进入,这似乎是一小层保障。好处很小,但有什么坏处吗?
发布于 2018-04-06 06:11:09
实际上有一些缺点,主要取决于原始消息的大小。
因此,回想一下,为了签名目的,散列(或消息摘要)用于对文档进行签名。因此,假设消息很大,我们可能面临几个可能的问题:
1.效率:回顾签名方案使用比对称加密慢得多的非对称加密。因此,如果你要签署整个信息,这可能需要一些时间。(散列或消息摘要的大小相对较小,因此签名速度很快)
2.完整性:由于电文太大(对于签名空间而言),可能需要将电文分割成单独的块(单独的电文)。现在,必须以不同的方式对创建的每条消息进行签名,并且可能需要保留消息块的顺序,这是额外的开销。
3.兼容性:有些签名方案(如RSA )不能对位字符串进行操作,因此增加了重新配置消息或更改签名方案的额外困难。
当然,如果消息是小的,它可以解决前两个问题与小的间接费用,但它可能更好地使用密钥共享加密方案与签名,而不是必须通过所有这些开销。
如果这引起其他问题,请告诉我,干杯!
发布于 2018-04-06 11:52:02
由于签名值与私钥的大小完全相同,因此无法直接使用私钥加密。所以消息+签名太大了,私钥无法加密。因此,首先需要使用混合密码系统(例如AES + RSA)进行加密。
通常需要对签名进行加密,否则对手可能会尝试重构消息并根据已知的签名对其进行验证。
通常,加密不会使用私钥执行:
如果您需要将公钥保密,那么您也可以使用对称加密:分发对称密钥并为收件人执行经过身份验证的加密。如果需要的话,仍然可以对明文消息签名。
当然,您可以使用公钥加密对称密钥,并在希望加密消息的一方解密该密钥。然后,就可以用来执行经过身份验证的加密。它仍然会使用公钥,但它避免了上面列出的许多缺点。
当然,使用TLS也是一种选择,尽管您仍然需要控制谁被允许进入。
https://crypto.stackexchange.com/questions/58128
复制相似问题