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":"MARQUEZ SANCHEZ","fnt":"MARQUEZ<SANCHEZ","gn":"JULIA","gnt":"JULIA"},"dob":"1989-04-27","v":[{"tg":"729999","vp":"729999","mp":"729999","ma":"729999","dn":2,"sd":2,"dt":"2021-02-06","co":"ES","is":"Servicio Extremeño de Salud","ci":"01ES11VBB823DB3EB6D47BA11F09#5"}]},
 "CBOR": "bf6376657265312e302e30636e616dbf62666e6f4d41525155455a2053414e4348455a63666e746f4d41525155455a3c53414e4348455a62676e654a554c494163676e74654a554c4941ff63646f626a313938392d30342d3237617681bf6274676637323939393962767066373239393939626d7066373239393939626d616637323939393962646e02627364026264746a323032312d30322d303662636f624553626973781c536572766963696f2045787472656d65c3b16f2064652053616c7564626369781e303145533131564242383233444233454236443437424131314630392335ffff",
 "COSE": "d2844da20126044807805b250c759584a058ffa401624553041a69ebf86d06fb41d82ad852ab851f390103a101a4617681aa626369781e30314553313156424238323344423345423644343742413131463039233562636f62455362646e026264746a323032312d30322d3036626973781c536572766963696f2045787472656d65c3b16f2064652053616c7564626d6166373239393939626d706637323939393962736402627467663732393939396276706637323939393963646f626a313938392d30342d3237636e616da462666e6f4d41525155455a2053414e4348455a62676e654a554c494163666e746f4d41525155455a3c53414e4348455a63676e74654a554c49416376657265312e302e305840c43f8287daeec42fe47012e0c0cf099372027a617042cb9ac8474a91f2547fc99cd1f35d1e3319d31a0123f8df2c235a247bfda9b40ae2f002027ede60c5fb6e",
 "BASE45": "NCFOXN%TSMAHN-HKTGX94G-ICWEXWPGEH9M9ESIARG4YK56C1FP8%V79FKXTMIQ.-AAN9I6T5XH-G2%E3EV4*2DFDPU53XY0+F3OA7%BBHB36475UNNJJ4DJ-L7MD3VNNP6BSRJSZ49K0B69UKPSH9WC5PF6846A$QX76QW67Q98T5I9IX*9KI5.V9L$P0BEL35OK9IY9RZN81CHW4:84LC6TQ6L95ED60-RQC25NIWJ1N%LLR2A KKUE$5MV*4WZJ$7K+ CMED ILX9C.PDE2KI7JSTNB95F2699RS35A$QWG9KIRJCQNUO%E53X7V.QL+QKVQCA7T5MN%4HK04T9P8QGIG02J$%25I3HC3X83947IJMCMD34VFEHEQI3GKI:0/PE*%5YNL R5EG7$YTRXNZ O8D4025:XBBP3.1DFFF*LH/PVY FT/S%.IO7OP8NQ$7SGONUAH266KTFQ78.09PF",
 "PREFIX": "HC1:NCFOXN%TSMAHN-HKTGX94G-ICWEXWPGEH9M9ESIARG4YK56C1FP8%V79FKXTMIQ.-AAN9I6T5XH-G2%E3EV4*2DFDPU53XY0+F3OA7%BBHB36475UNNJJ4DJ-L7MD3VNNP6BSRJSZ49K0B69UKPSH9WC5PF6846A$QX76QW67Q98T5I9IX*9KI5.V9L$P0BEL35OK9IY9RZN81CHW4:84LC6TQ6L95ED60-RQC25NIWJ1N%LLR2A KKUE$5MV*4WZJ$7K+ CMED ILX9C.PDE2KI7JSTNB95F2699RS35A$QWG9KIRJCQNUO%E53X7V.QL+QKVQCA7T5MN%4HK04T9P8QGIG02J$%25I3HC3X83947IJMCMD34VFEHEQI3GKI:0/PE*%5YNL R5EG7$YTRXNZ O8D4025:XBBP3.1DFFF*LH/PVY FT/S%.IO7OP8NQ$7SGONUAH266KTFQ78.09PF",
 "2DCODE": "iVBORw0KGgoAAAANSUhEUgAAASwAAAEsAQAAAABRBrPYAAAHUElEQVR42u2aTW6zSBeFL2LAzN4AEttgVluCDRizAdhSzdhGSWwAz2qAqH4O7sR5P+mTuiVKPUlkRY59olTuzznn3rKlf/K12S/sF/YL+5ew3azZ2uZo6yE1Yypffp3c+mybFNdxMauywHh3cyktYfDr0YYh1n1KY9ytMnNNWrLAuqoulnXjDEual/r8rf3myqOyIvFWJhivr4fjPHZz9nDlVK3PqpzacnL5YHXXhltVzt46crFYZ9YvIOv/+RcuhA2pHiLZ34uFR/mKvMWL5ej3xx/JuhJmVvfL/3v8LMsLYedXJOPrzNmoNOqcs3k9zP3ZgNfBqLGbI/jrZhTYCox0FJHys1sb+jww+veltiIFpKOm/F4+zSl07T4s5VcWroYt9T2Wk4WORxUeVncGjTSTNZML9zywcVkno7TS0ZZHK+qg5q2FtcIZlhww4kCF17eKw9C/vGZ3X999OYtSyqfLASMLif/9aaHw9aMtIeeXD3ffvFJ5WLjlgVFX5upHpXR0lp6V3ZfabB09xBL6JQuMLEgUFqqO8g43kPBka/cUHu6k7gywrUL+oGWzlrPVgwfAj3UR16Oi47LAxBgwZNwf1syJjiYLexGbZ7W+0icgl8J2zkPMjwrB5d+vC28PUzS61vpk2WD7o6JtoUp00NTLAGJ5uDIllXoGGJwsM3NUHGxHB5/VfocnAVsCOaYssLToXTBEoEALqmAiLmSopvaOKgsMnR2iKKuIos2nYpKS58ykoO5cDhiyG/qYJnTHS/QpbLq7c83s09PKH071QhjERWEnWukegxEZIr8QHwQxPKq9WLLAcC89xgZx55UkpzpEKAt73LziPmSBYUrJsrwNuRiXZuR7gr4gZzFJV+WB2Y6RKCArBLfd71G+Qr9rcjVfRX45jD46TSM8if+3EhHEmSMQN/twyLWwYaGbaOHmbLE1eSSYX4EzCcieCXaj0hYq7U2VOtJAQzFnpZqOHlIO2KkLC9xoHKmTJAU9cStnG3XsHDBlAcmbaWQTM0+iLwYfjI2aLhMMQZ8oM4/iNzyxthlFJicy2ZdpvBjWL9ICIk9YiEAfkSemvHDXaFB+UfS1MChrneEKv86IguHGcVPyrkWyR8UkkgV2WJM8P8rFcaSbEX+Oh1Ksm7MiC4zUQ8W1tUluyq0p2uCbTQQCg8lMZoFVZYq4OBJNHHDF5+CDdeRgsPSSB0a9mWqbFBAWLQqohIgCNlP1EcqLYRgJRxDsVHySsr4ita2aP5xGoQywNOMVHdMH/ExTowh1IS0uX/q+37LAKG8UVquY0TPvqJuwFiPugnpTiHLAiACd28zaOJ3brfTeySD6mMZzUZABhpFQsUVtJDQ+t3T021PBZlR+FhgHQIx6j0nmkPjVBivFUEmXzczyKQsMJ3xrSbckaQa5MP4o7xT580dALoXt/HXcKWaVt552UtbZaEhD50ImGIrwUOTRQfK+bmIwWbiuBc9EkAmGAnK20MkYa7l3MwLSADhc/bVuuhhWaPvBi5wElV9Roqe9V7UUwPfsfDHszmDuKLaE9GhXkBQfptoO2myb713NxTDPjEwBBMxM8baOpvEZMdp+ONVrYdjU/uzlXhvacNfuRU/69F7V5oAxxta92AMNqntPZ1nHkwUFpK/rz4b2UhgEdUp8ANzLkANDDnaNWnLpOWDoAile53c6Ig4qyLtG7HE4jVwOmHZclPTDiUxecKYPhTRXNx3j8nFcF8MStQ1hEoTw0CJR5c0ggCoV6UPR18KwajqG3wWgkaM4ZDIdGCv1vci9FMYMK8eYtDwMfZRL3M52fjis4/qxUlfCtCWANDaI0YPRGDJpmmY6WI/qx1bqUtgsRyFn/pIEy1c8JbhnUlwmGEJPBHSYqUUB6W6slMqv99T5D9m9EqZ6w8zcWgpMW4Len/7fqPA0yk/mgTHgaLjbC1nHErvI8fCKCMR9aeYlCwz/Rtti2HTV6Okpys8QX3h7qzLBiLM6i3Rv1mj5o/0hLk7NtbnPnHUt7B5FVtaqtF7M7xIFurtGA636IZRXwpJWhVaOkZ5q5PzPAeQ0AHo+pBwwipySxhgjQ5yH2Uf3gChvLx4L32J0LWw4BxBdxulzAvAzr1B7+qgAbmfLA9NdWNTc+qwISD3Is604ZFzr0X7fA14Mg5+3VonYCIWMjb2vxp7KvZo6B6yQjUGDdNM6xHCPBlcjQ/Oie7qPPb4SlqZ2VV0hQ7rHUeEN/twyacGFcc0Bk/PXtVEFP8tOjBGLziQiYzzJr+aAJS30aCgfIEwGq147UlJTTq7Bvj6qHDB9rgbCPNz77g9A0KcyKo0k42eMvRj2/lzNqF2ith8vXSXv52TX6CLJZYHpGEklN8mg6loZdRiwGVU4V7WZYFrMDn87/12tjfBFbQleS7llg826Y0XxwSd4ozutstyO++NsF8IGaTojAP6wkSePAHBuZjI5P6aPS2HU23E+OOFNudDB6K/ONc/2c6F8Kez3k36/sF/YfwX7C5pp610utEV1AAAAAElFTkSuQmCC" 
,"TESTCTX":{"VERSION":1,"SCHEMA":"1.0.0","CERTIFICATE": "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",
 "VALIDATIONCLOCK": "2021-05-17T09:11:47.777Z" ,"DESCRIPTION":"Test Vacunacion"},
"EXPECTEDRESULTS":{
                 "EXPECTEDVALIDOBJECT": true,
       "EXPECTEDSCHEMAVALIDATION": true,
       "EXPECTEDENCODE": true,
		"EXPECTEDDECODE": true,
		"EXPECTEDVERIFY": true,
		"EXPECTEDUNPREFIX": true,
       "EXPECTEDB45DECODE": true,
       "EXPECTEDPICTUREDECODE": true
	}
}