全部项目

Supply Chain Tracker

大学项目 · 2025
时间段
2025
技术
Node.js · Express · Solidity · ERC-1155 · MongoDB · IPFS
Supply Chain Tracker — 概念插图 · 不涉及真实货运或账本
概念示意图 · 不涉及真实货运或账本

项目起点

在硕士论文中,我构建了一个用于追踪批次历史的原型。我希望在批次拆分、转移或合并后,仍能追溯其来源及相关证明文件。

问题与决策

从批次到代币

我使用 ERC-1155 表示批次,并通过 API 实现转移、拆分和合并。

数据分离与比较

公开元数据存储在 IPFS 上。MongoDB 存储聚合数据,供查询使用。我加入了区块链、IPFS 与 MongoDB 之间的一致性检查,以识别同一批次在不同数据表示之间的差异。

密钥与责任追溯

在原型中,后端使用测试密钥签名。在投入实际使用之前,密钥管理和参与方之间的双重签名仍需进一步完善。

运作方式

  1. 基于 Node.js 和 Express 的后端通过 REST API 提供批次创建、转移、拆分、合并和转换功能。
  2. Solidity ERC-1155 合约在 Ethereum 上表示批次及其所有权。Ethers.js 将应用操作与区块链连接起来。
  3. IPFS 存储公开的元数据和附件。MongoDB 支持对批次历史记录及其关联关系进行聚合查询。
  4. 污染传播通过 BFS 遍历图。污染状态与批次的生命周期保持独立。

下载关于可追溯性的硕士毕业论文(PDF) 意大利语 · 3.0 MB

我的收获

对批次拆分和转换进行建模,让我学会了先定义关系,再选择存储方式。区分原始记录与用于查询的数据,也有助于我进行系统集成。

当前状态

硕士论文原型,使用 Ganache 和测试密钥在本地 Ethereum 网络上进行测试。

来源

有个有趣的问题?

告诉我你想构建或改进什么、谁会使用,以及有哪些约束条件。我会回复你,一起确定从哪里开始。