Bazı kurallar ile şifrelenen (encryption) verinin, bu “bazı kuralları” bilmeyen kişiler tarafından okunabilmesi mümkün değildir. Ayrıca, eğer veri izinsiz kişiler tarafından değiştirilmişse, verinin original kaynağından gelmediğini veya izinsiz bir parti tarafından değiştirildiğini tesbit etmek mümkündür. (data signing). Bu şifreleme işlemleri, ister veri depolamada, ister veri transferi sırasında, verinin ve kişinin/şirketin güvenliği için kullanılabilir.
Kriptografi ve Şifreleme Algoritmaları (Cryptography & Encryption Algorithms)
Veri şifreleme veya imzalama için, şifreleme algoritmaları dediğimiz kural dizileri uygulanır. Temelde amaç; veriyi bir kurallar bütünüyle değiştirmek, ve bu kuralları bilmeyen bir partinin, bu datayı eski haline dönüştürememesini sağlamaktır. Veriyi eski haline, sadece bu kuralları bilen kişiler dönüştürebilecektir.

Bir örnekle bunu açıklayalım. Mesela şifrelenecek kelimemiz BilgeAdam olsun. Şifreleme algoritmamız da “her karakteri 2 arttır” olsun.

Bu durumda, düz verimizi (plaintext) şifrelediğimiz zaman, şifrelenmiş veri (ciphertext) şu şekilde olacaktır: “DknigCfco”. Bu kelime aslında BilgeAdam, ancak bu kelimenin aslında ne olduğunu anlayabilmemiz için, her karakterin bir defa arttırıldığını, yani şifreleme algoritmasını bilmemiz gerekmektedir, başka bir deyişle, ya verinin sahibi, ya da veriye erişim izni bulunan birisi olmalıyız.
Şifreleme Anahtarları (Encryption Keys) & Simetrik Şifreleme (Symmetric Encryption)
Tüm bunların ışığında, veri saklama veya alma / gönderme işlemleri sırasında, verimizi yukarda bahsettiğimiz şekilde şifrelediğimiz durumlarda, sadece izinli kişilerin bu veriye erişebileceğini biliyoruz. Bununla beraber; hem güvenliğe ikinci bir kademe getirebilmek, hem de algoritma standartları oluşturabilmek ya da kabul görmüş ve standartlaşmış şifreleme algoritmalarını kullanabilmek için, veri şifrelemizi algoritmalara değil, anahtara (key) dayandırabiliriz. Bu durumda, bilinen bir algoritma ile sadece veri sahibinin veya izinli kişilerin bilebileceği bir key kullanırız. Bu durumda şifreleme mantığımız, basit bir şekilde şu olacaktır: Plaintext verimiz yine BilgeAdam olsun ve algoritmamız da “her karakteri x kadar arttır”. Key ise “x = = x+2” olursa; bu durumda her karakteri iki defa arttırmış oluruz ve ciphertext verimiz; “DknigCfco” olacaktır.

Devamını oku…