在加载之前检查文件创建者以防止数据被篡改/损坏

时间:2012-02-02 16:21:43

标签: c# c++ digital-signature

信息化

我正在开发一个从磁盘加载二进制文件的项目。此文件具有存储数据的特定结构,如果数据由第三方生成/篡改,我需要保护此文件不被加载。

恢复

我有一个文件,我必须在加载前检查“创建者”是否是我。

项目规范

  1. 加载文件的应用程序是用C ++编写的。
  2. 生成文件的应用程序是用C#编写的。
  3. 问题

    • 我有什么选择来实现这个目标?
    • 使用哪些库/算法?
    • 你能为我提供一些步骤或指南吗?

    备注

    • 如果有帮助,我将Crypto ++链接到C ++项目。

2 个答案:

答案 0 :(得分:1)

您正在寻找的是签名/认证系统wirth asymetric键。该功能内置于.Net中。快速谷歌搜索显示this example看起来合法。

请注意,如果您无法完全控制认证过程(如果您的应用程序位于客户端的计算机上),则有人可能会反编译代码以绕过检查。

答案 1 :(得分:0)

很快我想看看LZMA SDK,因为SDK支持c ++和C#,只是压缩/加密文件

也许有更好的解决方案,但这是我的第一次尝试