Araştırma makalesi

Olay-B kullanılarak Blockchain Konsensus Mekanizmalarının Resmi Doğrulaması

DOI:

10.3791/70193

8 Mayıs 2026

Bu makalede

Özet

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Bu çalışma, Event-B yöntemini kullanarak blokzincir uzlaşma mekanizmaları ve akıllı sözleşmeler için resmi bir doğrulama çerçevesi sunmaktadır. Bu yaklaşım, temsilden soyutlama, değişmez tabanlı kanıt ve zaman model kontrolünü, dağıtımdan önce güvenlik, canlılık ve çift harcamaya direnç resmi kontrollerle birleştirir.

Özet

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Bu çalışma, Event-B ve Rodin platformunu kullanarak blokzincir uzlaşma mekanizmaları ve akıllı sözleşme davranışı için resmi temelli bir doğrulama çerçevesi geliştirmektedir. Önceki yaklaşımların çoğunlukla simülasyon veya izole sözleşmelerin vaka tabanlı doğrulamasına dayanmasının aksine, bu çalışma Sonlu Durum Makinesi (FSM) soyutlama, değişmez odaklı ispat, iyileştirme modelleme ve zamansal mantık doğrulamasını entegre ederek İş Kanıtı (PoW), Pay Kanıtı (PoS) ve çift harcama önleme mekanizmalarını analiz eder. Katlık akıllı sözleşmeleri, FSM'lere soyutlanır ve Event-B makineleri olarak kodlanır; böylece durum geçişleri ve güvenlik kısıtlamalarının resmi olarak tanımlanmasını sağlar. İşlem benzersizliği, durum tutarlılığı, erişim kontrolü uygulaması ve defter değişmez koruma gibi güvenlik özellikleri, Rodin'de otomatik olarak oluşturulan ispat yükümlülükleriyle doğrulanır. Toplamda 312 ispat yükümlülüğü oluşturuldu; bunların 287'si (%92) otomatik olarak serbest bırakıldı ve 25'i etkileşimli olarak kanıtlandı, böylece tam değişmez kapsam sağlandı. Canlılık özellikleri Computation Tree Logic (CTL) ile belirlenmiş ve model kontrolüyle doğrulanmış, ölü kilitlenme özgürlüğü ve nihai validator seçimi PoS koşullarında doğrulanmıştır. Çift harcamanın önlenmesi, eyalet uyumlu defter modellemesi kullanılarak resmen uygulanmıştır; burada benzersiz kısıtlamalar tüm erişilebilir eyaletlerde kanıtlanmıştır. PoW ve PoS için protokol düzeyinde uzlaşma mantığı, üç soyutlama düzeyinde geliştirilerek blok bütünlüğü ve doğrulayıcı doğruluğunu adım adım iyileştirmeyle sağladı. Sonuçlar, makine kontrollü kanıtların simülasyon temelli değerlendirmenin ötesinde doğrulanabilir doğruluk garantileri sağladığını, blokzincir sistemlerinde doğruluk güvencesini ve protokol düzeyinde dayanıklılığı artıran titiz ve tekrarlanabilir bir doğrulama hattı oluşturduğunu göstermektedir.

Giriş

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Blockchain teknolojisi, merkezi otoritelere bağımlı olmadan merkeziyetsiz kayıt tutmayı mümkün kılan dağıtık defter paradigmasına evrilmiştir. Katılımcı düğümler arasında defter durumlarını çoğaltarak ve uzlaşma mekanizmalarıyla anlaşmaya ulaşarak, blok zinciri sistemleri açık ve rekabet ortamlarında bütünlük, şeffaflık ve müdahale direnci sağlar. Yaga ve ark.1 tarafından tanımlandığı üzere, blok zinciri mimarisi kriptografik ilkelleri, dağıtık uzlaşma protokollerini ve eşler arası iletişimi birleştirerek doğrulanmış işlemlerin hesaplama açısından pratik hale gelmesini sağlar. Proof of Work (PoW) ve Proof of Stake (PoS) gibi temel uzlaşma mekanizmaları, validatör seçimi, blok doğrulama ve defter senkronizasyonunu düzenler. Buna ek olarak, akıllı sözleşmeler, önceden tanımlanmış kuralları özerk şekilde uygulayan programlanabilir mantık gömüleyerek blokzincir yeteneklerini genişletir; böylece finans, sağlık ve yönetişim gibi sektörlerde merkeziyetsiz uygulamalar mümkün olur. Blockchain teknolojileri yüksek değerli ve güvenlik açısından kritik ortamlarda giderek daha fazla kullanıldıkça, uzlaşma mekanizmalarının ve akıllı sözleşme davranışlarının doğruluğu operasyonel güvenilirliği korumak için hayati halegeldi 2.

