Commit graph

41 commits

Author SHA1 Message Date
Sudhi Herle
36410626dd Added docstring to protobuf file 2020-02-15 11:15:38 -08:00
Sudhi Herle
1cd3a94180 Added new io.Reader and io.WriteCloser interface to Decryption and Encryption respectively.
* added test case for streaming read/write
* bumped version#
2020-02-14 18:47:25 -08:00
Sudhi Herle
088f1e9ca2 simplified error handling in Encrypt() 2020-02-02 21:32:16 +05:30
Sudhi Herle
8ed3bff6db Cleaned up chunk header encoding during encrypt/decrypt.
* encrypted chunk header now encodes _only_ plain text length
* the AEAD tag length is implicitly added when reading/writing
* added better sanity checks for short blocks during decrypt
* io.ReadAtLeast() reports ErrUnexpectedEOF for less than a full chunk;
  use this signal correctly
* major version bump to denote header incompatibility
2020-01-29 16:47:14 +05:30
Sudhi Herle
d18b7a05bc minor ver bump 2020-01-23 12:25:01 +05:30
Sudhi Herle
0ba5c8b599 don't die if blksize is too large; clamp it to max allowed. 2020-01-23 12:24:27 +05:30
Sudhi Herle
fbfcd37679 Removed deprecated functions in curve25519
* Replaced ScalarMult()/ScalarBaseMult() with X25519()
* version# bump
2020-01-09 15:19:17 -08:00
Sudhi Herle
f32525a864 THIS IS A BREAKING CHANGE! Private Keys generated by previous versions won't work with this version.
* Refactored the private key protection to use standard AEAD
  construction.
* Fix sanity check of decrypted block length to stay within verified
  bounds
* Cleanup test harness to split into utility file (assert()); cleaned up
  names of test functions.
* Fixed scrypt params to not take too long (N=2^19)
* Updated README with these changes
2020-01-08 09:17:54 -08:00
Sudhi Herle
262a554356 Minor refactoring: header checksum now covers _all_ of the header 2019-12-31 11:39:25 -08:00
Sudhi Herle
374daebb8d Use size parsing option in pflag 2019-11-15 13:26:11 -08:00
Sudhi Herle
48142c5577 Updated go.mod to use new upstream pflag; it now understands unique
abbreviations of long args.
2019-11-09 13:20:33 -08:00
Sudhi Herle
0abbfd37ec Teach dec to run in test-only mode 2019-11-08 10:49:13 -08:00
Sudhi Herle
a9c17988c4 Teach sigtool to mark the last block (eof). 2019-11-07 11:57:01 +01:00
Sudhi Herle
f82c1336ac sigtool now supports openssh ed25519 public and private keys.
* Added support to read openssh public keys and encrypted private keys
* reworked private key handling
* made password the default; generating keys without password
  requires explicit "--no-password"
2019-11-05 21:42:25 +01:00
Sudhi Herle
b14f9d1e53 Merge branch 'encdec' 2019-10-22 20:12:51 -07:00
Sudhi Herle
817aa7fd6a Added tests for encrypt/decrypt routines. Updated minor version# 2019-10-22 10:06:49 -07:00
Sudhi Herle
a347fdca79 Teach 'sigtool enc' to accept a user defined block size 2019-10-21 13:28:27 -07:00
Sudhi Herle
387c75e791 Ran gofmt on all files; forgot to do that after merging. 2019-10-19 21:12:57 -05:00
Sudhi Herle
d9755bc793 Added helper function to take raw bytes and turn em into keys 2019-10-19 14:58:07 -07:00
Sudhi Herle
3c3c51b5ac Merge branch 'encdec' of github.com:opencoff/sigtool into encdec 2019-10-19 14:42:41 -07:00
Sudhi Herle
a1bbcbd5a8 Fixed slice aliasing error in signature creation 2019-10-19 14:42:19 -07:00
Sudhi Herle
0d61498db9 Better err message when no protobuf found 2019-10-18 19:57:37 -05:00
Sudhi Herle
a27044154a Working version with enc/dec of all key types.
* Updated README
* fix non-ephemeral key wrap/unwrap
* fix out of bounds error in decrypt
2019-10-18 15:42:08 -07:00
Sudhi Herle
21445ba1a1 First working version of encrypt/decrypt
* use protobuf for encryption-header
* use fixed size file-header (42 bytes) before the encryption-header
* add encryption/decryption contexts
* teach MakePrivateKey() to fixup its internal public key bits
2019-10-17 14:29:01 -07:00
Sudhi Herle
9473c10bfd Added encrypt/decrypt commands to sigtool 2019-10-14 09:46:03 -07:00
Sudhi Herle
1cc55e1a55 WIP: added encryption key mgmt
* added encrypt, decrypt commands (empty now)
* use command abbreviation util library
* switched to go1.13 (ed25519 now in stdlib)
* added new code to convert/manage Ed25519 keys to Curve25519
  (thanks to FiloSottile/age)
2019-10-09 14:52:34 -07:00
Sudhi Herle
f0302e3a7d Update to newer upstream packages 2019-08-05 14:02:21 +01:00
Sudhi Herle
40a0c2d829 Teach sigtool to use go modules; updated to use my fork of pflag. 2019-06-20 10:51:33 +05:30
Sudhi Herle
15477d6197 Moved go-sign from external repo to this repo; updated README; added Makefile 2018-10-18 17:10:29 +09:00
Sudhi Herle
191b7a457d fixed incorrect reference to go-lib -> go-sign 2018-05-03 10:30:32 -05:00
Sudhi Herle
2f95f63964 Refactor sigtool to use pflag instead of go-options. 2018-05-01 23:59:19 -05:00
Sudhi Herle
7015d03394 Fixed import paths due to go-lib restructuring; updated with gofmt. 2018-02-28 22:01:01 -06:00
Sudhi Herle
1ef7ecaf6a Use new import path for Askpass(); teach "gen" to not overwrite files. 2017-05-04 08:10:23 -07:00
"sudhi@herle.net"
7e84c64397 Add a check for incorrect public key. 2016-10-27 13:52:17 -07:00
"sudhi@herle.net"
7bf1e55204 Updated README with examples; removed non-functional "no-serialize" 2016-10-27 13:40:39 -07:00
"sudhi@herle.net"
2bee72a25e Added LICENSE, updated README 2016-10-06 22:21:05 -07:00
"sudhi@herle.net"
f3a1852adc Removed src dir; made this go-gettable 2016-10-06 22:07:26 -07:00
"sudhi@herle.net"
dc86cede20 v1.0 2016-10-06 22:06:41 -07:00
"sudhi@herle.net"
0df9416271 Exp 2016-10-06 22:01:11 -07:00
"sudhi@herle.net"
800490e4e2 Initial commit 2016-10-06 21:59:04 -07:00
Sudhi Herle
b33d585ec0 Initial commit 2016-10-06 21:39:35 -07:00