summaryrefslogtreecommitdiffstats
path: root/openpgp/src
AgeCommit message (Collapse)Author
2018-11-22openpgp: make TPK::merge more forgivingKai Michaelis
2018-11-22Fix typos.Neal H. Walfield
2018-11-22openpgp: Detect ASCII-Armored data and decode.Neal H. Walfield
- Add a basic check to the PacketParserBuilder to see if the message could be a binary OpenPGP message. If not, push an ASCII-Armor decoder.
2018-11-22openpgp: Make the armor reader work with generic BufferedReadersNeal H. Walfield
- Don't require that the Cookie be a (). Allow any type.
2018-11-22openpgp: Export VerificationResult::level.Neal H. Walfield
2018-11-22openpgp: Don't export function.Neal H. Walfield
2018-11-21openpgp: switch to nettle 2.0Kai Michaelis
2018-11-20openpgp: Add a function to pretty print a BufferedReader stackNeal H. Walfield
2018-11-20openpgp: Add basic support for old-style sigs to the Verifier.Neal H. Walfield
- Although the PacketParser doesn't support old-style signatures (see issue #128), the Verifier should not choke on them. - This change prevents the Verifier from choking by processing all old-style signatures in the usual manner. However, because the old-style signatures will have a computed hash of 000..., they will appear to be bad.
2018-11-16openpgp: Stylistic fix.Justus Winter
2018-11-16openpgp: Add encryption roundtrip test.Justus Winter
2018-11-16openpgp: it's cfg!(debug_assertions) not debugKai Michaelis
Whoopsie
2018-11-16openpgp: centralize hash computationKai Michaelis
Adds sign_userid_binding, sign_user attribute, sign_subkey_binding and sign_primary_key_binding to signature::Builder. These are now used instead of constructing the hash by-hand each time and then signing by Builder::sign_hash. Signature::*_hash are now class methods.
2018-11-16openpgp: reverse the scalar after keygenKai Michaelis
2018-11-16buffered-reader: Require that BufferedReaders implement Display.Neal H. Walfield
- Also, update BufferedReaders to implement it.
2018-11-15openpgp: Make modules private.Justus Winter
2018-11-14openpgp: embed backwards sig into bindingKai Michaelis
The TPKBuilder now adds the necessary backwards signature for signing capable subkeys.
2018-11-14openpgp: Fix session key caching.Justus Winter
- Fix type of session key, and actually call the callbacks.
2018-11-14openpgp: Add tracing.Justus Winter
2018-11-14openpgp: Implement Serialize for packet::Header.Justus Winter
2018-11-14openpgp: Add a public interface for parsing headers.Justus Winter
2018-11-14openpgp: Move parsing code to the parsing module.Justus Winter
2018-11-14openpgp: Fix key creation.Justus Winter
- Use correct algorithm for encryption subkeys when using the Cv25519 suite.
2018-11-14Avoid identity slicing.Justus Winter
2018-11-13openpgp: time-constant MPI comparison opsKai Michaelis
2018-11-13openpgp: don't print SessionKey and PasswordKai Michaelis
Disables Debug for SessionKey and Password in release mode.
2018-11-13openpgp: handle ??25519 secret keys with leading 0Kai Michaelis
OpenPGP MPIs allow leading zeros to be omitted while Nettle expects the leading zeros ot be present. Now, we handle this by padding all secret keys before handing them off to nettle. Fixes #96
2018-11-02openpgp: improve handling uid revocations.Kai Michaelis
Revocation signatures only revoke earlier self-sigs, not signatures made after the rev-sig.
2018-11-02openpgp: Fix test.Justus Winter
- Fixes d4eb1d81803976a8a87f5c198a4493c1fc629a47.
2018-11-02openpgp: Create revocation certificates for TPKs.Justus Winter
- Fixes #95.
2018-11-01openpgp: Add test.Justus Winter
- Fixes #47.
2018-11-01openpgp: Return an error in case of conflicts.Justus Winter
- Fixes #124.
2018-10-30openpgp: Make some subpackets not critical by default.Justus Winter
- Mark some subpackets created using the convenience setters on the signature builder as not critical according to the list given in #58: 2 = Signature Creation Time - critical 3 = Signature Expiration Time - critical 4 = Exportable Certification - critical 5 = Trust Signature - critical 6 = Regular Expression - critical 9 = Key Expiration Time - critical 11 = Preferred Symmetric Algorithms - not critical 16 = Issuer - not critical 20 = Notation Data - critical if any notation is critical 21 = Preferred Hash Algorithms - not critical 22 = Preferred Compression Algorithms - not critical 23 = Key Server Preferences - not critical 24 = Preferred Key Server - not critical 25 = Primary User ID - critical 26 = Policy URI - not critical (not machine readable) 27 = Key Flags - critical 28 = Signer's User ID - critical 29 = Reason for Revocation - not critical 30 = Features - not critical 31 = Signature Target - critical 32 = Embedded Signature - critical - Fixes #58.
2018-10-30openpgp: Make Serialize::to_vec() return Result(_).Justus Winter
- Fixes #121.
2018-10-30openpgp: Implement Serialize for TPK and TSK.Justus Winter
2018-10-30openpgp: Update comment.Justus Winter
2018-10-26openpgp: Add constructors to TSK, implement Deref{,Mut} for TSK.Justus Winter
2018-10-26openpgp: Fix serializing keys that have no secrets.Justus Winter
2018-10-26openpgp: Fix serializing TSKs.Justus Winter
2018-10-23openpgp: Move sequre_eq to openpgp::crypto.Justus Winter
2018-10-23openpgp: Move SessionKey into openpgp::crypto.Justus Winter
2018-10-23openpgp: Move the Password type to openpgp::crypto.Justus Winter
2018-10-23openpgp: Move the hash_file(..) function to openpgp::crypto.Justus Winter
2018-10-23openpgp: Move openpgp::mpis to openpgp::crypto::mpis.Justus Winter
2018-10-23openpgp: Move S2K to openpgp::crypto.Justus Winter
2018-10-23openpgp: Move crypto primitives to openpgp::crypto.Justus Winter
- This commit moves all non-exported modules.
2018-10-23openpgp, tool: Improve iteration over packet maps.Justus Winter
- Using a concrete type allows us to change the implementation later. Furthermore, we avoid a heap allocation.
2018-10-23openpgp: Move Map into a new module.Justus Winter
2018-10-18openpgp: implement len() for the TPK iterators.Kai Michaelis
2018-10-17openpgp: don't show SecretKey values in release modeKai Michaelis