Günümüzde verilerin iletilmesi önemli iken, bu verilen gizlilik esasına dayalı olarak güvenli bir şekilde taşınması da büyük önem taşır. İletilecek bilgilere bir başkasının erişememesi için şifreleme yöntemleri kullanılır. Şifreleme ile ilgili bu yöntem kriptoloji olarak da adlandırılır. Kriptoloji, gizleme bilimi anlamına gelen cruptos (gizli) ve logos (bilim) kelimelerinin birleşimi ile oluşur.

Kriptolojide şifrelenmiş metne, şifreli metin (ciphered text), orijinal metne ise düz metin (plain text) denir. Düz bir metnin içeriği saklanacaksa şifreleme (encryption) işlemi yapılır. Bu işlem sayesinde metin içinde bulunan bilgiler başka birinin anlayamayacağı hale gelir. Şifrelenmiş metni okuyabilmek amacıyla kişinin şifreyi çözebilmek için anahtar bulunması gerekir. Bu anahtar ile şifreli olan metin düz metne çevrilir. Bu işleme de şifre çözme (decryption) denir.

Şifreleme Nedir?

“Şifreleme yani encryption nedir?” sorusuna en basit olarak verilecek cevap; verileri korumak için kullanılan bir kodlama tekniğidir. Bilgilerin gizli kalmasını sağlamak amacıyla, bu bilgileri görmesini istemediğiniz kişilerden korumak için yapılan bir kodlama yöntemidir. Kişi tarafından sayılar ve özel karakterler kullanılarak bir şifre belirlenir. Bu sayede kişisel bilgilere ulaşım engellenmiş olur. Bir karıştırılma sistemi olan şifreleme, sadece istenen kişiler tarafından orijinale döndürülür. Asıl olay; dönüştürülen verinin geri getirebilmesidir. Şifreleme, bilgiyi anlaşılmaz hale getirirken aynı zamanda erişilmez hale de getirir. Veriyi koruyarak bütünlüğünün sağlanmasına yardımcı olur. 3. taraflar bilgilere erişse bile en fazla anlaşılmayan haline erişebilir. Bilgisayar ağları kullanılarak taşınan verilerin (data in transit) ve bilgisayarların sistemlerinde (data at rest) bulunan verilerin korunması için kullanılır. Şifreleme işlemi verinin silinmesini engelleyemez.

Kriptografide Anahtar Nedir?

Şifreleme ve şifre çözme amacıyla kriptografi algoritmasının kullandığı sayı dizisine “anahtar” denir. Anahtar ne kadar uzunsa şifrenin kırılması da o kadar zordur. Bir algoritmanın “n” sayısının uzunluğu kriptografik güvenliği ile doğru orantılıdır. Anahtar uzunluğu “n” sayısının bit uzunluğu olarak tanımlanır.

Yakın zamana kadar 512 bit standart anahtar uzunluğu kabul edilirken, artık güvenli kabul edilmemektedir. Gelecekte ise 2048 bit anahtar uzunluğuna ihtiyaç duyulabilir. 1999 yılında, 512 bitlik bir anahtar, çok sayıda bilgisayarın internet üzerinden birbirine bağlanarak, dört ay gibi bir çalışma sürecinde çarpanlarına ayrılabildi. Ancak 1024 bitlik bir anahtarın bir milyar yıldan fazla zamanda çarpanlara ayrılacağı tahmin edilir.

Farklı Şifreleme Türleri Nelerdir?

Farklı pek çok şifreleme türü bulunmaktadır. En önemli ayrıntılarına değinerek şifreleme türlerini açıklayım:

Advanced Encryption Standard (AES)

AES, 128 bit olan veri blokları 128, 192, 256 bit gibi seçenekleri bulunan anahtarlar ile şifreleyen bir algoritmadır. 128 bit bir anahtar için 10 döngüde şifreleme yapar. 192 ve 256 bit için döngü sırası 12 ve 14’tür. Her döngüsü 4 katmandan oluşan bir algoritmadır. İlk önce 128 bit verinin 4×4 byte matrisine dönüştürülme işlemi gerçekleştirilir. Sonraki döngülerde sırayla byte’lar yer değiştirir, satırlar ötelenir ve sütunlar karıştırılır.

Veri Şifreleme Standardı (Data Encryption Standard, DES)

