鑄造NFT鏈上合成交易智慧合約平臺系統開發丨技術介紹

Lyr96246466發表於2023-04-04

Web3.0是針對Web1.0和Web2.0而言的,18I鏈上合約- 259l開發系統3365代表了網際網路發展的不同階段。Web1.0其實就

是第一代網際網路,這時的網際網路主要為網路媒體,使用者訪問網站,瀏覽數字內容,不過只能讀不能寫,也沒有辦法參與內容創造


Web3.0被視為新一代可信的價值網際網路,將引發網際網路商業模式的變革。Web1.0時代,網際網路盈利靠的是“流量為王”。

Web2.0透過網際網路平臺實現供需均衡,打造出“平臺經濟”模式。Web3.0由於資料歸使用者,將構建一個使用者共創共建、共享

共治的新型網際網路經濟系統,從而催生更多新業態。


Web3.0上將建立一套新的數字版權體系。內容創作者可以將作品記錄在區塊鏈上,形成非同質化數字資產憑證(NFT)。例如

,一部電視劇可以透過這種方式向公眾出售其數字版內容,使用者可以透過購買NFT的方式進行內容消費,而不再需要為此購買一

整年的網站會員。


pragma solidity ^0.8.4;


import '@openzeppelin/contracts/token/ERC721/ERC721.sol';

import '@openzeppelin/contracts/access/Ownable.sol';


// 繼承ERC721, Ownable

contract SimpleMintContract is ERC721, Ownable {

    // mint 價格

    uint256 public mintPrice = 0.05 ether;

    // 總共曾經被mint數量

    uint256 public totalSupply;

    // 能夠mint的最大數量

    uint256 public maxSupply;

    // 是否開啟mint

    bool public isMintEnabled;

    // 每個地址mint => 數量

    mapping(address => uint256) public mintedWallets;


    // 建構函式,部署合約的時候,設定最大數量為2

    constructor() payable ERC721('Simple Mint', 'SIMPLEMINT') {

        maxSupply = 2;

    }


    // 內部呼叫函式,開啟mint

    function toggleIsMintEnabled() external onlyOwner {

        isMintEnabled = !isMintEnabled;

    }


    // 設定最大mint數量

    function setMaxSuppley(uint256 _maxSupply) external onlyOwner {

        maxSupply = _maxSupply;

    }


    // mint函式

    function mint() external payable {

        // require判斷函式,前半部判斷為false,則丟擲後半區域性資訊

        // 判斷是否開啟mint

        require(isMintEnabled, 'minting not enabled');

        // 判斷地址是否曾經mint

        require(mintedWallets[msg.sender] < 1, 'exceeds max per wallet');

        // 判斷髮送到合約的eth數量是否跟mint價格一樣

        require(msg.value == mintPrice, 'wrong value');

        // 判斷是否還有能夠mint的數量

        require(maxSupply > totalSupply, 'sold out');


        mintedWallets[msg.sender]++;

        totalSupply++;

        uint256 tokenId = totalSupply;

        _safeMint(msg.sender, tokenId);

    }

}


什麼是NFT

NFT 是我們們用以代表獨特物品所有權的代幣。 NFT 讓我們們把諸如藝術品、收藏品、甚至房地產等物品代幣化。 他們一次只有

一個正式客人,並且受到以太坊區塊鏈的愛護 – 沒有人能夠批改所有權記錄或者依據現有的 NFT 複製貼上一份新的。



NFT 代表非同質化代幣。 非同質化是一個經濟術語,您能夠用它來形容傢俱、歌曲檔案或您的電腦等物品。 這些貨色不能與

其餘物品調換,因為它們具備獨特屬性。


另一方面,同質化物品能夠調換,這取決於它們的價值而非獨特屬性。 例如,ETH 或美元具備同質化屬性,因為 1 ETH/1 

USD 能夠兌換成另外的 1 ETH/1 USD。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70012429/viewspace-2943691/,如需轉載,請註明出處,否則將追究法律責任。

相關文章