mirror of
https://codeberg.org/davrot/forgejo.git
synced 2025-06-26 17:00:04 +02:00
[CHORE] Use github.com/ProtonMail/go-crypto
- We were previously using `github.com/keybase/go-crypto`, because the package for openpgp by Go itself is deprecated and no longer maintained. This library provided a maintained version of the openpgp package. However, it hasn't seen any activity for the last five years, and I would therefore consider this also unmaintained. - This patch switches the package to `github.com/ProtonMail/go-crypto` which provides a maintained version of the openpgp package and was already being used in the tests. - Adds unit tests, I've carefully checked the callstacks to ensure the OpenPGP-related code was covered under either a unit test or integration tests to avoid regression, as this can easily turn into security vulnerabilities if a regression happens here. - Small behavior update, revocations are now checked correctly instead of checking if they merely exist and the expiry time of a subkey is used if one is provided (this is just cosmetic and doesn't impact security). - One more dependency eliminated :D
This commit is contained in:
parent
717495a980
commit
45341ee9ce
13 changed files with 93 additions and 37 deletions
|
@ -166,8 +166,7 @@ Note: This user hasn't uploaded any GPG keys.
|
|||
|
||||
|
||||
=twTO
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
`)
|
||||
-----END PGP PUBLIC KEY BLOCK-----`)
|
||||
// Import key
|
||||
// User1 <user1@example.com>
|
||||
session := loginUser(t, "user1")
|
||||
|
@ -201,8 +200,7 @@ C0TLXKur6NVYQMn01iyL+FZzRpEWNuYF3f9QeeLJ/+l2DafESNhNTy17+RPmacK6
|
|||
7XhJ1v6JYuh8kaYaEz8OpZDeh7f6Ho6PzJrsy/TKTKhGgZNINj1iaPFyOkQgKR5M
|
||||
GrE0MHOxUbc9tbtyk0F1SuzREUBH
|
||||
=DDXw
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
`)
|
||||
-----END PGP PUBLIC KEY BLOCK-----`)
|
||||
// Export new key
|
||||
testExportUserGPGKeys(t, "user1", `-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
|
@ -233,8 +231,7 @@ C0TLXKur6NVYQMn01iyL+FZzRpEWNuYF3f9QeeLJ/+l2DafESNhNTy17+RPmacK6
|
|||
7XhJ1v6JYuh8kaYaEz8OpZDeh7f6Ho6PzJrsy/TKTKhGgZNINj1iaPFyOkQgKR5M
|
||||
GrE0MHOxUbc9tbtyk0F1SuzREUBH
|
||||
=WFf5
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
`)
|
||||
-----END PGP PUBLIC KEY BLOCK-----`)
|
||||
}
|
||||
|
||||
func testExportUserGPGKeys(t *testing.T, user, expected string) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue