钱包开发工程师应该掌握的知识

  • Dapplink
  • 更新于 2024-04-27 21:56
  • 阅读 1787

钱包开发工程师应该掌握的知识

钱包是区块链的入口,不管是交易所,还是去中心化的应用,钱包都做为一个基础的功能而存在;我们都知道,钱包分为中心化钱包,去中心化钱包(含 AA 钱包和社交恢复钱包),硬件钱包和托管钱包(包含多签钱包和 MPC 钱包);四种钱包的区别主要是私钥的管理方式不一样。

中心化钱包钱包一般供给交易所使用,将完整的私钥加密之后管理在中心化的环境中,常见的管理方式有 TEE, KMS 和 CloadHSM。

去中心化钱包私钥加密之后存储在用户设备中,一般钱包私钥丢失无法找回。社交恢复钱包分为两种,密钥分片备份和守护者恢复,密钥分片技术是将用户的私钥使用门限共享秘密算法将私钥分成 N 片加密之后分发给不同的朋友存储到设备中,一旦密钥丢失,通过社交加验证的方式从朋友哪里获取 M 个密钥分片,使用 N-M(密钥拆分成 N 分,拿大其中 M 份可以恢复出完整的密钥) 逆门限共享秘密算法恢复出完整的私钥。守护者社交恢复主要是针对 EVM 系列的社交恢复钱包,由一个合约来管理整个钱包,一旦密钥丢失,发起社交恢复,由多个守护者签名一笔交易进行钱包合约的私钥替换,完成恢复的过程。

硬件钱包主要是把私钥管理在离线的硬件设备中,在硬件设备中集成钱包签名算法。

托管钱包有两种,团队资金共管钱包,一般使用多签钱包;EVM 链比较成熟的方案是 gnosis 多签,其他链还是使用多签算法实现;企业资管一般使用 MPC 钱包,MPC 是资管解决方案里面用得最多的密码学算法,运行 N 个 MPC 节点,节点之间通过多轮交互之后生成密钥片,节点与节点之间互相不知道对方生成的密钥片是什么,当需要发交易时,只需要其中 M 个节点签名交易就有效。

上面说了这么多,如果想找一份还不错的钱包开发的工作,您应该掌握哪些知识呢?我们将在下面做详细的探讨。

1.密码学算法基础

  • 公钥密码学基础
  • DES 算法深入
  • RSA, GPG, ECDSA 和 EDDSA 算法深入
  • BLS 算法深入
  • 单向函数算法深入
  • 门限共享密码算法深入
  • MPC 算法深入

2. 通信协议

  • 蓝牙通信协议
  • 串口通信协议
  • NFC 通信协议
  • P2P 通信协议

3. 离线签名(含硬件钱包)

  • 主流公链的交易签名前后数据组织编码细节与代码实现
  • Tee, Kms 和 CloadHSM 等集成环境的密钥对生成和签名调度
  • 通过各种通信协议调度硬件生成密钥对和交易签名等

4. 中心化钱包

  • 主流公链 RPC 接口,能快速组织接口扫链支持钱包出入金
  • 充值,提现,归集,热转冷,冷转热和链路风控等钱包业务流程

5. 去中心化钱包(含硬件钱包)

  • 熟悉 BIP 协议簇
  • 能快速组织主流公链 RPC 接口支持钱包转账,交易记录等
  • 钱包和主流 Dapp 交互过程开发(Dapp 浏览器)

6. 托管钱包

  • Gnosis Safe 多签钱包流程
  • MPC 底层算法实现机制
  • 使用 MPC 开发托管钱包

7. 推荐学习社区

以上两个教程目前在完善中,欢迎大家参与共建......

点赞 2
收藏 3
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Dapplink
Dapplink
0xBdcb...f214
首个模块化、可组合的Layer3协议。