ElementsProject / ElementsProject/elements
`rawissueasset` (and other issuance RPCs) should not allow issuing asset from a legacy output
- 主要言語
- C++
- スター
- 1.2k
- フォーク
- 416
- 平均マージ
- 1日 23時間
- マージ済み PR(30日)
- 15
説明
In https://github.com/ElementsProject/elements/blob/18fadbafcceff70a7d328ca739e09004dc51e37a/src/confidential_validation.cpp#L282-L284 we check, when issuing assets, that a transaction has witness data attached to it, which can result in confusing errors when users try to issue assets starting from legacy outputs.
In general we want to discourage legacy outputs anyway except when absolutely necessary (e.g. when using `signmessage`, since we do not yet have a BIP322 implementation for Elements), since they are more costly to the user, addresses have worse checksumming properties, and they are more complex for implementors to work with. Narrowing this RPC will nudge us in that direction while also replacing a confusing footgun with a clear error message.
コントリビューションガイド
調査の方向性
src/confidential_validation.cpp の 282-284 行目から始め、rawissueasset とその他の issuance RPC のエントリポイントを追って、legacy output がどのように検証に到達するかを確認します。完了条件は、issuance RPC が legacy output を、わかりにくい witness-data エラーではなく明確なエラーで拒否し、許可された issuance パスには影響がないことです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cpp
- 領域
- blockchain
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 38/100