İçeriğe geç
wilogger

Teknik · 5 dk okuma

İmzalı log kaydı nasıl çalışır? Hash zinciri ve günlük imza

· Yazan: Wilogger ekibi (Eksen Digital)

Sorun: log dosyası sonradan değiştirilebilir

Düz bir metin dosyasında ya da veritabanında satır silinebilir, değiştirilebilir ve kimse fark etmez. Resmi bir talep ya da uyuşmazlıkta “bu kayıtlar sonradan değişmedi” diyebilmek için değişikliğin fark edilebilir olması gerekir.

Hash zinciri

Her kaydın özeti SHA-256 ile hesaplanır: özet = SHA-256(önceki kaydın özeti + bu kaydın içeriği). İlk kayıt sabit bir başlangıç değerine bağlanır. Sonuç bir zincirdir: ortadaki bir kaydı değiştirirseniz o kaydın ve ondan sonraki her kaydın özeti artık tutmaz.

Zincir cihaz (ya da bilgisayar) başına ayrı tutulur ve sıra numarası taşır; böylece silinen bir kayıt da numara boşluğu olarak görünür.

Günlük imzalı kapanış

Zincir tek başına yetmez: zinciri yazan biri tüm zinciri baştan yeniden hesaplayabilir. Bu yüzden her gün sonunda o günün son özeti, kayıt sayısı ve zaman aralığı bir “manifesto” olarak yazılır ve özel anahtarla Ed25519 imzasıyla mühürlenir. İmza anahtarı veritabanından ayrı tutulur. Doğrulayıcı, ortak anahtarla imzayı kontrol eder; bir günün manifestosu, bir önceki günün manifestosuna bağlıdır.

Doğrulama

Doğrulama komutu seçilen tarih aralığında şunları yapar: imzaları kontrol eder, manifestoların birbirine bağlı olduğunu denetler, her kaydın özetini yeniden hesaplar ve sıra numaralarında boşluk arar. Bozulma varsa hangi kayıttan itibaren olduğunu bildirir.

Neyi kanıtlar, neyi kanıtlamaz?

İmzalı zincir değişikliğin fark edilebilir olmasını sağlar (kurcalamaya karşı kanıt). Kayıtların gizliliğini tek başına sağlamaz; bunun için şifreleme ve erişim denetimi ayrıca gerekir.

Zaman konusunda dürüst olmak gerekir: Wilogger şu an manifestoya sunucu saatine dayalı yerel bir zaman damgası ekler. Hukuki geçerlilik için Kamu SM gibi bir zaman damgası sağlayıcısı gerekebilir; bu entegrasyon arayüzü hazır, uygulaması planlıdır ve gerekliliği hukukçu görüşüne bağlıdır.

Sık sorulan sorular

Hash zinciri nedir?

Her kaydın özetinin bir önceki kaydın özetini de içerdiği bir yapıdır; bir kaydı değiştirmek sonraki tüm özetleri bozduğu için değişiklik fark edilir.

İmzalı log kaydı değiştirilemez mi?

Değiştirilmesini fiziksel olarak engellemez, değiştirildiğinin fark edilmesini sağlar. Ayrıca veritabanı yetkileri uygulamanın kayıt güncellemesini ve silmesini engelleyecek biçimde daraltılır.

Günlük imza neden gerekli?

Zinciri yazan taraf baştan yeniden hesaplayabilir; gün sonunda imzalanan manifesto ve imza anahtarının ayrı tutulması bunu zorlaştırır ve değişikliği doğrulanabilir kılar.

Zaman damgası yasal geçerlilik sağlar mı?

Yerel zaman damgası bunu tek başına sağlamaz. Yasal geçerlilik için yetkili bir zaman damgası sağlayıcısı gerekebilir; bu konuda hukukçu görüşü alınmalıdır.

Kaynaklar

Konuya ürün tarafından bakmak ister misiniz?

Wilogger’ı inceleyin

Diğer yazılar