PHP - Ayuda firma digital en pdf via web

   
Vista:

Ayuda firma digital en pdf via web

Publicado por Omar (4 intervenciones) el 23/09/2011 11:37:37
Hola, estoy diseñando un sistema de informes web bajo php, necesito que los distintos usuarios del sistema (jefe de ventas, administrador, etc) puedan generar informes, convertirlos en pdf y firmar dicho pdf digitalmente, es decir, cada usuario firma el pdf con su firma digital individual....

Quiero que tanto la generacion de la firma como la creacion del pdf se hagan en la web... (usando el navegador).... he investigado bastante pero aun tengo muchas dudas al respecto y necesito estar seguro de poder lograrlo antes de iniciar el proyecto..

Muchas gracias por su colaboracion....
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ayuda firma digital en pdf via web

Publicado por JOSE hernadez duro_3_45@hotmail.com (21 intervenciones) el 23/09/2011 21:55:46
hola omar, buneo no se si he comprendido bien pero si lo que quieres es hacer un pdf en web lo que puedes hacer es utilizar la clase FPDF checa aca hay un manual y la clase http://www.fpdf.org/

ahora este crea el pdf y tienes la opcion demeter imagenes esto para que?

pues por lo de la firma yo lo haria asi:
1.- inicio sesion con una variable de session
2.- creo el pdf y en el pdf mando a llamar la firma digital que ya debe estar almacenada en una base de datos como imagen.
3.- elegir la imagen (firma) segun el usuario esto lo compruebas con la variable de session.
4.- mostrar pdf en navegador.

espero te ayude si tienes alguna duda aca tratare de ayudar.
salu2 }:-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por Omar Otero (4 intervenciones) el 23/09/2011 22:51:07
hola jose muchas gracias por tu respuesta,

Pues te comento que estoy haciendo un sistema de informes para una empresa que vende motocicletas.... La idea es por ejemplo que el jefe de ventas entre y modifique por ej el inventario, genere un informe que sera mostrado en pantalla usando html y el sistema le permita convertir dicho informe a pdf firmando cada usuario con su certificado digital.

Todo lo debo hacer en interfaz web, que el usuario consulte la base de datos, vea el informe y cuando crea este correcto, la interfaz le de la opcion de generar ese informe en pdf y le pida su correspondiente firma digital.

Estuve leyendo que para lo de la firma debo instalar openssl en el servidor, es cierto? por que no tengo claro como generar las firmas para cada usuario. Ahh por cierto cada usuario debe tener una interfaz para generar su firma, renovarla, cambiarle la contraseña, etc...

No se si te estoy entendiendo mal pero te refieres a una firma dibujada? por que la persona que me pidio esto me dijo explicitamente que tenia que ser un certificado digital por si existe alguna inconsistencia en el inventario, caja, etc se puedan tomar las acciones legales necesarias dado que las personas entregan los informes firmados digitalmente, asumiendo asi la responsabilidad que conlleva.

De antemano muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por Vic (1 intervención) el 25/09/2011 21:09:27
Hola Omar yo me encuentro en una tesitura parecida, debo hacer una pequeño modulo para la intranet de mi empresa en el que la gente suba PDFs y se los devuelva firmados con su firma digital. SIempre he usado php y fpdf para generar, pero esta libreria parece ser que no tiene estas funciones de PKI todavia desarrolladas.
He estado googleando y en java si que existe una libreria tambien libre llamada itext que puede implementar esta opcion, pero me esta costando mucho ponerme con java, sus JSP y sus servlets.
por si te interesa esta es la direccion de la libreria:

http://www.itextpdf.com/itext.php

y aqui un tutorial donde explica como firmar documentos pdf:

http://itextpdf.sourceforge.net/howtosign.html

Si encuentras la manera de hacerlo con php + openssl , u otro metodo, comentalo por favor!

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por JOSE hernadez (21 intervenciones) el 29/09/2011 00:35:31
hola vic
bueno igual y ati tambien te sirva la informacion compartida, si puedo ayudar aca estare solo que suelo tardar por cosas del trabajo
salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por JOSE hernadez (21 intervenciones) el 29/09/2011 00:02:01
hola pues no se si ya lo hallas resulto
pero bueno aca contesto un poco delo que puedo
para trabajar con firmas si sera necesario trabajar con openssl de apache este es facil

puedes checar esta herramienta y ver si cumple con lo qu enecesitas
informac cualquier cosa ok
http://www.sybrex.com/products/development/versypdf/versypdf_php/


avisame que pasa y si necesitas un test
LIC en SECURITE INFORMATIQUE }=)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por Omar rayback2000@hotmail.com (4 intervenciones) el 29/09/2011 01:00:15
Hola jose,

en general muchas gracias a todos por sus aportes.... la verdad estoy un poco confundido por que nunca he trabajado con esto de las firmas digitales...

