BlackBerry Java SDK. Security Versione: 6.0. Guida allo sviluppo
|
|
- Raffaello Orsini
- 8 anni fa
- Visualizzazioni
Transcript
1 BlackBerry Java SDK Security Versione: 6.0 Guida allo sviluppo
2 Pubblicato: SWD
3 Indice 1 Panoramica sulla protezione RIM Cryptographic API... 6 Panoramica sulla crittografia... 6 Panoramica della funzione RIM Cryptographic API... 7 Esempio di codice: implementazione della crittografia... 9 Elementi di un'implementazione crittografica Sistemi crittografici Chiavi Archivi chiavi Chiave concordata Certificati Catene di certificati Firme Digest MAC Crittografia e decrittografia dei dati Crittografia e decrittografia dei dati tramite classi predefinite Algoritmi a blocchi Motori del componente di crittografia Gestione delle eccezioni Algoritmi crittografici e codici crittografici supportati da RIM Cryptographic API Algoritmi simmetrici a blocchi supportati da RIM Cryptographic API Algoritmi di crittografia a flusso supportati da RIM Cryptographic API Algoritmi di crittografia asimmetrici supportati da RIM Cryptographic API Algoritmi degli schemi di firma supportati da RIM Cryptographic API Algoritmi dello schema delle chiavi concordate supportati da RIM Cryptographic API Algoritmi di generazione delle chiavi supportati da RIM Cryptographic API Codici di autenticazione messaggi supportati da RIM Cryptographic API Codici dei digest di messaggi supportati da RIM Cryptographic API Protocolli TLS e WTLS supportati da RIM Cryptographic API Pacchetti di crittografia per l'algoritmo di generazione delle chiavi supportati da RIM Cryptographic API Algoritmi simmetrici supportati da RIM Cryptographic API Algoritmi hash supportati da RIM Cryptographic API Limitazioni del supporto di RIM Cryptographic API ai pacchetti di crittografia dell'algoritmo di generazione delle chiavi... 43
4 3 Protezione contenuto Compressione dei dati con protezione del contenuto Attivazione della protezione del contenuto Attivazione della protezione del contenuto tramite le regole dei criteri IT Attivazione della protezione del contenuto da parte di un utente Stati di blocco e sblocco del dispositivo Chiavi crittografiche Crittografia dei dati con il dispositivo bloccato Decrittografia dei dati con il dispositivo sbloccato Crittografia dei dati con il dispositivo sbloccato Blocco del dispositivo Implementazione della protezione del contenuto Ricezione e rilascio dei ticket di protezione del contenuto Sottoscrizione al framework di protezione del contenuto Registrazione di un PersistentContentListener Codifica di un oggetto Decodifica di un oggetto Gestione delle eccezioni Controllo delle API e firma codice Esecuzione delle applicazioni del dispositivo BlackBerry che utilizzano le API protette Registrazione per l'utilizzo delle API BlackBerry protette Utilizzo delle firme di codice con restrizioni Firma dell'applicazione Richiesta di una chiave di registrazione sostitutiva Come impedire a un'applicazione del dispositivo BlackBerry, in esecuzione su BlackBerry Smartphone Simulator, di accedere alle API protette Uso di una chiave di firma codice per la protezione di pacchetti e classi Registrazione per l'utilizzo di una nuova chiave di firma codice Importazione di una chiave di firma codice registrata esistente Rimozione di una chiave di firma codice registrata Visualizzazione dello stato della firma per le richieste di firma codice Annullamento degli avvisi di firma codice Annullamento delle richieste di password da parte di BlackBerry Signature Tool Attivazione della firma automatica dopo la preparazione di un progetto dell'applicazione BlackBerry Esecuzione di BlackBerry Signature Tool in background Disattivazione della firma automatica durante la preparazione di un progetto dell'applicazione BlackBerry... 63
5 Uso delle chiavi di firma codice per limitare l'accesso ai pacchetti o alle classi in un progetto della libreria BlackBerry Uso delle chiavi di firma codice per la protezione dei dati nelle applicazioni Restrizione dell'accesso ai dati della memoria permanente tramite le chiavi di firma codice Restrizione dell'accesso ai dati dell'archivio di runtime tramite le chiavi di firma codice Supporto dei criteri IT Ulteriori informazioni Glossario Commenti e suggerimenti Cronologia delle revisioni del documento Note legali... 76
6 Panoramica sulla protezione Panoramica sulla protezione 1 Research In Motion offre diverse opzioni di protezione dei dati nell'applicazione del dispositivo BlackBerry. Autenticazione Gli utenti BlackBerry possono impostare una password per i propri dispositivi BlackBerry. Una volta attivata, la password va immessa per poter accedere al dispositivo. Inoltre, è possibile implementare l'autenticazione della connessione tra l'applicazione e il server, Internet o intranet tramite l'autenticazione HTTP Basic o HTTPS. Crittografia La crittografia consiste nel rendere i dati illeggibili finché non vengono decrittografati. Esistono molti modi per crittografare i dati presenti nell'applicazione: Metodo di crittografia RIM Cryptographic API Protezione contenuto Crittografia SQLite Crittografia della scheda di memoria Descrizione Questa API consente di crittografare e decrittografare i dati, gestire le chiavi crittografiche, apporre una firma digitale e verificare i dati, nonché creare connessioni altamente protette. Basata sulla funzione RIM Cryptographic API, l'api di protezione del contenuto fornisce una soluzione per la crittografia dell'oggetto String e degli oggetti dell'array di byte. L'API di protezione del contenuto utilizza il framework di protezione del contenuto sul dispositivo BlackBerry. Il framework deve essere attivato tramite l'impostazione di una regola dei criteri IT o di un'opzione. L'API Database include la funzionalità di crittografia per i database SQLite. Questa funzionalità è basata su JSR 75. Consente di crittografare i dati memorizzati nelle schede di memoria esterne (microsd) e nella memoria contenuto multimediale integrata (emmc). Limitazione dell'accesso È possibile limitare l'accesso ai dati contenuti nell'applicazione in uso ad altre applicazioni installate in un dispositivo BlackBerry. Il modo in cui viene eseguita tale operazione dipende dalla modalità di memorizzazione dei dati. Posizione di memorizzazione dei dati File Database SQLite Come limitare l'accesso ai dati È possibile limitare l'accesso ai file nel file system con le chiavi di firma codice, utilizzate insieme alla classe ControlledAccess. L'API Database fornisce l'opzione di protezione Protected, che rende disponibile il database solo per le applicazioni firmate con la stessa chiave di firma codice. 4
7 Panoramica sulla protezione Posizione di memorizzazione dei dati Memoria permanente Archivio di record Archivio di runtime Come limitare l'accesso ai dati È possibile limitare l'accesso agli oggetti nella memoria permanente con le chiavi di firma codice, utilizzate insieme alla classe ControlledAccess. È possibile memorizzare i dati in maniera privata, in modo da impedirne l'accesso ad altre applicazioni installate sul dispositivo. È possibile limitare l'accesso agli oggetti presenti nell'archivio di runtime con le chiavi di firma codice, utilizzate insieme alla classe ControlledAccess. Protezione durante il trasporto È possibile proteggere i dati durante il trasporto: API RIM Cryptographic API Protezione durante il trasporto La funzione RIM Cryptographic API include le API TLS, WTLS e SSL, che consentono la creazione di connessioni altamente protette. Altri meccanismi di protezione Questa guida non descrive tutte le forme di protezione in dettaglio. La risorsa principale per la protezione BlackBerry è disponibile all'indirizzo Per ulteriori informazioni sulla protezione degli approcci di memorizzazione di dati specifici come i database SQLite, la memoria permanente e l'archivio di runtime, consultare la Guida a BlackBerry Java SDK per sviluppatori - Memorizzazione dei dati, disponibile all'indirizzo Per informazioni sullo sviluppo delle applicazioni per smart card, consultare la Guida a BlackBerry Java SDK per sviluppatori - Smart card, disponibile all'indirizzo 5
8 RIM Cryptographic API RIM Cryptographic API 2 La funzione RIM Cryptographic API è una raccolta di classi che consentono di creare soluzioni di protezione per l'applicazione del dispositivo BlackBerry. Tramite la funzione RIM Cryptographic API, è possibile crittografare e decrittografare i dati, firmare e verificare i dati, stabilire connessioni altamente protette e gestire le chiavi crittografiche. Le specifiche relative a CLDC e MIDP di Java ME non definiscono un'api crittografica. Nella creazione della funzione RIM Cryptographic API, RIM ha scelto di non seguire il modello di protezione Java perché i dispositivi mobili non dispongono di molto spazio per più provider degli algoritmi di crittografia. Inoltre, il controllo dell'ora di compilazione è più appropriato per lo sviluppo integrato rispetto al controllo del runtime. Le funzioni RIM Cryptographic API si trovano nel pacchetto net.rim.device.api.crypto. Panoramica sulla crittografia Per la trasmissione elettronica dei dati, viene utilizzata la crittografia per fornire una comunicazione altamente protetta e autenticata tra il mittente e il destinatario. La crittografia comprende una serie di processi, dai protocolli e algoritmi complessi alla semplice codifica di lettere del testo. Sebbene la crittografia svolga un ruolo di fondamentale importanza nel mantenere la protezione e l'integrità dei dati trasmessi, nessun protocollo si può considerare totalmente sicuro. I protocolli e gli algoritmi sono costantemente presi d'assalto da criminali sempre più intelligenti, dotati di computer sempre più potenti. I crittografi cercano di migliorare costantemente le routine e gli algoritmi, ad esempio, cercano di incrementare le dimensioni delle chiavi per rendere più difficile il lavoro agli hacker. Esistono due tipi principali di sistema crittografico: Simmetrico: questo sistema crittografico è noto anche come cifratura a blocchi e utilizza la stessa chiave per la crittografia e la decrittografia. Tra i vantaggi di questo sistema, figura la relativa rapidità delle operazioni di crittografia e decrittografia, mentre il principale svantaggio è rappresentato dalla difficoltà di distribuire le chiavi in modo sicuro. Asimmetrico: questo sistema crittografico è noto anche come crittografia a chiave pubblica. Il mittente crittografa i dati con una chiave pubblica, quindi il destinatario li decrittografa con una chiave privata di cui è già fornito. Le chiavi sono facili da distribuire, ma la crittografia e la decrittografia risultano relativamente lente. I sistemi crittografici simmetrico e asimmetrico vengono spesso utilizzati insieme. Supponiamo, ad esempio, che due utenti, user1 e user2, debbano crittografare una notevole quantità di dati; pertanto, necessitano di un sistema crittografico veloce, in grado di rendere rapida la loro comunicazione, ma anche di un sistema semplice per la creazione della chiave. L'utente user1 utilizza la chiave pubblica di user2 per crittografare una chiave simmetrica, quindi, invia la chiave simmetrica a user2. L'utente user2 decrittografa la chiave simmetrica tramite la propria chiave privata (nota solo all'utente). A questo punto, gli utenti user1 e user2 condividono una chiave simmetrica, pertanto possono scambiarsi dati crittografati tramite un sistema crittografico veloce e simmetrico. I tre obiettivi principali della crittografia sono: la riservatezza, l'integrità e l'autenticazione. 6
9 Panoramica della funzione RIM Cryptographic API Riservatezza: l'utilizzo più comune della crittografia nell'ambiente aziendale riguarda la crittografia dei dati. La crittografia consiste nel "camuffare" un messaggio in modo da nasconderne il vero significato finché non venga decifrato dal destinatario designato. Esistono molti modi diversi per ottenere questo scopo. L'approccio più comune avviene attraverso l'utilizzo di cifre. In uno scenario tipico, un messaggio viene codificato tramite un protocollo e una cifra predeterminati e prestabiliti. Il messaggio risultante, definito come testo crittografato, viene trasmesso al destinatario. Una volta recapitato il messaggio, il destinatario decrittografa il messaggio tramite il protocollo prestabilito. Gli algoritmi di crittografia sono numerosi e diversi tra loro, alcuni di essi più sicuri e più pratici di altri. Integrità: nella crittografia moderna, l'integrità dei dati si ottiene utilizzando una funzione hash per produrre una cosiddetta "impronta digitale" univoca di un documento. In altre parole, a un documento viene applicata una funzione complessa per creare un valore univoco. Una volta recapitato il messaggio, l'utente applica la stessa funzione hash al messaggio. Se i valori risultanti corrispondono, probabilmente il messaggio non è stato modificato. Sebbene anche le migliori funzioni hash non garantiscano sempre la produzione di valori univoci, le probabilità che due documenti diversi restituiscano lo stesso valore sono molto ridotte. Esistono routine di hashing diverse per l'utilizzo in scenari diversi. Una routine di hashing comune è rappresentata dal MAC. I MAC combinano le funzioni di hashing e delle chiavi di crittografia per consentire la trasmissione di valori hash protetti e basati su una chiave. Autenticazione: l'autenticazione rappresenta un modo per verificare l'identità dell'interlocutore. Un protocollo di uso comune combina la firma digitale con una routine di crittografia a chiave privata per creare una sorta di stampigliatura digitale. Per decrittografare il messaggio, il destinatario deve decrittografare la stampigliatura digitale utilizzando la chiave privata del mittente. Questo metodo garantisce l'autenticità della firma digitale, purché la chiave privata del mittente non venga compromessa. Panoramica della funzione RIM Cryptographic API La funzione RIM Cryptographic API contiene le API riportate di seguito. API di messaggistica protetta L'API di messaggistica protetta costituisce un'implementazione dello standard CMS, che specifica i tipi di contenuto standard per la crittografia e descrive i formati del messaggio e della trasmissione per tali tipi di contenuto. La funzionalità S/MIME è basata sullo standard CMS. Il pacchetto net.rim.device.api.crypto.cms fornisce le classi per la creazione e la gestione dei tipi di contenuto CMS. API di connessione protetta L'API di connessione protetta definisce la funzionalità del protocollo che è possibile utilizzare per stabilire una comunicazione altamente protetta. È possibile utilizzare il protocollo SSL, TLS o WTLS. SSL: il protocollo SSL è progettato per la protezione dei dati inviati tramite le connessioni TCP/IP e viene utilizzato nell'implementazione del protocollo HTTPS. Il protocollo SSL è fornito nel pacchetto net.rim.device.api.crypto.tls.ssl30. TLS: il protocollo TLS è un protocollo standard di IETF basato su SSL versione 3. Il protocollo TLS è stato progettato per sostituire SSL e ha conosciuto un vasto utilizzo. Il protocollo TLS viene fornito nei seguenti pacchetti: 7
10 Panoramica della funzione RIM Cryptographic API net.rim.device.api.crypto.tls net.rim.device.api.crypto.tls.tls10 WTLS: il protocollo WTLS si situa a un livello superiore a WAP rispetto al protocollo TCP/IP. La protezione delle comunicazioni wireless che utilizzano il protocollo WAP implica l'utilizzo del protocollo WTLS tra il dispositivo client e il gateway WAP e di uno dei protocolli SSL o TLS oltre al gateway WAP. Il protocollo WTLS viene fornito nel pacchetto net.rim.device.api.crypto.tls.wtls20. API dell'archivio chiavi Un archivio chiavi è un database in cui vengono memorizzati i certificati e le chiavi crittografiche. Ciascun dispositivo BlackBerry dispone di un archivio chiavi, precaricato con i certificati di origine per tutte le autorità di certificazione. Questa procedura consente agli utenti BlackBerry di verificare l'attendibilità dei certificati di origine, che costituisce la base per tutte le successive verifiche di attendibilità. Le classi dell'archivio chiavi sono fornite nel pacchetto net.rim.device.api.crypto.keystore. API del certificato I certificati sono documenti elettronici contenenti le chiavi, unitamente alle informazioni di identificazione. Sono disponibili diversi pacchetti per la gestione dei certificati di crittografia: net.rim.device.api.crypto.certificate net.rim.device.api.crypto.certificate.status net.rim.device.api.crypto.certificate.x509 javax.microedition.pki net.rim.device.api.crypto.certificate.wtls API del codificatore La codifica è la procedura di conversione dei dati da un formato all'altro. Sebbene faccia spesso parte della procedura di crittografia, la codifica non corrisponde esattamente alla crittografia e, in genere, non è protetta. Le chiavi vengono codificate per fornire una rappresentazione standard, non per proteggerne l'identità. Le classi per la codifica delle chiavi e delle firme vengono fornite nel pacchetto net.rim.device.api.crypto.encoder. API ASN1 La maggior parte delle applicazioni utilizza i certificati prodotti da un'autorità di certificazione. Se è necessario analizzare o leggere i certificati personalmente, occorre utilizzare il pacchetto net.rim.device.api.crypto.asn1. API OID Gli identificatori dell'oggetto vengono gestiti tramite il pacchetto net.rim.device.api.crypto.oid. API dei dati primitivi I dati primitivi della crittografia sono le chiavi, i MAC, le cifre, gli algoritmi privi di chiavi, come digest e PRNG, e altre funzionalità associate alla crittografia a chiave simmetrica e a chiave pubblica. I dati primitivi della crittografia vengono forniti nel pacchetto net.rim.device.api.crypto. 8
11 Esempio di codice: implementazione della crittografia Esempio di codice: implementazione della crittografia L'esempio di codice seguente utilizza Triple DES, ovvero un algoritmo di crittografia a chiave simmetrica. RIM Cryptographic API semplifica l'utilizzo di Triple DES per crittografare e decrittografare i messaggi. import java.io.*; import net.rim.device.api.crypto.*; import net.rim.device.api.util.*; import net.rim.device.api.ui.*; import net.rim.device.api.ui.component.*; import net.rim.device.api.ui.container.*; import net.rim.device.api.util.*; public class EncodeDecodeString extends UiApplication implements FieldChangeListener private ButtonField _encrypt_button; private ButtonField _decrypt_button; private TripleDESKey _key; private TextField _edit_input_string; public static void main( String[] args ) EncodeDecodeString theapp = new EncodeDecodeString(); theapp.entereventdispatcher(); public void fieldchanged(field field, int context) String strcurrentmessage = _edit_input_string.gettext(); if(field == _encrypt_button) _edit_input_string.settext(encrypt(strcurrentmessage)); else _edit_input_string.settext(decrypt(strcurrentmessage)); public EncodeDecodeString() MainScreen screen = new MainScreen(); screen.settitle(new LabelField("Crypto Demo", LabelField.ELLIPSIS LabelField.USE_ALL_WIDTH)); _edit_input_string = new BasicEditField("Message:", null, 256, BasicEditField.FILTER_DEFAULT); screen.add(_edit_input_string); _encrypt_button = new ButtonField("Encrypt",ButtonField.CONSUME_CLICK); _encrypt_button.setchangelistener(this); screen.add(_encrypt_button); _decrypt_button = new ButtonField("Decrypt"); _decrypt_button.setchangelistener(this); screen.add(_decrypt_button); pushscreen(screen); public String encrypt(string plaintext) try 9
12 Esempio di codice: implementazione della crittografia _key = new TripleDESKey(); TripleDESEncryptorEngine encryptionengine = new TripleDESEncryptorEngine(_key); // In most cases, the data to encrypt will not fit into the block // length of a cipher. When that happens, use a padding algorithm // to pad out the last block. This uses PKCS5 to do the padding. PKCS5FormatterEngine formatterengine = new PKCS5FormatterEngine( encryptionengine ); // Use the byte array output stream to catch the encrypted information. ByteArrayOutputStream outputstream = new ByteArrayOutputStream(); // Create a block encryptor to help use the triple DES engine. BlockEncryptor encryptor = new BlockEncryptor( formatterengine, outputstream ); // Encrypt the data. encryptor.write( plaintext.getbytes() ); // Close the stream. This forces the extra bytes to be padded out if // there were not enough bytes to fill all of the blocks. encryptor.close(); // Get the encrypted data. byte[] encrypteddata = outputstream.tobytearray(); String strencrypted = new String(encryptedData); return(strencrypted); catch( CryptoTokenException e ) System.out.println(e.toString()); catch (CryptoUnsupportedOperationException e) System.out.println(e.toString()); catch( IOException e ) System.out.println(e.toString()); return "error"; public String decrypt(string ciphertext) try // Perform the decryption. Since this is a symmetric algorithm, // use the same key as before. TripleDESDecryptorEngine decryptorengine = new TripleDESDecryptorEngine(_key); // Create the unformatter engine to remove padding bytes. PKCS5UnformatterEngine unformatterengine = new PKCS5UnformatterEngine( decryptorengine ); // Set up an input stream to hand the encrypted data to the // block decryptor. ByteArrayInputStream inputstream = new ByteArrayInputStream( ciphertext.getbytes() ); // Create the block decryptor passing in the unformatter engine and the // encrypted data. BlockDecryptor decryptor = 10
13 Elementi di un'implementazione crittografica new BlockDecryptor( unformatterengine, inputstream ); // Next, read from the stream. This example reads the data 10 bytes // at a time and then adds that new data to the decrypteddata array. // For efficiency in a real situation, you should use a value // larger than 10. This example uses a small value to demonstrate // several iterations through the loop. byte[] temp = new byte[10]; DataBuffer db = new DataBuffer(); for( ;; ) int bytesread = decryptor.read( temp ); if( bytesread <= 0 ) // No more information to read, so leave loop. break; db.write(temp, 0, bytesread); // Make sure that the decrypted data is the same as the data // that was passed into the encryptor. byte[] decrypteddata = db.toarray(); String strdecrypted = new String(decryptedData); return(strdecrypted); catch( CryptoTokenException e ) System.out.println(e.toString()); catch (CryptoUnsupportedOperationException e) System.out.println(e.toString()); catch( IOException e ) System.out.println(e.toString()); return "error"; Elementi di un'implementazione crittografica Per creare un'applicazione con RIM Cryptographic API, è necessario utilizzare elementi crittografici come chiavi, archivi chiavi e certificati. Sistemi crittografici Un sistema crittografico rappresenta una serie di algoritmi che consente di implementare la crittografia, la decrittografia e la generazione di chiavi. I sistemi crittografici vengono utilizzati da tutti gli algoritmi crittografici a chiave pubblica per mantenere informazioni pubbliche comuni a tutti gli utenti entro una comunità o un sistema crittografico. In genere, il sistema crittografico comprende alcuni numeri matematici di cui ogni computer dell'utente deve disporre per l'esecuzione dei calcoli crittografici. 11
14 Elementi di un'implementazione crittografica RIM Cryptographic API supporta i seguenti sistemi crittografici: Diffie-Hellman, DSA, Elliptic Curve, Key Exchange Algorithm e RSA. Per creare un sistema crittografico, viene implementata una classe nell'interfaccia net.rim.device.api.crypto.cryptosystem. L'interfaccia CryptoSystem semplifica la creazione e la gestione delle chiavi e consente di specificare tutti i parametri possibili per le chiavi. Sistema crittografico RSA RSA è un sistema crittografico a chiave pubblica. Il sistema crittografico RSA è generalmente considerato quello di più semplice utilizzo tra i sistemi crittografici supportati perché è necessario impostare solo la dimensione del modulo. Per creare un sistema crittografico RSA, utilizzare la classe RSACryptoSystem. Esempio di codice L'esempio di codice seguente utilizza la classe RSACryptoSystem per creare un sistema crittografico RSA e consente di specificare il parametro modulusbitlength come RSACryptoSystem rsacryptosystem = new RSACryptoSystem(1024); Sistema crittografico DSA Il sistema DSA è uno standard del governo federale degli Stati Uniti definito nel documento FIPS 186. Per creare un sistema crittografico DSA, utilizzare la classe DSACryptoSystem. È possibile usare diversi costruttori per creare un sistema crittografico DSA. Il metodo più semplice per creare un sistema crittografico DSA è il seguente: DSACryptoSystem system = new DSACryptoSystem(); In alternativa, è possibile specificare appositi parametri. Nell'esempio seguente, il costruttore viene richiamato con valori per p, q e g. /* 1024 bit key parameters */ private static final byte[] p = new byte[] (byte)0xfd, (byte)0x7f, (byte)0x53, (byte)0x81, (byte)0x1d, (byte)0x75, (byte)0x12, (byte)0x29, (byte)0x52, (byte)0xdf, (byte)0x4a, (byte)0x9c, (byte)0x2e, (byte)0xec, (byte)0xe4, (byte)0xe7, (byte)0xf6, (byte)0x11, (byte)0xb7, (byte)0x52, (byte)0x3c, (byte)0xef, (byte)0x44, (byte)0x00, (byte)0xc3, (byte)0x1e, (byte)0x3f, (byte)0x80, (byte)0xb6, (byte)0x51, (byte)0x26, (byte)0x69, (byte)0x45, (byte)0x5d, (byte)0x40, (byte)0x22, (byte)0x51, (byte)0xfb, (byte)0x59, (byte)0x3d, (byte)0x8d, (byte)0x58, (byte)0xfa, (byte)0xbf, (byte)0xc5, (byte)0xf5, (byte)0xba, (byte)0x30, (byte)0xf6, (byte)0xcb, (byte)0x9b, (byte)0x55, (byte)0x6c, (byte)0xd7, (byte)0x81, (byte)0x3b, (byte)0x80, (byte)0x1d, (byte)0x34, (byte)0x6f, (byte)0xf2, (byte)0x66, (byte)0x60, (byte)0xb7, (byte)0x6b, (byte)0x99, (byte)0x50, (byte)0xa5, (byte)0xa4, (byte)0x9f, (byte)0x9f, (byte)0xe8, (byte)0x04, (byte)0x7b, (byte)0x10, (byte)0x22, (byte)0xc2, (byte)0x4f, (byte)0xbb, (byte)0xa9, (byte)0xd7, (byte)0xfe, (byte)0xb7, (byte)0xc6, (byte)0x1b, (byte)0xf8, (byte)0x3b, (byte)0x57, (byte)0xe7, (byte)0xc6, (byte)0xa8, (byte)0xa6, (byte)0x15, (byte)0x0f, (byte)0x04, (byte)0xfb, (byte)0x83, (byte)0xf6, (byte)0xd3, (byte)0xc5, (byte)0x1e, (byte)0xc3, 12
15 Elementi di un'implementazione crittografica (byte)0x02, (byte)0x35, (byte)0x54, (byte)0x13, (byte)0x5a, (byte)0x16, (byte)0x91, (byte)0x32, (byte)0xf6, (byte)0x75, (byte)0xf3, (byte)0xae, (byte)0x2b, (byte)0x61, (byte)0xd7, (byte)0x2a, (byte)0xef, (byte)0xf2, (byte)0x22, (byte)0x03, (byte)0x19, (byte)0x9d, (byte)0xd1, (byte)0x48, (byte)0x01, (byte)0xc7 ; private static final byte[] q = new byte[] (byte)0x97, (byte)0x60, (byte)0x50, (byte)0x8f, (byte)0x15, (byte)0x23, (byte)0x0b, (byte)0xcc, (byte)0xb2, (byte)0x92, (byte)0xb9, (byte)0x82, (byte)0xa2, (byte)0xeb, (byte)0x84, (byte)0x0b, (byte)0xf0, (byte)0x58, (byte)0x1c, (byte)0xf5 ; private static final byte[] g = new byte[] (byte)0xf7, (byte)0xe1, (byte)0xa0, (byte)0x85, (byte)0xd6, (byte)0x9b, (byte)0x3d, (byte)0xde, (byte)0xcb, (byte)0xbc, (byte)0xab, (byte)0x5c, (byte)0x36, (byte)0xb8, (byte)0x57, (byte)0xb9, (byte)0x79, (byte)0x94, (byte)0xaf, (byte)0xbb, (byte)0xfa, (byte)0x3a, (byte)0xea, (byte)0x82, (byte)0xf9, (byte)0x57, (byte)0x4c, (byte)0x0b, (byte)0x3d, (byte)0x07, (byte)0x82, (byte)0x67, (byte)0x51, (byte)0x59, (byte)0x57, (byte)0x8e, (byte)0xba, (byte)0xd4, (byte)0x59, (byte)0x4f, (byte)0xe6, (byte)0x71, (byte)0x07, (byte)0x10, (byte)0x81, (byte)0x80, (byte)0xb4, (byte)0x49, (byte)0x16, (byte)0x71, (byte)0x23, (byte)0xe8, (byte)0x4c, (byte)0x28, (byte)0x16, (byte)0x13, (byte)0xb7, (byte)0xcf, (byte)0x09, (byte)0x32, (byte)0x8c, (byte)0xc8, (byte)0xa6, (byte)0xe1, (byte)0x3c, (byte)0x16, (byte)0x7a, (byte)0x8b, (byte)0x54, (byte)0x7c, (byte)0x8d, (byte)0x28, (byte)0xe0, (byte)0xa3, (byte)0xae, (byte)0x1e, (byte)0x2b, (byte)0xb3, (byte)0xa6, (byte)0x75, (byte)0x91, (byte)0x6e, (byte)0xa3, (byte)0x7f, (byte)0x0b, (byte)0xfa, (byte)0x21, (byte)0x35, (byte)0x62, (byte)0xf1, (byte)0xfb, (byte)0x62, (byte)0x7a, (byte)0x01, (byte)0x24, (byte)0x3b, (byte)0xcc, (byte)0xa4, (byte)0xf1, (byte)0xbe, (byte)0xa8, (byte)0x51, (byte)0x90, (byte)0x89, (byte)0xa8, (byte)0x83, (byte)0xdf, (byte)0xe1, (byte)0x5a, (byte)0xe5, (byte)0x9f, (byte)0x06, (byte)0x92, (byte)0x8b, (byte)0x66, (byte)0x5e, (byte)0x80, (byte)0x7b, (byte)0x55, (byte)0x25, (byte)0x64, (byte)0x01, (byte)0x4c, (byte)0x3b, (byte)0xfe, (byte)0xcf, (byte)0x49, (byte)0x2a ; DSACryptoSystem system = new DSACryptoSystem( p, q, g ); Chiavi La crittografia a chiave asimmetrica utilizza due chiavi: una chiave pubblica per crittografare e verificare l'input e una chiave privata per decrittografare i dati. La crittografia a chiave simmetrica utilizza una sola chiave per la crittografia e la decrittografia. In RIM Cryptographic API, è possibile creare chiavi tramite sottointerfacce dell'interfaccia net.rim.device.api.crypto.key. Di seguito, sono riportate alcune sottointerfacce dell'interfaccia Key: PublicKey: Le chiavi pubbliche vengono utilizzate nella crittografia a chiave asimmetrica. La chiave pubblica viene generalmente utilizzata in operazioni come la crittografia e la verifica. I contenuti di questa chiave possono essere divulgati a chiunque. PrivateKey: Le chiavi private vengono utilizzate nella crittografia a chiave asimmetrica. La chiave privata viene generalmente utilizzata in operazioni come la decrittografia e la firma. È necessario proteggere i contenuti di questa chiave. 13
16 Elementi di un'implementazione crittografica SymmetricKey: Le chiavi simmetriche sono utilizzate nella crittografia a chiave simmetrica. La chiave simmetrica viene utilizzata sia per la crittografia che per la decrittografia. È necessario proteggere i contenuti di questa chiave. Esempio di codice: creazione di una chiave simmetrica L'esempio di codice seguente mostra come creare un oggetto chiave DES simmetrica contenente una chiave DES generata a caso. La classe DESKey si trova nell'interfaccia SymmetricKey. DESKey unknownkey = new DESKey(); Esempio di codice: creazione di una chiave pubblica e di una chiave privata L'esempio di codice seguente crea una coppia di chiavi: una chiave pubblica e una chiave privata. Tale esempio utilizza il valore predefinito per l'esponente pubblico (e). Il valore scelto per e rappresenta un compromesso tra l'efficienza e la protezione. // Create an RSA key pair. RSAKeyPair rsakeypair = new RSAKeyPair( rsacryptosystem ); // Get the private and public keys that were just created. RSAPublicKey rsapublickey = rsakeypair.getrsapublickey(); RSAPrivateKey rsaprivatekey = rsakeypair.getrsaprivatekey(); L'esempio seguente crea chiavi asimmetriche, tuttavia, l'utente non può specificare i valori per e e n. // Create an RSA key pair with a modulus 1024 bits in length and values e and n. RSACryptoSystem rsacryptosystem = new RSACryptoSystem(1024); RSAPublicKey rsapublickey = new RSAPublicKey( rsacryptosystem, e, n ); Archivi chiavi Un archivio chiavi è una raccolta di record KeyStoreData. Un record KeyStoreData contiene dati come chiavi pubbliche, chiavi private, chiavi simmetriche, certificati, identificativo per il record KeyStoreData e altri elementi. Ogni dispositivo BlackBerry dispone di un archivio chiavi precaricato con certificati di origine per le varie autorità di certificazione. Questi certificati di origine attendibili formano la base per tutte le catene di attendibilità successive. Gli utenti BlackBerry possono personalizzare il loro archivio chiavi. Ad esempio, possono richiedere l'immissione della password ad ogni accesso all'archivio chiavi. La funzionalità per la creazione e la gestione degli archivi chiavi, compresi alcuni archivi chiavi predefiniti, è fornita nel pacchetto net.rim.device.api.crypto.keystore.keystore. Il pacchetto KeyStore fornisce un modello di archivio chiavi che consente di gestire la distribuzione e l'accesso alle chiavi sul desktop e sul dispositivo. Il pacchetto KeyStore include le classi seguenti: La classe RIMKeyStore viene fornita come implementazione predefinita. Questa classe memorizza le chiavi fino al riavvio del dispositivo, in modo da impedirne l'utilizzo per la memorizzazione di chiavi permanenti. Un esempio del suo utilizzo consiste nella memorizzazione di chiavi smart card: in tal caso, le chiavi vengono memorizzate nella smart card e non nell'archivio chiavi. Gli archivi chiavi riportati di seguito rappresentano alcune varianti di questa classe: 14
17 Elementi di un'implementazione crittografica La classe PersistableRIMKeyStore è utile per le chiavi da archiviare tra un riavvio del dispositivo e l'altro. La classe SyncableRIMKeyStore è utile per le chiavi da archiviare tra un riavvio e l'altro e consente di sincronizzare le chiavi con lo strumento di sincronizzazione certificati presente in BlackBerry Desktop Manager (BlackBerry Desktop Manager 5 e versioni precedenti). La classe TrustedKeyStore fornisce una memorizzazione altamente protetta per i certificati e le chiavi che dispongono di un livello di protezione elevato. Solo le applicazioni firmate possono aggiungere chiavi all'archivio TrustedKeyStore. L'archivio DeviceKeyStore fornisce la funzionalità per la sincronizzazione con il software desktop. L'archivio CombinedKeyStore consente di combinare diversi archivi chiavi in un singolo archivio chiavi. Esempio di codice: creazione di un archivio chiavi L'esempio di codice seguente consente di creare un nuovo archivio chiavi denominato "My Keystore" e una coppia di chiavi denominata keypair. Un oggetto associateddata viene creato per facilitare il recupero successivo dall'archivio chiavi. RIMKeyStore keystore = new RIMKeyStore("My Keystore"); DSAKeyPair keypair = new DSAKeyPair( new DSACryptoSystem() ); AssociatedData associateddata = new AssociatedData( AssociatedData. , "user01@example.com".getbytes() ); L'esempio di codice successivo consente di aggiungere la chiave keypair all'archivio chiavi. Il metodo set aggiunge un oggetto KeyStoreData contenente informazioni che verranno associate all'array di alias contenuto nella classe. Il metodo keystore.set è richiamato con otto parametri: L'oggetto AssociatedData (un array di dati associato contenente gli alias per indicizzare questo record nell'archivio chiavi). Un'etichetta ("Crypto Signing Key") che identifica la chiave. La chiave privata. L'algoritmo di codifica della chiave privata, che, in questo caso, è impostato su null e utilizza, in tal modo, il formato predefinito, PKCS8. Un livello di protezione basso per la chiave: ad ogni tentativo di accesso alla chiave privata, non verrà richiesto di immettere la password. La chiave pubblica. Le impostazioni KeyUsage (in tal caso, specificano che la chiave pubblica vale per la protezione e come chiave concordata). Il ticket, che, in tal caso, è null. Un blocco try/catch viene utilizzato per acquisire tutte le eccezioni eventualmente generate. try keystore.set( new AssociatedData[] associateddata, "Crypto Signing Key", keypair.getdsaprivatekey(), null, KeyStore.SECURITY_LEVEL_LOW, keypair.getdsapublickey(), KeyUsage. _PROTECTION KeyUsage.KEY_AGREEMENT, null ); 15
18 Elementi di un'implementazione crittografica catch( NoSuchAlgorithmException e ) catch( KeyStoreCancelException e ) return; catch( InvalidKeyEncodingException e ) catch( CryptoTokenException e ) catch( InvalidKeyException e ) catch( CryptoUnsupportedOperationException e ) L'esempio di codice seguente recupera la chiave keypair dall'archivio chiavi. Il codice crea un indice. Viene aggiunto un indice a un archivio chiavi una sola volta. Precedentemente, in quest'esempio, un oggetto AssociatedData è stato associato all'indirizzo user01@example.com, pertanto, il nuovo indice è di tipo AssociatedDataKeyStoreIndex. L'indice viene aggiunto all'archivio chiavi. Viene utilizzato il metodo KeyStore.elements per recuperare la chiave. Il metodo elements utilizza l'indice (index.getid) e i byte associati all'oggetto AssociatedData ("user01@example.com".getbytes). Il metodo elements restituisce un'enumerazione di tutti gli oggetti KeyStoreData corrispondenti ai criteri di ricerca. Un ciclo while viene utilizzato per scorrere l'enumerazione durante la ricerca dell'etichetta "Crypto Signing Key" (in un'applicazione reale, due chiavi potrebbero contenere le stesse informazioni AssociatedData e la stessa etichetta, pertanto l'utente dovrebbe essere chiamato a specificare la chiave da recuperare). Il metodo getprivatekey viene richiamato per recuperare la chiave. Il parametro null viene utilizzato perché non è disponibile un ticket. AssociatedDataKeyStoreIndex index = new AssociatedDataKeyStoreIndex( AssociatedData. ); keystore.addindex( index ); Enumeration enum = keystore.elements( index.getid(), "user01@example.com".getbytes() ); KeyStoreData data = null; PrivateKey privatekey = null; while( enum.hasmoreelements() ) data = (KeyStoreData)enum.nextElement(); if( "Crypto Signing Key".equals( data.getlabel() ) ) try privatekey = data.getprivatekey( null ); catch( NoSuchAlgorithmException e ) catch( KeyStoreCancelException e ) 16
19 Elementi di un'implementazione crittografica catch( InvalidKeyEncodingException e ) catch( CryptoTokenException e ) catch( CryptoUnsupportedOperationException e ) catch( KeyStoreDecodeException e ) L'esempio di codice successivo aggiunge un certificato all'archivio chiavi, quindi verifica l'esistenza del certificato. Questo esempio di codice presuppone la disponibilità di un certificato WTLS. Il primo parametro per il metodo keystore.set rappresenta un array contenente gli alias necessari per indicizzare il record nell'archivio chiavi. Quando vengono fornite queste informazioni, è possibile interrogare il certificato con l'alias specificato, come illustrato nell'esempio precedente. In questo esempio, tuttavia, il parametro è impostato su null, il certificato è memorizzato nell'archivio chiavi e la voce keystore.ismember() viene richiamata per controllare l'appartenenza. Il metodo ismember crea un indice per il certificato. byte[] certdata = /* Certificate data as a byte array */ ; try //Assuming that you have a WTLS certificate, create a WTLS certificate. WTLSCertificate cert = WTLSCertificate( certdata ); keystore.set(null, "my certificate", cert, new CertificateStatus(), null);... catch ( CertificateParsingException e ) catch ( NoSuchAlgorithmException e ) catch ( InvalidKeyEncodingException e ) catch ( InvalidKeyException e ) catch ( CryptoTokenException e ) catch ( CryptoUnsupportedOperationException e ) catch ( KeyStorePasswordException e ) 17
20 Elementi di un'implementazione crittografica //Verify that the certificate is in the key store. WTLSCertificate mynewcert = WTLSCertificate( certdata ); if ( keystore.ismember(mynewcert) ) System.out.println("Certificate provided is in the key store"); else System.out.println("Certificate provided is not in the key store"); Chiave concordata La chiave concordata offre a due parti indipendenti un modo per stabilire un canale altamente protetto su una rete non sicura. I protocolli della chiave concordata utilizzano generalmente le chiavi pubbliche e private di entrambe le parti, insieme ai parametri specifici dell'algoritmo, per creare una serie di dati segreti. I dati segreti vengono creati in modo indipendente da entrambe le parti, mediante le informazioni pubblicamente condivise, e utilizzati come chiave di sessione per stabilire una comunicazione altamente protetta. La chiave segreta deriva dai dati pubblici, ma non viene inviata tramite la rete. La funzione RIM Cryptographic API supporta i seguenti schemi delle chiavi concordate: DHKeyAgreement: Chiave concordata Diffie-Hellman ECDHKeyAgreement: Chiave concordata Diffie-Hellman a curva ellittica ECMQVKeyAgreement: Chiave concordata Menezes, Qu e Vanstone a curva ellittica KEAKeyAgreement: Algoritmo di scambio chiave ECDHKeyAgreement è uno schema delle chiavi concordate molto diffuso e richiede l'utilizzo di una chiave pubblica e di una chiave privata. In una comunicazione altamente protetta, ciascuna parte utilizza la propria chiave privata e la chiave pubblica dell'altra parte. Quando ciascuna parte utilizza l'algoritmo della chiave concordata, vengono creati gli stessi dati segreti. Esempio di codice: implementazione di ECDHKeyAgreement L'esempio di codice seguente illustra lo schema ECDHKeyAgreement. Si presuppone che sendpublickey() e receivepublickey() siano presenti e attivino lo scambio di chiavi tra i due client. Quando un messaggio viene inviato da un client, viene ricevuto dall'altro client. Le operazioni si svolgono a livello locale e i dettagli relativi allo scambio di chiavi non vengono visualizzati. Nell'applicazione in uso, le chiavi pubbliche vengono scambiate tramite la rete e le chiavi private deve essere protette da ciascuna parte. I segreti identici condivisi vengono creati da ciascun client (qui denominati client1secret e client2secret). In questo esempio, viene generato il segreto locale sul client locale, viene creato un segreto locale condiviso, identico al segreto del client locale, e viene generata la chiave segreta. Infine, viene creato un segreto locale condiviso, identico al segreto appena generato. //Generate the local secret on the local client. public void generatelocalsecret() // Create an EC crypto system for key creation 18
Protezione delle informazioni in SMart esolutions
Protezione delle informazioni in SMart esolutions Argomenti Cos'è SMart esolutions? Cosa si intende per protezione delle informazioni? Definizioni Funzioni di protezione di SMart esolutions Domande frequenti
DettagliInformatica per la comunicazione" - lezione 13 -
Informatica per la comunicazione" - lezione 13 - Funzionamento di una password" 1: l utente tramite il suo browser richiede l accesso a una pagina del server; 2: il server richiede il nome utente e la
DettagliLa firma digitale CHE COSA E'?
La firma digitale La Firma Digitale è il risultato di una procedura informatica che garantisce l autenticità e l integrità di messaggi e documenti scambiati e archiviati con mezzi informatici, al pari
DettagliSSL: applicazioni telematiche SSL SSL SSL. E-commerce Trading on-line Internet banking... Secure Socket Layer
: applicazioni telematiche Secure Socket Layer E-commerce Trading on-line Internet banking... Protocollo proposto dalla Netscape Communications Corporation Garantisce confidenzialità e affidabilità delle
DettagliApprofondimento di Marco Mulas
Approfondimento di Marco Mulas Affidabilità: TCP o UDP Throughput: banda a disposizione Temporizzazione: realtime o piccoli ritardi Sicurezza Riservatezza dei dati Integrità dei dati Autenticazione di
DettagliComunicazioni sicure su Internet: https e SSL. Fisica dell Informazione
Comunicazioni sicure su Internet: https e SSL Fisica dell Informazione Il servizio World Wide Web (WWW) Come funziona nel dettaglio il Web? tre insiemi di regole: Uniform Resource Locator (URL) Hyper Text
DettagliLa Firma Digitale La sperimentazione nel Comune di Cuneo. Pier Angelo Mariani Settore Elaborazione Dati Comune di Cuneo
La Firma Digitale La sperimentazione nel Comune di Cuneo Pier Angelo Mariani Settore Elaborazione Dati Comune di Cuneo Perchè questa presentazione Il Comune di Cuneo, aderente alla RUPAR, ha ricevuto due
DettagliT E O R I A D I P R O G E T T A Z I O N E D E L S O F T W A R E
Threading T E O R I A D I P R O G E T T A Z I O N E D E L S O F T W A R E Caratteristiche principali dei thread Consentono di eseguire elaborazioni simultanee in un programma scritto in C#. Possono essere
DettagliPROCEDURA AGGIORNAMENTO LISTE MEDIANTE L INTERFACCIA WEB
PROCEDURA AGGIORNAMENTO LISTE MEDIANTE L INTERFACCIA WEB Precondizioni Per poter eseguire i passi previsti da questa procedura è necessario che: - l'operatore (di seguito OP) abbia presentato l istanza
DettagliLA SICUREZZA INFORMATICA IN AMBITO INTERNET. Posta elettronica sicura: certificati personali
Posta elettronica sicura: certificati personali Un certificato è un documento digitale che consente di verificare l'identità di una persona o un sito Web I certificati vengono rilasciati da società denominate
DettagliIl glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC.
Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC. Avviso di mancata consegna L avviso, emesso dal sistema, per indicare l anomalia
DettagliSi applica a: Windows Server 2008
Questo argomento non è stato ancora valutato Si applica a: Windows Server 2008 Protezione accesso alla rete è una tecnologia per la creazione, l'imposizione, il monitoraggio e l'aggiornamento dei criteri
DettagliDomande frequenti su Phoenix FailSafe
Domande frequenti su Phoenix FailSafe Phoenix Technologies Ltd, leader riconosciuto per la produzione di piattaforme software, strumenti e applicazioni per sistemi strategici di livello mondiale, introduce
DettagliAruba Sign 2 Guida rapida
Aruba Sign 2 Guida rapida 1 Indice Indice...2 1 Informazioni sul documento...3 1.1 Scopo del documento...3 2 Prerequisiti...4 2.1.1 Software...4 2.1.2 Rete...4 3 Installazione...5 Passo 2...5 4 Avvio di
Dettaglie-government La Posta Elettronica Certificata
Creare un canale preferenziale di contatto tra lo Stato e il cittadino attraverso la forza di internet La Posta Elettronica Certificata Francesco Cipollone francesco.cipollone@gmail.com La Posta Elettronica
DettagliConfigurazione di Outlook Express
OUTLOOK Outlook Express è il client di posta elettronica sviluppato da Microsoft, preinstallato su sistemi operativi Windows a partire da Windows 98 fino all'uscita di Windows XP. Con l'arrivo di Windows
DettagliRiepilogo delle modifiche di PA-DSS dalla versione 2.0 alla 3.0
Settore delle carte di pagamento (PCI) Standard di protezione dei dati per le applicazioni di pagamento () Riepilogo delle modifiche di dalla versione 2.0 alla 3.0 Novembre 2013 Introduzione Il presente
DettagliQuasar Sistemi S.r.l.
La Firma Digitale Quasar Sistemi S.r.l. Via San Leonardo, 52 84131 Salerno Telefono 089.3069802-803 Fax 089.332989 E-Mail: info@quasar.it Web http://www.quasar.it Documento Elettronico (D.E.) Un documento
DettagliRETI DI CALCOLATORI. Crittografia. La crittografia
RETI DI CALCOLATORI Crittografia La crittografia La crittografia è la scienza che studia la scrittura e la lettura di messaggi in codice ed è il fondamento su cui si basano i meccanismi di autenticazione,
DettagliPEC un obbligo che semplifica
PEC un obbligo che semplifica Obbligatorietà della PEC. Risvolti organizzativi e opportunità per lo studio professionale STEFANO STRINGA Ordine Dottori Commercialisti e Esperti Contabili di Mantova Da
DettagliLa Sicurezza delle Reti. La Sicurezza delle Reti. Il software delle reti. Sistemi e tecnologie per la multimedialità e telematica.
Sistemi e tecnologie per la multimedialità e telematica Fabio Burroni Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena burronif@unisi unisi.itit La Sicurezza delle Reti La presentazione
DettagliLa Firma Digitale. Manuale d uso Fornitore. Introduzione alla Firma Digitale. Aprile 2015
Manuale d uso Fornitore Introduzione alla Firma Digitale Cenni generali sulla Firma Digitale La firma digitale può essere definita come un sistema di autenticazione di documenti digitali tale da garantire
DettagliACO Archiviazione Elettronica e Conservazione sostitutiva
ACO Archiviazione Elettronica e Conservazione sostitutiva Luglio 2013 INDICE A) INSTALLAZIONE DELL AGGIORNAMENTO... 2 AGGIORNAMENTO STAND ALONE/SERVER... 2 AGGIORNAMENTO CLIENT... 4 B) ELENCO MODIFICHE...
DettagliPrima di generare l ambiente di sicurezza occorre configurare le Opzioni di sistema seguendo i passi riportati di seguito:
GENERARE L AMBIENTE DI SICUREZZA Prima di inviare tramite Entratel i file predisposti (dichiarazioni dei redditi, modelli RLI, etc..) è necessario generare l ambiente di sicurezza. Si tratta di un sistema
DettagliFirma Digitale. dott. Andrea Mazzini
Firma Digitale dott. Andrea Mazzini La Crittografia La prima persona che usò la crittografia fu Giulio Cesare! Egli doveva inviare messaggi ma non si fidava dei messaggeri, così inventò un metodo per codificare
Dettagli11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0
11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 PAG. 2 DI 38 INDICE 1. PREMESSA 3 2. SCARICO DEL SOFTWARE 4 2.1 AMBIENTE WINDOWS 5 2.2 AMBIENTE MACINTOSH 6 2.3 AMBIENTE
DettagliBlackBerry Internet Service Uso del browser dello smartphone BlackBerry Versione: 2.6. Manuale dell'utente
BlackBerry Internet Service Uso del browser dello smartphone BlackBerry Versione: 2.6 Manuale dell'utente SWDT228826-600991-0122103435-004 Indice Guida introduttiva... 2 Informazioni di base sul sito Web
DettagliCollegamento remoto vending machines by do-dots
Collegamento remoto vending machines by do-dots Ultimo aggiornamento 23 marzo 2011 rev1 - Stesura iniziale 18/10/2010 rev2 - Approfondimenti 12/11/2010 rev3 Riduzione dei contenuti per una lettura generica
DettagliSicurezza nelle applicazioni multimediali: lezione 7, sicurezza dei protocolli. Sicurezza dei protocolli (https, pop3s, imaps, esmtp )
Sicurezza dei protocolli (https, pop3s, imaps, esmtp ) Stack di protocolli nella trasmissione della posta elettronica 2 Sicurezza a livello applicativo Ma l utilizzo di meccanismi di cifratura e autenticazione
DettagliCorso basi di dati Installazione e gestione di PWS
Corso basi di dati Installazione e gestione di PWS Gianluca Di Tomassi Email: ditomass@dia.uniroma3.it Università di Roma Tre Cosa è PWS? Il Personal Web Server altro non è che una versione ridotta del
Dettagli2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.
ESERCIZIARIO Risposte ai quesiti: 2.1 Non sono necessarie modifiche. Il nuovo protocollo utilizzerà i servizi forniti da uno dei protocolli di livello trasporto. 2.2 Il server deve essere sempre in esecuzione
DettagliFirma Digitale di Flussi di Fatture Elettroniche
Firma Digitale di Flussi di Fatture Elettroniche Studio a cura di Normativa La firma digitale di flussi di fatture elettroniche viene introdotta dalla Direttiva CEE 2001/115/CE del 20 dicembre 2001, e
DettagliBlackBerry Internet Service Uso dell'applicazione di configurazione della posta elettronica dello smartphone BlackBerry Versione: 2.
BlackBerry Internet Service Uso dell'applicazione di configurazione della posta elettronica dello smartphone BlackBerry Versione: 2.6 Manuale dell'utente SWDT229221-613076-0127040357-004 Indice Guida introduttiva...
DettagliAllegato 3 Sistema per l interscambio dei dati (SID)
Sistema per l interscambio dei dati (SID) Specifiche dell infrastruttura per la trasmissione delle Comunicazioni previste dall art. 11 comma 2 del decreto legge 6 dicembre 2011 n.201 Sommario Introduzione...
DettagliImpostazione dell'indirizzo IP del dispositivo di autenticazione di Xerox Secure Access Unified ID System Carta bianca
Impostazione dell'indirizzo IP del dispositivo di autenticazione di Xerox Secure Access Unified ID System Copyright 2007 Xerox Corporation. Tutti i diritti riservati. XEROX e Secure Access Unified ID System
DettagliCorso di ARCHITETTURA DEI SISTEMI INFORMATIVI - Prof. Crescenzio Gallo. 114 Sistemi informativi in rete e sicurezza 4.6
Approcci al problema della sicurezza 114 Sistemi informativi in rete e sicurezza 4.6 Accessi non autorizzati Hacker: coloro che si avvalgono delle proprie conoscenze informatiche e di tecnologia delle
DettagliIBM SPSS Statistics per Linux - Istruzioni di installazione (Licenza per sito)
IBM SPSS Statistics per Linux - Istruzioni di installazione (Licenza per sito) Le seguenti istruzioni sono relative all installazione di IBM SPSS Statistics versione 21 con licenza per sito. Questo documento
DettagliLo scenario: la definizione di Internet
1 Lo scenario: la definizione di Internet INTERNET E UN INSIEME DI RETI DI COMPUTER INTERCONNESSE TRA LORO SIA FISICAMENTE (LINEE DI COMUNICAZIONE) SIA LOGICAMENTE (PROTOCOLLI DI COMUNICAZIONE SPECIALIZZATI)
DettagliConfigurazione di una connessione DUN USB
Configurazione di una connessione DUN USB Cercare la lettera "U" in questa posizione È possibile collegare lo smartphone Palm Treo 750v e il computer mediante il cavo di sincronizzazione USB per accedere
DettagliIl tuo manuale d'uso. SONY ERICSSON Z550I http://it.yourpdfguides.com/dref/452389
Può anche leggere le raccomandazioni fatte nel manuale d uso, nel manuale tecnico o nella guida di installazione di SONY ERICSSON Z550I. Troverà le risposte a tutte sue domande sul manuale d'uso (informazioni,
DettagliLa firma digitale e le sue possibili applicazioni
Il documento informatico e la firma digitale nelle applicazioni pratiche La firma digitale e le sue possibili applicazioni dott. Enrico Zimuel (enrico@zimuel.it) Pescara, 15 febbraio 2008 Centro Studi
DettagliServizi remoti Xerox Un passo nella giusta direzione
Servizi remoti Xerox Un passo nella giusta direzione Diagnosi dei problemi Valutazione dei dati macchina Problemi e soluzioni Garanzia di protezione del cliente 701P41696 Descrizione generale di Servizi
DettagliPkBox Client Smart API
19 aprile 2013 Le informazioni contenute in questo documento sono da considerarsi CONFIDENZIALI e non possono essere utilizzate o riprodotte - sia in parte che interamente - senza un permesso scritto rilasciato
DettagliDocuShare Email Agent Guida per l'utente
DocuShare Email Agent Guida per l'utente Data di pubblicazione: Febbraio 2011 Questo documento supporta DocuShare versione 6.6.1 Preparato da: Xerox Corporation DocuShare Business Unit 3400 Hillview Avenue
DettagliTitolare del trattamento dei dati innanzi descritto è tsnpalombara.it
Decreto Legislativo 196/2003 Codice in materia di protezione dei dati personali COOKIE POLICY La presente informativa è resa anche ai sensi dell art. 13 del D.Lgs 196/03 Codice in materia di protezione
DettagliUtilizzo di Certificati SSL e relative implicazioni
Utilizzo di Certificati SSL e relative implicazioni Affinché possano essere correttamente stabilite delle connessioni cifrate tramite i protocolli SSL/TLS ai servizi di IceWarp, è necessario che sul server
DettagliCertificati digitali con CAcert Un'autorità di certificazione no-profit
Certificati digitali con CAcert Un'autorità di certificazione no-profit Davide Cerri Associazione di Promozione Sociale LOLUG Gruppo Utenti Linux Lodi davide@lolug.net 11 novembre 2008 Crittografia asimmetrica:
DettagliPOSTA ELETTRONICA (TRADIZIONALE e CERTIFICATA) FIRMA DIGITALE PROTOCOLLO INFORMATICO. Maurizio Gaffuri 11 ottobre 2007
POSTA ELETTRONICA (TRADIZIONALE e CERTIFICATA) FIRMA DIGITALE PROTOCOLLO INFORMATICO Maurizio Gaffuri 11 ottobre 2007 1 POSTA ELETTRONICA TRADIZIONALE e POSTA ELETTRONICA CERTIFICATA 2 POSTA ELETTRONICA
DettagliGuida all'amministrazione. BlackBerry Professional Software per Microsoft Exchange. Versione: 4.1 Service Pack: 4
BlackBerry Professional Software per Microsoft Exchange Versione: 4.1 Service Pack: 4 SWD-313211-0911044452-004 Indice 1 Gestione degli account utente... 7 Aggiunta di un account utente... 7 Aggiunta manuale
DettagliSistema di gestione Certificato MANUALE PER L'UTENTE
Sistema di gestione Certificato MANUALE PER L'UTENTE Pagina 1 di 16 Indice 1 Introduzione...3 2 Genera certificato...4 3 Sospendi certificato...10 4 Riattiva certificato...12 5 Revoca certificato...14
DettagliLa sicurezza nel Web
La sicurezza nel Web Protezione vs. Sicurezza Protezione: garantire un utente o un sistema della non interazione delle attività che svolgono in unix ad esempio i processi sono protetti nella loro esecuzione
DettagliManuale d'uso del Connection Manager
Manuale d'uso del Connection Manager Edizione 1.0 2 Indice Informazioni sull'applicazione Gestione connessioni 3 Operazioni preliminari 3 Aprire l'applicazione Gestione connessioni 3 Visualizzare lo stato
DettagliIntroduzione ai certificati S/MIME e alla posta elettronica certificata...2 Procedura di installazione del certificato personale S/MIME rilasciato
Guida all installazione e all utilizzo di un certificato personale S/MIME (GPSE) Introduzione ai certificati S/MIME e alla posta elettronica certificata...2 Procedura di installazione del certificato personale
DettagliIntroduzione alla crittografia con OpenPGP
Introduzione alla crittografia con OpenPGP D avide Cerri dav ide@ linux.it Crittografia Per proteggere le comunicazioni su Internet si utilizza la crittografia. La crittografia è la scienza che si occupa
DettagliProcedure di utilizzo e di descrizione applicativa
1 Procedure di utilizzo e di descrizione applicativa SOMMARIO Descrizione SmartSign Versione Desktop Descrizione applicazione... 3 2 Caratteristiche delle soluzioni di Firma Elettronica Avanzata... 3 Processo
DettagliGuida in linea di Symantec pcanywhere Web Remote
Guida in linea di Symantec pcanywhere Web Remote Connessione da un browser Web Il documento contiene i seguenti argomenti: Informazioni su Symantec pcanywhere Web Remote Metodi per la protezione della
DettagliLextel Servizi Telematici per l Avvocatura
Lextel Servizi Telematici per l Avvocatura IL PROGETTO 2 Più di un anno fa LEXTEL riceve l incarico da parte della Cassa Nazionale di Previdenza ed Assistenza Forense di iniziare lo studio progettuale
DettagliMANUALE DI INSTALLAZIONE CERTIFICATO DIGITALE PER LA SICUREZZA CERTIFICATION AUTHORITY DEL SISTEMA PIEMONTE
Pag.1 di 22 PER LA SICUREZZA CERTIFICATION AUTHORITY DEL SISTEMA PIEMONTE Pag.2 di 22 INDICE 1. PREMESSE...3 2. VERIFICA DELLA VERSIONE CORRETTA DEL BROWER...3 3. INSTALLAZIONE DI CERTIFICATI CON NETSCAPE
DettagliNOTE TECNICHE allegate al MANUALE OPERATIVO ALLA CLIENTELA PER GLI ADEMPIMENTI VERSO DI ESSA PRESCRITTI IN MATERIA DI FIRMA ELETTRONICA AVANZATA
NOTE TECNICHE allegate al MANUALE OPERATIVO ALLA CLIENTELA PER GLI ADEMPIMENTI VERSO DI ESSA PRESCRITTI IN MATERIA DI FIRMA ELETTRONICA AVANZATA (Documento 1 predisposto ai sensi del DPCM 22.2.2013 2 )
DettagliMANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA
MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA Fornitore: Publisys Prodotto: Intranet Provincia di Potenza http://www.provincia.potenza.it/intranet Indice 1. Introduzione... 3 2. I servizi dell Intranet...
DettagliNelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento
I protocolli del livello di applicazione Porte Nelle reti di calcolatori, le porte (traduzione impropria del termine port inglese, che in realtà significa porto) sono lo strumento utilizzato per permettere
DettagliApplicazioni per l autenticazione Sicurezza nelle reti di TLC - Prof. Marco Listanti - A.A. 2008/2009
Applicazioni per l autenticazione Kerberos Kerberos Servizio di autenticazione sviluppato dal MIT Fornisce un server di autenticazione centralizzato Basato su crittografia simmetrica (chiave privata) Permette
DettagliI cookie sono classificati in base alla durata e al sito che li ha impostati.
1. Informativa sui cookie 1.1. Informazioni sui cookie I siti Web si avvalgono di tecniche utili e intelligenti per aumentare la semplicità di utilizzo e rendere i siti più interessanti per ogni visitatore.
DettagliChe cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo
Creazione di moduli Creazione di moduli Che cos'è un modulo? Un elenco di domande accompagnato da aree in cui è possibile scrivere le risposte, selezionare opzioni. Il modulo di un sito Web viene utilizzato
DettagliFPf per Windows 3.1. Guida all uso
FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete
DettagliAccess. P a r t e p r i m a
Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di
Dettagli3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
3 - Variabili Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di
DettagliSoftware Servizi Web UOGA
Manuale Operativo Utente Software Servizi Web UOGA S.p.A. Informatica e Servizi Interbancari Sammarinesi Strada Caiese, 3 47891 Dogana Tel. 0549 979611 Fax 0549 979699 e-mail: info@isis.sm Identificatore
DettagliObiettivi d esame PHP Developer Fundamentals on MySQL Environment
Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web
DettagliVersione 1.0 09/10. Xerox ColorQube 9301/9302/9303 Servizi Internet
Versione 1.0 09/10 Xerox 2010 Xerox Corporation. Tutti i diritti riservati. I diritti non pubblicati sono protetti ai sensi delle leggi sul copyright degli Stati Uniti. Il contenuto di questa pubblicazione
DettagliCentro Tecnico per la Rete Unitaria della Pubblica Amministrazione
Centro Tecnico per la Rete Unitaria della Pubblica Amministrazione Area Rete Unitaria - Sezione Interoperabilità Linee guida del servizio di trasmissione di documenti informatici mediante posta elettronica
DettagliDocumenti cartacei e digitali. Autenticità. Cosa si vuole garantire? Riservatezza. Integrità 11/12/2012. PA digitale: documenti e firme (I.
Università degli studi di Catania Pubblica Amministrazione digitale Elementi tecnici sulla firma digitale Ignazio Zangara Agatino Di Bella Area della Formazione Gestione dell archivio (novembre dicembre
DettagliReti di Telecomunicazione Lezione 8
Reti di Telecomunicazione Lezione 8 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Livello di trasporto Programma della lezione relazione tra lo strato di trasporto e lo strato
DettagliGuida all'impostazione dei messaggi di avviso e delle destinazioni di scansione per le stampanti X500 Series
Guida all'impostazione dei messaggi di avviso e delle destinazioni di scansione per le stampanti X500 Series www.lexmark.com Luglio 2007 Lexmark, Lexmark con il simbolo del diamante sono marchi di Lexmark
DettagliSistemi Operativi. Lez. 13: primitive per la concorrenza monitor e messaggi
Sistemi Operativi Lez. 13: primitive per la concorrenza monitor e messaggi Osservazioni I semafori sono strumenti particolarmente potenti poiché consentono di risolvere ogni problema di sincronizzazione
DettagliClient VPN Manuale d uso. 9235970 Edizione 1
Client VPN Manuale d uso 9235970 Edizione 1 Copyright 2004 Nokia. Tutti i diritti sono riservati. Il contenuto del presente documento, né parte di esso, potrà essere riprodotto, trasferito, distribuito
DettagliE-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI
E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI E-MAIL INTEGRATA Ottimizzazione dei processi aziendali Con il modulo E-mail Integrata, NTS Informatica ha realizzato uno strumento di posta elettronica
DettagliFirma digitale e PEC: facili e sicure
Firma digitale e PEC: facili e sicure Trento, 23 Novembre 2012 Ing. Andrea Gelpi Commissione Ingegneria dell'informazione Ordine degli Ingegneri della Provincia di Trento Firma Digitale La Firma digitale
DettagliIBM SPSS Statistics per Mac OS - Istruzioni di installazione (Licenza per sito)
IBM SPSS Statistics per Mac OS - Istruzioni di installazione (Licenza per sito) Le seguenti istruzioni sono relative all installazione di IBM SPSS Statistics versione 21 con licenza per sito. Questo documento
DettagliSicurezza digitale. requisiti: confidenzialità, integrità, autenticazione, autorizzazione, assicurazione, riservatezza. soddisfatti mediante
Sicurezza digitale requisiti: confidenzialità, integrità, autenticazione, autorizzazione, assicurazione, riservatezza soddisfatti mediante crittografia = codifica dei dati in forma illeggibile per assicurare
DettagliFirma digitale: aspetti tecnologici e normativi. Milano,
Firma digitale: aspetti tecnologici e normativi Milano, Premessa digitale Il presente documento ha la finalità di supportare le Amministrazioni che intendono dotare il proprio personale di digitale, illustrando
DettagliManuale Utente Prerequisiti per DigitalSign Lite Sistema Operativo Linux a 64 bit
- Carta Regionale dei Servizi e Certificati Qualificati di Firma Digitale Manuale Utente Prerequisiti per DigitalSign Lite Sistema Operativo Linux a 64 bit Codice del Documento: CRS-CA-MES#05 Revisione
DettagliCrittografia e sicurezza informatica. Sistema di voto elettronico
Crittografia e sicurezza informatica Sistema di voto elettronico Deliano Perfetti Gabriele Paone Anno 2003 1 indice 1. Specifiche 2 2. Scelte progettuali 2 Schema Server Authority Server di Voto Client
DettagliMANUALE UTENTE Fiscali Free
MANUALE UTENTE Fiscali Free Le informazioni contenute in questa pubblicazione sono soggette a modifiche da parte della ComputerNetRimini. Il software descritto in questa pubblicazione viene rilasciato
DettagliT.SODS140 TITOLO DOCUMENTO: - TIPO DOCUMENTO: EMESSO DA: Telecom Italia Trust Technologies S.r.l. DATA EMISSIONE N. ALLEGATI: STATO: 22/01/201 /2014 0 REDATTO: F. Lappa F. Tiralongo F. Galetta VERIFICATO:
DettagliGuida Google Cloud Print
Guida Google Cloud Print Versione A ITA Definizioni delle note Nella presente Guida dell utente viene utilizzato lo stile che segue per contrassegnare le note: Le note forniscono istruzioni da seguire
DettagliManuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise
Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3
DettagliProtezione della posta elettronica mediante crittografia
Consorzio per la formazione e la ricerca in Ingegneria dell'informazione Politecnico di Milano Protezione della posta elettronica mediante crittografia Davide Cerri CEFRIEL - Area e-service e Technologies
DettagliIstruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)
Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito) Le seguenti istruzioni sono relative all installazione di IBM SPSS Modeler Text Analytics versione 15 mediante un licenza
DettagliCreare connessioni cifrate con stunnel
ICT Security n. 24, Giugno 2004 p. 1 di 5 Creare connessioni cifrate con stunnel Capita, e purtroppo anche frequentemente, di dover offrire servizi molto insicuri, utilizzando ad esempio protocolli che
Dettagli9243045 Edizione 1 IT. Nokia e Nokia Connecting People sono marchi registrati di Nokia Corporation
9243045 Edizione 1 IT Nokia e Nokia Connecting People sono marchi registrati di Nokia Corporation Accedere a Zip Manager Pro. Nota: per ulteriori informazioni su funzionamento e manutenzione del Nokia
DettagliSETEFI. Marco Cantarini, Daniele Maccauro, Domenico Marzolla. 19 Aprile 2012
e VIRTUALCARD 19 Aprile 2012 e VIRTUALCARD Introduzione Il nostro obiettivo é quello di illustrare la struttura e le caratteristiche di fondo che stanno alla base delle transazioni online operate tramite
DettagliConfigurazione Zimbra mail per accedere alla propria casella di posta tramite il browser.
Configurazione Zimbra mail per accedere alla propria casella di posta tramite il browser. Se vogliamo accedere alla nostra casella di posta elettronica unipg.it senza usare un client di posta (eudora,
DettagliGESTIONE DEI PROCESSI
Sistemi Operativi GESTIONE DEI PROCESSI Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in Java Concetto
DettagliGennaio. SUAP On Line i pre-requsiti informatici: La firma digitale
2008 Gennaio SUAP On Line i pre-requsiti informatici: La firma digitale 1 La firma digitale Indice La firma digitale La firma digitale: destinatario 2 La firma digitale Cos è La Firma Digitale è il risultato
DettagliGPS NAVIGATION SYSTEM QUICK START USER MANUAL
GPS NAVIGATION SYSTEM QUICK START USER MANUAL ITALIAN Guida introduttiva La prima volta che si utilizza il software di navigazione, si avvia automaticamente un processo di impostazione iniziale. Procedere
DettagliDomande e risposte su Avira ProActiv Community
Domande e risposte su Avira ProActiv Community Avira AntiVir versione 10 sfrutta un innovativa tecnologia protettiva cloud-based, denominata ProActiv, che identifica e blocca i nuovi virus non appena questi
DettagliAllegato A: Regole tecniche per la gestione dell identità.
Allegato A: Regole tecniche per la gestione dell identità. Allegato A: Regole tecniche per la gestione dell identità. Art. 1. Aventi diritto alle Credenziali-People 1. Per l accesso ai Servizi-People sviluppati
Dettaglibla bla Guard Manuale utente
bla bla Guard Manuale utente Guard Guard: Manuale utente Data di pubblicazione venerdì, 24. luglio 2015 Version 2.0.0 Diritto d'autore 2006-2013 OPEN-XCHANGE Inc., Questo documento è proprietà intellettuale
DettagliTipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:
Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante
Dettagli