Преглед садржаја:
Дефиниција - Шта значи Лухнова формула?
Лухнова формула је једноставна формула за контролну суму која се користи у валидацији различитих идентификационих бројева као што су бројеви кредитних картица, бројеви социјалног осигурања, ИМЕИ бројеви и многи други. Алгоритам потврђује број у односу на укључену проверу у самом броју, обично последњу цифру. Лухнова формула је сада у јавном домену и нашироко се користи у разним индустријама и прецизира у ИСО / ИЕЦ 7812-1.
Лухнова формула је позната и као Лухнов алгоритам, алгоритам модула 10 или алгоритам мод 10.
Техопедија објашњава Лухнову формулу
Лухнову формулу осмислио је Ханс Петер Лухн, научник ИБМ, који је 1954. Поднио патент за формулу, који је одобрен 1960. Формула није дизајнирана да буде криптографски сигурна хасх функција, већ као једноставан начин заштита од случајних грешака у креирању јединствених идентификационих бројева. Многе владине агенције и приватне институције користиле су формулу за разликовање важећих бројева од погрешних, погрешних или једноставно лажних бројева.
Формула се користи за верификацију низа бројева проверавањем да ли је укључена контролна цифра тачна. Ова чековна цифра се обично веже уз парцијални број да би се попунила.
Следећи поступак је генерисање контролне цифре:
- Полазећи од крајње десне цифре, удвостручите вредност сваке друге цифре.
- Ако је резултирајући производ из првог корака изнад 9, додајте две цифре (нпр., 5 × 3 = 15, 1 + 5 = 6). Ако је резултат 9 или мањи, задржите број.
- Узмите збир свих цифара.
- Помножите суму са 9 и узмите "модуло 10" од износа; резултат је контролна цифра.
Пример: Бројчана серија 927638965
9 |
2 |
7 |
6 |
3 |
8 |
9 |
6 |
5 је контролна цифра |
9 |
4 |
7 |
12 |
3 |
16 |
9 |
12 |
|
9 |
4 |
7 |
3 |
3 |
7 |
9 |
3 |
сума = 45; 45 × 9 = 405 (мод 10) = 5 |
Да бисте проверили да је број валидан, једноставно следите алгоритам искључујући контролну цифру, а ако се добије исти резултат као контролна цифра, тада је број валидан по Луновој формули. Међутим, овај алгоритам није баш поуздан и може само да детектује углавном једноцифрене грешке и транспозиције суседних бројева, осим транспозиције двоцифреног низа од 09 до 90. Сложенији алгоритми попут алгоритма Верхоеффа и Дамм алгоритма су у стању да откријете више грешака у транскрипцији.
