CN101833629B - 软件区域授权加密方法及其实现装置 - Google Patents

软件区域授权加密方法及其实现装置 Download PDF

Info

Publication number
CN101833629B
CN101833629B CN2009100258510A CN200910025851A CN101833629B CN 101833629 B CN101833629 B CN 101833629B CN 2009100258510 A CN2009100258510 A CN 2009100258510A CN 200910025851 A CN200910025851 A CN 200910025851A CN 101833629 B CN101833629 B CN 101833629B
Authority
CN
China
Prior art keywords
encryption
software
encrypted
encryption device
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2009100258510A
Other languages
English (en)
Other versions
CN101833629A (zh
Inventor
江剑
孔德仁
狄长安
牛国柱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Science and Technology
Original Assignee
Nanjing University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Science and Technology filed Critical Nanjing University of Science and Technology
Priority to CN2009100258510A priority Critical patent/CN101833629B/zh
Publication of CN101833629A publication Critical patent/CN101833629A/zh
Application granted granted Critical
Publication of CN101833629B publication Critical patent/CN101833629B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种软件区域授权加密方法,包括以下步骤:首先,提取计算机的机器指纹并将该指纹进行加密,形成注册码,然后将注册资料和注册码发送至注册中心;注册中心对注册资料进行核实后,对授权加密装置进行加密密钥初始化;之后,将授权加密装置与装有被加密软件的计算机相连接;接着,授权加密装置对要传输的数据信息进行加密,并将密文定时发往计算机;最后,计算机定时接收授权加密装置发来的数据,用密钥对数据进行解密,并判断当前的区域和时间是否在限定的范围内,如果在则被加密的软件正常运行,否则被加密的软件退出。本发明的授权加密装置包括GPS接收芯片、嵌入式控制器、E2PROM。本发明可以实现软件的区域授权。

Description

软件区域授权加密方法及其实现装置
技术领域
本发明涉及一种软件加密技术及其实现装置,特别是一种用于软件区域授权的加密方法及其实现装置。
背景技术
软件的加密方法多种多样,根据软件保护方法可分为依赖硬件的硬加密方法和不依赖硬件的软加密方法。硬加密方法是将加密信息固化在硬件上,如软件加密狗,软件在每次启动时,先检测硬件上的相应信息,如果通过检测,则启动软件***,否则不能正常启动软件***。软加密最大优势在于极低的加密成本,用软件方法不依靠特殊硬件来实现对软件的加密,通过在软件中***加密模块来保证软件不被非法使用,主要有密码表法、软件自校验法、钥匙盘法,现在常用的是等用户软件安装完毕后需要向软件开发商申请许可证才可以使用软件的许可证方法。硬加密技术随着加密硬件的超出区域还能继续使用;软件加密由于无法判断区域的超出,在超出区域也能继续使用。所以上述的软加密和硬加密技术都不受地域的限制,只要具有相应的信息,就可以不受限制地在任何地方使用。
现在需要有些软件只能在指定的区域内使用,这个区域有可能比较大如一个城市,也有可能比较小如一个厂区或办公室,如果软件的使用范围超过了这个区域则应该无法使用,我们称之为软件区域授权。但是采用现有的加密技术将无法实现区域授权。
发明内容
本发明的目的在于提供一种软件区域授权加密方法及其实现装置。
实现本发明目的的技术解决方案为:一种软件区域授权加密方法,包括以下步骤:步骤1、提取计算机的机器指纹,机器指纹包括计算机的硬盘序列号和网卡的物理地址;
步骤2、将上述机器指纹进行加密,形成注册码,并将注册资料(软件使用方的名称、地址、联系方式、使用时间等信息)和注册码发送至注册中心;
步骤3、注册中心对注册资料进行核实后,利用注册码对授权加密装置进行加密密钥初始化;
步骤4、将授权加密装置与步骤1中的计算机相连接;
步骤5、授权加密装置通过步骤3的加密密钥对要传输的数据信息进行加密,并将密文定时发往计算机;其中,传输的数据信息包括GPS定位、时间数据、预设的使用区域范围、时间期限,加密的具体步骤为:步骤5.1、授权加密装置通过天线接收GPS卫星信号,经过GPS接收芯片的处理,定时形成定位和时间数据,输出GGA GPS定位信息,里面包含定位和时间数据;步骤5.2、嵌入式控制器从E2PROM中取出加密密钥,对定位、时间数据、预设的使用区域范围和时间期限进行加密;
步骤6、计算机定时接收授权加密装置发来的数据,用本机机器指纹形成的密钥对数据进行解密,并判断当前的区域和时间是否在限定的范围内,如果在则被加密的软件正常运行,否则被加密的软件退出;其中,授权加密装置包括GPS接收芯片、嵌入式控制器、E2PROM;GPS接收芯片通过天线接收GPS卫星信号并对该信号进行处理,之后将处理过的信号传输给嵌入式控制器,嵌入式控制器从E2PROM中取出加密密钥对要传输的信号进行加密,然后将加密后的信息发往装有被加密软件的计算机。
基于上述软件区域授权加密方法的授权加密装置包括GPS接收芯片、嵌入式控制器、E2PROM(可编程存储器);GPS接收芯片通过天线接收GPS卫星信号并对该信号进行处理,之后将处理过的信号传输给嵌入式控制器,嵌入式控制器从E2PROM中取出加密密钥对要传输的信号进行加密,然后将加密后的信息发往装有被加密软件的计算机。
本发明与现有技术相比,其显著优点是可以实现软件的区域授权,使其只能在指定的区域内使用,超过了该区域则无法使用;即使跟计算机连接的硬件装置被非法获取或者利用其他技术来模拟发送相同的信息,由于预设定所连计算机机器指纹的唯一性,软件也无法使用,起到了很好的加密作用。
附图说明
图1是本发明的软件区域授权加密方法的流程图。
图2是本发明的授权加密装置硬件结构图。
具体实施方式
下面结合附图对本发明作进一步详细描述。
本发明的一种软件区域授权加密方法包括以下步骤:
步骤1、提取计算机的机器指纹,机器指纹包括计算机的硬盘序列号和网卡的物理地址;提取计算机的机器指纹是通过Windows接口函数来实现的,(Windows接口函数可见:鞠斌山等,利用计算机指纹实现软件加密原理与方法,青岛大学学报(自然科学版),2005(9):63-66)具体为包括以下步骤:
步骤1.1、利用GetVolumeInformation(获取硬盘卷标信息)函数来获取硬盘的参数信息(硬盘的序列号);
步骤1.2、利用NetApi32.DLL(网络接口动态链接库)函数来获取网卡的物理地址;
步骤2、将上述机器指纹进行加密,形成注册码,并将注册资料和注册码发送至注册中心;注册资料包括软件使用方的名称、地址、联系方式、使用时间等信息。对机器指纹进行加密是利用IDEA(International Data Encryption Algorithm)算法实现的,具体包括以下步骤:
步骤2.1、将步骤1.1中的4字节的硬盘序列号和步骤1.2中的6字节的网卡的物理地址组合成10字节的机器指纹明文;
步骤2.2、根据添加固定字节,将10字节的机器指纹明文变化成16字节的机器指纹明文,以便是8的倍数,方便算法的计算;
步骤2.3、用128位的密匙对16字节的机器指纹明文进行加密成16字节的注册码;
步骤3、注册中心对注册码进行核实后,利用注册码对授权加密装置进行加密密钥初始化;利用注册码对授权加密装置进行加密密钥初始化是通过IDEA(International Data EncryptionAlgorithm)算法实现的,具体为用128位的密匙进行再次加密,形成128位授权加密装置数据传输加密密钥。
步骤4、将授权加密装置与步骤1中的计算机相连接;
步骤5、授权加密装置通过步骤3的加密密钥对要传输的数据信息进行加密,并将密文定时发往计算机;
要传输的数据信息包括GPS定位、时间数据、预设的使用区域范围、时间期限,加密的具体步骤为:
步骤5.1、授权加密装置通过天线接收GPS卫星信号,经过GPS接收芯片的处理,定时形成定位和时间数据,输出GGA(Global Positioning System Fix Data)GPS定位信息,里面包含定位和时间数据,并以逗号相分隔;
步骤5.2、嵌入式控制器从E2PROM中取出加密密钥,对定位、时间数据、预设的使用区域范围和时间期限进行加密;
步骤6、计算机定时接收授权加密装置发来的数据,用本机机器指纹形成的密钥对数据进行解密,并判断当前的区域和时间是否在限定的范围内,如果在则被加密的软件正常运行,否则被加密的软件退出。
基于上述软件区域授权加密方法的授权加密装置包括GPS接收芯片、嵌入式控制器、E2PROM(可编程存储器),GPS接收芯片通过天线接收GPS卫星信号并对该信号进行处理,之后将处理过的信号传输给嵌入式控制器,嵌入式控制器从E2PROM中取出加密密钥对要传输的信号进行加密,然后将加密后的信息发往装有被加密软件的计算机。授权加密装置采用计算机的USB供电,不需要外接电源或电池。
下面结合实施例对本发明做进一步的说明:
以一台笔记本电脑为例,其网卡地址为6字节16进制数00-16-D3-AF-57-7D,硬盘序列号为A06A-0D27。添加6个固定字节FF,形成16个字节的机器指纹明文:A0-6A-0D-27-00-16-D3-AF-57-7D-FF-FF-FF-FF-FF-FF。使用IDEA算法,用128位的密匙1(假设为16进制数31-32-33-34-35-36-37-38-31-32-33-34-35-36-37-38)将机器指纹明文加密成16字节注册码:4C-B8-97-25-D6-6D-C7-1B-0D-E4-FB-D9-5B-CD-0B-0B。对注册码再次使用IDEA算法,用128位的密匙2(假设为16进制数38-37-36-35-34-33-32-31-31-32-33-34-35-36-37-38),加密结果为:53-E2-89-62-00-86-0C-12-35-6D-B8-DE-F5-1F-1C-EA,从中取5E86080136BDF11E的ASCII码为授权加密装置的128位加密密钥。传输的数据信息包括GPS定位、时间数据、预设的使用区域范围和时间期限,假设为4250.5589-14718.5084-092204-4250.5589-14718.5084-10-04,分别表示实时纬度-实时经度-实时时间-设定纬度中心-设定经度中心-预设范围-预设时间,其中设定经纬度中心指的用户计算机所在位置,10表示10米之内范围可以使用,04表示累计运行时间不允许超过4个月。授权加密装置用加密密钥对其加密成16进制密文如下:A7-0F-ED-F4-96-6A-C8-BF-BA-2D-8A-73-07-22-75-25-00-3E-F3-18-5F-32-89-2D-4D-BB-50-52-61-A4-A3-63-F9-0F-28-85-5C-8F-36-2A-85-A9-65-60-64-EF-A2-D5,然后进行传输。计算机接收授权加密装置发来的上述密文,用密钥5E86080136BDF11E对数据进行解密,并计算后判断当前的区域和时间在限定的范围内,软件正常运行。

Claims (5)

1.一种软件区域授权加密方法,其特征在于,包括以下步骤:
步骤1、提取计算机的机器指纹,机器指纹包括计算机的硬盘序列号和网卡的物理地址;
步骤2、将上述机器指纹进行加密,形成注册码,并将注册资料和注册码发送至注册中心;
步骤3、注册中心对注册资料进行核实后,利用注册码对授权加密装置进行加密密钥初始化;
步骤4、将授权加密装置与步骤1中的计算机相连接;
步骤5、授权加密装置通过步骤3的加密密钥对要传输的数据信息进行加密,并将密文定时发往计算机;其中,传输的数据信息包括GPS定位、时间数据、预设的使用区域范围、时间期限,加密的具体步骤为:步骤5.1、授权加密装置通过天线接收GPS卫星信号,经过GPS接收芯片的处理,定时形成定位和时间数据,输出GGA GPS定位信息,里面包含定位和时间数据;步骤5.2、嵌入式控制器从E2PROM中取出加密密钥,对定位、时间数据、预设的使用区域范围和时间期限进行加密;
步骤6、计算机定时接收授权加密装置发来的数据,用本机机器指纹形成的密钥对数据进行解密,并判断当前的区域和时间是否在限定的范围内,如果在则被加密的软件正常运行,否则被加密的软件退出;其中,授权加密装置包括GPS接收芯片、嵌入式控制器、E2PROM;GPS接收芯片通过天线接收GPS卫星信号并对该信号进行处理,之后将处理过的信号传输给嵌入式控制器,嵌入式控制器从E2PROM中取出加密密钥对要传输的信号进行加密,然后将加密后的信息发往装有被加密软件的计算机。
2.根据权利要求1所述的软件区域授权加密方法,其特征在于,步骤1中提取计算机的机器指纹是通过Windows接口函数来实现的,具体为包括以下步骤:
步骤1.1、利用GetVolumeInformation函数来获取硬盘的序列号;
步骤1.2、利用NetApi32.DLL函数来获取网卡的物理地址。
3.根据权利要求2所述的软件区域授权加密方法,其特征在于,步骤2中对机器指纹进行加密是利用IDEA算法实现的,具体包括以下步骤:
步骤2.1、将步骤1.1中的4字节的硬盘序列号和步骤1.2中的6字节的网卡的物理地址组合成10字节的机器指纹明文;
步骤2.2、根据添加固定字节,将10字节的机器指纹明文变化成16字节的机器指纹明文;
步骤2.3、用128位的密匙对16字节的机器指纹明文进行加密成16字节的注册码。
4.根据权利要求1所述的软件区域授权加密方法,其特征在于,步骤3中利用注册码对授权加密装置进行加密密钥初始化是通过IDEA算法实现的,具体为用128位的密匙进行再次加密,形成128位授权加密装置数据传输加密密钥。
5.根据权利要求1所述的软件区域授权加密方法,其特征在于,步骤6对数据进行解密具体为:用128位的密匙对密文进行解密,形成原始明文。
CN2009100258510A 2009-03-11 2009-03-11 软件区域授权加密方法及其实现装置 Expired - Fee Related CN101833629B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100258510A CN101833629B (zh) 2009-03-11 2009-03-11 软件区域授权加密方法及其实现装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100258510A CN101833629B (zh) 2009-03-11 2009-03-11 软件区域授权加密方法及其实现装置

Publications (2)

Publication Number Publication Date
CN101833629A CN101833629A (zh) 2010-09-15
CN101833629B true CN101833629B (zh) 2011-10-26

Family

ID=42717696

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100258510A Expired - Fee Related CN101833629B (zh) 2009-03-11 2009-03-11 软件区域授权加密方法及其实现装置

Country Status (1)

Country Link
CN (1) CN101833629B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103259646B (zh) * 2012-05-07 2015-11-18 中国交通通信信息中心 一种基于卫星导航***的信息解密方法
CN103259652B (zh) * 2012-05-07 2015-12-16 中国交通通信信息中心 一种基于时效参数的信息解密方法
CN104819097A (zh) * 2015-04-03 2015-08-05 北京天诚同创电气有限公司 风力发电机组的可编程控制器程序的保护方法及装置
CN107749837A (zh) * 2017-09-26 2018-03-02 甘肃万维信息技术有限责任公司 一种电子政务资源安全防护***及其方法
CN109388940B (zh) * 2018-09-20 2020-12-01 斑马网络技术有限公司 车机***访问方法、装置、服务器及工程u盘
CN113572600B (zh) * 2020-12-31 2024-03-01 广东国腾量子科技有限公司 一种量子密钥安全存储***

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1786867A (zh) * 2005-09-22 2006-06-14 深圳市江波龙电子有限公司 文档加密、解密的方法及其安全管理存储设备和***方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1786867A (zh) * 2005-09-22 2006-06-14 深圳市江波龙电子有限公司 文档加密、解密的方法及其安全管理存储设备和***方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2001-118333A 2001.04.27

Also Published As

Publication number Publication date
CN101833629A (zh) 2010-09-15

Similar Documents

Publication Publication Date Title
GB2538052B (en) Encoder, decoder, encryption system, encryption key wallet and method
CN101262599B (zh) 一种数据处理的方法和***
CN101833629B (zh) 软件区域授权加密方法及其实现装置
CN105790927B (zh) 一种总线分级加密***
EP1734379A4 (en) POSITION GUARANTEE SERVER, POSITION GUARANTEE SYSTEM AND POSITION GUARANTEE METHOD
IL179466A0 (en) A method of encrypting and transferring data between a sender and a receiver using a network
CN103235906A (zh) 一种应用程序加密、解密方法及加密、解密装置
CN101394280B (zh) 移动终端及其数据业务消息的保护方法
US20160323100A1 (en) Key generation device, terminal device, and data signature and encryption method
CN102882683A (zh) 一种可同步的rfid安全认证方法
CN111970114B (zh) 文件加密方法、***、服务器和存储介质
TW200622623A (en) Memory information protection system, semiconductor memory and method of protecting memory information
CN103731266A (zh) 一种用于对电子凭证进行认证的方法及***
KR101541165B1 (ko) 모바일 메시지 암호화 방법, 이 방법을 수행하는 프로그램을 기록한 컴퓨터 판독가능 기록매체 및 이 방법을 저장한 다운로드 서버
US20170316217A1 (en) Multi-factor authentication based content management
CN104936172A (zh) 北斗定位数据传输加密***
CN102750479A (zh) 一种分层软件版权保护方法和***
KR20080099631A (ko) 모바일 카드를 이용한 컨텐츠 사용 방법, 호스트 장치, 및모바일 카드
KR102585404B1 (ko) 데이터 보안 장치
KR20100114321A (ko) 디지털 콘텐츠 거래내역 인증확인 시스템 및 그 방법
CN104683355A (zh) 一种防抵赖的动态口令生成方法及动态口令验证***
CN103731828B (zh) 一种用于电子凭证认证的终端设备及方法
US10057054B2 (en) Method and system for remotely keyed encrypting/decrypting data with prior checking a token
CN102647277A (zh) 一种基于位置信息的密码保护方法
CN203289647U (zh) 一种用于电子凭证认证的手持音频通信设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20111026

Termination date: 20130311