EU Green Certificate (= EU Digital COVID Certificate or corona pass) Online QR code generation for tests
Based on the public EU technical specifications, here is a simple encoder of the QR-code, it describes also the many technical explanations on the steps.
A lot of the techniques used by the EU Green Certificate are coming from the IETF. The code itself is heavily based on open source code.
The only purpose of this page is to show that there is no magic behind the QR-code itself. The generated QR will be detected as invalid by any good validator because:
- a human being will notice the 'FAKE' logo in the middle of the QR code;
- a human being will find strange that the QR code background is red;
- the COSE claims are expired since yesterday;
- the key used to sign the COSE Web Token is not trusted (as I generated with openssl locally);
- the date of birth is in the XIXth century;
- this issuer name will please Harry Potter's fans;
- your IP address is encoded in the opaque part of 'unique certificate identifier';
- a "fake for test" is inserted after the 'test center'.
Online Health Certificate Encoder/Generator
The first step is to build the health payload using a JSON format based on the input you provided. You may notice that some values have been changed in order to clearly identify this QR code as a fake/test one. The encoding
is based on https://ec.europa.eu/health/sites/default/files/ehealth/docs/covid-certificate_json_specification_en.pdf, e.g.:
- dob: date of birth;
- fn: family/surname name, which also translated to the ICAO machine readable format as fnt:;
- gn: given/first name, which also translated to the ICAO machine readable format as gnt:;
- t: this is for a test:
- co: country where the test was carried;
- tg: target disease (in this case COVID-19);
- tt: test type code;
- tr: test result;
- tc: test center;
- sc: sample collection (date and time in UTC);
- ma: manufacturer code for rapid antigen tests;
- nm: test name.
Please let me know if you encounter a bug ;-) firstname.lastname@example.org.
All the data that you upload are immediately deleted from the server after being displayed on your browser. The only retained information is your IP address and when you accessed this web site.