区块链如何上链,上链成功如何操作

当前位置:首页 > NFT > 区块链如何上链,上链成功如何操作

区块链如何上链,上链成功如何操作

2022-05-07NFT83

专栏介绍:本系列文章是荷月科技在过去几年中为企业或政府提供区块链解决方案所得到的一些经验总结,也是我们在区块链技术应用这一过程中的一些思考。我们希望使用区块链技术帮助企业或政府降低信任成本,开拓新的业务机会,荷月科技是一个求真务实的团队,希望这些分享与沟通能切实的帮助企业更好的应用区块链技术。

——荷月科技 罗蔚

作者介绍:

朱天阳:荷月科技开发工程师,曾参与中国电子技术标准化研究院牵头的《中国区块链与物联网融合创新应用蓝皮书》、《区块链数据格式规范》标准、《中国区块链技术和应用发展研究报告(2018)》等行业标准及白皮书。在区块链架构,应用开发等具有丰富的经验。

正文

一笔业务数据在区块链处理的流程大致分为三个阶段:分别是上链前处理阶段、链上处理阶段和智能合约处理阶段。

一.上链前处理阶段

业务数据上链前需要将业务数据处理,并且对信息进行签名。这些过程可以通过对应的工具,比如序列化工具和各种椭圆曲线的签名工具来完成,不过更多的时候是通过将各种工具集成的SDK来完成,以太坊的web3就是比较典型的上链前处理的开发工具。

业务数据处理

业务数据可以是任意的内容,比如物流信息、商品交易或物联网设备上传的数据或者对应数据的哈希值等等。这些业务数据既可以通过服务器处理,也可通过物联网设备的边缘计算系统处理。

以存证用的物流数据举例,首先对业务数据不需要进一步处理或者简单计算一下哈希值,然后将调用函数的信息加上链数据放入交易结构体的相关部分当中即可。签名前的交易结构体是由链决定的,不过一般都包含调用的合约、时间戳、随机数和调用函数加数据的信息。将签名前的数据拼装好之后,会进一步序列化以便消息传递。

对于一些隐私交易,需要用到同态加密或者零知识证明等算法,此时业务数据则需要经过更复杂的加工过程,比如数字经过处理可以变成一个乘方求模的大数或者椭圆曲线上的点,但是拼装和序列化等过程还是相同的处理方式。

信息签名

签名前的数据处理好之后,对该数据进行一次哈希处理,并对哈希进行签名。哈希是与数据绑定的一串值,篡改信息会造成哈希值发生变化,因此本身具有防篡改的特性。接下来是对信息的哈希值进行签名。签名是一种非对称加密的方法,可以在不泄露发送者本身的私钥的情况下,通过公钥和签名信息确认发送者持有对应的私钥。对哈希进行签名还可将发送者的身份和信息绑定,同时也可防止其他人冒充发送者,因此这样处理可保证信息的防篡改的同时认证发送者的身份,防止抵赖。

业务上链前的处理阶段主要是通过工具将业务数据转换成区块链可读的方式,同时通过签名将发送者的身份和发送信息绑定,起到身份认证和防止抵赖的作用,最后再将处理好的信息发送到区块链节点。上链前处理是中心化的,这些处理过程并不涉及区块链节点,因此这一阶段并不需要节点参与。有些系统,如边缘计算系统,本身的性能和储存空间都有限,并不适合做区块链节点,但可以作为业务上链前处理的平台。

二.上链处理阶段

处理完成的数据发送到区块链节点后,就形成了一笔区块链交易并进入上链处理的阶段,链上处理大体可分为交易广播和区块共识流程。

交易广播

在收到交易后,各节点会将接收到的交易先广播到其他节点,以便形成一个统一的交易池来为达成共识做准备。交易广播后联盟链和公链对交易会有不同的处理方法。

对公链来说,任何交易发送者都可将交易发送到链上,但是处理能力不是无限的,因此会根据交易的手续费行有选择的处理,手续费低的交易很可能一直无法得到处理。在一些极端情况下,节点为了提高处理速度甚至会出现不处理任何交易的空块。对联盟链来说有一定的准入机制,能够发送交易的应该是合作伙伴,因此处理交易的原则是尽量将能够处理的交易打包进块。

区块共识

区块主要包含区块哈希、区块头和交易数据的信息,其中区块头蓑衣网小编一般都会包含共识信息、时间戳、区块高度等,并记录前一区块的哈希来指向前一区块;交易数据包含该区块里打包交易的哈希,交易需要根据统一的顺序排序;在确认区块头和哈希之后,就能计算区块哈希。这样通过前一区块哈希和自身哈希相连形成链条,修改链上的任何一个区块的内容会后面区块的前一区块哈希和修改后的哈希不同,因此区块具有防篡改的特性。只有修改该区块和往后所有区块的内容,且每个节点上都以相同方式修改才能完成修改。

共识的主要目的就是以某种约定的方式生成能够被大部分节点认可的区块。不同共识方式的区别比较大,但是基本原则就是让不同节点产生相同的区块,尽可能保证数据的一致性。

对公链来说,因为节点的通讯状况不可控,保证一直出块的情况下,如果网络出现问题,将可能无法达成一致,甚至出现分叉的情况。对联盟链来说,共识算法需要尽量使节点的区块数据保持一致性,因此在一定数量的节点出现网络问题的情况下将会停止出块。

上链处理阶段是将业务数据写入区块的过程,这个过程就是通常所说的上链,这一过程是去中心化的,需要由节点处理。在处理阶段时业务数据还是可以按照发送者的意愿写入不同内容,而进入上链阶段后的业务数据将无法篡改,不过仍然存在上链失败的可能,因此仍需要关注是否完成上链。共识阶段完成后,各节点的区块保持一致。此时的业务数据获得每个节点承认且可追溯的数据了。

三.智能合约处理阶段

上链处理完成后,业务数据已经记录在链上了,对于单纯存证的业务来说,将业务信息写入区块已经完成了这笔业务处理,只需记录存证业务的交易哈希并在取的时候通过交易哈希查询即可。但是大部分业务场景都需要进行一定的逻辑处理,因此通过智能合约处理是必须的。智能合约处理包括合约逻辑处理以及修改状态梅克尔树等流程。

合约逻辑处理

完成上链的业务数据很多情况下需要进一步进行逻辑的处理,比如一次最简单的商品的交易就涉及转账,即买家余额减少和卖家余额增加的逻辑流程,这样的流程虽然可以通过上链前的处理来完成,但是上链前处理是中心化的流程,对网络波动和可信度问题都有一定的劣势,因此通过智能合约进行逻辑处理是比较好的方式。

不同链平台对智能合约处理的方式不同,但是和一般的编程语言一样都有调用函数和传入参数的过程。并且因为创建智能合约和调用智能合约的过程都是上链的,即执行的程序和调用的函数与参数都是经过共识的,因此最终调用智能合约的数据的输出结果也是相同的。处理完后的结果会写入合约的状态数据库,这个数据库除了最新状态也会包含历史状态,方便追溯和查询。

修改状态梅克尔树

智能合约的逻辑处理完成后,会修改状态梅克尔树。梅克尔树是一个二叉树结构,不同的叶通过梅克尔树链接到根,能起到防篡改和索引的作用。通过梅克尔树的索引,能够快速定位合约的历史状态,可通过查询某个业务执行的区块高度的合约数据来获取当时的执行结果。

智能合约处理阶段是将业务数据进行逻辑处理,并记录智能合约状态的过程,这一过程也需要节点处理。如果合约逻辑处理的操作执行失败,对状态梅克尔树的修改也会撤销,合约的数据将会回滚到调用前的历史数据。需要注意的是合约调用失败和上链失败是有区别的,触发合约调用的时候交易已经在区块里留下记录,而区块是防篡改的,因此调用失败并不会擦除区块里的记录。如果交易因为数据错误或者共识问题而没有被记录进区块,则不会触发合约处理的过程。

区块链如何上链,上链成功如何操作 | 分享给朋友:

相关文章

元宇宙时代分析,创业机会及广告详解

元宇宙时代分析,创业机会及广告详解

当你花费大量时间低头沉浸于手机里的时候,是否想过已经在虚拟空间中度过了大把的时间。这是大多数高中生一年最向往的踏春之行,短暂的春游可以让他们脱离日常繁重的蓑衣网小编学习生活。绚丽的春光显然挡不住北国冬...

专访NFT(专访刘传健事件全过程)

专访NFT(专访刘传健事件全过程)

什么是NFT纳米脂肪移植? NFT : nanofat transplantation, 就是所谓自体脂肪鲜活细胞移植所添加提取的纳米成份,不明白啊 = =! NFT是做什么的?求给科普下~~...

区块链概念股票龙头有哪些,3只“大龙头”率先启动

区块链概念股票龙头有哪些,3只“大龙头”率先启动

发改委、能源局近期发布《关于开展分布式发电市场化交易试点的补充通知》,明确了参与地区最迟于今年7月前启动试点。这意味着,分布蓑衣网小编式光伏等项目运营主体(企业或个人)可实现“隔墙售电”。由于区块链技...

区块链投资分析,投资者和开发商在向何处转型

区块链投资分析,投资者和开发商在向何处转型

对于开发应用程序和加密货币的开发者来说,以太坊(ETH)曾经是所有区块链的终极目标。当然,其他公司也涌现出来与之竞争,但直到过去一年半,投资者才开始关注它们。他们的投资方向取决于项目开发者在以太坊之外...

元宇宙数字货币有哪些,流通量最高的 10 大元宇宙加密货币

元宇宙数字货币有哪些,流通量最高的 10 大元宇宙加密货币

随着加密货币市场的看跌势头,许多元宇宙加密货币目前正在出售。 一些更受投资者和交易者欢迎的选择是具有高流通量的元宇宙加密货币; 这通常意味着每种货币的单价较低,价格大幅上涨的可能性较高。 本文着眼于流...

支付宝皮肤NFT什么时候发行(支付宝皮肤NFT什么时候发行)

支付宝皮肤NFT什么时候发行(支付宝皮肤NFT什么时候发行)

支付宝失业金审核通过后多久到账 通常情况下,失业补助金申请通过之后需要一个月的时间才能到账。市社保局自受理申请之日起20个工作日内审核完毕, 市社保局自审核通过后的次月将失业补助金按月发放至失业人...

企业服务区块链平台分析,利用区块链的企业融资将成为主要服务模式

企业服务区块链平台分析,利用区块链的企业融资将成为主要服务模式

3月31日,在浙商银行(601916.SH;2016.HK)2020年度业绩发布会上,浙商银行行长徐仁艳表示,“传统信贷业务已经是片红海,浙商银行将从企业资产端入手,把企业对一部分流动性资产转换成电子...

欧易上的知名NFT(欧易上的知名NFT)

欧易上的知名NFT(欧易上的知名NFT)

什么是NFT? NET(Non-Fungible Token,非同质化数字权益证明),在区块链技术支持下可作为数字艺术品、活动门票等数字商品的链上权利凭证。 每个NFT都映射着特定区块链上的唯一序...

用NFT做头像不会被下载吗

用NFT做头像不会被下载吗

用本拉登的图片做头像犯法么???? 水印为lofter的图拿去作头像需要去授权吗? 你可以用图片处理软件(如PS软件~在百度上搜索下载安装使用)将水印去除,这样就可以无忧使用图片了!你好!...

京东大会首版NFT多少钱(京东大会首版NFT)

京东大会首版NFT多少钱(京东大会首版NFT)

京东快递股票多少钱一股 京东在美国上市,在2017年的10月24号,12点左右,京东的股价大概是38.75美金一股。可以参考下。一般情况下,起步的100元都有的,1——10倍都有出现过。暗中盘算资金...

如何将画作转为NFT(如何保存画作)

如何将画作转为NFT(如何保存画作)

d盘怎样转换成nft 也能够在网上下载的磁盘管理工具,有格式转换在命令提示符下输入:convertd:/fs:ntfs回车就能够了ps:打开命令提示符方法开始运行输入“cmd”并回车 怎么用3...

区块链100问详解,让你深入浅出全面了解区块链

区块链100问详解,让你深入浅出全面了解区块链

《区块链100问》深入浅出全面了解区块链区块链世界才刚刚萌芽,各种怪现状却层出不穷。一边如火如荼,一边一头雾水、左右彷徨;一边激情四射,一边萎靡切割、骗局不断。可能整个市场的最大疑惑还不是区块链未来会...

我们所在的宇宙是什么宇宙,宇宙是一个黑洞吗

我们所在的宇宙是什么宇宙,宇宙是一个黑洞吗

我们所在的宇宙空间实际上是一个黑洞的内部,这是黑洞宇宙模型(black hole cosmology)的观点。目前主流的宇宙学模型是大爆炸理论,此外还有很多非主流的宇宙学模型。黑洞宇宙模型就是其中之一...

区块链政策有哪些,支持、中立、禁止加密货币的国家分别有哪些

区块链政策有哪些,支持、中立、禁止加密货币的国家分别有哪些

NFT市场火爆、元宇宙概念爆发,2021年被不少人称为“NFT”和“元宇宙”元年。尽管加密货币呈现了过山车式的走势,比特币也还是创下了历史新高。此外,世界主要国家也加快了对中央银行数字货币(CBDC)...

区块链发展的三个阶段是详解,区块链技术演化三步走

区块链发展的三个阶段是详解,区块链技术演化三步走

区块链作为新一代信息技术,却尚未有相关公司申报科创板。国盛证券区块链研究院院长宋嘉吉在接受《证券日报》采访时表示蓑衣网小编,作为一种新技术,涉足区块链的要么是大型IT公司和通信公司,要么是初创型公司,...