Le voci sono in ordine alfabetico. Alcune solo di una riga altre
su piu' paragrafi. In ogni caso si e' tentato di condensare le
informazioni necessarie nel primo paragrafo di modo che sia
possibile saltare i successi.
- 0
- 3DES (Triple DES)
- Utilizzare il 3DES su un singolo blocco di dati,
con almeno due differenti chiavi, permette di ottenere una sicurezza
maggiore rispetto ad una singola passata di DES. La versione a 3 chiavi
e' l'algoritmo standard utilizzato da Linux FreeS/WAN
.
IPsec utilizza sempre il 3DES come specificato dal
RFC 2451. Per una spiegazione sulla versione a due chiavi si veda
two key triple DES. Entrambe usano la sequenza
EDE encrypt-decrypt-encrpyt.
Il Single DES e'
insicuro, come dimostrato.
Il Double DES e' inefficace. Utilizzando una chiave a 56 bit dovrebbe
elevare a 2112 il lavoro di un attacco a forza bruta. In realta'
sono necessari soltanto 257 tentativi per un attacco
meet-in-the-middle, per il quale e' necessaria
semplicemente una grande quantita' di memoria. Anche il Triple DES e'
vulnerabile a questo tipo di attacco, ma lo sforzo si riduce a
2168, anziche' 2112, come ci si potrebbe aspettare.
Questo e' sufficiente per proteggersi da un attacco
a forza bruta, ed altri tipi di attacchi non sono noti.
3DES puo' apparire lento se paragonato ad altri cifrari. Richiede
tre passate di DES per ogni blocco. Il DES e' stato progettato per
implementazioni hardwaree e non software. onostante questo, la
velocita' appare accettabile per la maggior parte degli scopi.
Vedi anche il documento sulle performance
per ulteriori dettagli.
- A
- Active attack
- Un attacco in cui l'attancante non si limita ad intercettare i dati,
vedi attacchi passivi ma tenta di cambiare,
cancellare, riindirizzare, aggiungere o modificare i dati. Probabilmente
l'attacco attivo piu' noto e' il man-in-the-middle.
In generale soltanto le tecniche di autenticazione
sono una difesa contro questo tipo di attacchi.
- AES
- L' Advanced Encryption Standard -- un nuovo
cifrario a blocchi per rimpiazzare il
DES -- sviluppato dal NIST, National
Institute of Standards and Technology degli Stati Uniti.
Il DES utilizza blocchi di 64 bits e chiavi di 56. L'AES ha blocchi di 128 bit
e chiavi di 128, 192 o 256 bits. I cifrari con blocchi di dimensioni piu' ampie
sono resistenti al birthday attacks e le chiavi piu
grandi difendono dagli attacchi a forza bruta.
15 candidati sono stati proposti al meeting del NIST nel 1998. Dopo lunghe
analisi e valutazioni nel 1999 sono diventati 5.
Tre dei finalisti - - Rijndael, Serpent and Twofish -- hanno licenze
libere
Nell'ottobre del 2000, il NIST annuncia il vincitore -- Rijndael.
Per maggiori informazioni si veda:
- AH
- L'IPsec Authentication Header,
inserito immediatamente prima del header IP. Per dettagli si veda il
documento sull' IPsec oppure l'RFC 2402.
- Alice and Bob
- A e B, esempio classico utilizzato nella esempi teorico-pratici in crittografia.
Carol e Dave engono aggiunti quando si tratta di scenari in cui sono necessari
con piu' di due partecipanti.
Bruce Schneier ha ingrandito la famiglia con molti altri come Eve the Eavesdropper,
lo spione, e Victor the Verifier, il certificatore.
- ARPA
- see DARPA
- ASIO
- Australian Security Intelligence Organisation.
- Asymmetric cryptography
- Vedi crittografia a chiave pubblica.
- Autenticazione
- Assicura che un messaggio sia stato originato da mittente che
ci si aspetta e non sia stato alterato drante il perrcorso.
IPsec utilizza l'autenticazione in due
modi:
- peer authentication, autentica i partecipanti attraverso l'IKE,
con uno scambio di chiavi Diffie-Hellman,
per prevenire attacchi di tipo man-in-the-middle.
Questo puo' avvenire in diversi modi.
Il metodo utilizzato da FreeS/WAN viene discusso nel documento intitolato
advanced configuration
- autenticazione dei pacchetti su di una SA gia'
instaurata, attraverso l' authentication header
oppure con i meccanismi di autenticazione supportati dal protocollo
ESP. In etrambi i casi questo tipo di autenticazione
utilizza un hash del messagio da autenticare.
Al di fuori di IPSEC, le passwords sono il piu' comune metodo di
autenticazione. Il loro scopo e' essenzialmente di autenticare un
utente su i un certo sistema. Le passwords sono in generale sicure
quante le reti su cui transitano. Se si fa circolare una password
in chiaro su di una rete monitorata la sicurezza diviene pari a 0.
Mandare una passowrd cifrata non e' molto piu' sicuro, l'attaccante
potrebbe prenderla ed utilizzarla a suo piacimento. Questo viene
detto replay attack.
Una soluzione piuttosto comune a questo problema sono i meccanismi
di challenge-response. Quest'ultimi sono
in grado di proteggere dai piu' comuni attacchi basati sull'analisi
del traffico o dai replay attacks. Chiaramente un attaccante puo'
sempre cercare di forzare l'algoritmo crittografico, o il
generatore di numeri casuali.
- Automatic keying
- Un sistema grazie al quale le chiavi vengono automaticamente
generate al momento della connessione ed una nuova chiave viene
rigenerata periodicamente in seguito.
Differisce dal manual keying, nel quale
viene utilizzata una singola chiave pregenerata.
IPsec utilizza il Diffie-Hellman key exchange protocol
per generarle. Un qualche meccanismo di
autenticazione e' inoltre richiesto per il corretto funzionamento.
FreeS/WAN utilizza di solito l'RSA per questo
scopo. Altri sistemi supportati vengono discussi nel documento dal
titolo advanced configuration.
Dunque un attaccante in grado di sovvertire i meccanismi di
autenticazione, e disporre a proprio piacimento di alcune entita'
di rete (DNS, routers or gateways), puo' utilizzare un
attacco di tipo man-in-the middle
per superare i meccanismi di sicurezza di IPsec.
Comunque, un attacco in grado di spezzare il meccanismo di
autenticazione in un sistema basato sull'automatic keying non
e' un danno tanto grave come perdere la chiave in sistema
manual keying.
- Un attacante in grado di leggere il file /etc/ipsec.conf
e otteere le chiavi per una connessione manually keyed, puo'
senza alcuno sforzo leggere tutti i messaggi cifrati con
questa chiave, anche tutti i vecchi messaggi eventualmente
registrati.
- L'Automatic keying possiede una proprieta' detta
perfect forward secrecy. Un attaccante
che riesca a rompere i meccanismi di autenticazione, non
ottiene comunque alcuna chiave e non puo' al volo decifrare
alcun messaggio. Puo' soltanto in seguito tentare un
attacco man-in-the-middle attack
e solo in caso di riuscita leggere i messaggi di quella
sessione. Non potra' leggere messaggi passati, ne'
alcun messaggio futuro, al di fuori della sessione aperta
con l'attacco sopra citato.
Da cio' si deduce che i segreti utilizzati per l'autenticazione
conservati nel file
ipsec.secrets(5) devono essere protetti con attenzione.
- B
- Bay Networks
- Un produttore di routers, hubs e prodotti correlati, ora partner
della Nortel.
- benchmarks
- L'implementazione del triple DES
e' piu' lenta rispetto ad altri cifrari alternativi, ma adeguata
agli scopi del progetto FreeS/WAN. Il codice assembler della
libreria LIBDES che utilizziamo cifra
1.6 megabytes per secondo su un Pentium 200.
- BIND
- Berkeley Internet Name Daemon, uno
dei piu' usati sistemi di DNS (Domain Name Service).
Si veda l'home page di BIND
per ulteriori informazioni.
- Birthday attack
- Un attacco crittografico basato sulla matematica del
paradosso del compleanno. Il principio e' applicabile per due operazioni
crittografiche che producano lo stesso risultato:
Difendersi da questo tipo di attacchi e' una delle motivazioni per cui
- algoritmi di hash come SHA e
RIPEMD-160 utilizzano chiavi a 160-bit come risultato al posto di
chiavi a 128 come avviene invece per MD4, MD5
o il RIPEMD-128.
- AES utilizza blocchi da 128 bit invece dei blocchi a 64-bit
dei cifrari attuali
- IPsec utilizza un contatore a 32-bit per i pacchetti
spediti in una SA automatically keyed
e richiede che la chiave venga sempre ricontrattata quando il contatore abbia
raggiunto il massimo valore.
- Birthday paradox
- Non esattamente un paradosso, ma una considerazione matematica.
In un gruppo di 23 persone le possibilita' che due di esse siano
nate lo stesso giorno e' piu' del 50%.
La seconda persona ha 1 chance su 365 (ignorando gli anni bisestili)
di essere nato lo stesso giorno della prima.
In caso non avvenga, la 3 terza ha 2 chance su 365. Il quarto 3/365.
Il totale cresce molto piu' rapidamente di quanto ci si possa aspettare.
- Block cipher
- Un cifrario simmetrico che tratta blocchi in
chiaro di una lunghezza fissata, restituendo un blocco cifrato per ciascuno
di essi. E' il contrario di uno stream cipher. I
cifrari a blocchi possono essere utilizzati in diversi modi
nel caso incui sia necessario cifrare piu' di un blocco di dati.
Il DES probabilmente il piu' conosciuto ed utilizzato
cifrario a blocchi, anche se ora e' obsoleto. Le chiavia 56-bit lo rendono
molto insicuro. Il
Triple DES e' il cifrario utilizzato in Linux FreeS/WAN.
La generazione corrente di cifrari a blocchi -- come il
Blowfish, il CAST-128 e l'IDEA --
utilizzano tutti blocchi di 64-bit o 128-bit. La generazione futura,
AES, utilizzera' blocchi di 128-bit e chiavi sino a 256.
Si veda il sito del Block Cipher Lounge
.
- Blowfish
- Un cifrario a blocchi a 64-bit e chiavi sino a
448 bits, progettato da Bruce
Schneier and ed utilizzato in diversi prodotti.
Non e' richiesto dallo standard IPsec.
- Brute force attack (exhaustive search)
- Tentare di rompere un cifrario provando tutte le possibili chiavi.
Questo e' sempre possibile in teoria (eccetto in caso di chiavi
one-time pad), ma diviene realizzabile in pratica
soltanto in caso di chiavi con lunghezza inadeguata.
Per un analisi sulla resistenza delle chiavi a questi attacchi si veda
questo documento
sul sito i counterpane.
Chiavi piu' lunghe proteggono da attacchi di tipo brute force.
Ciascun bit aggiunto moltiplica per due il numero di possibili
chiavi. Una chiave sufficientemente grande difende da qualsiasi
attacco di tipo brute force.
Per esempio, il DES Cracker dell' EFF effettua le ricerche esaustive
su chiavi a 56 bit in un paio di giorni. Poniamo per assurdo che un attaccante
possa violare una chiave a 64 bit (256 volte piu' laborioso) in un
secondo. Per una chiave a 96-bit sarebbero necessari comunque 232
secondi, circa 135 anni. Con una chiave a 128-bit, 232 il
tempo richiesto dalla precedente, piu' di 500,000,000,000 anni.
Per questo motivo
- il single DES e' considerato fortemente insicuro
- tutti gli algoritmi di nuova generazione usano 128-bit o anche di piu'
- AES supporta chiavi a 128, 192 e 256 bits
- i cifrari utilizzati da FreeS/WAN devono avere chiavi ad almeno 128-bit
Cautions:
Una chiave piccola indica un cifrario debole, ma si
noti che una lunghezza adeguata non indica necessariamente un
cifrario sicuro. Ci sono molti altri attacchi oltre al brute force,
e la dimensione puo' garantire solo da questo tipo di attacco.
Inoltre, aumentare il numero di bit, raggiunta una certa soglia
di sicurezza, non ha piu' effetti pratici.
Molti algoritmi gestiscono chiavi molto piu' larghe del necessario,
per esempio il Blowfish supporta chiavi sino
a 448 bits e RC4 sino a 2048. Ma oltre i 100 byte,
non vi e' piu' alcuna utilita' pratica.
- Bureau of Export Administration
- see BXA
- BXA
- The US Commerce Department's Bureau of Export A
dministration which administers the EAR Export
Administration Regulations controling the export of, among other
things, cryptography.
- C
- CA
- Certification Authority, un entita' in un'
architettura a chiave pubblica che certifica
le chiavi firmandole. Di solito le CA formano una gerarchia.
La cima della gerarchia viene detta root CA.
Si veda Web of Trust per un modello alternativo.
- CAST-128
- Un cifrario a blocchi che utilizza blocchi da
64 bit e chiavi da 128. Viene illustrato nel RFC 2144 ed e' utilizzato
da prodotti quali Entrust e le versioni piu'
recenti del PGP.
Non viene richiesto dagli rfc che descrivono l'IPsec
e non viene utilizzato da FreeS/WAN..
- CAST-256
- Il candidato dell'Entrust per l'
AES standard, basato sul CAST-128.
- CBC mode
- Cipher Block Chaining mode,
un metodo utilizzato dai cifrari a blocchi nel quale
per ciascun blocco eccetto il primo, il precedente blocco cifrato
viene posto in XOR con il nuovo blocco prima che quest'ultimo sia cifrato
a sua volta. CBC e' il metodo utilizzato da IPsec.
Necessita di un vettore di inizializzazione (IV).
Quest'ultimo viene posto in XOR con il primo blocco. Non e' necessario
che sia tenuto segreto, ma deve essere differente per ogni messaggio
e non predicibile.
- Certification Authority
- see CA
- Challenge-response authentication
- Un sistema di autenticazione nel quale
un partecipante genera un numero casuale, lo
cifra e lo spedisce all'altra parte. L'altro partecipante decifra
e rispedisce il risultato. Se quest'ultimo e' corretto prova al
primo che il secondo conosce il segreto appropriato, necessario
alla decifrazione. Esistono delle variazioni al sistema che
utilizzano chiavi pubbliche o crittografia
simmetrica. Alcune permettono un'
autenticazione a due vie, in grado di assicurare a ciascun partecipante
l'identita' dell'altro.
Questo risulta piu' sicuro di una password contro due semplici
attacchi:
- Se la password viene spedita in chiaro lungo una rete (per esempio
come avviene per il telnet), chiunque stia osservando il traffico
sulla rete puo' leggerla.
- Se una password cifrata viene spedita, l'attaccante puo' salvarla
e riutilizzarla in seguito. Questo viene definito replay attack.
Un sistema challenge-response non spedisce mai una password, ne'
in chiaro ne' cifrata. E' inutile registrare i messaggi per riutilizzarli
in seguito, il numero casuale e' differente per ogni sessione.
Naturalmente un attaccante potrebbe tentare di rompere l'algoritmo
crittografico utilizzato, o il sistema per generare i
numeri casuali.
- Cipher Modes
- Metodi differenti di utilizzare i cifrari a blocchi quando il
messaggio e' piu' lungo di un blocco.
4 sistemi standard sono stati definiti per il DES
nel FIPS 81. Attualmente possono essere applicazti
a qualsiasi cifrario a blocchi.
| ECB | Electronic CodeBook |
cifra ogni blocco in maniera indipendente |
| CBC | Cipher Block Chaining
| Mette in XOR il blocco precedente gia' cifrato con il
nuovo in chiaro e quindi cifra |
| CFB | Cipher FeedBack | |
| OFB | Output FeedBack | |
IPsec utilizza il CBC
poiche' e' solo un poco piu' lento del ECB ed
e' molto piu' sicuro. ECB a partire dallo stesso testo in chiaro
genera sempre lo stesso cifrato a meno di non cambiare la chiave.
Nel CBC questo non avviene.
- Ciphertext
- Output cifrato, e' il contrario del input
plaintext.
- Cisco
- Un produttore di routers, hubs e relativi prodotti. Le loro
soluzioni IPsec sono conpatibili con Linux FreeS/WAN.
- Client
- Questo termine ha almeno due significati riferito all'IPsec:
- I clients di un gateway IPsec sono macchine
che protegge, di solito si trovano su delle sottoreti dietro il
gateway.
- IPsec client software e' la definizione utilizzata
per indicare i vari programmi necessari su una macchina perche' essa
si possa connettere ad una rete IPsec.
FreeS/WAN utilizza generalmente il termine nel primo termine.
I produttori di soluzioni Windows utilizzano spesso il secondo.
- Common Criteria
- Una classificazione internazionale per i diversi livelli di sicurezza
atta a soppiantare il vecchio Rainbow Book.
Alcuni riferimenti web: US
government site e l'
home page del progetto.
- Conventional cryptography
- Si veda symmetric cryptography
- Collision resistance
- La proprieta' che possiede un algoritmo message digest
in grado di rendere complicato per un attaccante riuscire a costruire
due input che generino lo stesso hash in output.
- Copyleft
- Si veda GNU General Public License
- CSE
- Communications Security
Establishment, organizzazione Canadese che si occupa di
signals intelligence.
- D
- DARPA (sometimes just ARPA)
- Il Defense Advanced Research
Projects Agency degli Stati Uniti. Da questo progetto nacque
Arpanet la rete che diede origine ad Internet. Per informazioni si veda
il sito del DARPA.
- Denial of service (DoS) attack
- Un attacco il cui scopo e' rendere impossibile l'utilizzo di un sistema.
- Un variante e' il flooding, ad esempio l'invio di un quantita' ingestibile
di pacchetti o di email, o quant'altro.
- Un'altra possibilita' molto simile alla precedente consiste nell'esaurire
le risorse di calcolo o di memorizzazione a disposizione della vittima. Ad esempio
si consideri "TCP SYN flood". L'apertura di una connessione TCP consta
di tre passaggi:
- Initiator: Connection please (SYN)
- Responder: OK (ACK)
- Initiator: OK here too
Se l'attaccante inserisce delle false informazioni nel primo
pacchetto, in modo che il secondo non arrivera' mai, il ricevente
restera' in attessa di poter chiudere la connessione. Se per ogni
connessione allochiamo una certa quantita' di memoria, e giungono
molti di questi pacchetti, presto la nostra memoria sara' esaurita
anche se nessuna connessione e' stata realmente portata a termine.
- Un attacco del tutto simile consiste nell'inviare dei dati
impossibili da gestire nella speranza che il sistema vada in crash.
Ad esempio. I pacchetti IP hanno come massima dimensione 64K e su
ciascun frammento vengono inserite le informazioni alla propria
posizione rispetto ai 64K della lunghezza totale.
Il "ping of death" si basa su frammenti che inizino poniamo
al 60ensimo K, ma siano di 20K (60+20=80 > 64). Riassemblare questi
pacchetti senza effettuare nessun controllo risulta fatale per
un certo numero di sistemi oeprativi.
I due esempi sopra citati sono attualmente stati discussi e documentati
e pochi sistemi risultano ancora vulnerabili a questi due attacchi.
- DES
- The Data Encryption Standard, un
cifrario a blocchi di 64-bit e chiavi di 56-bit. Probabilmente il piu'
diffuso tra i cifrari simmetrici.Il DES
e' stato creato dal governo degli Stati Uniti per essere utilizzato con
dati non classificati. E' stato attualmente rimpiazzato dall'
AES.
Il DES e' molto insicuro.
Si vedano le voci 3DES e DESX,
cifrari piu' robusti basati sul DES.
- DESX
- Una versione migliorata del DES pogettata da
Ron Rivest del RSA Data Security. Al testo da cifrare prima e dopo
l'applicazione del DES viene aggiunto attraverso un XOR altro materiale
derivato dalla chiave.
- DH
- si veda Diffie-Hellman
- DHCP
- Dynamic Host
Configuration Protocol, un sistema per l'assegnamento
di IP dinamici. Fornisce anche
la possibilita' di comunicare dati ulteriori, come indirizzi di server
DNS o di gateways. Si veda questa pagina
per ulteriori informazioni.
- Diffie-Hellman (DH) key exchange protocol
- Un protocollo che permette a due entita' senza un precedente scambio
di un segreto di crearne uno in modo che la comunicazione risulte
immune ad attacchi basati sull'intercettazione del traffico. Dopo
che le due entita' infatti hanno portato a termine lo scambio di
una chiave possono comunicare usandola in un cifrario a blocchi o
come basa per un successivo scambio di chiavi.
Il protocollo risulta sicuro per gli attacchi passivi,
ma rimane vulnerabile ad attacchi di tipo
man-in-the-middle attacks. Se una terza parte puo' impersonare
Bob per Alice o viceversa, allora non c'e' piu' sicurezza.
L'autenticazione dei partecipanti e' un prerequisito per uno scambio
di chiavi Diffie-Hellman. IPsec puo' utilizzare diversi tipi di
autenticazione. Quelli supportati da
FreeS/WAN vengono discussi nel documento relativo alla
Configurazione.
Lo scambio di chiavi Diffie-Hellman e' basato sul problema
di calcolare un logaritmo discreto e
rimarra' sicuro sino a quando qualcuno non trovera' una soluzione
efficiente per questo problema.
Dato un numero primo p ed un generatore g
(il cui significato viene spiegato meglio in seguito parlando
di logaritmi discreti, Alice:
- genera un numero casuale a
- calcola A = g^a modulo p
- spedisce A a Bob
Intanto Bob:
- genera un numero casuale b
- calcola B = g^b modulo p
- spedisce B ad Alice
Ora Alice e Bob possono calcolare il segreto condiviso s = g^(ab).
Alice conosce a e B, quindi puo' calcolare
s = B^a. Bob conosce A e b quindi
puo' calcolare s = A^b.
Un attaccante potrebbe conoscere p e g poiche'
sono pubblici, ed intercettare A e B, ma
senza poter risolvere in tempi ragionevoli il problema del
logaritmo discreto , non sara' in grado
di trovare la chiave segreta s.
- Digital signature
- Sender:
- calculates a message digest of a document
- encrypts the digest with his or her private key, using some
public key cryptosystem.
- attaches the encrypted digest to the document as a signature
Receiver:
- calculates a digest of the document (not including the signature)
- decrypts the signature with the signer's public key
- verifies that the two results are identical
If the public-key system is secure and the verification succeeds,
then the receiver knows
- that the document was not altered between signing and verification
- that the signer had access to the private key
Such an encrypted message digest can be treated as a signature since
it cannot be created without both the document and
the private key which only the sender should possess. The
legal issues are complex, but several countries are moving in the
direction of legal recognition for digital signatures.
- discrete logarithm problem
- The problem of finding logarithms in a finite field. Given a field
defintion (such definitions always include some operation analogous to
multiplication) and two numbers, a base and a target, find the power
which the base must be raised to in order to yield the target.
The discrete log problem is the basis of several cryptographic
systems, including the Diffie-Hellman key exchange
used in the IKE protocol. The useful property is
that exponentiation is relatively easy but the inverse operation,
finding the logarithm, is hard. The cryptosystems are designed so that
the user does only easy operations (exponentiation in the field) but an
attacker must solve the hard problem (discrete log) to crack the
system.
There are several variants of the problem for different types of
field. The IKE/Oakley key determination protocol uses two variants,
either over a field modulo a prime or over a field defined by an
elliptic curve. We give an example modulo a prime below. For the
elliptic curve version, consult an advanced text such as
Handbook of Applied Cryptography.
Given a prime p, a generator g for the field
modulo that prime, and a number x in the field, the problem
is to find y such that g^y = x.
For example, let p = 13. The field is then the integers from 0 to 12.
Any integer equals one of these modulo 13. That is, the remainder when
any integer is divided by 13 must be one of these.
2 is a generator for this field. That is, the powers of two modulo 13
run through all the non-zero numbers in the field. Modulo 13 we have:
y x
2^0 == 1
2^1 == 2
2^2 == 4
2^3 == 8
2^4 == 3 that is, the remainder from 16/13 is 3
2^5 == 6 the remainder from 32/13 is 6
2^6 == 12 and so on
2^7 == 11
2^8 == 9
2^9 == 5
2^10 == 10
2^11 == 7
2^12 == 1
Exponentiation in such a field is not difficult. Given, say,
y = 11,calculating x = 7is straightforward. One
method is just to calculate 2^11 = 2048,then
2048 mod 13 == 7.When the field is modulo a large prime (say a
few 100 digits) you need a silghtly cleverer method and even that is
moderately expensive in computer time, but the calculation is still not
problematic in any basic way.
The discrete log problem is the reverse. In our example, given
x = 7,find the logarithm y = 11.When the field
is modulo a large prime (or is based on a suitable elliptic curve),
this is indeed problematic. No solution method that is not
catastrophically expensive is known. Quite a few mathematicians have
tackled this problem. No efficient method has been found and
mathematicians do not expect that one will be. It seems likely no
efficient solution to either of the main variants the discrete log
problem exists.
Note, however, that no-one has proven such methods do not exist. If a
solution to either variant were found, the security of any crypto
system using that variant would be destroyed. This is one reason
IKE supports two variants. If one is broken, we can switch to the
other.
- discretionary access control
- controllo degli accessi gestito dagli utenti, per esempio i
permessi rwx sui file di Unix. L'inveerso dei
mandatory access controls.
- DNS
- Domain Name Service, un database distribuito
attraverso il quale un nome viene associato con un IP numerico o
altre informazioni dell'Internet Protocol Suite. Si veda anche il
documento DNS background.
- DOS attack
- Vedi Denial Of Service attack
- dynamic IP address
- Un indirizzo IP assegnato automaticamente, attraverso il
DHCP o qualche altro tipo di protocollo come il PPP
o il PPPoE che la macchina utilizza per connettersi
ad Internet. E' il contrario di un indirizzo statico.
- E
- EAR
- The US government's Export Administration R
egulations, administered by the Bureau of Export
Administration. These have replaced the earlier
ITAR regulations as the controls on export of cryptography.
- ECB mode
- Electronic CodeBook mode, the simplest way to
use a block cipher. See Cipher Modes.
- EDE
- The sequence of operations normally used in either the three-key
variant of triple DES used in
IPsec or the two-key variant used in some other
systems.
The sequence is:
- Encrypt with key1
- Decrypt with key2
- Encrypt with key3
For the two-key version, key1=key3.
The "advantage" of this EDE order of operations is that it makes it
simple to interoperate with older devices offering only single DES. Set
key1=key2=key3 and you have the worst of both worlds, the overhead of
triple DES with the "security" of single DES. Since both the
security of single DES and the overheads of triple DES are
seriously inferior to many other ciphers, this is a spectacularly
dubious "advantage".
- Entrust
- A Canadian company offerring enterprise PKI
products using CAST-128 symmetric crypto,
RSA public key and X.509 directories.
Web site
- EFF
- Electronic Frontier Foundation, an
advocacy group for civil rights in cyberspace.
- Encryption
- Techniques for converting a readable message (
plaintext) into apparently random material (
ciphertext) which cannot be read if intercepted. A key is required
to read the message.
Major variants include symmetric encryption
in which sender and receiver use the same secret key and
public key methods in which the sender uses one of a matched pair
of keys and the receiver uses the other. Many current systems,
including IPsec, are hybrids
combining the two techniques.
- ESP
- Encapsulated Security Payload, il protocollo di
IPsec che fornisce la
cifratura dei dati.
Fornisce inoltre meccanismi di autenticazione
e puo' essere anche utilizzato senza nessun tipo di cifratura (cosa non
troppo consigliabile). Per dettagli si veda il documento sull'
IPsec o l'RFC 2406.
- Extruded subnet
- A situation in which something IP sees as one network is actually in
two or more places.
For example, the Internet may route all traffic for a particular
company to that firm's corporate gateway. It then becomes the company's
problem to get packets to various machines on their
subnets in various departments. They may decide to treat a branch
office like a subnet, giving it IP addresses "on" their corporate net.
This becomes an extruded subnet.
Packets bound for it are delivered to the corporate gateway, since as
far as the outside world is concerned, that subnet is part of the
corporate network. However, instead of going onto the corporate LAN (as
they would for, say, the accounting department) they are then
encapsulated and sent back onto the Internet for delivery to the branch
office.
For information on doing this with Linux FreeS/WAN, look in our
advanced configuration section.
- Exhaustive search
- See brute force attack.
- F
- FIPS
- Federal Information Processing Standard,
gli standard governativi per i prodotti che acquistano. Viene gestito dal
NIST. Tra le altre cose il DES ed
il SHA sono definiti nel FIPS. Il NIST ospita la
home page del FIPS.
- Free Software Foundation (FSF)
- Un'organizzazzione per promuovere il free software, free nel senso
specificato nella loro pagina web
"Free software" e' una questione di liberta', non di prezzo.
Per comprendere il concetto si puo' pensarlo come "liberta' di parola",
invece che come "birra aggratis."
"Free software" si riferisce alla liberta' dell'utente di eseguire,
copiare, ridistribuire, studiare, cambiare, migliorare il software.
Si veda inoltre GNU, GNU General Public
License, ed il sito del FSF site.
- FreeSWAN
- see Linux FreeS/WAN
- FSF
- see Free software Foundation
- G
- GCHQ
- Government Communications
Headquarters, l'ente inglese preposto al
signals intelligence.
- generatore di numeri primi
- si veda il problema dei logaritmi discreti
- GILC
- Global Internet Liberty Campaign,
un'organizzazzione internazionale che si batte, tra le altre cose, per
la liberalizzazzione della crittografia. Hanno una
campagna aperta per
rimuovere il software crittografico dal
Wassenaar Arrangement.
- Global Internet Liberty Campaign
- si veda GILC.
- Global Trust Register
- Un tentativo di creare qualcosa di simile ad una root CA
per il PGP pubblicando sia come libro che sul
web
il fingerprints delle chiavi pubbliche di una serie di utenti
ed organizzazioni ben noti.
- GMP
- The GNU Multi-Precision library code, viene utilizzato
in Linux FreeS/WAN dal Pluto per
i calcoli relative alle chiavi pubbliche.
Si veda la GMP home page.
- GNU
- GNU's Not Unix, il progetto della
Free Software Foundation's che mira a creare un ambiente
unix completamente free. Linux utilizza largamente
queste utilities.
- GOST
- Un cifrario a blocchi elaborato dal governo Russo.
- GPG
- vedi GNU Privacy Guard
- GNU General Public License(GPL, copyleft)
- La licenza sviluppata dalla Free Software Foundation
sotto la quale Linux, Linux
FreeS/WAN e molti altri software vengono distribuiti. Questa licenza
permette a chiunque di redistribuire e modificare il codice, ma proibisce
a chiunque di fornire solo gli eseguibili senza che i sorgenti siano
disponibili. si veda
la pagina relativa sul sito della GNU.
- GNU Privacy Guard
- Una realizzazzione open source delOpen PGP
cosi' come descritto del RFC 2440. Si consulti il sito
web
- GPL
- si veda GNU General Public License.
- H
- Hash
- see message digest
- Hashed Message Authentication Code (HMAC)
- viene utilizzato una funzione per calcolare message digest
attivata pero' da una certa chiave. Questo le rendi differenti rispetto all'utilizzo
solito di una funzione hash:
- normalmente una funzione hash viene inizializzata in maniera standard. Chiunque
puo' calcolare l'hash e provare che il messaggio non sia stato alterato.
- nel caso di HMAC invece si usa una chiave per l'inizializzazione. Solo chi
e' in possesso della chiave puo' riprodurre l'hash. Il controllo dell'hash
non dimostra semplicemente che il messaggio non ha subito variazioni, ma anche
che il creatore conosceva la chiave corretta.
La tecnica esatta utilizzato in IPsec e' definita
dall'RFC 2104. In particolare si fa riferimento al HMAC-MD5-96 ed
al HMAC-SHA-96 poiche' forniscono solo 96 bits dell'hash e questo rende
alcuni tipi di attacchi piu' complicati.
- HMAC
- si veda Hashed Message Authentication Code
- HMAC-MD5-96
- si veda Hashed Message Authentication Code
- HMAC-SHA-96
- si veda Hashed Message Authentication Code
- Hybrid cryptosystem
- Un sistema nel quale si utilizza sia lacrittografia
asimmetrica che la simmetrica. La crittografia
a chiave pubblica fornisce i servizi per gestire le chiavi e le
firme digitali. I cifrari simmetrici forniscono
l'efficienza e la velocita' che mancano alla crittografia a chiave pubblica.
- I
- IAB
- Internet Architecture Board.
- ICMP
- Internet Control
Message Protocol. Un protocollo per amministrare le
connessioni TCP/IP.
- IDEA
- International Data Encrypion Algorithm,
sviluppato in Europa come alternativa esportabile all'americano
DES. Utilizza blocchi di 64-bit e 128-bit, e viene
utilizzato anche dal PGP.
L'IDEA e' sottoposto a coyright e salvo per l'utilizzo personale
richiede l'acquisto di una licenza dall'Ascom.
- IEEE
- Institute of Electrical and Electronic
Engineers, un'associazione professionale che, tra le altre cose,
si occupa di produrre standards tecnici.
- IESG
- Internet Engineering Steering Group
.
- IETF
- Internet Engineering Task Force,
l'organizzazione che riunisce vari gruppi di lavoro occupati a sviluppare
gli standards tecnici per Internet. IPsec e' stato progettato dall'IETF.
- IKE
- Internet Key Exchange, basato sul protocollo di scambio
chiavi Diffie-Hellman. Per dettagli si consulti l'RFC 2409
o il documento sull'IPSEC. l'IKE viene implementato
in Linux FreeS/WAN dal demone Pluto.
- IKE v2
- Una proposta per sostituire l'IKE. Ci sono altri
candidati pero', come il JFK, attualmente (marzo 2002)
non e' ancora stata presa una decisione.
- Initialisation Vector (IV)
- Alcuni sistemi di applicazione di cifrari a blocchi, incluso il
CBC utilizzato dall'IPsec, richiedono alcuni
dati extra in fase di inizializzazione. Questi dati sono detti vettori
di inizializzazione. Lo scopo e' di impedire che testi con incipit uguali
producano il medesimo testo cifrato.
- IP
- Internet Protocol.
- IP masquerade
- Un termine obsoleto per definire il meccanismo che permette
ad una rete di comunicare con Internet anche se disponibile un solo
IP pubblico. Il termine piu' corretto e' Network Address Translation
o NAT.
- IPv4
- La versione in uso dell'Internet protocol suite
.
- IPv6 (IPng)
- La versione 6 dell'Internet protocol suite,
attualmente in stato di sviluppo. Rimpiazzera' la versione 4. IPv6
include IPsec come componente obbligatorio del protocollo.
Si veda
questo sito per ulteriori dettagli.
- IPsec or IPSEC
- Internet Protocol SECurity, una serie di servizi
(authentication e
encryption) al livello IP. E' opzionale per l'IPv4
ed obbligatorio per IPv6.
Si veda il documento sull'IPsec.
- ISAKMP
- Internet Security Association and Key
Management Protocol, definito nel RFC 2408.
- ITAR
- International Traffic in Arms R
egulations, una recente legislazione degli Stati Uniti che ha
limitato l'esportazione di tecnologie e software crittografici.
L'ITAR e' stata soppiantata in questa funzione dal
Export Administration Regulations
sotto il controllo del Bureau of Export Administration.
- IV
- Si veda Initialisation vector
- J
- JFK
- Just Fast Keying,
un candidato per rimpiazare l'IKE.
- K
- Kernel
- La parte centrale di un systema operativo. Controlla l'hardware
e fornisce i servizi correlati a tutti gli altri programmi.
- Keyed message digest
- Si veda HMAC.
- Key length
- Si veda brute force attack
- KLIPS
- Kernel IP Security, le aggiunte del
progetto Linux FreeS/WAN al
kernel di Linux per include il supporto al protocollo
IPsec.
- L
- LDAP
- Lightweight Directory Access Protocol,
definito negli RFCs 1777 e 1778, un metodo per accedere ad informazioni
conservate in directories. LDAP viene utilizzato da diverse implementazioni
di PKI, spesso con directories X.501 e certificati
X.509. Puo' anche essere utilizzato da
IPsec per i certificati delle chiavi dalle diverse PKIs.
- LIBDES
- Una libreria scritta da Eric Young e che implementa l'algoritmo di
cifratura DES.
- Linux Security Modules (LSM)
- un progetto per integrare all'interno di Linux un'interfaccia che
supporti moduli per diverse security policies.
Permette a progetti diversi di usare approcci diversificati per introdurre
policy di sicurezza all'interno del kernel, senza vincolarlo ad un approccio
specifico.
- M
- Man-in-the-middle attack
- Un attacco attivo nel quale l'attaccante si
pone in mezzo a due entita' che comunicano ed impersona l'una e
l'altra.
Per esempio, se Alice e Bob stanno negoziando
una chiave attraverso il sistema Diffie-Hellman,
ma non usano alcuna forma di autenticazione
per essere certi che stiano parlando l'uno all'altro, un attaccante
potrebbe inserirsi nella comunicazione ed ingannare entrambi.
Chiamiano l'attaccante Mallory. Per Bob lui diverra' Alice. Per
Alice impersonera' Bob. Verranno negoziate due chiavi: Alice-to-Mallory
e Bob-to-Mallory. Sia Alice che Bob pensano che la chiave sia in
realta' Alice-to-Bob.
Un messaggio da Alice a Bob guingera' a Mallory che lo decifrera',
lo leggera', ne' fara' una copia, lo ricifrera' con la chiave
Bob-to-Mallory e lo spedira' a Bob. Bob lo decifrera' e mandera'
una risposta che Mallory decifrera', leggera, ricifrera' e spedira
as Alice.
Perche' l'attacco funzioni Mallory dovra'
- sovvertire qualche parte della rete: DNS, router, Alice or Bob's machine,
mail server,...
- superare eventuali meccanismi di autenticazione. Meccanismi forti di
autenticazione eliminano completamente la possibilita' di questo tipo
di attacchi. Per questo l'IKE impone meccanismi di
autenticazione
- riuscire a lavorare in tempo reale, mandare i messaggi con un ritardo
accettabile, in modo da non mettere in allarme la vittima, il che e'
semplice se parliamo di email, ma piuttosto complicato in altre situazioni.
Comunque in caso di riuscita e' un attacco devastante. Non solo
sara' possibile infatti leggere tutti i messaggi, ma anche alterarli
o inserirne di propri ... Di fatto si assumera' il controllo della
comunicazione.
- mandatory access control
- meccanismi di access control non definibili dall'utente
(si veda discretionary access control),
ma imposti dal sistema.
Per esempio, un documento denominato "secret, zebra"
potrebbe essere leggibile solo da chi partecipa al progetto
Zebra. Idealmente il sistema evita ogni accesso al di fuori di questi
limiti. Si potrebbe ad esempio averne accesso in lettura, ma non
essere in grado di spedirlo via e-mail o stamparlo.
I sistemi Mandatory access control sono necessari per alcuni livelli
di sicurezza descritti nel Rainbow Book o nel
Common Criteria.
Il progetto Security Enhanced Linux aggiunge a
Linux il supporto per il mandatory access control.
- Manual keying
- Una modalita' di funzionamento di IPsec nelle quale le chiavi sono
fornite dall'amministratore del sistema. L'alternativa e'
automatic keying, preferibile in molti casi.
- MD4
- Message Digest Algorithm Four from Ron Rivest
of RSA. MD4 was widely used a few years ago, but
is now considered obsolete. It has been replaced by its descendants
MD5 and SHA.
- MD5
- Message Digest Algorithm Five from Ron Rivest
of RSA, an improved variant of his
MD4. Like MD4, it produces a 128-bit hash. For details see RFC
1321.
MD5 is one of two message digest algorithms available in IPsec. The
other is SHA. SHA produces a longer hash and is
therefore more resistant to birthday attacks,
but this is not a concern for IPsec. The HMAC
method used in IPsec is secure even if the underlying hash is not
particularly strong against this attack.
Hans Dobbertin found a weakness in MD5, and people often ask whether
this means MD5 is unsafe for IPsec. It doesn't. The IPsec RFCs discuss
Dobbertin's attack and conclude that it does not affect MD5 as used for
HMAC in IPsec.
- Meet-in-the-middle attack
- A divide-and-conquer attack which breaks a cipher into two parts,
works against each separately, and compares results. Probably the best
known example is an attack on double DES. This applies in principle to
any pair of block ciphers, e.g. to an encryption system using, say,
CAST-128 and Blowfish, but we will describe it for double DES.
Double DES encryption and decryption can be written:
C = E(k2,E(k1,P))
P = D(k1,D(k2,C))
Where C is ciphertext, P is plaintext, E is encryption, D is
decryption, k1 is one key, and k2 is the other key. If we know a P, C
pair, we can try and find the keys with a brute force attack, trying
all possible k1, k2 pairs. Since each key is 56 bits, there are 2
112 such pairs and this attack is painfully inefficient.
The meet-in-the middle attack re-writes the equations to calculate a
middle value M:
M = E(k1,P)
M = D(k2,C)
Now we can try some large number of D(k2,C) decryptions with various
values of k2 and store the results in a table. Then start doing E(k1,P)
encryptions, checking each result to see if it is in the table.
With enough table space, this breaks double DES with 256
+ 256 = 257work. Against triple DES, you need
256 + 2112 ~= 2112.
The memory requirements for such attacks can be prohibitive, but
there is a whole body of research literature on methods of reducing
them.
- Message Digest Algorithm
- An algorithm which takes a message as input and produces a hash or
digest of it, a fixed-length set of bits which depend on the message
contents in some highly complex manner. Design criteria include making
it extremely difficult for anyone to counterfeit a digest or to change
a message without altering its digest. One essential property is
collision resistance. The main applications are in message
authentication and digital signature
schemes. Widely used algorithms include MD5 and
SHA. In IPsec, message digests are used for HMAC
authentication of packets.
- MTU
- Maximum Transmission U
nit, the largest size of packet that can be sent over a link. This is
determined by the underlying network, but must be taken account of at
the IP level.
IP packets, which can be up to 64K bytes each, must be packaged into
lower-level packets of the appropriate size for the underlying
network(s) and re-assembled on the other end. When a packet must pass
over multiple networks, each with its own MTU, and many of the MTUs are
unknown to the sender, this becomes a fairly complex problem. See
path MTU discovery for details.
Often the MTU is a few hundred bytes on serial links and 1500 on
Ethernet. There are, however, serial link protocols which use a larger
MTU to avoid fragmentation at the ethernet/serial boundary, and newer
(especially gigabit) Ethernet networks sometimes support much larger
packets because these are more efficient in some applications.
- N
- NAI
- Network Associates, a conglomerate
formed from PGP Inc., TIS (Trusted Information
Systems, a firewall vendor) and McAfee anti-virus products. Among other
things, they offer an IPsec-based VPN product.
- NAT
- Network Address Translation, a process by which
firewall machines may change the addresses on packets as they go
through. For discussion, see our
background section.
- NIST
- Il US National Institute of Standards
and Technology, responsabile per lo standard FIPS
che comprendente il DES ed il suo sostituto,
l'AES.
- Nonce
- A random value used in an
authentication protocol.
- Non-routable IP address
- An IP address not normally allowed in the "to" or "from" IP address
field header of IP packets.
Almost invariably, the phrase "non-routable address" means one of the
addresses reserved by RFC 1918 for private networks:
- 10.anything
- 172.x.anything with 16 <= x <= 31
- 192.168.anything
These addresses are commonly used on private networks, e.g. behind a
Linux machines doing IP masquerade. Machines within
the private network can address each other with these addresses. All
packets going outside that network, however, have these addresses
replaced before they reach the Internet.
If any packets using these addresses do leak out, they do not go far.
Most routers automatically discard all such packets.
Various other addresses -- the 127.0.0.0/8 block reserved for local
use, 0.0.0.0, various broadcast and network addresses -- cannot be
routed over the Internet, but are not normally included in the meaning
when the phrase "non-routable address" is used.
- NSA
- The US National Security Agency,
the American organisation for signals intelligence
, the protection of US government messages and the interception and
analysis of other messages. For details, see Bamford's
"The Puzzle Palace".
Some
history of NSA documents were declassified in response to a FOIA
(Freedom of Information Act) request.
- O
- Oakley
- A key determination protocol, defined in RFC 2412.
- Oakley groups
- The groups used as the basis of Diffie-Hellman key
exchange in the Oakley protocol, and in IKE. Four
were defined in the original RFC, and a fifth has been
added since.
Linux FreeS/WAN currently supports the three groups based on finite
fields modulo a prime (Groups 1, 2 and 5) and does not support the
elliptic curve groups (3 and 4). For a description of the difference of
the types, see discrete logarithms.
- One time pad
- A cipher in which the key is:
- as long as the total set of messages to be enciphered
- absolutely random
- never re-used
Given those three conditions, it can easily be proved that the cipher
is perfectly secure, in the sense that an attacker with intercepted
message in hand has no better chance of guessing the message than an
attacker who has not intercepted the message and only knows the message
length. No such proof exists for any other cipher.
There are, however, several problems with this "perfect" cipher.
First, it is wildly impractical for most
applications. Key management is at best difficult, often completely
impossible.
Second, it is extremely fragile. Small changes which
violate the conditions listed above do not just weaken the cipher
liitle. Quite often they destroy its security completely.
- Re-using the pad weakens the cipher to the point where it can be
broken with pencil and paper. With a computer, the attack is trivially
easy.
- Using anything less than truly random
numbers completely invalidates the security proof.
- In particular, using computer-generated pseudo-random numbers may
give an extremely weak cipher. It might also produce a good stream
cipher, if the pseudo-random generator is both well-designed and
properely seeded.
Marketing claims about the "unbreakable" security of various products
which somewhat resemble one-time pads are common. Such claims are one
of the surest signs of cryptographic snake oil;
most systems marketed with such claims are worthless.
Finally, even if the system is implemented and used correctly, it is
highly vulnerable to a substitution attack. If an attacker
knows some plaintext and has an intercepted message, he can discover
the pad.
- This does not matter if the attacker is just a
passive eavesdropper. It gives him no plaintext he didn't already
know and we don't care that he learns a pad which we will never re-use.
- However, an active attacker who knows the
plaintext can recover the pad, then use it to encode with whatever he
chooses. If he can get his version delivered instead of yours, this may
be a disaster. If you send "attack at dawn", the delivered message can
be anything the same length -- perhaps "retreat to east" or "shoot
generals".
- An active attacker with only a reasonable guess at the plaintext can
try the same attack. If the guess is correct, this works and the
attacker's bogus message is delivered. If the guess is wrong, a garbled
message is delivered.
In general then, despite its theoretical perfection, the one-time-pad
has very limited practical application.
See also the one
time pad FAQ.
- Opportunistic encryption
- A situation in which any two IPsec-aware machines can secure their
communications, without a pre-shared secret and without a common
PKI or previous exchange of public keys. This is one of the goals
of the Linux FreeS/WAN project, discussed in our
introduction section.
Setting up for opportunistic encryption is described in our
configuration document.
- Orange book
- the most basic and best known of the US government's
Rainbow Book series of computer security standards.
- P
- P1363 standard
- An IEEE standard for public key cryptography.
Web page.
- Passive attack
- Un attacco nel quale l'attaccante spia ed analizza i messaggi intercettati,
al contrario di un attacco attivo nel quale i messaggi
vengono modificati o generati da zero.
- Path MTU discovery
- Il processo che si usa per scoprire la dimensione massima
che i links su un certo percorso possono utilizzare senza
dover frammentare il pacchetto -- ovvero senza che un
qualche router debba spezzettare il pacchetto in unita'
piu' piccole perche' rientrino nel proprio
MTU.
Viene realizzto in questa maniera:
- la sorgente manda il pacchetto piu' grande che il primo link
puo' trasportare, attivando il bit DF(don't f
ragment) nel header del pacchetto
- any router which cannot send the packet on (outgoing MTU is too
small for it, and DF prevents fragmenting it to match) sends back an
ICMP packet reporting the problem
- originator looks at ICMP message and tries a smaller size
- eventually, you settle on a size that can pass all routers
- thereafter, originator just sends that size and no-one has to
fragment
Since this requires co-operation of many systems, and since the next
packet may travel a different path, this is one of the trickier areas
of IP programming. Bugs that have shown up over the years have
included:
- malformed ICMP messages
- hosts that ignore or mishandle these ICMP messages
- firewalls blocking the ICMP messages so host does not see them
Since IPsec adds a header, it increases packet size and may require
fragmentation even where incoming and outgoing MTU are equal.
- Perfect forward secrecy (PFS)
- Una proprieta' dei sistemi come il Diffie-Hellman
che utilizzano una chiave a lunga durata (l'equivalente di un segreto
condiviso nell'IKE) e genera una serie di chiavi a breve durata quando
serve. Se un attaccante riesce ad ottenere la chiave di lunga durata
- non riuscira' a leggere messaggi passati.
- non riuscira' a leggere messaggi futuri a meno di portare
a termine altri attacchi.
L'attacante avra' sempre bisogno della chiave temporanea per decifrare
il traffico e la sola chiave a lunga durata non implica che questo sia
sempre possibile. In ogni caso l'attaccante sara' nella posizione di
condurre altri attacchi (ad esempio di tipo
man-in-the-middle) per ottenere alcune chiavi temporanee, ma non
potra' comunque ottenerle prima di essersi procurato una chiave di
lunga durata.
- PFS
- see Perfect Forward Secrecy
- PGP
- Pretty Good Privacy, un sistema di cifratura
per la posta elettronica basato su un sistema a chiave pubblica,
scritto da Phil Zimmerman.
The 2.xx versions of PGP used the RSA public key
algorithm and used IDEA as the symmetric cipher.
These versions are described in RFC 1991 and in
Garfinkel's book. Since version 5, the products from
PGP Inc. have used Diffie-Hellman public key
methods and CAST-128 symmetric encryption. These
can verify signatures from the 2.xx versions, but cannot exchange
encryted messages with them.
An IETF working group has issued RFC
2440 for an "Open PGP" standard, similar to the 5.x versions. PGP Inc.
staff were among the authors. A free Gnu Privacy Guard
based on that standard is now available.
For more information on PGP, including how to obtain it, see our
cryptography links.
- PGP Inc.
- A company founded by Zimmerman, the author of PGP
, now a division of NAI. See the
corporate website. Zimmerman left in 2001, and early in 2002 NAI
announced that they would no longer sell PGP..
Versions 6.5 and later of the PGP product include PGPnet, an IPsec
client for Macintosh or for Windows 95/98/NT. See our
interoperation document.
- Photuris
- Un altro sistema di negoziazione delle chiavi, un'alternativa ad
IKE, descritto negli RFCs 2522 e 2523.
- PPP
- Point-to-Point Protocol, connessione utilizzata
sui modem e le linee seriali, but see also PPPoE.
- PPPoE
- PPP over Ethernet, un protocollo per fare in
modo che una linea ethernet sia utilizzata come un link point-to-point
seriale. Utilizzata principalmente per le connessioni ADSL, perche'
permette ai provider di utilizzare gli stessi meccanismi sviluppati
per il dial-up.
Roaring Penguin fornisce una valida implementazione per linux.
- PPTP
- Point-to-Point Tunneling Protocol, utilizzato
da Microsoft per la creazioni di VPN. Vi sono alcuni papers che descrivono
le debolezze delle versioni meno recenti e non, si veda
counterpane.com. E' stata rimpiazzata da L2TP.
- PKI
- Public Key Infrastructure, sistemi
basati sull'utilizzo di chiavi pubbliche.
Vi sono diversi PKI sul mercato. Tipicamente utilizzano gerarchie
basate su Certification Authorities (CAs).
Spesso con LDAP e directories
X.509.
Si veda Web of Trust per un approccio
differente.
- PKIX
- PKI eXchange, an IETF
standard that allows PKIs to talk to each other.
This is required, for example, when users of a corporate PKI need to
communicate with people at client, supplier or government
organisations, any of which may have a different PKI in place. I should
be able to talk to you securely whenever:
- your organisation and mine each have a PKI in place
- you and I are each set up to use those PKIs
- the two PKIs speak PKIX
- the configuration allows the conversation
At time of writing (March 1999), this is not yet widely implemented
but is under quite active development by several groups.
- Plaintext
- The unencrypted input to a cipher, as opposed to the encrypted
ciphertext output.
- Pluto
- The Linux FreeS/WAN daemon which handles key
exchange via the IKE protocol, connection
negotiation, and other higher-level tasks. Pluto calls the
KLIPS kernel code as required. For details, see the manual page
ipsec_pluto(8).
- Public Key Cryptography
- In public key cryptography, keys are created in matched pairs.
Encrypt with one half of a pair and only the matching other half can
decrypt it. This contrasts with symmetric or
secret key cryptography in which a single key known to both parties
is used for both encryption and decryption.
One half of each pair, called the public key, is made public. The
other half, called the private key, is kept secret. Messages can then
be sent by anyone who knows the public key to the holder of the private
key. Encrypt with the public key and you know that only someone with
the matching private key can decrypt.
Public key techniques can be used to create
digital signatures and to deal with key management issues, perhaps
the hardest part of effective deployment of
symmetric ciphers. The resulting hybrid
cryptosystems use public key methods to manage keys for symmetric
ciphers.
Many organisations are currently creating PKIs, public
key infrastructures to make these benefits widely available.
- Public Key Infrastructure
- see PKI
- Q
- R
- Rainbow books
- Un insieme di standards del governo americano per la valutazione dell'
affidabilita' di un sitema di computer, il piu' noto e' l' Orange Book.
Si veda questa pagina
di riferimento.
I Rainbow books ormai considerati obsoleti, rimpiazzati dagli
standards internazionali Common Criteria.
- Random
- A remarkably tricky term, far too much so for me to attempt a
definition here. Quite a few cryptosystems have been broken via attacks
on weak random number generators, even when the rest of the system was
sound.
See
RFC 1750 for the theory.
See the manual pages for
ipsec_ranbits(8) and ipsec_prng(3) for more on FreeS/WAN's use of
randomness. Both depend on the random(4) device driver..
A couple of years ago, there was extensive mailing list discussion
(archived here
)of Linux /dev/random and FreeS/WAN. Since then, the design of the
random(4) driver has changed considerably. Linux 2.4 kernels have the
new driver..
- Raptor
- A firewall product for Windows NT offerring IPsec-based VPN
services. Linux FreeS/WAN interoperates with Raptor; see our
interop document for details. Raptor have recently merged with
Axent.
- RC4
- Rivest Cipher four, designed by Ron Rivest of
RSA and widely used. Believed highly secure with adequate key
length, but often implemented with inadequate key length to comply with
export restrictions.
- RC6
- Rivest Cipher six, RSA's
AES candidate cipher.
- Replay attack
- Un attacco nel quale l'attaccante memorizza certi dati e li ripropone
in seguito nel tentativo di ingannare il destinatario.
- Reverse map
- Nel sistema DNS, una tabella di indirizzi IP che
puo' essere utilizzata per ricavare il nome di una macchina o altre informazioni.
- RFC
- Request For Comments, an Internet document.
Some RFCs are just informative. Others are standards.
Our list of IPsec and other security-related
RFCs is here, along with information on
methods of obtaining them.
- Rijndael
- a block cipher designed by two Belgian
cryptographers, winner of the US government's AES
contest to pick a replacement for DES. See the
Rijndael home page.
- RIPEMD
- A message digest algorithm. The current
version is RIPEMD-160 which gives a 160-bit hash.
- Root CA
- The top level Certification Authority in a
hierachy of such authorities.
- Routable IP address
- Most IP addresses can be used as "to" and "from" addresses in packet
headers. These are the routable addresses; we expect routing to be
possible for them. If we send a packet to one of them, we expect (in
most cases; there are various complications) that it will be delivered
if the address is in use and will cause an ICMP
error packet to come back to us if not.
There are also several classes of
non-routable IP addresses.
- RSA algorithm
- Rivest Shamir Adleman e' un
algortimo a chiave pubblica che prende il nome dai propri inventori.
E' molto utilizzato poiche' e' stato liberato dal brevetto nel
settembre del 2000.
Puo' essere utilizzato per fornire sia servizi di cifratura\
che di firma elettronica. Nell'IPsec viene
utilizzato solo per la firma. In particolare fornisce l'
autenticazione per la negoziazione delle chiavi del protocollo IKE.
In breve:
Il grande matematico francese del XVII secolo
Fermat provo' che
per un dato primo p ed un numero x, 0 <= x < p:
x^p == x modulo p
x^(p-1) == 1 modulo p, non-zero x
Dal quale segue che se abbiamo due numeri primi p e q due
numeri e e d, tali che:
ed == 1 modulo lcm( p-1, q-1)
dove lcm() e' il minimo comune multiplo, allora
per ciasun x, 0 <= x < pq:
x^ed == x modulo pq
Dunque si potranno ricavare un insieme di numeri p, q, e, d e
pubblicare il prodotto N=pq ed e a titolo di chiave pubblica.
Detto c il testo cifrato
ed i il testo in chiaro in input,
la cifratura avverra' cosi':
c = i^e modulo N
Un attaccante non puo' ricavare i dal testo cifrato c, a meno
di non riuscire a fattorizzare N oppure di risolvere il
logaritmo discreto.
Se p,q sono due grandi numeri primi(centinaia o migliaia di bit)
non esiste una soluzione efficiente al problema.
Il destinatario, che conosce la chiave privata (N e d), puo'
facilmente ricavare il testo in chiaro p corrispondente poiche':
c^d == (i^e)^d modulo N
== i^ed modulo N
== i modulo N
Questa sistema rappresenta una tecnologia a chiave pubblica piuttosto
efficiente, con solo due problemi. Richiede un certo tempo per effettuare
i calcoli, e non vi sono prove che non sia possibile risolvere il problema
del logaritmo discreto, semplicemente nessuno ha ancora trovato una soluzione
efficciente.
- RSA Data Security
- Una compagnia fondata dagli inventori del RSA.
- S
- SA
- Security Association, il canale negoziato dai livelli
piu' alti di Ipsec e utilizzato dai livelli sottostanti
(ESP and AH). Le SA sono unidirezionali:
sono necessari una coppia di esse per una comunicazione che coinvolga due
entita'.
Una SA e' difinita da tre cose -- la destinazione, il protocollo
( AH o ESP) e un SPI,
un security parameters index, utilizzato per conservare altri parametri
come chiavi di sessione o vettori di inizializzazione.
Per ulteriori dettagli si veda il documento sull' IPsec
o l'RFC 2401.
- SE Linux
- Security Enhanced Linux, un
progetto sponsorizzato dalla NSA per aggiungere
a linux un mandatory access control.
Si veda l'home page.
- Secure DNS
- Una versione del DNS or Domain Name Service
con alcuni servizi di autenticazione. E' stata progettata dal gruppo
di lavoro sulla sicurezza del DNS del
IETF.
Si tengano presenti anche l'
Internet Software Consortium per informazioni sui progressi
nelle implementazioni e l'ultima versione di BIND.
IPsec utilizza questo protocollo insieme al
Diffie-Hellman per effettuare il bootstrap, cioe' per instaurare
una conessione cifrata tra due gateway. In questo modo diviene possibile
l' opportunistic encryption. Ogni coppia di
macchine in grado di autenticarsi l'una con l'altra attraverso il DNS
puo' comunicare in maniera sicura, senza che esista un segreto condiviso
preesistente o un PKI condiviso.
- Secret key cryptography
- Vedi symmetric cryptography
- Security Association
- Vedi SA
- Security Enhanced Linux
- Vedi SE Linux
- Sequence number
- Un numero aggiunto al pacchetto o ad un messaggio che indica la
posizione all'interno di una sequenza di pacchetti o di messaggi.
Fornisce una certa protezione contro gli attacchi di tipo
replay.
Per l' automatic keying mode, gli RFCs di
IPsec richiedono che il mittente generi un numero di
sequenza per ciascun pacchetto, ma non specifica cosa il destinatario debba
farci.
- SHA
- SHA-1
- Secure Hash Algorithm, un
algoritmo per il message digest sviluppato dal NSA
per essere utilizzato nel Digital Signature standard, FIPS
numero 186 rilasciato dal NIST.
Lo SHA4 e' una variante del MD4 che produce 160 bit
di output.
SHA e' uno dei due algoritmi di hash disponibili in IPsec. L'altro
e' l'MD5. Alcune persone non si fidano di SHA poiche'
e' stato sviluppato dal NSA. Non si cono per quanto
ne sappiamo delle prove che SHA sia un algoritmo inaffidabile, ma cio'
non ne fa un algoritmo affidabile.
L'NSA ha fatto dei piccoli cambiamenti alla versione originale poco
prima di rilasciarlo, ma non ha voluto illustrarne le motivazioni,
adducendo che erano correzzioni per renderlo immune da alcuni tipi
di attacchi. Questa nuova versione e' detta SHA-1, in generale pero'
datosi che ha sostituito la precedente, ci si riferisce ad essa semplicemente
come SHA.
- SHA-256
- SHA-384
- SHA-512
- Varianti dello SHA progettate per corrispondere alle chiavi da
128, 192 e 256 bits dell' AES. Lo sforzo per
rompere un algortimo di crittazione con attacco di tipo
brute force e' "2 elevato la lunghezza della chiave"
operazioni, ma con un attacco di tipo birthday sono
necessari soltanto "2 elevato la lunghezza dell'hash / 2" tentativi, dunque come regola
generale si puo' pensare di assumere che la lunghezza di un hash debba essere
il doppio della chiave per avere la stessa resistenza a questo tipo di attacco.
SHA-256, SHA-384 and SHA-512 sono progettati per corrispondere dunque
all'AES rispettivamente di 128, 192 e 256-bit.
- Signals intelligence (SIGINT)
- Le attivita' di agenzie governative di diverse nazioni tese
a rendere piu' sicure le proprie comunicazioni ed a leggere
quelle degli altri. Crittografia, crittoanalisi, intercettazione,
controllo ed analisi di diversi tipi di segnali. Le organizzazioni
piu' note sono l'americana NSA, la britannica
GCHQ e la candeseCSE.
- SKIP
- Simple Key management for Internet P
rotocols, un'alternativa allo IKE sviluppata da Sun
e commercializzata da Internet Commerce Group.
- Snake oil
- Crittografia farlocca. Si vedano le
Snake Oil FAQ o
questo scritto di Schneier.
- SPI
- Security Parameter Index, un indice utilizzato
dal protocollo IPsec per mantenere distinte le connessioni.
Una Security Association (SA) viene identificata dalla
destnazione, dal protocollo e da un SPI. Senza quest'ultimo due connessioni
allo stesso gateway che utilizzino lo stesso protocollo si confonderebbero.
Per maggiori dettagli, si veda RFC 2401.
- SSH
- Secure SHell, un rifacimento con supporto crittografico
per i comandi rsh, rlogin, etc.
- SSH Communications Security
- Una compagnia fondata dagli autori di SSH.
Gli uffici stanno in Finlandia
ed in California. Hanno sviluppato
una serie di tools per lo creazione di applicazioni di IPsec.
- SSL
- Secure Sockets Layer
,un insieme di servizi di cifratura ed autenticazione sviluppati
per i browsers web da netscape. Molto utilizzati per il commersio in
Internet. Anche conosciuti come TLS.
- SSLeay
- Un'implementazione libera di SSL scritta da
Eric Young e da altri programmatori. Sviluppata in Australia; non
soggetta al controllo sulle esportazioni imposto dagli Stati Uniti.
- static IP address
- Un indirizzo IP prefissato per una macchina, e' l'opposto di un
indirizzo dinamico che viene assegnato attraverso un server
DHCP o ottenuto come parte del processo di
inizializzazione di una connessione PPP o
PPPoE.
- Stream cipher
- Un cifrario simmetrico che produce come
output un flusso di dati da combinare (sovente attraverso un XOR o
qualche operazione sui bit) con un testo in chiaro per produrre un
testo cifrato. Il contrario di un cifrario a blocchi.
IPsec does not use stream ciphers. Their main
application is link-level encryption, for example of voice, video or
data streams on a wire or a radio signal.
- subnet
- Un gruppo di indirizzi IP appartenenti logicamente ad
una rete, tipicamente (ma non sempre) assegnati ad una rete
fisica. Il range di indirizzi in una rete viene descritto
attraverso una maschera di rete, una subnet mask.
- subnet mask
- Un metodo per indicare gli indirizzi di una sottorete. Qui di
seguito due esempi:
- 101.101.101.0/24
- 101.101.101.0 con maschere 255.255.255.0
Il '24' e' un abbrevizzione per indicare una subnet di 24 bits di 1
ed il resto a zero, ed e' uguale alla dicitura 255.255.255.0.
Questo indica che per questo range di indirizzi i primi 24 bits
sono da intendersi come la parte che identifica la rete ed i restanti
8 sono utilizzati per indicare gli host della rete. Due indirizzi
sono pero' riservati: 101.101.101.0 indica tutta la rete senza
riferirirsi ad alcuna macchina in particolare, 101.101.101.255
indica invece tutte le macchine della rete, e viene detto broadcast.
Da 1 a 254 sono invece gli indirizzi disponibili per le macchine
facenti parte della rete.
E' piuttosto comune dividere le sottoreti in maniera gerarchica.
Per esempio, un'organizzazzione possiede una rete /16, ed assegna
un tot di /24 reti a ciascun dipartimento. Rifacendosi all'esempio
di prima: 101.101.0.0 e' la rete /16, 101.101.1.0, 101.101.2.0
... 101.101.254.0, sone le reti assegnati ai dipartimenti.
Un ISP potrebbe avere una sottorete molto ampia ed attribuire un
certo numero di reti /26 (64 indirizzi per ciascuna rete, 62 utilizzabili),
per gli utenti dialup e alcune /29 sottoreti (8 indirizzi, di cui 6 utilizzabili)
per i clients interni.
Esiste una semplice calcolatrice per sottoreti scaricabile come
parte dq tool.
- S/WAN
- Secure Wide Area Network, un progetto che coinvolge
l' RSA Data Security ed un certo numero
di altre compagnie. Ha lo scopo di verificare che tutte le
implementazioni di IPsec siano compatibili e possano comunicare
tra di loro.
- Symmetric cryptography
- La crittografia simmetrica, anche detta convenzionale o
a chiave segreta, si basa su di una chiave condivisa da
mittente e destinatario. Il mittente cifra con una chiave
ed il destinatario decifra con la stessa. Un osservtore senza
la chiave non potra' decifrare il messaggio. Ci sono due grandi
categorie di cifrari simmetrici:
block ciphers e stream ciphers.
La crittografia simmetrica e' il contrario di quella asimmetrica
o a chiave pubblica in cui i due partecipanti
utilizzano chiavi diverse.
Il piu' grande problema della crittografia simmetrica e'
naturalmente la gestione delle chiavi. Mittente e destinatario
devono possedere la stessa chiave e quest'ultima deve essere
tenuta segreta da entrambe le parti. Questo risulta semplice
sinche' si tratta di due partecipanti ed esiste un canale
sicuro o un corriere fidato al quale affidare la consegna delle
chiavi.
Tutto si complica col crescere dei partecipanti. Un'aplicazione
potrebbe essere scritta, ad esempio, per utilizzare una sola chiave per 100
persone, ma c'e' un notevole problema. Ci fidiamo di tutte queste
persone ? Si fidano le une delle altre ? Dorebbero ?
Qual'e' il rischio di compromissione per una chiave ? E' possibile
distribuire la chiave a tutte queste persone senza perdere in
segretezza ? Che fare in caso una di esse abbandoni l'organizzazzione ?
D'altra parte se invece ogni entita' possiede una propria chiave,
ogni utente deve possedere oltre alla propria anche le altre 99
per poter comunicare con ciascuno. Dunque necessitiamo di
99*100/2 = 4950 canali sicuri per scambiare le chiavi oppure
di un'autorita' centrale che distribuisca le 100 chiavi tra
tutti i partecipanti.
Nulla di tutto cio' e' realizzabile senza grossi sforzi.
Nulla che non diventi un incubo per chi dovra' amministrare il
sistema.
In breve, la parte piu' complicata di un sistema che utilizza
crittografia convenzionale e' la gestione delle chiavi. Oggi
la soluzione piu' comune consiste nella costituzione di
un sistema ibrido nel quale le
chiavi pubbliche vengono utilizzate per scambiarsi chiavi di sessione
simmetriche.
- T
- TIS
- Trusted Information Systems, un rivenditore di firewall ora parte del
NAI. I loro prodotti della serie Gauntlet permettono
di creare VPN con IPsec. TIS implementa la prima versione del
Secure DNS su contratto del DARPA.
- TLS
- Transport Layer Security, un nuovo nome per lo standard
SSL.
- TOS field
- Il campo Type Of S
ervice nell'header IP, utilizzato la qualita' dell'instradamento.
- Traffic analysis
- Ricavare informazioni da campioni di traffico in transito,
senza decodificarli o leggere i messaggi. Ad esempio nella
seconda guerra mondiale gli inglesi hanno dedotto l'imminenza
di un attacco tedesco, poiche' tutte le comunicazioni radio
germaniche cessarono. Il silenzio radio era una misura di
sicurezza utilizzata in occasioni particolarmente delicate,
ad esempio un attacco imminente.
Nello spionaggio industriale e' interessante anche solo
sapere che la compagnia A ha comunicato con la B, sopratutto
se e' noto che A e' in cerca di un compratore e B ha fondi
da investire.
In genrale l'analisi del traffico in se' non e' particolarmente
utile, ma in contesto generale dove alcune informazioni sono gia'
note, puo' rivelarsi molto utile. Quando si deve risolvere un
grosso puzzle, ogni piccolo aiuto e' valido.
IPsec non protegge dall'analisi del traffico.
E' possibile pero' utilizzare dei piccoli accorgimenti ad esempio
cifrare piu' traffico del necessario, o instradarlo in maniera
farlocca, o cifrare dei pacchetti falsi per confodere gli analisti.
- Transport mode
- Un'applicazione di IPsec in cui il gateway IPsec e' anche la
destinazione del pacchetto, quindi ogni macchina agisce da
gateway per se' stessa. Il contrario con il
tunnel mode.
- Triple DES
- see 3DES
- TTL
- Time To Live,
messanismo utilizzato per controllare il DNS caching.
I servers scartano i records in cui il TTL e' scaduto
- Tunnel mode
- Un applicazione di IPsec nel quale un gateway fornisce protezione
per i pacchetti in entrata ed in uscita dalla rete. E' il contrario del
transport mode.
- Two-key Triple DES
- Una variante del triple DES or 3DES nel quale
vengono utilizzate solo due chiavi. Come nella versione a 3 chiavi,
l'ordine delle operazioni e' il cosidetto EDE,
ovvero encrypt-decrypt-encrypt, ma in questa variante la seconda
e la terza chiave sono uguali.
Il 3DES con le sue 3 chiavi ha una lunghezza complessiva di
3*56 = 168 bits, ma resiste ad un attacco di tipo
meet-in-the-middle come una chiave a 112 bit,
quindi e' possibile che il DES a due chiavi non sia abbastanza
resistente a questo tipo di attacchi.
L'RFC 2451 indica il triple DES come algoritmo da utilizzare per
IPsec.
- U
- V
- Virtual Interface
- Una caratteristica di Linux che permette ad una singola
interfaccia di rete di avere associato piu' di un indirizzo IP. Si veda
Linux Network Administrator's Guide oppure
sul web.
- Virtual Private Network
- see VPN
- VPN
- Virtual Private Network, una rete che puo'
essere utilizzata come fosse una rete privata, dal momento che
alcune delle sue componenti utilizzano connessioni sicure. Tutto
il traffico su queste connessioni viene cifrato.
L'IPsec non e' la sola tecnica disponibile per
realizzare VPNs, ma e' il solo metodo definito da alcuni
RFCs e supportato dalla diversi produttori.
- VPNC
- Virtual Private Network Consortium,
un consorzio di produttori di VPNs.
- W
- Wassenaar Arrangement
- Un accordo internazionale che limita l'esportazione di armi
e di altri strumenti bellici. Purtroppo la crittografia ricade
sotto le limitazioni di questa versione del trattato.
- Web of Trust
- Un metodo per la certificazione di chiavi PGP.
Ogni utente firma una chiave e potra' decidere quali firme o quali
combinazioni di firme accettare. Questo sistema e' in contrasto con
la gerarchia creata dalle CAs (Certification Authorities)
utilizzate da molte PKIs (Public Key Infrastructures).
See Global Trust Register for an
interesting addition to the web of trust.
- WEP (Wired Equivalent Privacy)
- La parte critografica dello standard dell'IEEE
per le reti wireless. Come il nome stesso indica e' stato studiato
per rendere una rete wireless sicura quanto una normale ethernet.
Chiunque con una connessione alla rete puo' intercettare il traffico.
I difensori di questa scelta sotengono che sia una scelta intelligente
che non complica il protocollo.
I detrattori definiscono il WEP "Wiretap Equivalent Privacy",
e lo considerano una scelta orribile. Non e' possibile infatti controllare
le frequenze radio come per una rete su cavo.
Ci sono analisi molto atendibili che sottolineano le problematiche del
WEP. Esistono delle FAQ sui possibili attacchi al WEP. Si legge:
... possono essere messi in atto attacchi con materiale
poco costoso. Si consiglia per tanto di non affidarsi al WEP come
protocollo per implementare reti wireless sicure. Si noti inoltre
che sono attaccabile sia le versione a 40 bit del protocollo che
quelle a 128-bit.
Il WEP e' un altro di quelli standards appoggiato dai governi,
e dal alcuni produttori compiacenti, col fine di promuovere standard
deboli facili da intercettare dalle diverse organizzazzioni interessate
all'analisi ed al controllo del traffico nelle reti.
- X
- X.509
- Uno standard dell' ITU (International
Telecommunication Union), per gestire directories organizzate in
maniera gerarchica e con servizi di autenticazione, utilizzato in molte
implementazioni di PKI.
Utilizzare i servizi di X.509, attraverso il protocollo
LDAP, per la certificazione delle chiavi non e'
richiesto dagli RFC di IPsec.
FreeS/WAN non lo implementa.
- Xedia
- Un produttore di router e di prodotti per l'accesso ad Internet,
ora parte della Lucent. I loro prodotti QVPN sono in grado di interagire
con Linux FreeS/WAN; si veda il documento
sull'interazioni di prodotti di terze parti con FreeS/WAN.
- Y
- Z