Skip to content

Commit

Permalink
Fix: Bump version to 2024.5.1
Browse files Browse the repository at this point in the history
Signed-off-by: George J Padayatti <[email protected]>
  • Loading branch information
georgepadayatti committed Oct 22, 2024
1 parent 74a688f commit 6db1db1
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 1 deletion.
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "sdjwt"
version = "2024.4.7"
version = "2024.5.1"
description = ""
authors = ["George J Padayatti <[email protected]>"]
readme = "README.md"
Expand Down
38 changes: 38 additions & 0 deletions sample.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -410,6 +410,44 @@
"jp = parse(\"'Vehicle number'\")\n",
"jp.find(data)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Q\n",
"eyJhdWQiOiJodHRwczpcL1wvb2lkNHZjLmlncmFudC5pbyIsInN1YiI6ImRpZDprZXk6ejJkbXpEODFjZ1B4OFZraTdKYnV1TW1GWXJXUGdZb3l0eWtVWjNleXFodDFqOUticVd4cWpzdHd4YmRvdkQ2UGtucHdVQXFKZnRIZlRSYnNZVWY1VWVpZzI2blpuQkNxMXpKWWF6dXJ2Q2JpWmNzQVY0MXMxR0Z5N2Z0bnNzRVZQVzJ2dkZkQWo0WVVKVktBTnZQdjZ0VFJNVG9XZHlTTUtOUkRzYkdYZTVleFJ4eDVhayIsIm5iZiI6MTcxNDYzNTQ4MCwiaXNzIjoiZGlkOmtleTp6MmRtekQ4MWNnUHg4VmtpN0pidXVNbUZZcldQZ1lveXR5a1VaM2V5cWh0MWo5S2JxV3hxanN0d3hiZG92RDZQa25wd1VBcUpmdEhmVFJic1lVZjVVZWlnMjZuWm5CQ3ExekpZYXp1cnZDYmlaY3NBVjQxczFHRnk3ZnRuc3NFVlBXMnZ2RmRBajRZVUpWS0FOdlB2NnRUUk1Ub1dkeVNNS05SRHNiR1hlNWV4Unh4NWFrIiwidnAiOnsiaG9sZGVyIjoiZGlkOmtleTp6MmRtekQ4MWNnUHg4VmtpN0pidXVNbUZZcldQZ1lveXR5a1VaM2V5cWh0MWo5S2JxV3hxanN0d3hiZG92RDZQa25wd1VBcUpmdEhmVFJic1lVZjVVZWlnMjZuWm5CQ3ExekpZYXp1cnZDYmlaY3NBVjQxczFHRnk3ZnRuc3NFVlBXMnZ2RmRBajRZVUpWS0FOdlB2NnRUUk1Ub1dkeVNNS05SRHNiR1hlNWV4Unh4NWFrIiwiaWQiOiJ1cm46dXVpZDoyMjNlZDYzMS0yNzVjLTQzNTgtOWJhYS1jNmRiNTkzZjBjYzciLCJ0eXBlIjpbIlZlcmlmaWFibGVQcmVzZW50YXRpb24iXSwiQGNvbnRleHQiOlsiaHR0cHM6XC9cL3d3dy53My5vcmdcLzIwMThcL2NyZWRlbnRpYWxzXC92MSJdLCJ2ZXJpZmlhYmxlQ3JlZGVudGlhbCI6WyJleUpoYkdjaU9pSkZVekkxTmlJc0ltdHBaQ0k2SW1ScFpEcHJaWGs2ZWpKa2JYcEVPREZqWjFCNE9GWnJhVGRLWW5WMVRXMUdXWEpYVUdkWmIzbDBlV3RWV2pObGVYRm9kREZxT1V0aWJtMXlkMWwzVEhOQ2QzcE1aRzVDT0hWU1FWSkNkbkoyUWtvMVVtRkxVMGhtT1V4WGRWUlJkbUZVVjBWcFZVRnZORWhyWVZWVmNUbHFZamxRVW0xNFJFMXJNa2RCWm0xU2VYSTBSM3BxTTFkQlRVZExNV2xtZUdSclJqWkxkM1pJZW1SYVoxQTBkRFp3YlhVNVZtbDZha05HUTBoNlVXSnZjbmxsZFZKMlprZDRheU42TW1SdGVrUTRNV05uVUhnNFZtdHBOMHBpZFhWTmJVWlpjbGRRWjFsdmVYUjVhMVZhTTJWNWNXaDBNV281UzJKdWJYSjNXWGRNYzBKM2VreGtia0k0ZFZKQlVrSjJjblpDU2pWU1lVdFRTR1k1VEZkMVZGRjJZVlJYUldsVlFXODBTR3RoVlZWeE9XcGlPVkJTYlhoRVRXc3lSMEZtYlZKNWNqUkhlbW96VjBGTlIwc3hhV1o0Wkd0R05rdDNka2g2WkZwblVEUjBObkJ0ZFRsV2FYcHFRMFpEU0hwUlltOXllV1YxVW5abVIzaHJJaXdpZEhsd0lqb2lTbGRVSW4wLmV5SmxlSEFpT2pFM01UUTJNRFExTmpVc0ltbGhkQ0k2TVRjeE5EWXdNRGsyTlN3aWFYTnpJam9pWkdsa09tdGxlVHA2TW1SdGVrUTRNV05uVUhnNFZtdHBOMHBpZFhWTmJVWlpjbGRRWjFsdmVYUjVhMVZhTTJWNWNXaDBNV281UzJKdWJYSjNXWGRNYzBKM2VreGtia0k0ZFZKQlVrSjJjblpDU2pWU1lVdFRTR1k1VEZkMVZGRjJZVlJYUldsVlFXODBTR3RoVlZWeE9XcGlPVkJTYlhoRVRXc3lSMEZtYlZKNWNqUkhlbW96VjBGTlIwc3hhV1o0Wkd0R05rdDNka2g2WkZwblVEUjBObkJ0ZFRsV2FYcHFRMFpEU0hwUlltOXllV1YxVW5abVIzaHJJaXdpYW5ScElqb2lkWEp1T21ScFpEbzJaR05pTXpkak5TMHhOMlJrTFRReU5ETXRPR0U0TXkxaFpqSmlabVF5TXprMk9ETWlMQ0p1WW1ZaU9qRTNNVFEyTURBNU5qVXNJbk4xWWlJNkltUnBaRHByWlhrNmVqSmtiWHBFT0RGaloxQjRPRlpyYVRkS1luVjFUVzFHV1hKWFVHZFpiM2wwZVd0VldqTmxlWEZvZERGcU9VdGljbE5HYnpKNlVFWm9Samh6YzNKWlUxcHdSV2RCWlhZMk1rMTJiVlo1WjNwTU4zcG1Oa1pWVTBSV2MwZHFRMEp0UW5sV1pIUjZVamt4WlVkM2QyVm9VM1ZaT0VoRVMzZGliMjkyV25ORGJXODJlVzgzVTJVNFkwTnZOMmR5Vm5OamRtMXpVMUpxUWpNMFp6aDZTMEpuTmxsTmNuaDNNMVpOWVdoRGVFaFlhbUZaWXlJc0luWmpJanA3SWtCamIyNTBaWGgwSWpwYkltaDBkSEJ6T2k4dmQzZDNMbmN6TG05eVp5OHlNREU0TDJOeVpXUmxiblJwWVd4ekwzWXhJbDBzSW1OeVpXUmxiblJwWVd4VFkyaGxiV0VpT2x0N0ltbGtJam9pYUhSMGNITTZMeTloY0drdFkyOXVabTl5YldGdVkyVXVaV0p6YVM1bGRTOTBjblZ6ZEdWa0xYTmphR1Z0WVhNdGNtVm5hWE4wY25rdmRqSXZjMk5vWlcxaGN5OTZNMDFuVlVaVmEySTNNakoxY1RSNE0yUjJOWGxCU20xdVRtMTZSRVpsU3pWVlF6aDRPRE5SYjJWTVNrMGlMQ0owZVhCbElqb2lSblZzYkVwemIyNVRZMmhsYldGV1lXeHBaR0YwYjNJeU1ESXhJbjFkTENKamNtVmtaVzUwYVdGc1UzVmlhbVZqZENJNmV5SmZjMlFpT2xzaU1rSTROMVpyYVUxSVVtTjZUMUoyUWxjMlJFRkNiMGhvVDJORE5XUTBUemt0TW1kSk4ycDBUbEZtZHlJc0lrOUpVMnBqVFZOTGRsZ3dPVkl5VkdGVU5tRm1TbUZKZFZReE5reGFhVmd6YUc1MGVWcGlUR0ZNU2pRaUxDSm5XRkpwTkZGNk5tZHpla1JNY0ZWUFJtSkVNMDVLVVRCQllsWktaV05pYmpoRVNuQjVVVWQ1TUVWUklsMHNJbWxrSWpvaVpHbGtPbXRsZVRwNk1tUnRla1E0TVdOblVIZzRWbXRwTjBwaWRYVk5iVVpaY2xkUVoxbHZlWFI1YTFWYU0yVjVjV2gwTVdvNVMySnlVMFp2TW5wUVJtaEdPSE56Y2xsVFduQkZaMEZsZGpZeVRYWnRWbmxuZWt3M2VtWTJSbFZUUkZaelIycERRbTFDZVZaa2RIcFNPVEZsUjNkM1pXaFRkVms0U0VSTGQySnZiM1phYzBOdGJ6WjViemRUWlRoalEyODNaM0pXYzJOMmJYTlRVbXBDTXpSbk9IcExRbWMyV1UxeWVIY3pWazFoYUVONFNGaHFZVmxqSWl3aWMyVmpkR2x2YmpFaU9uc2lYM05rSWpwYklrb3hWRGRqU1RkNmVrVlBORk5sY0ZvM1ZuVTJSbkp4WDBSaFNIZGhWREZWVGxaRlowNXVMV04xTjJNaUxDSkRRV3R6UWpNMWNUWXdja1Z6WlVacE1qUlFabWd5ZVZkSmVYTjFMWEJLY201NlFVdE5SRW94VVhGaklsMHNJbVJoZEdWQ2FYSjBhQ0k2SWpFNU5qZ3RNVEl0TWpraUxDSm1iM0psYm1GdFpYTWlPaUpEYUdGeWJHOTBkR1VpTENKd1pYSnpiMjVoYkVsa1pXNTBhV1pwWTJGMGFXOXVUblZ0WW1WeUlqb2lNVGsyT0RFeU1qa3RNVFF4TWlJc0luQnNZV05sUW1seWRHZ2lPbnNpWTI5MWJuUnllVU52WkdVaU9pSlRSU0lzSW5KbFoybHZiaUk2SWxOMGIyTnJhRzlzYlNJc0luUnZkMjRpT2lKVGRHOWphMmh2YkcwaWZTd2ljMlY0SWpvaVJtVnRZV3hsSWl3aWMzUmhkR1ZQWmxOMFlYbEJaR1J5WlhOeklqcDdJbU52ZFc1MGNubERiMlJsSWpvaVUwVWlMQ0p3YjNOMFEyOWtaU0k2SWpReE9DQTNPQ0lzSW5OMGNtVmxkRTV2SWpvaVIzVnVibUZ5SUVWdVoyVnNiR0YxY3lCMllXY2dPQ3dnT1RFZ01VSWlMQ0owYjNkdUlqb2lVM1J2WTJ0b2IyeHRJbjBzSW5OMWNtNWhiV1VpT2lKQmJtUmxjbk52YmlJc0luTjFjbTVoYldWQmRFSnBjblJvSWpvaVFXNWtaWEp6YjI0aWZTd2ljMlZqZEdsdmJqUWlPbnNpWDNOa0lqcGJJakJmZFZWV09YSlVVa2x2Ym1sblgyaHhlbGRJU2tWc1ZYQmpSek5DV1ZsRloyZG9ZMFEwVERZek9IY2lYU3dpYm1GdFpVSjFjMmx1WlhOelRtRnRaU0k2SWxadmJIWnZJaXdpY21WbmFYTjBaWEpsWkVGa1pISmxjM01pT25zaVgzTmtJanBiSWxCSFRWQmhjbTVmV1d4UFFYaFhObDk2VEZFeGJHbElNSEF3TmtKS1p5MVVjbWxGY25kR2MxbzVValFpTENKelZqQjJZbTQ1UlRKa1VERk9OMnBvWTNKS2VtaE5RWHBWTFRjd1FWVmpjVjltYzBrMFEwNUNXakk0SWwwc0ltTnZkVzUwY25sRGIyUmxJam9pVTBVaUxDSjBiM2R1SWpvaVIyOTBaV0p2Y21jaWZYMTlMQ0psZUhCcGNtRjBhVzl1UkdGMFpTSTZJakl3TWpRdE1EVXRNREZVTWpNNk1ESTZORFZhSWl3aWFXUWlPaUoxY200NlpHbGtPalprWTJJek4yTTFMVEUzWkdRdE5ESTBNeTA0WVRnekxXRm1NbUptWkRJek9UWTRNeUlzSW1semMzVmhibU5sUkdGMFpTSTZJakl3TWpRdE1EVXRNREZVTWpJNk1ESTZORFZhSWl3aWFYTnpkV1ZrSWpvaU1qQXlOQzB3TlMwd01WUXlNam93TWpvME5Wb2lMQ0pwYzNOMVpYSWlPaUprYVdRNmEyVjVPbm95WkcxNlJEZ3hZMmRRZURoV2EyazNTbUoxZFUxdFJsbHlWMUJuV1c5NWRIbHJWVm96WlhseGFIUXhhamxMWW01dGNuZFpkMHh6UW5kNlRHUnVRamgxVWtGU1FuWnlka0pLTlZKaFMxTklaamxNVjNWVVVYWmhWRmRGYVZWQmJ6UklhMkZWVlhFNWFtSTVVRkp0ZUVSTmF6SkhRV1p0VW5seU5FZDZhak5YUVUxSFN6RnBabmhrYTBZMlMzZDJTSHBrV21kUU5IUTJjRzExT1ZacGVtcERSa05JZWxGaWIzSjVaWFZTZG1aSGVHc2lMQ0owZVhCbElqcGJJbEJ2Y25SaFlteGxSRzlqZFcxbGJuUkJNU0pkTENKMllXeHBaRVp5YjIwaU9pSXlNREkwTFRBMUxUQXhWREl5T2pBeU9qUTFXaUo5ZlEublJPbDFreUhnOWtaSGpZcEJEb2JkcUxzdk1GSlZiT2IzZF9reGZnMWRKa1hBQlZleGdzYUpkRFExalBLY01FXy1oN0VGbzc5UThtUTgtZHVyekRmR3d-V3lKbE5qRmpNV0UxT0RVeU1URXlZak5tTXpnd05UaG1PRFprTkdZMU1EQXdOR1kyWkRjek1EZGtaV1ZpWXpOaVlqVmxabVF6WTJaa01tTTROek0wT0RJMUlpd2ljMlZqZEdsdmJqWWlMSHNpWVdSa2NtVnpjeUk2ZXlKamIzVnVkSEo1UTI5a1pTSTZJa0pGSWl3aWNHOXpkRU52WkdVaU9pSXhNREF3SWl3aWMzUnlaV1YwVG04aU9pSk5ZV2x1SUZOMGNtVmxkQ0F4SWl3aWRHOTNiaUk2SWtKeWRYTnpaV3h6SW4wc0ltUmhkR1VpT2lJeU1ESXpMVEE1TFRBM0lpd2laVzFoYVd3aU9pSnBibVp2UUc1emMya3RZbVV1WlhVaUxDSnBibk4wYVhSMWRHbHZia2xFSWpvaVRsTlRTUzFDUlMwd01TSXNJbTVoYldVaU9pSk9ZWFJwYjI1aGJDQlRiMk5wWVd3Z1UyVmpkWEpwZEhrZ1QyWm1hV05sSWl3aWIyWm1hV05sUm1GNFRtOGlPaUl3T0RBd0lEazROelkxSWl3aWIyWm1hV05sVUdodmJtVk9ieUk2SWpBNE1EQWdNVEl6TkRVaUxDSnphV2R1WVhSMWNtVWlPaUpQWm1acFkybGhiQ0J6YVdkdVlYUjFjbVVpZlYwIl19LCJleHAiOjE3MTQ2MzYwODAsImlhdCI6MTcxNDYzNTQ4MCwibm9uY2UiOiIyYjJiYWFhZS1jOTdkLTQzZGYtOTliYi0yYWJjNDQxYjFjMGIiLCJqdGkiOiJ1cm46dXVpZDoyMjNlZDYzMS0yNzVjLTQzNTgtOWJhYS1jNmRiNTkzZjBjYzcifQ==\n"
]
},
{
"ename": "Error",
"evalue": "Invalid base64-encoded string: number of data characters (6781) cannot be 1 more than a multiple of 4",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[0;32mIn[2], line 6\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mbase64\u001b[39;00m\n\u001b[1;32m 5\u001b[0m base64\u001b[38;5;241m.\u001b[39murlsafe_b64decode(vp)\n\u001b[0;32m----> 6\u001b[0m claims \u001b[38;5;241m=\u001b[39m \u001b[43mdecode_header_and_claims_in_jwt\u001b[49m\u001b[43m(\u001b[49m\u001b[43mvp\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 7\u001b[0m \u001b[38;5;66;03m# print(header)\u001b[39;00m\n\u001b[1;32m 8\u001b[0m \u001b[38;5;28mprint\u001b[39m(claims)\n",
"File \u001b[0;32m~/decentralised-dataexchange/sd-jwt-playground/sdjwt/pex.py:243\u001b[0m, in \u001b[0;36mdecode_header_and_claims_in_jwt\u001b[0;34m(token)\u001b[0m\n\u001b[1;32m 241\u001b[0m \u001b[38;5;28mprint\u001b[39m(claims_encoded[\u001b[38;5;241m6781\u001b[39m])\n\u001b[1;32m 242\u001b[0m \u001b[38;5;28mprint\u001b[39m(claims_encoded \u001b[38;5;241m+\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m=\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;241m*\u001b[39m (\u001b[38;5;241m-\u001b[39m\u001b[38;5;28mlen\u001b[39m(claims_encoded) \u001b[38;5;241m%\u001b[39m \u001b[38;5;241m4\u001b[39m))\n\u001b[0;32m--> 243\u001b[0m claims_decoded \u001b[38;5;241m=\u001b[39m \u001b[43mbase64\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mb64decode\u001b[49m\u001b[43m(\u001b[49m\u001b[43mclaims_encoded\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m+\u001b[39;49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43m=\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43m \u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m-\u001b[39;49m\u001b[38;5;28;43mlen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mclaims_encoded\u001b[49m\u001b[43m)\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m%\u001b[39;49m\u001b[43m \u001b[49m\u001b[38;5;241;43m4\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 244\u001b[0m \u001b[38;5;66;03m# headers_decoded = base64.b64decode(\u001b[39;00m\n\u001b[1;32m 245\u001b[0m \u001b[38;5;66;03m# headers_encoded + \"=\" * (-len(headers_encoded) % 4)\u001b[39;00m\n\u001b[1;32m 246\u001b[0m \u001b[38;5;66;03m# )\u001b[39;00m\n\u001b[1;32m 247\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m json\u001b[38;5;241m.\u001b[39mloads(claims_decoded)\n",
"File \u001b[0;32m/usr/lib/python3.10/base64.py:87\u001b[0m, in \u001b[0;36mb64decode\u001b[0;34m(s, altchars, validate)\u001b[0m\n\u001b[1;32m 85\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m validate \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m re\u001b[38;5;241m.\u001b[39mfullmatch(\u001b[38;5;124mb\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m[A-Za-z0-9+/]*=\u001b[39m\u001b[38;5;124m{\u001b[39m\u001b[38;5;124m0,2}\u001b[39m\u001b[38;5;124m'\u001b[39m, s):\n\u001b[1;32m 86\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m binascii\u001b[38;5;241m.\u001b[39mError(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mNon-base64 digit found\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[0;32m---> 87\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mbinascii\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43ma2b_base64\u001b[49m\u001b[43m(\u001b[49m\u001b[43ms\u001b[49m\u001b[43m)\u001b[49m\n",
"\u001b[0;31mError\u001b[0m: Invalid base64-encoded string: number of data characters (6781) cannot be 1 more than a multiple of 4"
]
}
],
"source": [
"vp = \"eyJraWQiOiJkaWQ6a2V5OnoyZG16RDgxY2dQeDhWa2k3SmJ1dU1tRllyV1BnWW95dHlrVVozZXlxaHQxajlLYnFXeHFqc3R3eGJkb3ZENlBrbnB3VUFxSmZ0SGZUUmJzWVVmNVVlaWcyNm5abkJDcTF6SllhenVydkNiaVpjc0FWNDFzMUdGeTdmdG5zc0VWUFcydnZGZEFqNFlVSlZLQU52UHY2dFRSTVRvV2R5U01LTlJEc2JHWGU1ZXhSeHg1YWsjejJkbXpEODFjZ1B4OFZraTdKYnV1TW1GWXJXUGdZb3l0eWtVWjNleXFodDFqOUticVd4cWpzdHd4YmRvdkQ2UGtucHdVQXFKZnRIZlRSYnNZVWY1VWVpZzI2blpuQkNxMXpKWWF6dXJ2Q2JpWmNzQVY0MXMxR0Z5N2Z0bnNzRVZQVzJ2dkZkQWo0WVVKVktBTnZQdjZ0VFJNVG9XZHlTTUtOUkRzYkdYZTVleFJ4eDVhayIsInR5cCI6IkpXVCIsImFsZyI6IkVTMjU2IiwiandrIjp7Imt0eSI6IkVDIiwiY3J2IjoiUC0yNTYiLCJ4IjoiWGdaWS1KTzR2SGRVaXdNc1ZxQVVheWdUVGhta3E5cmxmdEhOMzdYT1lGWSIsInkiOiJrRkZPR3RQMEZadEwyc1BnZHc0alBhZGpkZzBCeUFvaUtwSTNtd2ZvLVZ3In19.eyJhdWQiOiJodHRwczpcL1wvb2lkNHZjLmlncmFudC5pbyIsInN1YiI6ImRpZDprZXk6ejJkbXpEODFjZ1B4OFZraTdKYnV1TW1GWXJXUGdZb3l0eWtVWjNleXFodDFqOUticVd4cWpzdHd4YmRvdkQ2UGtucHdVQXFKZnRIZlRSYnNZVWY1VWVpZzI2blpuQkNxMXpKWWF6dXJ2Q2JpWmNzQVY0MXMxR0Z5N2Z0bnNzRVZQVzJ2dkZkQWo0WVVKVktBTnZQdjZ0VFJNVG9XZHlTTUtOUkRzYkdYZTVleFJ4eDVhayIsIm5iZiI6MTcxNDYzNTQ4MCwiaXNzIjoiZGlkOmtleTp6MmRtekQ4MWNnUHg4VmtpN0pidXVNbUZZcldQZ1lveXR5a1VaM2V5cWh0MWo5S2JxV3hxanN0d3hiZG92RDZQa25wd1VBcUpmdEhmVFJic1lVZjVVZWlnMjZuWm5CQ3ExekpZYXp1cnZDYmlaY3NBVjQxczFHRnk3ZnRuc3NFVlBXMnZ2RmRBajRZVUpWS0FOdlB2NnRUUk1Ub1dkeVNNS05SRHNiR1hlNWV4Unh4NWFrIiwidnAiOnsiaG9sZGVyIjoiZGlkOmtleTp6MmRtekQ4MWNnUHg4VmtpN0pidXVNbUZZcldQZ1lveXR5a1VaM2V5cWh0MWo5S2JxV3hxanN0d3hiZG92RDZQa25wd1VBcUpmdEhmVFJic1lVZjVVZWlnMjZuWm5CQ3ExekpZYXp1cnZDYmlaY3NBVjQxczFHRnk3ZnRuc3NFVlBXMnZ2RmRBajRZVUpWS0FOdlB2NnRUUk1Ub1dkeVNNS05SRHNiR1hlNWV4Unh4NWFrIiwiaWQiOiJ1cm46dXVpZDoyMjNlZDYzMS0yNzVjLTQzNTgtOWJhYS1jNmRiNTkzZjBjYzciLCJ0eXBlIjpbIlZlcmlmaWFibGVQcmVzZW50YXRpb24iXSwiQGNvbnRleHQiOlsiaHR0cHM6XC9cL3d3dy53My5vcmdcLzIwMThcL2NyZWRlbnRpYWxzXC92MSJdLCJ2ZXJpZmlhYmxlQ3JlZGVudGlhbCI6WyJleUpoYkdjaU9pSkZVekkxTmlJc0ltdHBaQ0k2SW1ScFpEcHJaWGs2ZWpKa2JYcEVPREZqWjFCNE9GWnJhVGRLWW5WMVRXMUdXWEpYVUdkWmIzbDBlV3RWV2pObGVYRm9kREZxT1V0aWJtMXlkMWwzVEhOQ2QzcE1aRzVDT0hWU1FWSkNkbkoyUWtvMVVtRkxVMGhtT1V4WGRWUlJkbUZVVjBWcFZVRnZORWhyWVZWVmNUbHFZamxRVW0xNFJFMXJNa2RCWm0xU2VYSTBSM3BxTTFkQlRVZExNV2xtZUdSclJqWkxkM1pJZW1SYVoxQTBkRFp3YlhVNVZtbDZha05HUTBoNlVXSnZjbmxsZFZKMlprZDRheU42TW1SdGVrUTRNV05uVUhnNFZtdHBOMHBpZFhWTmJVWlpjbGRRWjFsdmVYUjVhMVZhTTJWNWNXaDBNV281UzJKdWJYSjNXWGRNYzBKM2VreGtia0k0ZFZKQlVrSjJjblpDU2pWU1lVdFRTR1k1VEZkMVZGRjJZVlJYUldsVlFXODBTR3RoVlZWeE9XcGlPVkJTYlhoRVRXc3lSMEZtYlZKNWNqUkhlbW96VjBGTlIwc3hhV1o0Wkd0R05rdDNka2g2WkZwblVEUjBObkJ0ZFRsV2FYcHFRMFpEU0hwUlltOXllV1YxVW5abVIzaHJJaXdpZEhsd0lqb2lTbGRVSW4wLmV5SmxlSEFpT2pFM01UUTJNRFExTmpVc0ltbGhkQ0k2TVRjeE5EWXdNRGsyTlN3aWFYTnpJam9pWkdsa09tdGxlVHA2TW1SdGVrUTRNV05uVUhnNFZtdHBOMHBpZFhWTmJVWlpjbGRRWjFsdmVYUjVhMVZhTTJWNWNXaDBNV281UzJKdWJYSjNXWGRNYzBKM2VreGtia0k0ZFZKQlVrSjJjblpDU2pWU1lVdFRTR1k1VEZkMVZGRjJZVlJYUldsVlFXODBTR3RoVlZWeE9XcGlPVkJTYlhoRVRXc3lSMEZtYlZKNWNqUkhlbW96VjBGTlIwc3hhV1o0Wkd0R05rdDNka2g2WkZwblVEUjBObkJ0ZFRsV2FYcHFRMFpEU0hwUlltOXllV1YxVW5abVIzaHJJaXdpYW5ScElqb2lkWEp1T21ScFpEbzJaR05pTXpkak5TMHhOMlJrTFRReU5ETXRPR0U0TXkxaFpqSmlabVF5TXprMk9ETWlMQ0p1WW1ZaU9qRTNNVFEyTURBNU5qVXNJbk4xWWlJNkltUnBaRHByWlhrNmVqSmtiWHBFT0RGaloxQjRPRlpyYVRkS1luVjFUVzFHV1hKWFVHZFpiM2wwZVd0VldqTmxlWEZvZERGcU9VdGljbE5HYnpKNlVFWm9Samh6YzNKWlUxcHdSV2RCWlhZMk1rMTJiVlo1WjNwTU4zcG1Oa1pWVTBSV2MwZHFRMEp0UW5sV1pIUjZVamt4WlVkM2QyVm9VM1ZaT0VoRVMzZGliMjkyV25ORGJXODJlVzgzVTJVNFkwTnZOMmR5Vm5OamRtMXpVMUpxUWpNMFp6aDZTMEpuTmxsTmNuaDNNMVpOWVdoRGVFaFlhbUZaWXlJc0luWmpJanA3SWtCamIyNTBaWGgwSWpwYkltaDBkSEJ6T2k4dmQzZDNMbmN6TG05eVp5OHlNREU0TDJOeVpXUmxiblJwWVd4ekwzWXhJbDBzSW1OeVpXUmxiblJwWVd4VFkyaGxiV0VpT2x0N0ltbGtJam9pYUhSMGNITTZMeTloY0drdFkyOXVabTl5YldGdVkyVXVaV0p6YVM1bGRTOTBjblZ6ZEdWa0xYTmphR1Z0WVhNdGNtVm5hWE4wY25rdmRqSXZjMk5vWlcxaGN5OTZNMDFuVlVaVmEySTNNakoxY1RSNE0yUjJOWGxCU20xdVRtMTZSRVpsU3pWVlF6aDRPRE5SYjJWTVNrMGlMQ0owZVhCbElqb2lSblZzYkVwemIyNVRZMmhsYldGV1lXeHBaR0YwYjNJeU1ESXhJbjFkTENKamNtVmtaVzUwYVdGc1UzVmlhbVZqZENJNmV5SmZjMlFpT2xzaU1rSTROMVpyYVUxSVVtTjZUMUoyUWxjMlJFRkNiMGhvVDJORE5XUTBUemt0TW1kSk4ycDBUbEZtZHlJc0lrOUpVMnBqVFZOTGRsZ3dPVkl5VkdGVU5tRm1TbUZKZFZReE5reGFhVmd6YUc1MGVWcGlUR0ZNU2pRaUxDSm5XRkpwTkZGNk5tZHpla1JNY0ZWUFJtSkVNMDVLVVRCQllsWktaV05pYmpoRVNuQjVVVWQ1TUVWUklsMHNJbWxrSWpvaVpHbGtPbXRsZVRwNk1tUnRla1E0TVdOblVIZzRWbXRwTjBwaWRYVk5iVVpaY2xkUVoxbHZlWFI1YTFWYU0yVjVjV2gwTVdvNVMySnlVMFp2TW5wUVJtaEdPSE56Y2xsVFduQkZaMEZsZGpZeVRYWnRWbmxuZWt3M2VtWTJSbFZUUkZaelIycERRbTFDZVZaa2RIcFNPVEZsUjNkM1pXaFRkVms0U0VSTGQySnZiM1phYzBOdGJ6WjViemRUWlRoalEyODNaM0pXYzJOMmJYTlRVbXBDTXpSbk9IcExRbWMyV1UxeWVIY3pWazFoYUVONFNGaHFZVmxqSWl3aWMyVmpkR2x2YmpFaU9uc2lYM05rSWpwYklrb3hWRGRqU1RkNmVrVlBORk5sY0ZvM1ZuVTJSbkp4WDBSaFNIZGhWREZWVGxaRlowNXVMV04xTjJNaUxDSkRRV3R6UWpNMWNUWXdja1Z6WlVacE1qUlFabWd5ZVZkSmVYTjFMWEJLY201NlFVdE5SRW94VVhGaklsMHNJbVJoZEdWQ2FYSjBhQ0k2SWpFNU5qZ3RNVEl0TWpraUxDSm1iM0psYm1GdFpYTWlPaUpEYUdGeWJHOTBkR1VpTENKd1pYSnpiMjVoYkVsa1pXNTBhV1pwWTJGMGFXOXVUblZ0WW1WeUlqb2lNVGsyT0RFeU1qa3RNVFF4TWlJc0luQnNZV05sUW1seWRHZ2lPbnNpWTI5MWJuUnllVU52WkdVaU9pSlRSU0lzSW5KbFoybHZiaUk2SWxOMGIyTnJhRzlzYlNJc0luUnZkMjRpT2lKVGRHOWphMmh2YkcwaWZTd2ljMlY0SWpvaVJtVnRZV3hsSWl3aWMzUmhkR1ZQWmxOMFlYbEJaR1J5WlhOeklqcDdJbU52ZFc1MGNubERiMlJsSWpvaVUwVWlMQ0p3YjNOMFEyOWtaU0k2SWpReE9DQTNPQ0lzSW5OMGNtVmxkRTV2SWpvaVIzVnVibUZ5SUVWdVoyVnNiR0YxY3lCMllXY2dPQ3dnT1RFZ01VSWlMQ0owYjNkdUlqb2lVM1J2WTJ0b2IyeHRJbjBzSW5OMWNtNWhiV1VpT2lKQmJtUmxjbk52YmlJc0luTjFjbTVoYldWQmRFSnBjblJvSWpvaVFXNWtaWEp6YjI0aWZTd2ljMlZqZEdsdmJqUWlPbnNpWDNOa0lqcGJJakJmZFZWV09YSlVVa2x2Ym1sblgyaHhlbGRJU2tWc1ZYQmpSek5DV1ZsRloyZG9ZMFEwVERZek9IY2lYU3dpYm1GdFpVSjFjMmx1WlhOelRtRnRaU0k2SWxadmJIWnZJaXdpY21WbmFYTjBaWEpsWkVGa1pISmxjM01pT25zaVgzTmtJanBiSWxCSFRWQmhjbTVmV1d4UFFYaFhObDk2VEZFeGJHbElNSEF3TmtKS1p5MVVjbWxGY25kR2MxbzVValFpTENKelZqQjJZbTQ1UlRKa1VERk9OMnBvWTNKS2VtaE5RWHBWTFRjd1FWVmpjVjltYzBrMFEwNUNXakk0SWwwc0ltTnZkVzUwY25sRGIyUmxJam9pVTBVaUxDSjBiM2R1SWpvaVIyOTBaV0p2Y21jaWZYMTlMQ0psZUhCcGNtRjBhVzl1UkdGMFpTSTZJakl3TWpRdE1EVXRNREZVTWpNNk1ESTZORFZhSWl3aWFXUWlPaUoxY200NlpHbGtPalprWTJJek4yTTFMVEUzWkdRdE5ESTBNeTA0WVRnekxXRm1NbUptWkRJek9UWTRNeUlzSW1semMzVmhibU5sUkdGMFpTSTZJakl3TWpRdE1EVXRNREZVTWpJNk1ESTZORFZhSWl3aWFYTnpkV1ZrSWpvaU1qQXlOQzB3TlMwd01WUXlNam93TWpvME5Wb2lMQ0pwYzNOMVpYSWlPaUprYVdRNmEyVjVPbm95WkcxNlJEZ3hZMmRRZURoV2EyazNTbUoxZFUxdFJsbHlWMUJuV1c5NWRIbHJWVm96WlhseGFIUXhhamxMWW01dGNuZFpkMHh6UW5kNlRHUnVRamgxVWtGU1FuWnlka0pLTlZKaFMxTklaamxNVjNWVVVYWmhWRmRGYVZWQmJ6UklhMkZWVlhFNWFtSTVVRkp0ZUVSTmF6SkhRV1p0VW5seU5FZDZhak5YUVUxSFN6RnBabmhrYTBZMlMzZDJTSHBrV21kUU5IUTJjRzExT1ZacGVtcERSa05JZWxGaWIzSjVaWFZTZG1aSGVHc2lMQ0owZVhCbElqcGJJbEJ2Y25SaFlteGxSRzlqZFcxbGJuUkJNU0pkTENKMllXeHBaRVp5YjIwaU9pSXlNREkwTFRBMUxUQXhWREl5T2pBeU9qUTFXaUo5ZlEublJPbDFreUhnOWtaSGpZcEJEb2JkcUxzdk1GSlZiT2IzZF9reGZnMWRKa1hBQlZleGdzYUpkRFExalBLY01FXy1oN0VGbzc5UThtUTgtZHVyekRmR3d-V3lKbE5qRmpNV0UxT0RVeU1URXlZak5tTXpnd05UaG1PRFprTkdZMU1EQXdOR1kyWkRjek1EZGtaV1ZpWXpOaVlqVmxabVF6WTJaa01tTTROek0wT0RJMUlpd2ljMlZqZEdsdmJqWWlMSHNpWVdSa2NtVnpjeUk2ZXlKamIzVnVkSEo1UTI5a1pTSTZJa0pGSWl3aWNHOXpkRU52WkdVaU9pSXhNREF3SWl3aWMzUnlaV1YwVG04aU9pSk5ZV2x1SUZOMGNtVmxkQ0F4SWl3aWRHOTNiaUk2SWtKeWRYTnpaV3h6SW4wc0ltUmhkR1VpT2lJeU1ESXpMVEE1TFRBM0lpd2laVzFoYVd3aU9pSnBibVp2UUc1emMya3RZbVV1WlhVaUxDSnBibk4wYVhSMWRHbHZia2xFSWpvaVRsTlRTUzFDUlMwd01TSXNJbTVoYldVaU9pSk9ZWFJwYjI1aGJDQlRiMk5wWVd3Z1UyVmpkWEpwZEhrZ1QyWm1hV05sSWl3aWIyWm1hV05sUm1GNFRtOGlPaUl3T0RBd0lEazROelkxSWl3aWIyWm1hV05sVUdodmJtVk9ieUk2SWpBNE1EQWdNVEl6TkRVaUxDSnphV2R1WVhSMWNtVWlPaUpQWm1acFkybGhiQ0J6YVdkdVlYUjFjbVVpZlYwIl19LCJleHAiOjE3MTQ2MzYwODAsImlhdCI6MTcxNDYzNTQ4MCwibm9uY2UiOiIyYjJiYWFhZS1jOTdkLTQzZGYtOTliYi0yYWJjNDQxYjFjMGIiLCJqdGkiOiJ1cm46dXVpZDoyMjNlZDYzMS0yNzVjLTQzNTgtOWJhYS1jNmRiNTkzZjBjYzcifQ.DLCXEONk8qd5Wyd2xQYcQje-ZQSVADdS4iJoJgRcq1BFS12qfGV0MzRvWt88Uwkw9CmnizALYDMymVbn7EDEVQ\"\n",
"from sdjwt.pex import decode_header_and_claims_in_jwt\n",
"\n",
"import base64\n",
"print(base64.urlsafe_b64decode(vp))\n",
"claims = decode_header_and_claims_in_jwt(vp)\n",
"# print(header)\n",
"print(claims)"
]
}
],
"metadata": {
Expand Down

0 comments on commit 6db1db1

Please sign in to comment.