How to use the crypt.PKCS1 function in crypt

To help you get started, we’ve selected a few crypt examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github Kinoma / kinomajs / xs6 / extensions / crypt / crypt_oaep.js View on Github external
emeDecode(iEM, P, emLen) {
		var EM = new Uint8Array(iEM.toChunk(emLen));
		var H = this.H;
		var hLen = H.outputSize;
		var maskedSeed = EM.slice(0, hLen);
		var maskedDB = EM.slice(hLen);
		var seedMask = Crypt.PKCS1.MGF(maskedDB, hLen);
		this.xor(maskedSeed, seedMask);
		var dbMask = this.MGF(maskedSeed, emLen - hLen);
		this.xor(maskedDB, dbMask);
		var DB = maskedDB;
		var pHash = H.process(P);
		// check to see if the pHash equals the first hLen of DB
		if (this.ncomp(pHash, DB, hLen) != 0) {
			throw new Error("malformed input");
		}
		var c, i;
		for (i = hLen; i < DB.length && (c = DB[i]) == 0x00; i++)
			;
		if (c != 0x01) {
			throw new Error("malformed input");
		}
		return DB.slice(i+1);
github Moddable-OpenSource / moddable / modules / crypt / etc / dsa.js View on Github external
verify(H, sig) {
		// "20" is specified in the xmldsig-core spec.
		var r = Crypt.PKCS1.OS2IP(sig.slice(0, 20));
		var s = Crypt.PKCS1.OS2IP(sig.slice(20, 40));
		return(this._verify(H, r, s));
	};
};
github Kinoma / kinomajs / xs6 / extensions / crypt / crypt_dsa.js View on Github external
verify(H, sig) {
		// "20" is specified in the xmldsig-core spec.
		var r = Crypt.PKCS1.OS2IP(sig.slice(0, 20));
		var s = Crypt.PKCS1.OS2IP(sig.slice(20, 40));
		return(this._verify(H, r, s));
	};
};
github Kinoma / kinomajs / xs6 / extensions / crypt / crypt_ecdsa.js View on Github external
sign(H) {
		var sig = this._sign(H);
		var os = new ArrayBuffer();
		var l = this.orderSize;
		return os.concat(Crypt.PKCS1.I2OSP(sig.r, l), Crypt.PKCS1.I2OSP(sig.s, l));
	};
	_verify(H, r, s) {
github Moddable-OpenSource / moddable / modules / crypt / etc / dsa.js View on Github external
sign(H) {
		var sig = this._sign(H);
		var os = new ArrayBuffer();
		return os.concat(Crypt.PKCS1.I2OSP(sig.r, 20), Crypt.PKCS1.I2OSP(sig.s, 20));
	};
	_verify(H, r, s) {
github Kinoma / kinomajs / xs6 / extensions / crypt / crypt_dsa.js View on Github external
sign(H) {
		var sig = this._sign(H);
		var os = new ArrayBuffer();
		return os.concat(Crypt.PKCS1.I2OSP(sig.r, 20), Crypt.PKCS1.I2OSP(sig.s, 20));
	};
	_verify(H, r, s) {
github Kinoma / kinomajs / xs6 / extensions / crypt / crypt_pkcs1_5.js View on Github external
verify(H, sig) {
		var v = this.rsa.process(Crypt.PKCS1.OS2IP(sig));
		var R = this.emsaDecode(v);
		return !!R && Bin.comp(H, R) == 0;
	};
	encrypt(M) {