Array
(
)

Ajuda com assinatura digital

Valter Furtado
   - 25 set 2013

Boa noite,
estou em um projeto onde tenho que assinar arquivos PDF com certificado digital, já consegui essa parte.
O que gostaria agora é de EMPACOTAR em arquivos P7S o arquivo assinado, por que? Vamos supor que eu assine uma imagem... ela tem que ser empacotada...
Alguém sabe como gero esse arquivo P7S?? Material muito escasso na internet.... vlw

Dvm.lc.ledcrash
   - 12 nov 2013

Olá Valter, acho que está faltando alguns conceitos sobre assinatura digital.

A Assinatura Digital de PDF ou o DRM do documento usando os mecanismos da Adobe é ligeiramente diferente de criar um documento (qualquer formato que seja) assinado e envelopar o mesmo.

Para que eu possa te ajudar, preciso de mais detalhes da finalidade desta assinatura que você quer fazer.

Em português, realmente, o material é escasso sim, dado que nosso editorial paga muito mal os autores fazendo com que não consigamos viver de escrever, logo, temos diversas coisas em inglês. Para te ajuda, infelizmente na língua do tio sam, seguem vários materiais:

http://dict.mizoram.gov.in/uploads/attachments/cyber_crime/digital-signatures-technical-issues.pdf
https://www.owasp.org/index.php/Digital_Signature_Implementation_in_Java
http://www.cgi.com/files/white-papers/cgi_whpr_35_pki_e.pdf
http://www.emc.com/emc-plus/rsa-labs/standards-initiatives/index.htm

Mas também tem uma migalha em portugues:

http://www.receita.fazenda.gov.br/atendvirtual/orientacoes/conceitobasico.htm
http://www.usp.br/arquivogeral/wp-content/uploads/anexo/palestras/silvio.pdf
http://www.softplan.com.br/saj/downloads/cartilha_eletronica.pdf
http://leonelfraga.com/neomatrixtech/posts/2009/12/assinatura-digital-com-c-net.html

Se você for mais específico, consigo te ajudar melhor.

Heraldo Moraes
   - 28 mar 2014

Preciso assinar arquivos PDF com certificado digital e-cpf em .Net. Existe algum material ou treinamento para isto ?

Valter Furtado
   - 28 mar 2014


Citação:
Olá Valter, acho que está faltando alguns conceitos sobre assinatura digital.

A Assinatura Digital de PDF ou o DRM do documento usando os mecanismos da Adobe é ligeiramente diferente de criar um documento (qualquer formato que seja) assinado e envelopar o mesmo.

Para que eu possa te ajudar, preciso de mais detalhes da finalidade desta assinatura que você quer fazer.

Em português, realmente, o material é escasso sim, dado que nosso editorial paga muito mal os autores fazendo com que não consigamos viver de escrever, logo, temos diversas coisas em inglês. Para te ajuda, infelizmente na língua do tio sam, seguem vários materiais:

http://dict.mizoram.gov.in/uploads/attachments/cyber_crime/digital-signatures-technical-issues.pdf
https://www.owasp.org/index.php/Digital_Signature_Implementation_in_Java
http://www.cgi.com/files/white-papers/cgi_whpr_35_pki_e.pdf
http://www.emc.com/emc-plus/rsa-labs/standards-initiatives/index.htm

Mas também tem uma migalha em portugues:

http://www.receita.fazenda.gov.br/atendvirtual/orientacoes/conceitobasico.htm
http://www.usp.br/arquivogeral/wp-content/uploads/anexo/palestras/silvio.pdf
http://www.softplan.com.br/saj/downloads/cartilha_eletronica.pdf
http://leonelfraga.com/neomatrixtech/posts/2009/12/assinatura-digital-com-c-net.html

Se você for mais específico, consigo te ajudar melhor.


Preciso de algo até simples, a princípio o PDF eu consegui assinar, mas não consegui colocar o carimbo de tempo.

Por que "empacotar" em P7S? Por que dessa forma, independe do tipo de arquivo que vou assinar... se vai ser um pdf, jpg, png, zip... o que for... assim o documento que estiver assinado vai estar válido.

Paulo Gonçalves
   - 28 mar 2014

Valter, dá uma olhada nesse link.

http://docs.oracle.com/cd/E19398-01/820-1228/gfnmj/index.html

Está conceituando o que é um PKCS#7 Attached (com arquivo e assinatura anexada) e dettached (somente a assinatura sem o arquivo anexado).

Tudo isto pode ser obtido usando o objeto CMSSignedData do .NET. Você conhece esta classe? Busca no google a documentação desta classe com alguns exemplos que vai te dar uma ideia do que fazer. Ao final, basta serializar em um arquivo .p7s e você terá os dois conteúdos unidos. Outra forma, é usar S/MIME ao invés do PKCS#7. Todos os sistemas de e-mail usam este formato porque permite criar um arquivo estruturado e com toda a informação suficiente incluindo assinatura digital.

Valter Furtado
   - 28 mar 2014


Citação:
Valter, dá uma olhada nesse link.

http://docs.oracle.com/cd/E19398-01/820-1228/gfnmj/index.html

Está conceituando o que é um PKCS#7 Attached (com arquivo e assinatura anexada) e dettached (somente a assinatura sem o arquivo anexado).

Tudo isto pode ser obtido usando o objeto CMSSignedData do .NET. Você conhece esta classe? Busca no google a documentação desta classe com alguns exemplos que vai te dar uma ideia do que fazer. Ao final, basta serializar em um arquivo .p7s e você terá os dois conteúdos unidos. Outra forma, é usar S/MIME ao invés do PKCS#7. Todos os sistemas de e-mail usam este formato porque permite criar um arquivo estruturado e com toda a informação suficiente incluindo assinatura digital.


Muito obrigado pela ajuda... vou pesquisar sim... se tiver dúvidas posto de novo rs...