2009-12-14 28 views
4

我有2种方法来生成2个不同的数据,并需要将它们保存在一个加密文件中。我可以将2个加密字符串加在一起并解密吗?

我可以通过添加加密的stringA +加密的字符串B来实现这一点,然后解密它们吗?

或者

我必须encrpt stringA - >另存为文件 - >读取文件&解密到stringA - > stringA + stringB - >加密?

NB,我正在使用Rijndael(AES)和有人建议使用客户化的流,它会工作吗?

有什么想法? 非常感谢〜

回答

4

如果您使用的是ECB(electronic code book),那么应该有可能(假设它们使用相同的加密密钥),因为每个块都是独立于其他块解密的。如果您使用的是CBC(cipher block chaining),则这将不起作用,因为每个块都使用前一个块的数据加密。但是,使用ECB比CBC更安全。

2

如果分别加密每个加密文本并知道每个加密文本块的长度,您可以逐个解密。

事情是这样的格式可能会工作:

Message1Length 
Message1Content 
Message2Content 

读取的字节数Message1Length到邮件并将其存储为encryptedMessage1什么的。然后从该点读取文件结束并将其存储为encryptedMessage2。然后分别解密它们。

2

这取决于您使用哪种加密算法。对于ECB mode中的分组密码,它可以工作 - 但ECB模式被认为是非常不安全的,正因为如此(它使得对密码的某种攻击非常容易)。

+0

嘿迈克尔 - 如果你使用我的话,我会满意你的答案。 :-) – 2009-12-14 20:47:43

+0

共谋者! :) – 2009-12-14 21:31:42