步骤 2.4:测试结果
VMProtect 是新一代软件盗版保护解决方案。VMProtect 是目前强大的反盗版解决方案之一,许多领先的软件发行商都在使用它。VMProtect允许保护可执行文件(EXE,SCR),动态链接库(DLL,OCX,BPL)和驱动程序(SYS)。
加密解密技术交流群(766135708)
序列号有效期
让我们再创建一个有一定到期日的序列号。例如,2005年。这个日期已经过去了,因此我们的序列号一定是不正确的。切换到 "Licenses"部分,点击工具栏上的 "“Add license "按钮。在 "Expiration date "对话窗口中,启用 "Expiration date "选项,并指定2005年9月30日。创建序列号,将其复制并粘贴到serial.txt,然后运行程序:
C:\test>dummy_app.vmp.exe serial number is bad state = SERIAL_STATE_FLAG_DATE_EXPIRED许可模块返回 “serial number is expired” 标志。现在,把工作序列号放回serial.txt文件,并确保许可模块完全适配它。
C:\test>dummy_app.vmp.exe serial number is correct, calling foo() I'm foo done将序列号添加到黑名单中
假如,我们的序列号已经泄露到互联网上,现在已经被破坏了。我们需要阻止它,这样就能很好的保证它不会影响到新版本。要做到这一点,选择列表中的序列号,并将主面板中的 "Blocked "属性设置为 "Yes"。现在,这个序列号还没有加密,但当你再次保护该文件时,应用程序将不再接受这个序列号。我们来确认一下情况是否真的如此。如果我们现在运行我们的程序,它应该毫无问题地接受被封锁的序列号。
C:\test>dummy_app.vmp.exe serial number is correct, calling foo() I'm foo done现在我们复制一个程序,命名为 "dummy_app1.vmp.exe",然后打开VMProtect,再次保护该程序。然后运行这个新版本:
C:\test>dummy_app.vmp.exe serial number is bad state = SERIAL_STATE_FLAG_BLACKLISTED再来看看旧版本,以作比较:
C:\test>dummy_app.vmp.exe serial number is bad state = SERIAL_STATE_FLAG_BLACKLISTED老版本不知道被屏蔽的序列号,和以前一样工作。
在下一步,我们将尝试把代码锁定在一个序列号上。但在我们继续之前,请解除对序列号的封锁,并在VMProtect中对应用程序重新应用保护,使其再次接受这个序列号。或者干脆创建一个新的许可证。