风险提示:理性看待区块链,提高风险意识!
Blockchain区块链架构设计之一:成员管理
首页 > 币界资讯 > 区块链新闻 2016-12-07 16:10:00
币界网报道:

商业化区块链架构里成员管理服务的作用是举足轻重的。成员管理服务为整个区块链网络提供身份管理、隐私、保密和可审计的服务。成员管理服务通过公钥基础设施和去中心化共识机制使得非许可的区块链变成许可制的区块链。

blockchain

成员管理的架构设计主要参考目标如下:

1.可插拔和可复用: 例如,可以使用自己的CA生成登录凭证,但仍然使用第三方CA的交易凭证作为访问控制和确保交易的不可追溯性。 程序开发者可以选择使用所有、部分或完全不用成员管理提供的功能。

2.使用成熟技术:例如,使用CFSSL(请参阅GitHub – cloudflare/cfssl: CFSSL: CloudFlare’s PKI and TLS toolkit)可用来生成登录凭证,同时支持PKCS11和HA。

3.支持多中心化组网:网络可以有多个根CA。

4.支持标准协议: 例如,ACME协议用于发布基于服务器的证书。

为了实现这些目标,成员管理服务需要构建在可重复使用的开发语言库中。

下面展示一个典型的成员管理服务用例,它包含两个部分1)系统命令 2)API

1. MEM命令

配置MEM_HOME环境变量,默认为$ HOME / .mem。

本节分为两部分:服务器和客户端命令。

1.1 MEM服务器命令

1.1.1)mem server init

此命令将创建根MEM服务器的密钥

此命令创建以下两个文件:

a)MEM_HOME / server-cert.pem – 包含服务器的证书

b)MEM_HOME / server-key.pem – 包含服务器的私钥

1.1.2)mem server init -remote -u <user:pass>

此命令用于初始化中介成员管理服务器,强烈建议作为最佳实践, 这允许根成员管理服务器的私钥在不需要时脱机,允许撤销损坏的中间成员管理服务器的证书,并发出另一个证书,而不影响根成员管理服务器的证书。

如1.1.1中所述,这还会在MEM_HOME目录中创建server-cert.pem和server-key.pem文件。

1.1.3) mem server start -config

启动成员管理服务器

1.2 MEM 客户端命令

1.2.1) mem client enroll []

使用成员管理服务器注册客户端信息,返回此客户端(区块链节点,app)的登录凭证。

这假设通过在COP服务器的配置文件中预先注册,或者由COP注册器首先发出“hfc register”生成针对节点的(一次性密码) 。

此命令创建以下两个文件:

a)MEM_HOME / client-cert.pem – 包含客户端的证书

b)MEM_HOME / client-key.pem – 包含客户端的私钥

1.2.2) mem client register

向MEM服务器注册新客户端标识,返回一次性使用的密码。

1.2.2) mem client init manual

在节点上手动初始化成员管理服务,使用自己的CA颁发的密钥和证书时,可以使用此命令。

例如,如果使用自己的CA颁发的登录凭证,但不想使用交易凭证,可使用此命令手动初始化节点身份信息。

1.2.3) mem client submitJoinRequest

由区块链网络的成员调用另一个参与者加入区块链网络的申请请求。

例如,假设公司C1和C2已经在网络中并且C3想要加入。 C3运行“mem server init”命令来创建root.pem文件。 C3然后将此文件安全发送到C1。在这种情况下,C1充当C3的加入网络的介绍人。假设C1批准C3加入,C1调用这个“mem client submitJoinRequest”命令。同时需要C2也批准。 成员管理服务可通过智能合约通知C2,C2调用“mem client listJoinRequests” 查看谁正在请求加入的域和加入成员的证书以及批准准入的名单。基于这些要素,C2分别使用“mem client approveJoinRequest”或“mem client denyJoinRequest”来批准或拒绝加入请求。

1.2.4) mem client listJoinRequests

列出所有当前加入请求以及唯一的。

1.2.5) mem client approveJoinRequest

允许准入

1.2.6) mem client denyJoinRequest

拒绝准入

1.2.7) mem client listParticipants

列出所有区块链网络的参与者

1.2.8) mem client updateJoinPolicy { add | remove | updatePolicy }

更新准入策略,policyString可以定制各种“投票”机制

2. MEM APIs

2.1 成员组结构

成员管理服务为区块链网络维护以下层次结构:

  1. 网络具有多个参与者;
  2. 参与者可以具有多个地理位置;
  3. 同一位置可以具有多个服务器(即节点)。

它通过提供两个证书列表得到这个层次结构:消息管理服务和节点服务的证书

它同时具有从每个证书提取参与者和位置ID的规范(可配置)。

默认情况的规则是:

a)参与者ID是发行者的CN;

b)位置ID是来自证书的位置;

成员管理服务需要提供如下支持的API

1)获取节点所有参与者的列表

2)使用策略创建消息签名并收集返回结果

综上,一个好的去中心化架构它的组件也是松耦合的,如上例所述的成员管理服务,可以无缝与各种模块化的区块链框架整合,提供了极佳的便利性,同时基于成熟技术打造了安全、可控的区块链技术平台。

上一篇: 为何股票市场热爱区块链?
下一篇: “同济-苏州金融科技与大数据研究院”成立,打造金融科技行业“中国硅谷”
推荐专栏
Boss Wallet Web3 Econom Pass
专注币圈最新资讯
通俗浅显地聊透Web3大事小情
读懂区块链生态与未来,尽在币界网!
热门币种
更多
币种
美元价格
24H涨跌幅
BTC比特币
60,963.61 USDT
¥435,103.38
-2.72%
ETH以太坊
3,368.69 USDT
¥24,042.67
-0.3%
BNB币安币
570.68 USDT
¥4,073.00
-0.28%
USDT泰达币
1.02 USDT
¥7.25
-0.19%
SOL
135.96 USDT
¥970.36
+7.66%
USDC
1.00 USDT
¥7.15
-0.01%
TON
7.59 USDT
¥54.14
+4.55%
XRP瑞波币
0.47720 USDT
¥3.41
+0.48%
DOGE狗狗币
0.12210 USDT
¥0.87140
+2.43%
ADA艾达币
0.39050 USDT
¥2.79
+3.88%
热搜币种
更多
币种
美元价格
24H涨跌幅
比特币
60923.43 USDT
¥442,462.50
-1.3%
Solana
141.78 USDT
¥1,029.69
-3.98%
Curve
0.2944 USDT
¥2.14
+2.61%
Beta Finance
0.080603 USDT
¥0.59
-17.45%
Filecoin
4.5116 USDT
¥32.77
+1.23%
狗狗币
0.1252 USDT
¥0.91
+1.13%
柚子
0.5949 USDT
¥4.32
+2.27%
Conflux
0.1671 USDT
¥1.21
-0.3%
Shiba Inu
1.72E-5 USDT
¥0.00
-0.92%
Terra Classic
8.309E-5 USDT
¥0.00
-0.56%
波场
0.1228 USDT
¥0.89
+0.33%
dYdX
1.4134 USDT
¥10.26
+0.28%
最新快讯
更多
ArweaveAO:价值超4亿美元的stETH已存入AO
2024-06-28 22:55:13
美国最高法院推翻切弗伦原则,SEC不再拥有模糊法律解释权
2024-06-28 22:54:24
币界网最新行情晚报:BCH比特现金价格达393.6美元/枚,日内跌幅-3.17%
2024-06-28 22:44:04
币界网最新行情晚报:YGG价格达0.5804美元/枚,日内跌幅-3.02%
2024-06-28 22:40:33
币界网最新行情晚报:BTC比特币价格达60936.7美元/枚,日内跌幅-1.01%
2024-06-28 22:38:59
BTC跌破61000USDT,24H跌幅1.65%
2024-06-28 22:36:32
哈萨克斯坦-阿斯塔纳金融服务管理局批准Toncoin在许可平台交易
2024-06-28 22:34:02
下载币界网APP