dgc 0.0.7

A parser and validator for the EU Digital Green Certificate (dgc) a.k.a. greenpass
Documentation
{
  "JSON": {
    "ver": "1.3.0",
    "nam": {
      "fn": "Ebraert",
      "fnt": "EBRAERT",
      "gn": "Peter Paul Maria",
      "gnt": "PETER<PAUL<MARIA"
    },
    "dob": "1980-01-14",
    "t": [{
      "tg": "840539006",
      "tt": "LP6464-4",
      "sc": "2021-08-17T09:02:07Z",
      "tr": "260415000",
      "tc": "81160392",
      "co": "BE",
      "is": "Sciensano",
      "ci": "01BEVLUA7IXBHDDPWSMCOCPWDIDF#K"
    }
    ]
  },
  "CBOR": "bf6376657265312e332e30636e616dbf62666e674562726165727463666e74674542524145525462676e705065746572205061756c204d6172696163676e747050455445523c5041554c3c4d41524941ff63646f626a313938302d30312d3134617481bf62746769383430353339303036627474684c50363436342d3462736374323032312d30382d31375430393a30323a30375a6274726932363034313530303062746368383131363033393262636f62424562697369536369656e73616e6f626369781e30314245564c5541374958424844445057534d434f43505744494446234bffff",
  "COSE": "d2844da2012604489471d184ca3d1968a058f9a401624245041a61446142061a611cd442390103a101a4617481a8626369781e30314245564c5541374958424844445057534d434f43505744494446234b62636f62424562697369536369656e73616e6f62736374323032312d30382d31375430393a30323a30375a6274636838313136303339326274676938343035333930303662747269323630343135303030627474684c50363436342d3463646f626a313938302d30312d3134636e616da462666e674562726165727462676e705065746572205061756c204d6172696163666e74674542524145525463676e747050455445523c5041554c3c4d415249416376657265312e332e305840208c8a953192df283dbaa24df460d47fc2621f6ddaeb244828e8e7b240c39fc7c2f5b081ef21fd8b3f1376ba7239cfa4516a731c7fb9f4d5b802433f82b94d7b",
  "COMPRESSED": "78da014e01b1fed2844da2012604489471d184ca3d1968a058f9a401624245041a61446142061a611cd442390103a101a4617481a8626369781e30314245564c5541374958424844445057534d434f43505744494446234b62636f62424562697369536369656e73616e6f62736374323032312d30382d31375430393a30323a30375a6274636838313136303339326274676938343035333930303662747269323630343135303030627474684c50363436342d3463646f626a313938302d30312d3134636e616da462666e674562726165727462676e705065746572205061756c204d6172696163666e74674542524145525463676e747050455445523c5041554c3c4d415249416376657265312e332e305840208c8a953192df283dbaa24df460d47fc2621f6ddaeb244828e8e7b240c39fc7c2f5b081ef21fd8b3f1376ba7239cfa4516a731c7fb9f4d5b802433f82b94d7bfb9377ed",
  "BASE45": "NCFJ70S90T9WTWGSLKC 4+79MHEJZGQW79AD7BB0XK:ICSW83F30T8RF83F30T3XG8Y50.FK6ZKZWE-CLOPCF8F7460H8.+A0ZAN:647B569SS8Z1BOY9-0A27ALS8IS8ZK4WJCT3E0H8%JCPQEHOAQEDF/DCECT3EJQE1VE846Y96E464W5Y:6F461G7XF6D468JB5WE+7D%96C%6IL6SG69WEQDD+Q6TW6FA7C464KC*KETF6A46.96646B56MWEF8DE6A1R6$Q61S6GVC*JC1A6T473W5Y96-96TPCBEC7ZKW.CM2D2KC3EC5LE JCC/DG7A7WEBJEC7A0%EY34GECMEDLPCG/DM2DDH8EB8GIAMPCG/D.8EIY8GY85S7UB8VS9MY95IA:B8O/EZKEZ967L6156 48NYHX%IOPI-35XQNL%9%AC 6G9IC.*DVWTM59/JT2OM*WOIBPV2V8JGGD47RHWK2UPN*D7ZYKQKD5R3*MN$0R*C0D187JNEUF-SIC5",
  "PREFIX": "HC1:NCFJ70S90T9WTWGSLKC 4+79MHEJZGQW79AD7BB0XK:ICSW83F30T8RF83F30T3XG8Y50.FK6ZKZWE-CLOPCF8F7460H8.+A0ZAN:647B569SS8Z1BOY9-0A27ALS8IS8ZK4WJCT3E0H8%JCPQEHOAQEDF/DCECT3EJQE1VE846Y96E464W5Y:6F461G7XF6D468JB5WE+7D%96C%6IL6SG69WEQDD+Q6TW6FA7C464KC*KETF6A46.96646B56MWEF8DE6A1R6$Q61S6GVC*JC1A6T473W5Y96-96TPCBEC7ZKW.CM2D2KC3EC5LE JCC/DG7A7WEBJEC7A0%EY34GECMEDLPCG/DM2DDH8EB8GIAMPCG/D.8EIY8GY85S7UB8VS9MY95IA:B8O/EZKEZ967L6156 48NYHX%IOPI-35XQNL%9%AC 6G9IC.*DVWTM59/JT2OM*WOIBPV2V8JGGD47RHWK2UPN*D7ZYKQKD5R3*MN$0R*C0D187JNEUF-SIC5",
  "2DCODE": "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",
  "TESTCTX": {
    "VERSION": 1,
    "SCHEMA": "1.0.0",
    "CERTIFICATE": "MIICOTCCAd+gAwIBAgIICNvL5ZlzR6wwCgYIKoZIzj0EAwIwXTELMAkGA1UEBhMCQkUxGjAYBgNVBAoMEWVIZWFsdGggLSBCZWxnaXVtMTIwMAYDVQQDDClCZWxnaXVtIENvdmlkMTkgQ291bnRyeSBTaWduaW5nIENBIEFDQyAwMTAeFw0yMTA1MjYwOTE3MDhaFw0yMzA1MjYwOTE3MDhaME4xCzAJBgNVBAYTAkJFMRowGAYDVQQKDBFlSGVhbHRoIC0gQmVsZ2l1bTEjMCEGA1UEAwwaQmVsZ2l1bSBDb3ZpZDE5IERTQyBBQ0MgMDEwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARLRZoH7CPqBm0DHJqt7A/sPA1UXGobNxH+ccaTFZ19JDtKwpdefTTyn7atmK56bipCQ3+a7FfWlu79usWy1o2Bo4GXMIGUMB8GA1UdIwQYMBaAFFYJyC0Hc2yQ4LZcabzzqGVikiWbMEIGA1UdHwQ7MDkwN6A1oDOGMWh0dHA6Ly9hY2MuY2VydC1hcHAuYmUvcmV2b2tlZExpc3QvZGdjX2NzY2EwMS5jcmwwHQYDVR0OBBYEFAY6Z1qCTsQpHJ1zxxBwcP/EqPJfMA4GA1UdDwEB/wQEAwIHgDAKBggqhkjOPQQDAgNIADBFAiEAnR0PTkR+VR1TPhWXmhLG72EwFcqfOTZ6F6JobSVD4+gCIDqkyB5PDFBwRHFDYPpxGVfQgwqyVQD9OQjZ3RoDF9cg",
    "VALIDATIONCLOCK": "2021-08-19T09:34:58.479916Z"
  },
  "EXPECTEDRESULTS": {
    "EXPECTEDSCHEMAVALIDATION": true,
    "EXPECTEDDECODE": true,
    "EXPECTEDVERIFY": true,
    "EXPECTEDUNPREFIX": true,
    "EXPECTEDVALIDJSON": true,
    "EXPECTEDCOMPRESSION": true,
    "EXPECTEDB45DECODE": true,
    "EXPECTEDPICTUREDECODE": true,
    "EXPECTEDEXPIRATIONCHECK": true
  }
}