Dijital İmza Nedir?
Ana sayfa
Makaleler
Dijital İmza Nedir?

Dijital İmza Nedir?

Orta Seviye
Yayınlanma: Aug 19, 2019Güncellenme: Jan 31, 2023
7m

Dijital imza, dijital verilerin doğruluğunu ve bütünlüğünü onaylamak için kullanılan kriptografik bir mekanizmadır. Dijital imzaları, elle atılan imzaların çok daha karmaşık ve güvenli bir dijital versiyonu olarak kabul edebiliriz.

Basitçe açıklarsak bir dijital imzayı, bir mesaja ya da belgeye eklenmiş bir kod olarak tanımlayabiliriz. Kod, oluşturulmasının ardından, göndericiden alıcıya giderken mesajla oynanmadığının bir kanıtı olarak hareket eder.

Kriptografi kullanarak iletişim süreçlerini güvenli hale getirmek çok eski tarihlere dayansa da, dijital imza yapıları Açık Anahtar Kriptografisinin (PKC) geliştirilmesiyle ancak 1970'lerde mümkün hale gelmiştir. Bu nedenle, dijital imzaların nasıl çalıştığını öğrenmek için öncelikle hash fonksiyonlarının ve açık anahtar kriptografisinin temellerini anlamamız gerekir.


Hash fonksiyonları

Hashing, dijital imza sistemlerinin temel öğelerinden biridir. Hashing süreci, herhangi bir büyüklükteki veriyi sabit büyüklükte bir çıktı haline getirmeyi içerir. Bu işlem, hash fonksiyonları olarak bilinen özel bir algoritma türü ile yapılır. Hash fonksiyonu tarafından yaratılan çıktı hash değeri ya da mesaj özeti olarak bilinir.
Kriptografi ile birleştirildiğinde, kriptografik hash fonksiyonları adını alan bu işlemler eşsiz bir dijital parmak izi olarak hareket eden bir hash değeri (özet) yaratmak için kullanılabilir. Bu da, girdi verisindeki (mesaj) herhangi bir değişikliğin tamamen farklı bir çıktı (hash değeri) yaratacağı anlamına gelir. Kriptografik hash fonksiyonlarının dijital verilerin orijinalliğini doğrulamak için yaygın olarak kullanılmasının altında yatan sebep budur.


Açık anahtar kriptografisi (PKC)

Açık anahtar kriptografisi ya da PKC, bir açık anahtar ve bir özel anahtardan oluşan anahtar çiftlerinin kullanıldığı bir kriptografik sistemi ifade eder. Bu iki anahtar matematiksel olarak bağlantılıdır ve hem veri şifreleme hem de dijital imzalar için kullanılabilir.

PKC bir şifreleme aracı olarak, simetrik şifrelemenin daha az gelişmiş yöntemlerine kıyasla daha güvenlidir. Eski sistemlerde bilginin hem şifrelenmesi hem de şifresinin açılması için aynı anahtar kullanılırken, PKC'de veri şifrelemesi açık anahtarla ve şifre çözümü de karşılık gelen özel anahtarla yapılır.

Bunun dışında PKC yapıları dijital imzaların yaratılması aşamasında da uygulanabilir. Süreç en özünde, bir mesajın (ya da dijital verinin) imzalayan kişinin özel anahtarı ile birlikte hashlenmesinden oluşur. Daha sonra mesajın alıcısı, imzalayan kişi tarafından sağlanan açık anahtarı kullanarak imzanın geçerli olup olmadığını kontrol edebilir.

Bazı durumlarda, dijital imzalar şifreleme de içerebilir ama bu her zaman geçerli değildir. Örneğin, Bitcoin blockchaini PKC'den ve dijital imzalardan faydalanır fakat birçok kişinin düşündüğünün aksine bu süreçte şifreleme yapılmaz. Teknik olarak Bitcoin işlemleri doğrulamak için Eliptik Eğri Dijital İmza Algoritmasını (ECDSA) kullanır.


