mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-20 10:52:25 +00:00
Merge pull request #497 from dinhln89/v1
Fixed change panic to log error for encrypt/decrypt secret and openin…
This commit is contained in:
commit
4fc27f26b2
3 changed files with 11 additions and 7 deletions
|
|
@ -27,7 +27,7 @@ func TestGetM1M2FromCheckpointHeader(t *testing.T) {
|
||||||
Epoch: uint64(epoch),
|
Epoch: uint64(epoch),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
testMoveM2 := []uint64{0,0,0,1,1,1,2,2,2,0,0,0,1,1,1,2,2,2}
|
testMoveM2 := []uint64{0, 0, 0, 1, 1, 1, 2, 2, 2, 0, 0, 0, 1, 1, 1, 2, 2, 2}
|
||||||
//try from block 3410001 to 3410018
|
//try from block 3410001 to 3410018
|
||||||
for i := uint64(3464001); i <= 3464018; i++ {
|
for i := uint64(3464001); i <= 3464018; i++ {
|
||||||
currentNumber := int64(i)
|
currentNumber := int64(i)
|
||||||
|
|
|
||||||
|
|
@ -503,7 +503,8 @@ func Encrypt(key []byte, text string) string {
|
||||||
|
|
||||||
block, err := aes.NewCipher(key)
|
block, err := aes.NewCipher(key)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
log.Error("Fail to encrypt", "err", err)
|
||||||
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
// The IV needs to be unique, but not secure. Therefore it's common to
|
// The IV needs to be unique, but not secure. Therefore it's common to
|
||||||
|
|
@ -511,7 +512,8 @@ func Encrypt(key []byte, text string) string {
|
||||||
ciphertext := make([]byte, aes.BlockSize+len(plaintext))
|
ciphertext := make([]byte, aes.BlockSize+len(plaintext))
|
||||||
iv := ciphertext[:aes.BlockSize]
|
iv := ciphertext[:aes.BlockSize]
|
||||||
if _, err := io.ReadFull(cryptoRand.Reader, iv); err != nil {
|
if _, err := io.ReadFull(cryptoRand.Reader, iv); err != nil {
|
||||||
panic(err)
|
log.Error("Fail to encrypt iv", "err", err)
|
||||||
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
stream := cipher.NewCFBEncrypter(block, iv)
|
stream := cipher.NewCFBEncrypter(block, iv)
|
||||||
|
|
@ -527,13 +529,15 @@ func Decrypt(key []byte, cryptoText string) string {
|
||||||
|
|
||||||
block, err := aes.NewCipher(key)
|
block, err := aes.NewCipher(key)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
log.Error("Fail to decrypt", "err", err)
|
||||||
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
// The IV needs to be unique, but not secure. Therefore it's common to
|
// The IV needs to be unique, but not secure. Therefore it's common to
|
||||||
// include it at the beginning of the ciphertext.
|
// include it at the beginning of the ciphertext.
|
||||||
if len(ciphertext) < aes.BlockSize {
|
if len(ciphertext) < aes.BlockSize {
|
||||||
panic("ciphertext too short")
|
log.Error("ciphertext too short")
|
||||||
|
return ""
|
||||||
}
|
}
|
||||||
iv := ciphertext[:aes.BlockSize]
|
iv := ciphertext[:aes.BlockSize]
|
||||||
ciphertext = ciphertext[aes.BlockSize:]
|
ciphertext = ciphertext[aes.BlockSize:]
|
||||||
|
|
|
||||||
|
|
@ -422,7 +422,7 @@ func (d *Downloader) syncWithPeer(p *peerConnection, hash common.Hash, td *big.I
|
||||||
}(time.Now())
|
}(time.Now())
|
||||||
|
|
||||||
// Look up the sync boundaries: the common ancestor and the target block
|
// Look up the sync boundaries: the common ancestor and the target block
|
||||||
latest, err := d.fetchHeight(p,hash)
|
latest, err := d.fetchHeight(p, hash)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
@ -541,7 +541,7 @@ func (d *Downloader) Terminate() {
|
||||||
|
|
||||||
// fetchHeight retrieves the head header of the remote peer to aid in estimating
|
// fetchHeight retrieves the head header of the remote peer to aid in estimating
|
||||||
// the total time a pending synchronisation would take.
|
// the total time a pending synchronisation would take.
|
||||||
func (d *Downloader) fetchHeight(p *peerConnection,hash common.Hash) (*types.Header, error) {
|
func (d *Downloader) fetchHeight(p *peerConnection, hash common.Hash) (*types.Header, error) {
|
||||||
|
|
||||||
// Request the advertised remote head block and wait for the response
|
// Request the advertised remote head block and wait for the response
|
||||||
go p.peer.RequestHeadersByHash(hash, 1, 0, false)
|
go p.peer.RequestHeadersByHash(hash, 1, 0, false)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue