Temel Kavramlar
Kriptoloji
Kriptoloji, matematiğin hem şifre bilimi (kriptografi), hem de şifre
analizini (kriptanaliz) kapsayan dalıdır. Şifre biliminin amacı, ileti
güvenliğini sağlamaktır. Şifre analizinin amacı ise varolan şifreleri
çözmektir.
Şifreleme bir iletinin (düz metin)
içeriğini, uygun bilgi (anahtar
bilgisi) elde olmadan okunamayacak hale getirme işlemidir.
Şifrelemenin amacı, iletinin istenmeyen şahıslar tarafından okunmasını
engellemektir. Şifre çözümü (deşifre) ise şifrelemenin tam tersi, yani
şifreli metinin düz metine çevrilmesi işlemidir.
Bugünün kriptografisi şifreleme ve şifre çözmeden daha fazlasını
içerir. Kimlik denetimi gizlilik kadar önemlidir. Herhangi bir iletiye
adımızı ekleyip ağ üzerinden gönderdiğimiz zaman kimliğimizi
ispatlamak için elektronik yöntemlere ihtiyaç duyarız. Kriptografinin
buna sunduğu çözüm sayısal imzadır.
Açık Anahtarlı Kriptografi
Geleneksel kriptografide, tek bir anahtar kullanılır ve mesajı
gönderen de, alan da mesajı bu anahtar ile şifreleyip şifresini çözer.
Bu yöntem gizli anahtarlı kriptografi
olarak bilinir. Burada amaç, iki kullanıcının da üzerinde anlaştığı
anahtarın istenmeyen kişilerin eline geçmesini engellemektir.
Anahtarların üretilmesi, iletilmesi ve saklanması anahtar yönetimi
olarak bilinir. Gizli anahtarlı yapılarda, genelde güvenli anahtar
yönetimi sağlamada problem yaşanır.
Anahtar
yönetimi problemini çözme amacıyla, Whitfield Diffie ve Martin
Hellman, 1976 yılında açık anahtarlı yapıları geliştirdi. Açık
anahtarlı kriptografinin iki temel kullanımı vardır, şifreleme ve sayısal imza. Bu sistemde her kişi biri
açık, diğeri özel olmak üzere bir çift anahtar edinir. Açık anahtar
herkesin erişimine açıktır, özel anahtar ise sadece sahibinin
erişebileceği şekilde saklanmalıdır. Burada gönderenin ve alıcının
aynı gizli bilgiyi tutma durumu ortadan kalkmıştır. Bütün iletişim
sadece açık anahtarları gerektirir, özel anahtarlar ne iletilir ne de
paylaşılır. Bu sistemde, kaygı duyulacak tek nokta açık anahtar ve
anahtar sahibinin güvenilir ve doğru şekilde eşleştirilmesidir
(örneğin, güvenilir bir dizinde). Açık anahtarı kullanarak herhangi
bir kişi şifreli mesaj gönderebilir, ancak gönderilen şifreli mesajı
sadece kullanılan açık anahtarın eşi olan özel anahtar açabilir.
Bundan başka, açık anahtarlı kriptografi sadece gizliliği (şifreleme)
sağlamak amacıyla değil, kimlik denetimi (sayısal imza) ve daha bir
çok teknik için kullanılır.
Açık anahtarlı
sistemlerde, her zaman özel anahtarın açık anahtarla matematiksel bir
bağlantısı vardır. Bu sebeple açık anahtarlı bir sisteme, açık
anahtarı kullanarak saldırmak her zaman mümkündür. Buna karşı savunu,
açık anahtardan özel anahtarı elde etme işlemini mümkün olduğunca
zorlaştırmaktır. Bu anahtarları oluşturmak için çözülememiş matematik
problemleri kullanıldığından, açık anahtarı kullanarak özel anahtarı
elde etme işlemi de imkansız kabul edilir.
Gizli Anahtarlı Kriptografi
Gizli anahtarlı kriptografi, simetrik kriptografi ya da tek anahtarlı
kriptografi olarak da adlandırılır. Tek bir anahtarın hem şifreleme
hem de şifre çözme amacıyla kullanıldığı daha geleneksel bir
yöntemdir. Gizli anahtarlı kriptografi sadece şifreleme değil, kimlik
denetimiyle de ilgilenir. Kimlik denetiminde kullanılan yöntemlerden
biri MAC (message authentication
codes) tır.
Gizli anahtarlı kriptografide temel
problem, göndericinin ve alıcının, üçüncü bir kişinin eline geçmesini
engelleyerek ortak bir anahtar üzerinde anlaşmalarıdır. Bu iki tarafın
dinlenme korkusu duymadan iletişim kurmasını sağlayacak bir yöntem
gerektirir. Ancak, gizli anahtarlı yapıların avantajı, açık anahtarlı
yapılara göre daha hızlı olmalarıdır.
Anahtar
Kriptografi algoritmasının şifreleme ve şifre çözme amacıyla kullandığı sayıdır.
Özel Anahtar
Açık anahtarlı kriptografide kullanılan, sadece sahibi tarafından bilinmesi ve kullanılması gereken anahtardır. Özel anahtar, imza atma, şifreleme ve karşılığı olan açık anahtarıyla şifrelenmiş metni çözmek için kullanılır. Bu yüzden, açık anahtarlı kriptografi güvenliğinin en önemli kısmını oluşturur.
Açık Anahtar
Açık anahtarlı kriptografide kullanılan, herkesin erişimine ve kullanımına açık olan anahtardır. Özel olan anahtarla matematiksel bağlantısı vardır. Açık anahtar, özel anahtarla atılan imzayı kontrol etmek ya da sadece özel anahtarın çözebileceği şekilde metin şifrelemek için kullanılır.
Gizli Anahtar
Gizli anahtarlı kriptografide kullanılan anahtardır.
Özet Fonksiyonu
Özet fonksiyonu bir mesajın 16 veya 20 bitlik parmak izini çıkarır.
Belli bir mesaj aynı özet algoritması kullanıldığında, aynı mesaj
özetini verir. Eğer iyi bir özet fonksiyonu kullanılıyorsa, mesajda
yapılan tek bitlik bir değişim bile mesaj özetinin değişmesine sebep
olur. Özet fonksiyonu kullanarak, kimlik denetimi amacıyla özel
anahtarla bütün mesajı şifrelemek zorunluluğu ortadan kalkar.
Özet fonksiyonları verilen mesajı şifreler, ancak bunun geri
dönüşü yoktur, yani eldeki mesaj özeti kullanılarak orijinal mesaj
elde edilemez.
MAC(Message Authentication Code)
MAC'lar, sayısal imza ile benzer amaçlarla kullanılır. Ancak burada kimlik denetimi için açık anahtarlı kriptografi yerine gizli anahtarlı kriptografi, yani sadece üzerinde anlaşılan ortak anahtar kullanılır. Yani bu şekilde kimlik tespitini sadece istenilen kullanıcı yapabilir; sayısal imzada olduğu gibi gönderenin açık anahtarına sahip herhangi birinin imzayı doğrulayabilmesi gibi bir durum söz konusu değildir.
RSA( Rivest, Shamir, Adleman)
RSA şifreleme sistemi, hem şifreleme hem de sayısal imza atma olanağı
tanıyan açık anahtarlı bir
kriptografik yapıdır. Sistemi 1977 yılında Ronald Rivest, Adi Shamir
ve Leonard Adleman geliştirmiştir. Sistem adını, geliştiricilerinin
isimlerinin ilk harflerinden alır.
RSA algoritması
şöyle çalışır: Öncelikle p ve q olmak üzere iki tane
asal sayı üretilir. Bunların birbirleriyle çarpılmasıyla n, n=p.q,
elde edilir. Bundan sonra n sayısından küçük ve (p-1).(q-1)
sayısıyla 1 dışında herhangi bir ortak böleni bulunmayan bir e sayısı
seçilir. Daha sonra (e.d-1) sayısının (p-1).(q-1)
çarpımına tam olarak bölünmesini sağlayan bir d sayısı bulunur. e
ve d değerleri, sırasıyla, açık ve özel üs olarak
adlandırılırlar. Açık anahtarı (n,e) çifti, özel
anahtarı ise (n,d) çifti oluşturur. p ve q
sayıları ya yok edilmeli ya da özel anahtar ile birlikte
saklanmalıdır.
Özel anahtar olan d
sayısının, (n,e) sayılarından elde edilmesi zor bir
işlemdir. Eğer bir kişi n sayısını çarpanlarına ayırarak p
ve q sayılarını elde edebilirse özel anahtarı da kolaylıkla
bulabilir. Bu sebeple RSA sisteminin güvenliği çarpanlarına ayırma
probleminin zorluğu temeline dayanır. Çarpanlarına ayırma işleminin
kolay bir yönteminin bulunması, RSA algoritmasının kırılması anlamına
gelir.
Elektronik Sertifika Hizmet Sağlayıcısı (ESHS)
Açık elektronik ağlardan sayısal imzalı bilgi gönderen kişinin
imzasının geçerliliğinin/doğruluğunun saptanması için, imzayı atanın
açık anahtarı gereklidir. Bu nedenle hangi açık anahtarın hangi
kullanıcıya ait olduğunun belgelenmesi çok önemlidir. Bunun için
kullanıcıların açık anahtarlarını ve kimlik bilgilerini onaylama
yetkisine sahip bir kuruluşa, bir otoriteye gereksinim vardır.
Elektronik sertifika hizmet sağlayıcıları kişi ve kurumlara sertifika
üreten, dağıtan ve belgelerin yönetimini üstlenen güvenilir
kurumlardır.
ESHSlerin kendilerine ait bir veya
birden fazla anahtar çiftleri bulunur. Bu anahtar çiftlerinden özel anahtarın yetkili kişiler dışında kimsenin
ulaşamayacağı şekilde güvenli bir ortamda tutulması ve çok iyi
korunması gerekmektedir. Açık anahtar ise
kullanıcılarda olduğu gibi kök sertifika da denen
ESHS sertifikaları içinde bulunur. Her ESHS'nin bir kök sertikası
vardır ve ESHS kök sertifikalarını kamuya açarak dizin sunucular
(directory services) gibi herkesin ulaşabileceği yerlerde
tutmalıdır.
ESHS'ler herhangi bir kullanıcının kimliğini kontrol ederek,
bu kullanıcının hangi açık anahtara sahip olduğunu belgeler ve ESHS'ye
ait özel anahtarla sayısal olarak imzalayarak o kullanıcıya ait
sertifikayı oluşturur (Şekil 1). Kullanıcı sertifikalarının bir
kopyasının ESHS'nin herkese açık olan bir erişim bölgesine kaydeder.
Şekil 1 -
Kullanıcı sertifikasının oluşturulması
Birden fazla ESHS'ı bulunması durumunda ESHS'ler arasında hiyerarşik yapının kurulması, birbirlerinin sertifikalarını tanımaları gerekir. Bu gibi durumlara da teknik açıdan imkan veren teknolojiler geliştirilmiş durumdadır. Bu teknolojilerin temelinde, sertifika üretme, özel anahtarların korunması, açık anahtarların duyurulması türünden konular için geliştirilmiş açık telekomünikasyon standartları vardır (X.509, PKCS 1-13 vs.).
ESHS, 5070 Nolu Elektronik İmza Kanunu'nda "elektronik sertifika, zaman damgası ve elektronik imzalarla ilgili hizmetleri sağlayan kamu kurum ve kuruluşları ile gerçek veya özel hukuk tüzel kişiler" olarak belirtilmiştir.
Elektronik Sertifika
Elektronik sertifika nüfüs cüzdanı, ehliyet belgesi veya diğer
sertifikalar gibi kişinin elektronik ortamda kimliğini ispatlaması
için kullanılan elektronik dosyalardır. Elektronik sertifikalar açık anahtarlı kriptografi teknolojisine dayanır ve
kamuya açıktır. Elektronik sertifikalar kişilere ait olabildiği gibi
kurumlara veya web sunucularına da ait olabilir. Elektronik
sertifika, sahibinin kişisel bilgilerini ve bu kişisel bilgilere ait
açık anahtar bilgisini taşır ve taşıdığı açık
anahtar bilgisinin belirtilen kişi veya kuruma ait olduğunu temin
eder.
ESHS, 5070 Nolu Elektronik İmza Kanunu'nda
belirtildiği şekliyle
"Nitelikli elektronik sertifikada;
a) Sertifikanın
"nitelikli elektronik sertifika" olduğuna dair bir ibarenin,
b) Sertifika hizmet sağlayıcısının kimlik bilgileri ve kurulduğu ülke
adının,
c) İmza sahibinin teşhis edilebileceği kimlik
bilgilerinin,
d) Elektronik imza oluşturma verisine karşılık
gelen imza doğrulama verisinin,
e) Sertifikanın geçerlilik
süresinin başlangıç ve bitiş tarihlerinin,
f) Sertifikanın
seri numarasının,
g) Sertifika sahibi diğer bir kişi adına
hareket ediyorsa bu yetkisine ilişkin bilginin,
h) Sertifika
sahibi talep ederse meslekî veya diğer kişisel bilgilerinin,
ı) Varsa sertifikanın kullanım şartları ve kullanılacağı işlemlerdeki
maddî sınırlamalara ilişkin bilgilerin,
j) Sertifika hizmet
sağlayıcısının sertifikada yer alan bilgileri doğrulayan güvenli
elektronik imzasının,
Bulunması zorunludur."
Kişisel Sertifika
Kişisel sertifikalar sadece kişilere verilen özel bir elektronik sertifikadır. Sertifikalar yaygın olarak X.509 standartına uygun olarak üretilir ve bu standartla uyumlu olan web tarayıcılarına, akıllı kartlara ya da token'lara yüklenebilir.
Sunucu Sertifikası
Sunucu sertifikaları, web sitesinin kimlik bilgilerini ve açık anahtarını taşıyan ve web sitesine bağlanan kullanıcılara sunulan elektronik dosyalardır. Sunucu sertifikası, temelde web sunucusunun adresini ve açık anahtarını bulundurur. Sunucu sertifikaları, web sunucunun kimliğinin doğrulanması ve sunucuya gönderilecek olan bilginin SSL teknolojisi kullanılarak şifreli gönderilmesi. Gönderilecek olan bilgi sunucu sertifikasının içindeki açık anahtar ile şifrelenir. Bu şifreli bilgiyi çözecek özel anahtar sadece sunucuda bulunduğundan başka birisinin şifreyi çözmesi mümkün değildir. Böylece şifreli bilginin internet üzerinden gönderiminde güvenlik sağlanmış olur.
Kök Sertifika
Kök sertifika, ESHS'nin kimlik bilgilerini ve açık anahtarını taşıyan elektronik dosyadır. Kök sertifikasını diğer sertifikalarden ayıran tek özellik, üzerinde kendi imzasını taşıyor olmasıdır. Yayınladıkları diğer sertifikalara güvenilirlik onayının verilebilmesi için kök sertifikanın, kullanıcı tarafında mevcut olmaları gereklidir. Örneğin bir web sunucusunun sertifikasını alan internet tarayıcısı bu kimliğe güvenip güvenmeyeceğine karar verebilmesi için sunucuya sertifikayı veren sertifika hizmet sağlayıcısının kök sertifikasına ihtiyaç duyar. Eğer söz konusu kök sertifika, internet tarayıcısında tanımlı değilse, tarayıcı bu sitenin güvenilir olmadığını kullanıcıya bildirir. Bazı ESHS sertifikaları, Netscape ve Internet explorer gibi popüler olan tarayıcılarda önceden tanımlanmıştır yani kök sertifikalar tarayıcıya yüklenmiş durumdadır. Diğer ESHS kök sertifikalarının da tarayıcıya tanımlanabilmesi için kök sertifikaların tarayıcıya yüklenmesi gerekmektedir.
Elektronik İmza
5070 Nolu Elektronik İmza Kanunda, "Elektronik imza: Başka bir elektronik veriye eklenen veya elektronik veriyle mantıksal bağlantısı bulunan ve kimlik doğrulama amacıyla kullanılan elektronik veriyi," ifade eder. Açık anahtarlı kriptografide kullanılan sayısal imza, bir elektronik imza uygulamasıdır.
Sayısal İmza
Sayısal imza, açık anahtarlı kriptografide, özel anahtar ve metin ile matematiksel yöntemler kullanılarak oluşturulan bir dizi karakterdir. Elle atılan imzanın elektronik ortamdaki karşılığıdır. Sayısal imza, doğru şekilde kullanıldığında, mesajın bütünlüğünün korunmasını, kaynağın doğruluğunun ispatlanmasını ve inkar edilemez olmasını sağlar.
Zaman Damgası
Bir elektronik verinin, üretildiği, değiştirildiği, gönderildiği, alındığı ve/veya kaydedildiği zamanın tespit edilmesi amacıyla, ESHS tarafından elektronik imzayla doğrulanan kayıt.
Anahtar Anlaşma Protokolü
Anahtar anlaşma protokolü, tek anahtarlı yapılarda iki tarafın gizli anahtar üzerinde anlaşması gereken durumlarda kullanılır. Bu protokoller ortam güvenli olmasa da, daha önceden üzerinde anlaşılmış anahtara gerek duymaksızın tarafların güvenli bir şekilde gizli anahtar üzerinde anlaşmasını sağlar.
SSL (Secure Socket Layer)
SSL teknolojisi TCP/IP protokolü üzerinden çalışan, web sunucusu ve
web tarayıcısı arasındaki tüm bilgi akışını koruyan bir güvenlik
protokolüdür. Bütün popüler web tarayıcılarda ve web sunucularda
uygulanmaktadır. Bugünün web üzerinden elektronik ticaret ve
elektronik iş uygulamalarında önemli bir rolü vardır. SSL protokolü
iki taraf arasında güvenli ve gizli iletişimin sağlanmasında
elektronik sertifika kullanır. SSL bağlantısı üzerinden gönderilen
veriler üçüncü şahıslar tarafından bozguna uğratıldığında, bundan
tarafların anında haberi olur.
Bir web sunucusunun kullanıcılarıyla SSL bağlantısı
sağlayabilmesi için öncelikle sunucu tarafında bir sunucu sertifikası
bulunması gereklidir. SSL ile güvenliği sağlanmış bir siteye bağlanan
kullanıcı sitenin URL adresinin "https:" ile başladığını görür.
Daha sonra SSL bağlantısı kurulur ve sunucu-tarayıcı arasındaki tüm
veriler üçüncü şahısların mesajı okumasını önlemek amacıyla
şifrelenir.Bu işlemlerin amacı kullanıcıya bağlandığı sitenin
gerçekten bağlandığını düşündüğü site olduğunun ispatının
sağlanmasıdır. Kullanıcı bundan emin olmak için SSL bağlantısı
süresince sunucudan gelen her bilgiyi web sayfasının güvenlikle
ilgili özelliklerine bakarak kontrol etmelidir. Web sayfalarının
güvenlik bilgileri sunucunun sertifikasını kontrol imkanı sağlar.
Eğer yabancı veya farklı bir sunucunun sertifikasıyla karşılaşılırsa
bağlanılan sunucu bağlanıldığı sanılan sunucu değildir ve iletişimin
güvenliği tehdit altındadır.
Çevrimici Sertifika Durum Protokolü ÇiSDuP / OCSP (Online Certificate Status Protocol)
OCSP, RFC 2560'ın içindeki Internet Engineering Task Force (IETF)' da tanımlanmış bir PKI teknolojisi standardıdır. PKI çözümlerinin en kritik noktalarından birisi olan OCSP, sertifikaların geçerliliğinin kontrol edilmesinde kullanılan yöntemlerden birisidir. İptal edilen sertifikalar anında OCSP sunucuya bildirilir. OCSP sunucusuna bağlanan istemci sertifikanın iptal olup olmadığı bilgisini sunucudan öğrenir. OCSP sunucu, istemciden gelen bir veya birden fazla sertifikanın iptal olup olmadığına dair sorunun cevabını imzalı olarak geri bildirir. OCSP, CRL'in gecikme, ölçeklenebilme, yönetim sorunlarına çözüm getirmek için CRL'e tamamlayıcı olarak geliştirilmiştir.
SİL (Sertifika İptal Listesi)- (CRL- Certificate Revocation List)
İptal olmuş sertifika bilgilerinin içinde yer aldığı ESHS'nin imzasını taşıyan elektronik dosya