区块链的交易并不是通常意义上的一手交钱,一手交货的交易,而是转账。如果每一笔转账都需要构建一笔交易数据会比较笨拙,为了使得价值易于组合与分割,比特币的交易被设计为可以纳入多个输入输出及一笔交易,可以转账给多个人。
区块链的交易流程大概分以下几步:第一步:所有者A利用他的私钥,对前一次交易(比特币来源)和下一个所有者B签署一个数字签名,将这个签名附加在这枚货币的末尾,制作出交易单,此时B就是以公钥作为接收方地址。
第二步:当一笔交易已经由某个节点或钱包产生时,这笔交易需要被传送给其他节点来验证。做法是将交易资料经由数位签章加密,并经由哈希(Hsah)函数得出一串代表此交易的唯一哈希(Hsah)值后,再将这个哈希(Hsah)值广播给比特币区块链网络中的其他参与节点进行验证。A将交易广播至全网,比特币就发送给了B,每个节点都将被收到交易信息纳入一个区块中。此时,对比B而言,该枚比特币会即时显示在比特币钱包中,但直到区块确认成功后才可以使用。目前一笔比特币支付后,得到六个区块确认之后,才能真正确认到账。
第三步:当一个节点找到解时,它就向全网广播该区块记录的所有盖时间戳交易,并由全网其他节点核对。此时,时间戳用来证实,特定区块必然于某特定时间是的确存在的。比特币网络采用从五个以上节点获取时间,然后取中间值的方式成为时间戳。
每个节点通过解一道数学难题,从而去获得创建新区块的权力,并争取得到比特币的奖励,取得验证权的节点将区块广播给所有节点,最快完成POW的节点会将自己的区块广播给其他节点,各节点验证并接上新区块,其他节点会确认这个区块所包含的交易是否有效,确认没被重复花费且具有效数位签章后,接受该区块,此时区块才正式接上区块链,无法再篡改资料。
第四步:全网其他节点核对该区块记账的正确性没有错误后,他们将在该合法区块之后竞争下一个区块,这样就形成了一个合法记账区块,每个区块的创建大约时间在十分钟,所有节点一旦接受该区块先前没算完POW工作的区块,会失效,各节点会重新建立一个区块,继续下一回POW计算工作。
这就是区块链的交易流程
#Web3小白课堂#区块链#Pickful
回覆