pySafetyNet-Attestation
A package for verifying JWS-attestations from Google's SafetyNet.
Introduction
This package verifies SafetyNet attestations by following the steps described on the page. It allows you to specify what parts of the JWS-body you wish to verify, but will always atleast verify the certificate and validity of the JWS.
Usage
Online verification
from safetynet_attestation import Attestation
jws_token = "..."
api_key = "..."
attestation = Attestation(jws_token)
attestation.verify_online(api_key)
verify_online takes the following optional parameters:
url="<standard url>"- If you for some reason wish to validate against some other url.
<standard url> can be found at Google's SafetyNet documentation.
Offline verification
from safetynet_attestation import Attestation
jws_token = "..."
attestation = Attestation(jws_token)
attestation.verify_offline()
verify_offline takes the following optional parameters:
-
apkPackageName=None -
nonce=None -
apkDigestSha256=Nonestrof hex-values.
-
apkCertificateDigestSha256=None- Can be
listofstrorstr.
- Can be
-
check_basicIntegrity=True -
check_ctsProfileMatch=True -
hostname="attest.android.com"- Used for TLS validation of the certificate. Only modify if you know what you are doing.
A full explanation of the parameters above can be found at Google's SafetyNet documentation
Once a token has been verified, the following fields can be used:
-
header- A
dictof the token's header.
- A
-
body- A
dictof the token's body.
- A
-
certificates- A
listof base64-decoded certificates present in theheader.
- A
-
public_key_pem- The public key of the certificate.
Release files for pySafetyNet-Attestation 0.0.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pySafetyNet-Attestation-0.0.5.tar.gz | 3.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pySafetyNet_Attestation-0.0.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 7.3 kB
Release files / pySafetyNet-Attestation-0.0.5.tar.gz
| Download URL | pySafetyNet-Attestation-0.0.5.tar.gz |
|---|---|
| Size | 3.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ce9e9da79f4d9e58b2e0fbe929d44df01ac5417562f4fe59beb65b16c286a066
|
|
BLAKE2b-256 checksum How to use checksums |
ca421fa921784ae67db70a54e295ef0e137ffa57bd634b9a7dec5b5cde860b78
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.18.4 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.4.4
|
Release files / pySafetyNet_Attestation-0.0.5-py3-none-any.whl
| Download URL | pySafetyNet_Attestation-0.0.5-py3-none-any.whl |
|---|---|
| Size | 3.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d40a28ecd0ce30cc376b0a2a088a4f8445ec2e7bf6b07d665d6c901e18723602
|
|
BLAKE2b-256 checksum How to use checksums |
c07b87d8b8abcd5ebd8ca664101ee115c915b2b063602cd7e864065373328c62
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.18.4 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.4.4
|