This repository contains scripts that help you validate QR codes.

Overview

Validation tools

This repository contains scripts that help you validate QR codes.

It's hacky, and a warning for Apple Silicon users: the dependencies I use are a mess on your platform. I've given up trying to get it working.

Initializing

First make sure that you have Python 3.9+ installed and working.

Secondly, install all the dependencies:

pip3 install -r requirements.txt

Thirdly, update trustlist.json using the response from the gateway.

No access to the gateway? Then you can use the German trust list:

https://de.dscg.ubirch.com/trustList/DSC/

Just remove the first line (it's a signature of the document).

validate_quality_assurance.py

This tool validates the encoding, schema and signature of all the Quality Assurance QR codes.

The QA repository can be found here:

https://github.com/eu-digital-green-certificates/dcc-quality-assurance

It has the following arguments, both of which are optional and have sensible defaults:

--repo 'path/to/dcc-quality-assurance'
--countries 'NL,DE,SE'

validate_hcert.py

This tool validates the encoding, schema and signature of all the hcert string. It reads the hcerts from std-in, one line per hcert, and validates in serial.

Example (unix-likes)

cat examples/hcert-examples.txt | python3 validate_hcert.py

Example (windows)

type examples\hcert-examples.txt | python validate_hcert.py

qr_to_hcert.py

This little tool converts a QR into a hcert string and dumps that to std-out.

Now you can do this to validate a QR code:

python qr_to_hcert.py examples/VAC.png | python validate_hcert.py

hcert_to_qr.py

Takes QRs from std:in; for each line, generates a QR. Dumps all QRs to std:out as base64. The last QR created is saved as "my.png" in the current folder

cat examples/hcert.txt | python hcert_to_qr.py

print_payload_hcert.py

Takes QRs from std:in; for each line, unpacks hcert and dumps all of the output to std:out.

cat examples/hcert.txt | python print_payload_hcert.py

print_payload_hcert.py

Takes a QR, parses it, unpacks hcert and dumps all of the output to std:out.

python print_payload_qr.py --file my.png
Owner
Ryan Barrett
Ryan Barrett
EVE-NG tools, A Utility to make operations with EVE-NG more friendly.

EVE-NG tools, A Utility to make operations with EVE-NG more friendly. Also it support different snapshot operations with same style as Libvirt/KVM

Bassem Aly 8 Jan 05, 2023
Casefy (/keɪsfaɪ/) is a lightweight Python package to convert the casing of strings

Casefy (/keɪsfaɪ/) is a lightweight Python package to convert the casing of strings. It has no third-party dependencies and supports Unicode.

Diego Miguel Lozano 12 Jan 08, 2023
Python based tool to extract forensic info from EventTranscript.db (Windows Diagnostic Data)

EventTranscriptParser EventTranscriptParser is python based tool to extract forensically useful details from EventTranscript.db (Windows Diagnostic Da

P. Abhiram Kumar 24 Nov 18, 2022
An OData v4 query parser and transpiler for Python

odata-query is a library that parses OData v4 filter strings, and can convert them to other forms such as Django Queries, SQLAlchemy Queries, or just plain SQL.

Gorilla 39 Jan 05, 2023
Software to help automate collecting crowdsourced annotations using Mechanical Turk.

Video Crowdsourcing Software to help automate collecting crowdsourced annotations using Mechanical Turk. The goal of this project is to enable crowdso

Mike Peven 1 Oct 25, 2021
A random cats photos python module

A random cats photos python module

Fayas Noushad 6 Dec 01, 2021
This two python programs can convert km to miles and miles to km

km-to-miles These two little python programs can convert kilometers to miles and miles to kilometers Needed Python3 or a online python compiler with t

Chandula Janith 3 Jan 30, 2022
A small python library that helps you to generate localization strings for your mobile projects.

LocalizationUtiltiy A small python library that helps you to generate localization strings for your mobile projects. This small script aims to help yo

1 Nov 12, 2021
Simple web index to use bloom filter for Pwned Passwords

pwbloom Simple web index to use bloom filter for Pwned Passwords The index.py runs a simple CGI web service checking passwords with a bloom filter for

Hanno Böck 4 Nov 23, 2021
Entropy-controlled contexts in Python

Python module ordered ordered module is the opposite to random - it maintains order in the program. import random x = 5 def increase(): global x

HyperC 36 Nov 03, 2022
We provide useful util functions. When adding a util function, please add a description of the util function.

Utils Collection Motivation When we implement codes, we often search for util functions that are already implemented. Here, we are going to share util

6 Sep 09, 2021
VerSign: Easy Signature Verification in Python

VerSign: Easy Signature Verification in Python versign is a small Python package which can be used to perform verification of offline signatures. It a

Muhammad Saif Ullah Khan 3 Dec 01, 2022
Animation retargeting tool for Autodesk Maya. Retargets mocap to a custom rig with a few clicks.

Animation Retargeting Tool for Maya A tool for transferring animation data and mocap from a skeleton to a custom rig in Autodesk Maya. Installation: A

Joaen 63 Jan 06, 2023
✨ Un code pour voir les disponibilités des vaccins contre le covid totalement fait en Python par moi, et en français.

Vaccine Notifier ❗ Un chois aléatoire d'un article sur Wikipedia totalement fait en Python par moi, et en français. 🔮 Grâce a une requète API, on peu

MrGabin 3 Jun 06, 2021
Simple collection of GTPS Flood in Python.

GTPS Flood Simple collection of GTPS Flood in Python. NOTE Give me credit if you use this source, don't trade/sell this tool, And USE AT YOUR OWN RISK

PhynX 6 Dec 07, 2021
Minimal Windows system information tool written in Python

wfetch wfetch is a Minimal Windows system information tool written in Python (Only works on Windows) Installation First of all have python installed.

zJairO 3 Jan 24, 2022
Use generator for range function

Use the generator for the range function! installation method: pip install yrange How to use: First import yrange in your application. You can then wo

1 Oct 28, 2021
MongoDB utility to inflate the contents of small collection to a new larger collection

MongoDB Data Inflater ("data-inflater") The data-inflater tool is a MongoDB utility to automate the creation of a new large database collection using

Paul Done 3 Nov 28, 2021
Napari plugin for loading Bitplane Imaris files .ims

napari-imaris-loader Napari plugin for loading Bitplane Imaris files '.ims'. Notes: For this plugin to work "File/Preferences/Experimental/Render Imag

Alan Watson 4 Dec 01, 2022
A Python package for floating-point binary fractions. Do math in base 2!

An implementation of a floating-point binary fractions class and module in Python. Work with binary fractions and binary floats with ease!

10 Oct 29, 2022