Skip to content

Conversation

@GinMu
Copy link

@GinMu GinMu commented Oct 29, 2025

Instructions for Pull Requests

Please read these instructions thoroughly in order to ensure that your pull request is processed in a timely manner. This document contains detailed instructions for registering a DID Method. If your pull request concerns some other change to the repository, you may delete all of the text in this text box and write up a more relevant description.

There is a DID Method Registration form below that MUST be included in a DID Method Registration Request. The form includes check boxes that you are expected to fill out when you submit your request.

Once you submit your request, your pull request will be reviewed by the registry editors. Changes regarding the required criteria may be requested. If there are no objections or changes requested, your DID method will be registered after a minimum of 7 days.

DID Method Registration Process

In order to register a new DID method, you must add a JSON file to the ./methods directory.

Here is an example registration entry:

{
  // These fields are required
  "name": "example",
  "status": "registered",
  "specification": "https://w3c-ccg.github.io/did-spec/",
  // These fields are optional
  "contactName": "W3C Credentials Community Group",
  "contactEmail": "",
  "contactWebsite": "",
  "verifiableDataRegistry": "DID Specification"
}

Your Pull Request will be automatically validated, please ensure that all of the automated tests pass (no errors reported) or your submission will not be reviewed. Common reasons for failed validation includes invalidly formatted JSON files and missing mandatory fields.

----- DID METHOD REGISTRATION FORM: DELETE EVERYTHING ABOVE THIS LINE ------

DID Method Registration

As a DID method registrant, I have ensured that my DID method registration complies with the following statements:

@ottomorac
Copy link
Contributor

Hello @GinMu ,

Good day. After an initial review, I have some feedback:

DID Method Structure
You need to add a section a the beginning that describes your did method structure:

Samples here:

CRUD Operations

Your CRUD operations should be described in at least a few bullets. Providing code is fine, but there should be human readable explanations of the CRUD methods that you support (ideally an algorithm describing the steps):

Samples here:

Security and Privacy Considerations section
You need to add a"Security and Privacy Considerations section" . Ideally the "Security and Privacy Considerations" section. should have a few paragraphs of the privacy and security implications of implementing your specification. Some examples here:

Suggest you address these points and then we can review again. Thank you.

@GinMu
Copy link
Author

GinMu commented Oct 30, 2025

@ottomorac Thanks for the review! I applied the suggested change and pushed a new commit. Please take another look when you have a moment.

Copy link
Contributor

@ottomorac ottomorac left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @GinMu . The entry meets the minimum criteria, Approved. You will need one additional review from others in the group before this can be merged.

@ottomorac
Copy link
Contributor

Also I might suggest that you indicate that the DELETE operation is not supported in your spec (at least that was my understanding from reading it).

@GinMu
Copy link
Author

GinMu commented Nov 6, 2025

Also I might suggest that you indicate that the DELETE operation is not supported in your spec (at least that was my understanding from reading it).

The DELETE method is not currently supported. You can achieve deletion by writing empty data (i.e., overwriting the item with an empty payload).

@ottomorac
Copy link
Contributor

The DELETE method is not currently supported. You can achieve deletion by writing empty data (i.e., overwriting the item with an empty payload).

Understood. 👍 Then perhaps you may want to add that explanation in the spec for the did:swtc DID method.

@GinMu
Copy link
Author

GinMu commented Nov 7, 2025

The DELETE method is not currently supported. You can achieve deletion by writing empty data (i.e., overwriting the item with an empty payload).

Understood. 👍 Then perhaps you may want to add that explanation in the spec for the did:swtc DID method.

I’ve already added that explanation to the spec for the did:swtc DID method. 🤝

@swcurran
Copy link
Contributor

swcurran commented Nov 7, 2025

I agree that the submission meets the minimum requirements for approval, but I do have a few suggestions and comments about the spec.

  • It would be nice to have in the introduction the use cases for the DID Method and why the name is "swtc". What is the "SWT Chain", and how it relates to the use of IPFS MFS. This would help newcomers to understand what the DID Method is about.
  • It would be nice to have a definition of what this means "Convert public key from keypair into an SWTC address.". What is an SWTC address exactly, and how does one convert a key to it?
  • Is there a defined relationship between the key pair used to create the SWTC address and the key in the DID Doc? I'm assuming so, but couldn't tell from the spec.
  • The JSON-LD document below the steps is labelled as being the "JSON-LD context", but it is actually an example DID Document. The label should be changed.
  • Not crucial, but I'm intrigued about how the indexing of the DID identifier allows for the discovery of the DID Document associated with it on IPFS MFS. Especially after an update to the DID Document.
  • When a DID Document is updated, can any part of the DID Document change? Most importantly, can the key be rotated to a public key of a new key pair.

Happy to approve with or without answers to those questions/comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants