CN107247891A - A kind of use Hybrid Encryption algorithm realizes the method controlled software granting - Google Patents

A kind of use Hybrid Encryption algorithm realizes the method controlled software granting Download PDF

Info

Publication number
CN107247891A
CN107247891A CN201710261600.7A CN201710261600A CN107247891A CN 107247891 A CN107247891 A CN 107247891A CN 201710261600 A CN201710261600 A CN 201710261600A CN 107247891 A CN107247891 A CN 107247891A
Authority
CN
China
Prior art keywords
software
certificate file
dongle
information
certificate
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.)
Granted
Application number
CN201710261600.7A
Other languages
Chinese (zh)
Other versions
CN107247891B (en
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.)
JIANGSU LINYANG ENERGY Co.,Ltd.
Nanjing Linyang Electric Co.,Ltd.
Original Assignee
Jiangsu Linyang Solarfun Co Ltd
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 Jiangsu Linyang Solarfun Co Ltd filed Critical Jiangsu Linyang Solarfun Co Ltd
Priority to CN201710261600.7A priority Critical patent/CN107247891B/en
Publication of CN107247891A publication Critical patent/CN107247891A/en
Application granted granted Critical
Publication of CN107247891B publication Critical patent/CN107247891B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/123Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1014Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to tokens
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Abstract

A kind of use Hybrid Encryption algorithm realizes the method controlled software granting, including:S1, background controller set up database;S2, user start software, and the unique identifying information for obtaining computer sends certificate file to background controller;S3, background controller are that the user distributes Dongle, extract the decoded information for purchasing software function module, the computer that passback certificate to software is installed;S4, user collect certificate file and Dongle, and Dongle is inserted into computer, import certificate file;The decoded information for purchasing software function module is obtained, functional module corresponding with software is matched, software function module is purchased in operation.The Hybrid Encryption algorithm of the present invention realizes that for background controller be safety certificate module that Accreditation System and outgoing software carry out certificate control; with hardware encryption and soft encryption duplicate protection; it is safe, the present invention can be used for institute it is in need carry out software using control occasion.

Description

