智能合约 之 ERC-721

ERC-721(Non-Fungible Token,NFT)标准

ERC-721是以太坊区块链上的一种代币标准,它定义了一种非同质化代币(Non-Fungible Token,NFT)的标准。NFT是一种加密数字资产,每个代币都具有独特的属性,使其在区块链上不可互换。ERC-721标准的提出为数字艺术品、游戏物品、房地产和其他实物资产数字化所有权提供了基础

基本原理

ERC-721标准建立在以太坊智能合约技术之上,它定义了一组规则,以确保非同质化代币的发行、传输和交易的一致性和互操作性。与传统的代币标准(如ERC-20)不同,ERC-721代币具有独一无二的标识符和属性,因此每个代币都是独特的

ERC-20属于同质化代币,比如 你的 1 USDT 和 `我的 1 USDT`` 本质上是一样的价值

应用场景

  1. 数字艺术品: 艺术家可以将其作品转换为ERC-721代币,并通过智能合约确保其数字版权。
  2. 游戏物品: 游戏开发者可以使用ERC-721创建游戏中的唯一道具、角色或地图,玩家可以拥有、交易或出售这些物品。比如:加密猫
  3. 房地产和虚拟现实: 开发者可以利用ERC-721创建虚拟地产,如数字土地或建筑,从而在虚拟现实世界中实现所有权和交易。

目前来看,游戏物品是最有发展潜力的。数字艺术品房地产和虚拟现实一般需要公证机构的参与,所以有其局限性。

加密猫

定义的规则

    function balanceOf(address _owner) external view returns (uint256); // 拥有几个NFTfunction ownerOf(uint256 _tokenId) external view returns (address); // 谁拥有当前NFT(_tokenId)function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes data) external payable; // 转移NFTfunction safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; // 转移NFTfunction transferFrom(address _from, address _to, uint256 _tokenId) external payable; // 转移NFTfunction approve(address _approved, uint256 _tokenId) external payable; // 将自己的NFT授权给_approved,其可以执行转移操作function setApprovalForAll(address _operator, bool _approved) external; // 授权_approved可以转移自己所有此合约的NFTfunction getApproved(uint256 _tokenId) external view returns (address); // 检查某个NFT的转移权限function isApprovedForAll(address _owner, address _operator) external view returns (bool); // 检查_operator是否有_owner的NFT的转移权限

关注我,一起进入Web3的世界

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/756755.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【计算机网络_网络层】IP协议

文章目录 1. IP的基本概念1.1 什么是IP协议1.2 为什么要有IP协议 2. IP的协议格式3. 网段划分(重要)3.1 为什么要进行网段划分3.2 网段划分的规则3.2.1 古老的划分方案3.2.2 现代的划分方案 4. 特殊的IP地址5. 解决IP地址的数量限制问题6. 私有IP和公网I…

深入浅出Reactor和Proactor模式

Reactor模式和Proactor模式是两种常见的设计模式,用于处理事件驱动的并发编程。它们在处理IO操作时有着不同的工作方式和特点。 对于到来的IO事件(或是其他的信号/定时事件),又有两种事件处理模式: Reactor模式&…

HarmonyOS NEXT应用开发之元素超出List区域

介绍 本示例介绍在List组件内实现子组件超出容器边缘的布局样式的实现方法。 List组件clip属性默认为true,超出容器边缘的子组件会按照List的布局范围被裁剪。为此,可以在List组件内部添加一个占位的ListItem,以达到预期的布局效果。List占…

每日一题-spring中的设计模式

1、 spring中的设计模式 工厂模式(Factory Pattern):Spring使用工厂模式来创建和管理对象。通过ApplicationContext,Spring可以作为一个工厂,负责创建、初始化和返回应用程序所需的对象。 单例模式(Singlet…

【vscode 常用扩展插件】

vscode 常用扩展插件 常用插件部分插件使用技巧1、eslint 保存自动格式化2、代码片段的使用3、最后是关于引入文件路径提示的 常用插件 记录vscode方便开发的扩展插件,方便换电脑时,快速部署所需环境。 部分插件 1、Auto Close Tag html自动闭合标签插…

React——class组件中setState修改state

class组件中通过state去存储当前组件的数据,那怎么对其进行修改呢?就是方法this.setState({ 要修改的部分数据 }) setState() 作用:1 、修改 state 内容;2 、更新 UI 特别注意:react的核心其实是虚拟dom(数…

WebSocket 和SSE的区别以及优缺点

WebSocket 和 Server-Sent Events(SSE)都是用于实现服务器向客户端推送消息的技术,但它们有一些重要的区别: 1.双向 vs 单向:WebSocket 是全双工的,这意味着服务器和客户端可以同时发送和接收消息。而 SSE …

【项目实践Day06】异步请求与同步请求+Ajax+微信小程序上实现发送异步请求

什么是同步和异步 同步 在主线程上排队执行的任务,只有前一个任务执行完毕,才能继续执行下一个任务。也就是一旦调用开始,就必须等待其返回结果,程序的执行顺序和任务排列顺序一致。客户端必须等待服务器端的响应。在等待的期间客…

HTML静态网页成品作业(HTML+CSS)——宠物狗店网页(1个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有1个页面。 二、作品演示 三、代…

el-date-picker时间禁用问题

// 选择今天以及今天以后的日期 export const disabledDate (time) > {return time.getTime() > Date.now() - 8.64e6; //如果没有后面的-8.64e6就是不可以选择今天的 }设置开始时间小于结束时间(不能等于) export const disabledDate (date) …

NVIDIA NIM 提供优化的推理微服务以大规模部署 AI 模型

NVIDIA NIM 提供优化的推理微服务以大规模部署 AI 模型 生成式人工智能的采用率显着上升。 在 2022 年 OpenAI ChatGPT 推出的推动下,这项新技术在几个月内就积累了超过 1 亿用户,并推动了几乎所有行业的开发活动激增。 到 2023 年,开发人员…

Covalent Network(CQT)借助最大规模的历史与实时 Web3 数据集,推动人工智能的发展

人工智能在众多领域中增强了区块链的实用性,反之亦然,区块链确保了 AI 模型所使用的数据的来源和质量。人工智能带来的生产力提升,将与区块链系统固有的安全性和透明度融合。 Covalent Network(CQT)正位于这两项互补技…

设计模式(结构型设计模式——代理模式)

设计模式(结构型设计模式——代理模式) 代理模式 基本定义 代理模式就是给一个对象提供一个代理,并由代理对象控制对原对象的引用。在代理模式中,“第三者”代理主要是起到一个中介的作用,它连接客户端和目标对象。 …

HarmonyOS NEXT应用开发之Navigation实现多设备适配案例

介绍 在应用开发时,一个应用需要适配多终端的设备,使用Navigation的mode属性来实现一套代码,多终端适配。 效果图预览 使用说明 将程序运行在折叠屏手机或者平板上观看适配效果。 实现思路 本例涉及的关键特性和实现方案如下&#xff1a…

backtrader回测股票:突破20日均线买入,跌破20日均线卖出

数据源:akshare 回测工具:backtrader 策略:突破20日均线买入,跌破20日均线卖出 代码: from datetime import datetime import backtrader as bt #1.9.78.123 import matplotlib.pyplot as plt #3.8.3 import aks…

单片机-点亮LED灯

[2-1] 点亮一个LED_哔哩哔哩_bilibili main()程序执行结束后,单片机会再次执行main()。 不断执行P20xFE;(点亮LED灯1) #include "reg52.h"void main() {P20xFE; //1111 1110 } 只执行一次P20xFE; #include "r…

数据库只追求性能是不够的!

那些成功的数据库公司没有一家是通过性能比竞争对手更快而成功的。 作者:JORDAN TIGANI,DuckDB 公司 MotherDuck 联合创始人&CEO 本文和封面来源:https://motherduck.com/,爱可生开源社区翻译。 本文约 4500 字,预…

论文阅读之AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE

文章目录 原文链接主要内容模型图技术细节实验结果 原文链接 AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE 主要内容 这篇文章的主要内容是介绍了一种新的计算机视觉模型——Vision Transformer(ViT),这是…

【iOS ARKit】触发器与触发域

触发器 在上节的示例中,所有可见的物体都参与了物理模拟,但在一些应用中,我们物理模拟,同时又需要了解是否有物体与它们发生了碰撞。如在 AR场景中,当角色靠近一散门时,我们并不希望因为角色与门发生碰撞而…

自然语言处理学习总结

目录 1、词表示 2、语言模型(LM) 3、常用学习网址 自然语言处理 1、词表示 词表示:自然语言中最基本的语言单位表示成机器理解的方式 方式一:词与词之间的相似度 方式二:词与词之间的关系 词义的表示方法&…