我开发了一个打开加密文件的软件。使用从设备硬盘串行和Mac ID混合生成的密钥加密文件在服务器端。
为了防止在任何其他设备上打开该文件,在客户端软件中我也从设备硬盘串行和Mac ID生成相同的密钥,并使用该密钥解密文件。
限制未经授权的计算机打开文件的正确方法是什么?如果是,如果有人调试我的软件的汇编代码并理解生成的密钥怎么办?
答案 0 :(得分:1)
Is it the correct way to limit unauthorized computers to open the file?
没有一种“正确”的方式。你的方式会很好,直到...
what if someone debugs the assembly code of my software and Understand the generated key?
发生这种情况。除非你能够很好地锁定硬件以至于没有人可以拆卸和调试你的可执行文件,否则总会有人能够对你的方案进行逆向工程,获取密钥并打开文件。