PHPackages                             ahs9/eds-checker - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. ahs9/eds-checker

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ahs9/eds-checker
================

1.0(3y ago)09PHPPHP ~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0

Since Aug 25Pushed 3y ago1 watchersCompare

[ Source](https://github.com/ahs9/eds-checker)[ Packagist](https://packagist.org/packages/ahs9/eds-checker)[ RSS](/packages/ahs9-eds-checker/feed)WikiDiscussions main Synced yesterday

READMEChangelog (1)Dependencies (1)Versions (2)Used By (0)

eds-checker
===========

[](#eds-checker)

Installation
------------

[](#installation)

```
$ composer require ahs9/eds-checker
```

Usage
-----

[](#usage)

Use this library to compare user-data (from DB or from POST) with data in certificate (electronic digital signature).

Examples
--------

[](#examples)

### Creating template

[](#creating-template)

Certificates have different structure. Template shows to parser where user-data is. If template will be deep not enough, parser will find duplicates of oid. For example, certificate has several keys `1.2.643.3.131.1.1`. OID duplicates will throw exception. Template example:

```
$template = [
    ParserAsn::TEMPLATE_SEQUENCE => [
        ParserAsn::TEMPLATE_ARRAY => [
            0 => [
                ParserAsn::TEMPLATE_ARRAY => [
                    0 => null,
                    1 => null,
                    2 => null,
                    3 => null,
                    4 => null,
                    5 => ParserAsn::TEMPLATE_RESULT
                ]
            ]
        ]
    ]
];
```

### Creating parser-object

[](#creating-parser-object)

```
$parser = new ParserAsn(
    $signature, // base64 encoded binary certificate
    [
        CertificateItem::OID_INN,
        CertificateItem::OID_SURNAME,
        CertificateItem::OID_GIVEN_NAME,
    ],
     $template
 );
```

### Debugging template

[](#debugging-template)

For debugging your template use ParserAsn::getSplitedAsn(). You can dump result when you fill out the template step by step. Every step of template should deepen the ASN object. You need to get a part of certificate with no duplicates of oid.

```
$template = [
    ParserAsn::TEMPLATE_SEQUENCE => []
];
var_dump($parser->getSplitedAsn());
```

then

```
$template = [
    ParserAsn::TEMPLATE_SEQUENCE => [
        ParserAsn::TEMPLATE_ARRAY => [
            0 => []
        ]
    ]
];
var_dump($parser->getSplitedAsn());
```

deeper and deeper until you get user-data

### Getting parse-result

[](#getting-parse-result)

```
$certificateData = $parser->getComparedData();
```

### Creating data-object for comparing from post

[](#creating-data-object-for-comparing-from-post)

```
$userData = new ComparedData(
    [
        CertificateItem::OID_INN => $post['inn'],
        CertificateItem::OID_SURNAME => $post['surname']
        CertificateItem::OID_GIVEN_NAME => $post['secondName'] . ' ' . $post['lastName']
    ]
);
```

### Comparing

[](#comparing)

```
$checker = new Checker($userData, $certificateData);
if (!$checker->compare()) {
    var_dump($checker->getErrors());
}
// do staff
```

###  Health Score

24

—

LowBetter than 31% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1407d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/491c97f1d807edee7cd8215632c0671dfbf28334cdcef1b8b02dfbeaa9c8d578?d=identicon)[ahs9](/maintainers/ahs9)

---

Top Contributors

[![ahs9](https://avatars.githubusercontent.com/u/111854750?v=4)](https://github.com/ahs9 "ahs9 (1 commits)")

### Embed Badge

![Health badge](/badges/ahs9-eds-checker/health.svg)

```
[![Health](https://phpackages.com/badges/ahs9-eds-checker/health.svg)](https://phpackages.com/packages/ahs9-eds-checker)
```

###  Alternatives

[rapidwebltd/php-uk-bank-holidays

This library enables developers to easily retrieve UK Bank Holiday details. Holidays can be retrieved for England &amp; Wales, Scotland, and Northern Ireland. Information about these holidays can optionally be restricted by month or date.

12424.4k](/packages/rapidwebltd-php-uk-bank-holidays)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
