国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

web3系列———2.以太坊與智能合約

這篇具有很好參考價值的文章主要介紹了web3系列———2.以太坊與智能合約。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

主流幣:

中本聰設計的比特幣大獲成功后,各種區(qū)塊鏈和其對應的加密貨幣層出不窮,其中不乏新技術(shù)的使用,不過大部分的模仿貨幣最后都銷聲匿跡了,最終存活并存有大量用戶的被稱作主流幣。

BTC比特幣
ETH以太坊
LTC萊特幣
XRP瑞波幣
USDT (代幣)
USDC (代幣)
BUSD (代幣)
代幣是建立在現(xiàn)有區(qū)塊鏈平臺上的,比如以太坊。你可以用以太幣(ETH)來換取這些代幣,然后在特定的區(qū)塊鏈應用程序中使用它們,就像在游樂園里使用游戲幣一樣。這些代幣沒有自己的區(qū)塊鏈,它們依賴于別的區(qū)塊鏈平臺來運行和管理。

其中BTC毫無疑問是當今老大,而**ETH(以太坊)**因為其開創(chuàng)了智能合約平臺,使區(qū)塊鏈進入2.0時代,坐穩(wěn)老二的位置。
從以太坊開始,區(qū)塊鏈技術(shù)號稱不再局限于加密貨幣領域,而是推廣到整個web行業(yè),催生出web3.0。

如何理解以太坊:

比特幣網(wǎng)絡中,每一個區(qū)塊中只有轉(zhuǎn)賬記錄,是否可以存點別的東西來提高其擴展性?
以太坊創(chuàng)始人Vitalik和其團隊,設計了一種腳本語言Solidity和以太坊虛擬機,程序員可以將用這種語言寫的代碼,打包成字節(jié)碼,一起存在區(qū)塊鏈上。
以太坊的節(jié)點客戶端都內(nèi)置了虛擬機,可以執(zhí)行這個區(qū)塊中的代碼,實現(xiàn)一些自定義操作。

所以以太坊不僅被理解為一種加密貨幣,也是一個執(zhí)行代碼的平臺,這種代碼被稱為智能合約。

智能合約有什么用:

見仁見智,關鍵是理解這種想法,無非在前面區(qū)塊中寫死了一些函數(shù)代碼,可以供后面的區(qū)塊調(diào)用。各種新概念的仍源于區(qū)塊鏈的公開性和不可篡改性。比如:

用于募捐:在5天內(nèi)募集5000個單位的貨幣。如果在截止日期前沒有達到目標金額,合約將自動將資金退還給捐款人
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;

contract Fundraiser {
    // 定義募捐目標和截止時間
    uint public constant TARGET = 5000 ether;
    uint public constant DEADLINE = block.timestamp + 5 days;

    // 記錄捐款人和捐款金額
    mapping(address => uint) public contributions;
    address public owner;
    uint public totalContributions;

    // 構(gòu)造函數(shù),設置合約擁有者
    constructor() {
        owner = msg.sender;
    }

    // 接收捐款的函數(shù)
    function contribute() external payable {
        require(block.timestamp < DEADLINE, "募捐已結(jié)束");
        contributions[msg.sender] += msg.value;
        totalContributions += msg.value;
    }

    // 檢查是否達到目標,若未達到則退款
    function checkGoalReached() external {
        require(block.timestamp >= DEADLINE, "募捐尚未結(jié)束");
        if (totalContributions < TARGET) {
            refundAll();
        }
    }

    // 退款給所有捐款人
    function refundAll() internal {
        for (uint i = 0; i < contributors.length; i++) {
            address contributor = contributors[i];
            uint amount = contributions[contributor];
            (bool success, ) = contributor.call{value: amount}("");
            require(success, "退款失敗");
            contributions[contributor] = 0;
        }
        totalContributions = 0;
    }

    // 提取資金,只有在達到目標后才能調(diào)用
    function withdraw() external {
        require(msg.sender == owner, "只有合約擁有者才能提取資金");
        require(totalContributions >= TARGET, "未達到募捐目標");
        require(block.timestamp >= DEADLINE, "募捐尚未結(jié)束");

        (bool success, ) = owner.call{value: address(this).balance}("");
        require(success, "提款失敗");
    }

    // 用于接收未標記為contribute的ETH
    receive() external payable {
        contribute();
    }
}

