- mod optimization [#29]
- mod optimization [#28]
- removed testling
- JavaScript Standard Style
- fixed for Webpack
- add license field
- small cleanup in Point: #24
- bugfix using bytelength in Point (https://github.com/cryptocoinjs/ecurve/commit/dd66233dac444e48ba937f1e7a91e568a67a442c)
- removed curve
secp224r1
because we're using curve specific optimizations for other curves see #21
- moved curves to json Daniel Cousens
- added jshint Daniel Cousens
- added NIST test vectors Daniel Cousens
- added pointFromX() on
Curve
instance Daniel Cousens
- broke compatibility, simplified fields on
Curve
class. Daniel Cousens
- broke compatiblity, removed
Point
class fromCurve
. Daniel Cousens
no longer works:
var Curve = require('ecurve').Curve
var Point = Curve.Point
better way:
var Curve = requre('ecurve').Curve
var Point = require('ecurve').Point
- major clean up by Daniel Cousens
- removed semicolons as per http://cryptocoinjs.com/about/contributing/
- removed
terst
and replaced with Node.jsassert
as per http://cryptocoinjs.com/about/contributing/ - more clean up by Daniel Cousens
ECCurveFp
fieldq
renamed top
/ Daniel Cousensecparams
fieldg
renamed toG
/ Daniel CousensECFieldElementFp
shown unnecessary (deleted) / Daniel Cousens- Chopped of all namespacing for function/class names. / Daniel Cousens
- Fixed validation and added method
isOnCurve()
/ Daniel Cousens - added methods
fromAffine()
, added propertiesaffineX
andaffineY
toPoint
. This is becausePoint
internally stores coordinates as Jacobian. Daniel Cousens - Renamed
getECParams()
togetCurveByName()
Daniel Cousens
- broke compability to make module exporting more logical, so had to bump minor version.
- added http://ci.testling.com support
- changed
ECPointFP.decodeFrom()
to acceptBuffer
instead ofArray
. Thanks BitcoinJS devs / Daniel Cousens :) - changed
ECPointFP.prototype.getEncoded()
to return aBuffer
instead of anArray
- added
compressed
property to instances ofECPointFp
, set totrue
by default ECCurveFp.prototype.decodePointHex
removed. This change brings additonal clarity and removes untested (unused) portions ofdecodePointHex
.
Old way:
var G = curve.decodePointHex("04"
+ "79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798"
+ "483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8");
New way:
var x = BigInteger.fromHex("79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798")
var y = BigInteger.fromHex("483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8")
var G = new ECPointFp(curve, curve.fromBigInteger(x), curve.fromBigInteger(y));
- deleted file
util.js
which containedintegerToBytes(bigInt, sizeInBytes)
, new way:[].slice.call(bigInt.toBuffer(sizeInBytes))
- removed unused methods:
ECPointFp.prototype.add2D
,ECPointFp.prototype.twice2D
, andECPointFp.prototype.multiply2D
- renamed
getCurve()
togetECParams()
to alleviate confusion:
New way:
var ecurve = require('ecurve')
var ecparams = ecurve.getECParams('secp256k1')
- renamed result
ecparams
[names.js] object methodsgetN()
,getH()
,getG()
, andgetCurve()
to propertiesn
,h
,g
,curve
. This isn't Java. JavaScript has excellent property support throughObject.defineProperty
. - renamed
ECCurveFp
methodsgetQ()
,getA()
, andgetB()
to properties. See justfication in previous change.
- moved module
ecurve-names
into this module - moved docs to cryptocoinjs.com
- moved
ECFieldElementFp
tofield-element.js
- moved
ECPointFp
topoint.js
- moved
ECCurveFp
tocurve.js
- upgraded
[email protected]
tobigi@^1.1.0
- added travis-ci and coveralls support
- bugfix:
decodeFrom
works with compressed keys, #8
- bug fix:
ECPointFp.decodeFrom
was incorrectly moved toECPointFp.prototype
- Fixed point export format to adhere to SEC guidelines (Bug #2)
- Removed AMD/Component support
- added browser test
- changed dep to
bigi
- changed package name
- removed AMD support
- initial release