paritytech / paritytech/host-rust-core

In-product username search requires public binding between product account and primary identity

Open
#267 0 comments 0 reactions 1 assignee View on GitHub

@filvecchiato is already working on this.

Since Sep 11, 2026.

Contacts Product permissions
Dominant language
Swift
Stars
10
Forks
3
Avg merge
1d 10h
Merged PRs (30d)
148

Description

Problem

Username-based search requires a public binding between a product account and users primary identity account, which restricts products from protecting the privacy product accounts are meant to give.

How Browse does this today:

  1. A user recommends an app. The product account signs the recommendation, and to prove which person is behind it, it signs a binding message of the form "attestation v1\n" followed by the resolver contract address and the product account address, using the primary DotNS identity account.
  2. The resolver contract verifies the signature and records the identity behind the product account, storing it in a public map.
  3. To search for apps recommended by a username, Browse scans every app recommendation and reads back which identity each attester is bound to.
Suggestion

One alternative to the current public binding is to keep the product-to-identity link private and managed by the User Agent. A product could request through TruAPI that another user share their product account for that product over chat. If the other user accepts, the link is stored and managed by the User Agent instead of being written to a public contract map.

Related to https://github.com/paritytech/truapi/issues/222

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.