Blokzincirde Akıllı Sözleşmeler ve Güvenli E-Cüzdan Uygulaması


Tezin Türü: Yüksek Lisans

Tezin Yürütüldüğü Kurum: Ondokuz Mayıs Üniversitesi, Lisansüstü Eğitim Enstitüsü, Bilgisayar Mühendisliği Anabilim Dalı, Türkiye

Tezin Onay Tarihi: 2023

Tezin Dili: Türkçe

Öğrenci: ECMEL ALBAYRAK

Danışman: Sedat Akleylek

Açık Arşiv Koleksiyonu: AVESİS Açık Erişim Koleksiyonu

Özet:

Ethereum ile birlikte blokzincirlerde kullanılmaya başlanan akıllı sözleşmeler, dağıtık ağ üzerinde depolanan ve üçüncü taraflar olmadan sözleşme içeriğinin şartları sağlandığında otomatik olarak çalışan program parçalarıdır. Tez kapsamında, akıllı sözleşme çalışma döngüsündeki süreçlerin gerçeklenmesi NEAR blokzinciri üzerinde gerçek bir akıllı sözleşme uygulaması geliştirilerek gösterilmiştir. Akıllı sözleşmelerin programlanabilir yapıda olması ve blokzincire eklendikten sonra değiştirilemez olması onları bazı güvenlik açıklarına karşı savunmasız hale getirmektedir. Literatürde bu güvenlik açıklarının sınıflandırılması en çok sözleşme kodu, sanal makine ve blokzincir tasarımı kaynaklı problem kategorileri altında ele alınmaktadır. Ancak bu sınıflandırma, güvenlik açıklarının birden fazla kategoriye ait olabileceği durumlar için yetersiz olduğundan farklı yaklaşımların ortaya çıkması kaçınılmaz olmaktadır. Bu tez kapsamında, kullanılan blokzincir platformundan bağımsız olacak şekilde birden fazla kategoriye ait olabilecek akıllı sözleşmelerdeki güvenlik açıklarının tek bir kategori altında ele alınmasının önüne geçilerek; problemin oluşma kök nedeni ve alt nedeni belirtilip, kategori olarak güvenlik, fonksiyonel ve operasyonel kategorilerinin kullanılması sağlanarak ve Ortak Zafiyet Numaralandırma (CWE) listesindeki karşılığı belirtilerek yeni bir sınıflandırma yapısı önerilmiştir. Blokzincir üzerinde kripto varlığa sahip olunması, transfer işlemlerinin gerçekleştirilmesi gibi blokzincir ile ilgili bütün işlemler dijital kripto cüzdan uygulamaları sayesinde mümkün olmaktadır. Günümüzde dijital kripto cüzdanların adres oluşturma süreçleri farklı olabilse de temelde hepsi açık anahtarlı kriptografi kullanılarak oluşturulmaktadır. 1994 yılında Shor'un önerdiği algoritma ile açık anahtarlı kriptosistemlerin güvenliğini sağlayan çözülmesi zor problemlerin kuantum bilgisayarlarda polinom zamanda çözülebileceği belirtilmiştir. Dolayısıyla ECDSA kullanılarak oluşturulan dijital kripto cüzdanlar kuantum bilgisayarlar varlığında güvensiz sistemler haline dönüşeceklerdir. Tez kapsamında Ethereum ve Bitcoin blokzinciri için dijital kripto cüzdan uygulaması oluşturma adımları verilmiş ve bu uygulamalar Rust programlama dili ile gerçeklenmiştir. NIST'in kuantum sonrası kriptosistemlerin standartlaştırılması sürecinde üçüncü turda seçilen algoritmalardan Crystals-Dilithium imzalama algoritması kripto cüzdan anahtar oluşturma sürecinde kullanılarak kuantum sonrası Bitcoin ve Ethereum blokzincirleri için kripto cüzdan uygulamaları Rust programlama dili ile gerçeklenmiştir. Ayrıca kuantum sonrası bir blokzincir prototipi oluşturularak önerilen bu cüzdan uygulamalarının kuantum sonrası blokzincir platformunda çalıştırılabileceği gösterilmiştir.