发明名称 一种用于防止软件运行在非授权计算机上的保护装置
摘要 一种用于防止软件运行在非授权计算机上的保护装置,属软件保护领域。由钥匙器件、保护器件和织入器件构成。钥匙器件用于存放非对称加密算法的私钥和运行非对称加密算法。保护器件包含有非对称加密算法的公钥和非对称加密算法的软件代码,它将被织入器件织入到被保护的软件代码中以保护软件。织入器件使用公知的算法生成非对称加密算法的公钥、私钥对,并将公钥和私钥分别写入保护器件和钥匙器件中。织入器件选择在被保护的软件代码中织入保护器件的织入点位置和织入方法,并完成织入操作,生成发布前代码。发布前代码运行到织入点处的保护器件时,保护器件将随机地与钥匙器件进行相互之间的身份认证并决定是否运行。具有加密效果佳等优点。
申请公布号 CN1897005A 申请公布日期 2007.01.17
申请号 CN200610010916.0 申请日期 2006.05.23
申请人 施霖 发明人 施霖
分类号 G06F21/00(2006.01) 主分类号 G06F21/00(2006.01)
代理机构 代理人
主权项 1.一种用于防止软件运行在非授权计算机上的保护装置,该保护装置由钥匙器件(5)、保护器件(3)和织入器件(1)构成,其特征在于保护装置的保护步骤如下:步骤1.织入器件(1)使用公知的算法生成非对称加密算法的公钥(2)、私钥(4)对,并将公钥(2)和私钥(4)分别写入保护器件(3)和钥匙器件(5)中;步骤2.保护器件(3)是完成保护功能的软件代码,其中包含有非对称加密算法的公钥(2)和非对称加密算法的软件代码。保护器件(3)将被织入器件(1)织入到被保护的软件代码(6)中,在被保护软件代码(6)运行在计算机上的时候时为其提供保护;步骤3.钥匙器件(5)用于存放非对称加密算法的私钥(4)和运行非对称加密算法;步骤4.织入器件(1)选择在被保护的软件代码(6)中织入保护器件(3)的织入点的位置和织入方法,在被保护软件代码(6)中的多个关键点织入保护器件(3),使得保护器件(3)与被保护软件代码(6)成为一体不可分割或很难分割,在被保护软件代码(6)中织入保护器件(3)以后,生成发布前代码(7);步骤5.发布前代码(7)经过编译或不经过编译以后形成发布软件(8),发布软件(8)包括了编织在一起的被保护软件代码(6)和保护器件(3)代码;步骤6.钥匙器件(5)与保护器件(3)在发布软件(8)的运行环境中连接在一起,在发布软件(8)的运行环境中,钥匙器件(5)与保护器件(3)之间的身份认证使用公知的非对称加密算法的身份认证算法进行相互之间的身份认证,非对称加密算法的公钥(2)保存在保护器件(3)中,有公钥(2)参与的运算过程在保护器(3)件中完成。非对称加密算法的私钥(4)保存在钥匙器件(5)中,有私钥(4)参与的运算过程在钥匙器件(5)中完成;步骤7.发布软件(8)运行到织入点处的保护器件(3)时,保护器件(3)将随机地与钥匙器件(5)进行相互之间的身份认证,如果身份认证通过,发布软件(8)继续运行,否则终止运行。
地址 650051云南省昆明市环城东路50号昆工新迎校区