【開發】一个让Chia 獲得更多硬體錢包支持的途徑

admin
admin
管理员
135
文章
0
粉丝
硬體錢包百科评论阅读模式

天,我成功地用我的 LedgerTrezorTangem 卡簽署了 Chia 交易。操作方法如下。

Chia 社区成员一直在呼吁得到 Ledger 硬體錢包的支持。话虽如此,制作 Ledger 应用程式并不容易。据我所知,编碼部分本身就很困难,而且Ledger的記憶體空间有限 —— (Ledger Nano X 有 2 MB 的存儲空间,官方称足以支撑“最多 100 个应用程式”) —— 而且其计算能力非常有限。在这些限制下,构建一个可以解析 Chia 交易的应用程式甚至是不可能的 —— 我们甚至还没有考慮诸如应用程式验證要求、熒屏尺寸有限以及獲得新原语支持可能延遲等問题。

如果開發Ledger应用程式如此困难,為什么不寻找其他途徑呢?要了解这是如何實现的,我们首先需要退一步并討論流行的以太坊标准坊。

当在加密货幣中說“簽名”时,他们通常指的是簽署交易。但支持区块链的加密原语通常允許人们簽署*任何*資料。在某些时候,一些网站/dApp開始要求用户参与链下指定訊息簽名或用于登錄(即證明用户擁有地址),或者稍后在链上提交给客製化合約。

然而,有一个大問题:用户不知道他们所簽署的是什么。他们只有最終的哈希值——無法判斷他们是在登錄网站还是在允許恶意行為者在另一个 dApp 上盗取他们的所有資金。簽名请求如下所示:

以太坊EIP-712之前的簽名请求,圖片来自 ‘Motivation’ section of the EIP-712 specificationhttps://eips.ethereum.org/EIPS/eip-712)。

EIP -712(以太坊改进提案712)标准旨在解决这个問题,它指定了一种將格式化資料轉换為哈希值进行簽名的方法。然后,网站可以將格式化資料传递给錢包,將錢包进行解析用户顯示更習慣的请求:

EIP-712簽名请求,圖片来自 ‘Motivation’ section of the EIP-712 specification‘。

目前大多數錢包都支持 EIP-712 标准(包括硬體錢包),因此这是一个值得探索的有趣途徑。Chia 錢包可以提示用户簽署一条訊息来“證明”,他们想要以特定方式使用一枚硬幣(Coin)。事實上,我上周五使用了演示拼圖来验證此类訊息的簽名。以下是我的 Tangem 应用程式中的簽名请求:

使用请求所需的簽名。请注意,请求包含模擬網路的創世挑戰(“Salt”)、Coin ID 和委托谜题哈希值。
这个谜题(Puzzle)是為了替代标准谜题而制作的——这意味着硬體錢包应该能够承载Chia区块链原生的 CATNFTDID 以及我们發明的任何其他原语。由于 EIP-712 得到了广泛的支持,这种方法允許將 Chia 与几乎所有支持以太坊和 EIP-712 的錢包集成。
CHIPS(CHia改进提案)
Chia采用EIP-712时存在一个關键缺陷:以太坊使用 keccak256 EIP-712的資料进行哈希處理,而Chia依賴 sha256。keccak256運算符目前在chialisp中不可用。
值得慶幸的是,有一个流程可以添加新的運算:CHia 改进提案 (CHIP)。社区成员可以提出标准或運營變更,这些提案会在审核阶段結束。一些提案最終被撤回(例如提出最低交易費的提案:https://github.com/Chia-Network/chips/pull/13),而其他提案则透過(例如定義資料層标准升級的提案:https://github.com/Chia-Network/chips/blob/main/CHIPs/chip-0035.md)獲得。
經过我的请求,keccak256 的運算现在有了一个相關联的CHIP(https://github.com/Chia-Network/chips/pull/131) ,最終会將其添加到chialisp。
下一步是什么
现在我们有了明确的例子,keccak256 CHIP將全速推进。由于它是一个新的運算操作,因此需要等待“软分叉(Soft fork)”,这意味着需要更新節点以支持keccak256。實際上,这涉及一个过渡期 —— 通常為 2-3 个月 —— 在启用该運算之前,让Chia農民和其他主要運營商有时间升級他们的軟體。
虽然 CHIP 还處于發布流程中(请在此處關注:https://github.com/Chia-Network/chips/pull/131),但硬體錢包集成还需要做更多的基礎工作。Rigidity一直在努力開發令人印象深刻的 Chia SDK,我有幸多次使用(包括在本專案中),以及一个名為 Sage 的新錢包,它计劃支持新的谜题。这是一个复雜的任務,因此,如果您想提供帮助,请考慮支持 Sage 的開發,方法是在此處捐赠(https://github.com/sponsors/xch-dev或帮助宣传Sage(在此處提供测試版:https://github.com/xch-dev/sage/
参考阅讀HemaDAO公眾号文章👉:
  • 【生態】開源的Chia錢包:Sage Wallet

  • 【生態】全新的Sage Wallet試用体验

特别感谢
  • Julie 是这个帖子中第一个建議我使用 EIP-712 的人。之前的解决方案涉及指定的“假”以太坊交易,而且更加复雜。

  • 尽管我的这个想法是否可以安装或如何實现尚不清晰(后一个是我沟通問题),但是Chia公司仍然帮助處理了我的 CHIP 请求

  • Rigidity Indigo 帮助快速設置了keccak256 PR,从而實现了我所需的開發環境。还和我一起經歷了软分叉(softfork)操作。
硬體錢包Ledger


硬體錢包Trezor


硬體錢包Tangem




文章末尾固定信息

我的微信
这是我的微信掃一掃
weinxin
我的微信
微訊號已复制
我的微信公眾号
我的微信公眾号掃一掃
weinxin
我的公眾号
公眾号已复制
 
admin
  • 本文由 admin 发表于2024 年 12 月 18 日 22:11:24
  • 轉载请務必保留本文链接:https://zuizhiyou.com/%e3%80%90%e9%96%8b%e7%99%bc%e3%80%91%e4%b8%80%e4%b8%aa%e8%ae%a9chia-%e7%8d%b2%e5%be%97%e6%9b%b4%e5%a4%9a%e7%a1%ac%e9%ab%94%e9%8c%a2%e5%8c%85%e6%94%af%e6%8c%81%e7%9a%84%e9%80%94%e5%be%91.html
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定

拖动滑块以完成验证