Cryptoprocessor: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Riga 2:
 
==Tour dell'interfaccia di un cryptoproccessor==
L'interfaccia di un '''cryptoprocessor''' è un set di transizioni ossia un gruppo di comandi supportati da un processore che manipola e gestisce le informazioni sensibili, usualmente crittografati da chiavi. Gli utenti sono limitati al set di transizioni che riflettono l'esigenza di usare l'accesso al sistema di controllo. Il previsto input e l'output dei comandi in un set di transizioni sono descritti in termini di un ''type system'', che descrive il contenuto di ogni tipo e quindi viene assegnato un tipo per ogni input e output di comandi. Le chiavi vengono archiviate in una struttura gerarchica, in modo che grandi quantità di informazioni possano essere condivise in modo sicuro.
===Set di transizioni fondamentali===
I comandi espressi dall'utente rappresentano il maggior carico di lavoro che un '''cryptoprocessor''' può svolgere. I comandi consentono ai dati di essere processati usando ledelle chiavi, i cui valori vengono mantenuti all'interno dell'ambiente di prova di manomissione, rimanendo sconosciuta all'utente. L'utente quindi è limitato per lnell'esecuzione cona causa di queste chiavi online, dove controlli procedurali possono essere forzate. I comandi specifici dell'applicazione possono anche esistereessere conosciuti, con manipolazioni di dati in input criptati che ritornano un codice criptato in output.
Apposite ''Key Management'' offrono agli utenti la possibilità di riorganizzare la struttura fondamentale. Comandi di importazione ed esportazione consentono l'estrazione delle chiavi dalla struttura per la condivisione con altri processori o ambienti, e i comandi per creare chiavi possono essere disponibili per sostenere le politiche di controllo duale.
Comandi D'amministratore sono altamente dipendenti sui dettagli di implementazione, in genere includono i comandi per la gestione delle chiavi di alto livello, particolarmente sensibili, (con essi è possibile modificare i diritti d'accesso per gli altri utenti), e numeri di output ''Pin'' in output tipici dei sistemi finanziari.
===Controllo di accesso===
Il controllo di accesso è necessario per garantire che solo gli utenti autorizzati abbiano accesso alle potenti operazioni che potrebbero essere utilizzate per estrarre le informazioni sensibili. Questi controlli possono essere utilizzati per imporre controlli procedurali come il controllo duale, o sistemi di condivisione per pervenire l'abuso delle operazioni più rischiose. I sistemi di controllo di accesso più semplici concedono speciale autorità a chi ha il primo utilizzo del processore e poi andarepassare in modalità predefinita chein cui non permettesono permessi privilegi speciali. Una persona autorizzata o gruppo caricherà le informazioni sensibili nel processore all'accensione;, successivamente l'insieme delle transazioni non consente l'estrazione di queste informazioni, soltanto la manipolazione dei dati durante l'utilizzo. Un altra fase del controllo di accesso prevede l'autorizzazione mediante una o più password, chiavi fisiche o [[smartcards]]. In circostanze dove ci sono più livelli di autorizzazione, l'esistenza di un "percorso attendibile" agli utenti, con l'emissione di comandi speciali diventa importante. Senza l'utilizzo di una sessione protetta o porta di accesso fisico, sarebbe facile per le persone non autorizzate inserire i comandi all'interno di questa sessione per estrarre le informazioni sensibili sotto il naso dell'utente autorizzato.
===Sistemi a chiavi digitante===
L'assegnazione sul tipo di chiavi sono necessari per il controllo di accesso. Questo perché molte transazioni hanno le stesse funzionalità di base e senza chiave da poter digitare un utente malintenzionato potrebbe ottenere il materiale in esecuzione, durante un'operazione in cui non è autorizzato, pur utilizzando un equivalente consenso alle transazioni. Un sistema ben protetto è progettato per evitare l'abuso delle similitudini tra le transazioni. Un esempio importante è la distinzione di tipo tra comunicazioni dati chiavi e il PIN di elaborazione nei sistemi finanziari. Codici PIN cliente vengono calcolati crittografando il numero di conto con una chiave di derivazione PIN, quindi i comandi utilizzati con questi tasti sono attentamente controllati. Tuttavia, qualsiasi utente con accesso alle operazioni di manipolazione dei dati potrebbe calcolare i numeri PIN dai conti: entrambi impiegano lo stesso DES o Triple-DES (3DES) un algoritmo di crittografia per raggiungere il loro scopo. Prodotti finanziari di IBM utilizzano la comune architettura Cryptographic (CCA) un set di transazioni standardizzati. Il nome CCA per le informazioni sul tipo di una chiave è un vettore di controllo. I controlli ai vettori sono vincolati alle chiavi crittografate XORing, un controllo vettoriale sulla chiave utilizzata per l'autenticazione e include una copia non protetta di riferimento. Il controllo vettoriale è semplicemente un bitpattern scelto per indicare un tipo particolare. Se un utente malintenzionato ingenuo cambia il tipo di chiave assegnata, quando viene utilizzata la chiave, un operazione di decrittografia del ''cryptoprocessor'' produce semplicemente un messaggio di errore a cui non è possibile rimediare.