CN104123482B - Method for generating machine code and registration code and method for software registration and function limiting - Google Patents
Method for generating machine code and registration code and method for software registration and function limiting Download PDFInfo
- Publication number
- CN104123482B CN104123482B CN201410322559.6A CN201410322559A CN104123482B CN 104123482 B CN104123482 B CN 104123482B CN 201410322559 A CN201410322559 A CN 201410322559A CN 104123482 B CN104123482 B CN 104123482B
- Authority
- CN
- China
- Prior art keywords
- character
- group
- ascii code
- predetermined mathematical
- mathematical computing
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 113
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 9
- 235000009421 Myristica fragrans Nutrition 0.000 description 8
- 206010040943 Skin Ulcer Diseases 0.000 description 8
- 239000001115 mace Substances 0.000 description 8
- 231100000019 skin ulcer Toxicity 0.000 description 8
- 206010019133 Hangover Diseases 0.000 description 5
- 229910052766 Lawrencium Inorganic materials 0.000 description 5
- 239000004744 fabric Substances 0.000 description 5
- 230000000968 intestinal effect Effects 0.000 description 5
- CNQCVBJFEGMYDW-UHFFFAOYSA-N lawrencium atom Chemical compound [Lr] CNQCVBJFEGMYDW-UHFFFAOYSA-N 0.000 description 5
- 238000007747 plating Methods 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 241000269420 Bufonidae Species 0.000 description 4
- 206010053398 Clonic convulsion Diseases 0.000 description 4
- 229910052692 Dysprosium Inorganic materials 0.000 description 4
- 229910052687 Fermium Inorganic materials 0.000 description 4
- KBQHZAAAGSGFKK-UHFFFAOYSA-N dysprosium atom Chemical compound [Dy] KBQHZAAAGSGFKK-UHFFFAOYSA-N 0.000 description 4
- MIORUQGGZCBUGO-UHFFFAOYSA-N fermium Chemical compound [Fm] MIORUQGGZCBUGO-UHFFFAOYSA-N 0.000 description 4
- 239000010977 jade Substances 0.000 description 4
- 239000002574 poison Substances 0.000 description 4
- 231100000614 poison Toxicity 0.000 description 4
- 238000004080 punching Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 239000010437 gem Substances 0.000 description 3
- 239000013589 supplement Substances 0.000 description 3
- PXHVJJICTQNCMI-UHFFFAOYSA-N Nickel Chemical compound [Ni] PXHVJJICTQNCMI-UHFFFAOYSA-N 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 230000001502 supplementing effect Effects 0.000 description 2
- 229910001369 Brass Inorganic materials 0.000 description 1
- 229910052686 Californium Inorganic materials 0.000 description 1
- 229910052688 Gadolinium Inorganic materials 0.000 description 1
- 244000068988 Glycine max Species 0.000 description 1
- 235000010469 Glycine max Nutrition 0.000 description 1
- 229910052781 Neptunium Inorganic materials 0.000 description 1
- 244000131316 Panax pseudoginseng Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 229910052777 Praseodymium Inorganic materials 0.000 description 1
- 241001201614 Prays Species 0.000 description 1
- 241000630524 Taractes rubescens Species 0.000 description 1
- QCWXUUIWCKQGHC-UHFFFAOYSA-N Zirconium Chemical compound [Zr] QCWXUUIWCKQGHC-UHFFFAOYSA-N 0.000 description 1
- 239000010951 brass Substances 0.000 description 1
- BDOSMKKIYDKNTQ-UHFFFAOYSA-N cadmium atom Chemical group [Cd] BDOSMKKIYDKNTQ-UHFFFAOYSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 244000309466 calf Species 0.000 description 1
- HGLDOAKPQXAFKI-UHFFFAOYSA-N californium atom Chemical compound [Cf] HGLDOAKPQXAFKI-UHFFFAOYSA-N 0.000 description 1
- 210000002939 cerumen Anatomy 0.000 description 1
- MIAJZAAHRXPODB-UHFFFAOYSA-N cobalt potassium Chemical compound [K].[Co] MIAJZAAHRXPODB-UHFFFAOYSA-N 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000036461 convulsion Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- UIWYJDYFSGRHKR-UHFFFAOYSA-N gadolinium atom Chemical compound [Gd] UIWYJDYFSGRHKR-UHFFFAOYSA-N 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- LFNLGNPSGWYGGD-UHFFFAOYSA-N neptunium atom Chemical compound [Np] LFNLGNPSGWYGGD-UHFFFAOYSA-N 0.000 description 1
- 229910052759 nickel Inorganic materials 0.000 description 1
- MWUXSHHQAYIFBG-UHFFFAOYSA-N nitrogen oxide Inorganic materials O=[N] MWUXSHHQAYIFBG-UHFFFAOYSA-N 0.000 description 1
- ORQBXQOJMQIAOY-UHFFFAOYSA-N nobelium Chemical compound [No] ORQBXQOJMQIAOY-UHFFFAOYSA-N 0.000 description 1
- 229910052762 osmium Inorganic materials 0.000 description 1
- SYQBFIAQOQZEGI-UHFFFAOYSA-N osmium atom Chemical compound [Os] SYQBFIAQOQZEGI-UHFFFAOYSA-N 0.000 description 1
- PUDIUYLPXJFUGB-UHFFFAOYSA-N praseodymium atom Chemical compound [Pr] PUDIUYLPXJFUGB-UHFFFAOYSA-N 0.000 description 1
- 238000000682 scanning probe acoustic microscopy Methods 0.000 description 1
- 238000003756 stirring Methods 0.000 description 1
- 231100000419 toxicity Toxicity 0.000 description 1
- 230000001988 toxicity Effects 0.000 description 1
- 235000021419 vinegar Nutrition 0.000 description 1
- 239000000052 vinegar Substances 0.000 description 1
- 229910052726 zirconium Inorganic materials 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/105—Arrangements for software license management or administration, e.g. for managing licenses at corporate level
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Abstract
The invention provides a method for generating a machine code and a registration code and a method for software registration and function limiting. The method for generating the machine code comprises the steps that equipment information of a computer is obtained; each character in the equipment information is encrypted to generate a first character string; a character group corresponding to each character in the first character string is determined; each character in the first character string is replaced with any character in the corresponding character group so as to generate the machine code. According to the method for generating the machine code and the registration code and the method for software registration and function limiting, software development results can be effectively protected.
Description
Technical field
The present invention relates to software verification field, more particularly, be related to a kind of method generating machine code and registration code and
Software registration and the method for restricted software function.
Background technology
At present, software developer, in order to protect the interests of itself, can protect to software development achievement.The common practice
Have: after have purchased software, the software development chamber of commerce provides a user with a registration code to user, so that user enters according to this registration code
Row is registered and is used software.Or, user, after have purchased software, runs installation procedure and produces a machine code, Ran Houyong
Machine code is issued software developer by family, generates corresponding registration code by software developer according to this machine code, and by registration code
Provide the user with and so that user is registered and used software.But the machine code being generated by traditional method and registration code are existed
Following problems:
1. registration code can repeatedly be registered in multiple stage computers;
2. registration code can only be registered on one computer, but because the generation method of registration code is excessively simple, easily quilt
Crack.
Accordingly, it would be desirable to a kind of method of effective protection software development achievement.
Content of the invention
It is an object of the invention to provide a kind of method of generation machine code and registration code and software registration and restricted software
The method of function, it can be effectively protected software development achievement.
It is an aspect of the invention to providing a kind of method generating machine code, comprise the steps: to obtain computer
Facility information;Each character in facility information is encrypted, to produce the first character string;Determine every in the first character string
Character group corresponding to individual character;Each character in first character string is replaced with any one word in corresponding character group
Symbol, to form machine code.
Alternatively, described facility information includes: at least one hardware sequence number of described computer all or part of
Combination.
Alternatively, each character in facility information is encrypted, is included with the step producing the first character string: will set
Each character in standby information replaces with corresponding ascii code value, to produce ascii code value group;Will be every in ascii code value group
Individual ascii code value and the first preset value carry out predetermined mathematical computing;By the result carrying out obtaining after predetermined mathematical computing according to
The order of the corresponding ascii code value in ascii code value group arranges to produce the first character string.
Alternatively, each the ascii code value in ascii code value group and the first preset value are carried out the step of predetermined mathematical computing
Rapid inclusion: according to pre-defined rule, the ascii code value in ascii code value group is divided into n group, wherein, n is the nature more than zero
Number, each group is corresponding to a kind of predetermined mathematical computing;Each ascii code value and the first preset value are carried out each ascii code value
Predetermined mathematical computing corresponding to the group of place.
Alternatively, each the ascii code value in ascii code value group and the first preset value are carried out the step of predetermined mathematical computing
Rapid also comprise determining that each ascii code value and the first preset value carry out predetermined mathematical computing after the digit of result that obtains whether
Reach predetermined figure, wherein, described predetermined figure is that all ascii code values in ascii code table are entered with the first preset value respectively
Maximum number of digits in the digit of result obtaining after the corresponding predetermined mathematical computing of the different group of row;It is being not reaching to predetermined figure
Result before supplement null value so that this result reaches predetermined figure.
Alternatively, n is 2, and predetermined mathematical computing corresponding with first group is one of addition, subtraction and multiplication mathematics fortune
Calculate, predetermined mathematical computing corresponding with second group is another kind of mathematical operation in addition, subtraction and multiplication.
Alternatively, n is 3, and predetermined mathematical computing corresponding with first group is multiplication, predetermined number student movement corresponding with second group
Calculate as addition, predetermined mathematical computing corresponding with the 3rd group is subtraction.
Alternatively, each character group includes at least one Chinese character, there is not identical Chinese character between kinds of characters group.
It is another aspect of the invention to provide a kind of method generating registration code, comprise the steps: to receive machine code;
Determine the character group corresponding to each character in machine code;Each character in machine code is replaced with corresponding character group institute
Corresponding character, to obtain the first character string;First character string is decrypted, to obtain decryption information;By described solution secret letter
Each character in breath is encrypted, to produce the second character string;Determine the word corresponding to each character in the second character string
Symbol group;Each character in second character string is replaced with any one character in corresponding character group, to form registration code.
Alternatively, the first character string is decrypted, is included with the step obtaining decryption information: the first character string is divided
For some;Each part after first character string is divided and the first preset value carry out predetermined mathematical computing;By predetermined number
Each numerical value that student movement obtains replaces with corresponding ascii code character, to obtain decryption information.
Alternatively, the step the first character string being divided into some includes: by the first word in units of predetermined figure
Character in symbol string is divided into some, and wherein, described predetermined figure is all ascii code values difference in ascii code table
Maximum number of digits in the digit of the result obtaining after the predetermined mathematical computing carrying out corresponding to different groups from the first preset value;Will be every
The null value in the left side from from left to right first character being not zero of individual part removes.
Alternatively, the step that each part after the first character string being divided and the first preset value carry out predetermined mathematical computing
Including: according to pre-defined rule, the plurality of part is divided into n group, wherein, n is the natural number more than zero, each group corresponds to
In a kind of predetermined mathematical computing;Each part and the first preset value are carried out the predetermined number student movement corresponding to each part place group
Calculate.
Alternatively, each character in decryption information is encrypted, is included with the step producing the second character string: will solve
Each character in confidential information replaces with corresponding ascii code value, to produce ascii code value group;Will be every in ascii code value group
Individual ascii code value and the second preset value carry out predetermined mathematical computing;By the result carrying out obtaining after predetermined mathematical computing according to
The order of the corresponding ascii code value in ascii code value group arranges to produce the second character string.
Alternatively, each the ascii code value in ascii code value group and the second preset value are carried out the step of predetermined mathematical computing
Rapid inclusion: according to pre-defined rule, the ascii code value in ascii code value group is divided into n group, wherein, n is the nature more than zero
Number, each group is corresponding to a kind of predetermined mathematical computing;Each ascii code value and the second preset value are carried out each ascii code value
Predetermined mathematical computing corresponding to the group of place.
Alternatively, each the ascii code value in ascii code value group and the second preset value are carried out the step of predetermined mathematical computing
Rapid also comprise determining that each ascii code value and the second preset value carry out predetermined mathematical computing after the digit of result that obtains whether
Reach predetermined figure, wherein, described predetermined figure is that all ascii code values in ascii code table are entered with the second preset value respectively
Maximum number of digits in the digit of result obtaining after the corresponding predetermined mathematical computing of the different group of row;It is being not reaching to predetermined figure
Result before supplement null value so that this result reaches predetermined figure.
Alternatively, n is 2, and predetermined mathematical computing corresponding with first group is one of addition, subtraction and multiplication mathematics fortune
Calculate, predetermined mathematical computing corresponding with second group is another kind of mathematical operation in addition, subtraction and multiplication.
Alternatively, n is 3, and predetermined mathematical computing corresponding with first group is multiplication, predetermined number student movement corresponding with second group
Calculate as addition, predetermined mathematical computing corresponding with the 3rd group is subtraction.
Alternatively, each character group includes at least one Chinese character, there is not identical Chinese character between kinds of characters group.
It is another aspect of the invention to provide a kind of method of software registration, comprise the steps: to obtain registration code;Really
Determine the character group corresponding to each character in registration code;Each character in registration code is replaced with corresponding character group institute right
The character answered, to obtain the second character string;Second character string is decrypted, to obtain decryption information;Obtain setting of computer
Standby information;Whether judge decryption information consistent with the facility information obtaining;If decryption information is consistent with the facility information obtaining,
Then determine that software passes through registration.
Alternatively, also include: after determining that software passes through registration, create registration file under pre-set path, will register
Code is written in registration file, and the creation time of registration file is revised as time in the past, and file attribute is set to hide.
Alternatively, if decryption information is inconsistent with the facility information obtaining, point out registration code mistake.
Alternatively, the second character string is decrypted, is included with the step obtaining decryption information: the second character string is divided
For some;Each part after second character string is divided and the second preset value carry out predetermined mathematical computing;By predetermined number
Each numerical value that student movement obtains replaces with corresponding ascii code character, to obtain decryption information.
Alternatively, the step the second character string being divided into some includes: by the second word in units of predetermined figure
Character in symbol string is divided into some, and wherein, described predetermined figure is all ascii code values difference in ascii code table
Maximum number of digits in the digit of the result obtaining after the predetermined mathematical computing carrying out corresponding to different groups from the second preset value;Will be every
The null value in the left side from from left to right first character being not zero of individual part removes.
Alternatively, the step that each part after the second character string being divided and the second preset value carry out predetermined mathematical computing
Including: according to pre-defined rule, the plurality of part is divided into n group, wherein, n is the natural number more than zero, each group corresponds to
In a kind of predetermined mathematical computing;Each part and the second preset value are carried out the predetermined number student movement corresponding to each part place group
Calculate.
Alternatively, each character group includes at least one Chinese character, there is not identical Chinese character between kinds of characters group.
It is another aspect of the invention to provide a kind of method of restricted software function, comprise the steps: to start software
When search pre-set path under registration file;Read the registration code in registration file;Determine that each the character institute in registration code is right
The character group answered;Each character in registration code is replaced with the character corresponding to corresponding character group, to obtain the second character
String;Second character string is decrypted, to obtain decryption information;Obtain the facility information of computer;Judge decryption information and obtain
Whether the facility information taking is consistent;If decryption information is consistent with the facility information obtaining, Freeware repertoire.
Alternatively, if decryption information is inconsistent with the facility information obtaining, Freeware partial function.
Alternatively, the second character string is decrypted, is included with the step obtaining decryption information: the second character string is divided
For some;Each part after second character string is divided and the second preset value carry out predetermined mathematical computing;By predetermined number
Each numerical value that student movement obtains replaces with corresponding ascii code character, to obtain decryption information.
Alternatively, the step the second character string being divided into some includes: by the second word in units of predetermined figure
Character in symbol string is divided into some, and wherein, described predetermined figure is all ascii code values difference in ascii code table
Maximum number of digits in the digit of the result obtaining after the predetermined mathematical computing carrying out corresponding to different groups from the second preset value;Will be every
The null value in the left side from from left to right first character being not zero of individual part removes.
Alternatively, the step that each part after the second character string being divided and the second preset value carry out predetermined mathematical computing
Including: according to pre-defined rule, the plurality of part is divided into n group, wherein, n is the natural number more than zero, each group corresponds to
In a kind of predetermined mathematical computing;Each part and the second preset value are carried out the predetermined number student movement corresponding to each part place group
Calculate.
Alternatively, each character group includes at least one Chinese character, there is not identical Chinese character between kinds of characters group.
The method of the generation machine code according to the present invention and registration code and the method for software registration and restricted software function, energy
Enough it is effectively protected software development achievement.
Brief description
By the detailed description carrying out below in conjunction with the accompanying drawings, above and other, the specific and advantage of the present invention will become
Clearer, wherein:
Fig. 1 illustrates the flow chart generating the method for machine code according to an embodiment of the invention;
Fig. 2 illustrates according to an embodiment of the invention each character in facility information to be encrypted generation the first character
The flow chart of the method for string;
Fig. 3 illustrates the flow chart generating the method for registration code according to an embodiment of the invention;
Fig. 4 illustrates according to an embodiment of the invention the first character string is decrypted with the stream of the method obtaining decryption information
Cheng Tu;
The flow chart that Fig. 5 illustrates the method for software registration according to an embodiment of the invention;
The flow chart that Fig. 6 illustrates the method for restricted software function according to an embodiment of the invention.
Specific embodiment
Now, it is more fully described example embodiment with reference to the accompanying drawings, wherein, some exemplary embodiments are shown in the accompanying drawings
Go out.
Fig. 1 illustrates the flow chart generating the method for machine code according to an embodiment of the invention.
As shown in figure 1, in step 101, obtaining the facility information of computer.Facility information includes: described computer is extremely
The all or part of combination of a few hardware sequence number.For example, hardware sequence number can be described equipment cpu serial number,
Hard disk serial number, network interface card serial number, video card serial number etc., facility information can be cpu serial number, hard disk serial number, network interface card sequence
Row number, video card serial number etc. one of the combination of part of the part of serial number or multiple serial number or cpu sequence
Row number, hard disk serial number, network interface card serial number, video card serial number etc. one of whole or multiple serial numbers of serial number complete
The combination in portion.For example, facility information can be obtained by the operating system of computer.
In one example, the facility information of acquisition can be the part of hard disk serial number, and hard disk serial number is
" jp2940j82stpvv ", facility information can be " jp2940j8 ".
In step 102, each character in facility information is encrypted, to produce the first character string.Can be utilized various
AES is encrypted to character.
According to an embodiment of the invention each character in facility information is encrypted generation with reference to Fig. 2 description
The method of the first character string.
Fig. 2 illustrates according to an embodiment of the invention each character in facility information to be encrypted generation the first character
The flow chart of the method for string.
In step 201, each character in facility information is replaced with corresponding ascii code value, to produce ascii code value
Group.Here, replacement is carried out based on ASCII table (ascii code table).That is, search in ascii code table
To the numerical value corresponding with character, and character is replaced with this corresponding numerical value, to produce ascii code value group.
In one example, the facility information " jp2940j8 " obtaining is replaced with what corresponding ascii code value obtained
Ascii code value group is: 74 80 50 57 52 48 74 56.
In step 202, (n is oneself more than zero according to pre-defined rule, the ascii code value in ascii code value group to be divided into n
So count) individual group, each group is corresponding to a kind of predetermined mathematical computing.Here pre-defined rule can various can be grouped
Method.For example, it is possible to being carried out being grouped, be grouped by odd positions and even number position by predetermined number.For example, each group corresponds to
Predetermined mathematical computing can be one of addition, subtraction and multiplication.It should be understood that predetermined mathematical computing not limited to this.
It should be understood that as n=1, the whole ascii code values in ascii code value group are divided into 1 group.In other words, no
Ascii code value group is divided.Meanwhile, in n=1, each the ascii code value in ascii code value group all carries out identical
Predetermined mathematical computing.Predetermined mathematical computing can be addition, subtraction or multiplication.
In one example, ascii code value group " 74 80 50 57 52 48 74 56 " is divided into 2 in units of 4
Individual group, first group is: 74 80 50 57, second group is: 52 48 74 56.Predetermined mathematical computing corresponding to first group is to add
Method, the predetermined mathematical computing corresponding to second group is subtraction.
In step 203, each ascii code value and the first preset value are carried out corresponding to each ascii code value place group
Predetermined mathematical computing.That is, the corresponding a kind of predetermined mathematical computing of each group after step 202 packet, the ascii code in each group
Value and the first preset value carry out a kind of predetermined mathematical computing corresponding to the group of place.For example: when the n in step 202 is 2, with the
One group of corresponding predetermined mathematical computing can be the mathematical operation of one of addition, subtraction and multiplication, corresponding with second group pre-
Determining mathematical operation can be another kind of mathematical operation in addition, subtraction and multiplication.When n in step 202 is 3, with first group
Corresponding predetermined mathematical computing can be multiplication, and predetermined mathematical computing corresponding with second group can be addition, with three group pair
The predetermined mathematical computing answered can be subtraction.First preset value can be for arbitrary integer it will be understood that when predetermined mathematical computing is
During multiplication, the first preset value is the arbitrary integer of non-zero.
In one example, obtaining first group after ascii code value group being grouped is: 74 80 50 57, second group
For: 52 48 74 56, the first preset value is 7, and first group of corresponding predetermined mathematical computing is addition, and second group is corresponding predetermined
Mathematical operation is subtraction, then first group of result carrying out obtaining after corresponding predetermined mathematical computing with the first preset value is: 81 87
57 64, second group of result carrying out obtaining after corresponding predetermined mathematical computing with the first preset value is: 45 41 67 49.
In another example, obtaining first group after ascii code value group is grouped is: 74 80 50 57, second group
For: 52 48 74 56, the first preset value is 50, and first group of corresponding predetermined mathematical computing is addition, and second group is corresponding predetermined
Mathematical operation is subtraction, then first group of result carrying out obtaining after corresponding predetermined mathematical computing with the first preset value is: 124
130 100 107, second group of result carrying out obtaining after corresponding predetermined mathematical computing with the first preset value is: 2-2 24 6.
In step 204, determine whether the digit of each result obtaining after carrying out predetermined mathematical computing reaches predetermined figure.
It should be understood that when carrying negative sign in the result obtaining in computing, the digit of result includes the digit of negative sign and the digit of numeral;
When in the result obtaining in computing without negative sign, only include the digit of numeral.
Predetermined figure is that all ascii code values in ascii code table are carried out corresponding to different groups from the first preset value respectively
Predetermined mathematical computing after maximum number of digits in the digit of result that obtains.The digit of result herein as hereinbefore, when
When carrying negative sign in the result that computing obtains, the digit of result includes the digit of negative sign and the digit of numeral;When obtaining in computing
Result in without negative sign when, only include numeral digit.Understand, the span of ascii code value is based on ascii code table
[0,127], then all ascii code values in ascii code table carry out the predetermined number corresponding to different groups from the first preset value respectively
After student movement is calculated, the digit that has of the most numerical value of the result median that obtains is predetermined figure.
In one example, the first preset value is 7, and first group of corresponding predetermined mathematical computing is addition, second group of correspondence
Predetermined mathematical computing be subtraction, then all ascii code values in ascii code table respectively add the first preset value 7 after obtain
The digit of all of result and ascii code table in all ascii codes be individually subtracted the first preset value 7 after obtain all of
Maximum number of digits in the digit of result is 3.That is, predetermined figure is 3.
In another example, the first preset value is 50, and first group of corresponding predetermined mathematical computing is addition, second group pair
The predetermined mathematical computing answered is subtraction, then obtain after all ascii code values in ascii code table add the first preset value 50 respectively
To all of result digit and ascii code table in all ascii codes be individually subtracted the institute obtaining after the first preset value 50
Maximum number of digits in the digit of some results is 3.That is, predetermined figure is 3.
In step 205, supplemented null value before being not reaching to the result of predetermined figure, so that this result reaches pre-determined bit
Number.That is, supplement null value before the result being less than predetermined figure in the result median that step 203 obtains.
In one example, the result obtaining after carrying out predetermined mathematical computing in the example shown in step 203 is: 81
87 57 64 45 41 67 49, due to true to the predetermined figure of the example shown in step 203 in the example shown in step 204
It is set to 3, so obtaining after supplementing null value before being not reaching to the result of predetermined figure: 081 087 057 064 045 041
067 049.
In another example, the result obtaining after carrying out predetermined mathematical computing in the example shown in step 203 is:
124 130 100 107 2-2 24 6, due to predetermined to the example shown in step 203 in the example shown in step 204
Digit is defined as 3, so obtaining after supplementing null value before being not reaching to the result of predetermined figure: 124 130 100 107
002 0-2 024 006.
In step 206, by the result carrying out obtaining after predetermined mathematical computing according to the ascii code value obtaining in step 201
The order of the corresponding ascii code value in group arranges to produce the first character string.That is, result step 205 being obtained still by
Order arrangement according to the corresponding ascii code value in ascii code value group produces the first character string.
In one example, the result that step 205 obtains is: 081 087 057 064 045 041 067 049, according to
The order arrangement of the corresponding ascii code value in ascii code value group obtains the first character string
“081087057064045041067049”.
In another example, the result that step 205 obtains is: 124 130 100 107 002 0-2 024 006, presses
Order arrangement according to the corresponding ascii code value in ascii code value group obtains the first character string " 1241301001070020-
2024006”.
Return Fig. 1, in step 103, determine the character group corresponding to each character in the first character string.In an example
In, each character in the first character string is corresponding with a character group, and each character group includes at least one Chinese character, different words
There is not identical Chinese character between symbol group.Specifically, character group can be 11, and each character group content is as follows:
Character group (0): Can Chanchanchan intestinal factory clonic convulsion rush kitchen hoe suck skin ulcer grant vinegar break;
Character group (1): stirrup upsetting fermium ploughshare mace is picked californium shackles and continued the compacted gill of lawrencium cerumen protactinium praseodymium tie strings of cash tattoo Qing Rong short jacket;
Character group (2): the young storage of gem Cicadae Chong is preesed to alter pick cadmium ring Hui Huojiakai town and knit gold-plating neptunium Nie;
Character group (3): step on bright sorrowful insert surprised treasure angry put Chi Chou Chouchou bufonid toad Chu in order and carry the stupid long hollow piece of jade with rectangular sides urge overworked stranding Cuo;
Character group (4): sad fear wear the zie spring die rush toxicity gadolinium palace seize by force that cutting the throat makes a din and extend protection Xu Xu a surname seized with terror withered;
Character group (5): toad shovel silvery pomfret is punished to dote on farmland diction late and kick and prays dysprosium top wooden tablets or slips for writing calf mirror clang nice food and select fine gold to engrave trowel anchor Mo nobelium to move;
Character group (6): noise is examined the lady in the moon that is recovered and claims sincere tomahawk's hangover blunderbuss silk fabric to jerk very sad kind female essence of ruing;
Character group (7): ginseng Cao Cechai produces the normal Chang of prostitute and sings nest morning spoon fermented soya beans, salted or other wise and pounds that high place is inadequate to sob ship;
Character group (8): adze meal cabin rough people of the same generation Chang cloak Zan strips recover moving to and fro and kicks quickly frontier hammer Ci;
Character group (9): wipe behaviour's boat Scarabaeiform and cook and stir spade buddhist and repay to cover to fear and dismiss clever solely plating forging blade of a sword pot a unit of weight used in ancient China, equal to six liang emblem;
Character group (-): file beep osmium cutting edge of a knife or a sword applies zirconium San castrates to release widow's a small brass gong crack and nibble nickel and twist ferocious division of a ci poem fault coin and blocks up before cobalt potassium puts down victory.
Character in () of each character group is the character corresponding with this character group.
In step 104, each character in the first character string is replaced with any one character in corresponding character group,
Form machine code.That is, for each character in the first character string, from the character group corresponding with this character, randomly draw one
Individual character, and replace this character.
In one example, each character in the first character string " 081087057064045041067049 " is replaced
The machine code obtaining afterwards is: the moon cabin mace intestinal people of the same generation sings punching hangover poison hoe top lawrencium skin ulcer silk fabric of fearing of kicking and pounds and seize by force.
In another example, each character in the first character string " 1241301001070020-2024006 " is replaced
The machine code obtaining after changing is: picks fermium sorrowful clonic convulsion mace kitchen and continues to suck hairpin and break young hoe and nibble Chong gem and wears title.
According to Fig. 1 generate according to an embodiment of the invention shown in the method for machine code and Fig. 2 according to this
The method each character in facility information being encrypted generation the first character string of bright embodiment, can be based on computer
Facility information produce machine code for generating registration code, this machine code is made up of one group of Chinese character, thus being effectively protected soft
Part development.
Fig. 3 illustrates the flow chart generating the method for registration code according to an embodiment of the invention.
As shown in figure 3, in step 301, receiving machine code.Here, the machine code being received can be that electric terminal sends
Machine code it is also possible to the machine code that is manually entered.
In one example, the machine code of reception is: the moon cabin mace intestinal people of the same generation sing punching kick hangover poison hoe fear top lawrencium skin ulcer silk fabric
Pound and seize by force.
In another example, the machine code of reception is: picks fermium sorrowful clonic convulsion mace kitchen and continues to suck hairpin and break young hoe and nibbles Chong
Gem wears title.
In step 302, determine the character group corresponding to each character in machine code.That is, determine each in machine code
Which character group character is present in.Here, each character group includes at least one Chinese character, there is not phase between kinds of characters group
Same Chinese character.
In one example, machine code is: the moon cabin mace intestinal people of the same generation sings punching hangover poison hoe top lawrencium skin ulcer silk fabric of fearing of kicking and pounds and seize by force
?.One of machine code character be " the moon ", the content based on aforementioned character group it is known that, this character " the moon " is present in character group
(0) in, i.e. character group corresponding with this character " the moon " is character group (0).
In step 303, each character in machine code is replaced with the character corresponding to corresponding character group, obtains first
Character string.Namely be based on the corresponding relation of aforementioned character group and character, each character in machine code is replaced with corresponding character
The corresponding character of group.
In one example, one of machine code character " the moon " can be replaced the word corresponding to corresponding character group (0)
Symbol " 0 ", by that analogy, machine code " the moon cabin mace intestinal people of the same generation sing punching kick hangover poison hoe fear top lawrencium skin ulcer silk fabric pound seize by force " in every
Individual character can get the first character string after being replaced: 081087057064045041067049.
In another example, machine code " is picked fermium sorrowful clonic convulsion mace kitchen and is continued to suck hairpin and break young hoe and nibble Chong gem and wear
" in each character be replaced after available first character string be called: 1241301001070020-2024006.
In step 304, the first character string is decrypted, to obtain decryption information.Can be utilized corresponding with AES
Decipherment algorithm is decrypted to the first character string.
According to an embodiment of the invention the first character string is decrypted with reference to Fig. 4 description and obtains decryption information
Method.Here, the first character string utilizes the method shown in Fig. 2 encrypted.It is appreciated that the decryption information obtaining here is equipment
Information.
Fig. 4 illustrates according to an embodiment of the invention the first character string is decrypted with the stream of the method obtaining decryption information
Cheng Tu.
In step 401, in units of predetermined figure, the character in the first character string is divided into some.Here, in advance
Positioning number is that all ascii code values in ascii code table carry out the predetermined mathematical corresponding to different groups from the first preset value respectively
Maximum number of digits in the digit of the result obtaining after computing.The digit of result herein as hereinbefore, when obtain in computing
When carrying negative sign in result, the digit of result includes the digit of negative sign and the digit of numeral;When in the result obtaining in computing not
During with negative sign, only include the digit of numeral.First preset value is identical with the first preset value in corresponding ciphering process, different
Organize the predetermined mathematical computing corresponding to different groups that corresponding predetermined mathematical computing is in corresponding ciphering process, predetermined figure
Determine with the predetermined figure in corresponding ciphering process, method determines that method is identical.That is, predetermined figure here is added with corresponding
Predetermined figure during close is identical.
In one example, the first character string is: 081087057064045041067049, the first preset value is 7, corresponding
Ciphering process in the corresponding predetermined mathematical computing of different groups be respectively addition and subtraction, predetermined figure is 3.By the first word
Symbol string divides, for unit, some obtaining by predetermined figure 3: 081 087 057 064 045 041 067 049.
In another example, the first character string is: 1241301001070020-2024006, and the first preset value is 7, right
In the ciphering process answered, the corresponding predetermined mathematical computing of different groups is respectively addition and subtraction, and predetermined figure is 3.By first
Character string divides, for unit, some obtaining by predetermined figure 3: 124 130 100 107 002 0-2 024 006.
In step 402, the null value in the left side from from left to right first character being not zero for each part is removed.
In one example, some " 081 087 057 064 obtaining will be divided in the example shown in step 401
The null value in the left side from from left to right first character being not zero 045 041 067 049 " removes and obtains: 81 87 57 64 45
41 67 49.
In another example, some " 124 130 100 107 obtaining will be divided in the example shown in step 401
The null value in the left side from from left to right first character being not zero of 002 0-2 024 006 " removes and obtains: 124 130 100
107 2 -2 24 6.
In step 403, (n is the nature more than zero according to pre-defined rule, some that step 401 obtains to be divided into n
Number) individual group, each group is corresponding to a kind of predetermined mathematical computing.Here pre-defined rule can be with corresponding ciphering process
The various method that can be grouped of pre-defined rule identical, for example, is grouped by predetermined number in corresponding ciphering process,
Here pre-defined rule is exactly to be grouped by predetermined number, carries out by odd positions and even number position in corresponding ciphering process
Packet, pre-defined rule here is exactly to be grouped by odd positions and even number position.Each organizes corresponding predetermined mathematical computing
Inverse operation for respective sets corresponding predetermined mathematical computing in corresponding ciphering process.For example, in corresponding ciphering process, first
Organize corresponding predetermined mathematical computing be addition, second group of corresponding predetermined mathematical computing be subtraction, the 3rd group of corresponding predetermined number
Student movement is calculated as multiplication, then first group of corresponding predetermined mathematical computing here is subtraction, second group of corresponding predetermined number student movement
Calculating as addition, the 3rd group of corresponding predetermined mathematical computing is division.
In one example, by some " 81 87 57 64 45 41 67 obtaining in the example shown in step 402
49 " it is grouped by with the pre-defined rule identical method in corresponding ciphering process.That is, it is divided into 2 in units of 4
Group, first group is: 81 87 57 64, second group is: 45 41 67 49.Due to first in the example shown in step 401
Predetermined mathematical budget in ciphering process corresponding to character string " 081087057064045041067049 ", corresponding to first group
For addition, the predetermined mathematical computing corresponding to second group is subtraction, so the predetermined mathematical computing corresponding to first group here
For subtraction, the predetermined mathematical computing corresponding to second group is addition.
In another example, by some " 124 130 100 107 2 obtaining in the example shown in step 402
- 2 24 6 " it is grouped by with the pre-defined rule identical method in corresponding ciphering process.That is, it is divided in units of 4
2 groups, first group is: 124 130 100 107, second group is: 2-2 24 6.Due in the example shown in step 401
Predetermined mathematical in ciphering process corresponding to first character string " 1241301001070020-2024006 ", corresponding to first group
Budget is addition, and the predetermined mathematical computing corresponding to second group is subtraction, so the predetermined mathematical corresponding to first group here
Computing is subtraction, and the predetermined mathematical computing corresponding to second group is addition.
In step 404, each part and the first preset value are carried out the predetermined number student movement corresponding to each part place group
Calculate.That is, the corresponding a kind of predetermined mathematical computing of each group after step 403 packet, each part in each group is pre- with first
If value carries out a kind of predetermined mathematical computing corresponding to the group of place.
In one example, the first preset value is 7, and first group " 81 87 57 64 " corresponding predetermined mathematical computing is to subtract
Method, second group " 45 41 67 49 " corresponding predetermined mathematical computing be addition, then first group with the first preset value carry out corresponding
The result obtaining after predetermined mathematical computing is: 74 80 50 57, second group carries out corresponding predetermined number student movement with the first preset value
The result obtaining after calculation is: 52 48 74 56.
In another example, the first preset value is 50, first group " 124 130 100 107 " corresponding predetermined number student movement
Calculate as subtraction, second group " 2-2 24 6 " corresponding predetermined mathematical computing is addition, then first group with the first preset value carry out right
The result obtaining after the predetermined mathematical computing answered is: 74 80 50 57, second group carries out corresponding predetermined number with the first preset value
The result that student movement obtains after calculating is: 52 48 74 56.
In step 405, each numerical value that predetermined mathematical computing is obtained replaces with corresponding ascii code character, to obtain
Decryption information.Here, replacement is carried out based on ASCII table (ascii code table).That is, in ascii code table
In find the character corresponding with numerical value, and numerical value is replaced with corresponding character, to obtain decryption information.
In one example, the result " 74 80 50 57 52 48 74 56 " that predetermined mathematical computing obtains is replaced with
Ascii code character obtains decryption information: jp2940j8.
Return Fig. 3, each character in step 305, the decryption information that step 304 deciphering is obtained is encrypted, and produces
Raw second character string.Second character string is different from the first character string.Can be utilized various AESs that character is encrypted.
In one example, encryption method here can be with believing equipment shown in Fig. 2 according to an embodiment of the invention
The method that each character in breath is encrypted generation the first character string is identical, differs only in pre- using second in step 305
If value each ascii code value is carried out each predetermined mathematical computing corresponding to the group of ascii code value place, and shown in Fig. 2
Method used in be the first preset value.Second preset value is the arbitrary integer different from the first preset value, so that plus
Second character string of close generation different from the first character string it will be understood that when predetermined mathematical computing be multiplication when, the second preset value
For non-zero different from the first preset value arbitrary integer.
In step 306, determine the character group corresponding to each character in the second character string.In one example, second
Each character in character string is corresponding with a character group, and each character group includes at least one Chinese character, kinds of characters group it
Between there is not identical Chinese character.Specifically, character group can be 11, and each character group content is as previously mentioned.Each character group
() in character be the character corresponding with this character group.
In step 307, each character in the second character string is replaced with any one character in corresponding character group,
Form registration code.That is, for each character in the second character string, from the character group corresponding with this character, randomly draw one
Individual character, and replace this character.
In one example, the second character string is: 0354036003300337-228-232-206-224, to the second character
Each character in string obtains registration code after being replaced: the stupid spoon of dysprosium Chuan Chong Chou Chengchuchi factory bufonid toad is released
Coin is slitted long hollow piece of jade with rectangular sides storage with a knife and is castrated armour skin ulcer blunderbuss and put down and knits gold-plating and cut the throat.
According to Fig. 3 generate according to an embodiment of the invention shown in the method for registration code and Fig. 4 according to this
Bright embodiment the method obtaining decryption information is decrypted to the first character string, can based on obtain machine code generate note
Volume code, this registration code is made up of one group of Chinese character, thus being effectively protected software development achievement.
The flow chart that Fig. 5 illustrates the method for software registration according to an embodiment of the invention.
As shown in figure 5, in step 501, obtaining registration code.Here, the registration code of acquisition can be the note that server sends
Volume code is it is also possible to the registration code that is manually entered.
In step 502, determine the character group corresponding to each character in registration code.That is, determine each in registration code
Which character group character is present in.Here, each character group includes at least one Chinese character, there is not phase between kinds of characters group
Same Chinese character.
In one example, registration code is: the stupid spoon of dysprosium Chuan Chong Chou Chengchuchi factory bufonid toad is released coin and slitted the long hollow piece of jade with rectangular sides with a knife
Storage is castrated armour skin ulcer blunderbuss and is put down and knits gold-plating and cut the throat.For the character " " in registration code, the content based on aforementioned character group it is known that, this character
" " is present in character group (0).That is, with this corresponding character group of character " " be character group (0).
In step 503, each character in registration code is replaced with the character corresponding to corresponding character group, obtains second
Character string.Namely be based on the corresponding relation of aforementioned character group and character, each character in registration code is replaced with corresponding character
The corresponding character of group.
In one example, registration code " release coin and slit long hollow piece of jade with rectangular sides storage with a knife by the stupid spoon of dysprosium Chuan Chong Chou Chengchuchi factory bufonid toad
Castrate armour skin ulcer blunderbuss and put down and knit gold-plating and cut the throat " in each character be replaced after available second character string be: 0354036003300337-
228-232-206-224.
In step 504, the second character string is decrypted, obtains decryption information.With AES corresponding solution can be utilized
Close algorithm is decrypted to the second character string.For example, obtaining second using the second preset value using the encryption method shown in Fig. 2
During character string, decryption method here and according to an embodiment of the invention the first character string is decrypted shown in Fig. 4
Identical to the method for decryption information, difference is using the second preset value, the second character string to be decrypted in step 504, and
The method of Fig. 4 is then using the first preset value, the first character string is decrypted.
In step 505, obtain the facility information of computer.Here, acquired facility information is currently registered
The facility information of computer.For example, facility information can be obtained by the operating system of computer.
In step 506, judge whether the decryption information obtaining in step 504 is consistent with the facility information that step 505 obtains,
If the facility information that decryption information is obtained with step 505 is consistent, execution step 507, determine that software passes through to register.
In step 508, register file determining that software will be created after registration under pre-set path, registration code is write
To in registration file, and the creation time of registration file is revised as time in the past, file attribute is set to hide.Here, in advance
Put path and could be arranged to free routing, for example, it is possible to setting pre-set path be c: windows system32 or c:
winnt\system32\.The registration file creating is used for storing registration code, and filename and extension name can arbitrarily be arranged, for example,
The filename of registration file can be set and extend entitled c0mcat.dll.Time in the past can be arbitrary before current time
Time, for example, it is possible to be 2004-8-1720:00:00.
In step 506 if it is determined that decryption information is inconsistent with the facility information that step 505 obtains, then execution step
509, point out registration code mistake.
The method of the software registration according to an embodiment of the invention according to Fig. 5, can be based on the registration code obtaining
Carry out software registration, this registration code is made up of one group of Chinese character, in registration process, registration code is verified simultaneously and will register
The storing path of file, filename etc. are configured, thus being effectively protected software development achievement.
The flow chart that Fig. 6 illustrates the method for restricted software function according to an embodiment of the invention.
As shown in fig. 6, in step 601, searching the registration file under pre-set path when starting software.Here, preset road
Footpath is the position for storage registration file, and registration file is used for storing registration code.
Registration code in step 602, in the registration file that read step 601 finds.
In step 603, determine the character group corresponding to each character in registration code, i.e. determine each in registration code
Which character group character is present in.Here, each character group includes at least one Chinese character, there is not phase between kinds of characters group
Same Chinese character.
In step 604, each character in registration code is replaced with the character corresponding to corresponding character group, obtains second
Character string.Namely be based on the corresponding relation of aforementioned character group and character, each character in registration code is replaced with corresponding character
The corresponding character of group.
In step 605, the second character string is decrypted, obtains decryption information.With AES corresponding solution can be utilized
Close algorithm is decrypted to the second character string.
For example, when obtaining the second character string using the second preset value using the encryption method shown in Fig. 2, deciphering here
Method with shown in Fig. 4, according to an embodiment of the invention the first character string is decrypted with the method phase obtaining decryption information
With difference is using the second preset value, the second character string to be decrypted in step 605, and in the method for Fig. 4 is then
Using the first preset value, the first character string is decrypted.
In step 606, obtain the facility information of computer.Here, acquired facility information is soft for currently having installed
The facility information of the computer of part.For example, facility information can be obtained by the operating system of computer.
In step 607, judge whether the decryption information obtaining in step 605 is consistent with the facility information that step 606 obtains,
If the facility information that decryption information is obtained with step 606 is consistent, execution step 608, Freeware repertoire.That is, use
Family can use the repertoire of software.
In step 607 if it is determined that decryption information is inconsistent with the facility information that step 606 obtains, then execution step
609, Freeware partial function.That is, only the partial function of software is supplied to user to use.
The method of the function of restricted software according to an embodiment of the invention according to Fig. 6, to the note in registration file
Volume code is verified, and the function of being opened to user come control software according to the result of checking, thus be effectively protected software opening
Send out achievement.
The method of the generation machine code according to the present invention and registration code and the method for software registration and function restriction, Neng Gouyou
The protection software development achievement of effect.
Additionally, computer program be may be implemented as according to the said method of the exemplary embodiment of the present invention, thus working as
When running this program, realize said method.
Although show and describing some embodiments of the present invention, it will be understood by those skilled in the art that not taking off
In the case of the principle and spirit of the present invention being limited its scope by claim and its equivalent, can be to these embodiments
Modify.
Claims (30)
1. a kind of method generating machine code, comprises the steps:
Obtain the facility information of computer;
Each character in facility information is encrypted, to produce the first character string;
Determine the character group corresponding to each character in the first character string;
Each character in first character string is replaced with any one character in corresponding character group, to form machine code,
Wherein, each character in facility information is encrypted, is included with the step producing the first character string:
Each character in facility information is replaced with corresponding ascii code value, to produce ascii code value group;
Each ascii code value in ascii code value group and the first preset value are carried out predetermined mathematical computing;
The result carrying out obtaining after predetermined mathematical computing is arranged according to the order of the corresponding ascii code value in ascii code value group
Row are to produce the first character string.
2. method according to claim 1 is it is characterised in that described facility information includes:
The all or part of combination of at least one hardware sequence number of described computer.
3. method according to claim 1 is it is characterised in that by each the ascii code value and first in ascii code value group
The step that preset value carries out predetermined mathematical computing includes:
According to pre-defined rule, the ascii code value in ascii code value group is divided into n group, wherein, n is the natural number more than zero,
Each group is corresponding to a kind of predetermined mathematical computing;
Each ascii code value and the first preset value are carried out the predetermined mathematical computing corresponding to each ascii code value place group.
4. method according to claim 3 is it is characterised in that by each the ascii code value and first in ascii code value group
The step that preset value carries out predetermined mathematical computing also includes:
Determine whether the digit of result that each ascii code value and the first preset value carry out obtaining after predetermined mathematical computing reaches pre-
Positioning number, wherein, it is different that described predetermined figure is that all ascii code values in ascii code table are carried out from the first preset value respectively
Maximum number of digits in the digit of result obtaining after the corresponding predetermined mathematical computing of group;
Supplemented null value before being not reaching to the result of predetermined figure, so that this result reaches predetermined figure.
5. it is characterised in that n is 2, predetermined mathematical computing corresponding with first group is to add to method according to claim 4
The mathematical operation of one of method, subtraction and multiplication, predetermined mathematical computing corresponding with second group is in addition, subtraction and multiplication
Another kind of mathematical operation.
6. it is characterised in that n is 3, predetermined mathematical computing corresponding with first group is to take advantage of to method according to claim 4
Method, predetermined mathematical computing corresponding with second group is addition, and predetermined mathematical computing corresponding with the 3rd group is subtraction.
7. method according to claim 1 is it is characterised in that each character group includes at least one Chinese character, kinds of characters
There is not identical Chinese character between group.
8. a kind of method generating registration code, comprises the steps:
Receive machine code;
Determine the character group corresponding to each character in machine code;
Each character in machine code is replaced with the character corresponding to corresponding character group, to obtain the first character string;
First character string is decrypted, to obtain decryption information;
Each character in described decryption information is encrypted, to produce the second character string;
Determine the character group corresponding to each character in the second character string;
Each character in second character string is replaced with any one character in corresponding character group, to form registration code.
9. method according to claim 8 is it is characterised in that be decrypted to the first character string, to obtain decryption information
Step include:
First character string is divided into some;
Each part after first character string is divided and the first preset value carry out predetermined mathematical computing;
Each numerical value that predetermined mathematical computing is obtained replaces with corresponding ascii code character, to obtain decryption information.
10. method according to claim 9 it is characterised in that be divided into the step bag of some by the first character string
Include:
In units of predetermined figure, the character in the first character string is divided into some, wherein, described predetermined figure is
After the predetermined mathematical computing that all ascii code values in ascii code table carry out corresponding to different groups respectively from the first preset value
To result digit in maximum number of digits;
The null value in the left side from from left to right first character being not zero for each part is removed.
11. methods according to claim 9 it is characterised in that by first character string divide after each part and first
The step that preset value carries out predetermined mathematical computing includes:
According to pre-defined rule, the plurality of part is divided into n group, wherein, n is the natural number more than zero, each group corresponding to
A kind of predetermined mathematical computing;
Each part and the first preset value are carried out the predetermined mathematical computing corresponding to each part place group.
12. methods according to claim 8 it is characterised in that each character in decryption information is encrypted, with produce
The step of raw second character string includes:
Each character in decryption information is replaced with corresponding ascii code value, to produce ascii code value group;
Each ascii code value in ascii code value group and the second preset value are carried out predetermined mathematical computing;
The result carrying out obtaining after predetermined mathematical computing is arranged according to the order of the corresponding ascii code value in ascii code value group
Row are to produce the second character string.
13. methods according to claim 12 are it is characterised in that by each the ascii code value in ascii code value group and
The step that two preset values carry out predetermined mathematical computing includes:
According to pre-defined rule, the ascii code value in ascii code value group is divided into n group, wherein, n is the natural number more than zero,
Each group is corresponding to a kind of predetermined mathematical computing;
Each ascii code value and the second preset value are carried out the predetermined mathematical computing corresponding to each ascii code value place group.
14. methods according to claim 13 are it is characterised in that by each the ascii code value in ascii code value group and
The step that two preset values carry out predetermined mathematical computing also includes:
Determine whether the digit of result that each ascii code value and the second preset value carry out obtaining after predetermined mathematical computing reaches pre-
Positioning number, wherein, it is different that described predetermined figure is that all ascii code values in ascii code table are carried out from the second preset value respectively
Maximum number of digits in the digit of result obtaining after the corresponding predetermined mathematical computing of group;
Supplemented null value before being not reaching to the result of predetermined figure, so that this result reaches predetermined figure.
It is characterised in that n is 2, predetermined mathematical computing corresponding with first group is 15. methods according to claim 14
The mathematical operation of one of addition, subtraction and multiplication, predetermined mathematical computing corresponding with second group is in addition, subtraction and multiplication
Another kind of mathematical operation.
It is characterised in that n is 3, predetermined mathematical computing corresponding with first group is 16. methods according to claim 14
Multiplication, predetermined mathematical computing corresponding with second group is addition, and predetermined mathematical computing corresponding with the 3rd group is subtraction.
17. methods according to claim 8 are it is characterised in that each character group includes at least one Chinese character, kinds of characters
There is not identical Chinese character between group.
A kind of 18. methods of software registration, comprise the steps:
Obtain registration code;
Determine the character group corresponding to each character in registration code;
Each character in registration code is replaced with the character corresponding to corresponding character group, to obtain the second character string;
Second character string is decrypted, to obtain decryption information;
Obtain the facility information of computer;
Whether judge decryption information consistent with the facility information obtaining;
If decryption information is consistent with the facility information obtaining it is determined that software passes through registration.
19. methods according to claim 18 are it is characterised in that also include: after determining that software passes through registration, pre-
Put and under path, create registration file, registration code is written in registration file, and the creation time of registration file was revised as
Go the time, file attribute is set to hide.
If 20. methods according to claim 18 are it is characterised in that decryption information is differed with the facility information obtaining
Cause, then point out registration code mistake.
21. methods according to claim 18 it is characterised in that being decrypted to the second character string, with obtain solve secret letter
The step of breath includes:
Second character string is divided into some;
Each part after second character string is divided and the second preset value carry out predetermined mathematical computing;
Each numerical value that predetermined mathematical computing is obtained replaces with corresponding ascii code character, to obtain decryption information.
22. methods according to claim 21 it is characterised in that be divided into the step bag of some by the second character string
Include:
In units of predetermined figure, the character in the second character string is divided into some, wherein, described predetermined figure is
After the predetermined mathematical computing that all ascii code values in ascii code table carry out corresponding to different groups respectively from the second preset value
To result digit in maximum number of digits;
The null value in the left side from from left to right first character being not zero for each part is removed.
23. methods according to claim 21 it is characterised in that by second character string divide after each part and second
The step that preset value carries out predetermined mathematical computing includes:
According to pre-defined rule, the plurality of part is divided into n group, wherein, n is the natural number more than zero, each group corresponding to
A kind of predetermined mathematical computing;
Each part and the second preset value are carried out the predetermined mathematical computing corresponding to each part place group.
24. methods according to claim 18 are it is characterised in that each character group includes at least one Chinese character, different words
There is not identical Chinese character between symbol group.
A kind of 25. methods of restricted software function, comprise the steps:
Start the registration file searching under pre-set path during software;
Read the registration code in registration file;
Determine the character group corresponding to each character in registration code;
Each character in registration code is replaced with the character corresponding to corresponding character group, to obtain the second character string;
Second character string is decrypted, to obtain decryption information;
Obtain the facility information of computer;
Whether judge decryption information consistent with the facility information obtaining;
If decryption information is consistent with the facility information obtaining, Freeware repertoire.
If 26. methods according to claim 25 are it is characterised in that decryption information is differed with the facility information obtaining
Cause, then Freeware partial function.
27. methods according to claim 25 it is characterised in that being decrypted to the second character string, with obtain solve secret letter
The step of breath includes:
Second character string is divided into some;
Each part after second character string is divided and the second preset value carry out predetermined mathematical computing;
Each numerical value that predetermined mathematical computing is obtained replaces with corresponding ascii code character, to obtain decryption information.
28. methods according to claim 27 it is characterised in that be divided into the step bag of some by the second character string
Include:
In units of predetermined figure, the character in the second character string is divided into some, wherein, described predetermined figure is
After the predetermined mathematical computing that all ascii code values in ascii code table carry out corresponding to different groups respectively from the second preset value
To result digit in maximum number of digits;
The null value in the left side from from left to right first character being not zero for each part is removed.
29. methods according to claim 27 it is characterised in that by second character string divide after each part and second
The step that preset value carries out predetermined mathematical computing includes:
According to pre-defined rule, the plurality of part is divided into n group, wherein, n is the natural number more than zero, each group corresponding to
A kind of predetermined mathematical computing;
Each part and the second preset value are carried out the predetermined mathematical computing corresponding to each part place group.
30. methods according to claim 25 are it is characterised in that each character group includes at least one Chinese character, different words
There is not identical Chinese character between symbol group.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410322559.6A CN104123482B (en) | 2014-07-08 | 2014-07-08 | Method for generating machine code and registration code and method for software registration and function limiting |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410322559.6A CN104123482B (en) | 2014-07-08 | 2014-07-08 | Method for generating machine code and registration code and method for software registration and function limiting |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104123482A CN104123482A (en) | 2014-10-29 |
CN104123482B true CN104123482B (en) | 2017-01-18 |
Family
ID=51768891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410322559.6A Expired - Fee Related CN104123482B (en) | 2014-07-08 | 2014-07-08 | Method for generating machine code and registration code and method for software registration and function limiting |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104123482B (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104410501B (en) * | 2014-12-25 | 2019-02-26 | 广东威创视讯科技股份有限公司 | A kind of encryption method and device |
CN106294064A (en) * | 2016-07-28 | 2017-01-04 | 浪潮电子信息产业股份有限公司 | A kind of device and method that baseboard management controller attribute is set |
CN106326761B (en) * | 2016-09-05 | 2019-04-30 | 天脉聚源(北京)传媒科技有限公司 | A kind of encryption method and device of SN code |
WO2021128244A1 (en) * | 2019-12-27 | 2021-07-01 | 威创集团股份有限公司 | Registration authorization method and system |
CN114912080B (en) * | 2022-04-21 | 2024-07-16 | 健帆生物科技集团股份有限公司 | Registration code generation method, control method, terminal device and storage medium |
CN116243939B (en) * | 2023-05-11 | 2023-07-21 | 深圳市驰普科达科技有限公司 | Method and device for installing software, electronic equipment and storage medium |
CN117708864B (en) * | 2024-02-06 | 2024-05-28 | 深圳和润达科技有限公司 | Intelligent management method and device for medium bit machine applied to cell formation component equipment |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314572A (en) * | 2011-10-14 | 2012-01-11 | 迈普通信技术股份有限公司 | Registration information file generation method and device, and use authorization method of application software |
CN103093129A (en) * | 2013-01-09 | 2013-05-08 | 上海大唐移动通信设备有限公司 | Registration code generation method and device used for software licensing |
CN103914635A (en) * | 2012-12-29 | 2014-07-09 | 中国航空工业集团公司第六三一研究所 | Eclipse software product authorization permission management method |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080244754A1 (en) * | 2007-04-02 | 2008-10-02 | Edward Curren | System and Method for Software License Management for Concurrent License Management and Issuance |
-
2014
- 2014-07-08 CN CN201410322559.6A patent/CN104123482B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314572A (en) * | 2011-10-14 | 2012-01-11 | 迈普通信技术股份有限公司 | Registration information file generation method and device, and use authorization method of application software |
CN103914635A (en) * | 2012-12-29 | 2014-07-09 | 中国航空工业集团公司第六三一研究所 | Eclipse software product authorization permission management method |
CN103093129A (en) * | 2013-01-09 | 2013-05-08 | 上海大唐移动通信设备有限公司 | Registration code generation method and device used for software licensing |
Non-Patent Citations (3)
Title |
---|
"会计信息化***注册码设计创意";韩锦生;《电脑编程技巧与维护》;20111018(第20期);67-68、70 * |
"利用算术公式的用户名与注册码的生成算法";戚利;《电脑编程技巧与维护》;20100703(第13期);参见第3部分 * |
"基于计算机硬件序列号进行软件加密的技术";王春来;《辽宁科技学院学报》;20080615;第10卷(第2期);参见第22页第2栏 * |
Also Published As
Publication number | Publication date |
---|---|
CN104123482A (en) | 2014-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104123482B (en) | Method for generating machine code and registration code and method for software registration and function limiting | |
Lewis et al. | An earlier origin for stone tool making: implications for cognitive evolution and the transition to Homo | |
Lai et al. | A novel pixel-split image encryption scheme based on 2D Salomon map | |
Mandel et al. | A fully resolved backbone phylogeny reveals numerous dispersals and explosive diversifications throughout the history of Asteraceae | |
Skinner et al. | Lygosomine phylogeny and the origins of Australian scincid lizards | |
Glennon et al. | Evidence for shared broad‐scale climatic niches of diploid and polyploid plants | |
Manchester et al. | Assessing the fossil record of asterids in the context of our current phylogenetic framework | |
Moonlight et al. | Continental‐scale diversification patterns in a megadiverse genus: the biogeography of Neotropical Begonia | |
Chen et al. | Personalized information encryption using ECG signals with chaotic functions | |
Zander | Macroevolutionary systematics of Streptotrichaceae of the Bryophyta and application to ecosystem thermodynamic stability | |
CN110175475B (en) | Smart card data processing method and device and computer readable storage medium | |
Chen et al. | Phylogenetic studies of sinipercid fish (Perciformes: Sinipercidae) based on multiple genes, with first application of an immune-related gene, the virus-induced protein (viperin) gene | |
Mariguela et al. | Historical biogeography and cryptic diversity in the C allichthyinae (S iluriformes, C allichthyidae) | |
Escudero | Phylogenetic congruence of parasitic smut fungi (Anthracoidea, Anthracoideaceae) and their host plants (Carex, Cyperaceae): Cospeciation or host‐shift speciation? | |
CN106030604A (en) | Method of protecting secret data when used in a cryptographic algorithm | |
Gao et al. | Diversification and vicariance of desert plants: Evidence inferred from chloroplast DNA sequence variation of Lagochilus ilicifolius (Lamiaceae) | |
Pazonyi et al. | Microtus (Microtus) nivaloides from the Somssich Hill 2 site (southern Hungary): An Early Pleistocene forerunner of modern ‘true’Microtus voles revealed by morphometric analyses | |
CN105913369B (en) | Score field image encryption method based on three-dimensional cat face transformation and hyperchaotic system | |
Ou et al. | A steganographic method based on tetris games | |
Palero et al. | Phylogeny and evolution of shallow‐water squat lobsters (Decapoda, Galatheoidea) from the Indo‐Pacific | |
CN109977371A (en) | A kind of generation method of character type garbage classification code | |
CN104463767B (en) | Visible encryption and decryption method with image disguising function and tampering identification function | |
Bocak et al. | Prototrichalus is transferred to the Tenebrionoidea: A comment on Molino-Olmedo et al., 2020,‘The description of Prototrichalus gen. nov. and three new species from Burmese amber supports a mid-Cretaceous origin of the Metriorrhynchini (Coleoptera, Lycidae)’ | |
Smith et al. | Origins of social parasitism: the importance of divergence ages in phylogenetic studies | |
Asok et al. | A secure cryptographic scheme for audio signals |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170118 Termination date: 20170708 |
|
CF01 | Termination of patent right due to non-payment of annual fee |