我有一个如下结构:
struct mydata
{
int a,
int b,
}
我想在 Windows 中填写它,然后将其发送给某人在 Linux 中阅读。我正在编写这两个应用程序。
目的是中间的用户应该不能更改数据,但他可以读取它。
用户可以访问 Linux 代码的源代码,但不能访问 Windows 应用程序。
我的问题是:
1-我该怎么做?我的第一个想法是从结构中创建一个散列,用私钥/公钥对其进行加密并发送给用户(在 Windows 中)。在 Linux 上解密它并检查是否有代码匹配数据。这是最好的解决方案吗?
2-我可以使用什么类型的库?该库应该在 Windows 和 Linux 上可用。
3-是否有任何示例代码可以给我一个起点?
编辑 1
问题更多是关于如何确保数据在 Windows 系统和 Linux 之间通过文件复制(文件在 sd 卡上或通过电子邮件)传输时不被篡改。所以问题更多是关于如何确保数据是防篡改的,而不是如何传输它。
编辑 2
我需要将数据作为写入文件的结构发送到 Linux 系统(Linux 上的应用程序读取二进制文件,映射到结构然后由应用程序使用)。因此,我有效地将它作为 Windows 上的结构,然后我需要对其进行签名并将其写入文件并发送到 Linux 计算机。在 Linux 计算机上,应用程序需要读取它,检查它是否被篡改,然后使用数据。
我的问题是如何签署数据。