TITOLO DIGITALE. Come da Unico16042008.dtd nel plico XML potrà essere inserito il titolo digitale:



Documenti analoghi
TITOLO DIGITALE. Come da Unico dtd nel plico XML potrà essere inserito il titolo digitale:

PORTALE CLIENTI Manuale utente

Manuale Utente Albo Pretorio GA

Guida alla Navigazione e Utilizzo dell Area Fattura PA

Come si verifica la firma associata ad un documento?

PRIMO PASSO. Agenzia Entrate Direzione Provinciale di Trento Ufficio Gestione Tributi

Firma Digitale. dott. Andrea Mazzini

ARCHIVIAZIONE DOCUMENTI

GUIDA ALL UTILIZZO DI MF QUICKEN

L apposizione di firme e informazioni su documenti firmati

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Entrare nel sistema. Clicca su Entra per entrare nel sistema. PAGINA 1

IL DEPOSITO TELEMATICO DEGLI ATTI MEDIANTE CONSOLLE PCT

intranet.ruparpiemonte.it

Prof. Alberto Postiglione Scienze della Comunicazione. Università degli Studi di Salerno

Gruppo Buffetti S.p.A. Via F. Antolisei Roma

Il Processo Civile Telematico e il Consulente Tecnico d Ufficio (C.T.U.) Uno schema operativo verso l invio telematico della C.T.U.

Avviso 1/2014 Procedura Caricamento Documentazione con Firma Digitale

Guida alla Navigazione e Utilizzo dell Area Fattura PA

Tutorial Servizi SUAP ON LINE PROFESSIONI TURISTICHE

sistemapiemonte GEstione on line Comunicazioni Obbligatorie Abilitazione Scuole sistemapiemonte.

Strutturazione logica dei dati: i file

PRODUZIONE PAGELLE IN FORMATO PDF

Capitolo 4 Pianificazione e Sviluppo di Web Part

Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento.

Workland CRM. Workland CRM Rel /11/2013. Attività --> FIX. Magazzino --> NEW. Nessuna --> FIX. Ordini --> FIX

NAVIGAZIONE DEL SI-ERC: UTENTE PROGETTISTA

Monitoraggio Flussi Finanziari

MANUALE PARCELLA FACILE PLUS INDICE

Algoritmi e strutture dati. Codici di Huffman

CMS ERMES INFORMATICA

DEPOSITO SITUAZIONE PATRIMONIALE DEL CONSORZIO E BILANCIO DEL CONTRATTO DI RETE DI IMPRESE

Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

3. Eseguire il programma upgradestandalone11010_it.exe (ignorare eventuali messaggi di autore sconosciuto)

Strumenti facilitatori la dematerializzazione

A tal fine il presente documento si compone di tre distinte sezioni:

60019 SENIGALLIA (AN), Via Caduti sul Lavoro n. 4 Capitale sociale ,00 i.v.

SELENE rel Sintesi Principali Modifiche ed Implementazioni

7. Layer e proprietà degli oggetti

BREVE GUIDA ALL USO DI CNS E SMART CARD aggiornata a febbraio 2009

E-Shop/X4-Shop : Fatturazione PA

Studio Legale. Guida operativa

Informatica per la comunicazione" - lezione 7 -

CARICAMENTO IN ASCOT DEL FASCICOLO ELETTORALE ELETTRONICO

REGIONE LOMBARDIA MANUALE DI GUIDA ALLA RENDICONTAZIONE E ALLA PRESENTAZIONE DELLA DOMANDA DI LIQUIDAZIONE DEL

Internet Explorer 7. Gestione cookie

Università degli Studi di Ferrara - A.A. 2014/15 Dott. Valerio Muzzioli ORDINAMENTO DEI DATI

I.N.A.I.L. Certificati Medici via Internet. Manuale utente

FASI DA ESEGUIRE ON-LINE

Come firmare digitalmente un documento

Manuale per la compilazione on-line della richiesta di anticipo

RICHIESTE INTERVENTO

I LOG dell'amministratore ai fini Privacy - mini howto

Manuale per la richiesta e la ricezione del DURC tramite Posta Elettronica Certificata

SPECIFICHE TECNICHE DEL PACCHETTO DI ARCHIVIAZIONE

Guida all uso di. a cura dell Area Economia Applicata (AEA) - IPI

MAUALE PIATTAFORMA MOODLE

Definire gli attributi dei blocchi

