Filippo Valsorda
b142e0fd01
internal/format: switch to 64 columns of standard Base64
...
Now that we don't use Base64 in keys, let's just go back to the standard
alphabet. Still in the spirit of reducing weirdness, use the PEM column
count, so we can also reuse the lineWriter for the PEM armor.
See https://groups.google.com/d/msg/age-dev/UAjkvLoCr9I/l4Q1h3OPAgAJ .
2019-12-27 17:13:20 +01:00
Filippo Valsorda
9a84e437b1
all: switch key format to Bech32
...
Use the BIP173 format, which is whole-word selectable, markup safe, and
case insensitive.
AGE-SECRET-KEY-1FPSHVEFQXYSX5MMFDE6ZCGRTV4JHQGRFWSS8WETVDSSX76TVV4JQU272CR
See https://groups.google.com/d/msg/age-dev/UAjkvLoCr9I/l4Q1h3OPAgAJ .
All bech32 Go packages have funky APIs, internal types, or case
handling, so include a heavily refactored version of the reference
implementation, and the tests from github.com/btcsuite/btcutil/bech32.
2019-12-27 17:13:20 +01:00
Filippo Valsorda
8c600131ec
cmd/age: print age-tool.com/report link on errors
2019-12-07 01:19:02 -05:00
Filippo Valsorda
0369d9b7fb
cmd/age-keygen: detect world-readable output file
2019-12-07 00:59:41 -05:00
Filippo Valsorda
93ea79628d
all: change module name to filippo.io/age
...
No need to tie ourselves to GitHub.
The redirect is not set up yet, but as long as there is a replace in the
go.mod the tool can't be installed with "go get" anyway.
Not using age-tool.com because A) I don't actually like the domain and
B) it should be about the spec not the specific implementation.
2019-12-07 00:59:41 -05:00
Filippo Valsorda
aefae7ca0f
cmd/age: autodetect --passphrase in --decrypt mode
2019-12-07 00:59:41 -05:00
Filippo Valsorda
470186da64
cmd/age: implement -p/--passphrase
2019-12-07 00:59:41 -05:00
Filippo Valsorda
1a5bcfeab9
.github: add issue templates ( #23 )
2019-12-07 00:58:07 -05:00
Filippo Valsorda
7ef2aa8a4e
README: mention mailing list and Twitch
2019-11-28 18:44:00 -04:00
Filippo Valsorda
a070570595
cmd/age: don't worry about sending decryption output to the terminal
2019-11-27 22:55:29 -04:00
Filippo Valsorda
025d8d5c0b
cmd/age: fix support for password-protected ssh-ed25519 keys
2019-11-27 22:54:24 -04:00
Filippo Valsorda
03f7237541
internal/age: refactor to use the new golang.org/x/crypto/curve25519 API
2019-11-27 22:49:40 -04:00
Filippo Valsorda
9821fcefc9
internal/stream: fix TestRoundTrip
2019-11-27 22:00:48 -04:00
Filippo Valsorda
f90681e0df
cmd/age: detect output to the terminal and require opt-in or armor
...
Also, buffer the armor, so it doesn't get in the way of typing.
2019-11-27 19:40:59 -04:00
Filippo Valsorda
5ea3ee2f63
cmd/age: revamp CLI with -r/-i, long options, and input arg
2019-11-27 19:40:41 -04:00
Filippo Valsorda
779b033c8b
cmd/age-keygen: move to a standalone binary
2019-11-27 18:56:08 -04:00
Filippo Valsorda
884b6f365d
internal/age: support parsing armored files
2019-11-24 22:28:57 -05:00
Filippo Valsorda
4c4e446f72
internal/age,internal/format: implement armored file generation
2019-11-24 21:10:57 -05:00
Filippo Valsorda
c624abc0ad
cmd/age: add support for encrypted SSH key files
2019-11-24 19:15:53 -05:00
Filippo Valsorda
2cc62919a6
cmd/age: refactor parseIdentitiesFile
2019-10-17 10:31:44 -04:00
Filippo Valsorda
8f7e6dcd45
cmd/age: detect age and SSH private keys from file contents
2019-10-14 21:43:48 -04:00
Filippo Valsorda
a5bf40786d
cmd/age: add -i and -o flags
2019-10-14 21:09:11 -04:00
Filippo Valsorda
2a0aef5803
internal/age: use a prototype of X25519 from golang/go#32670
2019-10-13 18:14:54 -04:00
Filippo Valsorda
11fc3e293a
internal/format: wrap body at 56 columns
2019-10-13 17:24:21 -04:00
Artyom Pervukhin
2d009c8eaf
cmd/age: add missing close in parseIdentitiesFile ( #14 )
2019-10-13 16:34:09 -04:00
Dimitris Apostolou
fe362d8f0a
internal/age: fix typo in an ed25519PublicKeyToCurve25519 comment ( #13 )
2019-10-09 17:57:02 -04:00
Filippo Valsorda
a99e57c53c
internal/age: make the scrypt recipient work parameter log2(N)
...
Fixes #10
2019-10-08 23:24:13 -04:00
Filippo Valsorda
c4269b6185
.travis.yml: enable Travis-CI ( #5 )
2019-10-07 22:39:10 -04:00
Matt Layher
dd0939ffaa
cmd/age: initial support for SSH identities and recipients
...
Signed-off-by: Matt Layher <mdlayher@gmail.com >
2019-10-07 22:14:24 -04:00
Filippo Valsorda
7f61cf23bf
age: add README about the state of the implementation
2019-10-07 16:59:42 -04:00
Filippo Valsorda
022002171c
internal/age: add ssh-ed25519 recipients
2019-10-07 00:45:59 -04:00
Filippo Valsorda
0940f184fb
cmd/age: add a prototype of the command line tool
2019-10-06 23:16:20 -04:00
Filippo Valsorda
37d95cc84a
all: remove AEAD marker
...
As Thomas convinced me, we can always add it back by bumping the
version, but the fewest knobs and joints we start with, the better.
2019-10-06 21:57:26 -04:00
Filippo Valsorda
e9c118cea0
internal: implement STREAM, key exchange, encryption and decryption
...
Developed live over 6 hours of streaming on Twitch.
https://twitter.com/FiloSottile/status/1180875486911766528
2019-10-06 21:19:04 -04:00
Filippo Valsorda
52dbe9eecf
internal/format: implement outer layer parsing and marshaling
2019-10-05 22:45:51 -04:00
Filippo Valsorda
06cbe4f91e
Initial commit
2019-10-05 22:45:51 -04:00