A kind of use Hybrid Encryption algorithm realizes the method controlled software granting
Technical field
The present invention relates to the safety certificate module controlled software granting that a kind of use Hybrid Encryption algorithm is realized, to soft The timeliness that part is provided, function point is controlled, it is adaptable to the control of commercial payware and the secrecy of company's scientific research technology.
Background technology
At present, the software architecture on PC mainly has a B/S (Browser Server), C/S (Client Server) and is not required to Want the local software of server.
Commercial B/S framework software is typically deployed to realize the large data system of web page access on the server of client, This system may operate in LAN or in public network environment, and the people for being familiar with industry is easy to take server Web service Deployment package in device is disposed and used.
Commercial CS Framework Softwares and local software are usually, to client, to be carried out certainly by installation kit in the way of installation kit It is dynamic to install and use
Business software for company or the software containing independent research technology are in order to ensure to external enwergy Reclaiming benefit or not By usurping and imitation technology wantonly, therefore, it is quite necessary to be controlled using safety certificate module to the granting of software.
At present, the most business software of in the market is all the mechanism verified using registration code, it is easy to which multimachine occur makes With a registration code, or the change time is with regard to that can be continuing with these problems.
The content of the invention
What what problem to be solved by this invention was to provide that a kind of use Hybrid Encryption algorithm realizes controlled software granting Safety certificate module, unified management is carried out to BS, CS, local software, while having the function of hardware encryption and soft encryption, energy Compatible major part development language, and being capable of across PC platform.Based on these speciality, using C++ as development language, and generate The security module that Accreditation System and software are used respectively.
The technical scheme is that:
A kind of use Hybrid Encryption algorithm realizes the method controlled software granting, and it uses Dongle and background controller, should Method comprises the following steps:
S1, background controller set up database, record user profile, purchase information and certificate file generation record, Yong Huxin Breath includes computer unique identifying information(Including:In MAC Address, hard disc physical sequence number and CPUID one or more Combination)With the Dongle distributed for it, purchase information includes software function module and the term of validity, and certificate file generation record includes User profile and purchase information;
S2, user start software, obtain the unique identifying information of computer, this information is stored in certificate file, and is sent out Certificate file is sent to background controller(User is communicated with background controller, transmits certificate file, or printing certificate text Part, background controller is sent to by way of mail or fax);
S3, background controller are that the user distributes Dongle, extract the decoded information for purchasing software function module, user is bought Decoded information, the term of validity and the Dongle information of software function module be carried in certificate file, be back to software and pacified The computer of dress;(Software can also pre-purchase in user, select the functional module and the term of validity needed, be stored in database In, when user enables software, corresponding purchase information is transferred by background controller, configured);Background controller by this Certificate file generation record is stored;
S4, user collect certificate file and Dongle, and Dongle is inserted into computer, import certificate file;Will be hard in certificate Part dog information is matched with the Dongle inserted, if it fails to match, terminates operation, if the match is successful, and acquisition is purchased The decoded information of software function module, functional module corresponding with software is matched, and software function module, root are purchased in operation According to the term of validity, the operation duration to purchased software function module is controlled.
Further, in step S2, it is stored in after the unique identifying information of computer is encrypted in certificate file, it is right Answer, the unique identifying information in background controller decryption certificate file;Described encryption method is md5 encryption method.
Further, in step S3, it is configured with clock module, corresponding step S4, is used according to software in Dongle The term of validity, corresponding configuration is carried out to the clock module in Dongle, user runs the functional module for purchasing software, according to Dongle In clock judge whether use time expires.
Further, when user needs to change computer runs software, background controller is according to the computer of reacquisition Unique identifying information, transfer corresponding software function module information and remaining use time in generation record, counted to changing Software and Dongle after calculation machine carry out regenerating certificate and record.
Further, in step S2, software starts, and generation RSA2048 keys, will to A, including public key PKA and private key SKA The unique identifying information of public key PKA and computer is stored in certificate file, and sends certificate file to background controller;
In step S3, background controller produces RSA2048 secret key pair B, including public key PKB and private key SKB, and randomly generates AES Key KEY, AES key KEY is encrypted using private key SKB, public key PKA successively, and the step is given birth to using the KEY after encryption Into the certificate file comprising software function module decoded information, the term of validity and Dongle information be encrypted, after encryption Certificate file and public key PKB be sent to user;
In step S4, software is obtained after certificate file, successively using private key SKA and public key PKB decryption verifications, obtains AES key KEY, carries out certificate file decryption using KEY, obtains the information of certificate.
Beneficial effects of the present invention:
It is that Accreditation System and outgoing software carry out certificate control that the Hybrid Encryption algorithm of the present invention, which is realized for background controller, Safety certificate module, safe with hardware encryption and soft encryption duplicate protection, the present invention can be used for institute's progress in need Software uses the occasion controlled.
In the present invention, by setting clock module in Dongle so that the usage cycles of software are by the hardware provided Dog realizes, the problem of effectively preventing user computer inaccurate clock or distort clock.
Embodiment
With reference to embodiment, the present invention is further illustrated, although preferred embodiment, however, it is to be appreciated that The present invention be may be realized in various forms without that should be limited by embodiments set forth herein.
A kind of use Hybrid Encryption algorithm realizes the method controlled software granting, and it uses Dongle and Background control Device, this method comprises the following steps:
S1, background controller set up database, record user profile, purchase information and certificate file generation record, Yong Huxin Breath includes computer unique identifying information(Including:In MAC Address, hard disc physical sequence number and CPUID one or more Combination)With the Dongle distributed for it, purchase information includes software function module and the term of validity, and certificate file generation record includes User profile and purchase information;
S2, user start software, obtain the unique identifying information of computer, will be stored in certificate file after this information md5 encryption In, and certificate file is sent to background controller(User is communicated with background controller, transmits certificate file, or beat Written matter is confirmed, background controller is sent to by way of mail or fax);
S3, background controller are that the user distributes Dongle, extract the decoded information for purchasing software function module, user is bought Decoded information, the term of validity and the Dongle information of software function module be carried in certificate file, be back to software and pacified The computer of dress;(Software can also pre-purchase in user, select the functional module and the term of validity needed, be stored in database In, when user enables software, corresponding purchase information is transferred by background controller, configured);Background controller by this Certificate file generation record is stored;
S4, user collect certificate file and Dongle, and Dongle is inserted into computer, import certificate file;Will be hard in certificate Part dog information is matched with the Dongle inserted, if it fails to match, terminates operation, if the match is successful, and acquisition is purchased The decoded information of software function module, functional module corresponding with software is matched, and software function module, root are purchased in operation According to the term of validity, the operation duration to purchased software function module is controlled.
Further, in step S3, it is configured with clock module, corresponding step S4, is used according to software in Dongle The term of validity, corresponding configuration is carried out to the clock module in Dongle, user runs the functional module for purchasing software, according to Dongle In clock judge whether use time expires.
Further, when user needs to change computer runs software, background controller is according to the computer of reacquisition Unique identifying information, transfer corresponding software function module information and remaining use time in generation record, counted to changing Software and Dongle after calculation machine carry out regenerating certificate and record.
Further, in step S2, software starts, and generation RSA2048 keys, will to A, including public key PKA and private key SKA The unique identifying information of public key PKA and computer is stored in certificate file, and sends certificate file to background controller;
In step S3, background controller produces RSA2048 secret key pair B, including public key PKB and private key SKB, and randomly generates AES Key KEY, AES key KEY is encrypted using private key SKB, public key PKA successively, and the step is given birth to using the KEY after encryption Into the certificate file comprising software function module decoded information, the term of validity and Dongle information be encrypted, after encryption Certificate file and public key PKB be sent to user;
In step S4, software is obtained after certificate file, successively using private key SKA and public key PKB decryption verifications, obtains AES key KEY, carries out certificate file decryption using KEY, obtains the information of certificate.
During specific implementation:
Implementing package needs the cooperation of background control system and Dongle.
The Cryptopp increased income third party's encryption library has been used in terms of encryption;
The softdog of SafeNet series is used in terms of Dongle, a built-in dummy clock partly realizes that code is as follows:
Obtain the unique information of computer, MAC Address, hard disc physical sequence number, CPUID.
Windows is obtained using wmi services, and linux system is obtained using assembly instruction, partly realizes code such as Under:
Interface:
1. obtaining registration code, --- --- --- --- --- ----Accreditation System is used
EXPORT_API int __stdcall STDCALL_GET_LICENSEKEY
(char* LICENSE_ KEY, ----License the results returned
Const char* LICENSE_ID, ----systematic code
Const char*ACTIVE_DATE, ----Expiration Date yyyy-MM-dd
Const char*ACTIVE_QUANTITY, ----number of users
Const char*SOFTWARE_FEATURE ----software identification
Const char* FUNCTION_POINT, ----function point
const char* IS_USEDOG));----Dongle information
2. obtain Dongle state --- --- --- --- --- --- --- general-purpose interface
EXPORT_API int __stdcall STDCALL_GET_DOGSTATUS(
char* DOG_STATUS);----Dongle the state returned
3. obtaining unique mark, --- --- --- --- --- --- --- non-registered system is used
EXPORT_API int __stdcall STDCALL_GET_LICENSE_ID(
Char* LICENSE_ID, the systematic code of --- -- return
);
4. obtaining the result, --- --- --- --- --- --- --- --- --- -- non-registered system is used
EXPORT_API int __stdcall STDCALL_VALIDATE (
Char* EXPIRE, ----the Expiration Date returned
Char * FUNCTION, ----the function point returned
Char * CAPACITY, ----the capacity returned
Const char*LICENSE_KEY, --- registration code
const char*SOFTWARE_FEATURE);----software identification
It is described above various embodiments of the present invention, described above is exemplary, and non-exclusive, and is not also limited In disclosed each embodiment.In the case of without departing from the scope and spirit of illustrated each embodiment, led for this technology Many modifications and changes will be apparent from for the those of ordinary skill in domain.

