Concordium区块链的了解和节点运行
Posted 寒星
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Concordium区块链的了解和节点运行相关的知识,希望对你有一定的参考价值。
区块链如何赋能?
区块链本质上是一种公开账本,基于计算机运算程序,会记录在该区块链上进行的所有交易信息。区块链赋能经济,主要是降低5个方面的成本:
1.降低信用建立成本。即在信息不对称、不确定的环境下,建立满足各种活动赖以发生、发展的“信任”生态体系。
2.降低信用传递成本。区块链去中心化特征对于去除中间方、降低信用传递成本、降低对社会资源浪费具有重大意义。
3.降低监管审计成本。传统交易市场信息披露、审计和监管成本高昂,运营区块链和人工智能可以迅速完成,极大提高生产效率。
4.降低协议联通成本。互联网公司API接口不同,联通耗时,区块链可以建立数据的总线,对接统一接口,有效降低联通成本。
5.降低组织管理成本。联盟链运营区块链解决组织和管理问题,通过区块链进行投票和共同记录,联通数据孤岛,形成更加扁平化的治理管理结构。
当前区块链主要分为两大阵型:公链和联盟链(私有链不考虑的话)。其中,比特币,以太坊等知名公链引领着整个区块链发展,而联盟链目前市场效用尚不明朗。
因此,本文中,我们主要聚焦在公链上。
强匿名的应用局限性
目前而然,市场上绝大部分的公链都是以纯粹去中心化为核心思想来设计,例如比特币,以太坊,波卡等等。在这种类型的公链世界里,我们的行为全被转化成为一个账户地址的行为,并且账户地址和真人没有任何挂钩,是故任何人无法从账户地址倒推出背后操作者的真实身份。
这种纯粹理想主义的公链天然保护着使用者的匿名性(隐私),在要求强匿名的业务里,这些公链能提供很好的服务。
然而强匿名的业务场景,在普通老百姓的生活中,其实占据的比例微乎其微。普通老百姓的日常衣食住行(等消费行为)占据市场经济的大部分,是故,一条公链的大规模应用的必定要努力渗透到老百姓的生活方方面面中。值得注意的是,普通老百姓的日常衣食住行(等消费行为)都并非强匿名的场景。
在普通老百姓的世界里,99.99%的业务来往都是基于对权威的信任。例如电子商务,网购并不是银货对付的商业行为,老百姓之所以敢先付款(未收到货),或者卖家之所以敢先发货(未收款),都是出于对平台的信任,对平台对商店的审核(营业执照等)的信任,而这些信任之根在于平台(营业执照等)也是经过国家认证,归根到底还是权威机构。
可见,普通老百姓的信任,都是基于“看得见,摸得着”的基本形式,显然,强匿名,对普通老百姓而言,并非强需求。
不过这里值得注意的是,强匿名虽然不是老百姓衣食住行的强需求,可是强隐私是老百姓的强需求。大家别混淆“强隐私”和“强匿名”,后者只是前者的特性之一而已。老百姓需要强饮食,而不一定强匿名。
市场需要监管
区块链天然带着"去中心化"的基因,很多理想主义者都寄托区块链来"去中介化","去权威化",他们追求纯粹自由市场。然而历史事实告诉我们,纯粹自由市场从来不理性。没有权威参与的市场对老百姓更多的是伤害。市场需要正义权威的干预和引导。老百姓的衣食住行市场需要正义权威的牢牢把关,即市场离不开权威机构的监管。
权威机构对市场的监管,需要将奖惩政策落实到市场的具体参与者实体(个人或企业)上。要达到这个目标,必须得定位到具体责任人。具体责任人需要市场赋予唯一ID(身份证),就如我们个人有身份证,企业需要执照。
推导脉络很清晰了:区块链赋能市场,基于区块链的市场需要监管,监管需要定位到具体参与者,实施定位需要参与者ID。
交易实时&低成本
区块链赋能经济,是毫无疑问的大趋势。未来区块链必定渗透老百姓衣食住行。当前老百姓的衣食住行中,主要以法币作为一般等价物。作为一般等价物的法币的一个最重要特点是价值稳定性。法币的价值稳定性是保护老百姓财富、维护市场稳定的重要基础之一,法币的价值短时间大波动,会严重影响物价,造成社会动荡。
区块链的共识需要代币经济激励,同时代币作为交易燃料(如矿工费用)。从比特币、以太坊的代币历史价格可以看到巨大的波动性,其次,其网络极其缓慢拥堵。故,基于比特币以太坊之上的市场,其代币根本无法作为老百姓衣食住行的一般等价物。基于区块链的老百姓衣食住行级别的市场,必须支持交易实时、代币稳定。
基于上述的讲述,我们可以发现纯粹追求强匿名的公链,纯粹去权威监管的公链,其实极难融入老百姓衣食住行中而实现大规模应用。比特币以太坊等有名公链,目前而然都是基于这种纯粹愿景中,目前比特币以太坊在老百姓生活里的应用极少,其强匿名&无监管&高成本的特性让之更多用于那些灰黑产业(暗网等)。
然而,区块链赋能经济,是毫无疑问的大趋势。那么怎样的区块链才能真正快速应用到老百姓衣食住行市场中?
带着这个问题,我们可以关注下Concordium区块链项目。
Concordium是什么?
Concordim是专为企业打造、以隐私为中心的公共无权限区块链。
Concordium平台由Concordium基金会维护,这是一个在瑞士设立的非营利性实体, 由Concordium AG(瑞士的一家软件公司)制定并实施,其研发队伍是由最好的密码学者、计算机科学家和研究人员组成。
Concordium的愿景是成为引领全球的监管合规区块链。它本质是一个透明统一的通用计算机并在协议层建立身份ID,为贸易、IOT数据分享、存储等等场景提供了安全和价格合理的服务。与此同时,它还解决了经典区块链的爆弱点和经典区块链上常见的非兼容法规的加密货币问题。Concordium通过GTU(全称Global Transaction Unit)token来确保网络参与者得到对应付出的奖励。GTU可以用来支付智能合约的执行,用户交易和作为价值存储。
官网:https://concordium.com/,有兴趣的读者可以深入了解。
github:https://github.com/Concordium
Concordium的新颖点
隐私和用户身份验证&&设计合规性
Concordium有一个创造性的身份层,实现了匿名性和责任性之间以当地合规性为中心的平衡。所有用户参与链上活动都必须申请一个唯一的身份ID,但身份ID在链上都是不可识别的,但是,如果政府机构通过可信渠道提出有效请求,则可以更改并披露其身份。
固定的交易成本
Concordium允许其用户提前获得有关交易成本的信息,它采用了一种创新的价格稳定技术,以确保交易成本是固定的,尽管加密市场上的GTU可能存在波动。
快速事务处理和全球规模的高吞吐量
在Concordium平台上构建一个安全的区块链既简单又便宜。它为行业、国家或人们提供了一种通过平台内独特分片机制来开发个人区块链的方法。其次,Concordium开发了一个安全的终结层,运行在中本风格的区块链之上,从而使交易速度令人满意。该策略的发展速度非常快,可以满足全球任何投资应用程序的需求。
额外地,Concordium开发了两种编程技术—Midlang和Retlang—使智能合约更易于制定,传输更为可靠。Concordium还具有新颖的互操作性设计,使平台能够向其他链和实体发送经验证的信息,而无需接收者操作平台。
以上关于Concordium的描述,可以初步判断出,Concordium的确比比特币、以太坊等公链更具备抢先渗透到老百姓衣食住行经济的巨大潜力。
运行Concordium节点
在本指南中,您将学习如何在计算机上运行参与 Concordium 网络的节点。这意味着您将从其他节点接收块和交易,并将有关块和交易的信息传播到 Concordium 网络中的其他节点。遵循本指南后,您将能够
1.运行一个 Concordium 节点
2.在网络仪表板上观察它
3.直接从您的机器查询 Concordium 区块链的状态。
您不需要帐户即可运行节点。
在你开始之前
在运行 Concordium 节点之前,您需要
1. 安装并运行 Docker。
在Linux上,允许 Docker 以非 root用户身份运行。
2. 下载并解压 :ref:concordium-node-and-client-download
软件。
从早期版本的Open Testnet升级
要将当前Concordium软件升级到用于Open Testnet 4,请执行以下操作:
1. 请按照上述步骤操作,以 :ref:download<downloads>
下载最新的Concordium软件。
2.从解压缩的存档中运行 concordium-node-reset-data 可执行文件。
2.1对于Mac用户:第一次打开该工具时,右键单击该 concordium-node-reset-data 文件,然后选择 “打开” 。将会出现一条消息,说明该软件来自一个身份不明的开发商。再次选择 “打开” 。
2.2对于Windows用户:第一次打开该工具时,双击该 concordium-node-reset-data 文件。将会出现一条消息,说明该软件来自一个身份不明的开发商。选择 更多信息→仍然运行。
该工具将询问:
您还想删除已保存的密钥吗?
为先前版本创建的帐户在Open Testnet 3上不再有效, 因此,如果您存储了先前版本的帐户,我们建议输入y,这将删除所有帐户密钥。
运行节点
要开始运行将加入Open Testnet的客户端的话,请按照下列步骤操作:
1.从解压缩的存档中打开 concordium-node 可执行文件。
2.对于Mac用户:第一次打开该工具时,右键单击 concordium-node 二进制文件,然后选择 “打开” 。将会出现一条消息,说明该软件来自一个身份不明的开发商。 再次选择 “打开” 。
3. 对于Windows用户:第一次打开该工具时,双击 concordium-node 二进制文件。将会出现一条消息,说明该软件来自一个身份不明的开发商。选择 更多信息→仍然运行。
当重新启动一个节点考虑使用 --no-block-state-import 选项。这将仅下载 在节点处于非活动状态时 产生的对 Concordium 区块链的更新(新区块) ,这有可能加快启动过程。
输入节点的名称。此名称将显示在公共仪表板中。
如果该工具已经启动,则在启动之前将询问您是否要删除本地节点数据库。按y将删除并随后重新创建保存在计算机上的 Concordium 区块链状态信息。 请注意,删除本地节点数据库意味着您的节点要花更多的时间才能(同步)追赶上当前Concordium网络 。
该工具现在将下载 Concordium Client 镜像(image)并将其加载到Docker中。客户端将启动并开始输出有关节点操作的日志记录信息。
在仪表板上看到您的节点
运行后, concordium-node 您可以
1. 在网络仪表板上查看您的节点
2. :ref:query<testnet-query-node>
里有关区块,交易和账户的信息可供查阅
网络仪表板
客户端(节点)需要一段时间才能赶上 Concordium 区块链的状态(即同步到最新区块高度)。因为这个过程会下载有关链中所有块的信息。
另外,您可以在 Network Dashboard 上了解你的节点追上链还需要多长时间。您可以比较你本地节点的 Length (收到节点块数)和在仪表板的顶部显示 Chain Len (网络中最长链的区块个数)。
启用入站连接
如果在防火墙后或家庭路由器后运行节点,则可能只能连接到其他节点,但其他节点将无法启动与该节点的连接。不过这样您的节点也是可以完全参与到Concordium网络中,能够发送交易,而且如果配置成 :ref:if so configured<become-a-baker-zh>
的话,也可以进行烘烤(bake)和终结确认(finalize)交易。
但是,如果通过启用入站连接,则您还可以使节点成为更好的网络参与者。默认情况下, concordium-node 在端口上侦听 8888 入站连接。根据您的网络和平台配置,您可能需要将外部端口转发到 8888 路由器上,或者在防火墙中打开它,或者同时使用这两者。具体操作方式取决于您的配置。
配置端口
节点侦听四个端口,可以通过在启动节点时提供适当的命令行参数来进行配置。节点使用的端口如下:
8888,用于点对点网络的端口,可以使用 --listen-node-port
8082,中间件使用的端口,可以使用 --listen-middleware-port
10000,gRPC端口,可以使用 --listen-grpc-port
在docker容器更改上方的端口映射时,必须停止( :ref:stop-a-node-zh
),重置后重新启动。如果要重置容器,请在终端执行 concordium-node-reset-data 或 docker rm concordium-client 在终端中运行。
我们强烈建议您的防火墙应该被配置为只允许在端口8888的公共连接(对等网络的网络端口),因为有权访问其他端口的人可能可以控制(攻击)您的节点或您在该节点上保存的帐户。
停止节点
要停止该节点,请按 CTRL+c ,然后等待该节点关闭直至完毕。
如果您在不显式关闭客户端的情况下意外关闭了窗口,它将在Docker中继续在后台运行。对于这种情况,请在终端执行 concordium-node-stop 二进制文件,方式类似 concordium-node 。
以上是关于Concordium区块链的了解和节点运行的主要内容,如果未能解决你的问题,请参考以下文章