2009-12-14 47 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