首页 > 代码库 > 借助TPM实现软件的版权保护和授权体系
借助TPM实现软件的版权保护和授权体系
在具有TPM芯片或PCI卡的机器上,实现软件版权保护和授权更加方便和可靠。本文介绍的方法适合在大面积工厂内部网络系统使用,对内网的多台主机重复安装的软件进行版权保护。该方法对软件系统使用进行版权保护,设计目标共有两项:
1. 防止软件系统被任意拷贝和安装在未经授权的机器或环境中;
2. 软件系统初始安装后具有一定期限的试用期,防止试用期过后未经授权的机器或环境继续使用该软件系统。
我们所设计的软件系统使用授权,采用笔记本电脑特定授权程序对待授权机器安装的软件系统进行认证授权的方式。具体授权方法相关步骤如下:
1. 软件系统首次安装于某台主机,将安装完成时间写入授权文件,使用软件固化密码加密后存于硬盘中,软件固化试用期30天(或根据需求变更),软件每次启动后检查授权文件的试用期时间和是否经过授权,试用期结束后,未授权的客户端启动时弹出“需要授权”的提升窗口,其他功能被强制屏蔽,等待授权;
2. 授权管理人员将授权笔记本电脑接入待授权机器所在网络,开启授权服务程序;
3. 由软件开发商打开待授权软件所在电脑的申请授权程序,输入密码、授权服务机器IP,以及选择授权模式:1年或永久授权,确认后开始申请授权;
4. 申请授权程序将主机中TPM(PCI)的EK公钥发送给服务器;
5. 授权服务使用笔记本电脑中的授权私钥对EK公钥、授权模式代码、授权时间进行签名后发送回客户端电脑;
6. 申请授权程序将授权信息保存于本地授权文件中
7. 授权软件系统采用内置好的笔记本电脑的授权公钥对签名验证,每次客户端启动时进行检查。
授权主要交互过程示意图如下(软件处分软件系统和授权申请程序),其中EK为软件系统所在终端TPM非对称密钥,K为笔记本电脑的授权服务所用非对称密钥: