CN117313165A - 一种软件机器码的生成方法 - Google Patents
一种软件机器码的生成方法 Download PDFInfo
- Publication number
- CN117313165A CN117313165A CN202311232268.3A CN202311232268A CN117313165A CN 117313165 A CN117313165 A CN 117313165A CN 202311232268 A CN202311232268 A CN 202311232268A CN 117313165 A CN117313165 A CN 117313165A
- Authority
- CN
- China
- Prior art keywords
- character string
- machine code
- generating
- address
- code
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000004913 activation Effects 0.000 claims description 7
- 230000006872 improvement Effects 0.000 description 8
- 238000001994 activation Methods 0.000 description 7
- 238000013475 authorization Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000012795 verification 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/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种软件机器码的生成方法,包括:生成预设长度的随机字符串;对随机字符串进行加密,得到加密字符串;获取计算机的CPU序列码、MAC地址和固定IP地址;将加密字符串与CPU序列码、MAC地址和固定IP地址进行拼接,得到注册信息;对注册信息进行加密,得到机器码。本发明的软件机器码的生成方法可提高软件保护的安全性及授权数量。
Description
技术领域
本发明涉及机器码技术领域,具体涉及一种软件机器码的生成方法。
背景技术
目前,商用软件和共享软件绝大部分都是采用注册码授权的方式来保证软件本身不被盗用,很少有软件采用软件自身在特定的算法中生成机器码,然后通过机器码去索要注册码的方式;上述方式在大概率很容易被破解,所以需要加强机器码的生成安全性。
用户安装系统后,软件系统会根据用户机器的关键信息(例如:MAC地址、CPU序列号、硬盘序列号等等)生成一个注册凭证(也可称为注册码),用户将这个注册凭证发送给软件供应商,供应商通过注册凭证生成一个激活码。用户输入激活码,软件系统完成授权。
上述方法存在如下缺陷:
1.高度依赖硬件信息:上述方法将用户机器的关键信息作为生成注册凭证的基础,一旦用户更换硬件设备或者进行升级,原有的注册凭证可能会失效,导致用户需要重新申请注册凭证,增加了用户的操作复杂度和不便;
2.安全性风险高:依赖硬件信息生成注册凭证的方法容易受到仿冒和篡改的风险;因为硬件信息可以通过各种手段被伪造、修改或者复制,攻击者可以通过篡改用户机器的关键信息来伪造有效的注册凭证,从而绕过授权验证,导致软件盗版和未授权使用。
发明内容
针对现有技术中存在的不足之处,本发明提供一种软件机器码的生成方法。
本发明公开了一种软件机器码的生成方法,包括:
生成预设长度的随机字符串;
对随机字符串进行加密,得到加密字符串;
获取计算机的CPU序列码、MAC地址和固定IP地址;
将加密字符串与CPU序列码、MAC地址和固定IP地址进行拼接,得到注册信息;
对注册信息进行加密,得到机器码。
作为本发明的进一步改进,还包括:
基于机器码生成用于软件注册激活的唯一注册码。
作为本发明的进一步改进,所述随机字符串的预设长度为10~30,所述随机字符串由数字和字母组合而成。
作为本发明的进一步改进,所述随机字符串的生成规则为:按照数字和字母间隔的方式生成预设长度的随机字符串。
作为本发明的进一步改进,所述对随机字符串进行加密,得到加密字符串;包括:
采用SHA256哈希加密算法对随机字符串进行加密,得到256位的哈希值,并将其作为加密字符串。
作为本发明的进一步改进,所述获取计算机的CPU序列码、MAC地址和固定IP地址,包括:
采用操作系统提供的相关函数或第三方库,获取CPU序列码;
采用操作系统提供的网络管理工具或第三方库,获取MAC地址和固定IP地址。
作为本发明的进一步改进,所述将加密字符串与CPU序列码、MAC地址和固定IP地址进行拼接,得到注册信息;包括:
将加密字符串与CPU序列码、MAC地址和固定IP地址进行顺序拼接,得到注册信息。
作为本发明的进一步改进,所述对注册信息进行加密,得到机器码;包括:
采用RSA加密算法对注册信息进行加密,得到机器码。
与现有技术相比,本发明的有益效果为:
本发明上述软件机器码的生成方法可提高软件保护的安全性及授权数量。
附图说明
图1为本发明公开的软件机器码的生成方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图对本发明做进一步的详细描述:
如图1所示,本发明提供一种软件机器码的生成方法,包括:
步骤1、生成预设长度的随机字符串;其中,
随机字符串的预设长度为10~30,优选为20位;
所述随机字符串由数字、字母或数字和字母组合而成,优选采用数字和字母组合,其可以使用随机数生成器和字母数字字符集来实现;进一步,所述随机字符串的生成规则为:按照数字和字母间隔的方式生成预设长度的随机字符串,即一个或多个数字与一个多个字母间隔生成,以保证随机字符串的随机性和不可破解性。
步骤2、通过SHA256哈希加密算法对上述随机字符串进行加密,得到加密字符串;其中,SHA256是一种加密算法,以字符串作为输入,并生成一个256位的哈希值作为输出;SHA256加密算法在计算哈希时非常安全,使得原始字符串无法被还原。
步骤3、获取计算机的CPU序列码、MAC地址和固定IP地址;
具体包括:
采用操作系统提供的相关函数或第三方库,获取CPU序列码;其中,CPU序列码是一种唯一标识计算机处理器的代码,获取CPU序列码的目的是将其加入到注册信息中;
采用操作系统提供的网络管理工具或第三方库,获取MAC地址和固定IP地址;其中,MAC地址是网络适配器的物理地址,用于在局域网中唯一标识计算机;固定IP地址是计算机在网络中的唯一标识,不会随着时间或位置的变化而改变;获取计算机网卡的MAC地址和固定IP地址的目的是将其加入到注册信息中。
步骤4、将加密字符串与CPU序列码、MAC地址和固定IP地址进行拼接,得到注册信息;其中,
具体的拼接方法为:将加密字符串与CPU序列码、MAC地址和固定IP地址进行顺序拼接,得到注册信息。
步骤5、采用RSA加密算法对注册信息进行加密,得到机器码;优选采用RSA2048;RSA是一种非对称加密算法,使用公钥加密数据,然后使用私钥进行解密;这样可以确保注册信息的安全性,只有拥有私钥的人才能解密注册信息。
步骤6、基于机器码生成用于软件注册激活的唯一注册码;
具体包括:
将生成的机器码提供给生产厂商,生产厂商采用相关的算法或系统基于机器码生成注册码;并将注册码发送至软件端;收到注册码后,可进行软件注册激活。注册码是生产厂商根据机器码生成的一串字符,用于验证您的软件使用权。在注册激活过程中,将注册码输入到软件注册界面或通过特定的激活工具进行激活,以解锁软件的完整功能。
本发明的优点为:
本发明可以提高软件保护的安全性及授权数量。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种软件机器码的生成方法,其特征在于,包括:
生成预设长度的随机字符串;
对随机字符串进行加密,得到加密字符串;
获取计算机的CPU序列码、MAC地址和固定IP地址;
将加密字符串与CPU序列码、MAC地址和固定IP地址进行拼接,得到注册信息;
对注册信息进行加密,得到机器码。
2.如权利要求1所述的软件机器码的生成方法,其特征在于,还包括:
基于机器码生成用于软件注册激活的唯一注册码。
3.如权利要求1所述的软件机器码的生成方法,其特征在于,所述随机字符串的预设长度为10~30,所述随机字符串由数字和字母组合而成。
4.如权利要求3所述的软件机器码的生成方法,其特征在于,所述随机字符串的生成规则为:按照数字和字母间隔的方式生成预设长度的随机字符串。
5.如权利要求1所述的软件机器码的生成方法,其特征在于,所述对随机字符串进行加密,得到加密字符串;包括:
采用SHA256哈希加密算法对随机字符串进行加密,得到256位的哈希值,并将其作为加密字符串。
6.如权利要求1所述的软件机器码的生成方法,其特征在于,所述获取计算机的CPU序列码、MAC地址和固定IP地址,包括:
采用操作系统提供的相关函数或第三方库,获取CPU序列码;
采用操作系统提供的网络管理工具或第三方库,获取MAC地址和固定IP地址。
7.如权利要求1所述的软件机器码的生成方法,其特征在于,所述将加密字符串与CPU序列码、MAC地址和固定IP地址进行拼接,得到注册信息;包括:
将加密字符串与CPU序列码、MAC地址和固定IP地址进行顺序拼接,得到注册信息。
8.如权利要求1所述的软件机器码的生成方法,其特征在于,所述对注册信息进行加密,得到机器码;包括:
采用RSA加密算法对注册信息进行加密,得到机器码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311232268.3A CN117313165A (zh) | 2023-09-22 | 2023-09-22 | 一种软件机器码的生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311232268.3A CN117313165A (zh) | 2023-09-22 | 2023-09-22 | 一种软件机器码的生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117313165A true CN117313165A (zh) | 2023-12-29 |
Family
ID=89273032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311232268.3A Pending CN117313165A (zh) | 2023-09-22 | 2023-09-22 | 一种软件机器码的生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117313165A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160085955A1 (en) * | 2013-06-10 | 2016-03-24 | Doosra, Inc. | Secure Storing and Offline Transferring of Digitally Transferable Assets |
WO2018119644A1 (zh) * | 2016-12-27 | 2018-07-05 | 深圳配天智能技术研究院有限公司 | 一种软件授权方法、系统及设备 |
CN116662975A (zh) * | 2023-05-26 | 2023-08-29 | 济南浪潮数据技术有限公司 | 一种密码生成方法、装置、电子设备及存储介质 |
-
2023
- 2023-09-22 CN CN202311232268.3A patent/CN117313165A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160085955A1 (en) * | 2013-06-10 | 2016-03-24 | Doosra, Inc. | Secure Storing and Offline Transferring of Digitally Transferable Assets |
WO2018119644A1 (zh) * | 2016-12-27 | 2018-07-05 | 深圳配天智能技术研究院有限公司 | 一种软件授权方法、系统及设备 |
CN116662975A (zh) * | 2023-05-26 | 2023-08-29 | 济南浪潮数据技术有限公司 | 一种密码生成方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
李锟华 等: "基于矩阵加密生成软件注册码的设计与应用", 《电脑知识与技术》, 30 November 2017 (2017-11-30), pages 110 - 112 * |
范涛 等: "基于硬件信息的软件加密系统在数字电视中的应用", 《电视技术》, 31 December 2012 (2012-12-31), pages 23 - 26 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6950523B1 (en) | Secure storage of private keys | |
US7685421B2 (en) | System and method for initializing operation for an information security operation | |
CN112000975B (zh) | 一种密钥管理系统 | |
CN106452764B (zh) | 一种标识私钥自动更新的方法及密码系统 | |
US7693286B2 (en) | Method of delivering direct proof private keys in signed groups to devices using a distribution CD | |
KR101897715B1 (ko) | 바이오정보를 이용한 패스워드 없는 전자서명 시스템 | |
JPH11225142A (ja) | 認証装置および方法 | |
US8566952B1 (en) | System and method for encrypting data and providing controlled access to encrypted data with limited additional access | |
CN106936588B (zh) | 一种硬件控制锁的托管方法、装置及系统 | |
CN102084313A (zh) | 用于数据安全的系统和方法 | |
CN103946858A (zh) | 应用数据的解密和加密 | |
CN107920052B (zh) | 一种加密方法及智能装置 | |
WO2014037741A1 (en) | Method and system for verifying an access request | |
CN106953732B (zh) | 芯片卡的密钥管理系统及方法 | |
CN112565265B (zh) | 物联网终端设备间的认证方法、认证系统及通讯方法 | |
CN111526007B (zh) | 一种随机数生成方法及系统 | |
CN111739200B (zh) | 一种指纹电子锁的加密、解密认证方法和指纹电子锁 | |
CN112800392A (zh) | 基于软证书的授权方法和装置、存储介质 | |
CN104881595B (zh) | 基于pin码管理的自助远程解锁方法 | |
JP4137468B2 (ja) | プログラム使用認証方法 | |
CN112633884B (zh) | 交易主体身份证书的本地私钥恢复方法及装置 | |
CN117313165A (zh) | 一种软件机器码的生成方法 | |
JP4319804B2 (ja) | Icカードアプリケーションプログラム、icカードおよびライセンス管理システム | |
CN111030819A (zh) | 一种基于加解密算法的验真方法、系统、终端及存储介质 | |
CN111428232A (zh) | 一种加密输入的密码处理方法、加密处理装置、智能锁 |
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 |