Pdf.js: A assinatura eletrônica não aparece no visualizador de pdf.js

Criado em 6 mai. 2014  ·  29Comentários  ·  Fonte: mozilla/pdf.js

Eu tenho um documento com uma assinatura eletrônica que não está aparecendo no visualizador do pdf.js. O documento usou tinta digital zipLogix como seu provedor de assinatura eletrônica. O documento é carregado em nosso aplicativo com a assinatura no lugar, mas a visualização do documento em nosso aplicativo não mostra a assinatura. Subseqüentemente, baixar o documento novamente confirma que a assinatura não foi perdida no processo de upload.

* Nota: Estou trabalhando para obter um documento com as mesmas características que não contenha dados sigilosos.

4-annotations

Comentários muito úteis

Acho que simplesmente esta funcionalidade não está implementada:

https://github.com/mozilla/pdf.js/blob/master/src/core/annotation.js#L527

    // Hide unsupported Widget signatures.
    if (data.fieldType === 'Sig') {
      warn('unimplemented annotation type: Widget signature');
      this.setFlags(AnnotationFlag.HIDDEN);
    }

Se eu remover essas linhas, posso ver a assinatura impressa em meu documento. No caso do problema anexado pdf (https://dl.dropboxusercontent.com/u/5681461/dev/test-signature.pdf) Eu posso ver a assinatura, mas ela aparece invertida gire:

test_pdf

Todos 29 comentários

@StevenHarlow Obrigado; com certeza precisaremos de um PDF de exemplo para examinar o problema.

Estou encerrando esse problema por enquanto e o reabriremos quando tivermos um PDF de exemplo para testar.

Eu tenho o mesmo problema. A assinatura não é exibida no visualizador. O problema está resolvido?
Aqui está um pdf assinado,
https://dl.dropboxusercontent.com/u/5681461/dev/test-signature.pdf

Este assinado não foi verificado. Mas mesmo com uma assinatura válida verificada, o campo de assinatura não é mostrado no visualizador pdf.js.

Eu tenho o mesmo problema. No meu caso, o problema é apenas com assinaturas inválidas. Tenho um documento pdf com duas assinaturas (uma é válida e outra é inválida). Em outros visualizadores de pdf posso ver as duas assinaturas impressas no documento, mas em pdf.js não consigo. Lamento, mas não posso anexar o documento de amostra porque contém dados confidenciais do cliente.

EDITADO: Parece que o problema não é só com as assinaturas inválidas, no meu caso a assinatura válida é um sinal invisível.

Acho que simplesmente esta funcionalidade não está implementada:

https://github.com/mozilla/pdf.js/blob/master/src/core/annotation.js#L527

    // Hide unsupported Widget signatures.
    if (data.fieldType === 'Sig') {
      warn('unimplemented annotation type: Widget signature');
      this.setFlags(AnnotationFlag.HIDDEN);
    }

Se eu remover essas linhas, posso ver a assinatura impressa em meu documento. No caso do problema anexado pdf (https://dl.dropboxusercontent.com/u/5681461/dev/test-signature.pdf) Eu posso ver a assinatura, mas ela aparece invertida gire:

test_pdf

Widgets de assinatura visível geralmente têm um fluxo de aparência, assim como a maioria das outras anotações, e este tem. A inversão pode ser uma duplicata de # 5946.

O problema de inversão foi resolvido agora que o # 5946 foi resolvido.

Oi pessoal - está se perguntando se há algum cronograma para corrigir isso? Muito Obrigado.

Parece haver algum progresso na verificação da assinatura digital em # 1076.

@timvandermeij Muito obrigado pelo link.

Estranho - há um ano escrevi "Problema de inversão resolvido", mas agora nada é exibido, ou seja, o ponto de interrogação amarelo está faltando.

Ainda não resolvido, pelo menos para documentos da tinta digital zipLogix:
https://new.zipformplus.com
Alguns avisos do pdf.worker.js:
Aviso: tipo de campo de widget não implementado "Sig", voltando ao tipo de campo base.

Idd, mesmo problema: tipo de campo de widget não implementado "Sig", voltando ao tipo de campo base.

Alguma ideia de quando poderíamos ter uma implementação desse widget entregue?
Seria ótimo saber, ao analisar o PDF, que há uma área assinada.

Implementamos uma solução de assinatura digital baseada em PKIjs e PDFjs que é capaz de verificar e criar assinaturas digitais. Você pode ver um exemplo disso vendo a lei de assinatura digital dos EUA aqui .

image

O visualizador atualmente confia nas CAs na lista de confiança do eIDAS, bem como nos emissores S / MIME confiáveis ​​da Mozilla.

Se você encontrar qualquer problema, envie-me um e-mail para [email protected] com arquivos de amostra, se houver.

@rmhrisk Você vai abrir o código da sua solução?

@sreuter a maioria das bibliotecas já tem código-fonte aberto, você pode encontrar os componentes em https://github.com/PeculiarVentures/.

Quero abrir o código-fonte da biblioteca PDF que construímos, que nos permite trabalhar com muitos tipos diferentes de representações de PDF, mas isso levará tempo para torná-la pronta para consumo público.

Estou trabalhando com alguém em um conjunto aprimorado de exemplos para PKIjs que tornaria mais fácil para outras pessoas duplicarem o que fizemos.

então existe uma configuração para habilitar a assinatura eletrônica em pdf?
nós tentamos comentar

if (data.fieldType === 'Sig') {
      warn('unimplemented annotation type: Widget signature');
      this.setFlags(AnnotationFlag.HIDDEN);
    }

durante o desenvolvimento?
como podemos fazer no npm instalar um novo pacote online?

Não há.

A desativação deste bloco não mostra a assinatura ou sua estrela, apenas mostra uma representação visual da assinatura.

Habilitar este bloqueio sem realizar o trabalho de verificação da assinatura significa que você estará dando ao usuário uma falsa sensação de segurança em relação à exatidão dos documentos exibidos.

Pode ser, ele pode ser definido pela configuração em vez da necessidade de comentar esta linha para renderizar o widget de assinatura?
Caso contrário, é necessário bifurcar o código para poder exibir o visual da assinatura.

pdf.js
Aviso: tipo de campo de widget não implementado "Sig", voltando ao tipo de campo base.
Como resolver este problema?

O postback eletrônico foi resolvido e o cromo falhou ao executar'postMessage'on'Dedicated Worker GlobalScope ':não pôde ser clonado.

há três anos ... algum progresso?

@yurydelendik pdf.js é apenas um visualizador. A verificação da assinatura digital não é muito ambígua? Não consigo entender por que você faz tanto.

@hxlniada Acho muito importante pelo menos mostrar a assinatura do widget (Assinatura Gráfica) também sem verificar a assinatura.

Também gostaríamos apenas de ver. Dizer "não verificado" está bem.

Por que a assinatura eletrônica não é exibida?

Porque PDF.js não oferece suporte a assinaturas digitais. Confira https://verify.ink . Se você quiser traduzir, podemos usá-lo para apoiar o chinês.

Se você precisar de suporte para assinatura digital, criamos um componente da web e um iframe envolvendo nosso visualizador que oferece suporte para isso. Veja https://verify.ink

Fechando uma vez que esta é uma duplicata de # 1076.

Esta página foi útil?
5 / 5 - 1 avaliações

Questões relacionadas

THausherr picture THausherr  ·  3Comentários

dmisdm picture dmisdm  ·  3Comentários

zerr0s picture zerr0s  ·  3Comentários

PeterNerlich picture PeterNerlich  ·  3Comentários

liuzhen2008 picture liuzhen2008  ·  4Comentários