Claims (8)

1. a kind of use Hybrid Encryption algorithm realizes the method controlled software granting, it is characterized in that it uses Dongle and backstage Controller, this method comprises the following steps:
S1, background controller set up database, record user profile, purchase information and certificate file generation record, Yong Huxin Breath includes computer unique identifying information and the Dongle for its distribution, and purchase information includes software function module and the term of validity, Certificate file generation record includes user profile and purchase information;
S2, user start software, obtain the unique identifying information of computer, this information is stored in certificate file, and is sent out Certificate file is sent to background controller;
S3, background controller are that the user distributes Dongle, extract the decoded information for purchasing software function module, user is bought Decoded information, the term of validity and the Dongle information of software function module be carried in certificate file, be back to software and pacified The computer of dress;Background controller is stored this certificate file generation record;
S4, user collect certificate file and Dongle, and Dongle is inserted into computer, import certificate file;Will be hard in certificate Part dog information is matched with the Dongle inserted, if it fails to match, terminates operation, if the match is successful, and acquisition is purchased The decoded information of software function module, functional module corresponding with software is matched, and software function module, root are purchased in operation According to the term of validity, the operation duration to purchased software function module is controlled.
2. use Hybrid Encryption algorithm according to claim 1 realizes the method controlled software granting, it is characterized in that step In rapid S1, unique identifying information includes:One or more combination in MAC Address, hard disc physical sequence number and CPUID.
3. use Hybrid Encryption algorithm according to claim 1 realizes the method controlled software granting, it is characterized in that step In rapid S2, it is stored in after the unique identifying information of computer is encrypted in certificate file, corresponding, background controller decryption Unique identifying information in certificate file.
4. use Hybrid Encryption algorithm according to claim 3 realizes the method controlled software granting, it is characterized in that institute The encryption method stated is md5 encryption method.
5. use Hybrid Encryption algorithm according to claim 1 realizes the method controlled software granting, it is characterized in that institute In the step S3 stated, it is configured with Dongle in clock module, corresponding step S4, the term of validity is used according to software, to hardware Clock module in dog carries out corresponding configuration, and user runs the functional module for purchasing software, and the clock in Dongle judges Whether use time expires.
6. use Hybrid Encryption algorithm according to claim 1 realizes the method controlled software granting, it is characterized in that working as When user needs to change computer runs software, background controller is transferred according to the unique identifying information of the computer of reacquisition Corresponding software function module information and remaining use time in generation record, to changing software and hardware after computer Dog carries out regenerating certificate and record.
7. use Hybrid Encryption algorithm according to claim 1 realizes the method controlled software granting, it is characterized in that step In rapid S2, user is communicated with background controller, is transmitted certificate file, or printing certificate file, is passed through mail or biography Genuine mode is sent to background controller.
8. use Hybrid Encryption algorithm according to claim 1 realizes the method controlled software granting, it is characterized in that:
In step S2, software starts, and generation RSA2048 keys are to A, including public key PKA and private key SKA, by public key PKA and calculating The unique identifying information of machine is stored in certificate file, and sends certificate file to background controller;
In step S3, background controller produces RSA2048 secret key pair B, including public key PKB and private key SKB, and randomly generates AES Key KEY, AES key KEY is encrypted using private key SKB, public key PKA successively, and the step is given birth to using the KEY after encryption Into the certificate file comprising software function module decoded information, the term of validity and Dongle information be encrypted, after encryption Certificate file and public key PKB be sent to user;
In step S4, software is obtained after certificate file, successively using private key SKA and public key PKB decryption verifications, obtains AES key KEY, carries out certificate file decryption using KEY, obtains the information of certificate.
CN201710261600.7A 2017-04-20 2017-04-20 Method for realizing software distribution control by adopting hybrid encryption algorithm Active CN107247891B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710261600.7A CN107247891B (en) 2017-04-20 2017-04-20 Method for realizing software distribution control by adopting hybrid encryption algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710261600.7A CN107247891B (en) 2017-04-20 2017-04-20 Method for realizing software distribution control by adopting hybrid encryption algorithm

