一种多核处理器软件集成开发环境离线使用许可系统技术方案

技术编号:24251742 阅读:29 留言:0更新日期:2020-05-22 23:40
本发明专利技术一种多核处理器软件集成开发环境离线使用许可系统,适用于运行在离线主机上的多核处理器软件集成开发环境。通过在多核处理器软件集成开发环境每次启动时比较当前启动时间和上次合法启动时间,判断是否存在篡改主机时间以破解多核处理器软件集成开发环境使用许可的行为存在。在此基础上,通过对主机唯一身份标示、软件使用有效期信息的有限次组合、切分以及对切分后的信息字段和合法启动时间进行加密,再将加密后的信息分别存放在多个主机位置的方法,进一步加强了对软件使用许可的保护。该方法能够有效抵御通过将离线主机时间修改到软件使用有效期内,从而“绕过”软件使用许可判断机制的破解方法。

An off-line license system for software integrated development environment of multi-core processor

【技术实现步骤摘要】
一种多核处理器软件集成开发环境离线使用许可系统
本专利技术提出一种多核处理器软件集成开发环境离线使用许可系统,属于计算机软件安全

技术介绍
随着微电子技术的不断发展,多核处理器已经成为用于计算机核心控制、计算的主流部件。为了配合多核处理器的程序设计,提供用户的劳动生产率,需要研制与之配套的软件集成开发环境。于此同时,为了保护多核处理器研用双方的商业利益,需要在集成开发环境软件中设计使用许可控制机制,用户必须获得许可后才可以合法使用多核处理器软件集成开发环境进行多核处理器的程序开发。对于软件使用许可,从软件许可的物理形式上看,可以分为硬件许可和软件许可两种方式。其中,硬件许可是设计特殊的加密硬件,如:USB软件加密狗,每当软件启动时,确定该加密硬件正确工作且具有合法软件使用许可后,该软件才能正确运行;软件许可是在被保护的软件中插入特殊的许可代码,在获得相应的加密软件使用许可码且解码正确后,软件才能正确使用。硬件许可相比软件许可安全性相对较高,但成本更高,目前已经很少使用了。随着互联网高速发展,运行软件的主机基本具备连接互联网的能力,因此软件使用许可基本上通过互联网连接到软件开发商的服务器获得软件授权。但是,软件使用单位考虑到保护本单位的商业利益,在很多应用场景中,依旧要求运行软件的主机保持离线状态。所以,对于软件研制单位而言,在控制成本的约束下,开发面向离线主机的软件许可设计方法是非常必要的。目前常用的软件许可主要包括两部分内容,一个是对主机身份的确认,另一个是对软件使用时间长度的控制。对于主机身份确认,通常采用硬盘序列号、网卡物理地址等信息作为主机唯一身份信息;对于软件使用时间长度控制,通常采用“起始时间+使用时长”的方式,即:从某一个时间开始、直到另一时间的特定时间段内可以合法使用该软件。然而,对于离线的主机,由于缺乏来自互联网远端服务器的授时,其本地时间是可以随意更改的。对于上述“起始时间+使用时长”的软件许可方式而言,在超过软件许可授权的合法使用时间后,只需要将主机的时间改回到使用有效期内,就可以实现对软件许可机制的“欺骗”,继续使用该软件,导致软件研制单位的合法利益受到侵害。通过“时间欺骗”的方式破解软件使用许可基本不需要专业知识和成本,是普遍使用的软件使用许可破解方式之一。为了加强多核处理器软件集成开发环境的保护力度,提高破解的难度和成本,必须设计一种能够抵御“时间欺骗”这种破解方式的软件使用许可设计方法。
技术实现思路
本专利技术解决的技术问题是:为了克服以上现有的技术不足,提出一种多核处理器软件集成开发环境离线使用许可系统,以便抵御通过将离线主机的时间调整到软件使用许可的有效时间段内,从而继续获得多核处理器软件集成开发环境使用权的破解方法。本专利技术的技术解决方案是:一种多核处理器软件集成开发环境离线使用许可系统,包括:软件使用许可码生成模块和软件使用许可检查模块;软件使用许可码生成模块:接收外部输入的主机身份唯一标识、软件使用起始日期和软件使用有效时长,根据所述外部输入主机身份唯一标识、软件使用起始日期和软件使用有效时长生成软件使用许可码;所述软件使用许可码的生成包括步骤:子信息段生成、信息加密和子信息段组合;其中,所述主机身份唯一标识是指运行多核处理器软件集成开发环境主机的身份唯一标示;所述软件使用起始日期是指允许多核处理器软件集成开发环境开始使用的日期;所述软件使用有效时长是指多核处理器软件集成开发环境从起始日期开始,正常使用的时间长度;软件使用许可码检查模块:接收外部输入的当前主机身份唯一标识、当前主机运行时间和上次软件正确使用后保存的多个加密信息段,根据软件使用许可码生成模块生成的所述软件使用许可码和当前主机身份唯一标识和当前主机运行时间,判定是否允许多核处理器软件集成开发环境在当前主机上运行,并将判定结果作为输出量发送给外部多核处理器软件集成开发环境;其中,所述当前主机身份唯一标识是指当前准确启动多核处理器软件集成开发环境的主机身份唯一标识;所述当前主机运行时间是指当前启动多核处理器软件集成开发环境主机的时间;所述上次软件正确使用后保存的多个加密信息段是指多核处理器软件集成开发环境在上次正确启动后,软件使用许可码检查模块将正确启动信息加密保存后的结果。本专利技术与现有技术相比的有益效果是:1)本专利技术中,软件使用许可检查模块增加了启动时间检测机制以获得当前软件启动时间,并在许可结果输出部分将当前软件启动时间与软件许可起始时间和有效时长进行比较,软件启动时间在软件有效时长范围内时,才能允许软件启动。通过这种机制,可以有效抵御利用时间欺骗方式“绕过”软件使用许可、非法获得多核处理器软件集成开发环境使用权的攻击。2)本专利技术中,软件使用许可检查模块的许可码保存部分能够将获得的软件使用许可码存放在主机磁盘内、有限的多个位置,是一种有效地隐藏软件使用许可码的方法。通过这种方法可以提高从主机磁盘中非法获得软件许可码的难度。3)本专利技术中,软件使用许可码生成模块在对主机身份标示、软件有效使用起始日期和软件有效使用时长为输入三个信息进行加密运算、生成软件许可码的过程中,通过有限的多种组合方式对由三个信息组成信息的进行乱序,而不是采用直接将三个信息拼接在一起的方式。通过这种方法,可以提高利用主机唯一标示、软件有效使用起始日期和软件有效使用时长三个信息逆向分析加密算法、进而破解软件使用许可的难度。附图说明图1是本专利技术中软件使用许可码生成模块示意图;图2是本专利技术中软件使用许可检查模块示意图。具体实施方式本专利技术一种多核处理器软件集成开发环境离线使用许可系统,包括:软件使用许可码生成模块和软件使用许可检查模块;如图1所示,软件使用许可码生成模块:接收外部输入的主机身份唯一标识、软件使用起始日期和软件使用有效时长,根据所述外部输入主机身份唯一标识、软件使用起始日期和软件使用有效时长生成软件使用许可码;所述软件使用许可码的生成包括步骤:子信息段生成、信息加密和子信息段组合;其中,所述主机身份唯一标识是指运行多核处理器软件集成开发环境主机的身份唯一标示;所述软件使用起始日期是指允许多核处理器软件集成开发环境开始使用的日期;所述软件使用有效时长是指多核处理器软件集成开发环境从起始日期开始,正常使用的时间长度;如图2所示,软件使用许可码检查模块:接收外部输入的当前主机身份唯一标识、当前主机运行时间和上次软件正确使用后保存的多个加密信息段,根据软件使用许可码生成模块生成的所述软件使用许可码和当前主机身份唯一标识和当前主机运行时间,判定是否允许多核处理器软件集成开发环境在当前主机上运行,并将判定结果作为输出量发送给外部多核处理器软件集成开发环境;其中,所述当前主机身份唯一标识是指当前准确启动多核处理器软件集成开发环境的主机身份唯一标识;所述当前主机运行时间是指当前启动多核处理器软件集成开发环境主机的时间;所述上次软件正确使用后保存的多个加密信息段是指本文档来自技高网
...

