# 為什麼基於 Cardano 構建的加密項目更安全

**URL:** <https://forum.cardano.org/t/cardano/124557>\
**Category:** 教育支持\
**Created:** [30 November 2023 01:55 UTC](https://forum.cardano.org/t/cardano/124557 "2023-11-30T01:55:55Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![eric248550](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/eric248550/32/54328_2.png) [@eric248550](https://forum.cardano.org/u/eric248550)\
**Post date:** [30 November 2023 01:55 UTC](https://forum.cardano.org/t/cardano/124557/1 "2023-11-30T01:55:55Z")

</div>

文章來源：[Why Crypto Projects Built on Cardano Are More Secure - EMURGO](https://www.emurgo.io/press-news/why-crypto-projects-built-on-cardano-are-more-secure/)

Cardano區塊鏈的設計和建造從一開始就考慮到安全性，此外還具有可擴展性、永續發展和可互通性。 目標是創建一個分散式開源平台，利用經過科學驗證的技術，為每個想要存取的人支援所有類型的經濟活動。

這種對安全性的重視也延伸到了Cardano智能合約。 正如我們之前討論的，區塊鏈產業飽受駭客攻擊和漏洞利用的困擾。 2023 年第一季度，區塊鏈或 dApp 駭客攻擊的平均每次駭客攻擊金額約為 1050 萬美元！

隨著許多區塊鏈網路關注其安全性，這一趨勢正在放緩，但狀態遠非理想。 讓我們仔細看看Cardano智能合約以及為什麼Cardano可以被認為更安全。

## Cardano上的智能合約

Cardano以獨特的方式擴展了比特幣中流行的未花費交易輸出（UTxO）模型，以支援智慧合約的執行。 簡而言之，Cardano區塊鏈包含未花費交易的列表，用戶只能使用這些交易。

在這種情況下，交易是將一組已存在的 UTxO 變更為一些新的未花費交易集。 這些 UTxO 附加了規則，指定可以花費哪些交易。 如果交易遵循交易中每個輸入的既定規則，那麼Cardano網路的工作就是驗證交易。

其中最簡單的規則是簽名規則。 僅當輸入與具有 UTxO 的帳戶所做的簽名相關聯時，才能使用輸入。 這就是比特幣的常規交易方式，也適用於Cardano和少數繼續使用 UTxO 模型的區塊鏈。

Cardano EUTxO 中的“E”代表“擴展”，這是網路的創新。 Cardano模型中的交易可以由智能合約地址簽名，並且只能由遵守智能合約中編碼規則的交易花費。

這些規則使用為構建鏈上代碼而創建的語言進行編碼，例如 PlutusTx、Aiken、Plutarch 等。 簽署交易時必須遵循的這些規則的名稱是「驗證者」。

驗證器是一個要求所有輸入正確的函數，它們是：

- 上下文(Context)：可以檢查有關正在處理的交易的任何信息，例如輸入、輸出或鑄造的代幣。

- 數據(Datum)：附加到 UTxO 的一些附加數據，供驗證器使用。 例如所有者的地址、NFT 的價格或在 DEX 上將代幣 A 兌換為代幣 B。

- 贖回者(Redeemer)：是消費者可以附加到交易中的任何資料。 例如，在簡單的交易中，贖回者是包含用戶想要花費的 UTxO 的錢包的簽名。

這些是可以進入驗證器來處理交易的輸入。 它們是有限的，通常輸入數量必須等於輸出數量減去網路費用。 該規則的一個例外是當新代幣被鑄造時，因此產出會隨著網路上鑄造的新代幣數量的增加而增長。

這種設計使得 EUTxO 網路（例如 Cardano）能夠處理自訂邏輯或智慧合約。 在UTxO協議中，它是第一個有這樣的設計的，它證明了比特幣創建的UTxO可以用於此目的。

## 這如何讓Cardano更加安全？

有兩個方面使卡爾達諾比其他網路更安全。

首先，我們有為區塊鏈開發的 EUTxO 模型。 這意味著可以輕鬆檢查交易成功所需的邏輯步驟並驗證是否存在任何攻擊媒介。

驗證器具有可預測數量的輸入並且只能產生一定數量的輸出，這一事實非常適合審計。 審計員只需遵循驗證器的邏輯即可查看哪些輸出是理想的，並在出現不良輸出時建議修正。

這樣，卡爾達諾網路上的智慧合約就可以輕鬆映射。 結果只是形成輸入到輸出並產生簡潔的邏輯進行測試。 這與基於帳戶的區塊鏈上的智慧合約模型有很大不同，在基於帳戶的區塊鏈上，智慧合約的交互作用是不確定的。

在 Cardano 上，EUTxO 模型使交易具有確定性，這意味著交易的結果是可預測的。 在其他網路中，交易通常是不確定的，這意味著結果無法準確預測，並且總是可能存在不確定的狀態。

其次，卡爾達諾使用原生代幣。 其他區塊鏈已決定使用智能合約來產生代幣和其他資產。 這就需要智能合約具有權限層次結構，其中資產需要由其他智能合約使用。

想想這個模型中的DEX，當您想要交換代幣時，DEX 會要求授權使用代幣A，即用戶用於與代幣B 進行交換的代幣A。這意味著DEX 的智能合約擁有對代幣的控制權A. 如果智能合約是惡意的，它可以從用戶那裡竊取代幣 A。

此外，這些智能合約必須始終相互借用不同級別的許可。 這意味著存在一個複雜的授權網絡，可能會被利用或犯錯。

在卡爾達諾上，原生代幣不存在這個問題。 卡爾達諾分類帳將每項資產視為區塊鏈原生資產。 這意味著代幣的轉帳只需要用戶錢包的常規簽名，用戶不需要放棄對代幣的任何控制權。

對於智能合約，唯一需要的是驗證器中的邏輯。 使用者使用的 UTxO 是驗證者唯一可以看到的，作為交易的輸入，並且不能花費任何其他東西。

卡爾達諾的設計從一開始就強調安全性。 EUTxO 模型現已過實戰檢驗。 兩年多來，安全方面沒有出現重大突破，開發人員可以充滿信心地創建 dApp。

另一方面，審計人員知道智能合約遵循可預測的邏輯。 這使得他們的工作更加簡單，並減少了驗證器規則中編碼的步驟未預見的結果的可能性。
