diff --git a/ethcrypto/crypto.go b/ethcrypto/crypto.go index 19f8c9e55..f5f0f7e68 100644 --- a/ethcrypto/crypto.go +++ b/ethcrypto/crypto.go @@ -1,9 +1,10 @@ package ethcrypto import ( + "crypto/sha256" + "code.google.com/p/go.crypto/ripemd160" "code.google.com/p/go.crypto/sha3" - "crypto/sha256" "github.com/ethereum/eth-go/ethutil" ) @@ -21,7 +22,7 @@ func Ripemd160(data []byte) []byte { } func Sha3Bin(data []byte) []byte { - d := sha3.NewKeccak256() + d := sha3.New256() d.Write(data) return d.Sum(nil) diff --git a/ethcrypto/crypto_test.go b/ethcrypto/crypto_test.go new file mode 100644 index 000000000..8418c9a5a --- /dev/null +++ b/ethcrypto/crypto_test.go @@ -0,0 +1,16 @@ +package ethcrypto + +import ( + "bytes" + "testing" + + "github.com/ethereum/eth-go/ethutil" +) + +func TestSha3(t *testing.T) { + const exp = "3a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532" + sha3_256 := Sha3Bin([]byte("abc")) + if bytes.Compare(sha3_256, ethutil.Hex2Bytes(exp)) != 0 { + t.Errorf("Sha3_256 failed. Incorrect result %x", sha3_256) + } +}