解密部分AES加密文件

时间:2016-01-25 11:54:30

标签: c++ crypto++

对于我的C ++应用程序,我看过Crypto ++。似乎很简单,可以加密某些内容并将其保存在文件中。解密整个文件似乎也很简单。但是,我们的要求是我们不能立刻解密整个文件。我需要根据调用者的请求即时解密部分文件。基本上,我需要实现以下伪方法:

Map

我怎样才能做到这一点? Crypto ++或其他库中有什么东西可以随时使用吗?问候。

1 个答案:

答案 0 :(得分:2)

  

我怎样才能做到这一点? Crypto ++中有什么东西......

我认为你需要两件事。首先,您需要 可搜索 密码操作模式。 Counter mode (CTR)可能会为此工作。您可以使用IsRandomAccess()检查密码是否可搜索。它继承自StreamTransfoormation Class

在计数器模式(以及其他可搜索模式)下,请务必确保您仍然具有真实性保证。这可能很棘手。另请参阅Authenticated Encryption上的Crypto++ wiki

其次,您可能需要 避免 流式界面,并且您需要使用 Put Get Put Get 只是每个Crypto ++上存在的类似C的类函数 BufferedTransformation 类。

Put Get 的大多数示例都相当简单。然而,最近出现了一个更为实质性的问题,Crypto++ wiki Init-Update-Final出现了Jack Lloyd's Botan。虽然它更具实质性,但它并不复杂,因为它是一个简单的概念。

  

...或其他一些可以随时使用的图书馆?

嗯,这是你必须做出的选择。如果C ++和安全库是您唯一的库要求,那么您还可以查看{{3}}。