软件产品生产安全控制方法

文档序号:6379431阅读:213来源:国知局
专利名称:软件产品生产安全控制方法
技术领域
本发明涉及一种软件产品生产安全控制装置及其控制方法。
背景技术
随着计算机技术的不断发展,面向各应用领域或行业需求的软件不断地孕育而生。但无论哪种优秀的软件,其内部核心的技术往往是该软件的命脉,一旦被他人窃取或被非法复制,由此受到的经济损失是无法估计的。软件的版权保护产品作为一种信息安全设备在软件版权保护领域发挥着重要的作用,它保护软件开发商的利益、增加收益,保护合法用户的利益,还可以控制软件分销。软件产品的版权保护除了软件本身的抗攻击,硬件保护装置自身的安全性,还应该包括生产过程中的管理控制环节。如果生产过程不能有效的保证可控的话,就算产品出产以后拥有完美的保障措施,还是不能避免在生产过程中就存在的安全威胁。我们使用加密锁来控制软件产品售出以后的安全使用,但是不能排除,在软件产品的生产过程中,如果被非授权的使用者得到了加密锁的生产数据,那么非法的克隆一个“加密锁”,就会使得软件的防盗版付之东流。可见,生产过程中的安全控制是非常重要的。

发明内容
本发明克服了上述缺陷,提供一种能够在软件产品生产过程中安全有限地保护信息安全的软件产品生产安全控制装置及其控制方法。本发明解决其技术问题所采取的技术方案是一种软件产品安全生产装置,包括一个带有通信接口的生产主机和一个安全控制设备,所述生产主机和安全控制设备通过所述通信接口相连,进行数据传输。所述安全控制设备可包括主控芯片和分别与所述主控芯片相连的通讯模块和存储器,所述主控芯片为包括CPU、MCU、单片机的微处理器或智能卡芯片。所述通讯模块可包括USB接口通信模块、串行接口通信模块或并行接口通信模块。所述通讯模块和/或存储器可内置于所述主控芯片中或为与所述主控芯片分立的通信接口芯片和/或外部存储器。一种采用软件产品安全生产装置的安全控制方法,需要烧写在加密锁中的关键代码和置于所述安全生产装置中的控制代码,共同构成用于生产软件保护加密锁的锁内数据。用于生产软件产品的锁内数据可为密文形式,通过所述安全控制设备解析成明文后由所述生产主机进行生产。
锁内数据可以密文的状态存储在安全控制设备中,然后通过生产主机将密文烧入加密锁中,加密锁解密后使用烧入的数据。锁内数据可以明文状态保存在生产用主机端,通过安全控制设备将主机端的明文数据进行加密,然后将加密后的密文通过生产工具烧入加密锁中,加密锁解密后使用烧入的数据。还可包括判断当前生产软件产品的个数是否超过了授权的产品个数,如果超过则不再允许继续生产加密锁。所述加密、解密方法可包括RSA、DES、3DES等加、解密算法。与现有技术相比本发明的有益效果是实现方法多样,安全等级可以定制,设备可以做到简捷,使用方便,保证了在没有正确的安全控制设备的情况下,生产过程不能进行。而且带来的好处还有
I.防止被保护的代码的泄漏。所述生产主机中的数据不是直接复制到加密锁中,因此非授权生产的加密锁是无法直接跟软件本身配合的。2.防止加密锁的无授权生产。加密锁的生产数量也受到开发商的限制,保证不会在不经过授权的情况下大量非法生产。


