****************
* Prerequisiti *
****************
- Java Runtime Environment 1.7 o superiore
- Librerie JCE (Java Cryptography Extension) scaricabili dal sito della Oracle, per le istruzioni di iinstallazione vedere il readme.txt presente nel pacchetto scaricato. Necessarie esclusivamente per la decifra dei log AgID (Decrypt.bat). Questi sono ad esempio i link delle librerie rispettivamente per le versioni 1.7 ed 1.8 di Java:
http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html
http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html


*********************************************
* Firma metadata generato dalla console web *
*********************************************
Per utilizzare questo tool è necessario essere in possesso della chiave/certificato e relativo PIN o passphrase forniti da Lispa a fronte della richiesta effettuata dal responsabile EELL tramite la console web.
E' necessario inoltre essere in possesso del metadata non firmato generato sempre dalla console web.

Lanciare il file XMLSignature.bat e seguire le indicazioni.
Al termine della procedura, nella stessa directory dove è presente il metadata non firmato, viene generato il file xml firmato denominato sign-metadata.xml .

Note:
E' importante ricordare che nella richiesta di accreditamento che il SP deve produrre verso AgID per aderire a SPID devono essere forniti anche i metadati firmati dell’EELL. 
Il file Metadata generato da GEL, quando firmato dall’EELL, è conforme a quanto richiesto alle specifiche SPID.
Si ricorda inoltre che per completare la procedura di integrazione con GEL è necessario effettuare l'upload del file firmato tramite la console web.


*************************************
* Decifratura log a specifiche AgID *
*************************************
Il responsabile della conservazione ha a disposizione una voce di menù presente nella console web tramite cui scaricare i log richiesti da AgID al Service Provider.
I file di log contengono una “linea” per ogni autenticazione: le due authentication request, le due asserzioni SAML prodotte dal processo d’autenticazione e il codice fiscale sono individualmente cifrate utilizzando il certificato dell’EELL. 
Per poter decifrare questi cinque componenti (nei log denominati SHIB-REQ, IDPC-REQ, SPID-RESP, IDPC-RESP, CF) è necessario essere in possesso della chiave/certificato e relativo PIN forniti da Lispa a fronte della richiesta effettuata dal responsabile EELL tramite la console web.

Lanciare il file Decrypt.bat e seguire le indicazioni.
Al termine della procedura, nella stessa directory dove è presente il log AgID cifrato, viene generato il file di testo decifrato denominato SPID_GEL_Counter_decrypted.txt 

Note:
Nel file generato (SPID_GEL_Counter_decrypted.txt) i campi SHIB-REQ, IDPC-REQ, SPID-RESP, IDPC-RESP vengono mostrati con codifica base64


*********************
* Errori più comuni *
*********************
- IOException: Keystore password was incorrect -> PIN/passphrase del P12 errata
- FileNotFoundException: Impossibile trovare il file specificato -> Path del P12 o del file richiesto in input errato
- SAXParseException: Il contenuto non è consentito nel prologo -> File selezionato corrotto o errato
- InvalidKeyException: Illegal key size -> Librerie JCE non installate o installate erroneamente
- BadPaddingException: Decryption error -> Impossibile effetturare la decifra con il P12 fornito in input, i dati sono stati cifrati con un altro set di chiave/certificato