GB/T 177102008 PDF in English
GB/T 177102008 (GB/T177102008, GBT 177102008, GBT177102008)
Standard ID  Contents [version]  USD  STEP2  [PDF] delivered in  Name of Chinese Standard  Status 
GB/T 177102008  English  150 
Add to Cart

09 seconds. Autodelivery.

Information technology  Security technique  Check character systems
 Valid 
Standards related to: GB/T 177102008
PDF Preview
GB/T 177102008: PDF in English (GBT 177102008) GB/T 177102008
Information technology  Security technique  Check character systems
ICS 35.040
L71
National Standards of People's Republic of China
GB/T 177102008/ISO /IEC 7064.2003
Replace GB/T 177101999
Information technology security technology
Check character system
(ISO /IEC 7064.2003, IDT)
Released on July 17,.2008
20081201 implementation
General Administration of Quality Supervision, Inspection and Quarantine of the People's Republic of China
China National Standardization Administration issued
Content
Foreword I
Introduction II
1 range 1
2 Terms and Definitions 1
3 symbols and their notes 2
4 system type 2
5 Compliance and its title 3
6 pure system description 4
7 pure system calculation method with one check character 5
8 Calculation method for pure system with two check characters 7
9 Hybrid System Description 9
10 Calculation method of mixing coefficient 9
Appendix A (informative) Guidelines for selecting a check character system for various applications 11
Appendix B (informative) NonLatin alphabet check character system 13
Reference 14
GB/T 177102008/ISO /IEC 7064.2003
Foreword
This standard is equivalent to ISO /IEC 7064..2003 "Information Technology Security Technology Check Character System", only editorial changes.
This standard replaces GB/T 177101999. The difference between this standard and GB/T 177101999 is as follows.
The standard layout structure has been adjusted;
 The definition of the terms of 2.1, 2.2, 2.3, 2.6 has been modified.
