Skip to content

Package E-Sign BSrE untuk memudahkan penggunaan E-Sign BSrE (Balai Sertifikasi Elektronik) API dari BSSN (Badan Sandi dan Siber Negara) pada bahasa PHP

License

Notifications You must be signed in to change notification settings

Diskominfotik-Banda-Aceh/E-Sign-BSrE-PHP

Repository files navigation

Table of contents

E-Sign BSrE

Latest Version on Packagist Total Downloads

E-Sign BSrE adalah package untuk memudahkan penggunaan API E-Sign dari BSSN dengan bahasa PHP

Instalisasi

Anda bisa install package via composer:

composer require diskominfotik-banda-aceh/e-sign-bsre-php

Jika Anda menggunakan PHP Native tambahkan baris berikut:

require 'vendor/autoload.php';

Penggunaan

Kode

Kode yang disediakan ada beberapa yaitu tanda tangan digital invisible, verifikasi tanda tangan digital dan tanda tangan visible (soon)

  • Tanda tangan digital invisible
$esign = new DiskominfotikBandaAceh\ESignBsrePhp\ESignBSrE($baseUrl, $username, $password);
$response = $esign->setFile($file, $filename)->sign($nik, $passphrase);
$response->getStatus(); //Get status response (int) - 404, 200 etc
$response->getErrors(); //Get error response
$response->getData(); //Get data as blob pdf
  • Verifikasi tanda tangan digital
$esign = new DiskominfotikBandaAceh\ESignBsrePhp\ESignBSrE($baseUrl, $username, $password);
$response = $esign->setFile($file, $filename)->verification();
$response->getStatus(); //Get status response (int)
$response->getErrors(); //Get error response
$response->getData(); //Get data as array (tergantung dari API BSrE)

Detail

Keterangan Variable

// $baseUrl adalah baseUrl dari sistem sign BSrE. Contoh : https://sign.domain.com/
// $username adalah username yang diberikan dari sistem sign BSrE
// $password adalah password yang diberikan dari sistem sign BSrE
// $file adalah content dari file pdf yang akan di sign (Contoh pengambilan file dapat dilihat dibawah)
// $filename adalah nama file pdf yang akan di sign

$esign = new DiskominfotikBandaAceh\ESignBsrePhp\ESignBSrE($baseUrl, $username, $password);
$response = $esign->setFile($file, $filename)->verification();

Contoh kode mengambil file

Terdapat beberapa cara untuk mengambil file yang terdapat pada aplikasi

  • Menggunakan Utils dari GuzzleHttp
$file = GuzzleHttp\Psr7\Utils::tryFopen('/path/to/file.pdf', 'r')
  • Menggunakan file_get_contents
$file = file_get_contents('/path/to/file.pdf')

Changelog

Lihat CHANGELOG untuk informasi lebih lanjut terkait perubahan terbaru.

Contributing

Lihat CONTRIBUTING untuk lebih detailnya.

Keamanan

Jika anda menemukan masalah kerentanan keamanan pada package, tolong email ke diskominfotikbna[at]gmail.com

License

The MIT License (MIT). Please see License File for more information.