DES, verileri şifrelemek ve şifrelenen verileri açmak için kullanılan bir şifreleme standardıdır. Asıl olarak kullanılan algoritmaya; Veri Şifreleme Algoritması (DEA yani Data Encryption Algorithm) adı verilir. Yapısı itibari ile DES, blok şifreleme örneğidir. Yani basit bir şekilde şifrelenecek olan açık metni bloklara böler, yani parçalara ayırır. Her bir parçayı birbirinden bağımsız olarak şifreler. Eğer şifrelenmiş metni açmak isterse, aynı işlemi bloklar üzerinden gerçekleştirir. Blokların uzunluğu 64 bittir. AES şifreleme yöntemine göre DES, 6 kat daha yavaş çalışır.

Blowfish

Blowfish, 32 bit ile başlayarak 448 bit anahtar uzunluğuna sahip, 64 bit öbek büyüklüğünde bir algoritmadır. DES’in tam olarak yapamadıklarını tamamlamak amacıyla tasarlanmıştır. En az 4 Kb RAM ile çalıştığı için akıllı kartlar gibi küçük sistemlerde kullanılamaz. E-posta ve yüksek şifreleme gibi rutin kullanıcı uygulamalarındaki etkinliği değerlendirildiğinde başarılı bir algoritmadır. Piyasadaki en hızlı öbek şifreleyicilerinden biridir. Karmaşık anahtar çizelgesi sayesinde şifrenin kırılması zorlaşır. Kullanıcıların tercih etmelerini sağlayan en önemli özelliklerinden birisi de uygulamanın ücretsiz olmasıdır.

RSA (Rivest-Shamir-Adleman)

R.Rivest, A.Shamir ve L.Adleman tarafından 1977 yılında oluşturulan RSA, şifreleme ve şifre çözme işlemlerini gerçekleştirir. Bunun yanında anahtar dağıtımını da sağlar. Bu yöntemin çok büyük tam sayılarak kullanılarak işlem yapmanın zorluğuna dayanan güvenirliği bulunur. Genel anahtarlı şifreleme tekniğidir. Asal sayılar kullanılarak anahtar oluşturma işlemi için daha güvenli bir yapı oluşturulur. Hızının yüksek olması anahtarın sayısal büyüklüğüne bağlıdır. Oldukça basit bir algoritma olan RSA’da çok büyük asal sayılar oluşturmak oldukça zordur.

RC-4 Şifreleme

RC4 algoritması, akan bir bit dizi olarak şifrelenecek veriyi algılar. Veri ile belirlenen anahtarı şifreleyen bir algoritmadır. Genel olarak hız gerektiren uygulamalarda tercih edilir. Şifreleme hızı “MB/sn” seviyesindedir. Rastgele bir anahtar kullanımına bağlı güvenliği vardır. 10100’den daha fazla tekrar yapabilir. Anahtar uzunluğu değişken olan algoritmanın kötü anahtarı yoktur.

MD5 Şifreleme (Message-Digest algorithm 5)

MD5, tek yönlü şifreleme algoritmasıdır. 1991 yılında Ron Rivest tarafından geliştirilmiştir. Bu şifreleme algoritması veri bütünlüğünü test etmek için kullanılır. Veri girdisinin büyüklüğünden bağımsız, 128 bit çıktı üretir. Girdide yapılacak en ufak bir değişiklik, çıktının komple değişmesine sebep olur. Bir verinin değiştirilip değiştirilmediği ve doğru bir şekilde transfer edilip edilmediği en çok MD5 ile kontrol edilir.

Güvenli Özetleme Algoritması (Secure Hash Algorithm, SHA)

SHA (–), NSA (Amerika’nın Ulusal Güvenlik Kurumu) tarafından tasarlanmıştır. MD5 özet fonksiyonuna benzeyen bir çalışma prensibi vardır. Girdi olarak kullandığı mesajların en fazla uzunluğu 264 bittir. 160 bitlik de mesaj özeti üretir. Bu işlem sırasında, öncelikli olarak veriyi 512 bitlik bloklara ayırır. Gerekirse de son blok uzunluğunu 512 bite tamamlar. Çakışmalara karşı 80 bitlik güvenlik sağlayan, 160 bitlik mesaj özeti üretir.

Metni Gizleme (Steganography)