La codifica delle informazioni

Stampa unione -contratto di tirocinio. Documentazione

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

PROCEDURE DI FIRMA PER I PIP PRESENTATI NEI BANDI APPRENDISTATO

SISTEMA DI INOLTRO TELEMATICO DELLE DOMANDE DI ROTTURA SUOLO URGENTI Manuale Grandi Utenti

MUDE Piemonte. Modalità operative generazione Procura speciale

Presentazione della pratica online

Questa guida vi illustrerà i principali passaggi da eseguire per l'inserimento dei Bandi di gara.

Classificazione: DI PUBBLICO DOMINIO. LOMBARDIA INFORMATICA S.p.A.

Google Apps for Education F.A.Q. a cura di Luigi Parisi Servizio Marconi T.S.I. - USR Emilia-Romagna. aggiornata al 18 maggio 2015.

MANUALE PER CONSULTARE LA RASSEGNA STAMPA VIA WEB ( ULTIMO AGGIORNAMENTO 26MARZO 2009)

Guida operativa. My Legal Corner. BestSoft SOFTWARE IN SANITÀ

ENTRARE NEL SISTEMA. Clicca su Entra per entrare nel sistema. PAGINA 1

4.1 FAX Sollecito consegne via (Nuova funzione)

ACO Archiviazione Elettronica e Conservazione sostitutiva

Per accedere clicca su START o AVVIO (in basso a sinistra sul tuo schermo), poi su PROGRAMMI, ACCESSORI e infine su BLOCCO NOTE.

MANUALE D USO DELLA PIATTAFORMA ITCMS

Informatica grafica e Multimedialità. 4 Immagini grafiche

Manuale d uso. Applicazione client Postecert Firma Digitale per Post box

7.4 Estrazione di materiale dal web

Utilizzo di Certificati SSL e relative implicazioni

Recupero Immobili e Alloggi ERP

GUIDA OPERATIVA SUI FORMATI DEGLI ALLEGATI ALLE PRATICHE ON-LINE

IBM SPSS Statistics per Linux - Istruzioni di installazione (Licenza per sito)

APPLICATIVO VIA PRESENTAZIONE ISTANZE (VERSIONE 1.0.0)

Le stringhe. Le stringhe

Unione Europea Repubblica Italiana Regione Calabria Cooperativa sociale

Per realizzare un programma in VB

Verifica Firma Digitale dei documenti

Guida alla compilazione e all invio della domanda. Avviso Pubblico

Guida utente alla compilazione delle richieste di contributo on-line per le Associazioni dei Consumatori

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16

XML INVITO ALLO STUDIO EUROPEAN NETWORK OF INNOVATIVE SCHOOLS

Istruzioni operative instal azione FirmaVerifica3.0 Pag.1 di 27

Istruzioni per la compilazione del modulo elettronico

Configurare Outlook Express

Prot. n. 8149/C2b Bergamo, 16/12/2015 Circ. n. 137

Modello per la compilazione della scheda progetto SK_3.1.xls (da utilizzarsi per la presentazione di progetti di attività formative)

GUIDA ALLA ISCRIZIONE NELLA BDEP (BANCA DATI ESPERTI E PROFESSIONISTI)

Transcript:

TITOLO DIGITALE Come da Unico16042008.dtd nel plico XML potrà essere inserito il titolo digitale: <!-- TitoloDigitale Ai sensi dell'art. 7 del provvedimento interdirettoriale del 6 dicembre 2006 e' possibile inserire la copia autentica informatica del titolo. Formato: formato del documento. Alfanumerico I valori ammessi sono: pdf e tiff PresenzaDatiSensibi: nel rispetto della legge sulla privacy e' possibile indicare la presenza o meno dei dati sensibili all'interno del documento. L''informazione e' richiesta per i soli titoli giudiziari. 0 = assenza di dati sensibili 1 = presenza di dati sensibili CopiaTitolo: contiene il titolo e gli allegati firmati con firma digitale codificati in Base64. Il file firmato digitalmente (titolo digitale) è un file binario e come tale non è leggibile in blocco note. La sua visualizzazione con blocco note presenta infatti caratteri indecifrabili: Alcuni sistemi non permettono l'uso dei file binari (come la posta elettronica). Quindi, in questi casi, si rende spesso necessario convertirli e rappresentarli come file di testo semplici, come con la codifica Base64.