图I为本发明中第一种安全控制设备的结构示意2为本发明中第二种安全控制设备的结构示意3为本发明中第三种安全控制设备的结构示意4为实施例I的控制流程5为实施例2的控制流程6为实施例3的控制流程图
具体实施例方式本发明中,所述软件产品可以为加密锁或其他内置有软件的产品,并以生产用于软件保护的加密锁的生产主机和所述安全控制设备为例,对本发明内容做进一步阐述。如图广3为本发明中安全控制设备的结构示意图如图I中所示,为第一种安全控制设备的结构示意图,所述软件保护装置102包括一个主控芯片103,所述主控芯片103为集成了存储器和接口模块的MCU,并通过与所述软件保护装置相连的USB接口或串行接口或并行接口 101与生产主机相连,进行数据通信。如图2中所示,为第二种安全控制设备的结构示意图,所述软件保护装置202中包括一个集成有接口模块的主控芯片MCU 203和一个与所述MCU相连的外部存储器204,并通过与所述软件保护装置相连的USB接口或串行接口或并行接口 101与所述生产主机相连,进行数据通信,所述存储器可以是RAM,ROM, FALSH,EPROM, EEPROM等。如图3中所示,为第三种安全控制设备的结构示意图,所述软件保护装置302中包括一个用作主控芯片的MCU 304,和分别与所述主控芯片相连的通信模块303和外部存储器305,所述通信模块303为USB接口芯片,并通过USB接口 301与所述生产主机相连,进行数据通信。所述存储器可以是RAM,ROM, FALSH, EPROM, EEPROM等。
基于上述结构中的任一个,结合具体实施例对本发明中所采用的安全控制方法对本发明内容做详尽描述。实施例一锁内数据以密文的形式存储在主机端,主机连接安全控制设备之后安全控制设备对数据解密,然后通过生产工具将明文数据烧入加密锁,加密锁可以直接使用烧入的数据。具体步骤如下I)主机检测到安全控制设备的存在,建立通信在进行被保护软件所需加密锁(以下简称加密锁)的生产的时候,生产工具只有在检测到安全控制设备之后,才能进行正常的生产过程,否则,生产工具拒绝生产加密锁。2)主机向安全控制设备发送命令或者数据检测到安全控制设备之后,通过USB或者串口或者并口等方式向安全控制设备发 送需要加密的数据或者需要解密的数据或者是请求读取存贮在安全控制设备中的待烧写的数据,等待安全控制设备的响应。3)安全控制设备接收到命令或者数据之后对数据进行处理安全控制设备对接收到的数据或者命令进行数据的加密或者解密或者准备主机端需要读取的数据。这个过程只有安全控制设备是经过授权的或者是合法的硬件才能够做至IJ,这一步中得到的数据是需要烧入加密锁中的内容,其中包含软件产品不可或缺的部分。4)安全控制设备将数据返回给主机安全控制设备通过USB或者并口或者串口等接口将数据返回给应用程序。只有安全控制设备是指定的合法的硬件才能够还原成正确的加密锁生产需要的重要数据,加密锁生产才能正常进行,否则加密锁生产中止或者即使可以生产,生成的加密锁也不能配合软件正常运行。5)主机将处理好的数据通过生产工具烧入加密锁如图4中所示,生产用应用端开启生产过程,所述生产用主机检测本发明物所述安全控制设备401并判断是否存在402,如果不存在,转到409结束生产,如果存在,判断生产的加密锁的个数是否已经超过了本发明物的授权个数410,如果超过则中止生产过程,否则,发送经过编码加密的数据给所述安全控制设备403,本发明物对收到的数据进行解密404,并将解密数据返回给生产主机405,主机接收到解密之后的数据之后将数据应用到生产数据中406,判断数据是否完整可靠,是否可以是继续生产407,如果可以则生产软件产品所需加密锁,否则停止生产过程。实施例二 锁内数据以密文的状态存储在安全控制设备中,然后通过生产工具将密文烧入加密锁中,加密锁解密后使用烧入的数据。如图5中所示,生产主机端开始生产过程,主机检测安全控制设备501并判断是否存在502,如果不存在,转到509结束生产,如果存在,判断生产的加密锁的个数是否已经超过了安全控制设备的授权个数503,如果超过则中止生产过程,否则,发送取数据命令给安全控制设备504,安全控制设备按照命令要求提取数据505,存储在安全控制设备中的数据是密文数据,将读到的密文数据全部返回给主机506,主机接收到密文数据之后将数据应用到生产数据中507,继续生产软件产品所需加密锁508。上诉过程保证了,在没有安全控制设备的情况下,生产部门无法开始生产加密锁。所述安全控制设备提供给加密锁的烧写数据是密文的情况下可以在加密锁内部内置解密代码,解密之后的数据即为加密锁运行需要的数据。实施例三锁内数据以明文状态保存在生产用主机端,通过安全控制设备将主机端的明文数据进行加密,然后将加密后的密文通过生产工具烧入加密锁中,加密锁解密后使用烧入的数据。如图6中所示,生产用主机端检测安全控制设备601是否存在602,如果不存在,转到608停止生产,如果存在,判断生产的加密锁的个数是否已经超过了安全控制设备的授权个数603,如果超过则中止生产过程608,否则,主机端将生产用明文数据发送给安全控制设备604,安全控制设备对这些数据进行加密605,将加密之后的数据返回给主机端606,主机接收到密文数据之后将数据应用到生产数据中607,主机端可以进行加密锁的生产 609。上述各实施例中 I.编码加密、解码,提到的加解密可以是RSA、DES、3DES等加解密方法。编码解码方式可以使用任何标准的或者是自定义的方式来实现。2.判断生产的加密锁的个数,可以使用内置的计数器,根据不同的需求,由开发商来设定当前需要生产的加密锁的个数,这个值受到保护不能任意修改。3.上述实施例所指判断数据是否完整,可以通过在数据中设定一些标识的方法做到。使得使用正确的硬件解码后的数据包含正确的使用标识。以上对本发明所提供的软件产品生产安全控制装置及其控制方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种软件产品生产安全控制方法,其特征在于 锁内数据以密文的形式存储在生产主机,生产主机连接安全控制设备之后安全控制设备对数据解密,然后通过生产工具将明文数据烧入加密锁,加密锁直接使用烧入的数据,具体包括 生产主机检测安全控制设备是否存在,如果不存在,则停止生产,如果存在,判断生产的加密锁的个数是否已经超过了安全控制设备的授权个数,如果超过则中止生产过程,否贝U,发送经过编码加密的数据给所述安全控制设备,所述安全控制设备对收到的数据进行解密,并将解密数据返回给生产主机,主机接收到解密之后的数据之后将数据应用到生产数据中,判断数据是否完整可靠,是则继续生产,将数据通过生产工具烧入加密锁中,加密 锁直接使用烧入的数据,否则停止生产过程; 生产主机检测到安全控制设备之后,通过USB或者串口或者并口方式向安全控制设备发送经过编码加密的数据;所述加密采用RSA、或DES或3DES加密方法; 安全控制设备对接收到的数据进行解密,这个过程只有安全控制设备是经过授权的或者是合法的硬件才能够做到,这一步中得到的数据是需要烧入加密锁中的内容,其中包含软件产品不可或缺的部分; 所述判断生产的加密锁的个数是否已经超过了安全控制设备的授权个数具体为判断内置计数器的值是否达到预先设定的当前需要生产的加密锁的个数; 所述判断数据是否完整可靠具体为判断数据中是否包含正确的使用标识。
2.一种软件产品生产安全控制方法,其特征在于 锁内数据以密文的状态存储在安全控制设备中,然后通过生产工具将密文烧入加密锁中,加密锁解密后使用烧入的数据,具体包括 生产主机检测安全控制设备是否存在,如果不存在,则停止生产,如果存在,判断生产的加密锁的个数是否已经超过了安全控制设备的授权个数,如果超过则中止生产过程,否贝1J,发送取数据命令给安全控制设备,安全控制设备按照命令要求提取数据,存储在安全控制设备中的数据是密文数据,将读到的密文数据全部返回给生产主机,生产主机接收到密文数据之后将数据应用到生产数据中,继续生产,通过生产工具将密文数据烧入加密锁中,加密锁解密后使用烧入的数据;加密锁内部内置解密代码,解密之后的数据即为加密锁运行需要的数据; 所述判断生产的加密锁的个数是否已经超过了安全控制设备的授权个数具体为判断内置计数器的值是否达到预先设定的当前需要生产的加密锁的个数。
全文摘要
本发明涉及一种软件产品生产安全控制装置及其控制方法。本发明通过采用安全控制设备对软件产品的生产过程进行控制,保证了在没有正确的安全控制设备的情况下,生产过程不能进行。本发明实现方法多样,安全等级可以定制,设备可以做到简捷,使用方便,能够有效地防止被保护的代码的泄漏和防止加密锁的无授权生产。所述生产主机中的数据不是直接复制到加密锁中,因此非授权生产的加密锁是无法直接跟软件本身配合的。加密锁的生产数量也受到开发商的限制,保证不会在不经过授权的情况下大量非法生产。
文档编号G06F21/12GK102968580SQ20121040741
公开日2013年3月13日 申请日期2006年1月27日 优先权日2006年1月27日
发明者陆舟, 于华章 申请人:飞天诚信科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1