# BTC全节点铭刻NFT,零基础入门教程 **Published by:** [阿法狗](https://paragraph.com/@afagou/) **Published on:** 2023-03-14 **URL:** https://paragraph.com/@afagou/btc-nft ## Content 欢迎来到BTC nft的世界!随着NFT在数字艺术、游戏、音乐等领域的普及,越来越多的人开始了解和使用它。作为加密艺术品的新黑马,BTC NFT已经成为数字资产市场的热门话题。本教程将向您介绍BTC NFT的基本概念、如何创建和转移BTC NFT,以及如何保护您的数字资产。让我们一起来探索这个新兴的数字世界吧! 本文将会以个人搭建自有的本地的全节点角度出发,硬性门槛是请小伙伴准备一块1T以上的固态硬盘(1t为最佳、机械硬盘加载太慢),用于同步BTC全节点使用。一、BTCnft 铭刻相关理论知识序数理论:在比特币中,序数理论(Cardinality Theory)用于描述未被使用的交易输出(UTXO)的数量和价值。每个UTXO都代表着比特币网络上的一笔交易输出,可以被视为比特币的一个“硬币”。在比特币交易中,每次转账都需要将一个或多个UTXO合并成一个新的UTXO,以支付所需的数量。序数理论的主要原则是,合并UTXO时应该尽可能选择较小的UTXO,这样可以更有效地利用网络资源并减少交易费用。此外,为了避免交易混淆和隐私问题,应该尽量避免使用太多的UTXO。因此,序数理论建议使用较少的UTXO,并尽可能将它们合并成较大的UTXO。 序数理论也为比特币钱包的开发提供了指导。比特币钱包应该尽可能地选择较小的UTXO,并尽可能地将它们合并成较大的UTXO。这可以减少交易费用,并且可以更好地保护用户的隐私。 举个例子,假设有一笔交易,Alice向Bob转账1个比特币。这笔交易会生成一个UTXO,它的输出值是1比特币,地址为Bob的比特币地址。如果Bob想要再将这个1比特币转给Charlie,他可以引用这个UTXO作为自己新交易的输入,同时指定一个新的输出地址为Charlie的比特币地址,并设置输出值为1比特币,这样就完成了一次新的交易。此时这个UTXO就被标记为已花费,不能再被其他交易引用。铭文以及铭刻概念:在BTC NFT中,铭文是一个将特定元数据与特定UTXO关联的机制。铭文是将任意数据附加到比特币UTXO的方法,同时确保该数据的所有权可以随UTXO的所有权一起传递。这使得创造独特的NFT成为可能,因为每个NFT可以与不同的元数据关联,并被编码为不同的UTXO。 铭刻是在UTXO上创建铭文的过程。当创建新的NFT时,必须在UTXO上铭刻铭文,这样就可以将元数据与UTXO关联起来。铭刻包括将铭文数据转换为比特币脚本,以便将其添加到UTXO的解锁脚本中。铭刻后,UTXO就可以被认为是一个NFT,并且该NFT的所有权可以通过UTXO的转移来转移。(简单来说,铭刻可以理解为ETH nft的mint概念) 总之,BTC NFT的铭文和铭刻机制为创造和交易独特的NFT提供了一种去中心化的方式。它与其他NFT平台的主要区别在于,它使用比特币的UTXO作为基础,并利用比特币的强大安全性和分布式性。BTC nft的交易方法:更多详细理论知识请看BTC nft官方手册:https://docs.ordinals.com/introduction.html 话不多说,接下来进入到BTCnft的实操阶段。二、BTC全节点同步及铭刻NFT、域名实操步骤:1.BTC节点同步请先准备一个1t左右的硬盘(固态硬盘),去BitcoinCore官方网站下载对应系统版本的软件软件(必须在24.0.0版本以上)请下载对应系统版本的软件(接下来的界面截图以win11系统为例)安装到有对应空间的盘符内,软件启动后会自动同步全节点(目前数据包体积在495GB左右,加上后面需要txindex索引区块信息40GB,所以需要500GB以上的硬盘)需要同步十几年来的btc区块信息,不用加速节点至少需要连续10小时以上(千万不要用快连VPN下载,会被快连封号)下载加速方法(通过代理节点): https://docs.google.com/spreadsheets/d/1Rhz-RYpy-Q0PNyaswbs7MYD1KITh5avsYHFblmhtkLE/edit#gid=0 设置→选项→打开配置文件打开配置文件粘贴进去保存即可加速下载速度飞快为了让Bitcoin core客户端能找到全节点数据,我们还需要右键桌面快捷方式->单击"属性"。在"目标"这一栏添加上 "-datadir=E:\BitcoinData",等号后面替换成存储数据的目录 -datadir前面要留有一个空格如果无法找到路径根据下文方法2、创建BTC核心钱包:Bitcoin Core 提供比特币全节点和钱包。但是,Bitcoin Core 钱包不能创建铭文,不执行 sat 控制。所以需要ord子命令与 Bitcoin Core 钱包交互。 安装ord:https://github.com/casey/ord/releases/tag/0.5.1选择对应的系统版本安装ord下载完成后解压保存win10用户进入cmd界面(win+R输入cmd)、win11用户直接在ord文件夹内右键使用powershell进入命令控制台进入电脑指令控制台直接创建钱包会产生路径报错,原因是RPC服务器配置错误,造成的原因很多,如果不报错则后面不用填写文件路径,直接index索引同步即可在help中得到两种文件路径获取指令获取文件路径填写到ord指令台,下载好之后,我们首先通过命令行创建一个钱包,可以使用--wallet 自定义名称,否则默认名称为ord,--bitcoin-data-dir 是用于指定你全节点数据存放的目录,--cookie-file 是用于指定cookie文件的存放的路径。执行成功后就会生成一段12个单词的助记词,记得保存好。btccoin core的index索引:一开始小伙伴查询钱包余额的时候,输入wallet balance指令会报错,如图index索引没做之前都会报错打开配置文件搜索txindex删除txindex前面的#号,代表打开txindex的索引功能找到btccoin core的控制台输入getindexinfo,会从0开始同步索引,没同步完成会显示false,同步完成会显示true,同步会持续数个小时,耐心等待即可再回到指令台查询余额会自动同步不报错代表索引同步成功3、铭刻域名、NFT铭刻域名: 替换name里面的字符为自己想铭刻的域名,保存为txt格式域名格式(不需要这一行) { "p": "sns", "op": "reg", "name": "JINGOU.sats" } 检测域名网站:https://api.sats.id/names/xx.sats(替换xx文本为想铭刻的域名)sats not found则为可以铭刻,否则则是已经被铭刻了--fee-rate可以理解为eth链上的gas费,可以通过网站https://mempool.space/zh/查询此刻的各优先级的交易费用,值得注意的是,如果--fee-rate给的值是零,那么这笔交易将永远不会被矿工确认,因为矿工也是需要挣钱的~wallet inscribe 为铭刻指令,后面将保存的txt文件路径跟随即可铭刻NFT: 和域名铭刻同样的操作,只是txt文件换成想铭刻的图片即可~ 需要注意的是,图片的体积必须小,铭刻的花费和图片大小成正比,比如btc punk的单张图片体积仅为几百字节。 换算网站:https://hub.cryptocell.guru/ordinalsturbo/输入图片文件大小、--fee-rate后面给的值,判断铭刻的费用多少想要查看当前自己的交易还要排队多久,可以将上面铭刻时,输出的commit后面的字符粘贴到这个网站的搜索框中,再按回车即可。4、ord终端常用命令大全1、版本查询命令:ord --version或ord -V(大写) 例:ord -V 返回值:ord 0.5.1 2、创建钱包命令:ord wallet create(默认ord钱包), 若需要创建其他钱包则命令为:ord --wallet jingou wallet create(名称为jingou的钱包) 例:ord --wallet jingou wallet create 返回值为“12个助记词”(注:请妥善保管,后期无法查询) 3、获取钱包地址命令:ord wallet receive 例如:ord wallet receive 返回值“bc1开头的钱包地址”(注:可以使用该命令无限生成不同地址) 4、获取钱包余额:ord wallet balance 例:ord wallet balance 返回值: "cardinal": 541015(钱包余额,单位聪sats) 5、获取交易记录:ord wallet transactions 例:ord wallet transactions 返回值: "transaction": "交易哈希e8e9a41...","confirmations": 确认区块数13 6、铭刻铭文命令:ord wallet inscribe file 例:ord wallet inscribe C:\jingou.txt --fee-rate 8 返回值: "commit": "哈希f1a0cd...", "inscription": "铭文序号9558f0...", "reveal": "9558f0...", "fees": 2448(小费,单位聪sats) 7、钱包解锁命令:walletpassphrase password time(注:此命令在软件控制台运行) 例如:walletpassphrase 12345678 600(这里的600单位是秒s) 返回值:null 8、获取所有铭文命令:ord wallet inscriptions 例如:ord wallet inscriptions 返回值: "inscription": "铭文序号053d1d....", "location": "053d1d...", "explorer": "官方数据https://ordinals.c” 三、实战篇(value概念解析、部分报错问题解决)1.技巧部分增加麻雀的value值金狗社区实战项目:麻雀(https://twitter.com/PixelBirds_Net)更多项目会带着大家一起冲冲冲,加入社区和大家一起致富https://twitter.com/PixelBirds_Net 分析:ord全节点铭刻后,直接send,会将麻雀自身的value一部分当做fee消耗掉作为send费用,消耗的多少取决于你fee给的值,那么如何保持send后还有9000value,下面说下思路(闲话:其实铭刻完被官网收录,则不用在乎value,但强迫症需要呀项目方目的很明确,熊市让大家多学习,而非用别人bot,全节点文章教程看上文) 思路:配合sparrow钱包增加value值 情况1:你send的钱包地址支持导入sprrow钱包,那么直接点File-import导入即可 情况2:你send后的钱包不支持导入麻雀(常见,目前交易类平台,大部分都不支持导入),则需要先send回麻雀钱包,如果你的鸟还在ord,则移步情况1,因为ord和麻雀通用 下一步:在麻雀钱包里左边倒数第二栏,找到utxo,再找到你有麻雀铭文的那条utxo-这里可以根据Output或value值判断找到它,选中它+钱包余额的utxo-右下角send 重点来了:这里的value可以看到你目前的麻雀铭文value准确值,将其修改为10000,Payto填入bc1开头你要发送的地址,标记随便填,其他不要动,点击send,签名,输入交易密码,广播~就完成了。(重要‼看下图,一定记得btc“先进先出”原则,不然你的鸟可能就不见了)等链上确认后你会发现你的麻雀value又变回10000啦,恭喜(这也是我在社群里面说的,为什么不让大家直接用ord命令send的原因所在) 同理,此方法也适合释放value回笼余额balance,这也是你bitcoin core面板余额 和你ord 命令查询余额不同,差值在于你钱包里铭文value占用,释放即可!2.查询Bitcoin Core钱包中的UTXO(未花费的交易输出)请按照以下步骤操作: 打开Bitcoin Core钱包并等待完全同步。 点击“帮助”菜单,然后选择“调试窗口”。 在“调试窗口”中,选择“控制台”选项卡。 在控制台中,输入以下命令: listunspent 这将列出所有未花费的交易输出,包括它们的金额、交易ID和输出索引。 如果您想过滤掉一些输出,可以使用以下命令: listunspent [minconf=1] [maxconf=9999999] ["address",...] 这将列出与指定地址相关的未花费的交易输出。 例如,如果您只想查看特定地址的UTXO,您可以使用以下命令: `listunspent 则可以解决~2、部分报错问题解决问题1:fee-rate值给的太低、矿工一直不确认交易,或者是各种原因想取消交易。解决方法:指令台在交易确认前(必须在确认第一个区块前)。使用指令取消交易,得到null回复则为成功。查询指定交易的txid:输入listtransactions找到对应交易的txid,必须是内存池里未被确认的交易输入:removeprunedfunds+对应的txid,得到回复null则为成功。相关指令:查询交易txid:listtransactions 撤回txid:removeprunedfunds问题2:遇到报错output in Bitcoin Wallet but not in ord index 解决方法:指令台使用重新扫描区块指令:rescanblockchain大概耗时数小时,速度快一小时内可以搞定等待完成即可**问题3:**报错wallet contains no cardinal utxos**解决方法: **出现这种问题的可能原因有: 1、钱包没有钱。(充钱即可) 2、充值的那笔交易未被完全确认。(等待即可) 3、钱包里存在未被确认的上一笔交易。必须要等上一笔交易确认至少一个区块,则可以进行本次交易。(等待即可)**问题4:**报错wallet does not contain enough cardinal UlX0s, please add additional funds to wallet钱包余额不足,和没有utxo概念不一样,这里是没有足够的utxo**解决方法: **1.查看余额是否足够,确认余额没问题的情况下,需要看铭刻的图片或者文件的大小、太大了耗费会非常贵。换算网站:https://hub.cryptocell.guru/ordinalsturbo/。 2.回到sparrow钱包释放value值(1个铭文默认会占据钱包的10000聪值)。四、BTC NFT、域名交易方式及市场分析1、交易方式目前BTC的NFT市场还处于非常早期,现在走的第三方交易市场,大概的第三方交易方式有: ORDSWAP:https://ordswap.io Ordinals wallet : https://ordinalswallet.com 各项目官方DC频道、项目社群等。 目前交易的安全机制及第三方财富管理仍处在行业早期,可能会存在安全漏洞及各种骗局,阿法狗在这里提醒各位在交易时一定要多留心,保护好自己的宝贵财富。2、市场分析由于BTC NFT市场相对较新,且相较于以太坊NFT市场还不够成熟,因此市场波动较为剧烈。在过去的几个月中,BTC NFT市场的交易量和价格都经历了大幅度的变化。最主要的是,虽然市场才刚打开不久,但是市场的节奏非常迅速,很多优质的项目方也在BTC链上发布了自己的项目。 例如BAYC的背后母公司YUGA labs透过Ordinals发行基于比特币网络的NFT:TwelveFold。 据了解,「Ordinals」是在比特币主网打造的NFT协议,允许用户在比特币的最小单位Satoshi(SAT)上创建独一无二的NFT,于1月下旬推出后迅速爆红。 TwelveFold:Yuga Labs打造「致敬比特币」的生成艺术品与Yuga Labs以往多为头像(PFP)的NFT系列不同,TwelveFold是限量发行三百幅的生成式艺术收藏品,并且受到Ordinals协议将按造SAT被挖矿的顺序进行编号启发,Yuga Labs将为TwelveFold系列探索时间、数学和可变性之间的关系。 根据官方表示,TwelveFold每件NFT作品都是12×12网格,结合3D图形和手绘特征,由Yuga Labs的艺术团队使用3D建模、算法构造和高端渲染工具在内部制作,以致敬目前手工完成的序列号铭文。需要注意的是,要参与此次拍卖,买家将需要一个空的比特币地址来接收该NFT。因为每个比特币NFT必须在自己的交易中单独铸造,并收取自己的费用。如果用户的比特币NFT与其他比特币资产一起存储,那可能会导致用户在铸造NFT时可面临原有资产被转移的风险。3月7日上午,Yuga Labs官方发布公告称,此次TwelveFold的拍卖已经结束,前288名成功的竞标者将在一周内收到铭文。在24小时的拍卖时间里,Yuga Labs共获得了735 BTC,价值约1600万美元,最高出价者支付了16.1万美元。此次TwelveFold系列的拍卖展出了300个NFT,均通过Oedinals完成铸造发行,其中288个用于拍卖出售,预留12个作捐助、捐赠和慈善事业。我们可以预料的是,随着顶级IP在新领域探索获得的巨大成功,不管正面与负面的影响各占几成,NFT的市场在BTC链路上会以不可阻挡之势迅速扩大。 打开推特,社区全是对Yuga Labs的赞赏之词:「Yuga选择比特币作为向外扩展的第一站,为比特币NFT生态注入了一支强劲的催化剂」、「Yuga的Web3顶级IP会在任何地方受到热烈欢迎,特别是世界上最古老和最有共识的内存块链」。还有人评价TwelveFold系列「实现了巨大的财务成功,超出了原有的期待。新颖不乏概念性,美观兼具技术性。」总结:目前仍然是进入BTC nft领域的最好时机,建议各位小伙伴尽快的实操起来,争取吃到BTC nft市场达到顶峰的第一波红利。 金狗社区希望能够站在web3信息与技术的前沿不断探索进步,文章能够提供的内容存在局限性。目标是给小白提供金狗社区对于新领域的探索思路,欢迎大家进入社区和大家一起探讨,在操作过程中遇到任何问题都可以随时沟通交流。欢迎订阅我们的mirror,也欢迎加入jingou社区和我们一起玩耍,在web3共同打造我们的一方天地!Subscribehttps://discord.gg/7nkP3ZwY42 研报编辑: 阿法狗 2023.03.14(未经本人同意,研报禁止转载) 科普声明 金狗社区科普为个人调研以及与社区团队沟通所得,不构成投资建议,希望能够给不了解的小伙伴提供一些想法,希望在漫漫web3世界里,爱探索的大家能够报团取暖共同进步。 --by 阿法狗 ## Publication Information - [阿法狗](https://paragraph.com/@afagou/): Publication homepage - [All Posts](https://paragraph.com/@afagou/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@afagou): Subscribe to updates