No description
  • TypeScript 70.1%
  • Solidity 27.9%
  • JavaScript 1.9%
  • Shell 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Tim Pechersky dbcd6ef670
All checks were successful
release / release (push) Successful in 1m6s
test: cover guard branches found by coverage run
- Added Ability to catch regressions in register guards: empty record Bug paths, invalid referral code, zero registrar, referral program overflow and cap, deleteName miss
- Added Ability to catch regressions in renewal guards: renewal without record, renewal on deactivated domain, cross-domain mismatch, zero-fee renewal, unknown Interface id
2026-09-07 20:25:53 +08:00
.changeset chore: new release 2026-09-07 09:43:32 +00:00
.github fix: keep pnpm store out of the repo 2026-09-07 17:37:35 +08:00
deploy feat: sepolia network with Etherscan V2 verification 2026-09-07 17:05:26 +08:00
deployments deploy: Multipass v1.0.0 to sepolia 2026-09-07 17:21:24 +08:00
docs/templates Revert "removed unused var" 2024-10-15 21:12:46 +07:00
playbook fix!: bind wallet+payload into typehash, store signed nonce, write renewals 2026-09-07 13:06:23 +08:00
scripts/libraries removed diamond and boolean comparisons 2024-10-15 21:12:12 +07:00
src fix!: bind wallet+payload into typehash, store signed nonce, write renewals 2026-09-07 13:06:23 +08:00
test test: cover guard branches found by coverage run 2026-09-07 20:25:53 +08:00
utils fix!: bind wallet+payload into typehash, store signed nonce, write renewals 2026-09-07 13:06:23 +08:00
.editorconfig initial commit 2024-08-03 20:52:53 +02:00
.gitignore fix: keep pnpm store out of the repo 2026-09-07 17:37:35 +08:00
.mocharc.js initial commit 2024-08-03 20:52:53 +02:00
.nvmrc feat: sepolia network with Etherscan V2 verification 2026-09-07 17:05:26 +08:00
.prettierignore initial commit 2024-08-03 20:52:53 +02:00
.prettierrc initial commit 2024-08-03 20:52:53 +02:00
.solhint.json initial commit 2024-08-03 20:52:53 +02:00
CHANGELOG.md chore: new release 2026-09-07 09:43:32 +00:00
eslint.config.mjs happy linter - happy life 2024-10-16 08:52:57 +07:00
hardhat.config.ts feat: sepolia registrar named account 2026-09-07 18:44:18 +08:00
LICENSE Create LICENSE 2025-03-28 12:14:50 +08:00
package.json chore: new release 2026-09-07 09:43:32 +00:00
pnpm-lock.yaml deploy: Multipass v1.0.0 to sepolia 2026-09-07 17:21:24 +08:00
README.md docs: deployments, V1 typehash and tooling in readme 2026-09-07 18:26:07 +08:00
tsconfig.json initial commit 2024-08-03 20:52:53 +02:00

Multipass

Multipass is a universal, decentralized, open source protocol designed to facilitate public identity trough a frictionless cross-domain user data lookup.

multipass-logo-512

With multipass you are able to answer following questions

  • "What's @Bob at telegram handle on discord"?
  • "I just saw an activity by 0xdeadcafee...101 for my dApp, what's handle of user on @discord?
  • "What's @Bob EOA wallet on EVM?

Use cases

  • Rich UX for your dApp notification system: No longer address names in event noficiations. Tag your users instead!
  • Cross platform social graph: See social graph beyond your platform.
  • Anti-bot measures: require users to verify on other platforms
  • Cross platform anti-fraud measures: Get notified if other platforms ban users
  • Off-chain account abstraction": Your service may use web2 auth tokens or signed messages from your platform to associate it with registred account on chain. E.g pay users transaction and use web2 signed message as paymaster validation proof.
  • Create token gated access to your identity: Imagine you have a public twitter account. We can associate your

Project status: Alpha

We are workin on setting up a token and deploying governing body as a DAO.

If you want to be up to date and not miss a thiing, please

Deployments

Network Contract (proxy) EIP-712 domain
Sepolia (11155111) 0x418F82fd0014a4CA402F145978bfaF0555a9cA06 MultipassDNS / 1.0.0
Arbitrum Sepolia (421614) see deployments/arbsepolia pre-V1 typehash — incompatible with current tooling

Registrar signatures use the V1 typehash:

registerName(bytes32 name,bytes32 id,bytes32 domainName,uint256 validUntil,uint96 nonce,address wallet,bytes32 payload)

Nonces are registrar-signed and strictly increasing per id; first registration requires nonce >= 1.

Tooling

Contributing

We welcome contributions from the community to help improve and enhance Multipass. Open issues and pull requests at git.peeramid.xyz/peeramid-labs/multipass.

License

Multipass is released under the MIT License.

Contact

If you have any security findings, questions or feedback regarding Multipass, please reach out to us at contracts@peeramid.xyz.

Support

Please support us by hitting "sponsor" button or by going for gitcoin page:

https://explorer.gitcoin.co/#/projects/0x9aa1813681cbc4c7acdad3f7687ee68b6c21a055f2df0d771551ad3d0a9e9d4d