Merkeziyetsiz yapılarına rağmen, blokzincir sistemleri mantıksal ve protokol düzeyinde güvenlik açıklarına karşı savunmasızdır. Çift harcama saldırıları, defter tutarlılığı kısıtlamaları sıkı şekilde uygulanmadığında meydana gelebilir. Yanlış doğrulayıcı seçim mantığı veya hatalı blok doğrulama kuralları gibi uzlaşma düzeyindeki zayıflıklar ile yeniden girişim ve yanlış erişim kontrolü gibi akıllı sözleşme zayıflıkları, konuşlandırılmış platformlarda önemli finansal kayıplara yol açmıştır. PoW ve PoS protokollerinin davranışını değerlendirmek için ampirik test ve simülasyon çerçeveleri yaygın olarak kullanılsa da, bu yaklaşımlar kapsamlı doğruluk garantisi yerine yalnızca örnekleyici gözlemler sunar. Simülasyon tabanlı doğrulama, tüm erişilebilir durumlar arasında değişmez korumayı kanıtlayamaz veya her uygulama yolunda güvenlik ve canlılık özelliklerini garanti edemez. Bu sınırlama, gözlemsel analizin ötesinde blok zinciri sistemleri hakkında titiz bir şekilde düşünebilen matematiksel temelli doğrulama tekniklerine olan ihtiyacı ortaya koyuyor.

Formal yöntemler, matematiksel mantık ile sistem tanımlaması ve doğrulamasınımümkün kılarak böyle bir temel sunar 3,4. Olay-B bu paradigmayı adım adım bir iyileştirmeyle genişletir; sistemleri soyut durum makineleri olarak temsil eder; sistem durumlarında sistem durumları değişmezlerle sınırlandırılır ve geçişler korunanolaylar olarak modellenir 5. Rodin platformu otomatik olarak ispat yükümlülükleri oluşturur ve bunların boşalmasını destekler; böylece değişmez koruma ve durum tutarlılığının makine kontrollü doğrulanmasınımümkün kılar 6. B-Yöntem 7 ve Z8 gibi klasik spesifikasyon teknikleri, değişmez tabanlı akıl yürütme ve biçimsel iyileştirmenin farklı geliştirme aşamalarında sistem doğruluğunu nasıl sağlayabileceğini gösterir. Bu yöntemler, görev kritik ve güvenlik açısından kritik sistemlerde yaygın olarak uygulanmıştır; böylece 9,10,11,12,13 konuşlandırmadan önce doğruluğu sağlamıştır. UML-B gibi ek uzantılar ve grafiksel iyileştirme çerçeveleri, karmaşık endüstriyel sistemler için iyileştirme tabanlı modellemenin ölçeklenebilirliğinidaha da göstermektedir 14,15,16,17,18,19. Bu gelişmeler, iyileştirme odaklı biçimsel modellemenin sistem karmaşıklığını etkili bir şekilde yönetebileceğini ve güçlü doğruluk garantilerini koruyabileceğini göstermektedir.

