From 7f66a52fa71c2ef5535b9ec831f4560ce051a8f8 Mon Sep 17 00:00:00 2001 From: DR497 <47689875+dr497@users.noreply.github.com> Date: Fri, 15 Oct 2021 11:29:21 +0800 Subject: [PATCH] lint --- src/utils/diffie-hellman/ed2curve.js | 248 +++++++++++++-------------- 1 file changed, 124 insertions(+), 124 deletions(-) diff --git a/src/utils/diffie-hellman/ed2curve.js b/src/utils/diffie-hellman/ed2curve.js index e627a4a..8fdd476 100644 --- a/src/utils/diffie-hellman/ed2curve.js +++ b/src/utils/diffie-hellman/ed2curve.js @@ -5,23 +5,22 @@ * Written by Dmitry Chestnykh in 2014. Public domain. */ /* jshint newcap: false */ -;(function (root, f) { - 'use strict' +(function (root, f) { // eslint-disable-next-line @typescript-eslint/no-var-requires - if (typeof module !== 'undefined' && module.exports) module.exports = f(require('tweetnacl')) - else root.ed2curve = f(root.nacl) + if (typeof module !== 'undefined' && module.exports) + module.exports = f(require('tweetnacl')); + else root.ed2curve = f(root.nacl); })(this, function (nacl) { - 'use strict' - if (!nacl) throw new Error('tweetnacl not loaded') + if (!nacl) throw new Error('tweetnacl not loaded'); // -- Operations copied from TweetNaCl.js. -- var gf = function (init) { var i, - r = new Float64Array(16) - if (init) for (i = 0; i < init.length; i++) r[i] = init[i] - return r - } + r = new Float64Array(16); + if (init) for (i = 0; i < init.length; i++) r[i] = init[i]; + return r; + }; var gf0 = gf(), gf1 = gf([1]), @@ -60,147 +59,148 @@ 0x4fc1, 0x2480, 0x2b83, - ]) + ]); function car25519(o) { - var c - var i + var c; + var i; for (i = 0; i < 16; i++) { - o[i] += 65536 - c = Math.floor(o[i] / 65536) - o[(i + 1) * (i < 15 ? 1 : 0)] += c - 1 + 37 * (c - 1) * (i === 15 ? 1 : 0) - o[i] -= c * 65536 + o[i] += 65536; + c = Math.floor(o[i] / 65536); + o[(i + 1) * (i < 15 ? 1 : 0)] += + c - 1 + 37 * (c - 1) * (i === 15 ? 1 : 0); + o[i] -= c * 65536; } } function sel25519(p, q, b) { var t, - c = ~(b - 1) + c = ~(b - 1); for (var i = 0; i < 16; i++) { - t = c & (p[i] ^ q[i]) - p[i] ^= t - q[i] ^= t + t = c & (p[i] ^ q[i]); + p[i] ^= t; + q[i] ^= t; } } function unpack25519(o, n) { - var i - for (i = 0; i < 16; i++) o[i] = n[2 * i] + (n[2 * i + 1] << 8) - o[15] &= 0x7fff + var i; + for (i = 0; i < 16; i++) o[i] = n[2 * i] + (n[2 * i + 1] << 8); + o[15] &= 0x7fff; } // addition function A(o, a, b) { - var i - for (i = 0; i < 16; i++) o[i] = (a[i] + b[i]) | 0 + var i; + for (i = 0; i < 16; i++) o[i] = (a[i] + b[i]) | 0; } // subtraction function Z(o, a, b) { - var i - for (i = 0; i < 16; i++) o[i] = (a[i] - b[i]) | 0 + var i; + for (i = 0; i < 16; i++) o[i] = (a[i] - b[i]) | 0; } // multiplication function M(o, a, b) { var i, j, - t = new Float64Array(31) - for (i = 0; i < 31; i++) t[i] = 0 + t = new Float64Array(31); + for (i = 0; i < 31; i++) t[i] = 0; for (i = 0; i < 16; i++) { for (j = 0; j < 16; j++) { - t[i + j] += a[i] * b[j] + t[i + j] += a[i] * b[j]; } } for (i = 0; i < 15; i++) { - t[i] += 38 * t[i + 16] + t[i] += 38 * t[i + 16]; } - for (i = 0; i < 16; i++) o[i] = t[i] - car25519(o) - car25519(o) + for (i = 0; i < 16; i++) o[i] = t[i]; + car25519(o); + car25519(o); } // squaring function S(o, a) { - M(o, a, a) + M(o, a, a); } // inversion function inv25519(o, i) { - var c = gf() - var a - for (a = 0; a < 16; a++) c[a] = i[a] + var c = gf(); + var a; + for (a = 0; a < 16; a++) c[a] = i[a]; for (a = 253; a >= 0; a--) { - S(c, c) - if (a !== 2 && a !== 4) M(c, c, i) + S(c, c); + if (a !== 2 && a !== 4) M(c, c, i); } - for (a = 0; a < 16; a++) o[a] = c[a] + for (a = 0; a < 16; a++) o[a] = c[a]; } function pack25519(o, n) { - var i, j, b + var i, j, b; var m = gf(), - t = gf() - for (i = 0; i < 16; i++) t[i] = n[i] - car25519(t) - car25519(t) - car25519(t) + t = gf(); + for (i = 0; i < 16; i++) t[i] = n[i]; + car25519(t); + car25519(t); + car25519(t); for (j = 0; j < 2; j++) { - m[0] = t[0] - 0xffed + m[0] = t[0] - 0xffed; for (i = 1; i < 15; i++) { - m[i] = t[i] - 0xffff - ((m[i - 1] >> 16) & 1) - m[i - 1] &= 0xffff + m[i] = t[i] - 0xffff - ((m[i - 1] >> 16) & 1); + m[i - 1] &= 0xffff; } - m[15] = t[15] - 0x7fff - ((m[14] >> 16) & 1) - b = (m[15] >> 16) & 1 - m[14] &= 0xffff - sel25519(t, m, 1 - b) + m[15] = t[15] - 0x7fff - ((m[14] >> 16) & 1); + b = (m[15] >> 16) & 1; + m[14] &= 0xffff; + sel25519(t, m, 1 - b); } for (i = 0; i < 16; i++) { - o[2 * i] = t[i] & 0xff - o[2 * i + 1] = t[i] >> 8 + o[2 * i] = t[i] & 0xff; + o[2 * i + 1] = t[i] >> 8; } } function par25519(a) { - var d = new Uint8Array(32) - pack25519(d, a) - return d[0] & 1 + var d = new Uint8Array(32); + pack25519(d, a); + return d[0] & 1; } function vn(x, xi, y, yi, n) { var i, - d = 0 - for (i = 0; i < n; i++) d |= x[xi + i] ^ y[yi + i] - return (1 & ((d - 1) >>> 8)) - 1 + d = 0; + for (i = 0; i < n; i++) d |= x[xi + i] ^ y[yi + i]; + return (1 & ((d - 1) >>> 8)) - 1; } function crypto_verify_32(x, xi, y, yi) { - return vn(x, xi, y, yi, 32) + return vn(x, xi, y, yi, 32); } function neq25519(a, b) { var c = new Uint8Array(32), - d = new Uint8Array(32) - pack25519(c, a) - pack25519(d, b) - return crypto_verify_32(c, 0, d, 0) + d = new Uint8Array(32); + pack25519(c, a); + pack25519(d, b); + return crypto_verify_32(c, 0, d, 0); } function pow2523(o, i) { - var c = gf() - var a - for (a = 0; a < 16; a++) c[a] = i[a] + var c = gf(); + var a; + for (a = 0; a < 16; a++) c[a] = i[a]; for (a = 250; a >= 0; a--) { - S(c, c) - if (a !== 1) M(c, c, i) + S(c, c); + if (a !== 1) M(c, c, i); } - for (a = 0; a < 16; a++) o[a] = c[a] + for (a = 0; a < 16; a++) o[a] = c[a]; } function set25519(r, a) { - var i - for (i = 0; i < 16; i++) r[i] = a[i] | 0 + var i; + for (i = 0; i < 16; i++) r[i] = a[i] | 0; } function unpackneg(r, p) { @@ -210,39 +210,39 @@ den = gf(), den2 = gf(), den4 = gf(), - den6 = gf() + den6 = gf(); - set25519(r[2], gf1) - unpack25519(r[1], p) - S(num, r[1]) - M(den, num, D) - Z(num, num, r[2]) - A(den, r[2], den) + set25519(r[2], gf1); + unpack25519(r[1], p); + S(num, r[1]); + M(den, num, D); + Z(num, num, r[2]); + A(den, r[2], den); - S(den2, den) - S(den4, den2) - M(den6, den4, den2) - M(t, den6, num) - M(t, t, den) + S(den2, den); + S(den4, den2); + M(den6, den4, den2); + M(t, den6, num); + M(t, t, den); - pow2523(t, t) - M(t, t, num) - M(t, t, den) - M(t, t, den) - M(r[0], t, den) + pow2523(t, t); + M(t, t, num); + M(t, t, den); + M(t, t, den); + M(r[0], t, den); - S(chk, r[0]) - M(chk, chk, den) - if (neq25519(chk, num)) M(r[0], r[0], I) + S(chk, r[0]); + M(chk, chk, den); + if (neq25519(chk, num)) M(r[0], r[0], I); - S(chk, r[0]) - M(chk, chk, den) - if (neq25519(chk, num)) return -1 + S(chk, r[0]); + M(chk, chk, den); + if (neq25519(chk, num)) return -1; - if (par25519(r[0]) === p[31] >> 7) Z(r[0], gf0, r[0]) + if (par25519(r[0]) === p[31] >> 7) Z(r[0], gf0, r[0]); - M(r[3], r[0], r[1]) - return 0 + M(r[3], r[0], r[1]); + return 0; } // ---- @@ -253,47 +253,47 @@ var z = new Uint8Array(32), q = [gf(), gf(), gf(), gf()], a = gf(), - b = gf() + b = gf(); - if (unpackneg(q, pk)) return null // reject invalid key + if (unpackneg(q, pk)) return null; // reject invalid key - var y = q[1] + var y = q[1]; - A(a, gf1, y) - Z(b, gf1, y) - inv25519(b, b) - M(a, a, b) + A(a, gf1, y); + Z(b, gf1, y); + inv25519(b, b); + M(a, a, b); - pack25519(z, a) - return z + pack25519(z, a); + return z; } // Converts Ed25519 secret key to Curve25519 secret key. function convertSecretKey(sk) { var d = new Uint8Array(64), o = new Uint8Array(32), - i - nacl.lowlevel.crypto_hash(d, sk, 32) - d[0] &= 248 - d[31] &= 127 - d[31] |= 64 - for (i = 0; i < 32; i++) o[i] = d[i] - for (i = 0; i < 64; i++) d[i] = 0 - return o + i; + nacl.lowlevel.crypto_hash(d, sk, 32); + d[0] &= 248; + d[31] &= 127; + d[31] |= 64; + for (i = 0; i < 32; i++) o[i] = d[i]; + for (i = 0; i < 64; i++) d[i] = 0; + return o; } function convertKeyPair(edKeyPair) { - var publicKey = convertPublicKey(edKeyPair.publicKey) - if (!publicKey) return null + var publicKey = convertPublicKey(edKeyPair.publicKey); + if (!publicKey) return null; return { publicKey: publicKey, secretKey: convertSecretKey(edKeyPair.secretKey), - } + }; } return { convertPublicKey: convertPublicKey, convertSecretKey: convertSecretKey, convertKeyPair: convertKeyPair, - } -}) + }; +});