Servizio per Firma Digitale di PDF da implementare in WebApp

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
TommyB1992
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 857
Iscrizione: domenica 7 luglio 2013, 15:55
Desktop: GNU/Linux
Distribuzione: Ubuntu 22.04.2 LTS
Sesso: Maschile

Servizio per Firma Digitale di PDF da implementare in WebApp

Messaggio da TommyB1992 »

Devo implementare il servizio di firma digitale (non per forza criptata) nella mia webapp.

Il servizio che sto cercando dovrebbe:
1) Permettermi di aprire un documento PDF per modificarlo
2) Nella modifica devo poterci inserire dei campi già inseriti precedentemente nella mia webapp (sarà l'utente che deciderà quali inserire di quelli disponibili)
3) Inviarlo in qualche modo a un altro utente per farglielo firmare
4) Riceverlo firmato

Eventualmente se ci sono anche delle librerie in JS potrei utilizzare anche quelle.
Ho visto in giro un software, che non so come è programmato, ma se non sbaglio converte un PDF in JPG, permette di trascinare i campi dell'utente del punto 2 tramite qualche libreria javascript, lo invia all'altro utente che firma questa immagine in qualche modo (non conosco il nome della libreria) e poi lo rimanda completando il punto 4.

In quest'altra App che ho visto ovviamente dubito fortemente che la firma fosse criptata, ma onestamente non m'interessa particolarmente.

Grazie mille a chiunque riesca a darmi una mano.


-------------------------------- AGGIORNAMENTO -----------------------------------------
Guardando il codice del servizio terzo ho capito che:
1) Aprono il file .pdf con questa libreria e lo caricano dentro un canvas come immagine.
2) trascinano i field tramite quest'altra libreria ottenendo un risultato come:
Immagine

