-
Notifications
You must be signed in to change notification settings - Fork 164
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
deal with deprecation of x/crypto/openpgp #286
Comments
I took another look at the situation and it hasn't really changed. The library has gotten a new name and some work. But still depends on V3 signatures for signature packet parsing which the protonmail fork doesn't support. https://github.com/cavaliergopher/rpm/blob/main/signature.go#L75 This is unfortunate as we can't parse ed25519 PGP keys which are getting more popular. Rekor would have problems parsing the kernel.org keyring as an example. |
Golang recommends https://github.com/ProtonMail/go-crypto, which seems to be supported. Keybase has a fork too but it hasn't been updated in 2 years. cc @lukehinds |
@haydentherapper The situation hasn't changed around the https://github.com/cavaliergopher/rpm library which uses deprecated However I haven't been able to figure out if we can rip out the SignatureV3 packet support from the RPM library, I don't really understand if it's still used in the RPM ecosystem or not. |
Spent a little bit of time digging into this issue:
|
Actually rpm supports V4 signatures for closer to twenty years, that's not an issue at all. We (rpm upstream) ran into this in 2022 and were just as surprised as anybody, see https://bugzilla.redhat.com/show_bug.cgi?id=2141686#c23 and onwards for the long story. |
Hey, thanks for looking into this! Ideally we would continue to support V3 signatures, but if Red Hat has moved over to V4, maybe now is the time to switch. It's looking to be quite difficult to support V3 anyways given what libraries are actively maintained in Go. There is a fork of protonmail/go-crypto that added back support for v3, though I'm not sure if the fork is trying to concurrently support both v3 and v4 or primarily v3. We may also recommend to push this down to the client, and rather than deal with rpm support in Rekor, clients should parse rpms themselves and upload the signature as a hashedrekord type. This would be necessary when working with very large rpms anyways. |
Description
Per golang/go#44226
golang.org/x/crypto/openpgp
is now frozen and deprecated. We should look to switch to a different implementation to ensure we stay up to date as best we can with this technology.The text was updated successfully, but these errors were encountered: