一种基于运行时锚点的移动存储介质软件保护方法技术

技术编号:26891148 阅读:26 留言:0更新日期:2020-12-29 16:08
本发明专利技术公开了一种基于运行时锚点的移动存储介质软件保护方法,当软件研发完成后,通过烧录工具将软件运行所需文件和加密逻辑一同拷贝到移动存储介质中;在移动存储介质中生成认证凭据并保存认证凭据;将加密逻辑写入移动存储介质的隐藏分区,同时用隐藏算法实现加密逻辑与被保护软件深度耦合;通过随机采集软件运行环境的锚点信息,实现对调用软件功能的服务器的合法性进行动态验证,以及对软件所处的存储器进行实时验证,用于保护移动存储介质中的软件资料,防止软件被非法运行或非法拷贝。

【技术实现步骤摘要】
一种基于运行时锚点的移动存储介质软件保护方法
本专利技术属于软件产品使用授权保护领域,特别是一种基于运行时锚点的移动存储介质软件保护方法。
技术介绍
一款软件产品的开发往往凝聚了软件公司和研发人员大量的人力和时间成本,但是软件产品具有易复制的特点,特别是移动存储介质中存放的软件产品,容易被非法拷贝和使用,传统的基于序列号的方式容易被绕过和破解。为保护软件不被篡改和未授权使用,本专利技术采用将软件通过专门的烧录工具灌装到带有保密芯片的移动存储介质中,基于多种加密手段,将软件存储介质、运行参数、使用权限等进行加密保护,达到存储介质与系统软件以及操作对象深度绑定,防止未授权使用的目的。
技术实现思路
为了解决现有技术中存在的不足,提出了一种基于运行时锚点的移动存储介质软件保护方法,通过随机采集软件运行环境的锚点信息,实现对调用软件功能的服务器的合法性进行动态验证,以及对软件所处的存储器进行实时验证,用于保护移动存储介质中的软件资料,防止软件被非法运行或非法拷贝。本专利技术所采用的技术方案如下:一种基于运行时锚点的移动存储介质软件保护方法,包括如下步骤:步骤1、通过烧录工具将软件运行所需文件和加密逻辑一同拷贝到移动存储介质中;在移动存储介质中生成认证凭据并保存认证凭据;步骤2、将加密逻辑写入移动存储介质的隐藏分区,同时用隐藏算法实现加密逻辑与被保护软件深度耦合;步骤3、运行时对调用软件功能的服务器合法性进行动态验证的方法为:步骤3.1、软件首次加电运行时,改写出厂时的秘密标志位为1,并读取服务器CPU序列号、硬盘序列号等特征信息,通过加密算法存储到移动存储介质的隐藏分区;步骤3.2、除首次运行外,每次运行时从隐藏分区中读取加密的认证信息,进行合法性验证;步骤4、对软件所处的存储器的实时验证进行检验的方法为:步骤4.1、移动存储介质出厂时在加密存储芯片中烧录唯一识别号,软件运行时通查询并进行解密;步骤4.2、解密后的数据和隐藏分区中的软件序列号以及版本号进行逻辑运算验证,验证通过后则认为软件没有被拷贝;步骤4.3、对移动存储介质中的存储的数据进行MD5散列要验证,确定程序的完整性。进一步,在移动存储介质中生成认证凭据并保存认证凭据的方法为:步骤1.1、基于介质标识、操作对象硬件标识、初始化运行环境、社会工程学相关信息综合运算得出唯一认证凭据;步骤1.2、基于加密存储芯片保存所生产的唯一认证凭据;步骤1.3、在移动存储介质的分区中存储分段加密文件;步骤1.4、加密软件中隐藏的识别码库,所述识别码库是预置在烧录系统中的,烧录的过程中从里面调用一条合法的,并将其隐藏在被保护的软件中。进一步,所述步骤1.1中采用Hash函数综合运算得出唯一认证凭据。进一步,所述步骤2中实现加密逻辑与被保护软件深度耦合的方法为:将被保护软件导入U盘,根据烧录码将加密逻辑写入移动存储介质的隐藏分区,同时用隐藏算法实现加密逻辑与被保护软件深度耦合。进一步,加密逻辑封装成KO文件,系统启动时的自动加载加密模块。进一步,加密逻辑基于静态属性和动态属性相结合的认证策略,采用多层加密接口与被保护软件交互,具有主动运行、动态监测、关键驱动触发、功能阻断和日志存证等功能,防止恶意用户绕过认证系统。本专利技术的有益效果:本专利技术通过实时读取服务器运行时参数以及存储在保密芯片中的数据,对被保护软件所运行的服务器合法性以及软件未被非法拷贝进行验证。本专利技术同时公开了支持上述安全特性的软件烧录方法和烧录软件,可实现认软件运行文件、认证信息、加密逻辑的打包上传,保证了软件的安全性,提高了移动存储介质初始化部署效率。附图说明图1是本专利技术一种基于运行时锚点的移动存储介质软件保护方法流程图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本专利技术,并不用于限定本专利技术。如图1所示的一种基于运行时锚点的移动存储介质软件保护方法,包括如下步骤:步骤1、当软件研发完成后,通过烧录工具将软件运行所需文件和加密逻辑一同拷贝到移动存储介质中;在移动存储介质中生成认证凭据并保存认证凭据的方式如下:步骤1.1、基于介质标识、操作对象硬件标识(CPU序列号等)、初始化运行环境(探测值,如时间、GPS数据等独一无二的信息)、社会工程学相关信息(如烧录软件的工程师的工号、软件研发公司的英文名称缩写、公司地址、邮编、电话号码、邮箱等与特定的研发者关联)等综合运算得出唯一认证凭据;在本市实施例中可以采用Hash函数进行运算得出唯一认证凭据,也可以由工程技术人员自行设计,例如用移位或者与或非逻辑处理等。步骤1.2、基于加密存储芯片保存所生产的唯一认证凭据,防止底层拷贝。步骤1.3、在移动存储介质的分区中存储分段加密文件,如在Linux系统中存放配置文件的目录\etc分区中。步骤1.4、加密软件中隐藏的识别码库,所述识别码库是预置在烧录系统中的,烧录的过程中从里面调用一条合法的,并将其隐藏在被保护的软件中,目的是建立烧录软件和被保护软件的关联,如果不用合法的方法烧录软件,就会被识别出来。步骤2、将加密逻辑写入移动存储介质的隐藏分区,同时用隐藏算法实现加密逻辑与被保护软件深度耦合;具体过程如下:步骤2.1、使用专用工具将被保护软件导入U盘,根据烧录码将加密逻辑写入移动存储介质的隐藏分区,同时用隐藏算法实现加密逻辑与被保护软件深度耦合,所述隐藏算法可以由具体实施人员根据经验设计,例如可以用生成的凭证信息替换重要的函数名、调用指针或变量名。加密逻辑封装成KO文件(Linux2.6内核使用的动态连接文件),系统启动时的自动加载加密模块。加密逻辑基于静态属性和动态属性相结合的认证策略,采用多层加密接口与被保护软件交互,具有主动运行、动态监测、关键驱动触发、功能阻断和日志存证等功能,防止恶意用户绕过认证系统。步骤3运行时对调用的服务器合法性进行检验。步骤3.1、软件首次加电运行时,改写出厂时的秘密标志位为1(出厂时为0),并读取服务器CPU序列号、硬盘序列号等特征信息,通过加密算法存储到移动存储介质的隐藏分区。步骤3.2、除首次运行(秘密标志位的值为0)外,每次运行时从隐藏分区中读取加密的认证信息,进行合法性验证。步骤4、运行时对存储介质的合法性(即软件未被非法拷贝)进行检验。步骤4.1、移动存储介质出厂时在加密存储芯片中烧录唯一识别号,软件运行时通查询并进行解密。步骤4.2、解密后的数据和隐藏分区中的软件序列号以及版本号进行逻辑运算验证,验证通过后则认为软件没有被拷贝。步骤4.3、对移动存储介质中的存储的数据进行MD5散列要验证,确定程序的完整性。本实施例中的移动存储介质为带有保密芯片的U盘。U盘内存放的应用是本文档来自技高网...

