UNPKG

keybase-ecurve

Version:

Elliptic curve cryptography, which uses keybase/bn for bignums

22 lines (16 loc) 542 B
var BigInteger = require('bn').BigInteger var curves = require('./curves') var Curve = require('./curve') function getCurveByName(name) { var curve = curves[name] if (!curve) return null var p = new BigInteger(curve.p, 16) var a = new BigInteger(curve.a, 16) var b = new BigInteger(curve.b, 16) var n = new BigInteger(curve.n, 16) var h = new BigInteger(curve.h, 16) var Gx = new BigInteger(curve.Gx, 16) var Gy = new BigInteger(curve.Gy, 16) return new Curve(p, a, b, Gx, Gy, n, h) } module.exports = getCurveByName