Blokzincir sistemleri için resmi doğrulama yaklaşımları da araştırılmıştır. SMT tabanlı sözleşme doğrulama teknikleri, Solidity programlarındaki iddiaları otomatik olarak kontrol eder ve mantıksal ihlaller gerçekleştiğinde karşı örneklerüretebilir 20. VERISOL gibi araçlar, akıllı sözleşme doğrulama2 için sonlu durumlu soyutlamalar kullanırken, teorem kanıtlama yaklaşımları sözleşmeleri F*21 gibi resmi akıl yürütme çerçevelerine dönüştürür. Ayrıca, Ethereum Sanal Makinesi'nin anlamsal biçimlendirmeleri, uygulama anlamları ve güvenlik açığı tespiti hakkında titiz akıl yürütmeleri mümkünkılar 22. Benzer şekilde, Coq gibi teorem ispatlama ortamları, uzlaşmaya dayalı güvenlik özellikleri ve işlemsel doğruluğuanaliz etmek için kullanılmıştır 23. Bu yaklaşımlar değerli içgörüler sağlasa da, genellikle bağımsız olarak ya sözleşme düzeyinde doğruluk ya da uzlaşma düzeyindeki özelliklere odaklanırlar. Sistem düzeyindeki defter değişkenleri, uzlaşma durum geçişleri ve akıllı sözleşme davranışları, spesifikasyon katmanları ve doğrulama artefaktları arasında izlenebilirliği koruyan birleşik iyileştirme tabanlı bir çerçevede nadiren entegre edilir. Ayrıca, mevcut birçok yaklaşım, birden fazla iyileştirme düzeyinde sistematik değişmez koruma yerine zafiyet tespiti veya mantıksal iddia kontrolüne odaklanır.

Mevcut çalışma, Rodin platformunda Solidity akıllı sözleşmelerinin Sonlu Durum Makinesi (FSM) soyutlanmasını Event-B iyileştirme modeli ve makine tarafından kontrol edilen ispat yükümlülüğünün tahliyesi ile entegre eden birleşik biçimsel doğrulama çerçevesi önererek bu metodolojik açığı gidermektedir. Önerilen çerçeve, sözleşme doğrulaması ve uzlaşma modellemesini ayrı sorunlar olarak ele almak yerine, PoW ve PoS için protokol düzeyinde durum geçişlerini, defter bütünlüğü kısıtlamalarını, işlem benzersizliği koşullarını ve akıllı sözleşme durum evrimini tek bir yapılandırılmış model içinde resmen belirler. Güvenlik özellikleri—değişmez koruma, işlem benzersizliği, kontrollü durum geçişleri ve defter tutarlılığı dahil—Olay-B invariantları olarak ifade edilir ve otomatik olarak oluşturulan ispat yükümlülükleriyle doğrulanır. Zamansal ve yürütme sırasına bağlı özellikler, Hesaplama Ağacı Mantığı kullanılarak tanımlanır ve statik invariantların ötesinde doğruluğu sağlamak için model kontrolüyle doğrulanır. Önemli metodolojik katkılardan biri, soyutlama katmanları arasında açık izlenebilirlik sağlamakta yatmaktadır: Katlık fonksiyonları FSM geçişlerine soyutlanır, FSM geçişleri Olay-B olayları olarak kodlanır ve invariantlar zamansal spesifikasyonlarla birlikte doğrudan boşaltılmış ispat yükümlülükleri ve model kontrol sonuçlarına bağlanır. Bu yapılandırılmış eşleme, her doğruluk iddiasının makine tarafından doğrulanmış kanıtlarla desteklenmesini sağlar ve kanıt temelli garantileri simülasyon tabanlı gözlemlerden açıkça ayırır.

Bu çalışmanın kapsamı, hassasiyet ve analitik netlik sağlamak için kasıtlı olarak sınırlandırılmıştır. Modelleme, uzlaşma mekanizmaları için protokol düzeyinde durum geçişlerine, defter bütünlüğü kısıtlamalarına, işlem benzersizliği özelliklerine ve akıllı sözleşme durum davranışına odaklanır. Mesaj yayılım gecikmeleri, Bizans düşman stratejileri, çatal çözümleme mekanizmaları ve ayrıntılı Ethereum Sanal Makine gaz anlamları gibi ağ düzeyindeki unsurlar, tanımlanmış soyutlama sınırının dışındadır. Bu modelleme varsayımlarını açıkça tanımlayarak, çerçeve doğrulama iddialarının resmi olarak doğrulanmış kanıt kanıtlarıyla uyumlu kalmasını sağlar. Bu makalenin geri kalanında soyutlama metodolojisi, Olay-B modelleme ve iyileştirme süreci, değişmez ve zamansal doğrulama prosedürleri ve ortaya çıkan doğrulama sonuçları sunulmaktadır. Blokzincir protokolü ve akıllı sözleşme doğrulamasını iyileştirme tabanlı biçimsel modelleme ve makine kontrolündeki kanıtlarla birleştirerek, bu çalışma metodolojik titizliği güçlendirir ve merkezi olmayan defter sistemleri için ön dağıtım doğruluk güvencesini artırır.

Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.