Dijital imzalar nasıl çalışır

Kripto paralar bağlamında, bir dijital imza sistemi genellikle üç temel adımdan oluşur: hash etme, imzalama ve doğrulama.

Veriyi hash etme

İlk adım mesajı ya da dijital veriyi hash etmektir. Bunu yapmak için veri bir hashing algoritmasından geçirilerek bir hash değeri yaratılır (ör. mesaj özeti). Daha önce belirttiğimiz gibi mesaj büyüklüğü geniş çapta farklılık gösterebilir fakat girdiler hash edildiğinde ortaya çıkan tüm hash değerleri aynı uzunlukta olur. Hash fonksiyonunun en temel özelliği budur.

Fakat, veriyi hash etmek bir dijital imza yaratmak için zorunlu değildir çünkü bir kişi özel anahtarını kullanarak hiç hash edilmemiş bir mesajı imzalayabilir. Kripto paralar için veri her zaman hash edilir çünkü sabit uzunlukta özetlerle çalışmak tüm süreç için çok önemlidir.

İmzalama

Bilgi hash edildikten sonra, mesajın göndereninin bunu imzalaması gerekir. Açık anahtar kriptografisinin sahneye çıktığı yer burasıdır. Her biri kendine has özel mekanizmalara sahip birkaç farklı dijital imza algoritması türü vardır. Ama en özünde, hash edilmiş mesaj bir özel anahtarla imzalanır ve mesajın alıcısı karşılık gelen açık anahtarı (imza atan tarafından sağlanır) kullanarak mesajın geçerliliğini kontrol eder.

Diğer bir deyişle, imza yaratılırken özel anahtar dahil edilmezse, alıcı mesajın geçerliliğini doğrulamak için karşılık gelen açık anahtarı kullanamaz. Hem açık hem de özel anahtarlar mesajın göndereni tarafından oluşturulur fakat yalnızca açık anahtar alıcı ile paylaşılır.

Dijital imzaların, her bir mesajın içeriği ile doğrudan ilişkili olduğunu belirtmek de önemlidir. Mesajdan bağımsız olarak genellikle hep aynı olan elle atılan imzaların aksine her bir dijital olarak imzalanmış mesaj farklı bir dijital imzaya sahip olacaktır.

Doğrulama

Son doğrulama adımına kadar tüm süreci açıklayacak bir örnek üzerinden ilerleyelim. Alice'in Bob'a bir mesaj yazdığını, bunu hash ettiğini ve daha sonra hash değerini kendi özel anahtarıyla birleştirerek bir dijital imza yarattığını düşünelim. İmza, bu belirli mesaj için eşsiz bir dijital parmak izi olarak çalışacaktır.

Bob mesajı aldığında, dijital imzanın geçerliliğini Alice tarafından sağlanan açık anahtarı kullanarak kontrol edebilir. Bu şekilde Bob, imzanın Alice tarafından yaratıldığına emin olabilir çünkü açık anahtara karşılık gelen özel anahtar yalnızca Alice'tedir (en azından böyle olmasını bekleriz).

Bu nedenle Alice'in özel anahtarını gizli tutması çok önemlidir. Eğer Alice'in özel anahtarı başka birinin eline geçerse, bu kişiler dijital imzalar yaratabilir ve Alice gibi davranabilir. Bitcoin bağlamında bu kişinin Alice'in özel anahtarını kullanarak ona ait Bitcoin'leri izni olmadan taşıması ya da harcaması anlamına gelir.


Dijital imzalar neden önemlidir?

