Linux中國

DAML:區塊鏈中智能合約的編程語言

區塊鏈技術是一種安全機制,以一種使人難以或不可能修改或入侵的方式來跟蹤信息。區塊鏈整合了交易的數字賬本,它被複制並發送至其網路上的每台計算機。在鏈的每個區塊中,都有一些交易。當區塊鏈上發生新的交易時,該交易的記錄就會被添加到屬於該鏈的每個人的賬簿中。

區塊鏈使用 分散式賬本技術 distributed ledger technology (DLT),其中資料庫並不保存在一個伺服器或節點中。在區塊鏈中,交易被記錄在一個被稱為 哈希 hash 的不可改變的加密符號中。這意味著,如果一個通道或鏈上的一個區塊被改變,黑客將很難改變鏈上的那個區塊,因為他們必須對外面的每一個版本的鏈都要這樣做。區塊鏈,如比特幣和以太坊,隨著新的區塊被添加到鏈上而不斷增長,這使得賬本更加安全。

隨著區塊鏈中智能合約的實施,在沒有任何人工干預的情況下,有了自動執行的場景。智能合約技術使得執行最高級別的安全、隱私和反黑客實施成為可能。

Figure 1: Market size of blockchain technology (Source: Statista.com)

區塊鏈的用例和應用是:

  • 加密貨幣
  • 智能合約
  • 安全的個人信息
  • 數字健康記錄
  • 電子政務
  • 不可偽造的代幣(NFT)
  • 遊戲
  • 跨境金融交易
  • 數字投票
  • 供應鏈管理

根據 Statista.com,自過去幾年以來,區塊鏈技術市場的規模正在以非常快的速度增長,預計到 2025 年將達到 400 億美元。

區塊鏈的編程語言和工具箱

有許多編程語言和開發工具包可用於分散式應用和智能合約。區塊鏈的編程和腳本語言包括 Solidity、Java、Vyper、Serpent、Python、JavaScript、GoLang、PHP、C++、Ruby、Rust、Erlang 等,並根據實施場景和用例進行使用。

選擇一個合適的平台來開發和部署區塊鏈,取決於一系列因素,包括對安全、隱私、交易速度和可擴展性的需求(圖 2)。

Figure 2: Factors to look at when selecting a blockchain platform

開發區塊鏈的主要平台有:

  • 以太坊
  • XDC Network
  • Tezos
  • Stellar
  • Hyperledger
  • Ripple
  • Hedera Hashgraph
  • Quorum
  • Corda
  • NEO
  • OpenChain
  • EOS
  • Dragonchain
  • Monero

DAML:一種高性能的編程語言

數字資產建模語言 Digital Asset Modeling Language ,即 DAMLdaml.com),是一種高性能的編程語言,用於開發和部署區塊鏈環境中的分散式應用。它是一個輕量級和簡潔的平台,用於快速應用開發。

Figure 3: Official portal of DAML

DAML 的主要特點是:

  • 細粒度的許可權
  • 基於場景的測試
  • 數據模型
  • 業務邏輯
  • 確定性的執行
  • 存儲抽象化
  • 無重複開銷
  • 負責任的跟蹤
  • 原子的可組合性
  • 授權檢查
  • 需要知道的隱私

安裝和使用 DAML

DAML SDK 可以安裝在 Linux、macOS 或 Windows 上。在多個操作系統上安裝 DAML 的詳細說明可訪問 https://docs.daml.com/getting-started/installation.html

你必須具備以下條件才能使用 DAML:

  • Visual Studio Code
  • Java 開發套件(JDK)

DAML 可以通過下載並運行可執行的安裝程序在 Windows 上安裝,你可訪問 https://github.com/digital-asset/daml/releases/download/v1.18.1/daml-sdk-1.18.1-windows.exe

在 Linux 或 Mac 上安裝 DAML 可以通過在終端執行以下內容來完成:

$ curl -sSL https://get.daml.com/ | sh

安裝 DAML 後,可以創建基於區塊鏈的新應用,如圖 4 和 5 所示。

Figure 4: Creating a new app

在另一個終端中,新的應用被導航並安裝了項目的依賴:

Figure 5: Running DAML

WorkingDirectory>cd myapp/ui
WorkingDirectory>npm install
WorkingDirectory>npm start

這樣啟動了 WebUI,該應用可在 Web 瀏覽器上通過 URL http://localhost:3000/ 訪問。

Figure 6: Login panel in DAML app

研究和開發的範圍

區塊鏈技術為不同類別的應用提供了廣泛的開發平台和框架。其中許多平台是免費和開源的,可以下載和部署以用於基於研究的實現。研究學者、從業者和專家們可以使用這些平台為眾多應用提出和實施他們的演算法。

via: https://www.opensourceforu.com/2022/05/daml-the-programming-language-for-smart-contracts-in-a-blockchain/

作者:Dr Kumar Gaurav 選題:lkxed 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國