Questo metodo ha il difetto di aumentare le dimensioni del file oltre a richiedere la decodifica a transazione ultimata. Base64 è, infatti, un sistema di numerazione posizionale che usa 64 simboli per convertire i dati nel formato ASCII. L'algoritmo che effettua la conversione suddivide il file in gruppi da 6 bit, i quali possono quindi contenere valori da 0 a 63. Ogni possibile valore viene convertito in un carattere ASCII. L'algoritmo causa un aumento delle dimensioni dei dati del 33%, poiché ogni gruppo di 3 byte viene convertito in 4 caratteri. Da un file P7M di 20 KB si passa ad un file di testo di 27 KB contenente lo stringone Base 64. Il plico XML è un file testuale e quindi perché in esso venga incorporato il titolo digitale è necessario effettuare una conversione del titolo digitale (file P7M) in Base64 :

Nella visualizzazione in UNIMOD del file XML generato il titolo digitale convertito in Base64 nel tag <CopiaTitolo> viene giustamente omesso ed al suo posto compare solo un riferimento. - <TitoloDigitale Formato="PDF" PresenzaDatiSensibili="0"> <CopiaTitolo>*** In questa sezione è presente il contenuto del file PROVA.PDF.P7M ***</CopiaTitolo> </TitoloDigitale> Se si apre invece il plico xml salvato sul proprio computer con il browser e si seleziona lo stesso tag compare uno stringone, prima invisibile, contenente il titolo digitale convertito in BASE64: -

<TitoloDigitale Formato="PDF" PresenzaDatiSensibili="0"> <CopiaTitolo>MIJNbgYJKoZIhvcNAQcCoIJNXzCCTVsCAQExCzAJBgUrDgMCGgUAMIJFE etc etc =</CopiaTitolo> </TitoloDigitale> che può essere anche visualizzato in blocco note aprendo direttamente con esso l intero plico XML oppure incollandovi in un file vuoto lo stringone selezionato e copiato In UNIMOD è prevista soltanto la codifica in BASE64, ma non la decodifica, che effettuerà ovviamente SISTER.

Un esempio di codifica di file in BASE64 e di decodifica da BASE64 in file binario si trova al seguente indirizzo: http://www.motobit.com/util/base64-decoder-encoder.asp con il relativo codice delle due funzioni di codifica e decodifica BASE64 ENCODE VBSCRIPT FUNCTION Function Base64Encode(inData) 'rfc1521 '2001 Antonin Foller, Motobit Software, http://motobit.cz Const Base64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" Dim cout, sout, I 'For each group of 3 bytes For I = 1 To Len(inData) Step 3 Dim ngroup, pout, sgroup 'Create one long from this 3 bytes. ngroup = &H10000 * Asc(Mid(inData, I, 1)) + _ &H100 * MyASC(Mid(inData, I + 1, 1)) + MyASC(Mid(inData, I + 2, 1)) 'Oct splits the long To 8 groups with 3 bits ngroup = Oct(nGroup) 'Add leading zeros ngroup = String(8 - Len(nGroup), "0") & ngroup 'Convert To base64 pout = Mid(Base64, CLng("&o" & Mid(nGroup, 1, 2)) + 1, 1) + _ Mid(Base64, CLng("&o" & Mid(nGroup, 3, 2)) + 1, 1) + _ Mid(Base64, CLng("&o" & Mid(nGroup, 5, 2)) + 1, 1) + _ Mid(Base64, CLng("&o" & Mid(nGroup, 7, 2)) + 1, 1) 'Add the part To OutPut string sout = sout + pout 'Add a new line For Each 76 chars In dest (76*3/4 = 57) 'If (I + 2) Mod 57 = 0 Then sout = sout + vbcrlf Next Select Case Len(inData) Mod 3 Case 1: '8 bit final sout = Left(sOut, Len(sOut) - 2) + "==" Case 2: '16 bit final sout = Left(sOut, Len(sOut) - 1) + "=" End Select Base64Encode = sout End Function Function MyASC(OneChar) If OneChar = "" Then MyASC = 0 Else MyASC = Asc(OneChar) End Function BASE64 DECODE VBSCRIPT FUNCTION Function Base64Decode(ByVal base64string) 'rfc1521 '1999 Antonin Foller, Motobit Software, http://motobit.cz Const Base64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" Dim datalength, sout, groupbegin 'remove white spaces, If any base64string = Replace(base64String, vbcrlf, "") base64string = Replace(base64String, vbtab, "") base64string = Replace(base64String, " ", "") 'The source must consists from groups with Len of 4 chars datalength = Len(base64String) If datalength Mod 4 <> 0 Then Err.Raise 1, "Base64Decode", "Bad Base64 string." Exit Function

