bigbank / digidoc
Library to interface with the Estonian national identification platform (DigiDocService)
Installs: 268 942
Dependents: 0
Suggesters: 0
Security: 0
Stars: 6
Watchers: 3
Forks: 2
Open Issues: 0
Requires
- php: >=5.6
- ext-curl: *
- ext-mbstring: *
- ext-openssl: *
- ext-soap: *
- ext-xml: *
- ircmaxell/random-lib: ~1.1
- league/container: ~2.0
Requires (Dev)
This package is not auto-updated.
Last update: 2024-12-21 20:24:55 UTC
README
This is a PHP library for communicating with the Certification Centre's DigiDocService API. The API is SOAP-based, documentation is available here.
Install
Via Composer
$ composer require bigbank/digidoc
The library requires PHP >=5.6
, curl
, soap
, xml
, mbstring
and openssl
extensions.
Usage
// Instantiate the main class $digiDoc = new DigiDoc(DigiDoc::URL_TEST); // Ask for a service (see: Services) /** @var AuthenticatorInterface $authenticator */ $authenticator = $digiDoc->getService(AuthenticatorInterface::class); // Start mobile ID authentication $userDetails = $authenticator->authenticate('14212128025', '+37200007', 'Testimine', 'My Test App', false); // Wait for the user to complete the process $authenticator->waitForAuthentication(function ($authResult) { return $authResult === 'USER_AUTHENTICATED' ? 'welcome!' : 'not authenticated'; });
More detailed usage examples are provided in the examples directory.
To use a HTTP proxy, set HTTP_PROXY
environment variable.
Services
The library provides access to the following services:
Authentication With Mobile ID
Authenticate the user with his mobile ID.
- Interface Name:
AuthenticatorInterface
- DigiDocService:
7. Queries and Responses for Authentication / 7.1 MobileAuthenticate
Usage
See examples/mobile/authentication.php.
Digital Signature With Mobile ID
Allow users to digitally sign files using mobile ID.
- Interface Name:
FileSignerInterface
- DigiDocService:
8. Queries and Responses for Digital Signature
Usage
See examples/mobile/signing.php.
Change log
Please see CHANGELOG for more information what has changed recently.
Testing
$ composer test
Known Issues
- Challenge verification is not done for authentication queries (see
Challenge
andSPChallenge
parameters forMobileAuthenticate
query). This is planned in future versions.
Contributing
Please see CONTRIBUTING and CONDUCT for details.
Security
If you discover any security related issues, please email :author_email instead of using the issue tracker.
Credits
License
The Apache 2 License. Please see License File for more information.