Pular para o conteúdo principal

Projeto de exemplos em PHP 5.3/5.4

O Projeto de exemplos em PHP 5.3/5.4 mostra como usar Rest PKI junto com Web PKI em um projeto usando PHP 5.3 e 5.4. Isto é hospedado no GitHub em:

https://github.com/LacunaSoftware/RestPkiSamples/tree/master/PHP/legacy

observação

Somente usar este projeto se você não puder usar o Projeto de exemplos em PHP 5.5+.

Executando o projeto

  1. Download do projeto ou clonar o repositório
  2. No prompt de comando, navegue até a pasta PHP/legacy e execute o comando composer install e faça o download das dependências (se você não tiver Composer instalado, pegue aqui)
  3. Configurar um site no seu servidor HTTP local apontando para à pasta PHP/legacy
  4. Abrir o arquivo index.php no browser a URL correspondente (dependendo do passo anterior)

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

Assinatura PAdES com arquivo já no servidor

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.php:

array_push($signatureStarter->pdfMarks, PadesVisualElements::getPdfMark(1));
dica

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

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

Assinatura PAdES usando chave do servidor

Não está disponível neste projeto.

Assinatura PAdES sem a comunicação com cliente

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

Abrir/validar uma assinatura PAdES existente

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-version.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

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

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

Abrir/validar uma assinatura CAdES existente

Assinatura XML do documento inteiro

Assinatura XML de um elemento

Assinatura XAdES de um elemento

Não está disponível neste projeto.

Abrir/validar assinatura de um arquivo XML existente

Não está disponível neste projeto.

Lote de assinatura PAdES

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

Não está disponível neste projeto.