將這個合約存到區(qū)塊鏈中,每一個人就可以調(diào)用里面的函數(shù)來捐錢到指定地址,也不用擔心對方卷錢跑路。

由智能合約衍生的玩法還有很多,否則也不能這么火。
問了下GPT,回答如下:
智能合約是區(qū)塊鏈技術(shù)的一項重要應用,它可以自動執(zhí)行合同條款,從而提高效率并減少中介成本。以下是一些智能合約的實際應用例子:

  1. 金融領域:智能合約可以用于自動化的資產(chǎn)清算、保險理賠和資產(chǎn)交易。例如,它們可以在確定的條件下自動執(zhí)行支付和結(jié)算。

  2. 管理領域:在組織管理中,智能合約可以幫助實現(xiàn)透明和自動化的決策過程,如DAO(去中心化自治組織)使用智能合約來管理組織的規(guī)則和資金。

  3. 醫(yī)療領域:智能合約可以用于安全地共享醫(yī)療數(shù)據(jù),保護患者隱私的同時,提高數(shù)據(jù)訪問和處理的效率1。

  4. 物聯(lián)網(wǎng)與供應鏈:智能合約可以用于自動化的物流跟蹤、產(chǎn)品真?zhèn)悟炞C和庫存管理,從而提高供應鏈的透明度和效率。

  5. 共享經(jīng)濟:例如,智能合約可以用于自動處理共享資源的租賃和支付,如共享汽車或共享住宿的支付處理。

  6. 投票系統(tǒng):智能合約可以創(chuàng)建一個安全、透明且不可篡改的投票系統(tǒng),確保選舉的公正性。

代幣與如何發(fā)行代幣:

代幣(Token)是區(qū)塊鏈中的一種數(shù)字資產(chǎn),可以代表貨幣、時間、服務、公司股份、虛擬寵物等各種實物或虛擬事物。代幣通常通過智能合約來發(fā)行,任何人都可以發(fā)行自己的代幣。
通過編寫智能合約中的函數(shù),可以允許用戶將原生加密貨幣轉(zhuǎn)入合約地址,從而換取一定數(shù)量的代幣。
代幣可以是可互換的(fungible)或不可互換的(non-fungible),取決于它們所代表的實物或虛擬事物的特性。
社區(qū)制定了一些標準(如ERC20、ERC721和ERC777)來規(guī)范智能合約與其他合約的互操作性。ERC20是用于可互換資產(chǎn)的最常見的代幣標準,而ERC721則是用于不可互換代幣的標準,通常用于收藏品和游戲。

發(fā)行ERC20標準代幣:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

//發(fā)行代幣,代幣和原生幣的匯率為1比1
contract MyToken is ERC20 {
    constructor() ERC20("MyToken", "MT") {
        _mint(msg.sender, 1000000 * (10 ** uint256(decimals())));
    }

//轉(zhuǎn)賬函數(shù)
    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        require(amount <= balanceOf(msg.sender), "Insufficient balance");
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

//查詢地址內(nèi)余額
    function balanceOf(address account) public view returns (uint256) {
        return super.balanceOf(account);
    }
}

web3分布式應用程序(Dapp):

當前,不管是C/S(客戶端-服務端)架構(gòu)還是B/S(瀏覽器服務端)架構(gòu)的應用程序,都是用戶安裝一個前端app或者從瀏覽器訪問網(wǎng)頁前端,通過api與企業(yè)的服務器進行交互,數(shù)據(jù)存放在企業(yè)自己的數(shù)據(jù)庫中。

web3系列———2.以太坊與智能合約,web3,智能合約,區(qū)塊鏈,比特幣,以太坊

Dapp(分布式app),每一個Dapp既是一個前端也是一個節(jié)點,用戶的數(shù)據(jù)全部存入去中心化的區(qū)塊鏈中,隱私數(shù)據(jù)可以端到端加密后再存入,沒有任何人能修改刪除你的數(shù)據(jù)??梢哉f,對于去中心化的(分布式)app,典型后端這一說法不再適用。

