diff --git a/39.md b/39.md index ec0bcd17..b888865f 100644 --- a/39.md +++ b/39.md @@ -28,13 +28,15 @@ A new optional `i` tag is introduced for `kind 0` metadata event contents in add } ``` -An `i` tag will have two parameters and an optional third parameter, which are defined as the following: +An `i` tag will have two or more parameters, which are defined as the following: + 1. `type:identity`: This is the platform name (for example `github`) or the linked cryptographic identity type (for example `openpgp4fpr`), and the identity on that platform (for example `semisol`) or public key fingerprint (for example `1A04E0F1A78D982BD8885B7EB325A9C5F70849D0`) joined together with `:`. 2. `proof`: String that points to the proof of owning this identity or is the proof itself (crytographic signature). -3. The full public key in the case of a cryptographic identity. -Clients SHOULD process any `i` tags with more than 3 values for future extensibility. +In the case of a cryptographic identity, the third paramter SHOULD be the text of the full public key. Alternatively, a URL can be supplied, for example when key material is too heavy. Additional URLs can be supplied in additional parameters of the `i` tag. + Identity provider names SHOULD only include `a-z`, `0-9` and the characters `._-/` and MUST NOT include `:`. + Identity names SHOULD be normalized if possible by replacing uppercase letters with lowercase letters, and if there are multiple aliases for an entity the primary one should be used. ## Revocation