{"ok": true, "name": "NamID Global ID", "version": "ngid/v1", "schema": "https://namid.net/ns/ngid/v1/schema.json", "context": ["https://www.w3.org/ns/credentials/v2", "https://namid.net/ns/ngid/v1"], "identifier": {"human": "did:namid:testnet11:<name>", "machine": "did:namid:testnet11:<launcher bech32m>", "rule": "the name coin is the identity; same coin = same identity; a re-mint is a new launcher"}, "claims": {"fullName": {"type": "string", "max": 120, "about": "legal or chosen full name"}, "dateOfBirth": {"type": "date", "about": "YYYY-MM-DD; never revealed when a predicate will do"}, "country": {"type": "country", "about": "ISO 3166-1 alpha-2"}, "sex": {"type": "enum", "values": ["female", "male", "other"], "about": ""}, "idNumber": {"type": "string", "max": 64, "about": "a government or venue id number, hashed in the credential"}, "email": {"type": "string", "max": 254, "about": ""}, "phone": {"type": "string", "max": 32, "about": "E.164"}, "address": {"type": "string", "max": 240, "about": "postal address, one line"}, "organization": {"type": "string", "max": 120, "about": "employer, school, club"}, "role": {"type": "string", "max": 80, "about": "title or membership class"}}, "predicates": {"age_over_18": {"from": "dateOfBirth"}, "age_over_21": {"from": "dateOfBirth"}, "age_over_65": {"from": "dateOfBirth"}, "country_eu": {"from": "country"}, "country_us": {"from": "country"}, "country_in": {"from": "country"}}, "disclosure": {"alg": "namid-sd-v1", "commit": "sha256(salt ':' claim ':' jcs(value))", "salt_bytes": 16, "model": "hash-commitment selective disclosure (SD-JWT model); predicates are issuer-derived claims committed separately; BBS+ is the planned upgrade with the same shape"}, "anchor": {"record": "_vc.ngid TXT namid-vc:v1:<sha256(credential without proof)>", "meaning": "the credential is current while its hash is in the holder's own records; the records' root is on chain (DataLayer); removing the record revokes"}, "proof": "DataIntegrityProof eddsa-jcs-2022 by the NamID registry key", "assurance_levels": ["self-attested (holder declared)", "issuer-derived (predicate computed from a self-attested claim)", "registry-verified (name, did)", "chain (launcher)", "attested-by:<name> (another identity vouched; the tix model)"], "valid_days": 365, "keeps": "nothing: no claim, salt or credential is stored by the registry", "json_schema": {"$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://namid.net/ns/ngid/v1/schema.json", "title": "NamIDGlobalID v1", "type": "object", "required": ["@context", "type", "id", "issuer", "validFrom", "credentialSubject", "disclosure", "anchor", "proof"], "properties": {"type": {"type": "array", "contains": {"const": "NamIDGlobalID"}}, "credentialSubject": {"type": "object", "required": ["id", "name", "claims"], "properties": {"id": {"type": "string", "pattern": "^did:namid:"}, "name": {"type": "string"}, "did": {"type": "string"}, "launcher": {"type": "string"}, "claims": {"type": "object", "additionalProperties": {"type": "string", "pattern": "^sha256:[0-9a-f]{64}$"}}, "predicates": {"type": "object", "additionalProperties": {"type": "string", "pattern": "^sha256:[0-9a-f]{64}$"}}}}, "disclosure": {"type": "object", "required": ["alg"], "properties": {"alg": {"const": "namid-sd-v1"}}}, "anchor": {"type": "object", "required": ["record", "name"]}, "proof": {"type": "object", "required": ["type", "cryptosuite", "verificationMethod", "proofValue"]}}}}