Steganography, düz şifrelenmemiş bir metni çeşitli dönüşümler kullanılarak başka kişilerin anlayamayacağı bir metin haline getirilmesi yöntemidir. Bir metindeki tüm harfleri başka bir metin içinde bulunan ilk harflere gizleyerek yapılır. Örneğin; ‘’Yıldız Tilbe yazdığı şarkılar ile müziğin divasıdır.’’ Her durumda böyle bir mesaj oluşturmak hem zor hem de zaman alıcı bir işlemdir. Oluşturulan mesajdaki kelimelerin anlaşılması için çok üst düzey bir zeka ile bilgisayarlara aktarılması ile mümkündür. Hala daha bilgisayarlar konuşma dillerini basitçe tanımlayamaz. Bu konuda mükemmel bir sisteme ulaşılmamasının yanında şifrenin kırılması da çok kolaydır.

Sezar Şifrelemesi (Caesar Cipher)

Caesar Cipher, en eski yerine koyma tekniği olarak bilinir. Ünü Roma İmparatoru olanJulius Caesar tarafından geliştirilen bir yöntemdir. Bu şifrelemede mantık, her bir harf kendisinden sonra gelecek üçüncü harf ile çembersel olarak yer değiştirir. Caesar şifrelemenin zayıf yönleri de vardır. Şifrelenmiş metinde hangi dil kullanıldıysa bu rahatlıkla anlaşılabilir. Şifreleme ve deşifreleme yöntemlerinin bilinmesi ve kolay bir şekilde uygulanabiliyor olması da zayıf yönlerinden biridir. Şifrelenmiş bir metin, en zayıf ve en kesin saldırı yöntemi olan “Brute Force” ile kırılabilir.

Tek Kullanımlık Karakter Dizisi (One-time Pad)

One-time Pad, basit olan bu yöntemde rastgele üretilen bir harf ya da rakam dizisi kullanılarak şifreleme yapılır. Üretilen dizi ile açık mesajda yer alan karakter karşı karşıya gelerek işleme alınır. Bu sayede şifreli bir mesaj elde edilir. Rastgele dizinin bilinmesi mesajı çözmek için yeterlidir. Bu algoritmada güvenlik rastgele üretilen diziye bağlıdır. Dizi bir kurala göre üretilirse ve saldırgan bu kuralı bilirse sistem kırılabilir. Bunun olmaması için dizi gerçekten rastgele üretilmelidir.

Şifreleme Algoritması Nedir?

Özel bir ağın yetkisiz kişilerden korunmasını sağlamak için bir parolayı saklamak ve gönderme işlem için şifreleme kullanılır. Ayrıca, internet ile çok özel ağlar arasında veri gönderilmesinde de kullanılır. Bu sayede, internet üzerinden yapılan herhangi bir ticaret hizmeti yönlendirilmesi ve dolayısıyla da iletim sırasında kredi kartı bilgileri de korunur.

Anahtarlar ise mesajları şifrelemek ve şifreyi çözmek için kullanılan karışık matematiksel formüllerdir. Şifrelemenin temel bir bileşenidir. Şifreli bir mesajın şifresinin çözülebilmesi için tam anahtar gerekir. Gizli ve açık olmak üzere iki çeşit anahtar bulunur. Yineleme işlemi için kullanılan algoritmaya “şifreleme algoritması” denir.

İnternette Gezinmeyi Güvenli Tutmak için Şifreleme Nasıl Kullanılır?

İnternette gezinmeyi güvenli tutmak için iletişimlerin güvenli olması gerekir. İnternette arama yaparken, telefonunuzda bir GPS uygulaması kullanırken ya da e-posta gönderirken yaptığınız veri alışverişlerinizi şifreleme ile korumanız gerekir. Web’de güvenliği sağlamak ve kendinizi gizli tutmak için evdeki yönlendiriciniz için tahmin edilmesi zor ve güçlü bir parola seçmeniz gerekir.

Herkese açık alanlarda WiFi ağının özellikle bankacılık ve hassas işlemleriniz için kullanmamalısınız. Erişiminiz güvenliği kadar Web’de gezinme gizliliği de önemlidir. Google ve diğer Web sağlayıcılarının tarayıcı geçmişinizi izlemesini engellemek için özel bir tarama modu kullanabilirsiniz. Chrome’da “gizli mod”, Firefox’da “gizli gezinti” modunu kullanabilirsiniz. Başka bir bilgisayar kullanırken de bu özellikleri kullanmak gizlilik açısından önem arz eder.

