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

build(deps): bump github.com/ProtonMail/go-crypto from 1.0.0 to 1.1.2 #391

Merged

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Nov 8, 2024

Bumps github.com/ProtonMail/go-crypto from 1.0.0 to 1.1.2.

Release notes

Sourced from github.com/ProtonMail/go-crypto's releases.

Release v1.1.2

What's Changed

Full Changelog: ProtonMail/go-crypto@v1.1.1...v1.1.2

Release v1.1.1

What's Changed

Full Changelog: ProtonMail/go-crypto@v1.1.0...v1.1.1

Release v1.1.1-proton

What's Changed

This release is v1.1.1 with support for symmetric keys and automatic forwarding, both of which are not standardized yet.

Release v1.1.0

What's Changed

This release adds full support for the new version of the OpenPGP standard, RFC 9580. In addition, the release introduces an improved non-backwards compatible v2 API. The API in the openpgp package remains fully backwards compatible while the new v2 API is located in a separate v2 package in openpgp.

For the full changes since v1.0.0, see the previous release notes. For the full changelog, see ProtonMail/go-crypto@v1.0.0...v1.1.0.

Changes since v1.1.0-beta.0:

  • Replace expiring curve448 integration test vector by @​lubux
  • Validate input key size in SEIPDv2 decryption by @​lubux

Changelog since v1.1.0-beta.0: ProtonMail/go-crypto@v1.1.0-beta.0...v1.1.0.

Release v1.1.0-proton

What's Changed

This release is v1.1.0 with support for symmetric keys and automatic forwarding, both of which are not standardized yet.

v1.1.0-beta.0-proton

This pre-release is v1.1.0-beta.0 with support for symmetric keys and automatic forwarding, both of which are not standardized yet.

v1.1.0-beta.0

What's Changed

Full Changelog: ProtonMail/go-crypto@v1.1.0-alpha.5...v1.1.0-beta.0

... (truncated)

Commits
  • 2d2c789 feat(cleartext): Do not include line ending separator in plaintext (#242)
  • f8b3f21 Remove cleartext Encode header argument #239 (#240)
  • b97cc3c feat: Validate input key size in SEIPDv2 decryption (#236)
  • 20ab0e4 Replace expiring curve448 integration test vector (#235)
  • f6ad483 No v6 ECC keys with legacy OIDs (#234)
  • 77090fe Fix ECDH using v6 keys (#233)
  • 7852179 Add support for keyserver preferences and preferred keyserver (closes #206) (...
  • 2add693 Add back crypto.Signer support for ECDSA signing keys (#227)
  • 0f7b935 ci: Fix CI for v1 interoptest (#229)
  • b5837fa ci: Change gosop branch for gopenpgp-v2 to gosop-gopenpgp-v2 (#224)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/ProtonMail/go-crypto](https://github.com/ProtonMail/go-crypto) from 1.0.0 to 1.1.2.
- [Release notes](https://github.com/ProtonMail/go-crypto/releases)
- [Commits](ProtonMail/go-crypto@v1.0.0...v1.1.2)

---
updated-dependencies:
- dependency-name: github.com/ProtonMail/go-crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Nov 8, 2024
Copy link

codecov bot commented Nov 8, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 65.48%. Comparing base (faccf54) to head (071c3a8).
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #391      +/-   ##
==========================================
+ Coverage   65.39%   65.48%   +0.08%     
==========================================
  Files          37       37              
  Lines        3263     3265       +2     
==========================================
+ Hits         2134     2138       +4     
+ Misses        975      973       -2     
  Partials      154      154              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@tri-adam tri-adam marked this pull request as draft November 8, 2024 15:56
@tri-adam
Copy link
Member

tri-adam commented Nov 8, 2024

Investigating the failures here, which are due to differences in the signatures generated by v1.0.0 and v1.1.2:

Signature Packet, new CTB, 307 bytes                          | Signature Packet, new CTB, 361 bytes
    Version: 4                                                      Version: 4
    Type: Text                                                      Type: Text
    Pk algo: RSA                                                    Pk algo: RSA
    Hash algo: SHA256                                               Hash algo: SHA256
    Hashed area:                                                    Hashed area:
      Signature creation time: 2020-06-30 00:01:56 UTC        |       Signature creation time: 2020-06-30 00:01:56 UTC (criti
      Issuer: A20C27EE7FF7BA84                                |       Issuer: A20C27EE7FF7BA84 (critical)
                                                              >       Notation: [email protected]
                                                              >         00000000  4a 9a 85 02 b9 9b 21 37  5f 5e 3c 80 4b c0 
      Issuer Fingerprint: 12045C8C0B1004D058DE4BEDA20C27EE7FF         Issuer Fingerprint: 12045C8C0B1004D058DE4BEDA20C27EE7FF
    Digest prefix: C22C                                       |     Digest prefix: 1F45
    Level: 0 (signature over data)                                  Level: 0 (signature over data)

The new Notation portion seems to be related to ProtonMail/go-crypto#209.

@tri-adam
Copy link
Member

tri-adam commented Nov 8, 2024

While the Notation makes signatures non-deterministic, this looks desirable from a security point of view. To allow us to continue to generate our test corpus deterministically, I've added OptSignWithoutPGPSignatureSalt, which disables randomization of signature generation when that is desirable, and used it in the corpus code. Other code should inherit the non-deterministic behaviour by default, and benefit from increased security.

The other diffs appear to be related to the creation time and issuer key ID sub-packets being made critical (see ProtonMail/go-crypto#208):

Signature Packet, new CTB, 307 bytes                                    Signature Packet, new CTB, 307 bytes
    Version: 4                                                              Version: 4
    Type: Text                                                              Type: Text
    Pk algo: RSA                                                            Pk algo: RSA
    Hash algo: SHA256                                                       Hash algo: SHA256
    Hashed area:                                                            Hashed area:
      Signature creation time: 2020-06-30 00:01:56 UTC               |        Signature creation time: 2020-06-30 00:01:56 UTC (critical)
      Issuer: A20C27EE7FF7BA84                                       |        Issuer: A20C27EE7FF7BA84 (critical)
      Issuer Fingerprint: 12045C8C0B1004D058DE4BEDA20C27EE7FF7BA84            Issuer Fingerprint: 12045C8C0B1004D058DE4BEDA20C27EE7FF7BA84
    Digest prefix: C22C                                              |      Digest prefix: 17DA
    Level: 0 (signature over data)                                          Level: 0 (signature over data)

@tri-adam tri-adam marked this pull request as ready for review November 8, 2024 17:46
Add OptSignWithoutPGPSignatureSalt, which disables randomization of
signature generation, and use that in the corpus to generate images
deterministically.

Update corpus images and related golden files to reflect the signatures
generated by the new version of go-crypto.
@tri-adam tri-adam force-pushed the dependabot/go_modules/main/github.com/ProtonMail/go-crypto-1.1.2 branch from 2063ae3 to 071c3a8 Compare November 8, 2024 18:41
Copy link
Member

@dtrudg dtrudg left a comment

Choose a reason for hiding this comment

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

LGTM

@tri-adam tri-adam merged commit e458cb9 into main Nov 11, 2024
3 checks passed
@dependabot dependabot bot deleted the dependabot/go_modules/main/github.com/ProtonMail/go-crypto-1.1.2 branch November 11, 2024 16:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants