Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecate RsaSignature2018 #9

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

clehner
Copy link
Member

@clehner clehner commented Oct 26, 2021

Change stability status of proof method RsaSignature2018 from Experimental to Deprecated.

Address #5

@clehner clehner requested a review from jandrieu as a code owner October 26, 2021 14:32
@kdenhartog
Copy link
Contributor

I'm not sure we want to deprecate this signature suite while it's still in V1 context

@msporny @dlongley @peacekeeper what's your take on this?

@kdenhartog kdenhartog linked an issue Dec 6, 2021 that may be closed by this pull request
@msporny
Copy link
Contributor

msporny commented Dec 6, 2021

@msporny @dlongley @peacekeeper what's your take on this?

Agree, deprecate it. JsonWebSignature2020 replaces it, at the very least.

@kdenhartog
Copy link
Contributor

kdenhartog commented Dec 6, 2021

👍 we'll wait to hear from @peacekeeper since I know he's used this a bit in the past when checking security-v3 vocab stuff, but otherwise I'm good to deprecate this since other than @peacekeeper I'm not sure this is practically in use and there's another suite that supports similar functionality which has stronger foundations to build on.

@peacekeeper
Copy link
Member

Hmm @kdenhartog is right that I have used it from time to time for experimentation and testing, but otherwise I don't have a strong need or opinion here.

I just wonder, is the only reason to deprecate it that it's not used very much? The fact that it can be replaced by JsonWebSignature2020 doesn't seem like a sufficient reason for deprecating it, since that would apply to several other suites as well...

There was some discussion in our open-source Java implementation about this suite recently at WebOfTrustInfo/ld-signatures-java#12, so it seems to be in use at least somewhere.

We also did some analysis of DIDs in various ledgers recently, and found that the percentage of DID documents with RSA keys is extremely small.

To sum up, I don't really care one way or the other, but thanks for asking :)

@kdenhartog
Copy link
Contributor

Thanks @peacekeeper I tend to agree there's a few suites that would make sense to deprecate in favor of JsonWebSignature2020 and I'd be mildly in favor of that for simplicity, but won't die on that hill (I suspect others would). Namely just about every one that's PKI based 🙃

@vitorpamplona would you object to having this marked as deprecated since it seems like you're using RsaSignature2018.

@vitorpamplona
Copy link

I am ok with the deprecation.

I just need to provide verification services for the 1.1 billion COVID QR codes out there from DIVOC using a non-compliant version of the RsaSignature2018. So, I already had to fork and modify these RsaSignature2018 implementations anyway :(

@vitorpamplona
Copy link

It begs the question... is there a better way to mark certain suites to be for verification only to discourage people from creating new credentials with it while encouraging backward compatibility of verification services?

@kdenhartog
Copy link
Contributor

Yeah that's a good point that we should consider some additional statuses for this. I think it's best we don't merge this for now and leave this PR open until we can move this into the VCWG and establish what we want to do about this registry.

@kdenhartog kdenhartog added the DO NOT MERGE This PR needs further discussion and shouldn't be merged label Jan 12, 2022
@peacekeeper
Copy link
Member

peacekeeper commented Jan 12, 2022

Agree with the above. Quick note that the https://github.com/w3c-ccg/lds-rsa2018 repo has already been archived, so if at some point the decision is to only partially deprecated this suite for issuing but not for verifying, then maybe that repo should be un-archived and a note also added there.

@vitorpamplona
Copy link

vitorpamplona commented Jan 12, 2022

From the experience I have had with credentials, devs will use whatever compiles and run without much thinking about it. Given that, it would be nice to enforce the new status in code. The spec could request implementations to throw an exception when the user is calling for a signature from a sign-deprecated suite (maybe offer a "--force" option?). That will make devs think about their work and redirect them to more appropriate suites.

@kdenhartog
Copy link
Contributor

Seems like a reasonable enforcement mechanism. For me, I'm less concerned if a dev actually uses it or not, but I want it to be recognized as not something that should be expected to be interoperable generally and any form of interoperability is done via bespoke coordination between parties which is always the case.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DO NOT MERGE This PR needs further discussion and shouldn't be merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

RSA-2018 is archived
6 participants