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":"Ficticia Provincial","fnt":"FICTICIA<PROVINCIAL","gn":"Usuaria","gnt":"USUARIA"},"dob":"1955-05-05","t":[{"tg":"840539006","tt":"LP217198-3","nm":"Panbio COVID-19 Ag Test","ma":"1232","sc":"2021-05-10T10:54:34+02:00","dr":"2021-05-10T11:09:34+02:00","tr":"260415000","tc":"C.S. BARBASTRO","co":"ES","is":"Servicio aragones de SALUD","ci":"01ES02TAB96EA39EE8C679E1E430#1"}]},
"CBOR":"bf6376657265312e302e30636e616dbf62666e7346696374696369612050726f76696e6369616c63666e747346494354494349413c50524f56494e4349414c62676e675573756172696163676e746755535541524941ff63646f626a313935352d30352d3035617481bf627467693834303533393030366274746a4c503231373139382d33626e6d7750616e62696f20434f5649442d31392041672054657374626d6164313233326273637819323032312d30352d31305431303a35343a33342b30323a30306264727819323032312d30352d31305431313a30393a33342b30323a3030627472693236303431353030306274636e432e532e2042415242415354524f62636f624553626973781a536572766963696f20617261676f6e65732064652053414c5544626369781e303145533032544142393645413339454538433637394531453433302331ffff",
"COSE":"d2844da201260448b4233ced69da6901a0590164a401624553041a609b97ca06fb41d8263e1a57df3b390103a101a4617481ab626369781e30314553303254414239364541333945453843363739453145343330233162636f6245536264727819323032312d30352d31305431313a30393a33342b30323a3030626973781a536572766963696f20617261676f6e65732064652053414c5544626d616431323332626e6d7750616e62696f20434f5649442d313920416720546573746273637819323032312d30352d31305431303a35343a33342b30323a30306274636e432e532e2042415242415354524f62746769383430353339303036627472693236303431353030306274746a4c503231373139382d3363646f626a313935352d30352d3035636e616da462666e7346696374696369612050726f76696e6369616c62676e675573756172696163666e747346494354494349413c50524f56494e4349414c63676e7467555355415249416376657265312e302e305840f0db22323deaf46bbf09cdc8a50a7c7cec21f4ec787e44543e2c4ee506fa3a40bea80736a38612cdacc178d2f36d326be6e85427f7637eb60aa0d2e82afb59ab",
"BASE45":"NCFW A/8O$$QPS3O91WKHNVNYQGQI1/BD3KVW4JP:NPMB2+5MMCQWDIN9H3UZPF0FDU:L%F0. UF5A X0.2C-AE.LFV6AWEE3%RGHTJVI/HSOR2044C62 ICBJHL6DFKU.M69CESHL7N714WP+PV02RC9/TFFIB2SQ4/3F-Q6T7B+UTTU+XF%$B 2SCNEPNQ:U74+8P3U7L6IOPZDGN32%S843IJM2TQUT1LS/54/75X9S+CGXSZ*I.EEC3K:9G X3%H7B11L-289RP5ME-ERAJ7QPZEJKP8A 8$XQY2LQR9YX7D-ULZED DEBKZNO .CIBEMM9JSLX6E+:CT0MZ:84HLKX4SHC-EW9:1A+C%WT++51/8EFQY$KQF43%Q6OC8V23J2GTOTEMCOPU4NFR8R J0MDXYQU6D$D7JRNMYS%ZD2BP+.9T8CKA97N4$A4YX2XYA5R9D:D-V1T%LG%5J*CU261LQF9AS94FHML9FJES$WCUYR9.C$O59HU5QL$14FB9 44ZEJP81748$-DCGWSUF16C:0GB4V%+R2%V2RAKWR1:208IZ+J7ZM6CO:+EU7IW/VV.OX$VNYORSG6EU-OUSA0%TV463I4WOO7NALI4PZ5J-7RWAW7OC85J",
"PREFIX":"HC1:NCFW A/8O$$QPS3O91WKHNVNYQGQI1/BD3KVW4JP:NPMB2+5MMCQWDIN9H3UZPF0FDU:L%F0. UF5A X0.2C-AE.LFV6AWEE3%RGHTJVI/HSOR2044C62 ICBJHL6DFKU.M69CESHL7N714WP+PV02RC9/TFFIB2SQ4/3F-Q6T7B+UTTU+XF%$B 2SCNEPNQ:U74+8P3U7L6IOPZDGN32%S843IJM2TQUT1LS/54/75X9S+CGXSZ*I.EEC3K:9G X3%H7B11L-289RP5ME-ERAJ7QPZEJKP8A 8$XQY2LQR9YX7D-ULZED DEBKZNO .CIBEMM9JSLX6E+:CT0MZ:84HLKX4SHC-EW9:1A+C%WT++51/8EFQY$KQF43%Q6OC8V23J2GTOTEMCOPU4NFR8R J0MDXYQU6D$D7JRNMYS%ZD2BP+.9T8CKA97N4$A4YX2XYA5R9D:D-V1T%LG%5J*CU261LQF9AS94FHML9FJES$WCUYR9.C$O59HU5QL$14FB9 44ZEJP81748$-DCGWSUF16C:0GB4V%+R2%V2RAKWR1:208IZ+J7ZM6CO:+EU7IW/VV.OX$VNYORSG6EU-OUSA0%TV463I4WOO7NALI4PZ5J-7RWAW7OC85J",
"2DCODE":"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",
"TESTCTX":{
         "VERSION":1,
         "SCHEMA":"1.0.0",
         "CERTIFICATE":"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",
           "VALIDATIONCLOCK":"2021-05-10T12:30:00.000Z",
           "DESCRIPTION":"Test ag."
          },
 "EXPECTEDRESULTS":{
                 "EXPECTEDDECODE":true,
                 "EXPECTEDVERIFY":true,
                 "EXPECTEDUNPREFIX":true,
                 "EXPTECTEDEXPIRED":true,
                 "EXPECTEDSCHEMAVALIDATION":true,
                 "EXPECTEDVALIDOBJECT":true

               }
}