JSFiddle - React, Tailwind, and code Playground
by Vincent Wang
HTML
<SCRIPT SRC="http://eu.static.mega.co.nz/sjcl_1.js"></SCRIPT>
<SCRIPT SRC="http://eu.static.mega.co.nz/crypto_1.js"></SCRIPT>
<SCRIPT SRC="http://eu.static.mega.co.nz/rsa_1.js"></SCRIPT>
<SCRIPT SRC="http://eu.static.mega.co.nz/hex_1.js"></SCRIPT>
<SCRIPT SRC="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/tripledes.js"></SCRIPT>
<body onload="testTripleDESEncryption();">
Encrypted Value:<span id ="encryptSpan" runat="server"></span><br/>
Decrypted Value:<span id ="decryptSpan" runat="server"></span>
</body>
JavaScript
function parseHexString(str) {
var result = [];
while (str.length >= 8) {
result.push(parseInt(str.substring(0, 8), 16));
str = str.substring(8, str.length);
}
return result;
}
function createHexString(arr) {
var result = "";
for (var i = 0; i < arr.length; i++) {
var str = arr[i].toString(16);
z = 8 - str.length + 1;
str = Array(z).join("0") + str;
result += str;
}
return result;
}
// Convert a byte array to a hex string
function bytesToHex (bytes) {
for (var hex = [], i = 0; i < bytes.length; i++) {
hex.push((bytes[i] >>> 4).toString(16));
hex.push((bytes[i] & 0xF).toString(16));
}
return hex.join("");
}
function testTripleDESEncryption()
{
//var key = CryptoJS.enc.Utf8.parse('0000000100000002000000030000000400000005000000060000000700000008000000090000000a0000000b0000000c0000000d0000000e0000000f000000100000001100000012000000130000001400000015000000160000001700000018');
//key = CryptoJS.enc.Utf8.stringify(key)
//var key = '0000000100000002000000030000000400000005000000060000000700000008000000090000000a0000000b0000000c0000000d0000000e0000000f000000100000001100000012000000130000001400000015000000160000001700000018';
//key = CryptoJS.enc.Utf8.stringify(key)
//key = CryptoJS.enc.Hex.parse(key);
//key = CryptoJS.enc.Hex.parse(CryptoJS.enc.Utf8.parse(key).toString(CryptoJS.enc.Hex))
//var iv = CryptoJS.enc.Utf8.parse('000000410000006e000000440000001a00000045000000b2000000c8000000db');
//var iv = '000000410000006e000000440000001a00000045000000b2000000c8000000db';
//iv = CryptoJS.enc.Utf8.stringify(iv)
//iv = CryptoJS.enc.Hex.parse(CryptoJS.enc.Utf8.parse(iv).toString(CryptoJS.enc.Hex));
//iv = CryptoJS.enc.Hex.parse(iv);
//iv = CryptoJS.enc.Hex.parse(CryptoJS.enc.Utf8.parse(iv).toString(CryptoJS.enc.Hex))
//var byte[] keyByte = {(byte) 1, (byte) 2, (byte) 3, (byte) 4,...