Protokol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Çalışma girdileri
Bu çalışmada, doğrulama girdisi olarak iki Solidity akıllı sözleşmesi kullanıldı. İlki, yeniden giriş vaka çalışması olarak kullanılan Simple DAO tarzı bir sözleşmeydi. İkincisi, çift harcamaya karşı sözleşme düzeyindeki kısıtlamaları test etmek için inceltilmiş bir defter/devlet geçiş sözleşmesiydi. Orijinal Solidity kaynak kodu, bu protokolte tanımlanan soyutlama ve doğrulama süreçlerine giriş olarak hizmet etti. Bu tür sözleşmeler için kullanılan genel dönüşüm süreci, doğrulama sırasında Solidity kaynak kodunun FSM, Event-B ve SMV modellerine kademeli dönüşümünü gösteren Şekil 1'de gösterilmiştir.

Sınır modelleme
Biçimsel modelleme, fonksiyon giriş ve çıkış davranışı, iç uygulama ve sözleşme düzeyindeki durum geçişleri dahil olmak üzere akıllı sözleşmelerin kontrol akışı mantığına odaklanır. Fonksiyon görünürlüğü (kamu, dış, iç ve özel) yeniden girişim analiziyle ilgili çağrı-yığını davranışıyla birlikte temsil edildi. Soyut geçiş türleri (çağrı, gönderme, aktarma) eterleri aktarma işlemleri olarak kabul edildi.

Sözleşme düzeyindeki değişmezlikler, işlem benzersizliğini sağlamak ve soyutlama sınırı içinde çift harcamayı önlemek için tanımlanmıştır. Doğrulama seçimi ve blok bütünlüğü gereksinimlerini temsil etmek için, protokol-mantık soyutlama katmanı, hem Proof of Work hem de Proof of Stake'in protokol düzeyindeki durum geçişleri açısından tanımlanmıştır.

Soyutlama sınırı, teslim edilecek mesajların zamanlanması ve birçok zıplamanın neden olduğu gecikmeler, çatal çözümlemesi, ağ düşmanlarının Bizans stratejileri kullanması, Ethereum Sanal Makinesi semantiği ve ağ düğümleri tarafından kontrol edilen gaz anlamanlamı, istisnaların yayılması, asenkron yürütmeler, karmaşık geri dönüş davranışları ve ağ düzeyinde kesinlik gibi ağ katmanı unsurlarını içermiyordu. Dolayısıyla, çift harcama belirleme sonuçları yalnızca sözleşme düzeyindeki değişmezliklere uygulanır ve kesinlik konusunda ağ düzeyinde bir anlaşma oluşturmaz.

Araçlar ve yapılandırma
Rodin platformu, PP, ML, SMT ve Atelier-B ispatlarını otomatik ve etkileşimli olarak boşaltmalarını sağlayan Event-B (sürüm 3.7.0) modelini modelleme, iyileştirme, ispat yükümlülükleri oluşturmak ve boşaltmak için kullanıldı. nuXmv sürüm 2.0.0, oluşturulan SMV modellerinde tam CTL keşif modunda CTL model kontrolü yapmak için çalıştırıldı.

Tüm doğrulama yürütmeleri, Ubuntu 22.04 LTS, OpenJDK 11 ve Python 3.10.12 kullanılarak kontrollü bir hesaplama ortamında gerçekleştirildi. Web3 (7.6.0), NetworkX (3.4.2), Matplotlib (3.8.0), Graphviz (0.20.3), NumPy (1.26.4) ve Pandas (2.2.2) simülasyon ve görselleştirme öğelerini uygulamak için kullanıldı. Bu tasarım, aynı uygulama koşulları altında yürütüldüğünde resmi doğrulama ve simülasyon sonuçlarının yeniden üretilebileceğini garanti altına aldı.

