Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: ProtonMail/go-crypto
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.1.0-alpha.2
Choose a base ref
...
head repository: ProtonMail/go-crypto
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.1.0-alpha.2-proton
Choose a head ref
  • 19 commits
  • 48 files changed
  • 5 contributors

Commits on Feb 28, 2024

  1. Update GitHub workflow branches

    twiss authored and lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    7caa0ac View commit details
    Browse the repository at this point in the history
  2. Add support for automatic forwarding (#54)

    larabr authored and lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    f216643 View commit details
    Browse the repository at this point in the history
  3. openpgp: Add support for symmetric subkeys (#74)

    It is sometimes useful to encrypt data under some symmetric key.
    While this was possible to do using passphrase-derived keys, there was
    no support for long-term storage of the keys that was used to encrypt
    the key packets.
    
    To solve this, a new type of key is introduced. This key will hold a
    symmetric key, and will be used for both encryption and decryption of
    data. Specifically, as with asymmetric keys, the actual data will be
    encrypted using a session key, generated ad-hoc for these data.
    Then, instead of using a public key to encrypt the session key, the
    persistent symmetric key will be used instead, to produce a, so to say,
    Key Encrypted Key Packet.
    
    Conversly, instead of using a private key to decrypt the session key,
    the same symmetric key will be used. Then, the decrypted session key
    can be used to decrypt the data packet, as usual.
    
    As with the case of AEAD keys, it is sometimes useful to "sign"
    data with a persistent, symmetric key.
    
    This key holds a symmetric key, which can be used for both signing and
    verifying the integrity of data. While not strictly needed, the
    signature process will first generate a digest of the data-to-be-signed,
    and then the key will be used to sign the digest, using an HMAC
    construction.
    
    For technical reasons, related to this implenetation of the openpgp
    protocol, the secret key material is also stored in the newly defined
    public key types. Future contributors must take note of this, and not
    export or serialize that key in a way that it will be publicly availabe.
    
    Since symmetric keys do not have a public and private part, there is no
    point serializing the internal "public key" structures. Thus, symmetric
    keys are skipped when serialing the public part of a keyring.
    Mandragorian authored and lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    5f4f999 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e06eb14 View commit details
    Browse the repository at this point in the history
  5. Rename branch to Proton

    wussler authored and lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    15f4fc9 View commit details
    Browse the repository at this point in the history
  6. Add full forwarding support

    wussler authored and lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    7c95855 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    07b9267 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    7aa303d View commit details
    Browse the repository at this point in the history
  9. Resign keys and relax flag requirements

    wussler authored and lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    23fe98f View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    26779fb View commit details
    Browse the repository at this point in the history
  11. Use fingerprints instead of KeyIDs

    wussler authored and lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    b188297 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    5b0fb2f View commit details
    Browse the repository at this point in the history
  13. feat: Add forwarding to v2 api

    lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    d5a01d4 View commit details
    Browse the repository at this point in the history
  14. fix: Address warnings

    lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    c99f7e5 View commit details
    Browse the repository at this point in the history
  15. feat: Add symmetric keys to v2

    lubux committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    28d1c85 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    16f8541 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    54e58ae View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    65ad1e4 View commit details
    Browse the repository at this point in the history

Commits on Mar 14, 2024

  1. Fix HMAC generation (#204)

    Generate an AEAD subkey when requesting an HMAC primary key.
    wussler authored Mar 14, 2024
    Configuration menu
    Copy the full SHA
    91b9355 View commit details
    Browse the repository at this point in the history
Loading