appdb-official / php-app-attest-validator

PHP app attestation and assertion validator library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

App Attestation and data assertion validation library

This library allows you to validate appdb app attestation with data that you've got from GetAttestationData method of appdb app attest API.

More information about app attestation can be found on Documentation website

Installation

composer require appdb/attestvalidator

Validation of attestation (sample code)

require_once 'vendor/autoload.php';

print "Attestation validation result:\n";
print_r(\Appdb\Attestvalidator\AttestValidator::validateAttestation(
    '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',
    "qwerty",
    "y4hpTw+/uxomKiTcbrReoReWpQ3T8hafIS/sd7EXwYM=",
    "dac4b2128c48fd7541688838d89b482057c1355e0f41d18ea6d3b6781bc310a0",
    true
));

print "Assertion validation result:\n";
print_r(\Appdb\Attestvalidator\AttestValidator::validateAssertion(
'omlzaWduYXR1cmVYRzBFAiEAkMCy7LDc0mXNLCGwb7l//MaGZqgwhu05Y0HLxHrdAQECICT3O+fZ+FE+lSVutwv51luyv65lQRgDudmRGC63czG5cWF1dGhlbnRpY2F0b3JEYXRhWCXaxLISjEj9dUFoiDjYm0ggV8E1Xg9B0Y6m07Z4G8MQoEAAAAAF',
"labore nostrud voluptate velit cillum eiusmod cillum enim nostrud ea",
    "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcQ1u71/BqdwJuf238s9YHIGG7WKx\nx4/xzneKgm30U35+g+kC0Ls2V6tEGIAlJPw0OmCp5bbozhC3fdZAatruxw==\n-----END PUBLIC KEY-----\n",
"dac4b2128c48fd7541688838d89b482057c1355e0f41d18ea6d3b6781bc310a0",
    0
));

About

PHP app attestation and assertion validator library

License:GNU General Public License v3.0


Languages

Language:PHP 100.0%