- 08 Oct, 2014 9 commits
-
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
this is useful so that loggers are all setup during tests
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
- use log.* instead of u.* - use automatic type conversions to .String() (Peer.String() prints nicely, and avoids calling b58 encoding until needed)
-
Juan Batiz-Benet authored
We'll want a `type blocks.Block interface {}` later, but for now, make sure Blockstore uses ptrs for both Get and Put. + fix NewBlock output compile error
-
Juan Batiz-Benet authored
-
Jeromy authored
-
Jeromy authored
-
- 07 Oct, 2014 3 commits
- 06 Oct, 2014 7 commits
-
-
Jeromy authored
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
the u.Hash error can be safely ignored (panic) because multihash only fails from the selection of hash function. If the fn + length are valid, it won't error. cc @whyrusleeping
-
Jeromy authored
-
Jeromy authored
working on dag modification structures, factored out the data format into an importer subpackage and added more ipns tests
-
- 05 Oct, 2014 5 commits
-
-
Juan Batiz-Benet authored
This commit fixed the notoriously annoying "Malformed Public Key" problem. The issue was that sometimes the byte representation of the points (x,y in big.Int) generated would be one less byte than expected. This is simply because (* big.Int) Write uses the least amount of bytes needed for the int. I instead changed the marshalling/unmarshalling to do exactly what stdlib crypto/tls does: use `ellipctic.Marshal` which marshals according to the ANSI X9.62 standard. http://golang.org/pkg/crypto/elliptic/#Marshal http://golang.org/src/pkg/crypto/tls/key_agreement.go#L214 ```Go // crypto/tls ka.privateKey, x, y, err = elliptic.GenerateKey(ka.curve, config.rand()) ecdhePublic := elliptic.Marshal(ka.curve, x, y) // ipfs/crypto priv, x, y, err := elliptic.GenerateKey(curve, rand.Reader) pubKey := elliptic.Marshal(curve, x, y) ``` ((Warning: we're using `rand.Reader` directly, which we shouldn't do, as it can be seeded. We should use a configured source, as crypto/tls. Flagged in #143)) This makes me think we should re-use a lot of their datastructures and functions directly (e.g. ecdheKeyAgreement) Fixed: #135 cc @bren2010 @whyrusleeping
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
-
Jeromy authored
-
- 04 Oct, 2014 13 commits
-
-
Jeromy authored
-
Jeromy authored
-
Jeromy authored
-
Jeromy authored
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
-
Juan Batiz-Benet authored
-
Jeromy authored
-
Jeromy authored
-
Jeromy authored
-
Jeromy authored
-
Jeromy authored
-
Juan Batiz-Benet authored
this commit dedicated to @whyrusleeping
-
- 03 Oct, 2014 3 commits