DDBMS - Veritabanı Güvenliği ve Kriptografi
Bu bölümde, bir veritabanı sisteminin karşı karşıya olduğu tehditleri ve kontrol önlemlerini inceleyeceğiz. Bir güvenlik aracı olarak kriptografiyi de inceleyeceğiz.
Veritabanı Güvenliği ve Tehditler
Veri güvenliği, herhangi bir veritabanı sisteminin zorunlu bir yönüdür. Çok sayıda kullanıcı, parçalanmış ve çoğaltılmış veriler, çok sayıda site ve dağıtılmış kontrol nedeniyle dağıtılmış sistemlerde özellikle önemlidir.
Veritabanındaki Tehditler
Availability loss - Kullanılabilirlik kaybı, veritabanı nesnelerinin meşru kullanıcılar tarafından erişilebilir olmaması anlamına gelir.
Integrity loss- Veritabanında yanlışlıkla veya kötü niyetle kabul edilemez işlemler yapıldığında bütünlük kaybı meydana gelir. Bu, veri oluştururken, eklerken, güncellerken veya silerken olabilir. Yanlış kararlara yol açan bozuk verilere neden olur.
Confidentiality loss- Gizli bilgilerin yetkisiz veya kasıtsız ifşası nedeniyle gizlilik kaybı meydana gelir. Yasadışı eylemlere, güvenlik tehditlerine ve halkın güveninin kaybına neden olabilir.
Kontrol Önlemleri
Kontrol önlemleri genel olarak aşağıdaki kategorilere ayrılabilir -
Access Control- Erişim denetimi, yetkisiz erişime karşı koruma sağlamak için bir veritabanı yönetim sistemindeki güvenlik mekanizmalarını içerir. Bir kullanıcı, oturum açma işlemini yalnızca geçerli kullanıcı hesaplarıyla temizledikten sonra veritabanına erişebilir. Her kullanıcı hesabı şifre korumalıdır.
Flow Control- Dağıtılmış sistemler, bir siteden diğerine ve ayrıca bir site içinde çok sayıda veri akışını kapsar. Akış kontrolü, verilerin yetkisiz temsilciler tarafından erişilebilecek şekilde aktarılmasını engeller. Bir akış politikası, bilginin içinden akabileceği kanalları listeler. Ayrıca veriler ve işlemler için güvenlik sınıflarını tanımlar.
Data Encryption- Veri şifreleme, hassas verilerin kamuya açık kanallar üzerinden iletilmesi gereken kodlama verilerini ifade eder. Yetkisiz bir temsilci verilere erişim sağlasa bile anlaşılmaz bir formatta olduğu için anlayamaz.
Kriptografi nedir?
Cryptography güvenilmez iletişim yolları yoluyla göndermeden önce bilginin kodlanması bilimidir, böylece yalnızca yetkili bir alıcı onu çözebilir ve kullanabilir.
Kodlanmış mesaj çağrılır cipher text ve orijinal mesaj çağrılır plain text. Gönderen tarafından düz metni şifreli metne dönüştürme işlemine kodlama veyaencryption. Alıcı tarafından şifreli metni düz metne dönüştürme işlemine kod çözme veyadecryption.
Kriptografi kullanarak iletişimin tüm prosedürü aşağıdaki diyagramla gösterilebilir -
Geleneksel Şifreleme Yöntemleri
Geleneksel kriptografide, şifreleme ve şifre çözme aynı gizli anahtar kullanılarak yapılır. Burada gönderen, mesajı gizli anahtarın bir kopyasını kullanarak bir şifreleme algoritması ile şifreler. Şifrelenmiş mesaj daha sonra genel iletişim kanalları üzerinden gönderilir. Şifrelenmiş mesaj alındığında alıcı, aynı gizli anahtarı kullanarak karşılık gelen bir şifre çözme algoritması ile mesajın şifresini çözer.
Geleneksel kriptografide güvenlik iki faktöre bağlıdır -
Herkesin bildiği bir ses algoritması.
Yalnızca gönderici ve alıcı tarafından bilinen rastgele oluşturulmuş, tercihen uzun bir gizli anahtar.
En ünlü geleneksel şifreleme algoritması Data Encryption Standard veya DES.
Bu yöntemin avantajı kolay uygulanabilirliğidir. Bununla birlikte, geleneksel kriptografinin en büyük sorunu, gizli anahtarı iletişim kuran taraflar arasında paylaşmaktır. Anahtarı göndermenin yolları zahmetlidir ve kulak misafiri olmaya oldukça açıktır.
Açık Anahtarlı Şifreleme
Geleneksel şifrelemenin aksine, açık anahtar şifrelemesi, genel anahtar ve özel anahtar olarak adlandırılan iki farklı anahtar kullanır. Her kullanıcı, ortak anahtar ve özel anahtar çiftini oluşturur. Kullanıcı daha sonra genel anahtarı erişilebilir bir yere koyar. Bir gönderen bir mesaj göndermek istediğinde, alıcının genel anahtarını kullanarak mesajı şifreler. Şifrelenmiş mesajı alır almaz, alıcı özel anahtarını kullanarak şifresini çözer. Özel anahtar alıcıdan başka kimse tarafından bilinmediğinden, mesajı alan başka hiç kimse onun şifresini çözemez.
En popüler açık anahtar şifreleme algoritmaları şunlardır: RSA algoritma ve Diffie– Hellmanalgoritması. Bu yöntem, özel mesaj göndermek için çok güvenlidir. Ancak sorun şu ki, çok fazla hesaplama içeriyor ve bu nedenle uzun mesajlar için verimsiz olduğu kanıtlanıyor.
Çözüm, geleneksel ve genel anahtar şifrelemesinin bir kombinasyonunu kullanmaktır. Gizli anahtar, iletişim kuran taraflar arasında paylaşılmadan önce açık anahtar kriptografisi kullanılarak şifrelenir. Daha sonra mesaj, paylaşılan gizli anahtarın yardımıyla geleneksel kriptografi kullanılarak gönderilir.
Dijital imzalar
Dijital İmza (DS), e-ticaret uygulamalarında kullanılan genel anahtar şifrelemesine dayalı bir kimlik doğrulama tekniğidir. Mesajının gövdesi içindeki bir bireye benzersiz bir işareti ilişkilendirir. Bu, başkalarının geçerli mesaj gönderenlerin kimliğini doğrulamasına yardımcı olur.
Tipik olarak, bir kullanıcının dijital imzası, sahteciliğe karşı güvenlik sağlamak için mesajdan mesaja değişir. Yöntem aşağıdaki gibidir -
Gönderen bir mesajı alır, mesajın mesaj özetini hesaplar ve özetini özel bir anahtarla imzalar.
Gönderen daha sonra imzalı özeti düz metin mesajıyla birlikte ekler.
Mesaj iletişim kanalı üzerinden gönderilir.
Alıcı, eklenen imzalı özeti kaldırır ve ilgili genel anahtarı kullanarak özeti doğrular.
Alıcı daha sonra düz metin mesajını alır ve aynı mesaj özeti algoritması ile çalıştırır.
Adım 4 ve adım 5'in sonuçları eşleşirse, alıcı mesajın bütünlüğe ve gerçekliğe sahip olduğunu bilir.