利用区块链技术革新葡萄酒行业:我们在 Arbitrum 上构建酒庄的旅程

本文介绍了一个基于区块链的葡萄酒交易平台,旨在解决传统葡萄酒追踪系统中存在的欺诈、缺乏透明度等问题。该平台利用智能合约和NFT技术,为每一瓶葡萄酒创建一个独特的数字身份,记录其来源、所有权和交易历史,确保了葡萄酒的真实性和可追溯性。平台使用Arbitrum链降低交易成本,IPFS存储葡萄酒的元数据,并使用ERC-721标准确保NFT的独特性和互操作性。

介绍

该任务是构建一个葡萄酒庄园市场,酿酒师可以直接向收藏家和爱好者出售他们独特的葡萄酒。为了确保数据完整性和真实性,区块链被选为真实验证来源,从而保证了每款葡萄酒的信息都保持不可更改和透明

在该系统中,每一个葡萄酒批次都对应于一个单独的智能合约,该合约在区块链上充当一个 NFT 集合。该批次中的每一个瓶子都是独一无二的,并具有其以 NFT表示的数字孪生,从而确保了可验证的来源、所有权跟踪以及去中心化生态系统中的无缝交易。

该平台的操作方式与传统的在线市场相同:

  1. 买家浏览葡萄酒,选择一瓶,然后将其添加到购物车中。
  2. 完成付款后,葡萄酒将被准备好运送给买家。
  3. 同时,在区块链上,代表该瓶葡萄酒的 NFT 从酿酒师转移到买家,从而反映了现实世界中的交易。

酿酒师(卖家)和客户(买家)都需要拥有一个加密钱包才能与系统进行交互。 在铸造期间,NFT(代表瓶子)最初是分配给酿酒师的。 发生购买时,酿酒师将 NFT 的所有权转移给买家,从而确保透明度、信任和可验证的所有权历史记录。

传统葡萄酒追踪的挑战以及区块链为何能改变游戏规则

传统系统中,真实验证来源将存储在葡萄酒庄园市场网络门户的中心化数据库中。 但是,由于该市场是新的,因此它缺乏既定的声誉,从而使投资者和收藏家难以信任所提供的信息。 数据可能会被更改、删除或操纵,从而引起对真实性和可靠性的担忧。

此外,传统的市场容易受到以下因素的影响:

· 欺诈和伪造:中心化系统可能会被操纵,从而导致虚假的葡萄酒清单或更改的所有权记录。

· 缺乏透明度:买家必须信任市场的内部记录,这些记录可能会被更改或隐藏。

· 过度生产问题:买家可能不相信酿酒师在一个批次中发行的瓶数正好是声明的数量,而不多发,这可能会稀释葡萄酒的稀有性和价值。

· 丢失历史所有权记录:在传统系统中,几乎不可能证明某个特定的瓶子曾经由名人、知名收藏家或著名的机构拥有。 但是,借助区块链,所有权历史记录会被永久记录并公开验证。 如果一个稀有的葡萄酒瓶之前由名人拥有,则这种来源证明可以显着提高其在二级市场中的价值。

区块链如何解决这些问题

通过利用区块链,我们创建了一个防篡改、透明和去中心化的系统,其中:

每个葡萄酒批次都永久记录在智能合约上,从而确保其真实性。

每个瓶子都有一个数字孪生(NFT),从而使所有者可以证明来源并验证所有权。

所有交易(铸造、销售和开启)都记录在链上,从而几乎不可能进行欺诈。

安全性是内置的,因为区块链的加密机制可以防止黑客攻击和数据篡改。

通过采用区块链,葡萄酒庄园市场可以从即时信誉、投资者信心和防欺诈基础设施中受益,从而为优质葡萄酒行业的信任树立了新的标准。

用例

用例:创建葡萄酒系列

1. 酿酒师登录并连接钱包

  • 酿酒师登录到葡萄酒庄园市场并连接他们的加密钱包
  • 系统存储酿酒师的钱包地址,以供将来交互。

2. 酿酒师创建葡萄酒系列(批次)

  • 酿酒师提供葡萄酒批次的基本详细信息,包括:名称、描述和最大瓶数、瓶子图像和 OpenSea 横幅图像、智能合约名称和合约符号
  • 市场处理此请求以创建新的葡萄酒系列