Çerez kullanarak izlenmenizi engelleyecek tarayıcı uzantıları kullanabilirsiniz. Sadece bilinen ve saygın kuruluşların uzantılarını tercih etmeniz yarar sağlar. Kullanmadığınız zamanlarda hesaplarınızdan çıkış yapmanız güvenliğiniz açısından önemlidir. Telefonunuza gelen güncellemeleri düzenli olarak takip etmelisiniz. Önünüze gelen her sayfaya ne olduğunu bilmeden tıklamamalısınız. Akıllı telefonlarınızda pin kodu ve ekran kilidi kullanabilirsiniz. Uygulamaları indirirken ihtiyaç duyduğu izinleri inceleyebilirsiniz. Kullanmadığınız programları, hesapları verileri silmeniz, programlardan birinin tehlikeye girme riskini azaltır. Güçlü parolalar kullanarak, internet erişiminizi, hesaplarınızı ve cihazlarınızı koruyabilirsiniz. Parolalarınızı düzenli olarak altı ayda bir güçlü parolalar ile değiştirmelisiniz. Çevrimiçi gizliliğiniz ve güvenliğiniz için İki aşamalı kimlik doğrulama kullanabilirsiniz.

Veri Şifrelenmesi Neden Gereklidir?

Tarih boyunca insanlar mesajlarını gönderirken şifreleme yöntemleri sayesinde sadece istediği kişilerin okumasını sağlarlar. Günümüzde de bu şifreleme işlemlerini bizim yerimize bilgisayarlar yapar. Bugün teknolojinin gelişmesi ile bu şifreleme yöntemleri mesajların şifrelenmesinin de ötesine gitmektedir. Doğru kullanıldığında şifrelerin kırılmaları neredeyse imkansızdır. Günlük hayatta şifrelemeye bağlı olarak veriler aktarırız. Güçlü bir şifreleme ile taşıdığımız ve sakladığımız verilerin mahremiyeti, gizliliği ve güvenliği garanti edilebilir. Toplumda birçok anahtar elamanın çalışması için şifreleme kullanılır.

Webde gezinme: Web siteleri ve tarayıcılar için HTTPS protokolü kullanır. HTTPS verilerimiz iletilirken güvenli iletişim sağlayan ve başkalarının okumasını engelleyen şifrelenmiş bir protokoldür.

HTTPS hakkında detaylı bilgiye sahip olmak için rehber niteliğindeki yazımıza göz atabilirsiniz. Yazıya buradan ulaşabilirsiniz.

Elektronik Ticaret: Bankacılıkta veya online (çevrimiçi) alışverişte bilgilerin firmalar tarafından korunduğuna emin olmak isteriz. Burada devreye şifreleme girer. Şifreleme bunu gerçekleştirmede kullanılan en önemli yöntemdir.

Güvenli Mesajlaşma: Attığımız mesajların kişiye özel ve gizli olması mesajlaşma uygulamasını kullanırken önemlidir. Kullanılan bazı uygulamalar kullanıcı iletişiminin güvenliğini ve gizliliğini sağlamak için karşıya iletilen mesajların şifrelenmesini sağlar. Bazı uygulamalar ise sadece alıcının ve gönderinin mesajları okuyabildiği şifreleme yöntemi kullanılır. Bu yönteme uçtan uca şifreleme denir (Whatsapp, Wechat, Signal, Viber, Telegram örnekleri gibi).

Bazı bireyler, saklayacak bir şeyleri olmadığında gizlilik ve güvenliğin yani şifrelemenin o kadar da önemli olmadığın düşünebilir. Ancak veriniz yanlış kişilerin eline düştüğünde sizin itibarınızı zedelemek isteyebilir. Kimlik bilgilerinizi çalarak size finansal olarak zarar verebilir. Sizi taklit ederek herhangi bir ödemeyi farklı bir kanala yönlendirebilir. Kişisel bilgilerinizi başka kanallarla paylaşabilir. Bu sebeple şifreleme temel gereksinimdir.

Simetrik Şifreleme

Mesajları şifrelerken ve çözerken aynı anahtarın kullanılması anlamına gelen bir şifreleme yöntemidir. Geçtiğimiz yıllarda bu yöntem özellikle ordular ve devletler arasındaki gizli iletişimi sağlamak için kullanılır. Günümüzde ise kullanılan simetrik anahtar algoritmaları farklı bilgisayar sistemlerinde kullanılır. Bu sistemlerde geniş çapta kullanılarak veri güvenliği artırılır. İki ya da daha fazla kullanıcının ortak olarak kullandığı tek bir anahtar, simetrik şifreleme düzenlerine dayanır.