web3系列———2.以太坊與智能合約,web3,智能合約,區(qū)塊鏈,比特幣,以太坊

特征 Web2應用程序 Web3應用程序
中心化 數(shù)據(jù)和服務由單一公司或組織控制 應用程序運行在區(qū)塊鏈上,沒有中心化的控制
數(shù)據(jù)所有權(quán) 用戶數(shù)據(jù)歸服務提供商所有 用戶擁有自己的數(shù)據(jù)和身份
可擴展性 交易和操作速度較快 可能因為去中心化而速度較慢
支付集成 調(diào)用中心化的第三方支付接口 通過原生代幣內(nèi)置支付功能
可編程性 開放程度有限,自定義程度低 圖靈完備,可以編寫復雜程序
限制 依賴中心化服務器 交易速度慢,用戶體驗和成本方面有挑戰(zhàn)

Dapp發(fā)展現(xiàn)狀:

當前大部分Dapp并不是完全體,只是傳統(tǒng)前后端+(鏈端)智能合約。
省略…

潛力巨大,前景廣闊,道阻且長。
只能說,祝它成功吧!文章來源地址http://www.zghlxwxcb.cn/news/detail-856967.html

到了這里,關于web3系列———2.以太坊與智能合約的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 區(qū)塊鏈web3智能合約Solidity學習資源整理

    Solidity 是一門面向合約的、為實現(xiàn)智能合約而創(chuàng)建的高級編程語言。這門語言受到了 C++,Python 和 Javascript 語言的影響,設計的目的是能在以太坊虛擬機(EVM)上運行。 Solidity中文官方文檔: https://solidity-cn.readthedocs.io/zh/develop/ https://learnblockchain.cn/docs/solidity/index.html 在線rem

    2024年03月19日
    瀏覽(30)
  • Web3 處理智能合約部署到本地區(qū)塊鏈,并在本地進行測試

    Web3 處理智能合約部署到本地區(qū)塊鏈,并在本地進行測試

    上文 Web3 在Truffle項目中編寫出自己的第一個solidity智能合約我們演示了 在Truffle環(huán)境下寫一個智能合約并編譯的功能 編譯出的文件夾中的這個JSON就非常重要了 我們就可以通過 它這個ABI鏈接到需要的智能合約程序上去 但這也僅僅是編譯完了 我們的智能合約還沒有部署到我們

    2024年02月13日
    瀏覽(27)
  • 關于區(qū)塊鏈、Web3.0、智能合約、DApp、DAO一文解釋清楚

    關于區(qū)塊鏈、Web3.0、智能合約、DApp、DAO一文解釋清楚

    區(qū)塊鏈簡單理解就是, 所有數(shù)據(jù)變成區(qū)塊組成的鏈條,一個區(qū)塊里保存著一條數(shù)據(jù)。 一筆支付、一個評論、一次查看、一條短信、一袋蘋果都能保存為一個數(shù)據(jù)區(qū)塊。 由于區(qū)塊通過鏈條環(huán)環(huán)相扣,這確保了鏈上的數(shù)據(jù)是不可被篡改的。 鏈條復制了多條副本放置到多臺互不相

    2024年02月02日
    瀏覽(61)
  • 賽聯(lián)區(qū)塊鏈培訓:Web3的核心要素——區(qū)塊鏈、加密資產(chǎn)、智能合約和預言機

    賽聯(lián)區(qū)塊鏈培訓:Web3的核心要素——區(qū)塊鏈、加密資產(chǎn)、智能合約和預言機

    在2008年,中本聰發(fā)布了比特幣白皮書,徹底顛覆了我們對數(shù)字化交易的概念,并首次提出了一種無需可信中間方的安全在線交易模式。中本聰寫道:“需要基于加密證明,而非信任,來建立電子支付系統(tǒng)?!?智能合約被發(fā)明后,去中心化的互聯(lián)網(wǎng)模式進入公眾視野。如果說

    2024年02月07日
    瀏覽(29)
  • 手把手部署區(qū)塊鏈智能合約及python的web3接口調(diào)用

    手把手部署區(qū)塊鏈智能合約及python的web3接口調(diào)用

    說句實話,在做區(qū)塊鏈、智能合約、搭私鏈、pythonWeb3接口調(diào)用這些東西的時候,心里崩潰了不止四五十回,如果可以選別的方向,博主勸你趕緊換,人生已經(jīng)很不容易了,別給自己找罪受。。。。。 創(chuàng)世塊是什么請自行搜索,網(wǎng)絡上很多示例的創(chuàng)世塊博主都試過,在實際使

    2024年02月04日
    瀏覽(27)
  • 北大肖臻老師《區(qū)塊鏈技術(shù)與應用》系列課程學習筆記[21]以太坊-智能合約-1

    北大肖臻老師《區(qū)塊鏈技術(shù)與應用》系列課程學習筆記[21]以太坊-智能合約-1

    目錄 一、什么是智能合約 二、智能合約的代碼結(jié)構(gòu) ????????1.Solidity語言 ????????2.bid函數(shù) ????????3.fallback()函數(shù) ?二、外部賬戶如何調(diào)用智能合約 三、一個合約如何調(diào)用另一個合約中的函數(shù) ????????1.直接調(diào)用 ????????2.使用address類型的call()函數(shù) ?????

    2024年02月05日
    瀏覽(24)
  • 北大肖臻老師《區(qū)塊鏈技術(shù)與應用》系列課程學習筆記[25]以太坊-智能合約-5

    北大肖臻老師《區(qū)塊鏈技術(shù)與應用》系列課程學習筆記[25]以太坊-智能合約-5

    智能合約-1 智能合約-2 智能合約-3 智能合約-4 網(wǎng)上競拍第二版:由投標者自己取回出價 (1)存在的問題 ????????重入攻擊,如果有黑客寫了一個如下方程序會怎么樣? ????????這個hack_bid跟前面的那個黑客合約hack_bid合約是一樣的,通過調(diào)用拍賣bid函數(shù)參與競拍,ha

    2024年03月11日
    瀏覽(26)
  • 北大肖臻老師《區(qū)塊鏈技術(shù)與應用》系列課程學習筆記[22]以太坊-智能合約-2

    北大肖臻老師《區(qū)塊鏈技術(shù)與應用》系列課程學習筆記[22]以太坊-智能合約-2

    智能合約-1 目錄 一、智能合約的創(chuàng)建和運行 ????????1.智能合約的創(chuàng)建 ????????2.汽油費 ????????3.錯誤處理 ????????4.嵌套調(diào)用 二、思考 ????????1.GasLimit和GasUsed ????????2.以太坊中的GasLimit跟比特幣的區(qū)別 1.智能合約的創(chuàng)建 ? ? ? ? 智能合約 由一個外

    2024年02月19日
    瀏覽(26)
  • 北大肖臻老師《區(qū)塊鏈技術(shù)與應用》系列課程學習筆記[23]以太坊-智能合約-3

    北大肖臻老師《區(qū)塊鏈技術(shù)與應用》系列課程學習筆記[23]以太坊-智能合約-3

    智能合約-1 智能合約-2 1.假設某個全節(jié)點要打包一些交易到一個區(qū)塊里,這些交易里有一些是對智能合約的調(diào)用,那么這個全節(jié)點應該先執(zhí)行完智能合約再挖礦,還是先挖礦獲得記賬權(quán)再執(zhí)行這些智能合約? ? ? ? ? 在區(qū)塊鏈中,如果有一筆轉(zhuǎn)賬交易發(fā)布上去,需要所有的全

    2023年04月23日
    瀏覽(22)
  • web3系列———4.編寫第一個智能合約并發(fā)布到鏈上

    web3系列———4.編寫第一個智能合約并發(fā)布到鏈上

    本篇教程為在以太坊區(qū)塊鏈上發(fā)布一個智能彩票合約,活動期間用戶可充值一定金額的以太幣到合約地址,活動結(jié)束進行開獎,隨機從參與用戶中抽取3人,平分獎池獎金。(分為上下兩篇)(本篇為下) 教程思路: 新建以太坊錢包 充值一定數(shù)額ETH作為合約發(fā)布汽油費 Remix編寫s

    2024年04月15日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包