让我们假设三个实体:A, B,和C,并让[p_C, P_c]作为C的私钥/公钥对。假设A使用C、P_C的公钥加密消息c,并将此加密消息D8发送到B。
我的问题是:B能以某种方式区分加密的消息c是公钥P_c值的公钥加密的结果吗?(公钥是公开的,众所周知)。
发布于 2021-12-10 16:48:25
如果使用C实体(P_c)的公钥加密消息并通过实体A发送到B上,则实体B无法解密m以理解它的内容,因为加密的密钥属于另一个实体,而不是B的实体。因此,当B接收到加密的消息时,将尝试使用B的私钥解密它,但由于m是用C的公钥加密的,B将无法解密它并将其丢弃。
发布于 2021-12-10 19:25:35
B能以某种方式区分加密消息m是使用公钥P_c对值进行公钥加密的结果吗?
这取决于公钥算法。例如,对于RSA,加密的会话密钥值(它是公共的)总是小于用于加密它的RSA加密模数(也是公共的)的值。
如果密钥C的公钥RSA模大于密钥A和密钥B,则用密钥C加密的会话密钥也可能大于A和B的公共模。在这种情况下,无论是A键还是B键都不可能产生它。
发布于 2021-12-10 16:55:26
不,B不可能知道任何关于消息本身的信息,除非它包含元数据。消息本身只是一个不透明的二进制数据块。可以推断用于加密的算法,但仅此而已。
如果消息具有描述它的元数据,则情况会发生变化。但是它们的变化只是因为某个地方有一个字段,上面写着“使用C公钥加密”,而不是因为消息的任何固有属性。
https://crypto.stackexchange.com/questions/96571
复制相似问题