C++ 在c+;中创建不可更改报告文件的最佳实践+;

C++ 在c+;中创建不可更改报告文件的最佳实践+;,c++,file,security,output,obfuscation,C++,File,Security,Output,Obfuscation,我目前正在开发一个windows应用程序,用于测试铁路设备以查找任何默认值 Utility A => OK Utility B => NOK ... 此应用程序将检查给定设备并生成报告。 本报告需编写一次,不允许进一步修改,因为本文件可作为设备的工作证明 我的第一个想法是使用pdf文件(库看起来很棒),但pdf也可以修改 我告诉自己,我可以对报告进行模糊处理,并在我的应用程序中实现一个自制的阅读器,但无论我以何种方式存储它,文件都可能被访问和修改,对吗 所以我没什么主意了 对不起,

我目前正在开发一个windows应用程序,用于测试铁路设备以查找任何默认值

Utility A => OK
Utility B => NOK
...
此应用程序将检查给定设备并生成报告。 本报告需编写一次,不允许进一步修改,因为本文件可作为设备的工作证明

我的第一个想法是使用pdf文件(库看起来很棒),但pdf也可以修改

我告诉自己,我可以对报告进行模糊处理,并在我的应用程序中实现一个自制的阅读器,但无论我以何种方式存储它,文件都可能被访问和修改,对吗

所以我没什么主意了

对不起,如果我的方法和我的问题显得幼稚,但这是一个实习

谢谢你的帮助


编辑:我还可以在生成文件后为其添加校验和,并保留一个“校验和记录文件”,并实现校验和比较工具进行验证?想想看。

我相信你的问题的答案是使用任何格式,使用任何人都可以验证的数字签名,例如,创建一个,让需要检查你的文档的人签名,将其上载到一个密钥服务器,并使用它来签署文档。您可以发布文档,并具有指向公钥的链接以供验证;对于关键情况,必须有人信任您的签名(即,信任为您的密钥签名的人)

我相信你的问题的答案是使用任何格式,并且使用任何人都可以验证的数字签名,例如,创建一个,让需要检查你的文档的人签署该密钥,将其上载到一个密钥服务器,并使用它来签署文档。您可以发布文档,并具有指向公钥的链接以供验证;对于关键情况,必须有人信任您的签名(即,信任为您的密钥签名的人)

我相信你的问题的答案是使用任何格式,并且使用任何人都可以验证的数字签名,例如,创建一个,让需要检查你的文档的人签署该密钥,将其上载到一个密钥服务器,并使用它来签署文档。您可以发布文档,并具有指向公钥的链接以供验证;对于关键情况,必须有人信任您的签名(即,信任为您的密钥签名的人)

我相信你的问题的答案是使用任何格式,并且使用任何人都可以验证的数字签名,例如,创建一个,让需要检查你的文档的人签署该密钥,将其上载到一个密钥服务器,并使用它来签署文档。您可以发布文档,并具有指向公钥的链接以供验证;对于关键情况,必须有人信任您的签名(即,信任为您的密钥签名的人)

我会将报告存储在加密/受保护的数据存储中。
当用户访问报告时(请求副本,原件当然总是在数据库中,不能修改),它包含文本“report#XXXXX”。如果要验证报告,请使用报告ID从系统中检索新副本。

我会将报告存储在加密/受保护的数据存储中。
当用户访问报告时(请求副本,原件当然总是在数据库中,不能修改),它包含文本“report#XXXXX”。如果要验证报告,请使用报告ID从系统中检索新副本。

我会将报告存储在加密/受保护的数据存储中。
当用户访问报告时(请求副本,原件当然总是在数据库中,不能修改),它包含文本“report#XXXXX”。如果要验证报告,请使用报告ID从系统中检索新副本。

我会将报告存储在加密/受保护的数据存储中。
当用户访问报告时(请求副本,原件当然总是在数据库中,不能修改),它包含文本“report#XXXXX”。如果要验证报告,请使用报告ID从系统中检索新副本。

人们的生命取决于列车检查的状态。因此,我发现很难相信有人期望你只使用免费的啤酒成分来解决这个问题

Adobe支持强大的数字签名模型。如果你购买他们的技术基础,你可以创建PDF的数字签名,因此篡改明显,因为消费者可以检查签名


正如其他人指出的那样,您可以使用GNUpg或OpenSSL来实现自己的签名方案,但铁路监管机构不大可能知道如何使用它。

人们的生活取决于列车检查的状态。因此,我发现很难相信有人期望你只使用免费的啤酒成分来解决这个问题

Adobe支持强大的数字签名模型。如果你购买他们的技术基础,你可以创建PDF的数字签名,因此篡改明显,因为消费者可以检查签名


正如其他人指出的那样,您可以使用GNUpg或OpenSSL来实现自己的签名方案,但铁路监管机构不大可能知道如何使用它。

人们的生活取决于列车检查的状态。因此,我发现很难相信有人期望你只使用免费的啤酒成分来解决这个问题

Adobe支持强大的数字签名模型。如果你购买他们的技术基础,你可以创建PDF的数字签名,因此篡改明显,因为消费者可以检查签名

正如其他人所指出的,您可以使用GNUpg,或者OpenSSL来实现您的o