【技术保护点】
1.一种多核处理器软件集成开发环境离线使用许可系统,其特征在于,包括:软件使用许可码生成模块和软件使用许可检查模块;/n软件使用许可码生成模块:接收外部输入的主机身份唯一标识、软件使用起始日期和软件使用有效时长,根据所述外部输入主机身份唯一标识、软件使用起始日期和软件使用有效时长生成软件使用许可码;所述软件使用许可码的生成包括步骤:子信息段生成、信息加密和子信息段组合;/n其中,所述主机身份唯一标识是指运行多核处理器软件集成开发环境主机的身份唯一标示;所述软件使用起始日期是指允许多核处理器软件集成开发环境开始使用的日期;所述软件使用有效时长是指多核处理器软件集成开发环境从起始日期开始,正常使用的时间长度;/n软件使用许可码检查模块:接收外部输入的当前主机身份唯一标识、当前主机运行时间和上次软件正确使用后保存的多个加密信息段,根据软件使用许可码生成模块生成的所述软件使用许可码和当前主机身份唯一标识和当前主机运行时间,判定是否允许多核处理器软件集成开发环境在当前主机上运行,并将判定结果作为输出量发送给外部多核处理器软件集成开发环境;/n其中,所述当前主机身份唯一标识是指当前准确启动多核处理器软件集成开发环境的主机身份唯一标识;所述当前主机运行时间是指当前启动多核处理器软件集成开发环境主机的时间;所述上次软件正确使用后保存的多个加密信息段是指多核处理器软件集成开发环境在上次正确启动后,软件使用许可码检查模块将正确启动信息加密保存后的结果。/n...