Appendix A and Appendix B of this standard are informative annexes.
This standard was proposed by the Ministry of Industry and Information Technology of the People's Republic of China.
This standard is under the jurisdiction of the National Information Technology Standardization Technical Committee.
This standard was drafted. China Electronics Technology Standardization Institute, China National Institute of Standardization.
The main drafters of this standard. Chen Xing, Yang Jianjun, Huang Jiaying, Shi Liwu, Zhang Ming.
The previous versions of the standards replaced by this standard are.
GB/T 177101999.
GB/T 177102008/ISO /IEC 7064.2003
introduction
The need to verify the standardization of character systems is as follows.
a) Many systems have similar characteristics due to the large number of systems in use, and many of the changes in features are not effective
effect;
b) Existing systems have undergone almost no rigorous mathematical verification, and some have serious flaws;
c) The diversity of the system undermines the economic benefits of the check character system and often hampers the verification of exchanged data.
Therefore, a small compatibility system should be selected to effectively meet the needs of various applications. The system should be validated in a variety of applications
Within the limits of the limit, it effectively prevents typical copying and typing errors.
ISO 2180, ISO 2894 (ISO 2894 has been revoked) and ISO 6166 also specify check character systems, but they only apply to special
The field, so the existing system can not obtain the error detection rate specified in this standard anyway.
Appendix A outlines the criteria to be considered when selecting a check character system as specified in this standard for a particular application.
Appendix B illustrates the application of this standard in some countries where the number of alphabets exceeds 26 letters.
GB/T 177102008/ISO /IEC 7064.2003
Information technology security technology
Check character system
1 range
1.1 This standard specifies a set of check character systems that prevent string errors that occur when copying or typing data. Length of string
Can be fixed or variable, including characters in the following character sets.
a) number (10 digits. 0 to 9);
b) letters (26 letters. A to Z);
c) Alphanumeric (letters and numbers).
Spaces and special characters embedded in the string are ignored.
1.2 This standard specifies the conformance requirements for the generation of check characters and check string products. These products use the system given in this standard.
1.3 These check character systems can check for the following errors.
a) all single character substitution errors (ie, a single character is replaced by another character, such as 1234 being misrecorded as 4234);
b) all or almost all single character swap positions are incorrect (ie two adjacent words or two single words separated by one character)
The position of the symbol is interchanged, such as 12345 is misrecorded as 12354 or 12543);
c) all or almost all cyclic shift errors (ie, the entire string is cyclically shifted left or right);
d) most double replacement errors (ie, in the same string, two separate single characters are replaced incorrectly, such as 1234567 is misreported as
7234587);
e) Most other errors.
1.4 This standard does not include systems designed for the following purposes.
a) allows both error detection and automatic correction;
b) detecting intentional misuse;
c) Verify only the strings exchanged between machines.
1.5 This standard is used for information exchange between organizations and is highly recommended for internal information systems.
2 Terms and definitions
The following terms and definitions apply to this standard.
2.1
The additional characters used for the correctness of the string can be verified by the mathematical relationship of the string.
2.2
A set of rules that produce a check character and a string that contains check characters.
2.3
A check character that does not belong to the character set of the protected string.
2.4
An integer that is used to divide the calculated divisor to get an integer remainder.
GB/T 177102008/ISO /IEC 7064.2003
2.5
The property of a set of integers, the difference between each other is a multiple of the modulus. The congruence is indicated by the symbol "≡". For example, 39≡6 (mod11), indicating 39
And 6 is congruent with respect to modulus 11, ie 396 = 33, 33 is a multiple of 11.
2.6
The bottom of the geometric progression.
3 symbols and their comments
The following symbols and their comments are used in this standard.
M modulus.
The number of characters in the string, including the check character.
Pj, Sj, 几个 Several integers used to store intermediate results when verifying character calculations.
权 The power of the polynomial method.
X, 补充 Supplement check character.
.= indicates the sign "set equal to" used in the process specification of the check character, the meter
The arithmetic symbol indicates that the integer value to the left of the symbol should be equal to the value of the expression to the right of the symbol.
≡ Symbol indicating “congruence” (see 2.5).
‖M denotes the sign of a unique integer between 1 and M, which represents the remainder after dividing by M;
The remainder is zero and the value M should be replaced.
—M+1 represents the sign of a unique integer between 0 and M, which represents the remainder after dividing by (M+1);
After this calculation, this remainder is by no means zero.
(modM) A symbol representing a unique integer between 0 and M1, which represents the remainder after division by M.
4 system type
This standard specifies two types of systems.
a) pure systems (see Chapters 6, 7 and 8);
b) Hybrid systems (see Chapter 9, Chapter 10).
4.1 Pure system
Pure systems are listed in Table 1 and are specified in Chapters 6, 7 and 8 for use in all calculation phases of each system.
Single modulus.
Table 1 Pure system
Check character system title a Apply check character number and type b
ISO /IEC 7064, MOD112 number string 1 digit or supplementary check character X
ISO /IEC 7064, MOD372 alphanumeric string 1 digit or letter or supplementary check character
ISO /IEC 7064, MOD9710 number string 2 digits
GB/T 177102008/ISO /IEC 7064.2003
Table 1 (continued)
Check character system title a Apply check character number and type b
ISO /IEC 7064, MOD66126 letter string 2 letters
ISO /IEC 7064, MOD127136 alphanumeric string 2 numbers or letters
a In the name, the first digit after "MOD" is the modulus, and the second digit is the cardinality.
b The first two systems can generate a supplementary check character, except for the character set of the checked string. (ie, ISO /IEC 7064, MOD112 check word
The characters are 0 to 9 plus X, ISO /IEC 7064, and the check characters of MOD 372 are 0 to 9 and A to Z plus ). If the supplementary check character is not available, then
If a single check character is required, it is possible to avoid issuing those strings that generate supplementary check characters; if it cannot tolerate supplementary check characters, it cannot be avoided.
To generate a string of check characters, a hybrid system should be used.
4.2 Hybrid system
Hybrid systems are listed in Table 2 and Chapters 9 and 10. The hybrid system uses two moduli in the calculation, one of which is a modulus, etc.
The number of characters in the protected character set, the other modulus is one greater than it, and the character set of the protected string always provides the check character.
Table 2 Hybrid system
Check character system title a Apply check character number and type
ISO /IEC 7064, MOD11, 10 number string 1 number
ISO /IEC 7064, MOD27, 26 letter string 1 letter
ISO /IEC 7064, MOD37, 36 alphanumeric string 1 number or letter
a In the system name, the two numbers immediately following the MOD are two modulo.
5 Compliance and its title
5.1 string
The strings protected by one of the systems specified for this application in this standard comply with this standard.
5.2 Products that generate check characters
5.2.1 The verification character product (implemented by software or hardware) generated according to this standard shall be capable of generating the standard in this standard if there is no other limitation.
Check character for all systems.
5.2.2 Products that do not generate all system check characters in this standard shall indicate those systems covered by these products. For example,
ISO /IEC 7064, MOD 112 generates check characters".
5.3 Verifying the product
5.3.1 In accordance with this standard (without further restrictions), products that verify the verification characters generated by this standard (implemented by software or hardware) shall be
All systems of this standard can be used.
5.3.2 Verification The product descriptions of strings using only some of the systems in this standard shall state the systems covered by the product. For example "check make
Use ISO /IEC 7064, string of MOD112".
5.4 System Name
5.4.1 The full name of each system given in Tables 1 and 2 should normally be used, such as "ISO /IEC 7064, MOD 112".
Note. The abbreviation "MOD11" will be confused with a system similar to Modulo 11.
5.4.2 When simplification is required, for example, data element transmission often needs to indicate the system used to protect the data element.
The single number name.
GB/T 177102008/ISO /IEC 7064.2003
Table 3 Single number name
Check character system name
ISO /IEC 7064, MOD112 1
ISO /IEC 7064, MOD372 2
ISO /IEC 7064, MOD9710 3
ISO /IEC 7064, MOD66126 4
ISO /IEC 7064, MOD127136 5
ISO /IEC 7064, MOD11, 10 6
ISO /IEC 7064, MOD27, 26 7
ISO /IEC 7064, MOD37, 36 8
No check character or nonstandard system 0
6 Description of pure system
6.1 Formula
When the following formula is true, the string satisfies the check.
In the formula.
Shapethe number of characters including the string of the check character;
Mmodulus.
Table 4 Values corresponding to characters
The value of an alphanumeric string in the value system of a string of digits in a numeric string value system in a character system
Xa
GB/T 177102008/ISO /IEC 7064.2003
Table 4 (continued)
The value of an alphanumeric string in the value system of a string of digits in a numeric string value system in a character system
b
a is ISO /IEC 7064MOD112.
b is ISO /IEC 7064MOD372.
6.2 Calculation
Any calculations are made according to the formula.
6.3 Checking the position of characters
The check character should be set at the far right of the string.
7 pure system calculation method with one check character
There are two basic calculation methods for pure systems. pure system recursive method and pure system polynomial method. The results of the two methods are consistent and require phase.
The same multiplier and increase. Polynomial systems require more storage space to store the system's weight.
7.1 pure system recursion
7.1.1 Calculation
In the recursive method, the characters of the string are processed one by one from left to right. The calculation rule for generating the check character 犪1 will be described below. With 犼=1,,
(like 1) to represent the index. The number is the number of characters in the string including the check character. When 犼=1, P犼=0 is defined. Calculation.
S犼.=P犼+犪犼+1
In the formula.
GB/T 177102008/ISO /IEC 7064.2003
When selecting the next 犪1, the following formula should be true.
P shape + 犪 1 ≡ 1 (modM)
Or 犪1.= (1Plike) (modM)
The algorithm for verifying the check character 犪1 can be described as follows. when the index 犼=1, the shape, where the shape is the number of characters in the string, including the school
Characters are checked, and when 犼=1, P犼=0 is defined. Calculation.
S犼.=P犼+犪犼+1
If the following formula is true, the string is assumed to be correct,
Sshaped ≡1 (modM)
Alternatively, the process of generating the check character 犪1 can be repeated. If the generated check character is equivalent to the existing character 犪1
Then assume that the string is correct.
7.1.2 Examples
Assuming the use of the check character system ISO /IEC 7064, MOD 112 provides a check character for the string "0794". At this time, M=11,
Table 5 Pure recursive example
Step product + next character value = middle and middle and x base = product as the next calculated value
(See Note 1 of 7.1.2) (see Note 1 of 7.1.2)
1 0 + 0 = 0 0 × 2 = 0
2 0 + 7 = 7 7 × 2 = 14
3 14 + 9 = 23 23 × 2 = 46
4 46 + 4 = 50 50 × 2 = 100
The 5 100+ check character value is congruent to 1 (mod11).
In this example, the final result of the Plike is 100, plus the value of the check character must be the same as 1 (mod11), when 100 itself is
When 1 (mod11) congruence, the check character value must be zero. When the check character is added to the far right of the string, the entire protected string is "07940".
In order to verify whether the string is correct, as shown above, calculate the above steps 犼=1~5, including the check character value in the calculation.
0. If the result is congruent to 1 (modulo 11), the accepted string is valid.
Note 1. If the result of any step in the calculation process is P犼+1 or the middle and S犼 are greater than the modulus M, the multiple of the modulus can be subtracted and the remainder can be used to continue the calculation.
In Table 5.
P3=14 can be processed as 1411=3
S3=23 can be processed as 2322=1
P4=46 can be processed as 4644=2
Note 2. The valid check character value in ISO /IEC 7064, MOD112 system is 0~10. If the value of the check character is 10, the additional check word is added.
The symbol "X" indicates. If the original string is a short string such as "079", the calculated value is 46 at the end of the third step calculation.
46≡2 (modulo 11);
Since 2+10≡1 (modulo 11), the complete string is “079X”.
When the string is verified, the third step is calculated to obtain 46+10=56, which is congruent with 1 (modulo 11) and satisfies the check.
7.2 pure system polynomial method
7.2.1 Calculation
Multiply the character values by their weights and add the results. If the sum of these results is the same as 1 (modulo M), then the check character is included.
GB/T 177102008/ISO /IEC 7064.2003
The string inside is valid.
Table 6 Right of pure system
Location index 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
ISO /IEC 7064, MOD112 5 8 4 2 1 6 3 7 9 10 5 8 4 2 1
ISO /IEC 7064, MOD372 30 15 26 13 25 31 34 17 27 32 16 8 4 2 1
ISO /IEC 7064, MOD9710 53 15 50 5 49 34 81 76 27 90 9 30 3 10 1
ISO /IEC 7064, MOD66126 129 488 273 341 547.199 389 498 70 562 255 390 15 26 1
ISO /IEC 7064, MOD127136 769 904 590 87 532 156 428 718 373 893 625 900 25 36 1
7.2.2 Examples
The calculation process for generating check characters by the polynomial method is as follows, and the string "0794" in 7.1.2 is still taken as an example.
Product. 0 56 36 8
The sum of the products. 0 + 56 + 36 + 8 =100
The sum 100 plus check character must be equal to 1 (modulo 11 congruence). Since 100 itself is congruent with 1 (modulo 11), the check character must be
Zero, so the whole string is "07940". The check character is set at the right end of the string.
To check the string in this way, the weight associated with the position of the character is multiplied by the character value (including the check character), and the results are added, summed
Divided by 11, if the remainder is 1, it passes the verification.
Verify that the entire string is calculated as follows.
Product. 0 56 36 8 0
The sum of the products. 0 + 56 + 36 + 8 + 0=100
≡1 (modulo 11)
Meet the verification requirements.
Off, here is 2.
8 pure system calculation method with two check characters
8.1 Calculation
These systems are exactly the same as the system calculation method with one check character, just add another step, except for the system with the base number of 10.
Two character values as check characters (for check character system ISO /IEC 7064, MOD9710, see 8.4), with 犞 for the last one
8.2 Recursive application examples
The following is an example of using the recursive method to calculate two check characters of the string "ISO 79" using the ISO /IEC 7064, MOD127136 system.
GB/T 177102008/ISO /IEC 7064.2003
The word character values are given in Table 4, and steps 1 through 6 are given in Table 7. It has been stated in 1.1 that the spaces embedded in the string are ignored.
Table 7 Example of pure recursive method with two check characters
Step 犼
Product + next character value = middle and middle and × base = calculation result
As the next calculated value
Product of (mod1271)
P犼+1 (modM)
1 0 + 18 = 18 18 × 36 = 648 648
2 648 + 28 = 676 676 × 36 = 24336 187
3 187 + 24 = 211 211 × 36 = 7596 1241
4 1241 + 7 = 1248 1248 × 36 = 44928 443
5 443 + 9 = 452 452 × 36 = 16272 1020
6 1020 + 0a = 1020 1020 × 36 = 36720 1132
a This position occupied by the first check character is still empty at this step, so its value is zero.
The last step (step 7) is to calculate the check character value. subtract (M+1) the last P犼+1 (modM), ie.
1271+1=1272
Then 12721132=140
To get a single check character value, divide 犞=140 by the base 36 to get a quotient of 3 and a whole number of 32.
3 and 32 correspond to the character 3 and the character W, respectively, and thus the complete string with the check character is. "ISO 793W".
When the string needs to be verified, steps 1 to 5 are as shown above, and step 6 and step 7 are as shown in Table 8.
Table 8 Example verification of a pure recursive system with two check characters
1020+3=1023
1240+32=1272
1023×36=36828
(see note)
1240 (mod1271)
1272≡1 (mod1271), which satisfies the check.
Note. The last character is just added, so the total is no longer multiplied by the base.
8.3 Polynomial application examples
Use the polynomial method to calculate the two check characters of the string "ISO 79" in 7.2, the weights of which use the values in Table 6, and the character values refer to Table 4.
As shown in Table 9. Then calculate according to step 7 in 8.2 to get "ISO 793W".
Table 9 Examples of polynomial methods with two check characters
Product. 6714 25004 15000 6300 225
The sum of the products. 6714 + 25004 + 15000 + 6300 + 225 =53243
=1132 (mod1271)
8.4 Simplified procedures for ISO /IEC 7064, MOD 9710
The procedures described in 8.2 and 8.3 can be followed for this system.
However, since it is usually in decimal notation, the number has been weighted with a base of ten. The simplification process can be used as follows.
Add two zeros after the string, divide by 97, and subtract 98 from the remainder. The two numbers in the result are the check characters.
For example, for the string "794", the calculation process is as follows.
GB/T 177102008/ISO /IEC 7064.2003
The first step. add two 0.79400 to the check character position;
The second step. divide by 97, get 818, the whole number is 54;
The third step. calculate the check character value, (97 + 1)  54 = 44, add 44 to the back of the original string, get 79444.
For verification, the string is divided by 97, and if the remainder is 1, the requirement is met.
9 Hybrid System Description
9.1 formula
In a hybrid system, the number of characters in the character set in the character set is even. a string consisting of checksums generated by a standard blending formula
Must meet the verification of the following formula.
(Λ(((M+犪)‖M·2)狘(M+1)+犪(状1))M·2)狘(M+1)+Λ+犪1)‖M =1
In the formula.
Shapethe number of characters of the string including the check character;
M and (M+1)two moduli, the value of M is equal to the number of characters in the character set;
‖M divided by the integer number after M, if it is 0, the M value should be replaced;
M+1The remainder after dividing by (M+1), the remainder will never be 0 after the above processing.
9.2 Checking the position of characters
The check character is set at the far right of the string.
10 Calculation method of mixing coefficient
Here is only the basic method for the hybrid system to generate check characters and verify strings containing check characters, namely the hybrid system recursion method.
It is particularly noteworthy that calculations similar to the pure system polynomial method do not yield the same results in a hybrid system, so
Can be used.
10.1 Hybrid system recursion
10.1.1 Calculation
In the recursive method, characters are checked from left to right.
The description of the rule for generating the check character 犪1 is. use 犼=1 (like1), the number of characters in the string including the check character
Head. When 犼=1, define P犼=M, the formula is as follows.
S犼.=P犼狘M+1+犪犼+1
P犼1.=S犼‖M·2
In the formula.
‖M divided by the integer number after M, if it is 0, the M value should be replaced;
M+1 divided by the whole remainder after (M+1), the remainder will not be 0 after the above processing;
犪犼 +1character value.
So the next one is 1.
Plike + 犪1 ≡1 (modM) or 犪1.(1Plike) (modM)
The algorithm for verifying the check character 犪1 is described as. using 犼=1,, (like1), the number of characters in the string including the check character
Head. When 犼=1, P犼=0 is defined. The formula is as follows.
S犼.=P犼狘M+1+犪犼+1
P犼+1.=S犼‖M·2
If the sigmoid ≡1 (modM) then the string is correct.
That is, the process of generating the check character 犪1 can be repeated. If the generated check character matches the existing character 犪1, the string
GB/T 177102008/ISO /IEC 7064.2003
correct.
10.1.2 Examples
Assume that the system ISO /IEC 7064, MOD11, 10 is used to set the check character for the string 0794, where M = 10, M + 1 = 11, shape = 5
(4bit character plus one check character).
The calculation results are shown in Table 10.
Therefore, the value of the check character is 5, the complete string is 07945, and the check character is appended to the right end of the original string.
The calculation of the check string is as shown in the first step to the fifth step of Table 10, and the calculation of the check character value 5 is also included. The final result must be
1 (mod10) congruence.
Table 10 Example of a recursive method for a hybrid system
Step 犼
Product + next character value = middle and adjustment intermediate and × 2 = result
After adjustment, next time
Product of calculated values
1 10 + 0 = 10 10 × 2 = 20 9
2 9 + 7 = 16 6 × 2 = 12 1
3 1 + 9 = 10 10 × 2 = 20 9
4 9 + 4 = 13 3 × 2 = 6 6
5 6 + check character value should be congruent with 1 (mod10)
GB/T 177102008/ISO /IEC 7064.2003
Appendix A
(informative appendix)
Guidelines for selecting a check character system for various applications
The selection criteria for the system are shown in Table 11, which includes.
a) the character set of the protected string (see column 2);
b) The character set of the check character (column 3). Except for ISO 7964, MOD112, ISO 7064, MOD372, all of them
The check character set of his system is the same as the character set of the protected string. And these two systems need a supplement
Check character, or a string of check characters that are not suitable for use with the generated supplemental check character;
c) Check the number of characters (column 4). In addition to the acceptability of the two check characters (according to fees and other constraints) must be
The benefits that are coordinated by the strong protection provided by the required check characters are tradeoffs;
d) The percentage of errors that have not been detected (column 5), which is the percentage of various types of errors that may not be detected. These errors have
The following types.
1. Single replacement error  a single character is replaced by another single character;
Mismatch between characters;
3. Double replacement errorin the same string, the replacement of two separated single characters is wrong;
Displacement error);
5. Other errorsall errors not mentioned above;
6. Residual error (column 6).
Residual errors give a typical range of various error types that are not detected per 100,000 errors.
Table A. The lower number in 1 refers to the typical best case of a favorable mixed error type, and the higher number refers to the unfavorable mixed error type.
The typical worst case scenario (for example, the average occurrence rate of the above error types is not always detectable). These numbers are only when strict statistics are not available
Used as a guide when used. Practice should consider possible deviations. The value is given based on the range of error occurrence rates below.
Single replacement 60% to 85%
Double replacement 5% ~ 15%
Displacement 0% to 5%
Other 1% to 10%
The percentage of errors that have not been checked out reflects the use of the check character system in isolation. If you combine these systems with other checks
To use it, the effect will be better. Other checks include consistency check, character type and string length check, etc., for example, a string length check
All deletions or insertion errors of the characters will be checked.
Table A. 1 system selection criteria
Check character system
ISO 7064
MOD
Protected string
Charact......
...... Source: Above contents are excerpted from the PDF  translated/reviewed by: www.chinesestandard.net / Wayne Zheng et al.