【技术保护点】
1.一种基于运行时锚点的移动存储介质软件保护方法,其特征在于,包括如下步骤:/n步骤1、通过烧录工具将软件运行所需文件和加密逻辑一同拷贝到移动存储介质中;在移动存储介质中生成认证凭据并保存认证凭据;/n步骤2、将加密逻辑写入移动存储介质的隐藏分区,同时用隐藏算法实现加密逻辑与被保护软件深度耦合;/n步骤3、运行时对调用软件功能的服务器合法性进行动态验证的方法为:/n步骤3.1、软件首次加电运行时,改写出厂时的秘密标志位为1,并读取服务器CPU序列号、硬盘序列号等特征信息,通过加密算法存储到移动存储介质的隐藏分区;/n步骤3.2、除首次运行外,每次运行时从隐藏分区中读取加密的认证信息,进行合法性验证;/n步骤4、对软件所处的存储器的实时验证进行检验的方法为:/n步骤4.1、移动存储介质出厂时在加密存储芯片中烧录唯一识别号,软件运行时通查询并进行解密;/n步骤4.2、解密后的数据和隐藏分区中的软件序列号以及版本号进行逻辑运算验证,验证通过后则认为软件没有被拷贝;/n步骤4.3、对移动存储介质中的存储的数据进行MD5散列要验证,确定程序的完整性。/n

【技术特征摘要】
1.一种基于运行时锚点的移动存储介质软件保护方法,其特征在于,包括如下步骤:
步骤1、通过烧录工具将软件运行所需文件和加密逻辑一同拷贝到移动存储介质中;在移动存储介质中生成认证凭据并保存认证凭据;
步骤2、将加密逻辑写入移动存储介质的隐藏分区,同时用隐藏算法实现加密逻辑与被保护软件深度耦合;
步骤3、运行时对调用软件功能的服务器合法性进行动态验证的方法为:
步骤3.1、软件首次加电运行时,改写出厂时的秘密标志位为1,并读取服务器CPU序列号、硬盘序列号等特征信息,通过加密算法存储到移动存储介质的隐藏分区;
步骤3.2、除首次运行外,每次运行时从隐藏分区中读取加密的认证信息,进行合法性验证;
步骤4、对软件所处的存储器的实时验证进行检验的方法为:
步骤4.1、移动存储介质出厂时在加密存储芯片中烧录唯一识别号,软件运行时通查询并进行解密;
步骤4.2、解密后的数据和隐藏分区中的软件序列号以及版本号进行逻辑运算验证,验证通过后则认为软件没有被拷贝;
步骤4.3、对移动存储介质中的存储的数据进行MD5散列要验证,确定程序的完整性。


2.根据权利要求1所述的一种基于运行时锚点的移动存储介质软件保护方法,其特征在于,在移动存储介质中生成认证凭据并保存认证凭据的方法为:
步骤1.1、基于介质标识、操作对象硬件标识、初始化...

【专利技术属性】
技术研发人员:李大伟
申请(专利权)人:南京工程学院
类型:发明
国别省市:江苏;32

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

1