Publications (2)

Publication Number Publication Date
CN107247891A true CN107247891A (en) 2017-10-13
CN107247891B CN107247891B (en) 2020-02-28

Family

ID=60016840

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710261600.7A Active CN107247891B (en) 2017-04-20 2017-04-20 Method for realizing software distribution control by adopting hybrid encryption algorithm

Country Status (1)

Country Link
CN (1) CN107247891B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110032831A (en) * 2018-01-11 2019-07-19 上海有云信息技术有限公司 The generation method of software certificate, apparatus and system
CN110502909A (en) * 2019-08-06 2019-11-26 北京北信源软件股份有限公司 A kind of file encrypting method and device, a kind of file decryption method and device
CN111339520A (en) * 2020-02-24 2020-06-26 南京南瑞继保电气有限公司 Hardware dog-based online control method, electronic equipment and storage medium
CN113572600A (en) * 2020-12-31 2021-10-29 广东国腾量子科技有限公司 Quantum key safe storage system
CN115134331A (en) * 2022-05-26 2022-09-30 四川福泰美科技有限公司 System and method for generating unique identifier of industrial Internet of things

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2015267A2 (en) * 2007-06-26 2009-01-14 Aruze Corporation Game processing apparatus for performing area authentication of gaming information
CN103942472A (en) * 2014-04-14 2014-07-23 立德高科(北京)数码科技有限责任公司 Method and device used for preventing unauthorized user from starting software
CN104517042A (en) * 2013-09-29 2015-04-15 北京行的科技有限公司 Use authority method and device of intelligent interactive toys
CN104850764A (en) * 2015-05-22 2015-08-19 东信和平科技股份有限公司 Smart card based software protection method and system
CN106548043A (en) * 2016-11-01 2017-03-29 广东浪潮大数据研究有限公司 A kind of authorization method of application program, installation method, installation end and system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2015267A2 (en) * 2007-06-26 2009-01-14 Aruze Corporation Game processing apparatus for performing area authentication of gaming information
CN104517042A (en) * 2013-09-29 2015-04-15 北京行的科技有限公司 Use authority method and device of intelligent interactive toys
CN103942472A (en) * 2014-04-14 2014-07-23 立德高科(北京)数码科技有限责任公司 Method and device used for preventing unauthorized user from starting software
CN104850764A (en) * 2015-05-22 2015-08-19 东信和平科技股份有限公司 Smart card based software protection method and system
CN106548043A (en) * 2016-11-01 2017-03-29 广东浪潮大数据研究有限公司 A kind of authorization method of application program, installation method, installation end and system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110032831A (en) * 2018-01-11 2019-07-19 上海有云信息技术有限公司 The generation method of software certificate, apparatus and system
CN110502909A (en) * 2019-08-06 2019-11-26 北京北信源软件股份有限公司 A kind of file encrypting method and device, a kind of file decryption method and device
CN111339520A (en) * 2020-02-24 2020-06-26 南京南瑞继保电气有限公司 Hardware dog-based online control method, electronic equipment and storage medium
CN113572600A (en) * 2020-12-31 2021-10-29 广东国腾量子科技有限公司 Quantum key safe storage system
CN113572600B (en) * 2020-12-31 2024-03-01 广东国腾量子科技有限公司 Quantum key safe storage system
CN115134331A (en) * 2022-05-26 2022-09-30 四川福泰美科技有限公司 System and method for generating unique identifier of industrial Internet of things

