区块见闻 区块见闻
Ctrl+D收藏区块见闻

Substrate账户设计:如何保证资金的安全?

作者:

时间:

Substrate 使用多组公/私钥对来代表网络的参与者。

区块链系统的参与者角色各异,例如从验证人到普通用户。

举个例子,Substrate 节点使用 “提名权益证明”(NPoS)算法来选择验证人。验证人和提名人可能拥有大量资金,因此 Substrate 的 Stake 模块引入了帐户抽象,以帮助确保资金的尽可能安全。

这些抽象账户是:

存储密钥(Stash keys): 存储账户的作用是持有大量资金。它的私钥应该存放在冷钱包中,保证尽可能安全。

控制密钥(Controller keys): 控制帐户代表存储帐户作出选择,例如付款偏好,但应仅持有少量资金来支付交易费用。它的私钥应该保持安全,因为其会影响验证人设置,但私钥会在维护验证人时定期使用。

会话密钥(Session keys): 会话密钥是保存在验证人客户端中的 “热” 密钥,用于签署某些验证人操作。他们不应该持有资金。

一个密钥对可以代表一个账户并控制资金,就像你在其他区块链中看到的普通账户一样。在 Substrate Balances 模块的语境下,这些帐户必须具有最小金额(“现有存款”)才能存在于存储中。

帐户密钥是通用化定义的,并在 runtime 中具体化。

继续我们存储和控制帐户的例子,这些帐户的密钥通过其预期用途进行区分,而不是通过任何底层的加密学差异进行区分。创建存储或控制密钥时,还支持普通帐户密钥支持的所有加密。

Avalanche链上DeFi协议总锁仓量为107.2亿美元:金色财经消息,据DefiLlama数据显示,目前Avalanche链上DeFi协议总锁仓量为107.2亿美元,24小时减少1.18%。锁仓资产排名前五分别为AAVE(14.2亿美元)、Curve(13.2亿美元)、TraderJoe(10.9亿美元)、Benqi(10亿美元)、Platypus Finance(7.94亿美元)。[2022/4/23 14:43:45]

存储密钥(Stash keys)是定义存储帐户的公/私钥对。该帐户就像一个 “储蓄帐户”,因为您不应经常使用该帐户进行交易。因此,应以最高安全性来对待其私钥,例如在安全或硬件安全层中进行保护。

由于存储密钥保持离线状态,因此它将指定一个控制帐户以利用存储帐户资金的权重做出非支出决策。它还可以指定一个代理帐户来代表其投票参与治理。

控制密钥(Controller keys)是定义控制帐户的公/私钥对。在 Substrate 的 NPoS 模型语境中,控制密钥将表示一个人想要验证或提名的意图。

控制密钥用于设置诸如奖励接收地址之类的偏好,对于验证人来说还用于设置其会话密钥。控制帐户只需要支付交易费用,因此只需要很少的资金。

控制密钥永远不能用于从其存储帐户花费资金。但是,控制密钥的行为可能会导致 slash,因此仍应妥善保管。

会话密钥(Session keys)是验证人用来签署与共识相关的消息的 “热密钥”。它的本意不是控制资金的帐户密钥,而应该仅用于其本来的目的。它们可以定期更改;您的控制账户仅需要通过签名会话公钥来创建证书,然后通过外部信息广播该证书。会话密钥也是通用定义,并在 runtime 中具体化。

要创建会话密钥,验证人的操作者必须证明密钥代表其存储帐户(stake)和提名人。为此,他们通过使用其控制密钥对密钥进行签名来创建证书。然后,他们通过在链上的事务中发布会话证书来通知链此密钥代表其控制密钥。

Substrate 提供了 Session module,该模块允许验证人管理其会话密钥。

你可以声明任意数量的会话密钥。例如,默认的 Substrate 节点就用了三个:BABE、GRANDPA 和 “I'm Online”。其他链可能有更多或更少的会话密钥,具体取决于链希望其验证人执行的操作。

这些不同的会话密钥可以使用相同的密码学,但是在整个 runtime 逻辑中,其用途完全不同。为了防止将错误的密钥用于错误的操作,Rust 强类型会包装这些密钥,使它们彼此不兼容,并确保仅将它们用于原有目的。

如果会话密钥被泄露,攻击者可能会犯下造成 Slash 的行为。会话密钥应定期(例如每个会话)通过 the `rotate_keys` RPC 更改,以提高安全性。

了解更多 Substrate 中使用的密码学。

学习创建本地网络和生成密钥的教程。

Staking module: https://substrate.dev/rustdocs/v2.0.0-rc5/pallet_staking/index.html

Balances 模块: https://substrate.dev/rustdocs/v2.0.0-rc5/pallet_balances/index.html

Session module: https://substrate.dev/rustdocs/v2.0.0-rc5/pallet_session/index.html

the rotate_keys RPC: https://substrate.dev/rustdocs/v2.0.0-rc5/sc_rpc/author/trait.AuthorApi.html#tymethod.rotate_keys

Substrate 中使用的密码学: https://substrate.dev/docs/en/knowledgebase/advanced/cryptography

创建本地网络和生成密钥的教程: https://substrate.dev/docs/en/tutorials/start-a-private-network/

session keys runtime API: https://substrate.dev/rustdocs/v2.0.0-rc5/sp_session/trait.SessionKeys.html

Substrate 节点 runtime 中的会话密钥: https://substrate.dev/rustdocs/v2.0.0-rc5/node_runtime/struct.SessionKeys.html

substrate_application_crypto: https://substrate.dev/rustdocs/v2.0.0-rc5/sp_application_crypto/index.html

标签:TRASTRTRATSTRATAstra Guild VenturesSTRONG价格TratinStratis

以太坊交易所热门资讯
矿工是如何盈利的?

比特币挖矿经济是由无数彼此竞争来保障网络安全的特定应用计算机形成的,其中可以提炼出一个输入三角:收入、运营成本与资本开支。 结合内部收益率 (IRR)、净现值 (NPV)、投资回报率 (ROI)和投资回收期等指标,我们可以利用这三大数据得出对矿工盈利能力的看法。

Upbit黑客如何使用加密货币交易所数百万?

2019年,黑客在攻击中窃取了价值2.83亿美元的加密货币。在这次攻击中,黑客还成功锁定了Upbit交易所。在本文中,我们将分析Upbit黑客攻击行为,并使用Coinpath?API跟踪被盗的加密货币。 Coinpath?API为超过24个区块链提供区块链资金流分析。

金色前哨 | Filecoin 大矿工测试再推迟:大矿工习惯了 小矿工情绪很Down

毫无悬念,Filecoin 大矿工测试又一次推迟了。 8月11日,Filecoin开发者Why在Slack社区表示,因为目前矿工们遇到大量问题没有解决,目前还没有计划开始大矿工测试。是否开始太空竞赛取决于Calibration测试网以及矿工们的整体状况。

币本位合约大升级遇见牛市大行情 合约赚币正当时

众所周知,牛市和币本位合约更配!用户在收获合约盈利的同时还能享受币价上涨带来的收益。 从7月底,BTC开始起舞,从9100点一路旋转、跳跃、不停歇,8月10日成功站上了12000点!8月12日58COIN的币本位合约全新升级,总计上线了十个功能迭代,让您的操作更加便捷、快人一步抓住行情! 本次升级是币本位合约自2018年5月上线以来首次全面升级,新增了。

1分钟暴跌99% DeFi宠儿YAM夭折记

昨天凌晨3点,名叫YAM的DeFi项目出现了,其价格短暂上升至200美元之后,便一直维持在109美元,资金池抵押资金数量高达6亿美元。 今天,YAM单价从109美元跌到0.9美元,跌幅超过98%,资金池缩水到2.8亿美元。 云泥之变,只发生在36个小时之内,准确的说,是发生在8月13日16点的一个小时之内。 从惊喜到哀嚎,只在一瞬之间,恍然如梦。

价格跌了 币也莫名变少?为什么钱包里的AMPL数量每天都在变?

上周,矿矿在微博上分享了“亏了又亏,亏上加亏”是什么样的体验,讲述用 ETH 兑换时下非常热门的 DeFi 代币 AMPL 后,遇上 ETH 上涨、AMPL 价格腰斩并数量通缩的“戴维斯三杀”故事。 很多人看到微博后,纷纷私信矿矿,说自己钱包里的 AMPL 也变少了,而且数量每天都在变,非常奇怪。 其实完全不必大惊小怪,AMPL 的数量就是每天变化的。