Baje la herramienta que me dejaste y observe la documentacion pero tengo dos inquietudes:

1. Hay un modulo llamado DigitalSignature.php, observe la programacion y veo que carga un archivo llamado island.pdf y lo firma con otro llamado dig-signature.pfx, Como genero el archivo de la firma? .... usando openssl ???

2. Cuando intento instalar el modulo de Versypdf en wampserver, copio el archivo "php_versypdf.dll" a la ruta C:\wamp\bin\php\php5.3.5\ext" en mi disco duro, esta es la ruta de las extensiones del wampserver que tengo instalado, luego agrego la extension en mi php.ini, pero cuando intento reiniciar los servicios me dice que no puede inicializar el modulo pues estan compilados con modulos diferentes.

En los prerequisitos que establece el readme dice que necesita php4 y el wampserver que tengo instalado usa php 5, es por esto que no inicializa el modulo???

Hombre de cualquier forma gracias a ti y a todos por sus aportes pues ya veo la luz al final del camino, espero que esto pueda ayudar tambien a otros colegas.

salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por fcojavier (1 intervención) el 04/10/2011 10:12:46
cuidado, el versypdf requiere licencia. Prueba con el TCPDF, gratuito y parece tener también soporte para la firma electrónica de PDFs.
Ya nos cuentas que tal vas, saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por vgpas (6 intervenciones) el 25/01/2012 11:08:43
Estoy utilizando tcpdf pero usa el certificado crt en vez del pfx o p12
¿Como hago para que use el pfx?
¿Sabeis como hacer que se muestren los certificados que hay instalados en un navegador?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por Luis (1 intervención) el 07/05/2016 02:19:58
amigo me interesa pero el link no me abre
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por Milton snax251@hotmail.com (1 intervención) el 15/05/2013 18:24:45
Hola la firma electronica, muchas veces suele confundirse con la firma manuscrita digitalizada. OJO la firma electronica implica el uso de criptografia y certificados electronicos desde el cual es posible la firma electronica. No es seguro que estampar una imagen en el documento debido a que seria un documento facil de falsificar, tambien te recomiendo que leas un poco de las funciones openssl de PHP te servira un poco, las puedes encontrar en php.net .

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por Janette (2 intervenciones) el 07/10/2013 20:48:31
Efectivamente son dos cosas diferentes yo genere un sistema que emite un archivo en pdf y necesito insertar la firma digital que se genera con el programa SOLCEDI del Sat el cual te solicita una contraseña para generar la firma, ahora mi duda es como interactuo con este programa para que cuando inserte la firma digital pida al usuario la contraseña y coloque la firma digital en el documento.
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por Janette yan_ir@hotmail.com (2 intervenciones) el 07/10/2013 20:55:16
genere un sistema que emite un archivo en pdf y necesito insertar la firma digital que se genera con el programa SOLCEDI del Sat el cual te solicita una contraseña para generar la firma, ahora mi duda es como interactuo con este programa para que cuando inserte la firma digital pida al usuario la contraseña y coloque la firma digital en el documento.
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda firma digital en pdf via web

Publicado por Elier (92 intervenciones) el 08/10/2013 18:47:59
segun lo que dice el ejemplo puedes convertir el pfx a crt con: openssl pkcs12 -in tcpdf.pfx -out tcpdf.crt -nodes

Si quieres que no sean self-signed tienes que crear un certificado raiz y una clave privada, en este ejemplo viene como crear esos archivos CA http://www.eclectica.ca/howto/ssl-cert-howto.php

Luego puedes generar tu archivo crt con el cual firmar el PDF usando TCPDF

$CAcrt = "file://cacert.pem";
$CAkey = array("file://cakey.pem", "lacontraseñaalcrearlo");

$clientKeys = openssl_pkey_new();
$dn = array(
"countryName" => "PAIS",
"stateOrProvinceName" => "PROVINCIA O ESTADO",
"localityName" => "MUNICIPIO O CIUDAD",
"organizationName" => "NOMBRE DE LA EMPRESA",
"organizationalUnitName" => "DEPARTAMENTO",
"commonName" => "NOMBRE Y APELLIDOS DEL USUARIO",
"emailAddress" => "correo@delsuariologea.do"
);

// $id_del_usuario en la base de datos

$csr = openssl_csr_new($dn, $clientPrivKey);

$configArgs = array("x509_extensions" => "v3_req");
$cert = openssl_csr_sign($csr, $CAcrt, $CAkey, 365, $configArgs);

// self-signed usar $cert = $req_cert = openssl_csr_sign($csr, NULL, $clientPrivKey, 365);

openssl_x509_export_to_file($cert, $id_del_usuario.'crt');

Luego puedes usar el archivo crt generado para firmar el documento como viene en el ejemplo

http://www.tcpdf.org/examples/example_052.phps
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar