探索 SUI 的物件中心模型和 Move 程式語言

中級10/23/2024, 5:02:57 PM
本文探讨了SUI的以对象为中心的数据存储模型,以及它对交易处理的影响和潜力。

SUI區塊鏈已經成為一個新穎的第一層(L1)協議,融入了先進技術來解決常見的第一層折衷。 Cointelegraph研究詳細解析了這位新進入區塊鏈領域的人士。

SUI使用移動編程語言這是一個專注於資產表示和訪問控制的設計。本文將檢視Sui的物件中心數據存儲模型,其對交易處理的影響,以及其相對於傳統基於帳戶的範式的潛在優勢。

SUI的面向對象範式

Sui從Diem區塊鏈中獲得了重要的靈感,特別是在其使用Move編程語言進行智能合約方面。Move是專門為資產管理和訪問控制執行而設計的類型系統。Sui Move在此基礎上進一步發展,物件中心的資料儲存模型使用物件而非帳戶作為原始物件的區塊鏈。

不像傳統帳戶模型, 在這裡交易改變餘額,或者 UTXO 模型,其中交易具有简单的输入和输出,SUI的物件模型SUI將資產(以及智能合約)視為複雜對象。 SUI中的交易將對象作為輸入並將這些輸入變異為輸出對象。每個對象記錄了生成它的上一個交易的哈希。此方法在概念上類似於UTXO模型,但更加通用和強大。下面可以看到這些模型的比較。

@ZeroAgeVenturesMove’s use of linear logic is connected to the object-oriented model and facilitates the development of secure software. Linear logic, 有时被称为资源逻辑確保代表數字資產的資源不能被重複複製或意外摧毀。當一筆交易當涉及資產時,Sui Move的語義確保資產的狀態會以反映交易結果的方式進行更新,消耗資產的先前狀態並在新狀態中產生資產。

Sui 中的物件也可以有 定義存取控制和權限,透過交易後增強資產的安全性和控制。這個mitiGates在基於帳戶的鏈上常見的漏洞,這些漏洞允許重入攻擊。重入攻擊在更新自身狀態之前,函數會對另一個合約進行外部調用,使攻擊者能夠重複執行應該僅發生一次的操作。

這可能導致對合約狀態的未經授權更改,例如提取比允許的資金更多。因為所有權轉移在SUI中是明确且原子化的,这种类型的错误是不可能发生的。 Move的线性类型系统确保一旦资源被移动,除非明确重新分配,否则不能被重复使用。

另一方面,傳統的基於帳戶的模型(如Solidity所使用的)要求開發者實施額外的檢查來防止此類錯誤。例如,必須通過遵循某些步驟來避免重入攻擊。檢查-效果-互動模式。所有改變狀態的操作(效果)必須在所有檢查之後但在任何互動(外部調用)之前發生。這種模式通常被稱為樂觀會計,確保在執行任何外部交互之前更新狀態變量。

儘管物件導向模型本身並不會從根本上增強安全性,但它可以簡化開發過程,使編寫安全代碼變得更容易。雖然以太坊上的智能合約可以 經過正式驗證為了實現高水平的安全性,這個過程可能會很複雜且昂貴。

Solidity以其聲名狼藉的不直觀語義而聞名,這使得開發人員難以理解代碼的行為。這增加了引入微妙錯誤和安全漏洞的可能性。

SUI Move 屬於一種語言家族,該家族試圖通過從一開始就將明智的金融基元烘焙到語言的語義中來簡化安全智能合約的開發。另一個例子是 Algorand 區塊鏈的交易執行批准語言(TEAL),它使用一個無狀態執行模型確保交易具有原子性和安全性。

SUI的物件中心模型對於管理複雜資產(如非同質代幣NFT)特別有利。在以太坊中,NFT與智能合約地址相關聯,互動通常需要複雜的合約調用和狀態更新,導致較高的成本和潛在的安全風險。例如,在以太坊上轉移 NFT涉及調用 ERC-721 智能合約的函數,更新狀態並發出事件。

這個過程涉及多個步驟和每一個操作的gas費用。相比之下,Sui的物件模型允許每個NFTNFT(非同質化代幣)被視為具有固有屬性和權限的獨立物件。 NFT的行為與Move語言的基本原理密切相關,而在以太坊中,需要實現此行為,這增加了開銷並創造了錯誤的空間。

物件導向和區塊鏈性能

面向对象的模型使得在SUI区块链上进行分片和并行化变得更加容易。结合最近对SUI共识机制的更新,SUI的最终确认时间约为390 毫秒.

這可能允許超過的吞吐量每秒100,000筆交易. 請參閱下面與其他知名的第一層區塊鏈SUI的比較。

基於帳戶鏈的數據庫分片與SUI

區塊鏈最迫切的問題之一是著名的可擴展性、安全性和去中心化之間的權衡。分片,這有助於區分區塊鏈數據庫,被視為這個問題的解決方案。

在基於賬戶的架構中,分片將狀態按賬戶地址進行劃分。每個分片管理一個獨立的地址範圍,並且交易由持有相關賬戶數據的分片處理。

然而,這面臨著一系列問題。例如,Polkadot要求每個帳戶的餘額和狀態在各個 shards(平行鏈)上更新和同步。在多個 shards 之間保持一致性是具有挑戰性的,因為每個 shard必須定期與全球狀態同步,這會引入延遲和複雜性。

涉及不同 shards 上帳戶的交易需要跨 shards 通訊和協調,這增加了計算開銷並延遲了交易的最終確定。過去,這導致了此類區塊鏈的停機時間,就像 Zilliqa.

SUI的面向对象模型避免了许多问题,通过处理对象来处理。每个对象作为独立的状态单元物件可以被分開處理和管理,而無需全域狀態同步,並且多個交易可以同時進行處理,無需跨片同步。這降低了複雜的跨片通訊需求,並且允許更直接和高效的平行處理。

在SUI上實現平行交易處理

平行處理是指同時執行多個操作,通過利用並行執行線程來提高處理速度。

並行處理有兩種主要方法: 狀態訪問方法(或確定性執行)和樂觀執行。在狀態訪問方法被SUI和Gate使用Solana在交易中聲明將訪問哪些狀態部分,從而使系統能夠識別可以並行執行的獨立交易。

這種方法確保可預測的結果,避免了重新執行交易的需要,從而實現了能夠管理擁擠狀態熱點的動態燃氣費市場。

樂觀執行另一方面,像Monad和Aptos这样的网络使用时,它最初假定所有交易都是独立的,并回顾性地重新执行冲突的交易。虽然对开发人员来说更简单,但可能导致计算效率低下。

Sui 通過其以對象為中心的模型實現狀態訪問並行化。對一個對象的操作不會影響或延遲對另一個對象的操作,自然允許它們同時進行處理。相同的結構特徵簡化了交易數據庫的分區,從而也簡化了單個節點上的並行處理。

結論

總結來說,Sui區塊鏈的物件中心模型,結合Move編程語言,解決了傳統第一層區塊鏈的幾個關鍵限制。能夠並行處理交易顯著增強了可擴展性並降低了延遲。

使用線性邏輯和基於能力的安全性確保強大的資源管理和存取控制,潛在地降低錯誤和安全漏洞的風險。此外,Gate對於管理複雜資產(如NFT)的方法,相較於傳統的基於帳戶的模型,簡化了互動並提高了效率。這些功能使Gate成為區塊鏈技術中值得關注的進展。

在我們接下來的文章中,我們將探討 SUI 區塊鏈的共識機制,探索其演變和提供的好處。 SUI 使用一個與其以物件為中心的模型配合工作的共識協議。

我們將分析SUI共識機制的具體細節,包括其容錯能力和吞吐量優化方法,以了解這些元素如何為其基礎設施做出貢獻。

此外,我們將Sui的共識方法與其他著名的區塊鏈(如乙太坊,Polkadot和Solana)進行比較,以確定其獨特的功能以及它可能擅長或面臨挑戰的領域。

免責聲明:

  1. 本文轉載自[cointelegraph], 所有版權屬於原作者 [Nick M]. 如果對此轉載有異議,請聯繫Gate 學習團隊將儘快處理。
  2. 免責聲明:本文中表達的觀點和意見僅代表作者的觀點和意見,不構成任何投資建議。
  3. 文章到其他語言的翻譯由Gate Learn團隊完成。除非另有說明,否則禁止複製、分發或抄襲翻譯后的文章。

探索 SUI 的物件中心模型和 Move 程式語言

中級10/23/2024, 5:02:57 PM
本文探讨了SUI的以对象为中心的数据存储模型,以及它对交易处理的影响和潜力。

SUI區塊鏈已經成為一個新穎的第一層(L1)協議,融入了先進技術來解決常見的第一層折衷。 Cointelegraph研究詳細解析了這位新進入區塊鏈領域的人士。

SUI使用移動編程語言這是一個專注於資產表示和訪問控制的設計。本文將檢視Sui的物件中心數據存儲模型,其對交易處理的影響,以及其相對於傳統基於帳戶的範式的潛在優勢。

SUI的面向對象範式

Sui從Diem區塊鏈中獲得了重要的靈感,特別是在其使用Move編程語言進行智能合約方面。Move是專門為資產管理和訪問控制執行而設計的類型系統。Sui Move在此基礎上進一步發展,物件中心的資料儲存模型使用物件而非帳戶作為原始物件的區塊鏈。

不像傳統帳戶模型, 在這裡交易改變餘額,或者 UTXO 模型,其中交易具有简单的输入和输出,SUI的物件模型SUI將資產(以及智能合約)視為複雜對象。 SUI中的交易將對象作為輸入並將這些輸入變異為輸出對象。每個對象記錄了生成它的上一個交易的哈希。此方法在概念上類似於UTXO模型,但更加通用和強大。下面可以看到這些模型的比較。

@ZeroAgeVenturesMove’s use of linear logic is connected to the object-oriented model and facilitates the development of secure software. Linear logic, 有时被称为资源逻辑確保代表數字資產的資源不能被重複複製或意外摧毀。當一筆交易當涉及資產時,Sui Move的語義確保資產的狀態會以反映交易結果的方式進行更新,消耗資產的先前狀態並在新狀態中產生資產。

Sui 中的物件也可以有 定義存取控制和權限,透過交易後增強資產的安全性和控制。這個mitiGates在基於帳戶的鏈上常見的漏洞,這些漏洞允許重入攻擊。重入攻擊在更新自身狀態之前,函數會對另一個合約進行外部調用,使攻擊者能夠重複執行應該僅發生一次的操作。

這可能導致對合約狀態的未經授權更改,例如提取比允許的資金更多。因為所有權轉移在SUI中是明确且原子化的,这种类型的错误是不可能发生的。 Move的线性类型系统确保一旦资源被移动,除非明确重新分配,否则不能被重复使用。

另一方面,傳統的基於帳戶的模型(如Solidity所使用的)要求開發者實施額外的檢查來防止此類錯誤。例如,必須通過遵循某些步驟來避免重入攻擊。檢查-效果-互動模式。所有改變狀態的操作(效果)必須在所有檢查之後但在任何互動(外部調用)之前發生。這種模式通常被稱為樂觀會計,確保在執行任何外部交互之前更新狀態變量。

儘管物件導向模型本身並不會從根本上增強安全性,但它可以簡化開發過程,使編寫安全代碼變得更容易。雖然以太坊上的智能合約可以 經過正式驗證為了實現高水平的安全性,這個過程可能會很複雜且昂貴。

Solidity以其聲名狼藉的不直觀語義而聞名,這使得開發人員難以理解代碼的行為。這增加了引入微妙錯誤和安全漏洞的可能性。

SUI Move 屬於一種語言家族,該家族試圖通過從一開始就將明智的金融基元烘焙到語言的語義中來簡化安全智能合約的開發。另一個例子是 Algorand 區塊鏈的交易執行批准語言(TEAL),它使用一個無狀態執行模型確保交易具有原子性和安全性。

SUI的物件中心模型對於管理複雜資產(如非同質代幣NFT)特別有利。在以太坊中,NFT與智能合約地址相關聯,互動通常需要複雜的合約調用和狀態更新,導致較高的成本和潛在的安全風險。例如,在以太坊上轉移 NFT涉及調用 ERC-721 智能合約的函數,更新狀態並發出事件。

這個過程涉及多個步驟和每一個操作的gas費用。相比之下,Sui的物件模型允許每個NFTNFT(非同質化代幣)被視為具有固有屬性和權限的獨立物件。 NFT的行為與Move語言的基本原理密切相關,而在以太坊中,需要實現此行為,這增加了開銷並創造了錯誤的空間。

物件導向和區塊鏈性能

面向对象的模型使得在SUI区块链上进行分片和并行化变得更加容易。结合最近对SUI共识机制的更新,SUI的最终确认时间约为390 毫秒.

這可能允許超過的吞吐量每秒100,000筆交易. 請參閱下面與其他知名的第一層區塊鏈SUI的比較。

基於帳戶鏈的數據庫分片與SUI

區塊鏈最迫切的問題之一是著名的可擴展性、安全性和去中心化之間的權衡。分片,這有助於區分區塊鏈數據庫,被視為這個問題的解決方案。

在基於賬戶的架構中,分片將狀態按賬戶地址進行劃分。每個分片管理一個獨立的地址範圍,並且交易由持有相關賬戶數據的分片處理。

然而,這面臨著一系列問題。例如,Polkadot要求每個帳戶的餘額和狀態在各個 shards(平行鏈)上更新和同步。在多個 shards 之間保持一致性是具有挑戰性的,因為每個 shard必須定期與全球狀態同步,這會引入延遲和複雜性。

涉及不同 shards 上帳戶的交易需要跨 shards 通訊和協調,這增加了計算開銷並延遲了交易的最終確定。過去,這導致了此類區塊鏈的停機時間,就像 Zilliqa.

SUI的面向对象模型避免了许多问题,通过处理对象来处理。每个对象作为独立的状态单元物件可以被分開處理和管理,而無需全域狀態同步,並且多個交易可以同時進行處理,無需跨片同步。這降低了複雜的跨片通訊需求,並且允許更直接和高效的平行處理。

在SUI上實現平行交易處理

平行處理是指同時執行多個操作,通過利用並行執行線程來提高處理速度。

並行處理有兩種主要方法: 狀態訪問方法(或確定性執行)和樂觀執行。在狀態訪問方法被SUI和Gate使用Solana在交易中聲明將訪問哪些狀態部分,從而使系統能夠識別可以並行執行的獨立交易。

這種方法確保可預測的結果,避免了重新執行交易的需要,從而實現了能夠管理擁擠狀態熱點的動態燃氣費市場。

樂觀執行另一方面,像Monad和Aptos这样的网络使用时,它最初假定所有交易都是独立的,并回顾性地重新执行冲突的交易。虽然对开发人员来说更简单,但可能导致计算效率低下。

Sui 通過其以對象為中心的模型實現狀態訪問並行化。對一個對象的操作不會影響或延遲對另一個對象的操作,自然允許它們同時進行處理。相同的結構特徵簡化了交易數據庫的分區,從而也簡化了單個節點上的並行處理。

結論

總結來說,Sui區塊鏈的物件中心模型,結合Move編程語言,解決了傳統第一層區塊鏈的幾個關鍵限制。能夠並行處理交易顯著增強了可擴展性並降低了延遲。

使用線性邏輯和基於能力的安全性確保強大的資源管理和存取控制,潛在地降低錯誤和安全漏洞的風險。此外,Gate對於管理複雜資產(如NFT)的方法,相較於傳統的基於帳戶的模型,簡化了互動並提高了效率。這些功能使Gate成為區塊鏈技術中值得關注的進展。

在我們接下來的文章中,我們將探討 SUI 區塊鏈的共識機制,探索其演變和提供的好處。 SUI 使用一個與其以物件為中心的模型配合工作的共識協議。

我們將分析SUI共識機制的具體細節,包括其容錯能力和吞吐量優化方法,以了解這些元素如何為其基礎設施做出貢獻。

此外,我們將Sui的共識方法與其他著名的區塊鏈(如乙太坊,Polkadot和Solana)進行比較,以確定其獨特的功能以及它可能擅長或面臨挑戰的領域。

免責聲明:

  1. 本文轉載自[cointelegraph], 所有版權屬於原作者 [Nick M]. 如果對此轉載有異議,請聯繫Gate 學習團隊將儘快處理。
  2. 免責聲明:本文中表達的觀點和意見僅代表作者的觀點和意見,不構成任何投資建議。
  3. 文章到其他語言的翻譯由Gate Learn團隊完成。除非另有說明,否則禁止複製、分發或抄襲翻譯后的文章。
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!
It seems that you are attempting to access our services from a Restricted Location where Gate.io is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Thailand, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.