feimx/csd
Composer 安装命令:
composer require feimx/csd
包简介
Este paquete te permite encriptar, validar y convertir archivos .cer y .key en .pem para la facturacion electronica en méxico
README 文档
README
Este paquete te permite encriptar, validar y convertir archivos .cer y .key en .pem para la facturacion electronica en méxico.
Introducción
Csd provee un mecanismo para convertir tus archivos .cer y .key a .pem, los necesarios para poder facturar electronicamente en méxico.
Asi mismo te permite encriptar tus llaves (.key) a .der pasando la contraseña que necesites.
require 'vendor/autoload.php'; use JorgeAndrade\Csd; use JorgeAndrade\Exceptions\CsdException; $cer = getcwd() . "/csds/aad990814bp7_1210261233s.cer"; $key = getcwd() . "/csds/aad990814bp7_1210261233s.key"; $rfc = "AAD990814BP7"; $pass = "12345678a"; $validar = new Csd($cer, $key, $rfc, $pass, $path = getcwd() . "/csds/"); try { $validar->convertCerToPem(); $validar->convertKeyToPem(); } catch (CsdException $e) { var_dump($e->getMessage()); }
Instalación
Simplemente instala el paquete con composer:
composer require jorgeandrade/csd
Una vez composer termine de instalar el paquete simplemente importa el paquete y crea una nueva instancia pasando los parametros correspondientes:
require 'vendor/autoload.php'; use JorgeAndrade\Csd; use JorgeAndrade\Exceptions\CsdException; $cer = getcwd() . "/csds/aad990814bp7_1210261233s.cer"; $key = getcwd() . "/csds/aad990814bp7_1210261233s.key"; $rfc = "AAD990814BP7"; $pass = "12345678a"; //contraseña de la llave privada $path = getcwd() . "/csds/"; //este parametro es opcional, por defecto usa **getcwd() . "/csds/"** $validar = new Csd($cer, $key, $rfc, $pass, $path);
Uso
Convertir, encryptar, validar y obtener es extremadamente facil. Si algo sale mal las funciones arrojaran una exception de tipo JorgeAndrade\Exceptions\CsdException.
Convirtiendo CER en PEM
$validar->convertCerToPem();
Convirtiendo KEY en PEM
$validar->convertKeyToPem();
Validar vigencia del csd
Si todo sale bien retornara un array con la fecha inicial y la final de validez del certificado, cada uno extiende de la clase DateTime.
$periodo = $validar->verifyValidityPeriod(); var_dump($periodo); /** array(2) { ["fecha_inicial"]=> object(DateTime)#4 (3) { ["date"]=> string(26) "2012-10-26 19:22:43.000000" ["timezone_type"]=> int(2) ["timezone"]=> string(3) "GMT" } ["fecha_final"]=> object(DateTime)#5 (3) { ["date"]=> string(26) "2016-10-26 19:22:43.000000" ["timezone_type"]=> int(2) ["timezone"]=> string(3) "GMT" } } **/
Encriptar KEY.PEM en DER
Para poder encryptar, primero necesitas convertir de key en pem
$validar->convertKeyToPem(); $validar->encryptPemInToDer($pass);
Verificar que es un CSD valido
$check = $validar->verifyValidCsd(); //(bool)
Obtener numero de certificado
$no_certificado = $validar->getNoCertificado();
Licencia
Csd programa de codigo abierto bajo la licencia MIT license
统计信息
- 总下载量: 65
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2018-04-16