├── .gitignore ├── LICENSE ├── README.md ├── composer.json └── src ├── Attestation.php ├── Config ├── AttestationConfigException.php ├── Config.php └── Exception │ └── WrongVerifierType.php ├── CustomEnum.php ├── Nonce.php ├── RootGoogleCertService.php ├── SafetyNetAttestationException.php ├── Statement ├── Exception │ ├── CertificateCALoadError.php │ ├── CertificateLoadError.php │ ├── EmptyAlgorithmField.php │ ├── InvalidJWSFormat.php │ ├── MissingCertificates.php │ └── RootCertificateError.php ├── Statement.php ├── StatementBody.php ├── StatementException.php └── StatementHeader.php └── Verifier ├── Exception ├── ApkDigestShaError.php ├── ApkNameError.php ├── BasicIntegrityFieldError.php ├── CertificateChainError.php ├── CertificateHostnameError.php ├── CheckSignatureException.php ├── EmptyNonce.php ├── GoogleRequestError.php ├── ProfileMatchFieldError.php ├── TimestampFieldError.php └── WrongNonce.php ├── OfflineVerifier.php ├── OnlineVerifier.php ├── Verifier.php ├── VerifierException.php └── VerifierType.php /.gitignore: -------------------------------------------------------------------------------- 1 | /examples 2 | /vendor 3 | /composer.lock 4 | /tmp 5 | /.idea -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/README.md -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/composer.json -------------------------------------------------------------------------------- /src/Attestation.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Attestation.php -------------------------------------------------------------------------------- /src/Config/AttestationConfigException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Config/AttestationConfigException.php -------------------------------------------------------------------------------- /src/Config/Config.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Config/Config.php -------------------------------------------------------------------------------- /src/Config/Exception/WrongVerifierType.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Config/Exception/WrongVerifierType.php -------------------------------------------------------------------------------- /src/CustomEnum.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/CustomEnum.php -------------------------------------------------------------------------------- /src/Nonce.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Nonce.php -------------------------------------------------------------------------------- /src/RootGoogleCertService.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/RootGoogleCertService.php -------------------------------------------------------------------------------- /src/SafetyNetAttestationException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/SafetyNetAttestationException.php -------------------------------------------------------------------------------- /src/Statement/Exception/CertificateCALoadError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/Exception/CertificateCALoadError.php -------------------------------------------------------------------------------- /src/Statement/Exception/CertificateLoadError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/Exception/CertificateLoadError.php -------------------------------------------------------------------------------- /src/Statement/Exception/EmptyAlgorithmField.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/Exception/EmptyAlgorithmField.php -------------------------------------------------------------------------------- /src/Statement/Exception/InvalidJWSFormat.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/Exception/InvalidJWSFormat.php -------------------------------------------------------------------------------- /src/Statement/Exception/MissingCertificates.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/Exception/MissingCertificates.php -------------------------------------------------------------------------------- /src/Statement/Exception/RootCertificateError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/Exception/RootCertificateError.php -------------------------------------------------------------------------------- /src/Statement/Statement.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/Statement.php -------------------------------------------------------------------------------- /src/Statement/StatementBody.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/StatementBody.php -------------------------------------------------------------------------------- /src/Statement/StatementException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/StatementException.php -------------------------------------------------------------------------------- /src/Statement/StatementHeader.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Statement/StatementHeader.php -------------------------------------------------------------------------------- /src/Verifier/Exception/ApkDigestShaError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/ApkDigestShaError.php -------------------------------------------------------------------------------- /src/Verifier/Exception/ApkNameError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/ApkNameError.php -------------------------------------------------------------------------------- /src/Verifier/Exception/BasicIntegrityFieldError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/BasicIntegrityFieldError.php -------------------------------------------------------------------------------- /src/Verifier/Exception/CertificateChainError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/CertificateChainError.php -------------------------------------------------------------------------------- /src/Verifier/Exception/CertificateHostnameError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/CertificateHostnameError.php -------------------------------------------------------------------------------- /src/Verifier/Exception/CheckSignatureException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/CheckSignatureException.php -------------------------------------------------------------------------------- /src/Verifier/Exception/EmptyNonce.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/EmptyNonce.php -------------------------------------------------------------------------------- /src/Verifier/Exception/GoogleRequestError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/GoogleRequestError.php -------------------------------------------------------------------------------- /src/Verifier/Exception/ProfileMatchFieldError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/ProfileMatchFieldError.php -------------------------------------------------------------------------------- /src/Verifier/Exception/TimestampFieldError.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/TimestampFieldError.php -------------------------------------------------------------------------------- /src/Verifier/Exception/WrongNonce.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Exception/WrongNonce.php -------------------------------------------------------------------------------- /src/Verifier/OfflineVerifier.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/OfflineVerifier.php -------------------------------------------------------------------------------- /src/Verifier/OnlineVerifier.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/OnlineVerifier.php -------------------------------------------------------------------------------- /src/Verifier/Verifier.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/Verifier.php -------------------------------------------------------------------------------- /src/Verifier/VerifierException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/VerifierException.php -------------------------------------------------------------------------------- /src/Verifier/VerifierType.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GorokhovDV/SafetyNetAttestation/HEAD/src/Verifier/VerifierType.php --------------------------------------------------------------------------------