diff options
author | obscuren <geffobscura@gmail.com> | 2015-02-14 06:35:21 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2015-02-14 06:35:21 +0800 |
commit | 49a739c8d647739b3d815966f8854a4e9978df56 (patch) | |
tree | 479f4ded4908ad7049f2dcf98e836eb5d7f19c53 /crypto/key_store_passphrase.go | |
parent | 95cfaa1b37c417de45cc754b0ade9746f15f0805 (diff) | |
parent | 12b2d5762996e37320712a3a9ba505a36bd8aca8 (diff) | |
download | go-tangerine-49a739c8d647739b3d815966f8854a4e9978df56.tar go-tangerine-49a739c8d647739b3d815966f8854a4e9978df56.tar.gz go-tangerine-49a739c8d647739b3d815966f8854a4e9978df56.tar.bz2 go-tangerine-49a739c8d647739b3d815966f8854a4e9978df56.tar.lz go-tangerine-49a739c8d647739b3d815966f8854a4e9978df56.tar.xz go-tangerine-49a739c8d647739b3d815966f8854a4e9978df56.tar.zst go-tangerine-49a739c8d647739b3d815966f8854a4e9978df56.zip |
Merge branch 'Gustav-Simonsson-align_key_and_ecdsa_nonce_entropy' into develop
Diffstat (limited to 'crypto/key_store_passphrase.go')
-rw-r--r-- | crypto/key_store_passphrase.go | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/crypto/key_store_passphrase.go b/crypto/key_store_passphrase.go index 0862b7886..74408f874 100644 --- a/crypto/key_store_passphrase.go +++ b/crypto/key_store_passphrase.go @@ -68,10 +68,10 @@ import ( "code.google.com/p/go.crypto/scrypt" "crypto/aes" "crypto/cipher" - crand "crypto/rand" "encoding/hex" "encoding/json" "errors" + "github.com/ethereum/go-ethereum/crypto/randentropy" "io" "os" "path" @@ -116,7 +116,7 @@ func (ks keyStorePassphrase) GetKeyAddresses() (addresses [][]byte, err error) { func (ks keyStorePassphrase) StoreKey(key *Key, auth string) (err error) { authArray := []byte(auth) - salt := GetEntropyCSPRNG(32) + salt := randentropy.GetEntropyMixed(32) derivedKey, err := scrypt.Key(authArray, salt, scryptN, scryptr, scryptp, scryptdkLen) if err != nil { return err @@ -131,7 +131,7 @@ func (ks keyStorePassphrase) StoreKey(key *Key, auth string) (err error) { return err } - iv := GetEntropyCSPRNG(aes.BlockSize) // 16 + iv := randentropy.GetEntropyMixed(aes.BlockSize) // 16 AES256CBCEncrypter := cipher.NewCBCEncrypter(AES256Block, iv) cipherText := make([]byte, len(toEncrypt)) AES256CBCEncrypter.CryptBlocks(cipherText, toEncrypt) @@ -196,12 +196,3 @@ func DecryptKey(ks keyStorePassphrase, keyAddr []byte, auth string) (keyBytes [] } return keyBytes, keyId, err } - -func GetEntropyCSPRNG(n int) []byte { - mainBuff := make([]byte, n) - _, err := io.ReadFull(crand.Reader, mainBuff) - if err != nil { - panic("key generation: reading from crypto/rand failed: " + err.Error()) - } - return mainBuff -} |