Windows操作系统签名

Windows操作系统签名,windows,hash,cryptography,digital-signature,Windows,Hash,Cryptography,Digital Signature,我正在尝试在操作系统中的某些位置添加签名,以验证Windows映像是否正确。如果你克隆一台上面有图像的计算机,那就没问题了,因为它上面有所有需要的东西。我只是不希望有人找到签名的位置,然后简单地复制到他们的自定义图像,然后它看起来很好。我在考虑一些软散列技术 也许从计算机上的硬件中获取一个salt值,然后添加一个只有我知道的短语,并从中创建一个散列值。然后将其存储在文件或注册表中。我会有一个散列检查程序来验证它是否正确 唯一的问题是,我需要运行一个文件来设置散列值,但不确定如何防止人们简单地获取

我正在尝试在操作系统中的某些位置添加签名,以验证Windows映像是否正确。如果你克隆一台上面有图像的计算机,那就没问题了,因为它上面有所有需要的东西。我只是不希望有人找到签名的位置,然后简单地复制到他们的自定义图像,然后它看起来很好。我在考虑一些软散列技术

也许从计算机上的硬件中获取一个salt值,然后添加一个只有我知道的短语,并从中创建一个散列值。然后将其存储在文件或注册表中。我会有一个散列检查程序来验证它是否正确

唯一的问题是,我需要运行一个文件来设置散列值,但不确定如何防止人们简单地获取这个文件并自己运行它来设置散列值

是否有其他方法可以添加我可以验证的签名?或者阻止人们运行应用程序,即使他们有应用程序的副本


谢谢

您可以做的是:从框中读取一些特定于硬件的信息(mac地址…主板序列号…硬盘序列号…任何内容),然后将其散列出来。。。添加一些字节以使标识符唯一并将其保存到计算机。。。现在你有了那台机器的某种标识符。。。为了使它更具篡改弹性,标识器。。。可以找到计算标识符的程序。。。只要签名密钥不存在,就不能伪造签名标识符。。。由于标识符是基于硬件的,您可以重新计算它以查看当前硬件是否属于当前ID。。。当然,这是可以篡改的,例如,如果攻击者开始更改程序中标识符的验证逻辑

那么基本上你是在试图建立一个拷贝保护模式吗?@DarkSquirrel42某种程度上是的。对于创建散列的程序,可以使用复制保护模式。我还认为我可以与托管应用程序的服务器通信,以确保它在那里运行。它不需要是100%完全可靠的,但足以阻止人们只使用hasher并在自己的机器上运行它。这就是我的想法,但程序可以很容易地从服务器上复制。在安装过程中,程序将使用vbscript自动运行。该程序将创建一个哈希签名。我担心有人会来复制哈希程序,然后他们可以在任何机器上运行它,当你用验证器工具检查它时,它会被认为是有效的,而通常它会被认为是无效的。也许我可以在系统上隐藏几个注册表项或文件,只是让它更难一点。我只是想阻止人们。如果我要攻击这样的东西,我的第一个想法是连接一个文件系统和注册表监视器。。。大约30秒后,您的密钥注册表项不再是秘密。。。如果阻止攻击者的只是一些隐藏的信息,你甚至不需要考虑它。。。不起作用。。。