3. 在 IPFS 上生成和存储元数据

  • 创建一个合约元数据 JSON,其中包含:名称、描述、瓶子图像、OpenSea 横幅、指向网络市场页面的链接
  • 此元数据已上传到 IPFS(星际文件系统)以进行去中心化存储。
  • IPFS 返回一个 CID(内容标识符),形成 contractURI(例如,ipfs://<CID>)。

4. 在区块链上部署智能合约

  • 市场部署智能合约,使用:合约名称和符号、最大瓶数(以定义 NFT 集合大小)、contractURI(指向 IPFS 元数据)、contractSourceAbi(确保合约符合预期的标准)
  • 区块链返回一个合约地址,代表此特定的葡萄酒批次。
  • 此合约地址存储在市场数据库中,从而将葡萄酒系列链接到其区块链记录。

5. 智能合约验证

  • 部署后,系统通过执行 verifyContract 操作来验证智能合约。
  • 验证过程检查:合约名称、符号、最大瓶数、contractURI(确保元数据完整性)、contractSource(确保合约逻辑与已部署的版本匹配)
  • 此验证确保合约是真实的、透明的且可在区块链浏览器上查看

用例:购买一瓶葡萄酒

买家流程

1. 身份验证和钱包连接

  • 买家登录或注册到 Web 市场
  • 他们连接他们的加密钱包,这会将他们的钱包地址链接到他们的市场资料。

2. 选择和支付瓶子

  • 买家将一个葡萄酒瓶添加到购物车并继续付款。
  • 付款包括代表该瓶子的特定 NFT 的 token ID

3. 酿酒师通知

  • 市场通知酿酒师有关购买请求。

2. 酿酒师流程

1. 身份验证和钱包连接

  • 酿酒师登录到 Web 市场并连接他们的加密钱包

2. 批准销售

  • 酿酒师通过指定 token ID 和买家的 ID 来批准瓶的销售。

3. 创建和上传元数据 (TokenURI)

  • 市场生成一个 JSON 文件,其中包含:葡萄酒名称描述,u nique 瓶子标识符、瓶子图像所有权历史记录(例如,“Sold from A to B”)
  • 此 JSON 文件已上传到 IPFS,从而生成 CID(内容标识符)
  • 市场将 TokenURI 设置为指向 IPFS 链接。

4. 铸造和转移 NFT

  • 市场与 Blockchain 交互以 mint NFT,使用:合约地址买家的钱包地址tokenIDtokenURI合约源 ABI
  • 区块链更新 NFT 的所有权,将其转移到 买家的钱包

3. 货运流程

  • Web 市场 通知 Shop(履行服务)以交付实物瓶子。
  • 商店将瓶子运送到买家提供的地址。

用例:开启一瓶葡萄酒

1. 买家操作

1. 物理开启瓶子

  • 买家开启葡萄酒瓶。
  • 扫描软木塞下的 QR 码以验证瓶子的真伪。

2. 注册开启的瓶子

  • 买家从 QR 将 集合 IDtoken IDsecret code 提交到 Web 市场
  • 市场验证请求并确认瓶子已开启。

3. 撰写评论

  • 市场提供特定于集合的评论表单
  • 买家提交葡萄酒的评论和评分

4. 连接钱包

  • 买家连接他们的加密钱包以验证和签署瓶子开启事件。

2. 更新区块链上的元数据

1. 为开启的瓶子创建新的 TokenURI

  • 市场生成一个 新的 JSON 文件,其中包含:葡萄酒名称描述tokenId瓶子图像活动日志(例如,“由 A 在 YYYYMMDD 上开启”)
  • 此元数据已上传到 IPFS,从而生成 CID(内容标识符)
  • 市场将新的 TokenURI 设置为引用 IPFS 链接。

2. 更新区块链

  • 区块链更新 TokenURI 以反映开启状态。
  • NFT 被销毁,从而确保无法转售瓶子,从而增强真实性。

3. 可选:专家评论更新

  • 如果用户具有专家角色,则市场会在买家输入后更新专家评分和评论

用例:将评论和分数保存到集合中

  1. 评论准备情况检查
  • Web 市场验证葡萄酒系列是否存在至少 5 个专家评论
  • 如果满足条件,则会通知酿酒师评论已准备好发布。

2. 酿酒师身份验证和发布

  • 酿酒师登录并连接他们的钱包。
  • Web 市场酿酒师的钱包建立连接以验证交易。
  • 酿酒师确认专家评论和分数的发布。

3. 评论数据的创建和存储

  • Web 市场编译评论详细信息,包括:集合 名称描述、瓶子图像、openSea 横幅图像、指向网络市场上瓶子页面的链接。
  • 此数据以 JSON 格式存储并上传到 IPFS
  • IPFS 返回一个 内容标识符 (CID),从而生成一个唯一的 reviewAndScoreURI (ipfs://<CID>)。

4. 区块链存储

  • Web 市场调用 Blockchain 以在 智能合约中存储 reviewAndScoreURI
  • 这可以确保专家评论永久链接到集合,并且可以通过区块链浏览器和 OpenSea 访问。

用例:检索瓶子信息

1. 运送瓶子

  • Shop 将购买的葡萄酒瓶运送给买家
  • 瓶子附带一个 QR 码,可以扫描该代码以进行来源和真实性检查。

2. 检索葡萄酒瓶详细信息

1. 买家扫描 QR 码

  • 买家扫描瓶子上的 QR 码以检索数字记录。

2. 从 Web 市场获取瓶子数据

  • 买家向 Web 市场 发送包含 集合 IDToken ID 的请求。
  • Web 市场返回 以下详细信息:
  • 评论和分数 — 汇总的消费者和专家评分。
  • Arbiscan URL — 指向智能合约区块链记录的直接链接。
  • OpenSea URL — 用于查看所有权历史记录和交易的市场链接。

技术实现原则

葡萄酒庄园市场的技术基础旨在确保效率、可扩展性和可访问性,同时降低用户的成本。 以下是构成该项目的关键技术选择。

区块链:Arbitrum

为了部署智能合约和管理 NFT 交易,我们选择了 Arbitrum,它是 以太坊的Layer2扩展解决方案。 选择此项的原因包括:

更低的交易成本 — 与以太坊Layer1相比,Arbitrum 显着降低了 Gas 费用,从而使酿酒师和买家更容易承担费用。

以太坊兼容性 — 由于 Arbitrum 构建在以太坊上,因此它支持 ERC-721 NFT、智能合约和现有的基于以太坊的工具。

采用和开发者生态系统 — Arbitrum 在区块链领域中得到广泛使用,从而更容易找到经验丰富的开发者。

钱包兼容性 — 像 MetaMask 这样的流行钱包可以与 Arbitrum 无缝协作,从而确保了流畅的用户体验。

OpenSea 上的原生 NFT 表示以太坊和 Arbitrum NFT 都受到 OpenSea(最大的 NFT 市场)的原生支持。 这使得买家和收藏家可以轻松地跟踪、交易和验证葡萄酒瓶 NFT 的所有权,而无需额外的集成工作。

IPFS:Pinata

为了在保持去中心化的同时处理 链下数据存储,我们使用了 Pinata 的 IPFS 服务。 IPFS(星际文件系统)是一种分布式存储网络,允许以防篡改和去中心化的方式存储文件。

为什么选择 Pinata?

  • 可靠的 IPFS 托管 — 确保元数据的长期可用性。
  • 经济高效的存储 — 与直接在区块链上存储大型文件相比,降低了 Gas 费用。
  • 不可变和去中心化 — 存储在 IPFS 上的文件无法修改或删除,从而确保了透明度。
  • 久经考验的稳定性 — 最初,我们尝试了 Web3.Storage,但元数据无法永久访问,从而导致 OpenSea 上的渲染出现问题。 Pinata 提供了更稳定和可靠的解决方案。

我们在 IPFS 上存储什么?

  • NFT 元数据(名称、描述、瓶子详细信息和历史记录)。
  • 指向瓶子图像的端点(链接),而不是将实际图像存储在链上。
  • 所有权活动日志(例如,何时开启或销售瓶子)。

NFT 的元数据(包括 IPFS 链接)存储在链上,从而确保即使市场离线,买家仍然可以验证葡萄酒的真实性和历史记录。

智能合约:Solidity 上的 ERC-721

葡萄酒庄园市场的智能合约是用 Solidity 编写的,并且遵循 ERC-721 标准,从而确保:

  • 唯一性 — 每个瓶子 NFT 都有一个不同的 token ID
  • 所有权跟踪 — 支持 铸造、转移和销毁
  • 互操作性 — 适用于像 OpenSea 这样的 NFT 市场以及其他区块链应用程序。

每个 葡萄酒批次都由一个单独的 ERC-721 合约表示,该集合中的所有瓶子都链接在同一合约下。

为了 触发智能合约方法,我们使用了 Ethers.js,这是一个流行的 JavaScript 库,用于与以太坊兼容的区块链进行交互。 这允许直接从前端无缝执行 NFT 的铸造、转移和销毁

开发环境

对于智能合约开发,我们使用了 Remix,这是一个基于 Web 的 IDE,针对 Solidity 智能合约进行了优化,允许:

实时合约测试 和调试

与 Arbitrum 和以太坊测试网易于集成

直接部署智能合约并与其交互

测试

为了确保我们的智能合约和区块链交互的稳健性和安全性,我们将 Arbitrum Sepolia 测试网MetaMask 结合使用。

  • Arbitrum Sepolia — 一个Layer2测试网,允许我们在移动到主网之前以最低的成本部署和测试合约。
  • MetaMask — 用于模拟真实的用户交互,包括钱包连接、交易和 NFT 转移。

Hardhat — 用于概念验证 (PoC) 脚本编写,允许我们在受控环境中自动执行合约部署、测试和交互。 它不用于生产环境。

局限性

1. 单瓶交易和可扩展性

  • 当前系统专为单个瓶子而设计,这意味着批次应保持相对较小。 如果有销售瓶子包装的业务需求,则必须考虑区块链的局限性。 虽然可以在一种方法中触发多个 changeTokenUrichangeOwnership 操作,但是由于块大小限制,超过 10 个操作 可能会导致交易失败。 一种潜在的解决方法是以块的形式处理操作,但这会使实现复杂化:酿酒师需要多次批准区块链操作。 这会增加 Gas 费用,并导致次优的 UI 体验。 在 Web 市场中存储私钥可以自动执行此过程,但会带来严重的安全风险。

2. OpenSea 上的元数据更新延迟

  • 在区块链更新后,OpenSea 并非总是及时刷新元数据。 当在单个调用中执行 updateTokenUri(添加用户 A 开启瓶子的记录)和 burnNFT 时,遇到了一个问题 — OpenSea 未能反映上次更新。 作为一种解决方法,这些操作被分成两个单独的调用,从而确保在销毁 NFT 之前更新元数据。

3. 在市场之外转移 NFT

  • 可以通过 加密钱包或 OpenSea 在用户之间转移 NFT,从而绕过 Web 市场。 在这种情况下,物理瓶子及其数字孪生可能不再匹配,从而导致潜在的差异。 业务请求者认为这是次要风险,因为瓶子的所有者有动力维护其资产的完整性。 未经授权的转移可能会降低瓶子的感知价值,从而阻止了此类行为。

最终演示

为了说明我们基于区块链的真实性系统的实际应用,我们构建了一个工作原型,该原型已应用于不同的用例。 虽然原始项目是为葡萄酒庄园开发的,但我们为古董收藏品创建了一个促销演示,以展示实际应用中的相同核心技术。

网站界面

我们的网络市场使用户可以使用区块链和 NFT 来验证、购买和跟踪独特的收藏品。 以下是如何列出 antique Zurich Zodiac Clock(古董苏黎世十二宫钟)的一个示例,其元数据存储在 IPFS 上,所有权记录在 Arbitrum 上:

🔗 查看演示市场页面

Arbiscan 上的区块链交易

每个项目的历史都以不可变的方式记录在区块链上。 可以公开验证铸造、所有权转移和元数据更新等交易。

🔗 在 Arbiscan 上查看区块链记录

OpenSea 上的 NFT 表示

由于我们的系统遵循 ERC-721 标准,因此每个项目在 OpenSea 上都表示为 NFT。 这可以确保透明的所有权跟踪和可验证的真实性。

🔗 在 OpenSea 上查看 NFT

宣传视频

为了更好地说明这个概念,我们创建了一个宣传视频,其中包含古董收藏品用例。 虽然演示围绕古董展开,但相同的技术可以无缝地应用于葡萄酒验证和其他奢侈品。

8 subscribers

[MastermindCMS - Web3 Marketplace](https://www.youtube.com/watch?v=jhX7QUUsHkc)

BloodyEnterprise

  • 原文链接: medium.com/@yukoros.msm/...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
yukoros.msm
yukoros.msm
江湖只有他的大名,没有他的介绍。