keyvenant
Version:
Keyvenant is a JavaScript tool to generate and export CovenantSQL keys to facilitate key management locally and in web extensions.
49 lines • 2.78 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const crypto_1 = require("crypto");
const sha_js_1 = __importDefault(require("sha.js"));
/**
* Calculate the sha256 digest of a string.
*
* ### Example (es imports)
* ```js
* import { sha256 } from 'typescript-starter'
* sha256('test')
* // => '9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08'
* ```
*
* @returns sha256 message digest
*/
function sha256(message, isHex = false) {
return isHex
? sha_js_1.default('sha256').update(message).digest('hex')
: sha_js_1.default('sha256').update(message).digest();
}
exports.sha256 = sha256;
/**
* A faster implementation of [[sha256]] which requires the native Node.js module. Browser consumers should use [[sha256]], instead.
*
* ### Example (es imports)
* ```js
* import { sha256Native as sha256 } from 'typescript-starter'
* sha256('test')
* // => '9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08'
* ```
*
* @returns sha256 message digest
*/
function sha256Native(message, isHex = false) {
return isHex
? crypto_1.createHash('sha256').update(message).digest('hex')
: crypto_1.createHash('sha256').update(message).digest();
}
exports.sha256Native = sha256Native;
function sha256x2(message, isHex = false) {
const first = sha256(message, isHex);
return sha256(first, isHex);
}
exports.sha256x2 = sha256x2;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhMjU2LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy9zaGEyNTYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBbUM7QUFDbkMsb0RBQTBCO0FBRTFCOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsU0FBZ0IsTUFBTSxDQUFDLE9BQVksRUFBRSxLQUFLLEdBQUcsS0FBSztJQUNoRCxPQUFPLEtBQUs7UUFDVixDQUFDLENBQUMsZ0JBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMvQyxDQUFDLENBQUMsZ0JBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUE7QUFDOUMsQ0FBQztBQUpELHdCQUlDO0FBRUQ7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxTQUFnQixZQUFZLENBQUMsT0FBWSxFQUFFLEtBQUssR0FBRyxLQUFLO0lBQ3RELE9BQU8sS0FBSztRQUNWLENBQUMsQ0FBQyxtQkFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ3BELENBQUMsQ0FBQyxtQkFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtBQUNuRCxDQUFDO0FBSkQsb0NBSUM7QUFFRCxTQUFnQixRQUFRLENBQUMsT0FBWSxFQUFFLEtBQUssR0FBRyxLQUFLO0lBQ2xELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDcEMsT0FBTyxNQUFNLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFBO0FBQzdCLENBQUM7QUFIRCw0QkFHQyJ9