Skip to content

About

PHP app attestation and assertion validator library

Resources

Stars

7 stars

Watchers

0 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

Resources

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages