@constructorfleet/ultimate-govee
Version:
Library for interacting with Govee devices written in Typescript.
24 lines • 908 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseP12Certificate = void 0;
const pem_1 = require("pem");
const node_rsa_1 = __importDefault(require("node-rsa"));
const util_1 = require("util");
const parseP12Certificate = async (certificate, p12Password) => {
try {
const cert = await (0, util_1.promisify)(pem_1.readPkcs12)(Buffer.from(certificate, 'base64'), { p12Password });
const key = new node_rsa_1.default(cert.key);
return {
certificate: cert.cert,
privateKey: key.exportKey('pkcs8'),
};
}
catch (err) {
throw new Error('Invalid P12 certificate');
}
};
exports.parseP12Certificate = parseP12Certificate;
//# sourceMappingURL=p12.util.js.map