Composition
Anycodewithacheckcodeiscomposedoftwoparts:thebodycodeandthecheckcode(suchastheorganizationcode).Thebodycodeisthenumberthatrepresentsthecodeobject.Theverificationcodeisanumberattachedtothebodycodetoverifytheaccuracyofthebodycodeduringtheinputprocess.Eachbodycodecanonlyhaveonecheckcode,andthecheckcodeisobtainedthroughaprescribedmathematicalrelationship.
Principleofverification
Thesystemispresetwithaverificationprogramcompiledaccordingtotheverificationformuladerivedfromtheverificationmethod.Whenthecodewiththeverificationcodeisinputintothesystem,Thesystemusestheverificationprogramtocalculatetheinputbodycodetoobtaintheverificationresult,andthencomparestheverificationresultwiththeverificationcodeoftheinputcodetocheckwhethertheinputiscorrectornot.Ifthetwoareconsistent,itmeansthatthecodeisenteredcorrectlyandthesystemallowsentry;iftheyareinconsistent,itmeansthatthecodeisenteredincorrectly,andthesystemrefusestoenterandrequiresthecodetobere-entered.
Kontrolní součtový goritmus
Různé kontrolní součtové goritmy se často liší. Běžné algoritmy kontrolních kódů zahrnují: kódovou vzdálenost, kontrolu parity, Hammingovu kontrolu, cyklickou kontrolu nadbytečnosti atd.
Příklad algoritmu
Kontrolní kód IDkarty
Podle národního standardu GB11643-1999 Čínské lidové republiky je metoda výpočtu pro ověřeníkódu identifikačního čísla občana-číslo občana-čísla 3.0.0.09.
Za předpokladu, že je 17místné číslo
17místné číslo | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
Faktor vážení | 7 | 9 | 10 | 5 | 8 | 4 | 2 | 1 | 6 | > 3 | > 7 | 9 | 10 | 5 | 8 | 4 | 2 |
368
Vypočítejte součet součinu 17místného čísla a odpovídajícího váhového faktoruS:1×7+2×9+3×10+4×5+5×8+6×4+7×2+8×1+9×6+0×3+1×7 +2×9+3×10+4×5+5×8+6×4+7×2=368;VypočítejtezbytekTofS÷11:368mod11=5;VypočítejtezbytekRof(12-T)÷11,ifR=10,kontrolní kódisprodej" X";ifR≠10,kontrolníkódječíslo"R":(12-5)mod11=7. 17místný kontrolní kód je7, který je agregován do 123456789012345677.
Vzorec váhového faktoru jeWi=2^(n-1)(mod11), kde je číselná posloupnost začínající od 1zprava doleva.
Sekvence
ai12345678901234567?
Wi79105842163791058421
Kontrolní kód organizace
Národní kód organizace se skládá z osmimístného (nebo velkých latinských písmen) kódu těla a jedné číslice (velká písmena latinky) kontrolního kódu. Kontrolní kód se vypočítá podle následujícího vzorce:
8 |
C9=11-MOD(∑Ci×Wi,11) |
i=1 |
MOD-představuje zbývající funkci;i-představuje číslo pozice znaku kódu zleva doprava;
Ci představující hodnotu znaku kódu na i-té pozici, uvedené v následující "sadě znaků" znaků;
C9-označující kontrolní kód;
Po označení váhového faktoru na této pozici jsou oblasti hodnot následující:
váhový faktor
p>i | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
Wi | 3 | 7 | 9 | 10 | 5 | 8 | 4 | 2 |
Když jehodnotafunkceMODKdyž je1(ieC9=10),měl by být kontrolní kód reprezentován velkým písmenem „X“, když je hodnota funkce MOD0 (tj. C9=11), je kontrolní kód stále reprezentován „0“; když je hodnota 9, když je zadán kód 9.
Viz
Kontrolní kódový systém
Kontrola redundance