Dönüşüm iş akışı
Bu doğrulama süreci dört aşamadan oluşuyordu. Katlık sözleşmeleri ilk olarak Sonlu Durum Makinesi (FSM-SC) temsiline çevrilmiştir. FSM-SC modeli daha sonra Olay-B'de kodlandı, açıkça belirtilmiş invariantlar ve iyileştirme dereceleriyle kullanıldı. FSM-SC soyutlaması, nuXmv dilinde bir SMV modeline çevrildi. Doğrulama sonuçları, ispat yükümlülüğünün ifşa edilmesi ve CTL model kontrolü istatistikleri olarak raporlandı ve karşı örnekler vaka olarak sunuldu.

FSM yapısı
Her sözleşme, Sonlu Durum Makinesi olarak soyutlanmıştır ve şu şekilde tanımlanmıştır:

figure-protocol-1

Burada:
S = durumlar kümesi
S₀ = başlangıç durumu
T = geçiş ilişkisi
V = görünürlük eşlemesi
G = koruma yüklemleri
A = eylemler/durum güncellemeleri.

Algoritma 1: Katığından FSM inşası
Giriş: Katlık kaynak kodu
Çıkış: FSM-SC

1) Solidity sözleşmesi özet sözdizimi ağacını ayrıştırın.
2) Yapıcı tanımından başlangıç durumu S₀ oluşturun.
3) Her Solidity fonksiyonu f için, ayrı bir kontrol durumu oluşturun S_f ve V(f) görünürlüğünü {public, external, internal, private} ∈ kaydeder.
4) F fonksiyonundaki her ifade için, durum-değişken güncellemelerinden koruma predikatları ve durum-değişken güncellemelerinden eylemler çıkararak bir geçiş t türetin.
5) T'ye geçiş t'yi ekleyin.
6) Ether transfer işlemleri (call, send, transfer), iç ve dış çağrılar, delegatecall, selfdestruct, tx.origin kullanımı, koşullu dallar ve loop yapıları için açık geçiş tipleri oluşturun.
7) Döndürme FSM-SC = (S, S₀, T, V, G, A).

Ve her Solidity fonksiyonu farklı bir FSM kontrol durumu ile ilişkilendirilir. Güvenlik açığı anlaması için, örneğin dış çağrıların ardından denge güncellemeleriyle yapılan bu tür akışlar, açıklığa ilişkin yürütme akışları, açıkça sıralı geçişlere soyutlanmıştır. Şekil 2, SimpleDAO tarzı sözleşme için örnek bir FSM-SC diyagramını tanımlar; bu giriş durumlarının, dış çağrı geçişlerinin ve durum güncelleme dizilerinin bu yapı aşamasında nasıl soyutlandığını gösterir.

FSM'nin Olay-B'ye kodlanması
FSM geçişi, Olay-B yapıları olarak temsil edildi. Tüm geçişler, belirli korumalar ve eylemler dahil olmak üzere Olay-B olaylarına karşılık gelir.

Algoritma 2: FSM'den Olay-B'ye kodlama
Giriş: FSM-SC
Çıktı: Event-B makinesi ve bağlam

1) Sözleşme bağlamında STATE_SET ve FONKSIYONU tanımlayın.
2) FSM kontrol durumu ve sözleşme düzeyindeki durumu temsil eden değişkenleri belirtmek.
3) Her FSM kontrol durumu s ∈ S'yi current_state ∈ STATE_SET kullanarak temsil edin.
4) Her geçiş için (s → s′, g, a) bir Olay-B olayı oluşturun E_t:
5) BURADA current_state = s ∧ g
6) O ZAMAN current_state := s′ ∥ uygulanır(a)
7) V(f)'den türetilmiş korumalar kullanarak görünürlük kısıtlamalarını kodlayın.
8) Güvenlik ve tutarlılık özelliklerini yakalamak için inv1–inv9 invariantları tanımlayın.
9) S₀ ve varsayılan değerleri atayarak INITIALIZATION tanımlayın.

