paritytech / paritytech/host-rust-core
Humanity username claiming needs a supported ownership proof
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 10
- Forks
- 3
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 148
Description
Humanity upgrades a lite username by calling Resources.register_person on People Chain
The runtime expects the user's existing lite account to sign the raw 32-byte Resources alias as proof that they control that account
In Humanity we use liteSigner.signBytes() which calls signRawWithLegacyAccount. The host wraps the payload in <Bytes>…</Bytes> before signing so the signature does not pass the runtime check
The wrapping looks intentional since signBytes should not allow a product to sneak in a valid transaction payload. We need a supported way to create this ownership proof without removing that protection
This currently blocks username claiming from the Humanity SPA for R2
What we need
A product should be able to request the ownership proof expected by Resources.register_person without having access to unrestricted raw signing
This could be structured signing or an agreed message format that the runtime verifies but the exact solution should be agreed between Runtime and truAPI
The final API should be exposed through product-sdk and work across the hosts needed for R2
What we tested
We made a small local host patch that skips the wrapping only for one disposable wallet and one exact Resources alias
The username claim then finalized successfully on Preview which confirmed that the wrapped signature was blocking the flow
Related
- #543 covers using one signing API for product and legacy accounts but does not define how this proof payload should be signed
- #592 tracks trusted access to another product's context which is also needed by the wider Humanity flow
- #554 removes the temporary proof helper currently used during Resources alias binding
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.