Я пытаюсь зашифровать сообщение на стороне клиента с помощью криптографической библиотеки pidCrypt . Но получая ошибку, такую как
Uncaught ReferenceError: certParser не определен
В качестве примера http://cryptojs.altervista.org/publickey/doc/doc_rsa_pidcrypt.html.
<html>
<body>
hello
</body>
<script type="text/javascript" src="js/pidcrypt.js"></script>
<script type="text/javascript" src="js/pidcrypt_util.js"></script>
<script type="text/javascript" src="js/asn1.js"></script>
<script type="text/javascript" src="js/jsbn.js"></script>
<script type="text/javascript" src="js/rng.js"></script>
<script type="text/javascript" src="js/prng4.js"></script>
<script type="text/javascript" src="js/rsa.js"></script>
<script type="text/javascript">
/*-----------------------------------------------------------*
* ENCRYPT: RSA 1024 bit *
*-----------------------------------------------------------*/
var public_key_1024="MIGeMA0GCSqGSIb3DQEBAQUAA4GMADCBiAKBgHFS+EaIE1gD/g6t63CiqythhkWH\nsNOpLSou28AGYPQY+dMLp0+rkkKxy15x2Dr/+TNkpa5F1K96s4y2jGi0z8kPpWk5\nlS6ArgWdQrQ3ZWQR6A2CHDUe+ovUby2y1e5SzeAEgvAl6VcXn5mop0syBYT9WTZN\nlbKK+vpIZBsUrjARAgMBAAE=";
// public key
var params = certParser(public_key_1024);
var key = pidCryptUtil.decodeBase64(params.b64);
// new RSA instance
var rsa = new pidCrypt.RSA();
/* RSA encryption
* get the modulus and exponent from certificate (ASN1 parsing)
* pem(Array of Bytes)
*/
// ASN1 parsing
var asn = pidCrypt.ASN1.decode(pidCryptUtil.toByteArray(key));
var tree = asn.toHexTree();
// setting the public key for encryption with retrieved ASN.1 tree
rsa.setPublicKeyFromASN(tree);
/*** encrypt */
var crypted = rsa.encrypt("plaintext");
var fromHex = pidCryptUtil.encodeBase64(pidCryptUtil.convertFromHex(crypted));
var ciphertext = pidCryptUtil.fragment(fromHex,64)
console.log(ciphertext);
</script>
</html>