冰焱空投笔记第3篇:BTC网络钱包Ordinals的NFT铸造以及操作指南 - Mrbing - Medium
April 3rd, 2023

以下文章内容,我以BTC的 “ . stats ” 域名的铸造为例,带大家走一遍完整的 BTC NFT 铸造流程。以下内容请按照流程操作:

以下内容请按照步骤进行操作!

钱包创建:

打开下方的链接创建属于自己的BTC钱包;

(一定要记住自己的助记词和私钥否则钱包将无法找回)

钱包地址:站点入口

以上图为标准

1、导入btc钱包

2、创建btc钱包

接下来我们以创建新钱包为例;

到这里钱包就创建好了.

然后我们就需要往钱包里冲BTC;

(按照你参与项目所需要的费用进行充值)

按照上图所示点击接收,然后复制钱包地址到交易所提取BTC到钱包中

在交易所提取BTC时请注意选择闪电网络或者是比特币网络

NFT创建:

nft 常用网址:

  1. https://ordinalsbot.com/
  2. https://gamma.io/
  3. https://unisat.io/inscribe

在 BTC 链上铸造 NFT 不叫 Mint,叫 Inscribe,铭刻的意思。不过在 ETH 市场大家已经很熟悉 Mint 了,所以下面我还是会用 Mint 来指代铸造这个过程。

目前最好用的 Mint 工具目前就是上面3个,下面我来以 Gamma 为例,带大家铸造一个 .sats 域名。

想创建域名首先我们要知道这个域名有没有被占用

复制下方的代码按照要求操作即可;

字母域名;

  • 以下是简单代码,可以直接运行。
  • 它的规则是找到所有3字母的域名,如果你要调整规则,简单修改代码即可。
const letters = [
  "n",
  "a",
  "s",
  "d",
  "t",
  "i",
  "c",
  "o",
  "e",
  "m",
  "p",
  "b",
  "x",
  "q",
  "z",
  "f",
  "g",
  "h",
  "j",
  "k",
  "l",
  "r",
  "u",
  "v",
  "w",
  "y",
];

const urls = [];

// 生成所有可能的 URL
letters.forEach((l1) => {
  letters.forEach((l2) => {
    letters.forEach((l3) => {
      const url = `https://api.sats.id/names/${l1}${l2}${l3}.sats`;
      urls.push(url);
    });
  });
});

// 随机排序 URL 数组
urls.sort(() => Math.random() - 0.5);

// 发送请求的函数
const fetchUrl = async (url) => {
  try {
    const response = await fetch(url);
    const text = await response.text();
    if (text.includes(".sats not found")) {
      console.log(`找到了:${url}`);
    }
  } catch (error) {
    // 忽略错误
  }
};

// 并发发起请求
const concurrency = 20;
let index = 0;

const interval = setInterval(() => {
  for (let i = 0; i < concurrency; i++) {
    const url = urls[index];
    fetchUrl(url);
    index++;
    if (index >= urls.length) {
      clearInterval(interval);
      break;
    }
  }
}, 1000);

数字域名;

以下只是代码示意,无法直接运行。

你需要自行编辑,才能使其在自己的电脑上运行。

// 定义接口地址
const apiUrl = "https://api.sats.id/names/";

// 定义循环延迟时间(单位:毫秒)
const delay = 1000;

// 生成随机不重复数字的函数
function getRandomNumbers(count, min, max) {
  if (count > max - min + 1) {
    throw new Error("不能生成足够的不重复数字");
  }

  const numbers = new Set();
  while (numbers.size < count) {
    numbers.add(Math.floor(Math.random() * (max - min + 1)) + min);
  }

  return [...numbers];
}

