Skip to content

Ragaga/certificate-checker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHP ^7.2 CryptoPro/Rutoken Certificate checker

Installation:

composer require ragaga/certificate-checker

or add to composer.json in require

"ragaga/certificate/checker": "^1.0"

Usage:

use Ragaga\CertificateChecker\CertificateChecker;
use Ragaga\CertificateChecker\CheckerFactory;
use Ragaga\CertificateChecker\Enums\CryptoProvider;
use Ragaga\CertificateChecker\Checkers\RutokenChecker;
use Ragaga\CertificateChecker\Checkers\CryptoproChecker;
use Ragaga\CertificateChecker\SignatureData;

Variations of factory creation

  • Default
$factory = new CheckerFactory();
  • Customize on creation
$factory = new CheckerFactory([
  CryptoProvider::CRYPTOPRO => CryptoproChecker::class,
  CryptoProvider::RUTOKEN =>  function(){
      $tmpDir = '/tmp/';
      $cryptoproPath = '/opt/cprocsp/bin/amd64/cryptcp';
      return new RutokenChecker($cryptoproPath, $tmpDir);
  }
]);
  • Rebound after creation
$factory = new CheckerFactory();
$factory->bind(CryptoProvider::RUTOKEN, function(){
   $tmpDir = '/tmp/';
   $cryptoproPath = '/opt/cprocsp/bin/amd64/cryptcp';
   return new RutokenChecker($cryptoproPath, $tmpDir);
});

Check signature

$signatureData = new SignatureData('source', 'signature', CryptoProvider::RUTOKEN);

$checker = new CertificateChecker($factory);

$signatureValid = $checker->isSignatureValid($signatureData);

About

Cryptopro/Rutoken certificate checker

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages