我是区块链技术的新手,我想从产品认证开始我的项目。我很好奇它是否是一个好选择。
例如,假设我得到了一些真实的物理产品,我想检查它们的独创性。他们获得了唯一的序列号或附加的电子标识符(例如RFID)。
根据这个简单的python区块链:https://medium.com/crypto-currently/lets-build-the-tiniest-blockchain-e70965a248b
在块类中
class Block:
def __init__(self, index, timestamp, data, previous_hash):
self.index = index
self.timestamp = timestamp
self.data = data
self.previous_hash = previous_hash
self.hash = self.hash_block()
我们将在每次扫描某些产品(例如通过电话)时创建一个新块。那么数据中应该包含什么信息?产品名称,序列号,操作类型?
一开始,在创建所有产品之后,将对每个人进行初始扫描。因此,例如,对于100个最初的初始产品及其扫描,区块链中将有100个区块。
身份验证过程如何在这里进行?是否可以扫描某些产品(其ID)并使用此区块链数据库来确保其原始产品?在那种情况下该技术有用吗?
答案 0 :(得分:1)
是的,用例实际上是一个非常标准的用例。供应链管理行业中有许多此类用途的示例。例如Everledger验证钻石碎片及其来源。
身份验证过程如何在这里进行?有没有办法扫描 一些产品(其ID)并使用此区块链数据库来确保 它原来的一个?在那种情况下该技术有用吗?
我认为您应该将其称为产品(来源)验证。只要您抽象出区块链技术本身,它就非常简单。这就是我抽象出区块链技术的意思-将区块链视为一个不变的分类帐(数据库),数据可以在其中插入一次,但是永远不能从中间更改或删除,您可以随时从中读取。
仅假设有一种区块链技术(我将在最后添加有关区块链的详细信息。)现在,根据定义,您始终可以向其中添加数据,在这种情况下,还可以添加一些跟踪号/ QR / ID等。当您必须验证产品时,必须确保条目在相应产品的区块链中存在。就那么简单。是的,这是区块链最著名的用例之一,尤其是在具有多个系统与同一个数据库交互的共享数据生态系统中。
您所指的文章是从程序员的角度对区块链的非常简单的解释。阻止时间,阻止频率都是随不同用例而变化的变量。我建议您研究已经成熟的区块链技术并进行部署,并专注于您的用例。您可以将Ethereum技术用作本地节点。然后,您可以使用web3.py
(一个非常成熟的Python库)与您的区块链进行交互。或者,您可以简单地使用分布式分类帐,Hyperledger Projects就是一个例子,甚至更简单(我认为更好)BigchainDB。借助所有这些技术,您可以在区块链上存储任何您喜欢的信息。