// 定义循环函数
function loop(numbers, index) {
  const number = numbers[index];

  // 构造接口地址
  const url = apiUrl + number + ".sats";

  // 调用接口
  fetch(url)
    .then(response => response.text())
    .then(data => {
      // 判断返回内容是否包含指定字符串
      if (data.includes(".sats not found")) {
        console.log("找到了:" + url);
      }
    })
    .catch(error => {
      console.log("请求出错:" + url);
    })
    .finally(() => {
      // 延迟1秒后执行下一次循环
      if (index < numbers.length - 1) {
        setTimeout(() => loop(numbers, index + 1), delay);
      }
    });
}

// 生成随机不重复数字
const numbers = getRandomNumbers(9999, 1, 9999);

// 启动循环
loop(numbers, 0);

复制上方数字域名或者字母域名的代码;

打开网址:

找到该网页空白位置 — — 右键单击 — — 找打 Inspect(检查)点击

运行这些 JS 脚本很容易,你只要在自己的浏览器任意位置点击 Inspect(检查),并在 Console(控制台)复制/粘贴代码就可以。符合条件的域名会自动提示你。

找打上图中的可用域名复制,在新的浏览器中打开

假设如下图所示那么该域名已被占用,不可使用

假设如下图所示那么该域名未被占用,可使用

确定好需要创建的域名以后,我们继续往下

接下来创建.sats 打开下方链接;

复制上图中的文案.

然后打开下方链接:

上图中TEXT点开,把上面复制的内容粘贴进去;

粘贴完以后按照下图标准修改;

选择相对应的GAS,费用的高低决定了确认的速度!

填写Ord钱包的收币地址以及你的邮箱

咱们回到钱包界面;

到这里.sats 域名已经创建完成,等待链上数据确认即可。

常用的 BTC NFT 工具网址收集

下面是BTC网络基础知识:

关于闪电网络、Taproot 和 Ordinals 协议

闪电网络(Lightning Network)

闪电网络是一种基于比特币技术的二层协议,可以加快交易速度和扩展性。它通过创建多个支付通道,使用户能够实时、高效、低成本地进行点对点交易,从而避免了需要等待矿工验证和打包的过程。这种网络类似于数字钱包,用户可以在其中创建支付通道并存入比特币,在通道内与其他用户进行交易,这些交易不需要写入区块链。当用户关闭支付通道并提取比特币时,最终余额将被写入区块链。

Taproot 地址

Taproot 是比特币网络的一种新型地址格式,是最新的升级方案之一。它采用了一种新的地址编码方式,可以提供更好的隐私、安全和可扩展性。Taproot 地址可以隐藏多个公钥或脚本,使得交易只展示最终使用的公钥或脚本,保护了用户隐私;它还可以被用于多种不同的交易类型,并且使用 Taproot 地址的交易规模通常比传统的交易规模要小,从而降低了交易费用。另外,Taproot 地址还可以减少脚本的使用,降低区块链大小和交易的复杂性,提高比特币网络的可扩展性。

Ordinals 协议

这其实是 Casey Rodarmor 创办的,使用序数理论来标记和跟踪“注册”,即嵌入在区块链中的数据/内容:

序数是定义系列中位置的任何数字(例如,第一,第二,第三)。在比特币的情况下,Ordinal 是一个特定 Satoshi 的未使用交易输出(UTXO),其中包含一个包含内容(例如文本、图像或 MP3)的“注册”。已注册的 Satoshi 被设置为特殊交易,以便用户可以识别和跟踪它们。

事实上,这个解决方案早在2012年就在比特币论坛上提出了。Ordinals NFT 有一个有趣的点,它们不使用比特币的 OP_RETURN 字段。这个命令允许用户在链上提交任意数据。

Taproot 也很关键,它放宽了这些要求,完全取消了数据限制,因此理论上你可以铸造一个占据整个区块数据空间的4MB 大小的 NFT。

冰焱推特:https://twitter.com/mrbing2016

本文摘自王一石大佬,稍作修改!

Subscribe to wowto
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.
More from wowto

Skeleton

Skeleton

Skeleton