Durumlar kümesi, mevcut durum, fonksiyon görünürlüğü, çağrı yığını, işlem zaman damgası, Ether transfer durumu, devre çağrı bayrağı, kendini imha bayrağı ve doğrulama koşu, Event-B modelinde yakalanan bazı değişkenlerdir. İnvariantlar (inv1-inv9) ve başlatma eylemleri (act1-act6) biçimsel spesifikasyonun eylemleriyle eşleşir. Şekil 3 ayrıca, özellikle yeniden entransiyle ilgili geçişler olmak üzere güvenlik açılarıyla ilgili anahtar olayların Olay-B kodlamasında nasıl korunduğuna dair grafiksel bir gösterim sunar. Bu şekil, Şekil 2'de gösterilen FSM-SC modelinin yapısal desenlerinin doğrulanabilir Olay-B olaylarına nasıl eşlendiğini açıklar.

Geliştirme stratejisi
İki seviyede iyileştirme uygulandı. Yüksek seviyeli sözleşme kontrol akışı ve çekirdek invariantlar soyut düzeyde temsil edildi. Geliştirilmiş seviye, çağrı yığını kısıtlamaları, görünürlük kısıtlamaları ve yeniden girişi önleme koşulları gibi sözleşmeye özgü kısıtlamalar ekledi.

Algoritma 3: Geliştirme ve ispat-yükümlülüğü boşaltma
Giriş: Soyut makine ve rafine makine
Çıktı: Ispat yükümlülükleri ve istatistikleri

1) Rodin'deki soyut makine için ispat yükümlülükleri oluşturmak.
2) Etkinleştirilmiş otomatik prover'ları çalıştırın ve boşaltma sonuçlarını kaydedin.
3) Rafiner makine için iyileştirme kanıtı borçları oluşturun.
4) Otomatik kanıtlayıcıları iyileştirme yükümlülüklerine uygulayın.
5) Kalan yükümlülükleri gerektiğinde etkileşimli olarak yerine getirmek.
6) İhracat kanıtı istatistikleri ve durum raporları.

Kanıt raporlama, değişmez sayısını, iyileştirme seviyelerini, oluşturulan ispat yükümlülüklerini, otomatik boşaltma oranını, etkileşimli boşaltma oranını ve nihai boşaltma oranını içeriyordu.

CTL özellik spesifikasyonu ve model kontrolü
FSM-SC soyutlaması, nuXmv'de dallanma zamanı zamansal doğrulama için SMV modeline çevrilmiştir.

Algoritma 4: FSM'den SMV'ye ve CTL Kontrolü
Çıktı: PASS/FAIL doğrulama sonucu ve karşı örnek izleri (varsa)

1. FSM kontrol durumlarını sayılmış bir SMV değişken durumu olarak kaydedin.
2. FSM geçişlerini korumalı next(state) atamalarına dönüştürün.
3. Dış çağrılar ve denge güncellemeleri gibi zafiyetle ilgili durumlar için bayraklar tutun.
4. CTL özelliklerini nuXmv'de kodlayın ve model kontrolü yapın.
5. Bir özellik başarısız olursa, FSM geçiş dizilerini temsil eden karşı örnek izleri oluşturulur.

CTL kontrolü, yeniden giriş emri gerekliliklerini, transfer operasyonlarından sonra eyalet güncellemelerinin tamamlanmasını, kritik bölümlere kısıtlamadan tekrar girişin sınırlandırılmasını ve çıkmazdan kaçınmayı içeriyordu.

Güvenlik özellikleri doğrulandı
Yeniden girişi engelleyen Simple DAO tarzı sözleşme, harici çağrılar ile durum güncellemeleri arasında invariantlar ve CTL kısıtlamaları aracılığıyla güvenli sipariş sağlanarak doğrulandı. İzin verildiğinde, bu korumalar erişim kontrol kısıtlamalarını kontrol ederek yetkisiz geçişlerin invariantlarla sınırlandırıldığından emin oldular. Azaltılmış defter modeli, işlem benzersizliği ve defter tutarlılığının sözleşme içindeki önleme düzeyinde invariantlarını doğruladı.

Raporlanan çıktılar
Sonuçlar bölümü, FSM yapısal metrikleri, Olay-B model metrikleri ve yükümlülük kanıtı ile CTL doğrulaması için istatistikler hakkında raporlar sunar. Resmi ispat sonuçları ile CTL model kontrolü sonuçları, invariantlar tarafından doğruluk garantisi kanıtı ile zamansal doğrulama ile zaman doğrulamasının kanıtını ayırt etmek için ayrı verilir.

Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.

