Show / Hide Table of Contents
Editar no GitHub

Projeto de exemplos em PHP 5.5+

O Projeto de exemplos em PHP 5.5+ mostra como usar o Rest PKI junto com o Web PKI em um projeto usando o PHP 5.5+ (incluindo 7.x). Isto é hospedado no GitHub em:

https://github.com/LacunaSoftware/PkiSuiteSamples/tree/master/php/plain

Note

Para projetos destinados a versões anteriores do PHP, clique aqui.

Executando o projeto

  1. Download do projeto ou clonar o repositório
  2. No prompt de comando, navegue até a pasta php/plain e execute composer install para baixar as dependências (se você não tiver Composer instalado, pegue aqui)
  3. Ainda na pasta php/plain, execute composer start para iniciar o servidor embutido do PHP
  4. Abra http://localhost:8000 no navegador

Mapa do projeto

Esta seção lista tem onde encontrar as partes relevantes em cada amostra de recurso no projeto.

Autentificação com certificado digital

  • authentication-rest/index.php
    • JavaScript: authentication-form.js
  • authentication-rest/complete.php

Assinatura PAdES com arquivo já no servidor

  • pades-signature-rest/index.php
    • JavaScript: signature-form.js
  • pades-signature-rest/complete.php

Assinatura PAdES com arquivo enviado pelo usuário

Após o upload do arquivo (que é grosseiramente implementado apenas para fins de demonstração em upload.php) é feito o fluxo de controle é o mesmo que na amostra Assinatura PAdES com arquivo já no servidor, mas com parâmetro de URL userfile preenchidos.

Assinatura conjunta PAdES

Após o fluxo de controle da amostra Assinatura PAdES com arquivo já no servidor está concluído e o link Co-sign with another certificate é clicado, o mesmo fluxo de controle é repetido, mas agora com parâmetro de URL userfile preenchidos.

Marcas PAdES

Esse recurso é demonstrado como uma configuração opcional no Assinatura PAdES com arquivo já no servidor, amostra que por padrão começa comentada. Para ativá-lo, remova o comentário da linha a seguir pades-signature-rest/index.php:

array_push($signatureStarter->pdfMarks, getPdfMark(1));
Tip

Tente mudar o argumento para a função getPdfMark()para ver diferentes configurações de marcas PDF.

O código relevante está no arquivo PadesVisualElementsRest.php, função getPdfMark().

Assinatura PAdES usando chave do servidor

  • pades-server-key-express/index.php

    Assinatura PAdES sem a comunicação com cliente

Ainda não está disponível neste projeto.

Abrir/validar uma assinatura PAdES existente

  • open-pades-rest/index.php

Versão para impressão

Após o fluxo de controle da amostra Assinatura PAdES com arquivo já no servidor está concluído e o link Download a printer-friendly version of the signed file é clicado, o fluxo vai para o arquivo printer-friendly-pades-rest/index.php, mas com parâmetro de URL file preenchidos.

O PDF gerado contém links para o arquivo check.php, que mostra detalhes das assinaturas.

Assinatura CAdES com arquivo já no servidor

  • cades-signature-rest/index.php
    • JavaScript: signature-form.js
  • cades-signature-rest/complete.php

Assinatura CAdES com upload do arquivo pelo usuário

Depois que o upload do arquivo (que é grosseiramente implementado apenas para fins de demonstração no upload.php) é feito o fluxo de controle é o mesmo que na amostra CAdES signature with file already on server, mas com parâmetro de URL userfile preenchidos.

Assinatura conjunta CAdES

Após o fluxo de controle da amostra CAdES signature with file already on server está concluído e o link Co-sign with another certificate é clicado, o mesmo fluxo de controle é repetido, mas agora com parâmetro de URL cmsfile preenchidos.

Assinatura CAdES usando chave do servidor

  • cades-signature-server-key.php

Abrir/validar uma assinatura CAdES existente

  • open-cades-rest/index.php

Assinatura XML do documento inteiro

  • xml-signature-rest/index.php
    • JavaScript: signature-form.js
  • xml-signature-rest/complete.php

Assinatura XML de um elemento

  • xml-nfe-signature-rest/index.php
    • JavaScript: signature-form.js
  • xml-nfe-signature-rest/complete.php

Assinatura XAdES de um elemento

Não está disponível neste projeto.

Abrir/validar assinatura de um arquivo XML existente

  • open-xml-rest/index.php

Lote de assinatura PAdES

  • batch-pades-signature-rest/index.php
    • JavaScript: batch-signature-rest-form.js
    • Manipuladores AJAX: batch-pades-signature-rest/start.php e batch-pades-signature-rest/complete.php

Lote otimizado de assinaturas PAdES

Não está disponível neste projeto.

Lote de assinaturas CAdES

Não está disponível neste projeto.

Lote de assinaturas XML de elementos no mesmo documento

  • batch-xml-element-signature.php
    • JavaScript: batch-xml-element-signature-form.js
    • AJAX handlers: batch-xml-element-signature-start.php and batch-xml-element-signature-complete.php
Back to top Copyright © 2015-2020 Lacuna Software