{"id":13849766,"url":"https://github.com/aragon/KeybaseRegistry","last_synced_at":"2025-07-12T21:32:11.679Z","repository":{"id":57145656,"uuid":"83329099","full_name":"aragon/KeybaseRegistry","owner":"aragon","description":"On-chain registry of Ethereum addreses \u003c\u003e https://keybase.io identities","archived":true,"fork":false,"pushed_at":"2017-03-13T12:43:10.000Z","size":77,"stargazers_count":28,"open_issues_count":0,"forks_count":15,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-15T15:59:36.198Z","etag":null,"topics":["aragon","ethereum","identity","keybase","oraclize"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aragon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-02-27T16:03:58.000Z","updated_at":"2023-10-07T14:59:55.000Z","dependencies_parsed_at":"2022-09-05T13:00:49.430Z","dependency_job_id":null,"html_url":"https://github.com/aragon/KeybaseRegistry","commit_stats":null,"previous_names":["aragonone/keybaseregistry"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/aragon/KeybaseRegistry","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aragon%2FKeybaseRegistry","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aragon%2FKeybaseRegistry/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aragon%2FKeybaseRegistry/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aragon%2FKeybaseRegistry/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aragon","download_url":"https://codeload.github.com/aragon/KeybaseRegistry/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aragon%2FKeybaseRegistry/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265059408,"owners_count":23705217,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aragon","ethereum","identity","keybase","oraclize"],"created_at":"2024-08-04T20:00:41.932Z","updated_at":"2025-07-12T21:32:11.420Z","avatar_url":"https://github.com/aragon.png","language":"JavaScript","readme":"# Keybase \u003c\u003e Ethereum Registry\n\n[![NPM Package](https://img.shields.io/npm/v/keybase-eth.svg?style=flat-square)](https://www.npmjs.org/package/keybase-eth)\n\nMapping Keybase identities with Ethereum addresses in a secure, cryptographically verifiable manner.\n\nA project by [Aragon](https://aragon.one) to provide Ethereum identity.\n\nRopsten (deployed Feb 27th, 2017): [0x18feabc5f9437676143df8e925554eb4fdb55a91](https://testnet.etherscan.io/address/0x18feabc5f9437676143df8e925554eb4fdb55a91)\nKovan (deployed March 8th, 2017): [0x5a9fEFEDB3ae828691a90b387354587FE2875dAc](https://kovan.testnet.io/address/0x5a9fEFEDB3ae828691a90b387354587FE2875dAc)\n\nRead the original [article](https://medium.com/@izqui9/ethereum-keybase-registry-proposal-c6497e3b2af7)\n\n## API\n\nENS compliance is being worked on.\n\nFor now API for the registry is:\n\n### Getting information\n\nTo get data regarding a registry, these three constant functions can be used:\n\n* `getAddress(string username) returns (address)`: Lookup for an address given a username.\n* `getUsername(address ethAddress) returns (string username)`: Reverse lookup of username for a given address\n* `myUsername() returns (string username)`: Reverse lookup for sender\n\n### Registering\n\nBoth funcions are payable and if registry doesn't have funds, it will need some to pay for Oraclize costs.\n\n* `register(string username, address ethAddress)`: Starts registration for the provided address and username.\n* `registerSender(string username)`: Starts registration for tx sender for the provided username.\n\n### Fallback\n\nAnyone can send ether to the contract to pay for verification costs on behalf of the users of the contract.\n\nThere is no suicide call nor any way the contract will send ether to anyone that is not Oraclize. Be sure that if you donate, funds will only be used for verifying records in the registry.\n\n## Gas \u0026 costs\n\nThese are the gas costs I'm experiencing:\n\n* Create register request: [**230k** gas](https://testnet.etherscan.io/tx/0x0919a674902e89ff7acb510431f432cff6854685778613c0991b97a89098d97d) + $0.01 USD in Ether for Oraclize + 1M gas for callback transaction\n\n* Successfully verify and create registry (performs ecrecover and bytes black magic): [**480k** gas](https://testnet.etherscan.io/tx/0x10b4cab44afdaa066341db89c7b45fb1b50b377e992ceaab02233ec6b67bcbb8)\n\n* Failed verify: Will **throw** and eat all gas :(\n\nNote: See that we are paying for 1M gas to Oraclize and the transaction is only using 480k gas based on my testing, will keep it on 1M on testnet to see the variance among different users, and will settle to a less wasteful value.\n","funding_links":[],"categories":["Libraries"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faragon%2FKeybaseRegistry","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faragon%2FKeybaseRegistry","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faragon%2FKeybaseRegistry/lists"}