Sonuçlar

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Bu çalışmanın bulguları, Olay-B ve CTL model kontrolünün resmi doğrulama ürünlerini blokzincir simülasyonundan alınan yürütülebilir bilgilerle birleştirir. Bu çok katmanlı çıktıların birleşimi, akıllı sözleşmelerdeki temel davranışların, uzlaşma sistemlerinin ve defter-uygunluk sınırlamalarının tasarımın sınırlı örneği içinde doğrulanmasını destekler.

Ortam kurulumu ve bağımlılık doğrulaması
Model dönüşümü, doğrulama ve simülasyon için kull...

Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.

Tartışma

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Biçimsel ve simülasyon tabanlı doğrulama, verilen araştırmada kullanılan çok katmanlı doğrulama sisteminin, iyi tanımlanmış soyutlama sınırı altında akıllı sözleşme davranışını, uzlaşma mekanizmasının doğruluğunu ve defter-bütünlüğü özelliğini doğrulayabildiğini göstermektedir. Olay-B, güvenlik özelliklerinin, durum-akışının ve yeniden entransi-önleme mantığının invariantlar ve iyileştirme temelli mantık 5,6 üzerinden matematikse...

Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.

Açıklamalar

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Yazarların beyan edecek çıkar çatışmaları yoktur.

Malzemeler

Bu makalede kullanılan malzemelerin listesi
AdŞirketKatalog numarasıYorumlar
Rodin Platform (v3.7.0)Rodin Takımı / Eclipse Vakfıhttps://www.event-b.org/install.htmlOlay-B modelleme, iyileştirme ve ispat-yükümlülük üretimi ve boşaltımı
Olay-B YöntemiSouthampton Üniversitesi / Rodin Topluluğuhttps://www.event-b.org/Değişmez tanımlama ve iyileştirme için biçimsel modelleme çerçevesi
nuXmv Model Checker (v2.0.0)FBK (Fondazione Bruno Kessler)https://nuxmv.fbk.eu/CTL özelliklerinin sembolik model kontrolü
Graphviz (v0.20.3)Graphviz Ekibihttps://graphviz.org/FSM görselleştirme ve grafik renderasyonu
Python (v3.10.12)Python Yazılım Vakfıhttps://www.python.org/downloadsSimülasyon ve yürütme ortamı
Web3.py (v7.6.0)Ethereum Vakfı / Katkıda Bulunanlarhttps://web3py.readthedocs.io/Blokzincir etkileşimi ve işlem simülasyonu
NetworkX (v3.4.2)NetworkX Geliştiricilerihttps://networkx.org/Blokzincir ve FSM yapılarının grafik modellemesi
Matplotlib (v3.8.0)Matplotlib Geliştirme Ekibihttps://matplotlib.org/Madencilik süresi ve validatör dağılımlarının çizilmesi
NumPy (v1.26.4)NumPy Geliştiricilerihttps://numpy.org/Sayısal hesaplamalar
Pandas (v2.2.2)Pandas Gelişim Ekibihttps://pandas.pydata.org/Veri analizi ve işleme
OpenJDK 11Oracle / OpenJDK Topluluğuhttps://openjdk.org/projects/jdk/11/Rodin platformu için gerekli çalışma süresi
Ubuntu 22.04 LTSCanonical Ltd.https://ubuntu.com/downloadTüm deneyler için işletim sistemi
KatlıkEthereum Vakfıhttps://soliditylang.org/Girdi olarak kullanılan akıllı sözleşme kaynak dili
nuXmv Giriş Dili (SMV)FBKhttps://nuxmv.fbk.eu/documentation.htmlCTL doğrulaması için ara model temsili

