Sui在设计底层技术时考虑到了密码学的灵活性。该系统支持多种密码算法和?cryptographyprimitives,并可以在它们之间快速切换。开发人员不仅可以为系统选择同类最佳的?best-of-breedcryptography,还可以实施最新的?algorithms。
Sui在一个统一的类型别名或整个存储库共享的枚举包装器下定义其?cryptographyprimitives,例如公钥、签名、聚合签名和哈希函数。对这些原语进行更改会影响应用程序的所有组件。开发人员可以快速更新应用程序密码并确保统一的安全性。
目前?Sui通过执行交易端点支持以下用户交易签名方案:
1.PureEd?25519?
2.Secp?256?k?1ECDSA
用户账户密钥对的接口实现
下面是Sui中密钥对表示的?Demo。扩展到新的签名方案非常简单:
基于OP Stack构建的实验性Rollup框架Keystone已开源:6月1日消息,基于 OP Stack 构建的实验性 Rollup 框架 Keystone 已开源,Keystone 内置实体组件系统,游戏逻辑用 Go 语言编写,ECS 执行速度可以并行,此外 Solidity 智能合约可以通过预编译函数与底层 ECS 状态进行交互,包括获取和设置数据。[2023/6/1 11:51:48]
1.把它添加到enum
2.实现?fastcrypto?库中定义的KeyPairtrait
用户签名通过扩展一个额外的1字节标志来序列化,该标志标识关联的签名方案。尽管?Sui?团队考虑过使用?Multiformats,但其可变标志长度的性质使得序列化存在问题。相反,Sui?采用了单字节零起始标志模型。签名方案及其对应的标志定义如下:
当用户提交签名交易时,交易执行指定以下参数:
Vtrading与新火科技旗下MPC自托管平台Sinohope达成合作:5月17日消息,新火科技旗下MPC自托管平台Sinohope宣布正式与数字资产AI量化服务平台Vtrading达成合作协议,双方将围绕虚拟资产安全及合规托管技术进行深度沟通与密切合作。
作为新火科技新近推出的重点产品,Sinohope平台通过采用 MPC-CMP 技术支持用户分布式管理私钥分片与协同签名解决私钥单点风险,有效增加透明性和易用性。
Vtrading数字资产AI量化服务平台致力以丰富量化策略满足用户多元化需求,一键API授权即可开启量化交易。[2023/5/17 15:09:02]
BSC序列化?transactionbytes为?Base?64??
Signatureschemeflag,可以传参为“ed?25519?”或“secp?256?k?1?”
公钥的?Base?64?格式
Lido以太坊质押数量突破500万枚ETH,价值超80亿美元:金色财经报道,据 Lido 官方网站数据显示,通过该平台的以太坊质押量已经突破 500 万枚 ETH,截至目前达到 5,000,550 ETH,价值约合 8,090,663,184 美元,APR 为 4.9%,已支付奖励触及 224,738 ETH,约合 363,616,237 美元。在其他代币质押方面,Solana 当前质押总量为 2,364,169 SOL(约合 58,111,254 美元)、Polygon 为 65,588,684 MATIC(约合 76,738,760 美元)、Polkadot 为 2,568,097 DOT(约合 16,902,198 美元)。[2023/1/30 11:35:36]
其?scheme?对应的签名的?Base?64?
如下代码是执行已签名的交易,curl如果成功则返回证书和交易结果。
超过37%的企业表示他们目前正在使用区块链和加密货币进行跨境交易:金色财经报道,根据PYMNTS和Algorand 合作的“Blockchain Payments Tracker”,超过 37% 的企业表示他们目前正在使用区块链和加密货币进行跨境交易。此外,另外 13% 的受访企业表示,他们希望为此目的使用加密货币。总共有 50% 的公司目前使用或希望使用区块链和加密货币进行跨境支付。[2022/7/14 2:13:14]
如下代码展示了Sui的全节点如何将API请求字段组装成序列化签名?flag||signature||pubkey?并在执行前进行验证检查。
Sui?支持不同的签名方案的缘由剖析
使用secp?256?k?1椭圆曲线的ECDSA被比特币、以太坊和其他加密货币广泛采用。用户可能更喜欢这种签名方案,因为他们想利用现有的钱包和托管密钥管理工具,例如阈值签名和多签。此外,它与云基础设施和硬件安全模块具有更好的兼容性,同时支持从消息和签名负载中恢复公钥。
美联储前主席伯南克:比特币主要用于地下经济进行非法活动:金色财经报道,前美联储主席伯南克在接受CBNC采访时分享了他对比特币和其他加密货币的看法。伯南克称,作为投机资产,它们已经取得了成功。然而,他指出,它们的目的是替代法定货币,并补充说在这方面,它们没有成功。
伯南克补充到:如果比特币是法定货币的替代品,你可以用你的比特币去需要的杂货。但没有人用比特币购买杂货,因为它太贵而且太不方便了。此外,杂货的价格就比特币而言,每天都有很大的变化,因此也没有稳定性。伯南克认为,比特币的主要用途大多是用于地下经济活动,而且往往是非法或不合法的。(bitcoin.com)[2022/5/17 3:21:43]
同时,Ed?25519是一种更现代的签名方案,具有确定性快速签名和简化数学的特点。虽然TypescriptSDK支持这两种签名方案。但是?Sui?还是选择Ed?25519作为推荐的Sui钱包算法。
因为?Sui支持不同签名方案,在后面使用?secp?256?r?1?曲线添加诸如ECDSA之类的方案将花费很少的精力,这条曲线目前是原生手机和未来密码学中都要支持的一条曲线,也是目前社区一个普遍要求的功能。
对这种灵活的签名方案支持还使Sui系统与不安全的空签名方案进行基准测试。对于像Sui这样的快速执行系统,并行设计签名和验证也发生在事务级别,而不仅仅是区块层,加密灵活性让?SuiCheck?出加密操作给系统带来的开销。这些基准测试结果已经能够为?Sui?提供识别瓶颈和优化方向。
授权密钥对
AuthorityonSui持有三个不同的密钥对:
Protocolkeypair协议密钥对
Accountkeypair帐户密钥对
Networkkeypair网络密钥对
Protocolkeypair协议密钥对
如果用户签名的交易经过验证,协议密钥对会提供授权签名。当为用户交易提供签名的权力机构的占比超过所需的三分之二门槛时,Sui将执行交易。目前选择BLS?12381方案来快速验证给定数量的授权机构的聚合签名。特别是决定使用minSigBLS模式,根据该模式,每个单独的公钥为96字节,而签名为48字节。后者很重要,因为通常验证者在每个纪元开始时注册一次他们的密钥,然后他们不断地签署交易;因此?Sui?优化了最小签名大小。
注意!使用BLS方案,可以聚合独立签名,从而产生单个BLS签名有效负载。Sui?还将聚合签名与bitmap一起表示签名的验证器。这有效地将当局的签名大小从(?2?f1)×BLS_sig?大小减少到只有一个?BLS_sig?有效负载,这反过来具有网络开销优势,可以独立于验证器集大小的压缩交易证书。
密钥材料类型别名集中在整个存储库使用的单个位置。事实上,仅通过?changingthealias(更改别名)就将协议密钥的Sui从Ed?25519切换到了BLS?12381?。
为了解决BLS?12381聚合签名的潜在恶意密钥攻击,在权限注册期间使用密钥知识证明(?KOSK)。当授权机构请求添加到验证器集时,将提交并验证所有权证明。校验协议密钥?kosk||protocolpublickey||suiaddress。与大多数标准不同,Sui?的知识证明方案也提交到地址,这提供了额外的保护,防止来自另一个恶意验证器的验证器的?BLS?密钥被恶意重用。
聚合签名在两种情况下很有用:
当仲裁驱动程序从多个授权机构返回的?SignedTransaction?形成?CertifiedTransaction?时
当权限形成?SignedCheckpointSummary?时,每个权限都会对检查点内容进行签名
Accountkeypair帐户密钥对
监管机构用来接收质押奖励付款的账户由账户密钥对保护,使用Ed?25519作为签名方案。
Networkkeypair网络密钥对
私钥用于执行?QUIC?对?Narwhalprimary及其worker网络接口所需的?TLS?握手。公钥用于验证节点ID,Ed?25519用作签名方案。
哈希和编码灵活性
目前,Sui的默认哈希函数是sha?3256?,正在运行基准测试以与sha?256和blake?2/blake?3系列进行比较。为了支持编码灵活性,Base?64?和?Hex?在?fastcrypto?中定义了一个编码特性,作为一个包装器base?64?ct::Base?64?和hex及其定制的序列化和验证。值得注意的是,选择了base?64?ct?crate而不是最流行的base?64Rustcrate,因为a)它是恒定时间b)明确拒绝损坏的编码以防止解码时的延展性攻击。Sui?的研究团队成员最近报告了大多数base?64解码器库中令人惊讶的延展性问题,获得了AsiaCCS2022最佳?Poster?奖,这是密码学和安全领域的重要会议之一。
下面的代码片段显示了如何在?fastcrypto?中实现包装器结构:
加密灵活性顺应密码学趋势
凭借在密钥对、签名和哈希函数方面的加密的灵活性,Sui在库选择、基础签名方案、编码和哈希函数方面非常便捷。这不仅允许Sui在库有发现漏洞或某种方案有?bug?的情况下快速升级,还允许根据选择的?cryptographyprimitives作为参数对整个系统进行基准测试。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。