JMRTD

A Free Implementation of Machine Readable Travel Documents

JMRTD is a free implementation of the Machine Readable Travel Document (MRTD) standards as specified by the International Civil Aviation Organization (ICAO). The electronic passport (or "ePassport"), which by now has been introduced in many countries, is an implementation of these standards.

Both a card side application (the "passport applet") and a host side API for accessing electronic passports are developed. The passport applet makes it possible to create your own passports (in case you're starting your own country). The applet is written in Java Card.

The host side API makes it possible to authenticate with a passport and read the information on the chip. The host side API is written in Java.

News

April 17, 2009: Version 0.0.2 of applet released Download
April 17, 2009: Version 0.4.3 of host API released Download
December 15, 2008: Using your ePassport for online authentication Read more

Downloads

The host API can be downloaded as an automatic installer (thanks to IzPack and JSmooth).

Alternatively, you could check out the SVN repository (we're using the Subclipse plugin for Eclipse) Note that the host API currently requires JDK 1.6.

Documentation

Available documentation:

Specifications

Most of the specifications are open (as in: can be purchased). Here's our list.

Certificates

We have a list of country signing certificates that Google found.

External Links