Kaynaklar

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Yaga, D., Mell, P., Roby, N., Scarfone, K. Blockchain Technology Overview. , National Institute of Standards and Technology. Gaithersburg, MD, USA. (2018).
  2. Wang, Y., et al. Formal specification and verification of smart contracts for Azure Blockchain. arXiv preprint. , (2019).
  3. Huth, M., Ryan, M. Logic in Computer Science: Modelling and Reasoning About Systems. , Cambridge University Press. Cambridge, U.K. (2004).
  4. Baier, C., Katoen, J. P. Principles of Model Checking. , MIT Press. Cambridge, MA, USA. (2008).
  5. Abrial, J. R. Modeling in Event-B: System and Software Engineering. , Cambridge University Press. Cambridge, U.K. (2010).
  6. Abrial, J. R., et al. Rodin: An open toolset for modelling and reasoning in Event-B. Int. J. Softw. Tools Technol. Transf. 12 (6), 447-466 (2010).
  7. Abrial, J. R. The B-Book: Assigning Programs to Meanings. , Cambridge University Press. Cambridge, U.K. (1996).
  8. Jacky, J. The Way of Z: Practical Programming with Formal Methods. , Cambridge University Press. Cambridge, U.K. (1996).
  9. Verma, S., Yadav, D., Chandra, G. Introduction of formal methods in blockchain consensus mechanism and its associated protocols. IEEE Access. 10, 66611-66621 (2022).
  10. Guha, S., Nag, A., Karmakar, R. Formal verification of safety-critical systems: A case study in airbag system design. Proc. Int. Conf. Intelligent Systems Design and Applications, , Springer. Cham, Switzerland. 107-116 (2021).
  11. Karmakar, R. Formal verification techniques: A comparative analysis for critical system design. Proc. Int. Conf. Intelligent Systems Design and Applications, , Springer. Cham, Switzerland. 93-102 (2022).
  12. Karmakar, R. Symbolic model checking: A comprehensive review for critical system design. Adv. Data Inf. Sci. , Springer. Singapore. 693-703 (2022).
  13. Said, M. Y., Butler, M., Snook, C. A method of refinement in UML-B. Softw. Syst. Model. 14 (4), 1557-1580 (2015).
  14. Snook, C. F., Butler, M. J. UML-B: A plug-in for the Event-B tool set. Proc. ABZ 2008: Abstract State Machines, B and Z, , Springer. 344-358 (2008).
  15. Ben Younes, A., Ben Ayed, L. From UML activity diagrams to Event-B for the specification and the verification of workflow applications. Proc. IEEE 32nd Int. Conf. Computer Software and Applications, , 643-648 (2008).
  16. Morris, K. V., Snook, C. Reconciling SCXML Statechart Representations and Event-B Lower Level Semantics. , Sandia National Laboratories. Livermore, CA, USA. (2016).
  17. Butler, M. Decomposition structures for Event-B. Proc. Integrated Formal Methods (IFM 2009), , Springer. Berlin, Heidelberg. 20-38 (2009).
  18. Butler, M. Incremental design of distributed systems with Event-B. Proc. Integrated Formal Methods (IFM 2009), , Springer. Berlin, Heidelberg. (2009).
  19. Le, T. C., Garriga, M., Pautasso, C., Stankovic, M. Proving conditional termination for smart contracts. Proc. ACM Workshop Blockchains, Cryptocurrencies, and Contracts, , (2018).
  20. Alt, L., et al. SMT-based verification of Solidity smart contracts. Proc. ISoLA 2018: Leveraging Applications of Formal Methods, , Springer. Cham, Switzerland. 376-388 (2018).
  21. Bhargavan, K., et al. Formal verification of smart contracts. Proc. ACM Workshop Programming Languages and Analysis for Security, , 91-96 (2016).
  22. Grishchenko, I., Maffei, M., Schneidewind, C. A semantic framework for the security analysis of Ethereum smart contracts. Formal Methods Secure Software Systems (PoST 2018), , Springer. Cham. 243-269 (2018).
  23. Nielsen, J. B., et al. Smart contract interactions in Coq. arXiv preprint. , (2019).

Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.

Yeniden basım ve izinler

Bu JoVE makalesinin metnini veya şekillerini yeniden kullanmak için izin iste

İzin iste

Etiketler

Event B ModellemeKan tHisse Kan tAk ll S zle me Do rulamasDurum Makinesi SoyutlamasDe i mez Kan tZamansal Mant k Do rulamasifte Harcamay nleme

İlgili makaleler