causal/dgc
Composer 安装命令:
composer require causal/dgc
包简介
Library to decode Digital Green Certificates as defined by the eHealth Network
README 文档
README
DGC is a PHP library that decodes Digital Green Certificates. In short, it decodes COVID-19 certificates.
Install
Install with composer.
$ composer require causal/dgc
Usage
$decoder = new \Causal\DGC\Decoder(); // The string as embedded in the QR code of the certificate (e.g., you can use https://qrafter.com/) $input = 'HC1:NCFOXNYTSFDHJI89.O%26V$L.BUTRDUV...'; // Extract issuer, issuing date, expiring date, type of vaccine, manufacturer, etc. $data = $decoder->decodeFromQR($input);
{
1: "DE",
4: 1643356073,
6: 1622316073,
-260: {
1: {
v: [
{
ci: "URN:UVCI:01DE/IZ12345A/5CWLU12RNOB9RXSEOP6FG8#W",
co: "DE",
dn: 2,
dt: "2021-05-29",
is: "Robert Koch-Institut",
ma: "ORG-100031184",
mp: "EU/1/20/1507",
sd: 2,
tg: "840539006",
vp: "1119349007"
}
],
dob: "1964-08-12",
nam: {
fn: "Mustermann",
gn: "Erika",
fnt: "MUSTERMANN",
gnt: "ERIKA"
},
ver: "1.0.0"
}
}
}
You may then prettify the data so that they are more human-readable:
// Basically this returns the exact same data you read in the official Swiss app "Covid Cert" $humanReadableData = $decoder->prettify($data);
{
issuer: "DE",
issuingDate: "2021-05-29T21:21:13+02:00",
expiringDate: "2022-01-28T08:47:53+01:00",
certificate: {
type: "vaccination",
person: {
familyName: "Mustermann",
givenName: "Erika",
familyNameTransliterated: "MUSTERMANN",
givenNameTransliterated: "ERIKA",
dateOfBirth: "1964-08-12"
},
info: {
singleDoses: 2,
diseaseOrAgentTargeted: "COVID-19",
vaccineType: "SARS-CoV2 mRNA vaccine",
product: "COVID-19 Vaccine Moderna",
manufacturer: "Moderna Biotech Spain S.L.",
date: "2021-05-29",
country: "DE",
issuer: "Robert Koch-Institut",
id: "URN:UVCI:01DE/IZ12345A/5CWLU12RNOB9RXSEOP6FG8#W"
}
}
}
Types of Certificates
Following types of certificates are supported:
- Vaccination certificate
- Test certificate
- Recovery certificate
Disclaimer
- There is currently NO CHECK of the digital signature (it is not clear at the moment whether public keys of the various issuers are available to anyone).
- Human-readable conversion is based on European data mapping on 2021/08/30.
- This library is provided as-is, use it at your own risk!
References
- https://ec.europa.eu/health/sites/default/files/ehealth/docs/digital-green-certificates_v3_en.pdf
- https://ec.europa.eu/health/sites/default/files/ehealth/docs/digital-green-certificates_dt-specifications_en.pdf
- https://covid-19-diagnostics.jrc.ec.europa.eu/devices/hsc-common-recognition-rat
License
The MIT License (MIT). Please see License File for more information.
causal/dgc 适用场景与选型建议
causal/dgc 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 21 次下载、GitHub Stars 达 1, 最近一次更新时间为 2021 年 08 月 30 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 causal/dgc 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 causal/dgc 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 21
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2021-08-30