kriptografia - 3 -...
TRANSCRIPT
KRIPTOGRAFIA - 3 Siguria në TI
Universiteti i Prizrenit
Ligjërues: Ilir Bytyçi
Nëntor 2012
Përsëritje
• Çka është plaintext?
• Po ciphertext?
• Çka është algoritmi i enkriptimit?
• Po „key‟?
• Definoni faktorin mund (work factor)
• Definoni kuptimin e Key factor
• Çka thotë parimi i Kirkhofit për kriptografinë?
• Çka është karakteristike te enkriptimi simetrik?
Mekanizmat e enkriptimit
• I mbrojnë të dhënat në tranzit (mediume si kabllo apo pa tel)
• I mbrojnë informatat e ruajtura në „storage‟ (RAM, HDD, etj)
• Parandalon disa sulme të strukturuara apo të pastrukturuara
• Ndihmon në verifikimin e integritetit, dhe origjinës së informacionit
• Është aspekt shumë i rëndësishëm, por i anashkalueshëm (p.sh. DES është i dobët)
• Në disa shtete ka ligje mbi enkriptimin
Mekanizmat e enkriptimit
• Konfidencialiteti – enkriptim
• Disa lloje të algoritmeve të enkriptimit: • DES (çelës me gjatësi 56 bit)
• 3DES (çelës me gjatësi 56, 112, dhe 168 bit)
• AES – Përdoret dhe nga qeveria amerikane. Përdor çelës 256 bit,
blloqe 128 bitëshe
• Serpent (një algoritëm që ka qenë në garë me AES, poashtu me
çelës 256 bit)
• Twofish poashtu finalist në garë me AES, çelës 256 bit.
• Mund të bëhen edhe kombinime të këtyre 3 të
fundit, dukë i lidhur zinxhir, dhe të varur njëri nga
tjetri.
Mbrojtja e integritetit të të dhënave
• Si mund ta dimë nëse një e dhënë është
ndryshuar nga dikush? Dëmtim në integritet.
• E lexojmë?
• E krahasojmë madhësinë (në bajtë)?
• I besojmë mediumit transmetues?
• I besojmë dërguesit?
• JO! E vërtetojmë në nivel të bitave, për çdo
ndryshim eventual!
Message digest - hash
• Digest – nga anglishtja, përtypje, tretje.
• Një vlerë fikse e shprehur në bite për një përmbajtje apo e dhënë me madhësi jofikse.
• Disa nga llojet e message digest, apo ndryshe si quhen HMAC – Hashed Method Authentication Code: • MD5
• SHA1 (Secure Hash Algorithm)
• SHA2
Message digest - hash
• Digest – na shërben të krahasojmë vlerën e hash
në fillim dhe në fund të transmetimit.
• Nëse ka ndryshuar një bit i vetëm ndryshon
komplet vlera e hash.
• Shohim shembujt në praktikë në vijim…
GPG
• Duhet të keni instaluar programin gpg4win që t‟i bëjmë
ushtrimet e sotme.
• http://www.gpg4win.org/
• Versioni i fundit deri sot gpg4win-2.1.0.exe ~38MB
• Për ushtrimet mbi hash mund të përdorim edhe disa
komanda në Linux. Nëse e keni VM dhe Linux të
instaluar, hapeni programin Terminal (ku shkruhen
komandat)
Ushtrime (linux&MD5)
• Në Linux: Hapeni VM, dhe krijoni një fajl tekstual, dhe shkruani përmbajtjen “Hello World” brenda saj. Emertojeni fajlin hello.txt
• Në terminal shkruani komanden:
md5sum hello.txt
Pastaj shihni vlerën që nxirret. Pastaj hyni në fajlin e mësipërm dhe ndryshoni përmbajtjen, dhe bëjeni “Hello World “ (leni një hapësirë shtesë). Shihni a ka ndryshuar përmbajtja, duke ekzekutuar komandën përsëri.
Ushtrime (linux&MD5)
Ushtrime (linux&SHA1&SHA2)
Përsëriteni ushtrimin e kaluar, tani me algoritmin tjetër më
të sigurt, dhe duke përdorur komandën:
shasum hello.txt
Pastaj shihni vlerën që nxirret. Përmbajtja është më e gjatë
Provoni komandat sha224sum , sha256sum, sha384sum,
sha512sum në fajlin e fundit. Vini re gjatësinë e vlerës së
hash.
Ushtrime (linux&SHA1&SHA2)
Ushtrime (linux&SHA2) Në Linux passwordet ruhen në një fajl special ku ka qasje
vetëm administratori, dhe fajli quhet /etc/shadow
Nëse e vëreni, formati i fajlit ka disa fusha, ku më kryesoret
janë:
$id$salt$hash….etj
id=6=SHA-512
Salt = VI
Ushtrime (windows)
• Në Windows, pasi keni instaluar gpg4win-
2.1.0.exe ~38MB
• Hapeni programin Kleopatra. Shkoni në File,
pastaj „Create Checksum Files…‟ pastaj zgjidhni
fajlin “hello.txt” të cilin e keni krijuar, dhe e keni
shkruar tekstin “Hello World”.
• Ju prodhohet fajli sha1sum.txt me përmbajtjen e
krijuar.
Ushtrime (windows&SHA1)
Ushtrime (windows&SHA1)
Mënyra e dytë:
Enkriptimi asimetrik
• Për dallim nga enkriptimi simetrik, ku ekziston një çelës, i
përdorur në rast enkriptimi e dekriptimi, kemi edhe
enkriptim asimetrik.
• Te enkriptimi asimetrik kemi dy lloje çelësash:
• Privat
• Publik
• Secila palë që dëshiron të komunikojë duhet të ketë këtë
krijuar një çelës privat/sekret dhe ta dërgojë atë publik te
pala me te cilën do të komunikojë, dhe ta pranojë çelësin
publik të pranuesit të mesazhit të enkriptuar
Enkriptimi asimetrik
• Pala pranuese duhet ta pranojë çelësin publik nga
dërguesi, ta importojë në listën e çelësave, ta vërtetojë se
është çelës i besueshëm.
• Pala dërguese e përdor çelësin e tij privat, dhe atë publik
të pranuesit për të enkriptuar një informatë.
• Me çelësin e tij privat, pranuesi përdor çelësin publik të
dërguesit për ta dekriptuar një informacion.
Enkriptimi asimetrik – shembull Cezari e përdor çelësin publik të komandantit dhe e enkripton, dhe ia dërgon
me e-mail.
Komandanti me çelësin e tij privat e pranon dhe e dekripton mesazhin.
Enkriptimi asimetrik – praktikë Cezari e hap programin Kleopatra (pjese e gpg4win) në
Windows, shkon te menyja File dhe shtyp New Certificate…
dhe krijon një certifikatë personale, dhe jep shënimet e tij dhe
shtyp “Create Key” dhe e jep një password kompleks dy herë
dhe shtyp “Finish”
Enkriptimi asimetrik – praktikë Cezari e me butonin e djathtë e shtyp çelësin e sapokrijuar, e
kopjon çelësin publik me funksionin “Export certificate”. E
ruan diku atë fajl edhe ia jep komandantit me USB, ose ia
dërgon me e-mail.
Enkriptimi asimetrik – praktikë Komandanti e importon certifikaten/çelësin publik të Cezarit
në listën e tij të çelësave, duke shtypur “Import certificate…”
Pasi e importon, e vërteton që është çelës i besueshëm, dhe
shtyp “Change Owner Trust…” Nëse i besoni dërguesit,
shtypet opsioni në vijim:
Enkriptimi asimetrik – praktikë Pasi i besojmë certifikatës, e nënshkruajmë atë, si të
besueshme, me opsionin “Certify certificate…”. Pasi e vendos
passwordin e tij komandanti, dhe i beson certificata, ajo
vërtetohet.
Enkriptimi asimetrik – praktikë Pasi i shkëmbejnë certifikatat publike, tani mund të dërgojnë
mesazhe të enkriptuara te njëri tjetri. P.sh. nëse komandanti
dëshiron t‟i dërgojë një mesazh të enkriptuar Cezarit ai
vepron si vijon:
1. Hap programin Kleopatra
2. File – Sign/Encrypt Files…
3. E zgjedh fajlin e dëshiruar, p.sh. mesazh urgjent.txt
4. Zgjedh “Encrypt”
5. Zgjedh për kë po enkriptohet mesazhi, (në këtë rast
Cezari) dhe shtyp “Add”
6. Shtyp “Encrypt”
7. Gjenerohet fajli i enkriptuar mesazh urgjent.txt.gpg
8. I niset me email Cezarit, dhe ky fajl mund të hapet vetëm
nga Cezari
Enkriptimi asimetrik – praktikë Pasi e pranon fajlin e enkriptuar, Cezari e hap me
programin Kleopatra, duke shkuar në
File – Decrypt/Verify Files…
Dhe vendos passwordin e tij te çelësit tij privat.
Enkriptimi asimetrik – praktikë A mund ta dekriptojë një fajl dikush që përdor Linux,
nëse ne i dërgojmë një fajl të enkriptuar në
Windows?
Patjetër që po. Mjafton të jenë shkëmbyer çelësat
publikë, dhe të jenë verifikuar nga të dy palët.
Në Linux Mint e keni programin KGpg
Enkriptimi asimetrik – Linux
Enkriptimi asimetrik Detyrë shtëpie:
1) Krijoni një çift çelësash, privat dhe publik
2) Dërgomani çelësin publik me email
3) Dergomani në të njejtin email edhe vlerën hash të
çelësit tuaj publik me algoritmet: md5, sha1,
sha224, sha512, sha384
4) Dërgomëni me email detajet e çelësit tuaj
“Certificate details” (bëni një screenshot, fotografi)
Referenca
• http://www.axantum.com/axcrypt/
• http://sourceforge.net/projects/passwordsafe/
• http://www.rot13.com/index.php