dgc 0.0.7

A parser and validator for the EU Digital Green Certificate (dgc) a.k.a. greenpass
Documentation
{
  "JSON": {
    "ver": "1.0.0",
    "nam": {
      "fn": "Trinke",
      "fnt": "TRINKE",
      "gn": "Larsen",
      "gnt": "LARSEN"
    },
    "dob": "1978-10-29",
    "r": [
      {
        "tg": "840539006",
        "fr": "2021-04-06",
        "co": "DK",
        "is": "Danish Health Data Authority",
        "df": "2021-04-20",
        "du": "2021-10-03",
        "ci": "URN:UVCI:01:DK:1D6DAB71F99A5C87A657D6D904558001#R"
      }
    ]
  },
  "CBOR": "bf6376657265312e302e30636e616dbf62666e665472696e6b6563666e74665452494e4b4562676e664c617273656e63676e74664c415253454eff63646f626a313937382d31302d3239617281bf627467693834303533393030366266726a323032312d30342d303662636f62444b626973781c44616e697368204865616c7468204461746120417574686f726974796264666a323032312d30342d32306264756a323032312d31302d3033626369783155524e3a555643493a30313a444b3a31443644414237314639394135433837413635374436443930343535383030312352ffff",
  "COSE": "d2844da201260448b84ed58984d27a08a058f7a40162444b041a60a6c743061a60a2d2c3390103a101a4617281a7626369783155524e3a555643493a30313a444b3a3144364441423731463939413543383741363537443644393034353538303031235262636f62444b6264666a323032312d30342d32306264756a323032312d31302d30336266726a323032312d30342d3036626973781c44616e697368204865616c7468204461746120417574686f726974796274676938343035333930303663646f626a313937382d31302d3239636e616da462666e665472696e6b6562676e664c617273656e63666e74665452494e4b4563676e74664c415253454e6376657265312e302e305840206535c9d421118f65b05ce5a78f28894b8aea91dc7c6b920274321dd43e00cd1eca649eb50740bfb4a68cae9c2b9540f44cec9f7dd27bff0eaaa8fa072d4c33",
  "BASE45": "NCFOXN%TSMAHN-H9QCGDSB5QPN9OO3TH4O:5+T9DNUOGIB8B/*R:X9LGC0/KK1JZZPQA3DP4OW631AX5QF36FY1OSMNV1L8VNF6O M3PU1H6EB6JFEUF6+XEQ MJS6K1N63FEL62+0+BB4DJ4NJ323L23T+0SZ4ZI00T9 E9PF6846A$QW76SW6B699B5RFUOV13W1.UI2PHUIE+-CZJJQU2X*5YGFC-OPC1LJL4A7K73X*5OX42F1M*KYC3.Z8 X45B9-NT0 2$$0X4PCY0X:CZD5CC9T0H.3TU54JWHUVI/E2$4JY/KS-K1Q2V5T+5L /K9:KDP48X2C4T6ALD-IW G-IFNHF+*4LK0*+73E8U2MWKP/HLIJL8JF8JF172TF1A0LK6MGH1M7LHBHERN34CNYQS TF OF 6TTI4J9ZWC+ERZZJ/N7-G6ZN5:YONZ5 NF*0Q24KWJUVDTK/VIQ99GW4/AAKV45MLNCI00E+702",
  "PREFIX": "HC1:NCFOXN%TSMAHN-H9QCGDSB5QPN9OO3TH4O:5+T9DNUOGIB8B/*R:X9LGC0/KK1JZZPQA3DP4OW631AX5QF36FY1OSMNV1L8VNF6O M3PU1H6EB6JFEUF6+XEQ MJS6K1N63FEL62+0+BB4DJ4NJ323L23T+0SZ4ZI00T9 E9PF6846A$QW76SW6B699B5RFUOV13W1.UI2PHUIE+-CZJJQU2X*5YGFC-OPC1LJL4A7K73X*5OX42F1M*KYC3.Z8 X45B9-NT0 2$$0X4PCY0X:CZD5CC9T0H.3TU54JWHUVI/E2$4JY/KS-K1Q2V5T+5L /K9:KDP48X2C4T6ALD-IW G-IFNHF+*4LK0*+73E8U2MWKP/HLIJL8JF8JF172TF1A0LK6MGH1M7LHBHERN34CNYQS TF OF 6TTI4J9ZWC+ERZZJ/N7-G6ZN5:YONZ5 NF*0Q24KWJUVDTK/VIQ99GW4/AAKV45MLNCI00E+702",
  "2DCODE": "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",
  "TESTCTX": {
    "validationClockInstant": "2021-05-20T20:32:03Z",
    "VERSION": 1,
    "SCHEMA": "1.0.0",
    "CERTIFICATE": "MIICyzCCAnGgAwIBAgIBATAKBggqhkjOPQQDAjCBqTELMAkGA1UEBhMCREsxKTAnBgNVBAoMIFRoZSBEYW5pc2ggSGVhbHRoIERhdGEgQXV0aG9yaXR5MSkwJwYDVQQLDCBUaGUgRGFuaXNoIEhlYWx0aCBEYXRhIEF1dGhvcml0eTEcMBoGA1UEAwwTVEVTVF9DU0NBX0RHQ19ES18wMTEmMCQGCSqGSIb3DQEJARYXa29udGFrdEBzdW5kaGVkc2RhdGEuZGswHhcNMjEwNTA2MDcxMzI1WhcNMjMwNTA3MDcxMzI1WjCBqDELMAkGA1UEBhMCREsxKTAnBgNVBAoMIFRoZSBEYW5pc2ggSGVhbHRoIERhdGEgQXV0aG9yaXR5MSkwJwYDVQQLDCBUaGUgRGFuaXNoIEhlYWx0aCBEYXRhIEF1dGhvcml0eTEbMBkGA1UEAwwSVEVTVF9EU0NfREdDX0RLXzAxMSYwJAYJKoZIhvcNAQkBFhdrb250YWt0QHN1bmRoZWRzZGF0YS5kazBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABL0JDUKq2pxjU5RxY1l8bdGpTNRJtAcpdCt+NeCvi4eEhTPz7KIddqBqG4TbylBMqTDYCHrsTxOP4iBRrQE3pyWjgYgwgYUwDgYDVR0PAQH/BAQDAgeAMB0GA1UdDgQWBBQi6XXC6dQ17M3qyUDZMQPB7ecD7zAfBgNVHSMEGDAWgBS43XjKHFShS4ohleIhOwzEaOS38DAzBgNVHSUELDAqBgwrBgEEAQCON49lAQEGDCsGAQQBAI43j2UBAgYMKwYBBAEAjjePZQEDMAoGCCqGSM49BAMCA0gAMEUCIF7fye27ODGr5oHpPmzGAF32/S8v+9YBtaWsCPg3vzNKAiEAxhxPz1lJo7oHZE5HXq71fOi62hoTxQvK08glhlq228s=",
    "VALIDATIONCLOCK": "2021-05-20T20:32:03Z",
    "DESCRIPTION": "DGC with recovery certificate entry"
  },
  "EXPECTEDRESULTS": {
    "EXPECTEDSCHEMAVALIDATION": true,
    "EXPECTEDENCODE": true,
    "EXPECTEDDECODE": true,
    "EXPECTEDVERIFY": true,
    "EXPECTEDUNPREFIX": true,
    "EXPECTEDVALIDJSON": true,
    "EXPECTEDB45DECODE": true,
    "EXPECTEDPICTUREDECODE": true,
    "EXPECTEDEXPIRATIONCHECK": true
  }
}