假设我有1MB的明文(仅作为一个例子)。我想使用对称加密算法(例如AES)加密它,并将明文和密文存储在内存空间中。密文是否与其相应的明文大小相同?我的意思是,在我的例子中,这是否意味着我需要2MB来存储明文和密文?你能提供推荐信吗?
发布于 2016-11-18 17:03:27
密文是否与其相应的明文大小相同?
真的要看情况了。从密码学的角度来看,您可以这样做,但是有一些信息您确实希望与您的消息一起发送。因此,开销是恒定的,即与实际消息长度无关。如果你使用疯狂的双加密变体或怪异的自定义方案,当然,在这里你可能会得到线性增长。
在密文中可能提供或不提供的(有趣的)值可能包括下列值:
总之,您通常会看到一个常数开销,最小大小为32字节,最大大小为几百字节。
发布于 2016-11-18 16:22:41
你的问题在这种形式上太宽泛了。
有许多不同的对称加密算法。它们大多为1MB的输入产生1MB的输出。它们中的大多数都是基于块的,因此它们将输入大小集合为块大小的倍数。如果您选择一个特定的算法,您可以自己检查确切的细节。但是,您不应该选择基于开销的加密算法,而应该选择基于安全性和性能的加密算法。
此外,通常在加密数据之前压缩数据,因为加密后不可能压缩数据。
https://crypto.stackexchange.com/questions/41633
复制相似问题