End If ' Now decode each group: For groupbegin = 1 To datalength Step 4 Dim numdatabytes, CharCounter, thischar, thisdata, ngroup, pout ' Each data group encodes up To 3 actual bytes. numdatabytes = 3 ngroup = 0 For CharCounter = 0 To 3 ' Convert each character into 6 bits of data, And add it To ' an integer For temporary storage. If a character is a '=', there ' is one fewer data byte. (There can only be a maximum of 2 '=' In ' the whole string.) thischar = Mid(base64String, groupbegin + CharCounter, 1) If thischar = "=" Then numdatabytes = numdatabytes - 1 thisdata = 0 Else thisdata = InStr(1, Base64, thischar, vbbinarycompare) - 1 End If If thisdata = -1 Then Err.Raise 2, "Base64Decode", "Bad character In Base64 string." Exit Function End If ngroup = 64 * ngroup + thisdata Next 'Hex splits the long To 6 groups with 4 bits ngroup = Hex(nGroup) 'Add leading zeros ngroup = String(6 - Len(nGroup), "0") & ngroup 'Convert the 3 byte hex integer (6 chars) To 3 characters pout = Chr(CByte("&H" & Mid(nGroup, 1, 2))) + _ Chr(CByte("&H" & Mid(nGroup, 3, 2))) + _ Chr(CByte("&H" & Mid(nGroup, 5, 2))) 'add numdatabytes characters To out string sout = sout & Left(pOut, numdatabytes) Next Base64Decode = sout End Function Con SecurSIGN è possibile verificare il titolo digitale. Infatti il file originario prova.pdf.p7m viene verificato con SecurSIGN nel suo formato DER (Distinguished Encoding Rules) che è uno dei formati binari in cui sono codificati i certificati utente, i certificati di CA, le CRL e i file che rappresentano firme digitali

Ma una volta convertito questo file in BASE64, come facciamo ad essere sicuri che la conversione corrisponda esattamente al file che dovevamo convertire? Credo che sia opportuno avere la possibilità di decodificare il file in BASE64 in un nuovo file P7M da verificare con SecurSIGN. La decodificazione può essere attuata con questa mia web application (che serve anche a trasformare un Plico XML in un Plico HTML previa trasformazione con un foglio di stile di selezione di alcuni dati) : http://www.notaioricciardi.it/plico.aspx

Con il pulsante Sfoglia si selezionerà il plico XML esistente nel proprio computer contenente il titolo digitale. Con il pulsante Estrai stringa Titolo digitale verrà estratto dal plico XML lo stringone BASE64 in un file TXT con una trasformazione secondo il seguente foglio di stile XLS <?xml version="1.0"?> - <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns:xlink="http://www.w3.org/1999/xlink"> <xsl:output method="text" encoding="iso-8859-1" /> - <xsl:template match="/"> - <!-- Apply template to everything starting from the root node --> <xsl:apply-templates select="telematico//adempimento" /> </xsl:template> - <xsl:template match="telematico//adempimento"> - <b> <xsl:value-of select="titolodigitale/copiatitolo" /> </b> </xsl:template> </xsl:stylesheet Contemporaneamente il file txt contenente lo stringone BASE64 comparirà in un Textbox e verrà denominato titolodigitale.pdf.p7m da salvare, anche con altro nome ma sempre con la doppia estensione del titolo originario.pdf.p7m, nel proprio computer. Dal TextBox sarà possibile anche selezionare lo stringone e copiarlo in un file vuoto di Blocco note da salvare sul proprio computer sempre con l estensione.pdf.p7m.

Il file convertito da B64 e salvato con l estensione.pdf.p7m potrà così essere verificato (con estrazione del file PDF contenuto) da SecursSIGN secondo il nuovo formato PEM (Privacy Enhanced Mail: tipo di codifica che opera una trasformazione al file codificato DER per far sì che il file sia leggibile da applicazioni come blocco note ). Il nuovo file titolodigitale.pdf.p7m, contenente il titolo digitale convertito in BASE64, sarà di dimensioni superiori all originario titolo digitale perché adesso è in questo formato PEM, ossia con caratteri leggibili in blocco note.