Veri parçası ya da kodlanan mesajı ifade eden düz metni, şifrelemek içinde şifresini çözmek için de aynı anahtar kullanılır. Bir düz metnin (girdi) şifre (cipher) adında bir şifreleme algoritmasından geçirilir. Bu sayede şifreli bir metin (cipher text) (çıktı) ortaya çıkar ve buna “şifreleme işlemi” denir. Güçlü bir şifreleme düzeni oluşturulduysa, şifreli metindeki bilgiye ulaşmanın ve bilgiyi okumanın tek yolu şifreyi açacak anahtarın kullanılmasıdır. Şifreyi çözmenin temeli, şifreli metni düz metne çevrilmesi ile gerçekleşebilir.

Simetrik şifreleme sistemlerinde güvenlik, “brute force” uygulanarak anahtarı tahmin etmenin ne kadar zor olduğu esasına dayanır. Örneğin; 128-bit bir anahtarı tahmin etmek sıradan bir bilgisayar donanımı ile milyarlarca yıl sürebilir. Şifre anahtarının uzun olması, şifrenin kırılmasını da bir o kadar zorlaştırır. Günümüzde en çok kullanılan simetrik şifreleme sistemi akış (stream) ve blok şifrelerine dayanır. Akış şifreleri, düz metin verilerini 1-bitlik atışlar ile şifreler. Blok şifreleri ise, veriyi daha önce belirlenmiş boyutlarda gruplayarak her bir bloğa karşılık gelen şifreleme algoritması ve anahtar ile şifreler.

Asimetrik Şifreleme

İki anahtar bulunduran şifreleme yöntemini kapsar. Simetrik şifrelemenin tersidir. Günümüzde oldukça yağın olarak kullanılan asimetrik şifreleme, özel anahtar (private key) ve genel anahtar (public key) olmak üzere iki adet anahtar içerir. İki anahtar arasında matematiksel bir bağ bulunur. Özel anahtardan kolay bir şekilde genel anahtar üretilebiliyorken bunun tersi mümkün değildir. Bu sebeple, özel anahtarın kaybedilmemesi büyük önem taşırken genel anahtarın başka birinin elinde olması bir anlam ifade etmez. Teorik olarak genel anahtardan özel olan anahtara ulaşmak mümkün olsa da, günümüz işlemci teknolojileri kullanılarak güvenilir algoritmalar için bu hesaplamaları yapmak neredeyse imkânsızdır.

Özel anahtar ile şifreme yapılan veri genel anahtar kullanılarak çözümlenir. Genel anahtar ile şifreleme yapıldığında şifrelenen veri özel anahtarla çözümlenir. Özel anahtar şifre imzalama ve çözme için kullanılırken, genel anahtar ise doğrulama ve şifreleme için kullanılır. Gönderici tarafından özel anahtarı ile imzalanan bir veri, alıcı tarafından göndericinin genel anahtarı kullanılarak doğrulanabilir. Özel anahtar sadece sahibinde bulunurken, genel anahtar herkese açılabilir.

Eğer bir saldırgan birinin gizli anahtarını elde ederse, şifrelenmiş verileri o kişinin genel anahtarı ile okuyabilir. Ya da o kişiden gönderiliyormuş gibi imzalı verileri gönderebilir. Asimetrik algoritmalar imzalama (inkâr edilemezlik), anahtar paylaşımı ve gizlilik için kullanılır. Yani güvenilir anahtar değişimleri için kullanılan bir yöntemdir. Bu anahtar sayesinde simetrik şifreleme için kullanılan veriler, güvenilir olarak iletilebilir. En yaygın olarak kullanılan asimetrik algoritmalar DSA (Digital Signature Algorithm), RSA (Rivest-Shamir-Adleman) ve Eliptik eğri algoritmasıdır.

Yazar

Türkiye - İstanbul Merkezli natro.com; 1999 yılından bu yana Alan adı servisleri, web Hosting, sunucu kiralama ve barındırma, Güvenlik çözümleri gibi ürünlerle uluslararası web hosting sektöründe hizmet vermektedir.