首页 > 区块链 > 区块链 > 浅谈代币modelDAPP系统开发搭建(现成演示版)
区块链技术包含哪些关键组件?
区块链架构包含以下主要组件:
分布式分类账
分布式分类账是区块链网络中用于存储交易的共享数据库,如团队中的每个人均可编辑的共享文件。在大多数共享文本编辑者中,任何拥有编辑权限的人员均可删除整个文件。但分布式分类账技术对于谁能编辑以及如何编辑具有严格规则。一旦条目已被记录,您就无法删除它们。
智能合约
很多公司使用智能合约来自行管理业务合约,而不需要第三方的帮助。智能合约是存储在区块链系统上的程序,这些程序将在符合预先确定的条件时自动运行。这些程序将运行条件语句检查,以便能够放心地完成交易。例如,某家物流公司可能拥有一份智能合约,约定一旦商品抵达港口将自动进行付款。
公钥加密
公钥加密是一种安全功能,用于标识区块链网络中的参与者。此机制将为网络成员生成两组密钥。一组密钥是公钥,对于网络中的每个人都是公用的。另一组密钥是私钥,对于每个成员都是的。私钥与公钥配合使用,解锁分类账中的数据。
例如,John和Jill是网络中的两个成员。John记录了一项交易,并用其私钥进行了加密。Jill可以使用其公钥解密该交易。通过这种方式,Jill可以确信John进行了该交易。如果John的私钥已被篡改,则Jill的公钥不会发挥作用。
代码示例:
打字稿复制代码编译指示完整性^0.8.0;
导入“openzeppelin/合约/代币/ERC721/ERC721.sol”;
require(msg.value==PRICE*_count,“发送的以太币值不正确”);
for(UINT256 I=0;in<_count;I++){
_safeMint(msg.sender,totalSupply()+1);
}
}
function setBaseURI(string memory baseURI_)public onlyOwner{
_baseURIExtended=baseURI_;
}
导入“openzeppelin/合同/访问/可拥有.sol”;
合约WineGometaNFT是ERC721,Ownable{
uint256公共常数MAX_TOKENS=10000;
uint256公共常数价格=0.1以太币;
uint256公共常数MAX_PER_MINT=10;
字符串私人_baseURIExtended;
构造函数(字符串内存_name,字符串内存_symbol,字符串内存基URI)ERC721(_name,_symbol){
setBaseURI(baseURI);
}
函数Mint(uint256 _count)公共应付{
require(_count>0&&_count<=MAX_PER_MINT,“请求的代币数量无效”);
require(totalSupply()+_count<=MAX_TOKENS,“购买将超过最大供应量”);
函数_baseURI()内部视图虚拟覆盖返回(字符串内存){
返回_baseURIExtended;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70016646/viewspace-2944728/ ,如需转载,请注明出处,否则将追究法律责任。