不明显的变化导致不同的令牌

问题描述

我的问题与创建 NTF 的铸造过程有关。

我可能错了,但标记函数可以比作散列函数 将媒体作为输入 和 输出令牌。

是的,这实际上已经是一个问题,否则主要问题可能没有意义。

假设与散列函数的比较是有意义的,而忘记了冲突,让我们假设以下场景: 我创建了一个数字艺术作品和相关的 NFT。它以某种方式出版和销售(希望 :D)。

想象一下,XYZW 先生是一位从 NFT 获得巨额收入的知名数字艺术家,他看到我的作品,不知何故他喜欢它,但 还认为如果例如颜色简单地反转,艺术品会更好看。这里我只提到其中之一 他可以做的可能的改变,重点是这些改变很容易被人眼察觉,但对于分词器来说则不然, 这最终会清楚地创建一个不同的令牌。

现在问题应该清楚了。

如果我说的有道理,通常是如何解决的? 如果没有,请帮助我理解。

谢谢

解决方法

令牌化函数可以比作一个散列函数,它将媒体作为输入并输出令牌

这是一个错误的假设。

您可以将 NFT 集合(至少按照最广泛使用的标准 - ERC-721)与键值字典进行比较,其中键是整数 ID,值是 URL。该标准定义 URL 应指向包含令牌名称、描述和图像 URL 的 JSON。

但是没有散列函数可以根据图像计算令牌参数。


每个集合(持有多个 NFT)都是部署在不同地址(例如 0x12345)上的智能合约。此外,其集合中的每个 NFT 都有一个唯一 ID(例如 1)。

集合地址和代币 ID 的组合可以用作每个 NFT 的唯一标识符(例如 0x12345 / 1)。

从技术上讲,多个不同的 NFT(无论它们是在相同的还是不同的集合中)都可能导致非常相似的图像甚至相同的图像。但是集合地址和代币ID的组合总是唯一的。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...