Blok zinciri ağ güvenliği ile konsensüs mekanizmaları ve akıllı sözleşmeler


Tezin Türü: Yüksek Lisans

Tezin Yürütüldüğü Kurum: İstanbul Ticaret Üniversitesi, Fen Bilimleri Enstitüsü, Türkiye

Tezin Onay Tarihi: 2022

Tezin Dili: Türkçe

Öğrenci: MİMAR ASLAN

Danışman: KASAPBAŞI MUSTAFA CEM

Özet:

ÖZET Bu çalışmada, Finans, sağlık, sosyal medya vb. ortamlardaki insanların ihtiyacı olan güven problemine blok zinciri teknolojisi, şifreli algoritmalar ile çözümler sunmaktadır. Güven problemini çözen ve verileri dağıtık olarak kayıt altına alan ve her şeyi şeffaf olarak bizlere sunan blok zinciri bir devrim niteliğindedir. Blok zinciri, akıllı sözleşmeler sayesinde kurumsal projelerde de kullanılmaktadır. Kurumların arasında yeni nesil bir ağ olarak da adlandırılan blok zinciri ile birçok şeyin değişmesi beklenmektedir. İnternetin, mobile cihazların ve sensörlerin yaygınlaşmasıyla birlikte güven problemi her geçen gün daha da önem kazanmaktadır. Farklı amaçlara hizmet eden Ethereum, Cardano, EOS, Cosmos, Hyperledger gibi blok zincir platformları bulunmaktadır. Altyapılarında Proof of Work (PoW), Proof of Stake (PoS), Delegated Proof of Stake (DPoS) ve Directed Acyclic Graph (DAG) gibi farklı fikir birliği mekanizmalarını kullanmaktadırlar. Bu çalışmada blok zinciri platformları, altyapılarında kullandıkları mutabakat mekanizmaları ve blok zinciri ağının güvenliği araştırılmıştır. Ethereum platformu üzerinde çalışan Solidity programlama dili ile akıllı sözleşme örnekleri geliştirilmiştir. Akıllı sözleşme uygulamaları ile blok zincirinin çalışma adımları uygulamalı olarak gösterilmiştir. Anahtar Kelimeler: Ağ güvenliği, akıllı sözleşmeler, blok zinciri platformları, fikir birliği mekanizmaları. ABSTRACT In this study, Blockchain technology offers solutions with encrypted algorithms to the trust problem that people in finance, health, social media, etc. need. Blockchain, which solves the problem of trust and records data in a distributed manner and presents everything to us transparently, is revolutionary. Blockchain can also be used in corporate projects thanks to smart contracts. A lot of things are expected to change with Blockchain, which is also called a new generation network among institutions. With the widespread use of the Internet, mobile devices and sensors, the problem of trust is gaining more and more importance day by day. There are blockchain platforms such as Ethereum, Cardano, EOS, Cosmos, Hyperledger that serve different purposes. They use different consensus mechanisms such as Proof of Work (PoW), Proof of Stake (PoS), Delegated Proof of Stake (DPoS) and Directed Acyclic Graph (DAG) in their infrastructure. In this study, Blockchain platforms were investigated by using the consensus mechanisms they use in their infrastructure and the security of the blockchain network. Smart contract samples were developed with the Solidity programming language running on the Ethereum platform. The working steps of the blockchain with smart contracts and applications are demonstrated in practice. Keywords: Blockchain platforms, consensus mechanisms, network security, smart contracts. İÇİNDEKİLER İÇİNDEKİLER . i ÖZET . ii ABSTRACT . iii TEŞEKKÜR . iv ŞEKİLLER . v ÇİZELGELER. vii SİMGELER VE KISALTMALAR . viii 1. GİRİŞ. 1 2. LİTERATÜR ÖZETİ . 7 3. BLOK ZİNCİRİ TEKNOLOJİSİNİN ALTYAPISI . 9 3. 1. Blok Zincirinin Karakteristiği . 9 3. 2. Hash Fonksiyonları . 12 3. 3. Block (Blok) Kavramı . 14 3. 4. Konsensüs Mekanizmaları . 18 3. 4. 1. Byzantine generals problem (Bizanslı generaller problemi) . 18 3. 4. 2. Nonce sayısı, difficulty (zorluk), halving (blok ödülü) . 20 3. 4. 3. Node (düğüm) çeşitleri . 25 3. 4. 4. Merkle tree (Merkle ağacı) . 27 3. 4. 5. Mempool (bellek havuzu). . 29 3. 4. 6. Anahtar çifti . 32 3. 4. 7. Blok zinciri tipleri . 35 3. 4. 8. Ölçeklenme çözümleri . 35 3. 5. Smart Contracts (Akıllı Sözleşmeler) Geliştirme Platformları . 45 3. 5. 1. Ethereum . 45 3. 5. 2. Cosmos . 47 3. 5. 3. Cardano . 47 3. 5. 4. EOS . 48 3. 5. 5. Hyperledger . 48 3. 6. Blok Zinciri Ağ Güvenliği . 49 4. SMART CONTRACTS (AKILLI SÖZLEŞMELER) UYGULAMALARI . 55 5. ARAŞTIRMA BULGULARI VE TARTIŞMA . 74 6. SONUÇ VE ÖNERİLER . 80 KAYNAKLAR . 81 EKLER. 86 EK A. Kodlar . 87 ÖZGEÇMİŞ . 97