webplace / eusphpelib
eusphpe library
2.0.1
2024-06-11 14:10 UTC
Requires
- php: ^7.4|^8.0
This package is not auto-updated.
Last update: 2025-01-07 14:00:21 UTC
README
Library provides decrypt, signing methods for Ukrainian EDS.
Installation
composer require webplace/eusphpelib
Requirements
You need to download and install PHP extension EUSPHPE. Installation manual is located in
- root
- EUSPHPE
- EUSignPHPDescription.doc
- EUSPHPE
Short manual for PHP-FPM (PHP v. 8.0)
- Create a directory - /usr/lib/php/8.0/eusphpe_extension
- Unpack downloaded archive to /usr/lib/php/8.0/eusphpe_extension directory | Pick only needed file (archive/Modules/Linux/64/eusphpei.64.8.0.3.tar)
- Add to /usr/lib/systemd/system/php8.0-fpm.service this line of code \
export LD_LIBRARY_PATH=/usr/lib/php/8.0/eusphpe_extension
- Create a new file /etc/php/8.0/fpm/conf.d/eusphpe.ini, to this file add \
extension=/usr/lib/php/8.0/eusphpe_extension/eusphpe.so
- Create a new directory for certificates (for example /var/certificates)
- Open
/usr/lib/php/8.0/eusphpe_extension/osplm.ini
and edit Path parameter (for example /var/certificates (directory from previous step)). - Upload your certificates in /var/certificates
- Restart FPM
service php8.0-fpm restart
Usage
<?php
use Webplace\EusphpeLib\MessageDecrypting;
use Webplace\EusphpeLib\AsicSigning;
$messageDecrypting = new MessageDecrypting('Key-6.dat', 'Password');
return $messageDecrypting->decryptToString('EncryptedData', 'Cert');
return $messageDecrypting->decrypt('EncryptedData', 'Cert')->toString();
return $messageDecrypting->decrypt('EncryptedData', 'Cert')
->withVerify()
->verify()
->toString();
$asicSigning = new AsicSigning('Key-6.dat', 'Password');
return $asicSigning->signToString('Data to sign', 'SignedData.txt');
return $asicSigning->sign('Data to sign', 'SignedData.txt')->toString();
echo $asicSigning->sign('Data to sign', 'SignedData.txt')
->withVerify()
->verify()
->toString();
return $asicSigning->getDriver()->toString();
Versioning
Maintained under the Semantic Versioning guidelines.
Reference
- Key Certificate Authority user. Signature library https://iit.com.ua
- Example on https://github.com/andrew-svirin/eusphpe-php