Skip to content

Commit

Permalink
Merge eaf15b7 into 9c4af83
Browse files Browse the repository at this point in the history
  • Loading branch information
dcousens committed Jun 4, 2015
2 parents 9c4af83 + eaf15b7 commit 9dc24c4
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 8 deletions.
16 changes: 8 additions & 8 deletions lib/bip38.js
@@ -1,5 +1,6 @@
var aes = require('browserify-aes')
var assert = require('assert')
var crypto = require('crypto')
var createHash = require('create-hash')
var cs = require('coinstring')
var scrypt = require('scryptsy')

Expand All @@ -21,8 +22,8 @@ function bufferXOR(buf1, buf2) {

// SHA256(SHA256(buffer))
function sha256x2(buffer) {
buffer = crypto.createHash('sha256').update(buffer).digest()
return crypto.createHash('sha256').update(buffer).digest()
buffer = createHash('sha256').update(buffer).digest()
return createHash('sha256').update(buffer).digest()
}

function Bip38(versions) {
Expand Down Expand Up @@ -54,7 +55,7 @@ Bip38.prototype.encryptRaw = function(buffer, compressed, passphrase, saltAddres
var derivedHalf2 = scryptBuf.slice(32, 64)

var xorBuf = bufferXOR(buffer, derivedHalf1)
var cipher = crypto.createCipheriv('aes-256-ecb', derivedHalf2, new Buffer(0))
var cipher = aes.createCipheriv('aes-256-ecb', derivedHalf2, new Buffer(0))
cipher.setAutoPadding(false)
cipher.end(xorBuf)

Expand Down Expand Up @@ -117,7 +118,7 @@ Bip38.prototype.decryptRaw = function(encData, passphrase) {
var derivedHalf2 = scryptBuf.slice(32, 64)

var privKeyBuf = encData.slice(7, 7 + 32)
var decipher = crypto.createDecipheriv('aes-256-ecb', derivedHalf2, new Buffer(0))
var decipher = aes.createDecipheriv('aes-256-ecb', derivedHalf2, new Buffer(0))
decipher.setAutoPadding(false)
decipher.end(privKeyBuf)

Expand Down Expand Up @@ -194,15 +195,15 @@ Bip38.prototype.decryptECMult = function(encData, passphrase) {
var derivedHalf1 = seedBPass.slice(0,32)
var derivedHalf2 = seedBPass.slice(32,64)

var decipher = crypto.createDecipheriv('aes-256-ecb', derivedHalf2, new Buffer(0))
var decipher = aes.createDecipheriv('aes-256-ecb', derivedHalf2, new Buffer(0))
decipher.setAutoPadding(false)
decipher.end(encryptedPart2)

var decryptedPart2 = decipher.read()
var tmp = bufferXOR(decryptedPart2, derivedHalf1.slice(16, 32))
var seedBPart2 = tmp.slice(8, 16)

var decipher2 = crypto.createDecipheriv('aes-256-ecb', derivedHalf2, new Buffer(0))
var decipher2 = aes.createDecipheriv('aes-256-ecb', derivedHalf2, new Buffer(0))
decipher2.setAutoPadding(false)
decipher2.write(encryptedPart1) // first 8 bytes
decipher2.end(tmp.slice(0, 8)) // last 8 bytes
Expand Down Expand Up @@ -246,7 +247,6 @@ Bip38.prototype.verify = function(encryptedBase58) {
return false
}


return true
}

Expand Down
2 changes: 2 additions & 0 deletions package.json
Expand Up @@ -13,7 +13,9 @@
"author": "JP Richardson",
"dependencies": {
"bigi": "^1.2.0",
"browserify-aes": "^1.0.1",
"coinstring": "^2.2.0",
"create-hash": "^1.1.1",
"ecurve": "^1.0.0",
"scryptsy": "^1.2.0"
},
Expand Down

0 comments on commit 9dc24c4

Please sign in to comment.