{"id":18375777,"url":"https://github.com/factomproject/factom-did-driver","last_synced_at":"2025-04-11T04:39:52.919Z","repository":{"id":79532899,"uuid":"178883605","full_name":"FactomProject/factom-did-driver","owner":"FactomProject","description":"Universal Resolver driver for identities on the Factom Blockchain","archived":false,"fork":false,"pushed_at":"2020-11-17T23:05:15.000Z","size":34,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-11T04:39:49.868Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FactomProject.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-04-01T14:41:27.000Z","updated_at":"2021-02-10T17:54:33.000Z","dependencies_parsed_at":"2024-05-19T13:47:40.242Z","dependency_job_id":null,"html_url":"https://github.com/FactomProject/factom-did-driver","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FactomProject%2Ffactom-did-driver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FactomProject%2Ffactom-did-driver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FactomProject%2Ffactom-did-driver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FactomProject%2Ffactom-did-driver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FactomProject","download_url":"https://codeload.github.com/FactomProject/factom-did-driver/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248345272,"owners_count":21088241,"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":[],"created_at":"2024-11-06T00:20:19.287Z","updated_at":"2025-04-11T04:39:52.893Z","avatar_url":"https://github.com/FactomProject.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![DIF Logo](https://raw.githubusercontent.com/decentralized-identity/decentralized-identity.github.io/master/images/logo-small.png)\n\n# Universal Resolver Driver: did:factom\n\nThis is a [Universal Resolver](https://github.com/decentralized-identity/universal-resolver/) driver for **did:fct** identifiers.\n\n## Specifications\n\n* [Decentralized Identifiers](https://w3c-ccg.github.io/did-spec/)\n* [Factom DID Method Specification](DID-Method-factom.md)\n\n## Example DIDs\n\n```\ndid:factom:f26e1c422c657521861ced450442d0c664702f49480aec67805822edfcfee758\n```\n\n## Build and Run (Docker)\n\n```\ndocker build -f ./docker/Dockerfile . -t universalresolver/driver-did-factom\ndocker run -p 8080:8080 universalresolver/driver-did-factom\ncurl -X GET http://localhost:8080/1.0/identifiers/did:factom:f26e1c422c657521861ced450442d0c664702f49480aec67805822edfcfee758\n```\n\n## Build and Run (python)\n\n1. First, get the driver's dependencies `pip3 install -r requirements.txt`\n1. Then, run the driver `python3 did_factom_driver.py`\n1. The driver will now be accessible to curl at `localhost:8080`\n\n## Driver Environment Variables\n\nThe driver recognizes the following environment variables:\n\n### `uniresolver_driver_did_factom_factomConnection`\n* Specifies the type of connection used to interact with the Factom blockchain:`factomd` or `harmony`. (Note: the `harmony` connection type only supports resolution of mainnet DIDs, and will fallback to the `factomd` connection)\n* Default value: `factomd`\n \n### `uniresolver_driver_did_factom_rpcUrlMainnet`\n* Specifies the JSON-RPC URL of a factomd instance running on mainnet\n* Default value: `https://api.factomd.net`\n\n### `uniresolver_driver_did_factom_rpcUrlTestnet`\n* Specifies the JSON-RPC URL of a factomd instance running on the community testnet\n* Default value: `https://dev.factomd.net`\n\n\n### `uniresolver_driver_did_factom_tfaExplorerApiUrlMainet`\n* Specifies the URL of the TFA explorer API on mainnet\n* Default value: `https://explorer.factoid.org/api/v1`\n\n### `uniresolver_driver_did_factom_tfaExplorerApiUrlTestnet`\n* Specifies the URL of the TFA explorer API on testnet\n* Default value: `https://testnet.factoid.org/api/v1`\n\n### `uniresolver_driver_did_factom_harmonyApiUrl`\n* Specifies the URL of a Factom Harmony Connect API\n* Default value: `https://api.factom.com/v1`\n\n### `uniresolver_driver_did_factom_harmonyApiAppId`\n* Specifies the `app_id` to be sent in request headers to the Factom Harmony Connect API\n* Default value: N/A\n\n### `uniresolver_driver_did_factom_harmonyApiAppKey`\n* Specifies the `app_key` to be sent in request headers to the Factom Harmony Connect API\n* Default value: N/A\n\n### `uniresolver_driver_did_factom_harmonyApiCachingEnabled`\n* Specifies whether or not to use cached results (`true` or `false`)\n* Default value: `false`\n\n \n## Driver Metadata\n\nThe driver returns the following metadata in addition to a DID document:\n\n* `version`: The version of this Factom identity (currently `1`)\n* `name`: The array of partial names that the identity was initialized with.\n* `stage`: The current state of the DID on the blockchain, could be any of the following:\n    * `pending`: The identity chain has been submitted for creation, and is waiting to be included in a Directory Block\n    * `factom`: The identity chain has been created and included in a Directory Block (i.e. confirmed)\n    * `anchored`: The identity chain has been created and confirmed, and the directory block that it was included in has been anchored to Bitcoin and/or Ethereum\n* `createdHeight`: The Directory Block height that the identity chain was created at (null if `stage` is `pending`)\n* `publicKeyHistory`: All public keys ever active for this identity, along with information about it's window of activation\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffactomproject%2Ffactom-did-driver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffactomproject%2Ffactom-did-driver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffactomproject%2Ffactom-did-driver/lists"}