==============================================================================
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
--------------------[ previous ]---[ index ]---[ next ]---------------------

ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
ÈÍMiSCÍÍÍÍÍÍÍÍÍÍÄÄÄÄÄÄÄÄÄ GUiDA ALLA CRiTT0GRAFiA ÄÄÄÄÄÄÄÄÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
                        A CHiAVE PUBBLiCA - I PARTE        

1. -=> Intro <=-

Ogni persona che ha a che fare con l'h/p/c/v/a/c - e non solo ;) - 
prima o poi si trova necessariamente di fronte alla necessita' 
di scambiare informazioni confidenziali con altri o anche semplicemente 
di conservare dati in suo possesso in modo che solo lui vi possa accedervi.
Il problema per chi utilizza la crittografia convenzionale e' che di
fronte all'esigenza di inviare informazioni con altri in un canale
definibile insicuro (come e' internet) non si hanno a disposizione
altri canali sicuri (potrebbe essere ad esempio un appuntamento di 
persona in un luogo riservato) per comunicare quale e' la parola chiave o
altre informazioni che permettano l'accesso al file crittato.
Grazie a un nuovo metodo introdotto al pubblico (prima era sviluppato soltanto
su commissione da societa' specializzate) da Philip Zimmermann, tale 
inconveniente e' stato ovviato. 
Zimmermann ha avuto la brillante idea di creare un programma gratuito che 
permettesse a tutti di utilizzare un metodo nuovo unito ad una elevata
sicurezza che la lunghezza delle chiavi offre, usando la crittografia a chiave
pubblica. E' questo una dei fattori che hanno contributo alla diffusione
cosi' capillare del noto programma Pretty Good Privacy, chiamato
comunemente PGP.

2. -=> Perche' <=-

Il punto cruciale su cui si basa il pensiero di Zimmermann e' il seguente:
premesso che la privacy e' un diritto dell'uomo che sta alla base delle
societa' tecnologicamente evolute e deve essere tutelato, accade sempre
piu' frequentemente con l'introduzione di nuove tecnologie che tale diritto 
non venga riconosciuto; e' indispensabile quindi utilizzare un metodo per 
garantire la riservatezza, sia che si utilizzi la crittografia per spedire 
gli auguri di buon anno, piuttosto che un manuale su come costruire una 
bomba atomica e PGP e' un programma che permette di farlo. 
Criminalizzare l'utilizzo di internet abbinato alla crittografia perche'
non controllabile sarebbe come vietare di utilizzare il telefono poiche'
mezzo attraverso il quale e' possibile ad esempio organizzarsi per attivita'
illecite; sta all'utente in ogni caso decidere che uso farne.

3. -=> Come funzia <=-

Il metodo della crittografia a chiave pubblica consiste nella generazione
di due chiavi, una segreta (protetta da password) e una pubblica che contengono
tutte le informazioni necessarie a codificare, firmare, e decodificare i 
messaggi o file che dir si voglia.

Questa coppia di chiavi generata pseudocasualmente mediante una funzione di
PGP tramite un algoritmo matematico garantisce che: 

* un messaggio codificato con una chiave della coppia puo' essere 
  decodificato solo con l'altra chiave della stessa coppia
* non e' possibile, data una chiave della coppia, ricavare l'altra

Fatte queste premesse diventa piu' semplice capire le funzioni offerte da PGP.

4. -=> Funzioni e caratteristiche <=-

I vantaggi ottenuti da tale sistema permettono di avere: 

* Privacy:
Se User1 vuole inviare un messaggio a User2 lo codifica usando la chiave
pubblica di quest'ultimo. Solo User2, che ha la corrispondente chiave
segreta, e' in grado di decodificare e leggere il messaggio.

* Autenticazione del mittente:
User1 quando codifica il suo messaggio con la propria chiave privata 
certifica che il messaggio e' stato scritto proprio da User1, l'unica 
a possedere la corrispondente chiave segreta. User1 ha quindi posto la 
sua "firma" elettronica sul messaggio.

* Autenticazione del mittente e del messaggio:
E' possible autenticare, oltre al mittente anche il contenuto del messaggio;
User1 effettua un "hashing" del suo messaggio cioe' mediante una funzione 
unidirezionale, da un certo messaggio ricava un valore di lunghezza fissa, 
detto hash, che viene inserito nel messaggio/file (una sorta di checksum). 
Se il messaggio viene alterato, l'hash non corrisponde piu'. 
Se , una volta effettuata la decodifica, messaggio ed hash si corrispondono, 
si e' sicuri che nessuno dei due e' stato alterato in qualche maniera. In 
pratica, la firma elettronica realizzata dal PGP effettua sempre 
l'autenticazione sia del mittente sia del messaggio. Essa ha dunque le 
stesse funzioni della firma ordinaria su un documento cartaceo.

* Trasmissione della chiave:
Poiche' con la crittografia a chiave pubblica non c'e'  il problema della 
trasmissione di una chiave per entrambe le funzioni di codifica e decodifica, 
ma ce ne sono due separate non si pone il problema di dovere trasmettere in 
modo sicuro quella chiave. Ogni utente deve semplicemente tenere al sicuro 
la propria chiave segreta, e diffondere liberamente senza alcun problema 
la propria chiave pubblica. 

5. -=> Cosa fa PGP quando codifica un messaggio <=-

Il PGP utilizza una intera collezione di algoritmi, tra i piu' sicuri 
ed internazionalmente conosciuti nel campo della crittografia. Si suppone 
quindi di partire da un messaggio che deve essere firmato e codificato prima di 
essere spedito. La sequenza delle operazioni che PGP effettua sono :

a) PGP applica l'algoritmo di hashing MD5 per generare l'hash del messaggio, 
   avente lunghezza fissa pari a 128 bit. L'hash viene attaccato al messaggio.

b) PGP applica l'algoritmo di compressione dati ZIP per comprimere l'insieme 
   messaggio piu' hash ottenuto in A.