Also Published As

Publication number Publication date
CN107247891B (en) 2020-02-28

Similar Documents

Publication Publication Date Title
CN107247891A (en) A kind of use Hybrid Encryption algorithm realizes the method controlled software granting
US7685421B2 (en) System and method for initializing operation for an information security operation
JP3613936B2 (en) Access qualification authentication device
CN101872399B (en) Dynamic digital copyright protection method based on dual identity authentication
US7822209B2 (en) Methods and systems for key recovery for a token
KR100733732B1 (en) Securing operation activation in a telecommunication system
US6233567B1 (en) Method and apparatus for software licensing electronically distributed programs
CN101689237B (en) Activation system architecture
CN108681909B (en) Intelligent anti-counterfeiting device and source tracing anti-counterfeiting method based on block chain intelligent contract
CN101645889B (en) Method for issuing digital certificate
KR20040096583A (en) A method and arrangement for protecting software
JPH1198134A (en) Method for detecting fraudulent alteration and copy of cookie, and program storage medium
US20210328799A1 (en) Automated authentication of a new network element
EP3395004B1 (en) A method for encrypting data and a method for decrypting data
US6651169B1 (en) Protection of software using a challenge-response protocol embedded in the software
JP2021166028A (en) NFT access restriction system and NFT access restriction program
JP4137468B2 (en) Program usage authentication method
CN110098925A (en) Based on unsymmetrical key pond to and random number quantum communications service station cryptographic key negotiation method and system
CN101119255A (en) Dotnet LAN software encrypting service terminal activation method
CN101057447B (en) Method and device for re-dispatching specifically coded access objects from a server to a mobile terminal device
JP2012238047A (en) License authentication system and license authentication method
KR19990038925A (en) Secure Two-Way Authentication Method in a Distributed Environment
CN109409112A (en) A kind of disk binding method and device
CN107704251A (en) A kind of safe programming methods of OTP based on computer empowerment management
CN107682147B (en) Security management method and system for smart card chip operating system file

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
TR01 Transfer of patent right

Effective date of registration: 20210420

Address after: Qidong City, Jiangsu province 226200 Nantong City Lin Yang Lu No. 666

Patentee after: JIANGSU LINYANG ENERGY Co.,Ltd.

Patentee after: Nanjing Linyang Electric Co.,Ltd.

Address before: 226200 Jiangsu city of Nantong province Qidong Economic Development Zone No. 666 Lin Yang Lu

Patentee before: JIANGSU LINYANG ENERGY Co.,Ltd.

TR01 Transfer of patent right