34 Commits

Author SHA1 Message Date
Christopher Goes
8e273220a3 Remove error from priv.PubKey() (#131)
* Remove error from priv.PubKey()

* Update changelog
2018-06-12 13:35:22 -07:00
Christopher Goes
c21f67c5af Unify local and external keys in keybase interface (#117)
* Return errors on priv.Sign(), priv.PubKey()

* Add CreateLedger, CreateOffline

* Add switch on .Sign() for Ledger wallets

* Add offline signing switch on .Sign()

* Use MustUnmarshalBinaryBare()

* Add confirmation to delete offline/Ledger keys

* Lowercase error message

* Add human-readable .GetType() function to Info interface

* Rename CryptoAlgo => SignAlgo

* assert.Nil(t, err) => assert.NoError(t, err)
2018-06-10 01:01:41 -07:00
Ethan Buchman
ad837a8183 fix ed25519 Generate 2018-05-05 19:17:21 -04:00
Jae Kwon
0d4436dea7 Use MarshalBinaryBare; Fix encode_test; Bump version 2018-03-26 10:41:04 +02:00
Jae Kwon
12142af1cb Remove reliance on global wire.Marshal 2018-01-21 19:03:23 -08:00
Jae Kwon
788cc0a792 Use new go-wire; PubKey etc are interfaces; Keybase refactor 2018-01-14 01:09:30 -08:00
Ethan Buchman
43cc4fb645
Merge pull request #53 from tendermint/constant-time-equals
Constant time equals
2017-12-21 20:03:53 -05:00
Ethan Buchman
eaf4b8c795 fix Equals 2017-12-21 19:51:57 -05:00
Emmanuel Odeke
3df2ca128d
make PrivateKey + Signature comparisons use constant time comparisons
Fixes https://github.com/tendermint/go-crypto/issues/43

Avoid susceptibility to timing/side channel attacks by ensuring
that private key and signature comparisons use
`subtle.ConstantTimeCompare`
instead of
`bytes.Equal`
2017-10-25 19:56:13 -07:00
Ethan Frey
bce88a20df Enable privkey validity checking on load 2017-10-24 11:38:06 +02:00
Ethan Frey
db5cb8d92c Change codegen name holder->wrapper 2017-05-16 17:02:48 +02:00
Ethan Frey
746a2e286d Codegen wrappers for privkey and signature as well 2017-05-16 17:01:15 +02:00
Ethan Frey
9016390a6e Moved crypto code to top level again 2017-04-19 16:55:15 +02:00
Ethan Frey
17ed6d178d move go-crypto files pre-keys merge 2017-04-19 16:51:29 +02:00
Ethan Buchman
8bb25ec5ed update paths 2017-04-18 18:17:02 -04:00
Ethan Frey
9e57d521ef Add type assertions for sig/pub/privkey implemenetations 2017-04-10 19:51:02 +02:00
Jae Kwon
a3324cc97b Cleanup; Implement .Wrap() 2017-04-10 19:51:02 +02:00
Ethan Frey
eb6fcef8d2 Better docs and naming thanks to bucky 2017-04-10 19:51:01 +02:00
Ethan Frey
5b94758d4c Make PubKey struct compatible with go-wire.JSONBytes/ReadJSON 2017-04-10 19:51:01 +02:00
Ethan Frey
66ecd7705f Use new naming scheme PubKey{PubKeyInner} 2017-04-10 19:51:01 +02:00
Ethan Frey
750b25c47a Update go-data, test embedding strategies 2017-04-10 19:41:30 +02:00
Ethan Frey
49569ac244 Wrap constructor to create xxxS structs and avoid recursion 2017-04-10 19:41:30 +02:00
Ethan Buchman
3a1313ab7d secp256k1: use compressed pubkey, bitcoin-style address 2017-03-22 01:18:56 -04:00
Ethan Frey
0e92dd5bb5 One name, type byte per algorithm 2017-02-24 00:31:43 +01:00
Ethan Frey
8c9b889ccf Support json encode/decode for nil values in S structs 2017-02-23 18:11:20 +01:00
Ethan Frey
b6a2c5949f Add helper methods for nil checks in structs 2017-02-23 15:35:04 +01:00
Ethan Frey
e6d35ee641 Add structs for go-data support 2017-02-22 23:15:10 +01:00
Jae Kwon
7e767e9548 Secp256k1 pubkeys are 64 bytes. Strip btcec prefix byte 2016-04-20 08:46:07 -07:00
Jae Kwon
d57d5ff3c9 PrivKey.Equals 2016-04-19 01:26:40 -07:00
Jae Kwon
8b34fd2e51 Add secp256k1 support 2016-04-19 01:02:31 -07:00
Jae Kwon
9a95e7b7a5 Added Bytes() and *FromBytes() 2016-03-15 11:11:54 -07:00
Jae Kwon
76ba23e4c0 Fix bug in GenPrivKeyEd25519FromSecret 2016-02-08 02:18:06 -08:00
Jae Kwon
31a456c8d4 update package name 2015-10-25 13:45:13 -07:00
Jae Kwon
fcdea621bf first commit 2015-10-25 13:42:49 -07:00