Click here to load reader

SIGURIA E TË DHËNAVE

  • Upload
    atalo

  • View
    353

  • Download
    15

Embed Size (px)

DESCRIPTION

SIGURIA E TË DHËNAVE. KRIPTOGRAFIA STEGANOGRAFIA ENKRIPTIMI SIMETRIK ASIMETRIK NËNSHKRIMI DIGJITAL. Kriptografia–është shkenca matematiko-teknike për ruajtjen e sigurisë së shënimeve në aspekt të: Confidentiality(privacy)–fshehtësia - PowerPoint PPT Presentation

Citation preview

  • SIGURIA E T DHNAVE

  • KRIPTOGRAFIASTEGANOGRAFIAENKRIPTIMI SIMETRIK ASIMETRIKNNSHKRIMI DIGJITAL

  • Kriptografiasht shkenca matematiko-teknike pr ruajtjen e siguris s shnimeve n aspekt t:Confidentiality(privacy)fshehtsia

    Integritykompakte, do ndrrim detektohet

    Authentication verifikimi i partnerve paraprocesit t komunikimit

    Non-repudiationjomohueshmria

  • PRDORIMI I KRIPTOGRAFIS

    KODI I CEZARIT

    KODI I XHEFERSONIT

    ENIGMA

  • Ngjarja zhvillohet n ShBA n fillim t viteve t 70NSA (US National Security Agency)N vitin 1972: ish NBS (National Bureau ofStandards) tani NIST (National Institute ofStandards and Technology) kan parashtruarkrkesat pr mbrojtje t shnimeveT zhvillohet nj algoritm pr enkriptim

  • KODI I CEZARIT (CAESARS CIPHER)MESAZHI (PLAINTEXT)

    A B C D E F G H I J K L M N O P Q R S T U V X Y Z

    MESAZHI I ENKRIPTUAR (CIPHERTEXT)

    B C D E F G H I J K L M N O P Q R S T U V X Y Z A

  • ELSI TE KODI I CEZARITELSI K=0A B C D E F G H I J K L M N O P Q R S T U V X Y Z ELSI K=1B C D E F G H I J K L M N O P Q R S T U V X Y Z AELSI K=2C D E F G H I J K L M N O P Q R S T U V X Y Z A B.DERI K=?

  • //Enkriptimi i mesazhitprivate static byte[] caesarEncipher(byte[] message,int shift) {byte[] m2=ne byte[message.length];for (int i=0;i
  • TRANSPONIMI (ZHVENDOSJA) E SHIFRAVE

  • ZVENDSIMI - NDRYSHIMI

    TRANSPONIMI - RIPOZICIONIMI

  • FIVE AM LAST NITE IT AS CLONERY

    IVEA MF LTTTSOEANECRSIIALNY

  • TRANSPONIMI I DYFISHT

    LTTTSOEANECRSIIALNY

    LTEEILTSARINTONCSAY

  • LTTTSOEANECRSIIALNY

  • TRANSPONIMI DIAGONAL

  • FIVE AM F I V E A M

    FEIAVM F E I A V M

    1 2 3 4 5 6

    1 4 2 5 3 6

  • ZVENDSIMI DHE TRANSPONIMI

  • SHPNDARJA DHE HUTIMISHIFRAT E POLYBIUS it

  • JESTER 24 15 43 44 15 42

  • 24 15 43 44 15 42

    21 44 14 45 34 52

  • javax.crypto

  • public class DesEncrypter {Cipher ecipher;Cipher dcipher;DesEncrypter(SecretKey key) {try {ecipher = Cipher.getInstance("DES");dcipher = Cipher.getInstance("DES");ecipher.init(Cipher.ENCRYPT_MODE, key);dcipher.init(Cipher.DECRYPT_MODE, key);} catch (javax.crypto.NoSuchPaddingException e) {} catch (java.security.NoSuchAlgorithmException e) {} catch (java.security.InvalidKeyException e) {}}

  • public String encrypt(String str) {try {// Encode the string into bytes using utf-8byte[] utf8 = str.getBytes("UTF8");// Encryptbyte[] enc = ecipher.doFinal(utf8);// Encode bytes to base64 to get a stringreturn ne sun.misc.BASE64Encoder().encode(enc);} catch (javax.crypto.BadPaddingException e) {} catch (IllegalBlockSizeException e) {} catch (UnsupportedEncodingException e) {} catch (java.io.IOException e) {}return null;}

  • public String decrypt(String str) {try {// Decode base64 to get bytesbyte[] dec = ne sun.misc.BASE64Decoder().decodeBuffer(str);// Decryptbyte[] utf8 = dcipher.doFinal(dec);// Decode using utf-8return ne String(utf8, "UTF8");} catch (javax.crypto.BadPaddingException e) {} catch (IllegalBlockSizeException e) {} catch (UnsupportedEncodingException e) {} catch (java.io.IOException e) {}return null;}}

  • try {// Generate a temporary key. In practice, you ould save this key.// See also e464 Encrypting ith DES Using a Pass Phrase.SecretKey key = KeyGenerator.getInstance("DES").generateKey();// Create encrypter/decrypter classDesEncrypter encrypter = ne DesEncrypter(key);// EncryptString encrypted = encrypter.encrypt("Don't tell anybody!");// DecryptString decrypted = encrypter.decrypt(encrypted);} catch (Exception e) {}

  • SITA E ERATOSTENIT

  • NUMRAT E THJESHT

  • ENKODIMI MATRICOR

    AX=BC AP + B (mod n)

    P - POROSIAC POROSIA E ENKRIPTUAR

    B=0 ENKODIMI I HILLIT (HILL CIPHERS)

  • AP + B C (mod n)

    AP C - B (mod n)

    P IP A`AP A`(C - B) (mod n).

    A` - MATRICA INVERSE E A

  • Ekzistenca e A`

    det(A)= 0

    Pr A (mod 26), A` ekzston ather dhe vetm ather kur GCD(det(A),26)=1.GCD sht algoritmi i Euklidit pr gjetjen e pjestuesit m t madh t prbashkt

  • public class GCD { public int GCD(int x,int y) { if (x
  • public static int[ ][ ] shumezo(int[ ][ ] m1,int[ ][ ] m2) { int[][] c=ne int[m1.length][m2[0].length]; if (m1[0].length != m2.length) { System.out.println("Gabim ne rendin e matricave); System.exit(0); } else { for (int i=0; i!=m1.length; i++) for (int j=0; j!=m2[0].length; j++) for (int k=0; k!=m2.length; k++) c[i][j]=c[i][j]+m1[i][k]*m2[k][j]; } return c; }

  • public static int[][] shkruaj(int a,int b) { int[][] z=ne int[a][b]; for (int i=0; i
  • SHEMBULL

    THE END

    TH EE ND

    TH= , EE= , ND=

  • A`=

  • DOBESITE E KRIPTOSISTEMIT MATRICOR

  • 1*a+20*b+s=2(mod 26) 1*c+20*d+t=20(mod 26)

    20*a+1*b+s=7(mod 26) 20*c+1*d+t=20(mod 26)

  • 3*a+11*b+s=8(mod 26) 3*c+11*d+t=13(mod 26)

  • 1*a+20*b+s=2(mod 26)20*a+1*b+s=7(mod 26)3*a+11*b+s=8(mod 26)

    1*c+20*d+t=20(mod 26) 20*c+1*d+t=20(mod 26) 3*c+11*d+t=13(mod 26)

  • Permutation Cipher (Transposition Cipher)Supozojm m=6 (gjatsia e bllokut) dhe celsi sht pemutacioni n vijim: :

    dhe inversi i permutacionit -1:

    123456351642

    123456361524

  • Supozojm plaintext-in:

    siguriaetedhenavenekompjuter

    S pari i grupojm n blloqe me gjatsi 6: siguri | aetedh | enaven | ekompj | uter

    Tani secila shkronj n grupin prej gjasht i ndrrohet pozita varsisht nga permutacioni , dhe si rezultat vjen:

  • Ciphertext-i mund t dekriptohet me an t invesit t permutacionit pra -1:

  • Permutation Cipher sht rast i vecant i Hill Cipher

    Le t jt permutacioni me bashksin{1, . . . , m}, mund t bjm definimin e nj matrice te rendit m m K = (ki,j) bazuar n formuln e mposhtme:

  • STREAM CIPHER

    y=y1y2 =ek1(x1) ek2(x1)

    z1,y1,z2,y2, z1,x1,z2,y2,

  • ez(x)=x + z mod 2

    dz(y)=y + z mod 2

    zi+m=

  • zi+4=zi + zi+1 mod 2

    z=(1,0,0,0)

    1,0,0,0,1,0,0,1,1,0,1,0,1,1,1,

  • CHINESE REMAINDER THEOREM

    Ka zgjidhje unike M=m1m2m3mn

    x=a1M1M`1+a2M2M`2+a3M3M`3++anMnM`n (mod M)

    ku Mi=M/mi dhe M`i sht inversi i Mi (mod mi)

  • Fuqizimi modulo (Modular exponentiation)

    Gjejm c, pr b dhe e>0 ashtu q

    Gjejm c, pr b dhe e

  • Metoda direkte

    b = 4, e = 13, and m = 497:

    c 413 (mod 497)

    be = 67 108 864be mod 497 =445c=445.

  • b nj shifrore dy shifrorbe dhjet shifror

    Nse

    b 77 shifrore 2 shifrorbe 1309 shifror b = 5 * 1076 , e = 17

  • Metoda Memory-efficient c be (mod m)Algoritmi1o c = 1, e' = 0. 2o rrisim e' pr 1. 3o vejm c(b * c) (mod m). 4o nse e'
  • Shembull: b = 4, e=13 , m = 497

    e' = 1. c = (1 * 4) mod 497 = 4 mod 497 = 4. e' = 2. c = (4 * 4) mod 497 = 16 mod 497 = 16. e' = 3. c = (16 * 4) mod 497 = 64 mod 497 = 64. e' = 4. c = (64 * 4) mod 497 = 256 mod 497 = 256. e' = 5. c = (256 * 4) mod 497 = 1024 mod 497 = 30. e' = 6. c = (30 * 4) mod 497 = 120 mod 497 = 120. e' = 7. c = (120 * 4) mod 497 = 480 mod 497 = 480. e' = 8. c = (480 * 4) mod 497 = 1920 mod 497 = 429. e' = 9. c = (429 * 4) mod 497 = 1716 mod 497 = 225. e' = 10. c = (225 * 4) mod 497 = 900 mod 497 = 403. e' = 11. c = (403 * 4) mod 497 = 1612 mod 497 = 121. e' = 12. c = (121 * 4) mod 497 = 484 mod 497 = 484. e' = 13. c = (484 * 4) mod 497 = 1936 mod 497 = 445.

  • Algoritmi i ngritjes n katror

    2340 = x (mod 341)= 2340=(2170)2=((285)2)2=((22*42+1)2)2=((2(242)2)2)2=((2((221)2)2)2)2=((2((22*10+1)2)2)2)2=(((2((2(210)2)2)2)2)2)2=(((2((2(25*2)2)2)2)2)2)2=(((2((2((25)2)2)2)2)2)2)2=(((2((2((22*2+1)2)2)2)2)2)2)2=(((2((2((2(22)2)2)2)2)2)2)2)2

  • =(((2((2((2(22)2)2)2)2)2)2)2)2=(((2((2((2(4)2)2)2)2)2)2)2)2=(((2((2((32)2)2)2)2)2)2)2322=1024 mod 341 = 1=(((2((2((1)2)2)2)2)2)2)2=(((2((2)2)2)2)2)2=(((2(4)2)2)2)2=((1)2)2=1 Pra 2340 = 1 (mod 341)

  • RSA Ron Rivest, Adi Shamir dhe Leonard Adleman

    Faktorizimi i numrave t thjesht

    Zgjedhen dy numra t thjesht p dhe qLlogaritet n=p*q, ku n prdoret si modulus pr te dy elsat privat dhe publik,Llogaritet (n)=(p-1)*(q-1), Zgjedhet nj numr e i till q 1

  • Enkriptimi

    c=me mod nc porosia e enkriptuarDekriptimi

    m=cd mod nm porosia e dekriptuar

  • Shembull: p=61 q=53

    n = 61*53=3233,(n)=(61-1)*(53-1)=3120,elsi publik e = 17 sepse 1

  • Nse bjm enkriptimin e numrit 123

    c = 12317 mod 3233c = 855

    Dekriptimi

    m = 8552753 mod 3233m = 123