MRZ - первая проба пера
MRZ - Machine Readable Zone (Зона Машинного Чтения)
Если вы загляните в свой паспорт, то увидите белую полосу со своим именем, номером, датой рождения и кучей знаков "<". Если вкраце, эти буквы нужны для универсального сканирования данных документа компьютером.
Это позволяет ускорить процесс погранконтроля, а также увеличить безопасность, засчёт некоторых малозаметных способов защиты.
У меня есть довольно странное хобби - я люблю делать "камуфляжные паспорта" (подобно картинке сверху). Их отличие от поддельных документов - они не имеют "оригиналов", т.е. это "документы" выдуманных стран, они апреоре не настоящие.
MRZ долгое время была для меня загадкой. Первые основы её устройства я расшифровал самостоятельно - разглядывая собственный паспорт. Однако мне не давали покоя цифры, идущие после номера паспорта, даты рождения, даты окончания действия паспорта, а также две последние цифры (на картинке это "10").
Недавно, я прочитал официальную документацию по производству проездных документов от ICAO. Там-то я и прочитал, что это - проверочные цифры. Они позволяют сразу определить, если "паспорт" был сделан на коленке.
Если в кратце, каждое число умножается последовательно на цифры числа "731", суммируются и получившееся число делится на 10. Остаток от деления - проверочная цифра.
После полного понимания работы MRZ, я решил написать программу, которая бы генерировала MRZ. Идея далеко не новаторская, но для меня интересная)