c) PGP applica un algoritmo di generazione numeri casuali per generare una 
   sequenza di 128 bit casuali.

d) PGP applica l'algoritmo di crittografia convenzionale IDEA per codificare il 
   messaggio compresso ottenuto in B, usando come chiave ("session key") il 
   numero casuale generato in C.

e) PGP applica l'algoritmo di crittografia a chiave pubblica RSA per codificare 
   la session key. Il risultato viene attaccato al messaggio codificato ottenuto 
   in D. 
   
f) PGP applica l'algoritmo di ASCII Armor Radix-64 per trasformare il messaggio 
   ottenuto in E in modo che esso contenga solo caratteri ASCII bassi. Questo 
   algoritmo trasforma ogni gruppo di tre bytes in un gruppo di quattro bytes.

Il messaggio ottenuto in F e' quello finale, che puo' essere inviato per e-mail. 
Il destinatario esegue la sequenza inversa di operazioni.

6. -=> Greets <=-

Questa prima parte e' finita...appuntamento quindi alla prossima uscita di BFI.
Se volete chiarimenti, informazioni, o altro scrivetemi a Blinking@mindless.com

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.3ia

mQB9AzLEjzoAAAEDgMAZEm4vKqllKENI/8g7x8XEaQppZwgobIXGK8hprLMMnEKA
x9b+m0dIIHm1iTzT+E+kO1xsgGIM8GuzNoKYp9vg/FBqkWX652pKALNElN2R9Bfe
XPvZTXcZZWmWCXFkW3CzCD+5BXcB5337YowzUSEABRG0IEJsaW5raW5nIDxibGlu
a2luZ0BtaW5kbGVzcy5jb20+iQCFAwUQM099XOd9+2KMM1EhAQErUAN/ctdkXk7D
ge9i4MV1BBtqXeT0UXNVp0jLONVSndmDBC2m9C+bRLX0ACQ10avUtd0cxIF4BeWS
vIekKu/5uYyCiNyIH+iEi7FUT6nj3cMrTNS0Z5u5gcIehijSzv48ANuiJndYrciH
0tGamijyz73gIQ==
=IyQY
-----END PGP PUBLIC KEY BLOCK-----
Key Finger Print = 53 9E 03 F8 63 9F 40 08  46 9F B8 1C FF 3D A8 BB   
Key ID=8C335121
UIN ICQ=3068260

Se invece vi ho fatto solo incazzare potete farmi nuke, land, teardrop 
e tutto quello che volete quando sono collegato a internet (moooolto 
spesso), perche' tanto ho l'ip statico 127.0.0.1 ma sono sicuro che non 
lo farete ;-) !!! 
Special GreetZ a tutti i membZ di Soft Project, BeA & DjNoise.  
                                                                 ByeZ.

                                                           Blinking

--------------------[ previous ]---[ index ]---[ next ]---------------------
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
==============================================================================