Dijital imzalar genellikle üç amaç için kullanılır: veri bütünlüğü, doğrulama ve inkar edememe.

  • Veri bütünlüğü. Bob, Alice'in mesajının kendisine ulaşana kadar değiştirilmediğini doğrulayabilir. Mesajda yapılan herhangi bir değişiklik tamamen başka bir imza yaratacaktır.
  • Doğrulama. Alice özel anahtarlarını gizli tuttuğu müddetçe Bob, Alice'in açık anahtarını kullanarak dijital imzaların başka biri değil Alice tarafından yaratıldığını onaylayabilir.
  • İnkar edememe. İmza bir kere oluşturulduğunda, özel anahtarları bir şekilde başkasının eline geçmediği takdirde Alice imza attığını gelecekte reddedemez.


Kullanım Alanları

Dijital imzalar çeşitli dijital belgelerde ve sertifikalarda kullanılabilir. Dolayısıyla, çeşitli uygulamalara da sahiptir. En yaygın kullanım alanlarından bazıları şunlardır:  

  • Bilgi Teknolojisi. İnternet iletişim sistemlerinin güvenliğini güçlendirmek.
  • Finans.  Dijital imzalar denetimlere, masraf raporlarına, kredi anlaşmalarına ve daha pek çok şeye uygulanabilir.
  • Hukuk. Her tür iş anlaşmaları ve resmi evraklar dahil yasal anlaşmaların imzalanması.
  • Sağlık. Dijital imzalar reçete ve sağlık kaydı sahteciliklerini engelleyebilir.
  • Blockchain. Dijital imza yapıları, kripto paraların yalnızca gerçek sahiplerinin fonları hareket ettirecek bir işlemi onaylayabileceğini garanti altına alır (özel anahtarları başkaları tarafından ele geçirilmediği müddetçe).


Sınırlamalar

Dijital imza yapılarının karşı karşıya olduğu başlıca zorluklar en az üç gerekliliğe dayanır: 

  • Algoritma. Dijital imza yapılarında kullanılan algoritmaların kalitesi önemlidir. Buna güvenilir hash fonksiyonları ve kriptografik sistemlerin seçilmesi de dahildir.
  • Uygulama. Eğer algoritmalar iyi fakat uygulama kötü olursa, dijital imza sistemlerinde sorunların görülmesi olasıdır.
  • Özel Anahtar. Eğer özel anahtarlar açığa çıkarsa ya da bir şekilde birinin eline geçerse, orijinallik ve red-edilememe özellikleri geçersiz hale gelir. Kripto para kullanıcıları için özel anahtarı kaybetmek ciddi finansal kayıplarla sonuçlanabilir.


Elektronik imzalarla dijital imzaların karşılaştırılması

En basit haliyle dijital imzalar, belge ve mesajları imzalamak için herhangi bir elektronik yöntemin kullanılması anlamına gelen elektronik imzaların belirli bir türüdür. Bu nedenle, tüm dijital imzalar elektronik imzalardır ama bunun aksi her zaman geçerli değildir.

Aralarındaki en büyük fark doğrulama yöntemidir. Dijital imzalar, hash fonksiyonları, açık anahtar kriptografisi ve şifreleme teknikleri gibi kriptografik sistemleri kullanır.


Son fikirler

Hash fonksiyonları ve açık anahtar kriptografisi artık pek çok farklı kullanım alanına uygulanan dijital imza sistemlerinin en temelinde yer alır. Dijital imzalar, eğer sağlıklı bir şekilde uygulamaya alınırsa güvenliği artırabilir, bütünlüğü garanti edebilir ve tüm dijital verilerin doğrulanmasına destek olabilir.

Blockchain dünyasında dijital imzalar, kripto para işlemlerini imzalamak ve onaylamak için kullanılır. Bitcoin için özel bir öneme sahiptir çünkü coinlerin yalnızca karşılık gelen özel anahtarlara sahip kişiler tarafından harcanabilmesini garanti altına alır.

Hem elektronik hem de dijital imzaları yıllardır kullanıyor olsak da hala her ikisi için de büyüme fırsatları bulunuyor. Günümüz bürokrasisinin büyük bölümü hala evrak işlerine dayanıyor fakat daha dijital sistemlere geçtikçe dijital imza yapılarının daha fazla benimsenmesi çok olası.