defi/dapp/ulab流動性LP代幣質押挖礦系統開發詳情分析丨原始碼說明

xiaofufu發表於2023-04-21

 


區塊鏈技術具有較高安全性。對鏈上資料原始性、真實性和完整性的演演算法原理之一即運用雜湊巢狀的鏈式儲存結構,使相關資料鏈只能正向驗證,不可逆推。即鏈上資料僅對應一個雜湊值,根據已知雜湊值,無法逆推原始資料。如想修改其中一個區塊中的資料,需要將鏈式儲存結構中的後序區塊全部修改,需要極高的算力及資金支援,修改難度極大。當然,“難以篡改”不等於“無法篡改”,如果有擁有充足知識和資金的主體能夠計算出修改區塊之後的所有區塊雜湊值,並掌握全網51%算力時,即可修改區塊鏈中的資料。但因該種可能性非常之低,故一般而言,我們認為區塊鏈“難以篡改”,甚至“不可篡改”。




 關於區塊鏈專案技術開發唯:MrsFu123,代幣發行、dapp智慧合約開發、鏈遊開發、單雙幣質押、多鏈錢包開發、NFT盲盒遊戲、公鏈、鏈上游戲開發


 Uniswap博餅、 交易所開發、量化合約開發、合約對沖、互助遊戲開發、Nft數字藏品開發、眾籌互助開發、元宇宙開發、swap開發、DAO智慧合約、


 夾子合約、 鏈上合約開發、ido開發、商城開發等,開發過各種各樣的系統模式,更有多種模式、制度、案例、後臺等,成熟技術團隊,歡迎實體參考。

  

  //SPDX-License-Identifier:MIT;


  pragma solidity^0.8.0;


  import"openzeppelin/contracts/token/ERC721/ERC721.sol";


  import"openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol";


  import"openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";


  import"openzeppelin/contracts/utils/Counters.sol";


  contract TestNFT is ERC721,ERC721Enumerable,ERC721URIStorage{


  using Counters for Counters.Counter;


  Counters.Counter private _tokenId;


  constructor()ERC721("The First NFT","FFT"){}


  function mint(address _recipient,string memory _tokenUrl)public returns(uint _mintTokenId){


  require(bytes(_tokenUrl).length>0,"The _tokenUrl must be have");


  _tokenId.increment();


  uint newTokenId=_tokenId.current();


  _mint(_recipient,newTokenId);


  _setTokenURI(newTokenId,_tokenUrl);


  return newTokenId;


  }


  function _beforeTokenTransfer(address from,address to,uint256 tokenId)


  internal


  override(ERC721,ERC721Enumerable)


  {


  super._beforeTokenTransfer(from,to,tokenId);


  }


  function _burn(uint256 tokenId)internal override(ERC721,ERC721URIStorage){


  super._burn(tokenId);


  }


  function tokenURI(uint256 tokenId)


  public


  view


  override(ERC721,ERC721URIStorage)


  returns(string memory)


  {


  return super.tokenURI(tokenId);


  }


  function supportsInterface(bytes4 interfaceId)


  public


  view


  override(ERC721,ERC721Enumerable)


  returns(bool)


  {


  return super.supportsInterface(interfaceId);


  }


  }


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

相關文章