Move dili, yeni nesil akıllı sözleşme dili olarak, güvenlik tasarımı açısından oldukça dikkat çekicidir. Bu makalede, Move'un güvenliğini dil özellikleri, çalışma mekanizması ve doğrulama araçları açısından üç düzlemde analiz edeceğiz.
1. Move dilinin güvenlik özellikleri
Move dili, tasarımında doğrusal mantığı bırakmış, dinamik dağıtım ve dış çağrıları desteklememekte, bunun yerine genel türler, küresel depolama, kaynaklar gibi kavramlar kullanarak alternatif bir programlama modeli gerçekleştirmektedir. Bu özellikler, yeniden giriş gibi yaygın güvenlik açıklarının etkili bir şekilde önüne geçmektedir.
Move'un temel güvenlik mekanizmaları şunlardır:
Modül: Her modül, yapı türü ve işlem tanımından oluşur, diğer modüllerin tür tanımlarını içe aktarabilir.
Yapı: kaynak türü olarak tanımlanabilir, küresel anahtar-değer saklama alanında depolanır.
Küresel Depolama: Verilerin kalıcı olarak depolanmasına izin verir, yalnızca modüllere sahip olanlar tarafından programlı bir şekilde okunup yazılabilir.
Bayt kodu doğrulayıcı: Güvenli türleri ve lineerleştirmeyi zorunlu kılar, kaynak türlerinin değerlerine yasadışı işlemleri önler.
Değişmezlik kuralı: Kodun güvenliğini sağlamak için statik kontrol edilebilen değişmezler tanımlanabilir.
2. Move'un çalışma mekanizması
Move programı sanal makinede çalışır, sistem belleğine doğrudan erişemez. Durumu, çağrı yığını, bellek, küresel değişkenler ve işlem dizisi ile oluşur.
MoveVM, verileri depolama ve çağrı yığınını ayırır; bu, EVM'den önemli ölçüde farklıdır. Kullanıcı durumu ( hesap adresindeki kaynaklar ) bağımsız olarak depolanır, program çağrıları yetki ve kaynak kurallarına uymalıdır, bu da güvenliği ve yürütme verimliliğini artırır.
3. Move Prover
Move Prover, programların beklenen sonuçlara uygunluğunu doğrulamak için çıkarımsal doğrulama algoritmaları kullanan bir biçimsel doğrulama aracıdır. Çalışma akışı aşağıdaki gibidir:
Move kaynak dosya girdisini al, standartları çıkar
Move Specification Language, standartları tanımlamak için kullanılır, üretim kodunu etkilemeden bağımsız olarak yazılabilir.
Özet
Move, dil özellikleri, sanal makine yürütmesi ve güvenlik araçları açısından kapsamlı bir şekilde dikkate alınmıştır. Yeniden giriş, taşma gibi yaygın açıkları önler, ancak izin yönetimi, mantık hataları gibi sorunlar geliştiricilerin dikkatine sunulmaktadır. Üçüncü taraf güvenlik denetimlerinin kullanılması ve uzman bir ekip tarafından doğrulama standart kodlarının yazılması önerilmektedir.
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
20 Likes
Reward
20
5
Repost
Share
Comment
0/400
MEVHunterZhang
· 07-13 14:53
Yeterince güvenli olduğu sürece, diğer her şey boştur.
Move dilinin güvenliği kapsamlı bir şekilde analiz edildi: özellikler, mekanizmalar ve doğrulama araçları
Move dilinin güvenlik analizi
Move dili, yeni nesil akıllı sözleşme dili olarak, güvenlik tasarımı açısından oldukça dikkat çekicidir. Bu makalede, Move'un güvenliğini dil özellikleri, çalışma mekanizması ve doğrulama araçları açısından üç düzlemde analiz edeceğiz.
1. Move dilinin güvenlik özellikleri
Move dili, tasarımında doğrusal mantığı bırakmış, dinamik dağıtım ve dış çağrıları desteklememekte, bunun yerine genel türler, küresel depolama, kaynaklar gibi kavramlar kullanarak alternatif bir programlama modeli gerçekleştirmektedir. Bu özellikler, yeniden giriş gibi yaygın güvenlik açıklarının etkili bir şekilde önüne geçmektedir.
Move'un temel güvenlik mekanizmaları şunlardır:
Modül: Her modül, yapı türü ve işlem tanımından oluşur, diğer modüllerin tür tanımlarını içe aktarabilir.
Yapı: kaynak türü olarak tanımlanabilir, küresel anahtar-değer saklama alanında depolanır.
Küresel Depolama: Verilerin kalıcı olarak depolanmasına izin verir, yalnızca modüllere sahip olanlar tarafından programlı bir şekilde okunup yazılabilir.
Bayt kodu doğrulayıcı: Güvenli türleri ve lineerleştirmeyi zorunlu kılar, kaynak türlerinin değerlerine yasadışı işlemleri önler.
Değişmezlik kuralı: Kodun güvenliğini sağlamak için statik kontrol edilebilen değişmezler tanımlanabilir.
2. Move'un çalışma mekanizması
Move programı sanal makinede çalışır, sistem belleğine doğrudan erişemez. Durumu, çağrı yığını, bellek, küresel değişkenler ve işlem dizisi ile oluşur.
MoveVM, verileri depolama ve çağrı yığınını ayırır; bu, EVM'den önemli ölçüde farklıdır. Kullanıcı durumu ( hesap adresindeki kaynaklar ) bağımsız olarak depolanır, program çağrıları yetki ve kaynak kurallarına uymalıdır, bu da güvenliği ve yürütme verimliliğini artırır.
3. Move Prover
Move Prover, programların beklenen sonuçlara uygunluğunu doğrulamak için çıkarımsal doğrulama algoritmaları kullanan bir biçimsel doğrulama aracıdır. Çalışma akışı aşağıdaki gibidir:
Move Specification Language, standartları tanımlamak için kullanılır, üretim kodunu etkilemeden bağımsız olarak yazılabilir.
Özet
Move, dil özellikleri, sanal makine yürütmesi ve güvenlik araçları açısından kapsamlı bir şekilde dikkate alınmıştır. Yeniden giriş, taşma gibi yaygın açıkları önler, ancak izin yönetimi, mantık hataları gibi sorunlar geliştiricilerin dikkatine sunulmaktadır. Üçüncü taraf güvenlik denetimlerinin kullanılması ve uzman bir ekip tarafından doğrulama standart kodlarının yazılması önerilmektedir.