Ora la mia domanda è: con che libreria fondono i rettangoli sovrapposti sul canvas e draggati con il testo? (li dove c'è scritto IBAN dovrà essere sostituito con l'iban dell'utente)
Avatar utente
DoctorStrange
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2872
Iscrizione: mercoledì 14 ottobre 2015, 9:33
Desktop: Gnome3
Distribuzione: Ubuntu 22.04 LTS Jammy Jellyfish
Sesso: Maschile
Località: Roma, Italia

Re: Servizio per Firma Digitale di PDF da implementare in WebApp

Messaggio da DoctorStrange »

La questione firma digitale, e DRM in generale, è un po piu complessa, di una libreria. Io quando lavoravo in BdI, lo facevo di mestiere tutti i giorni. Usavo un'applicazione che si chiamava, all'epoca: Adobe Livecycle. Ora credo si chiami Adobe Experience Manager (Adobe AEM). Ti anticipo che è una suite che ha costi di licenza proibitivi. In ogni caso funzionava in questo modo. Il campo di firma digitale ha in tutto e per tutto il medesimo aspetto di un normale text box, e quindi può essere inserito nel tuo documento come un normale text box, tramite il designer integrato. A questi controlli si possono aggiungere controlli supplementari come, ad esempio impedire la compilazione del campo di firma se dovesse mancare qualche precedente campo o check box indispensabile alla firma. Ogni singolo campo è identificato da un path assoluto che ha questa forma:

/form1/document2/checkBox1

A questo punto, una volta validato, il documento va sottoposto alle "Reader Extension", e questo lo rende idoneo alla firma. Dal punto di vista del server, il documento PDF cosi esteso, è visto come un file XML, ed il tag che contraddistingue il campo di firma digitale, viene validato, nel momento della firma, con la chiave della firma digitale dell'utente che la appone.

Dal puntoo di vista tecnico, un documento PDF con una frma digitale altro non è che un file XML (un po piu complesso dei normali XML template che si trovano in giro). Infatti il server di autenticazione dei DRM non conservava i PDF intesi come documenti, ma semplicemente i relativi files XML, che erano cosi firmati, autenticati e potevano ricomporre il dcumento passando da un semplice "interprete" XML. Incluse eventuali immagini.

La firma Digitale èè quindi una chiave univoca associata ad una persona, ma dal punto di vista tecnico non è altro che un tag XML con la chiave privata associata.

Non so se esistano librerie pubbliche per trattarla, di solito sono cose regolamentate a livello di legge.
TommyB1992
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 857
Iscrizione: domenica 7 luglio 2013, 15:55
Desktop: GNU/Linux
Distribuzione: Ubuntu 22.04.2 LTS
Sesso: Maschile

Re: Servizio per Firma Digitale di PDF da implementare in WebApp

Messaggio da TommyB1992 »

DoctorStrange ha scritto:
lunedì 19 settembre 2022, 9:58
...
Beh onestamente a me va bene anche un servizio terzo che offra delle API per questo senza pagare licenze da 10K, ma per qualcosa di più complesso (come quello di aggiungere dei box pre-compilati in precedenza) non ho trovato nessun servizio terzo da pagare.


Per quanto riguarda il servizio di terze parti che ho trovato che non usa firma certificata, ma solo firma, secondo te come fanno il merging dei checkbox inseriti sull'immagine con il testo?
Lucio C
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 371
Iscrizione: venerdì 10 dicembre 2021, 18:33
Desktop: fvwm
Distribuzione: (X)Ubuntu20@home; openSUSE42.3@work
Sesso: Maschile
Località: Paneropoli

Re: Servizio per Firma Digitale di PDF da implementare in WebApp

Messaggio da Lucio C »

Non mi sono mai occupato di firme digitali vere (legali ecc.) salvo che per firmare i documenti della mia banca, ossia da utente.
Se si vuole creare un PDF "form" (modulo con campi riempibili e compilabili) questo si puo' fare (ci ho provato molto raramente con LaTeX e non mi ricordo). Poi il ricevente potra' riempire i campi con il suo pdf viewer (credo di averlo sempre fatto con acroread, non ricordo evnice o atril).

Se si vuole solo inserire la propria firma scansionata in un documento cher si crea si puo' farlo sia con libreoffice (doc) che con LaTeX.
Per inserire da utente la propria firma scansionata in un documento creato da altri, l'unico modo che conosco e' usare libreoffice (draw).
The reasonable man adapts himself to the world: the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man. (G.B. Shaw)
TommyB1992
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 857
Iscrizione: domenica 7 luglio 2013, 15:55
Desktop: GNU/Linux
Distribuzione: Ubuntu 22.04.2 LTS
Sesso: Maschile

Re: Servizio per Firma Digitale di PDF da implementare in WebApp

Messaggio da TommyB1992 »

Lucio C ha scritto:
lunedì 19 settembre 2022, 19:03
Non mi sono mai occupato di firme digitali vere (legali ecc.) salvo che per firmare i documenti della mia banca, ossia da utente.
Se si vuole creare un PDF "form" (modulo con campi riempibili e compilabili) questo si puo' fare (ci ho provato molto raramente con LaTeX e non mi ricordo). Poi il ricevente potra' riempire i campi con il suo pdf viewer (credo di averlo sempre fatto con acroread, non ricordo evnice o atril).
Il tutto dev'essere in una web-app di mia proprietà.
Lucio C ha scritto:
lunedì 19 settembre 2022, 19:03
Se si vuole solo inserire la propria firma scansionata in un documento cher si crea si puo' farlo sia con libreoffice (doc) che con LaTeX.
Per inserire da utente la propria firma scansionata in un documento creato da altri, l'unico modo che conosco e' usare libreoffice (draw).
La firma scansionata dev'essere inserita dove vuole l'utente e altri campi devono essere fillati in automatico (es. l'utente nel suo profilo inserisce il Codice Fiscale, poi in ogni pdf che carica trascina il label "codice fiscale" e in base al pdf se lo mette dove vuole). Se vedi l'immagine che ho postato e i riquadri è l'utente a scegliere dove posizionarli, anche perchè i pdf cambiano.
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: UbuNuovo e 8 ospiti