Kuantum Sonrası Güvenli Dijital Kripto Cüzdan
Abstract
Blokzincir, merkeziyetsiz bir ağ üzerinde çalışan, bir uzlaşma algoritması tarafından yönetilen, değiştirilemez bir dijital kayıt defteridir. Blokzincirde kullanıcıların gerçek kimlik bilgileri yerine kriptografik olarak dijital kripto cüzdanlarda üretilen cüzdan anahtarları ve cüzdan adresleri kişisel tanımlayıcı olarak kullanılır. Dijital kripto cüzdanlar blokzincirlerinden ayrı olarak geliştirilen uygulamalardır. Ancak onlar olmadan, blokzincirinde kullanıcıyı temsil eden herhangi birşey olmadığı için transfer işlemlerinin gerçekleştirilmesi, akıllı sözleşme uygulamalarının çalıştırılması gibi blokzincir ile etkileşime girilebilecek herhangi bir işlemin yapılması mümkün değildir. Günümüzde dijital kripto cüzdan uygulamalarında anahtar üretim sürecinde açık anahtarlı eliptik eğri dijital imzalama algoritması (ECDSA) kullanılmaktadır. Bu algoritmanın güvenliği eliptik eğri üzerindeki ayrık logaritma probleminin zorluğuna dayanmaktadır. 1994 yılında Shor’un önerdiği algoritma ile açık anahtarlı kriptosistemlerin dayandığı zor problemlerin kuantum bilgisayarlar varlığında polinom zamanda çözülebileceği belirtilmiştir. Bu durum, kuantum bilgisayarlar varlığında açık anahtar kriptografisi kullanılarak oluşturulan bütün sistemler gibi ECDSA kullanılarak oluşturulan kripto cüzdan uygulamalarının da güvenliğinin sağlanamayacağı anlamına gelmektedir. Kuantum sonrası kriptosistemlerin standartlaştırılması ihtiyacından dolayı NIST 2016 yılında bir çağrıda bulunmuştur. Bu çağrı kapsamında belirli aşamalardan geçerek dijital imzalama standardı olarak kafes tabanlı Crystals-Dilithium ve Falcon algoritmaları seçilmiştir. Bu çalışmada Crystals-Dilithium dijital imzalama algoritmasının kripto cüzdan anahtar üretim aşamasında kullanımı sağlanılarak Bitcoin ve Ethereum blokzincirleri için kuantum sonrası güvenli dijital kripto cüzdan önerisinde bulunulmuş ve bu uygulamalar Rust programlama dili ile gerçeklenmiştir. Klasik ve kuantum sonrası için geliştirilen cüzdan uygulamalarının cüzdan bilgilerinin ortalama oluşturulma süresi belirtilmiştir. Ayrıca, klasik ve kuantum sonrası blokzincir prototipi oluşturularak, çalışma kapsamında geliştirilen dijital kripto cüzdan uygulamalarının bu prototipler üzerinde işlem imzalama ve doğrulama süreçlerinin ortalama gerçekleşme süreleri belirtilmiştir.
Keywords
Blokzincir, Dijital kripto cüzdan, Kuantum sonrası kriptografi
Project Number
121R006
Thanks
2. yazar TÜBİTAK tarafından 121R006 numaralı proje kapsamında kısmi olarak desteklenmiştir.
Post-Quantum Secure Digital Crypto Wallet
Abstract
Blockchain is an immutable digital ledger that runs on a decentralized network, managed by a consensus algorithm. In blockchain, wallet keys and wallet addresses generated cryptographically in digital crypto wallets are used as personal identifiers instead of users’ real identity information. Digital crypto wallets are applications developed separately from blockchains. However, without them, it is not possible to carry out any transaction that can interact with the blockchain, such as transfer transactions, running smart contract applications, since there is nothing in the blockchain that represents the user. Today, public key elliptic curve digital signature algorithm (ECDSA) is used in digital crypto wallet applications. The security of this algorithm is based on the difficulty of the discrete logarithm problem on the elliptic curve. With the algorithm proposed by Shor in 1994, it was stated that the difficult problems on which public key cryptography systems are based can be solved in polynomial time in the presence of quantum computers. This means that in the presence of quantum computers, crypto wallet applications created using ECDSA, like all systems created using public keys, cannot be secured. Due to the need to standardize post-quantum cryptosystems, NIST made a call in 2016. Within the scope of this call, lattice-based Crystals-Dilithium and Falcon algorithms were chosen as the digital signature standard by going through certain stages. In this study, a post-quantum secure digital crypto wallet is proposed for Bitcoin and Ethereum blockchains by using the Crystals-Dilithium digital signature algorithm in the crypto wallet key generation stage, and these applications are implemented with the Rust programming language. The average creation time of wallet information for classical and post-quantum wallet applications is indicated. In addition, classical and post-quantum blockchain prototypes are created and the average execution times of transaction signature and verification processes on these prototypes of digital crypto wallet applications developed within the scope of the study are stated.
Keywords
Blockchain, Digital crypto wallet, Post-quantum cryptography
Project Number
121R006