【技术特征摘要】
1.一种多核处理器软件集成开发环境离线使用许可系统,其特征在于,包括:软件使用许可码生成模块和软件使用许可检查模块;
软件使用许可码生成模块:接收外部输入的主机身份唯一标识、软件使用起始日期和软件使用有效时长,根据所述外部输入主机身份唯一标识、软件使用起始日期和软件使用有效时长生成软件使用许可码;所述软件使用许可码的生成包括步骤:子信息段生成、信息加密和子信息段组合;
其中,所述主机身份唯一标识是指运行多核处理器软件集成开发环境主机的身份唯一标示;所述软件使用起始日期是指允许多核处理器软件集成开发环境开始使用的日期;所述软件使用有效时长是指多核处理器软件集成开发环境从起始日期开始,正常使用的时间长度;
软件使用许可码检查模块:接收外部输入的当前主机身份唯一标识、当前主机运行时间和上次软件正确使用后保存的多个加密信息段,根据软件使用许可码生成模块生成的所述软件使用许可码和当前主机身份唯一标识和当前主机运行时间,判定是否允许多核处理器软件集成开发环境在当前主机上运行,并将判定结果作为输出量发送给外部多核处理器软件集成开发环境;
其中,所述当前主机身份唯一标识是指当前准确启动多核处理器软件集成开发环境的主机身份唯一标识;所述当前主机运行时间是指当前启动多核处理器软件集成开发环境主机的时间;所述上次软件正确使用后保存的多个加密信息段是指多核处理器软件集成开发环境在上次正确启动后,软件使用许可码检查模块将正确启动信息加密保存后的结果。


2.根据权利要求1所述的一种多核处理器软件集成开发环境离线使用许可系统,其特征在于:主机身份唯一标识是指主机中能排他的表示主机身份的特征信息,具体为:硬盘序列号或以太网MAC地址。


3.根据权利要求1所述的一种多核处理器软件集成开发环境离线使用许可系统,其特征在于:软件使用许可码生成模块中,子信息段生成步骤首先将外部输入的主机身份唯一标识、软件使用起始日期、软件使用有效时长三个信息进行组合,再将组合后的信息拆分成多个子信息段;
其中,外部输入的主机身份唯一标识、软件使用起始日期、软件使用有效时长三个信息组合方式并不限定,但在依据本系统描述进行编码实现时,只能采用一种组合方式;拆分子信息段时,子信息段的数量、每个子信息段的长度也不限定,但在依据本系统描述进行编码实现时,只能采用一种方式拆分得到子信息段。


4.根据权利要求3所述的一种多核处理器软件集成开发环境离线使用许可系统,其特征在于:软件使用许可码生成模块中,所述信息加密对每个子信息段都进行加密处理,获得加密子信息段;
软件使用许可码生成模块中,所述子信息段组合将信息加密步骤生成的多个加密子信息段进行组合,生成软件使用许可码。


5.根据权利要求4所述的一种多核处理器软件集成开发环境离线使用许可系统,其特征在于:软件使用许可码检查模块中,对于从外部接收到的软件使用许可码,通过子信息段拆分、信息解密、子信息段组合三个步骤解析得到软件使用许可码中包含的主机身份唯一标识、软件使用起始日期和软件使用有效时长。


6.根据权利要求1所述的一种多核处理器软件集成开发环境离线使用许可系统,其特征在于:在软件使用许可码检查模块首次运行时,从软件使用许可码中提取主机身份唯一标示、软件使用起始日期、软件使用有效时长完后,需要与外部输入的当前主机身份唯一标识和当前主机运行时间进行比较,以判断是否允许多核处理器软件集成开发环境能否正确启动;
其中,比较主机身份标识时,需要比较外部输入的当前主机身份唯一标识是否与从软件使用许可码中提取到的主机身份唯一标识完全...

【专利技术属性】
技术研发人员:周海洋熊强田岭陈小岛于立新陈云亮杨雪
申请(专利权)人:北京时代民芯科技有限公司北京微电子技术研究所
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1