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 Huesca","fnt":"FICTICIA<HUESCA","gn":"Usuaria","gnt":"USUARIA"},"dob":"1990-01-01","v":[{"tg":"840539006","vp":"1119305005","mp":"EU/1/20/1525","ma":"ORG-100001417","dn":1,"sd":1,"dt":"2021-05-10","co":"ES","is":"Servicio aragones de SALUD","ci":"01ES02V352C3FCB5A6AF633FA7FB#4"}]},
"CBOR":"bf6376657265312e302e30636e616dbf62666e6f46696374696369612048756573636163666e746f46494354494349413c48554553434162676e675573756172696163676e746755535541524941ff63646f626a313939302d30312d3031617681bf627467693834303533393030366276706a31313139333035303035626d706c45552f312f32302f31353235626d616d4f52472d31303030303134313762646e01627364016264746a323032312d30352d313062636f624553626973781a536572766963696f20617261676f6e65732064652053414c5544626369781e303145533032563335324333464342354136414636333346413746422334ffff",
"COSE":"d2844da201260448b4233ced69da6901a0590119a40162455304fb41d89e8a4a9353f806fb41d8263d6ab6b852390103a101a4617681aa626369781e30314553303256333532433346434235413641463633334641374642233462636f62455362646e016264746a323032312d30352d3130626973781a536572766963696f20617261676f6e65732064652053414c5544626d616d4f52472d313030303031343137626d706c45552f312f32302f3135323562736401627467693834303533393030366276706a3131313933303530303563646f626a313939302d30312d3031636e616da462666e6f46696374696369612048756573636162676e675573756172696163666e746f46494354494349413c48554553434163676e7467555355415249416376657265312e302e305840b3419462b77cb4acf780226db41a1c004d445fa05e160a63dd337a022dacbbeb0d2f8b26531ffb937820718bca1103fdfde0b94af5539909c4314048d69b8332",
"BASE45":"NCF4W1E0APO0030K+HAMK$SB%IHG7RS5P*170UMHGA$+P8AJ9JLC+81JT*17AZQ ZP%M7.ZRP78567DFIKSR/%R2AWCVTOFTFD5C%5SCAY4TR:VV4C:BU47F:TB4/MD1QUERQ7G$SOAQKAVRU6DVBN/OKLUIMGLD/VP*3W%QE3T14NB91WN66C8HVRE$IARVD8GFS1+EFB+IF0PX/4MXI6+83BA0S67S9JN6 X0:W1:%F:QRUW8XH659G9B8EFF:DUY.9/1P%-1EHAY0EAO7/7D:E4CWQP1KL%OWW5Q3P R1TCO2UTE0MTYL*V9F24OZAB.KSZ5*HP%RK7BK-C3EDBOQBC48SV6XALCFL/ 1 U05G3W48LZG//4QSGP3WDFS7NH0S8RBRQ9IYVTF0M63M E5X%LZ19NFA9CTJJFO+HC*A-YTBKN3*SCFRJ*KVICBALJEOF36V$245B6EIRUDS1629NZ NC3COVPF2GUXEE8L5-NKM3YTQ*0WT2BG18T.0O02OUS87W07F/EUX1WKQT//3RU70%JRYFZO46H0W3O40",
"PREFIX":"HC1:NCF4W1E0APO0030K+HAMK$SB%IHG7RS5P*170UMHGA$+P8AJ9JLC+81JT*17AZQ ZP%M7.ZRP78567DFIKSR/%R2AWCVTOFTFD5C%5SCAY4TR:VV4C:BU47F:TB4/MD1QUERQ7G$SOAQKAVRU6DVBN/OKLUIMGLD/VP*3W%QE3T14NB91WN66C8HVRE$IARVD8GFS1+EFB+IF0PX/4MXI6+83BA0S67S9JN6 X0:W1:%F:QRUW8XH659G9B8EFF:DUY.9/1P%-1EHAY0EAO7/7D:E4CWQP1KL%OWW5Q3P R1TCO2UTE0MTYL*V9F24OZAB.KSZ5*HP%RK7BK-C3EDBOQBC48SV6XALCFL/ 1 U05G3W48LZG//4QSGP3WDFS7NH0S8RBRQ9IYVTF0M63M E5X%LZ19NFA9CTJJFO+HC*A-YTBKN3*SCFRJ*KVICBALJEOF36V$245B6EIRUDS1629NZ NC3COVPF2GUXEE8L5-NKM3YTQ*0WT2BG18T.0O02OUS87W07F/EUX1WKQT//3RU70%JRYFZO46H0W3O40",
"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":"Vaccination 1/1 JJ."
},
 "EXPECTEDRESULTS":{
                 "EXPECTEDDECODE":true,
                 "EXPECTEDVERIFY":true,
                 "EXPECTEDUNPREFIX":true,
                 "EXPTECTEDEXPIRED":true,
                 "EXPECTEDSCHEMAVALIDATION":true,
                 "EXPECTEDVALIDOBJECT":true

               }
}