PHPackages                             xigen/comodo-decode-csr - 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. xigen/comodo-decode-csr

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

xigen/comodo-decode-csr
=======================

v0.4.2(8y ago)2442PHP

Since Apr 1Pushed 8y ago3 watchersCompare

[ Source](https://github.com/XigenChris/ComodoDecodeCSR)[ Packagist](https://packagist.org/packages/xigen/comodo-decode-csr)[ RSS](/packages/xigen-comodo-decode-csr/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (3)Versions (12)Used By (0)

ComodoDecodeCSR
===============

[](#comododecodecsr)

[![Scrutinizer Code Quality](https://camo.githubusercontent.com/1927e3531361bdb334d3ac91b2b2eeecbaebdca8973271ee9b28d2d3814369eb/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f586967656e43687269732f436f6d6f646f4465636f64654353522f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/XigenChris/ComodoDecodeCSR/?branch=master)[![Code Coverage](https://camo.githubusercontent.com/7db5b82bb363d095c22d2e7deb9201673ccd61950dfbe6f22888b3cbfea9d513/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f586967656e43687269732f436f6d6f646f4465636f64654353522f6261646765732f636f7665726167652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/XigenChris/ComodoDecodeCSR/?branch=master)[![Travis CI](https://camo.githubusercontent.com/00e585399c23597fa2bf2ea99203a1d303bad0e76e984c6db87852681ea6ac22/68747470733a2f2f7472617669732d63692e6f72672f586967656e43687269732f436f6d6f646f4465636f64654353522e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/XigenChris/ComodoDecodeCSR)

A simple PHP library to assist with passing a DVC (Domain Verification Check) check by Comodo. It uses a API Endpoint documented [here](https://goo.gl/pZOWhL)to get the MD5 &amp; SHA1 hashes. It can then check that these are installed on a domain by requesting .

For more infomation about Domain Control Validation read [this](https://goo.gl/7jDJWW)

Installation
============

[](#installation)

Installation is done via composer: `composer require xigen/comodo-decode-csr`

Requirements
============

[](#requirements)

Below is a list of requirements. There are unit tests to check compatibility with the diffrent PHP versions.

- PHP 5.5+ (Tested 5.5, 5.6, 7 &amp; HHVM)
- [Guzzle](https://github.com/guzzle/guzzle) 6.X
- The php-curl extension

Example Usage
=============

[](#example-usage)

This will use the test CSR within the repo and get the MD5 and SHA1 hashes. Then it will check that the text file is installed correctly.

```
require 'vendor/autoload.php';

$ComodoDecodeCSR = new ComodoDecodeCSR();

//Get the csr from a file as a string or could just use a string
$csr = file_get_contents('certificate/test.csr');
$ComodoDecodeCSR->setCSR($csr);

$Hashes = $ComodoDecodeCSR->fetchHashes();
$Check = $ComodoDecodeCSR->checkInstalled();
var_dump($Hashes, $Check);
/*
array(2) {
  'md5' =>
  string(32) "98EB197EF83F7A9EB736ED7CEBD413CE"
  'sha1' =>
  string(40) "DA9C72B6F6BCB05772BF8543E19D1A41B0210E84"
}
bool(true)
*/

```

Console Application
===================

[](#console-application)

There is also a console application to quickly test a domain. To use it you will need to install this globaly via composer:

`composer global require xigen/comodo-decode-csr`

Now the command `ComodoDecodeCSR` *should* be avalible (if not check you path includes `~/.composer/vendor/bin/`). You can now check if a domain will pass the DVC like so:

```
➜ ComodoDecodeCSR check certificate.csr
Success!
This domain should pass DVC

```

Licence and Contribution
========================

[](#licence-and-contribution)

This source code is released under the GNU General Public License v3. Contributions are welcome in the form of pull requests. The code is written to PSR-2 standards. PHPUnit tests have been written and are located in the `tests/` folder.

###  Health Score

28

—

LowBetter than 57% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity60

Established project with proven stability

 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

Every ~49 days

Recently: every ~94 days

Total

9

Last Release

3249d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3466ea81af4a2c2fd795a64d7b777294e441b28bb19367d0dfd755a1090f4d6c?d=identicon)[XigenChris](/maintainers/XigenChris)

---

Top Contributors

[![AlphaRecon19](https://avatars.githubusercontent.com/u/3878240?v=4)](https://github.com/AlphaRecon19 "AlphaRecon19 (55 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/xigen-comodo-decode-csr/health.svg)

```
[![Health](https://phpackages.com/badges/xigen-comodo-decode-csr/health.svg)](https://phpackages.com/packages/xigen-comodo-decode-csr)
```

###  Alternatives

[shlinkio/shlink

A self-hosted and PHP-based URL shortener application with CLI and REST interfaces

4.7k4.0k](/packages/shlinkio-shlink)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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