CN109583153B - 一种计算机可读存储介质和应用该介质的伺服驱动器 - Google Patents
一种计算机可读存储介质和应用该介质的伺服驱动器 Download PDFInfo
- Publication number
- CN109583153B CN109583153B CN201811378908.0A CN201811378908A CN109583153B CN 109583153 B CN109583153 B CN 109583153B CN 201811378908 A CN201811378908 A CN 201811378908A CN 109583153 B CN109583153 B CN 109583153B
- Authority
- CN
- China
- Prior art keywords
- code
- servo
- servo driver
- registration
- bit
- 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.)
- Active
Links
- 238000013475 authorization Methods 0.000 claims abstract description 8
- 230000004913 activation Effects 0.000 claims description 23
- 238000005070 sampling Methods 0.000 claims description 15
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 230000007613 environmental effect Effects 0.000 claims description 4
- 230000000737 periodic effect Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 abstract description 8
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/123—Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及伺服驱动器的固件使用授权方法,通过伺服端获取伺服驱动器的识别码和当前环境随机码,然后组合得到注册码,借助于伺服驱动器本身内置的全球唯一标识码作为注册码的唯一性保障,用伺服驱动器本身获取的随机信号转换后得到环境随机码作为注册码的随机性保障,实现了伺服驱动器的固件和伺服驱动器硬件之间完全的绑定,保证了安全,且能够保证伺服固件只在授权的情况下才允许运行,且只能在单台伺服驱动器上运行。伺服驱动器固件本身可以在客户现场被任意复制、下载、更新,使其快速升级、直到稳定,同时确保了伺服驱动器固件的使用安全性。
Description
技术领域
本发明涉及伺服驱动器的固件保护技术领域,特别是涉及一种适用于伺服驱动器的固件使用授权方法。
背景技术
加密技术一般广泛应用于计算机软件上,计算机软件加密一般具有防止任意复制,防止非授权使用,防止程序非法访问控制等特征。目前,为了保护伺服驱动器的固件,大多采用对固件本身进行加密的方法,然而,加密后的固件无法直接让客户更新,而在固件开发过程中,经常需要借助客户的计算机进行远程更新,以修正固件本身存在的缺点。目前常用的是给客户提供加密的升级用U盘来实现固件升级和使用,比如,使用U盘存储伺服驱动器的单片机升级用的文件,利用Atmel公司Atmegal28单片机提供的Bootloader功能,通过USB接口芯片ch375读取U盘内存储的文件,使用Obotloader程序直接更换伺服驱动器的单片机内部Flash的原有固件。这种方式虽然安全,但是不能防备一个U盘用于多个固件升级的情况,而且不具备实时更新的功能。
发明内容
本发明的目的在于提供一种适用于伺服驱动器的固件使用授权方法和用于实现该方法的伺服驱动器。
本发明的目的通过以下技术方案实现:
提供一种计算机可读存储介质,其存储有用于实现伺服驱动器的固件使用授权的计算机程序,该程序被处理器执行时实现以下步骤:
注册码生成步骤,伺服端获取伺服驱动器的识别码和当前环境随机码,两者组合得到注册码,所述环境随机码是指伺服把对当前环境噪声进行采样得到的噪声信号进行转换后得到的二进制编码;
激活码生成步骤,控制端获取所述注册码,生成与注册码单向映射的激活码;
授权激活步骤,伺服端获取所述激活码则允许伺服运行。
其中,把噪声信号进行转换后得到的二进制编码是指:把采样得到的噪声信号转换为12位的二进制编码,每次保留其中的N位编码,多次采样后得到的N位编码的组合作为环境随机码。
其中,所述环境随机码是128位的二进制编码,所述N位编码中的N取1,2,4,或8。
其中,每次保留的N位编码是12位的二进制编码中固定位置的N位编码。
其中,所述N位编码是12位的二进制编码中的最低位的一位编码,每次采样得到的N位编码作为环境随机码的最低位。
其中,所述注册码生成步骤中,对当前环境噪声进行采样是通过伺服内部的AD转换器对外部噪声信号进行周期性采样。
其中,所述注册码生成步骤中,两者组合得到注册码是指,把识别码转化为与所述随机码位数相同的二进制编码,由两组二进制编码前后拼合得到所述注册码。
其中,所述激活码生成步骤中,所述激活码是以注册码为输入,经过MD5加密算法计算得到。
其中,所述注册码生成步骤在所述伺服收到固件更新文件开始运行的信号时执行。
还提供一种伺服驱动器,包括处理器上述计算机可读存储介质,该计算机可读存储介质上的计算机程序可被处理器执行。
本发明的有益效果:该伺服驱动器通过伺服端获取伺服驱动器的识别码和当前环境随机码,然后组合得到注册码,借助于伺服驱动器本身内置的全球唯一标识码作为注册码的唯一性保障,用伺服驱动器本身获取的随机信号转换后得到环境随机码作为注册码的随机性保障,实现了伺服驱动器的固件和伺服驱动器硬件之间完全的绑定,保证了安全,且能够保证伺服固件只在授权的情况下才允许运行,且只能在单台伺服驱动器上运行。
具体实施方式
结合以下实施例对本发明作进一步描述。
本实施例的伺服驱动器作为伺服端与控制端通信来实现在线的固件更新,且通过伺服驱动器的固件和伺服驱动器硬件之间完全绑定的方式,确保伺服只能在授权的情况下才允许运行,该适用于伺服驱动器的固件使用授权方法通过以下步骤实现。
(1)控制端把作为固件更新文件的二进制文件发送给客户,客户下载到伺服驱动器。
(2)伺服驱动器收到固件更新文件以后,首次上电运行时执行注册码生成步骤,伺服端获取伺服驱动器的识别码和当前环境随机码,两者组合得到注册码,并通过伺服驱动器面板显示给客户。
具体的,注册码包含前后拼合的两部分,前后两部分均由128位二进制位组成。伺服驱动器内部核心控制器内置了全球唯一标识的识别码,对其进行一定的数学运算,得到伺服的唯一识别码作为注册码的前128位,使得注册码具有唯一性。伺服驱动器把对当前环境噪声进行采样得到的噪声信号进行转换后得到的二进制编码作为注册码的后128位的环境随机码,使得注册码具有随机性。
其中,随机码的生成由伺服内部的AD转换器对外部噪声信号进行采样得到。具体过程是,伺服内部的AD转换器周期性的采样外部噪声信号,将采样到的噪声信号转换为12位的二进制编码,每次均保留其中的最低位。如此周期性的采样128次,得到128位随机码。实际使用时,可以设计为每次采样后保留二进制编码中的N位编码,多次采样后得到的N位编码的组合作为环境随机码。N位编码中的N取1,2,4,或8,以使整数次采样后刚好得到128位的环境随机码。其中,每次保留的N位编码是12位的二进制编码中固定位置的N位编码,以便于提取数据。
(3)客户通过伺服驱动器或者其他方式把注册码发送给控制端的工作人员,工作人员登录云服务器,执行激活码生成步骤,把注册码输入到云服务器上的激活软件上,生成激活码,再发回给客户。这一过程也可以通过实现下载在伺服驱动器上的程序与控制端云服务器通信来实现,而不需工作人员手动处理。
其中,激活码是以注册码为输入,经过MD5加密算法计算得到的单向映射的激活码。加密算法运行于云服务器端的计算机软件上,D5加密算法保证了注册码和激活码之间的单向映射关系,也就是不可能有任意的两个注册码通过计算能够得到相同的激活码。固件授权建立在以云服务器为核心的基础上,借助云服务器的安全系统来保证伺服驱动器固件的安全性,实现了伺服驱动器固件保护的统一化、智能化和自动化。
(4)客户将激活码输入到伺服内部,执行授权激活步骤,伺服验证激活码的有效性后允许运行。
该伺服驱动器通过伺服端获取伺服驱动器的识别码和当前环境随机码,然后组合得到注册码,借助于伺服驱动器本身内置的全球唯一标识码作为注册码的唯一性保障,用伺服驱动器本身获取的随机信号转换后得到环境随机码作为注册码的随机性保障,实现了伺服驱动器的固件和伺服驱动器硬件之间完全的绑定,保证了安全,且能够保证伺服固件只在授权的情况下才允许运行,且只能在单台伺服驱动器上运行。伺服驱动器固件本身可以在客户现场被任意复制、下载、更新,使其快速升级、直到稳定,同时确保了伺服驱动器固件的使用安全性。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案,而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细地说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。
Claims (5)
1.一种计算机可读存储介质,其存储有用于实现伺服驱动器的固件使用授权的计算机程序,其特征在于,该程序被处理器执行时实现以下步骤:
注册码生成步骤,伺服端获取伺服驱动器的识别码和当前环境随机码,两者组合得到注册码,所述环境随机码是指伺服把对当前环境噪声进行采样得到的噪声信号进行转换后得到的二进制编码;
激活码生成步骤,控制端获取所述注册码,生成与注册码单向映射的激活码;
授权激活步骤,伺服端获取所述激活码则允许伺服运行;
把噪声信号进行转换后得到的二进制编码是指:把采样得到的噪声信号转换为12位的二进制编码,每次保留其中的N位编码,多次采样后得到的N位编码的组合作为环境随机码;所述环境随机码是128位的二进制编码,所述N位编码中的N取1,2,4,或8;每次保留的N位编码是12位的二进制编码中固定位置的N位编码;
所述注册码生成步骤中,对当前环境噪声进行采样是通过伺服内部的AD转换器对外部噪声信号进行周期性采样。
2.如权利要求1所述的一种计算机可读存储介质,其特征在于,所述注册码生成步骤中,两者组合得到注册码是指,把识别码转化为与所述随机码位数相同的二进制编码,由两组二进制编码前后拼合得到所述注册码。
3.如权利要求1所述的一种计算机可读存储介质,其特征在于,所述激活码生成步骤中,所述激活码是以注册码为输入,经过MD5加密算法计算得到。
4.如权利要求1所述的一种计算机可读存储介质,其特征在于,所述注册码生成步骤在所述伺服收到固件更新文件开始运行的信号时执行。
5.一种伺服驱动器,包括处理器,其特征在于,还包括如权利要求1~4中任一项所述计算机可读存储介质,该计算机可读存储介质上的计算机程序可被处理器执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811378908.0A CN109583153B (zh) | 2018-11-19 | 2018-11-19 | 一种计算机可读存储介质和应用该介质的伺服驱动器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811378908.0A CN109583153B (zh) | 2018-11-19 | 2018-11-19 | 一种计算机可读存储介质和应用该介质的伺服驱动器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109583153A CN109583153A (zh) | 2019-04-05 |
CN109583153B true CN109583153B (zh) | 2023-08-04 |
Family
ID=65923260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811378908.0A Active CN109583153B (zh) | 2018-11-19 | 2018-11-19 | 一种计算机可读存储介质和应用该介质的伺服驱动器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109583153B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114645819B (zh) * | 2022-05-19 | 2022-09-13 | 东方电气风电股份有限公司 | 风电变桨控制方法、装置、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1782941A (zh) * | 2004-12-04 | 2006-06-07 | 鸿富锦精密工业(深圳)有限公司 | 软件授权与保护装置及方法 |
CN102541509A (zh) * | 2012-01-13 | 2012-07-04 | 河南科技大学 | 一种基于混沌加密的真随机数生成方法 |
CN105391695A (zh) * | 2015-10-20 | 2016-03-09 | 山东泰信电子股份有限公司 | 一种终端注册方法及校验方法 |
CN107342984A (zh) * | 2017-06-13 | 2017-11-10 | 浙江大华技术股份有限公司 | 一种用于设备绑定的系统、方法及装置 |
-
2018
- 2018-11-19 CN CN201811378908.0A patent/CN109583153B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1782941A (zh) * | 2004-12-04 | 2006-06-07 | 鸿富锦精密工业(深圳)有限公司 | 软件授权与保护装置及方法 |
CN102541509A (zh) * | 2012-01-13 | 2012-07-04 | 河南科技大学 | 一种基于混沌加密的真随机数生成方法 |
CN105391695A (zh) * | 2015-10-20 | 2016-03-09 | 山东泰信电子股份有限公司 | 一种终端注册方法及校验方法 |
CN107342984A (zh) * | 2017-06-13 | 2017-11-10 | 浙江大华技术股份有限公司 | 一种用于设备绑定的系统、方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109583153A (zh) | 2019-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103460195B (zh) | 用于安全软件更新的系统和方法 | |
US9672347B2 (en) | Integrity for security audit logs | |
CN107404382B (zh) | 使用访问令牌控制软件的可获许可的特征 | |
US8874922B2 (en) | Systems and methods for multi-layered authentication/verification of trusted platform updates | |
US8799662B2 (en) | Method and apparatus for validating the integrity of installer files prior to installation | |
US8966653B2 (en) | Method and apparatus for provisioning a mobile application | |
US9088574B2 (en) | Subscriber identity module-based authentication of a wireless device and applications stored thereon | |
US10949537B2 (en) | Secure firmware provisioning and device binding mechanism | |
CN111008034B (zh) | 一种补丁生成方法及装置 | |
CN112231702B (zh) | 应用保护方法、装置、设备及介质 | |
US11681513B2 (en) | Controlled scope of authentication key for software update | |
US20210234686A1 (en) | Information processing device, information processing method, and storage medium | |
CN109583153B (zh) | 一种计算机可读存储介质和应用该介质的伺服驱动器 | |
CN106709281B (zh) | 补丁发放和获取方法、装置 | |
CN112311528A (zh) | 一种基于国密算法的数据安全传输方法 | |
US9276943B2 (en) | Authorizing a change within a computer system | |
CN111176685A (zh) | 一种升级方法及装置 | |
CN111046389A (zh) | 固件组件安全更新的方法以及用以实施的携行计算机站 | |
US20190102573A1 (en) | Theater ears android app sensitive data management | |
CN115225285A (zh) | 基于可信执行环境的数据安全上链实现方法 | |
CN107295078A (zh) | 一种补丁分发跟踪及控制系统及方法 | |
CN111695124A (zh) | 权限控制方法和装置、存储介质和电子设备 | |
KR101745821B1 (ko) | 시큐어 부팅 방법 및 시스템 | |
US10776457B1 (en) | System and method for preventing execution of unauthorized code | |
US11790057B2 (en) | Controlling program execution using an access key |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |