Уважаемые пользователи форума, убедительно просим вас переходить в телеграмм продавца, исключительно по предоставленной ссылке. Проверяйте продавца, отправив сообщение на электронную почту, чтобы убедиться в том, что вы общаетесь действительно с ним.

Генерация MRZ кода

Тема в разделе "Реальный кардинг / Дропы", создана пользователем JOINT, 8 июл 2016.

  1. JOINT

    JOINT Member

    Сообщения:
    104
    Симпатии:
    0
    Всем привет!

    Сегодня будем учиться генерировать MRZ строку в паспорте.
    Вся генерация будет проводиться на сайте

    Для примера возьмём страну AU(Австралию).

    [​IMG]

    Начало генерации проводим с анализа MRZ строки в паспорте всё тут же
    Для это переписываем наши 2 строки строго заглавными буквами и вставляем в соответствующие поля.

    И жмём кнопку Submit

    [​IMG]

    Если при переписки MRZ кода вы не ошиблись, то на выходе получим расшифровку.

    [​IMG]


    Что мы видим Тип документа, подтип-документа, ФИО, Доб, Дата действия, Номер паспорта, Персональный номер, Национальность, и 5 степеней проверки.
    Анализируем наши данные ФИО,ДОБ,Дата действия нам известны так сказать в народе :)
    Но откуда берется номер паспорта и персональный номер мы не знаем, зачастую номер паспорта просто рандомные числа.
    Но персональный номер на моей практике имеет свой алгоритм генерации который зависит от пола,возраста и других параметров, можно почитать тут
    так же персональный номер ещё может называться CPR можете найти инфу тут.
    В нашем моменте с Австралией нету не каких алгоритмов так что может работать рандомно только по шаблону оригинала, в данном случаи это Personal Number: 45275880M как мы видим межу двоеточием и четвёркой есть пробел, а в строке MRZ мы видим символ < который стоит перед нашей четверкой, значит нам нужно поставить этот знак перед генерацией дабы не нарушить заданный алгоритм,так же присутствуем буква M которая повторно обозначает пол, вот такая фишка в AU паспорте.

    Также хочу отметить я дал скан с невалидным MRZ кодом специально, чтобы вы заметили что вовремя анализа на чеке нам выдало Final Check digit: Invalid (Is 0, should be 4), что означает в финальная цифра не верна должна быть 4 а не 0.
    Финальные цифры стоят после каждого значимого участка это нижняя строка вот она мы её разберем M2414547<7AFG6006093M2003027<45275880M<<<<10

    1. M2414547 - Это номер паспорта M241454 в конце ставиться цифра получаемая при генерации по алгоритму это (7).
    2. 7AFG6006093 - Данная строка содержит национальность и дату рождения финальная цифра (3).
    3. 2003027 - Дата окончания действия документа финальная цифра (7).
    4. И финальный цифры генерации 10.

    Чтобы не допустить таких ошибок делаем после каждой генерации, анализ MRZ.

    Приступим к генерации, идём по ссылке
    Распишу всё по пунктам.

    1. Sub-type: Этот пункт встречается очень редко, пока видел только в Норвегии в паспорте, так что оставляем его пустым если при анализе он был пуст.
    2. Given name(s): Имя
    3. Surname(s): Фамилия
    Date of birth: Дата рождения
    5. Year: Год
    6. Month: Месяц
    7. Day: День
    8. Sex: Пол
    9. Issuer: Страна владельца документа.
    Passport expiration: Дата окончания действия паспорта.
    10. Year: Год
    11. Month: Месяц
    12. Day: День
    13. Passport number: Номер паспорта
    14. Personal number: Персональный номер
    15. Nationality: Национальность

    Ввели данные жмем Submit и на выходи получим Machine Readable Zone: которую используем по нашему назначению.

    [​IMG]

    В конце добавлю, что самое главное разобраться на анализе самого кода и в будущем не будет проблем, можете задавать вопросы, но помните почти вся инфа о доках есть в гугле.
    Чем смог, тем помог с вами был JOINT.

Поделиться этой страницей