123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- var encoded = null;
- var elementId = null;
- function randomPassword(length) {
- var chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
- var pass = "";
- for(var i = 0; i < length; i++) {
- var index = Math.floor(Math.random() * 62);
- pass += chars.charAt(index);
- }
- return pass;
- };
- function encryptFormText() {
- if (document.key.text.value.length == 0) {
- alert("Please specify a key with which to encrypt the message.");
- return;
- }
- if(document.plain.text.value.length == 0) {
- alert("No plain text to encrypt! Please enter or paste plain text in the field above.");
- return;
- }
- encoded = GibberishAES.enc(document.plain.text.value, document.key.text.value);
- document.cipher.text.value = encoded;
- // generate a random ID
- elementId = randomPassword(8);
-
- encoded = encoded.replace(/\n/g, '');
-
- genSampleCode();
- };
- function genSampleCode() {
- document.encryptedCode.text.value = "";
- var element = document.getElementById("encryptedTest");
- element.innerHTML = "";
- if (encoded == "" || encoded == null || elementId == "" || elementId == null)
- return;
-
- // standard sample code
- if (document.encryptedCode.codeType[0].checked) {
- var code1 = "<div id=\"" + elementId + "\" title=\"" + encoded + "\">";
- var code2 = "<a href=\"javascript:decryptText('" + elementId + "')\">Show encrypted text</a>";
- var code3 = "</div>";
-
- document.encryptedCode.text.value = code1 + "\n\t" + code2 + "\n" + code3;
- element.innerHTML = code1 + code2 + code3;
-
- // inline
- } else if (document.encryptedCode.codeType[1].checked) {
- var code1 = "<a href=\"javascript:decryptText('" + elementId + "')\">Show encrypted text</a>";
- var code2 = "<br />\n<br />";
- var code3 = "There is <em><span id=\"" + elementId + "\" title=\"" + encoded + "\">hidden text</span></em> here";
- document.encryptedCode.text.value = code1 + "\n" + code2 + "\n" + code3;
- element.innerHTML = code1+code2+code3;
- // ***
- } else {
- var code1 = "This is encrypted: <span id=\"" + elementId + "\" title=\"" + encoded + "\"><a href=\"javascript:decryptText('" + elementId + "')\">***</a></span>";
- document.encryptedCode.text.value = code1;
- element.innerHTML = code1;
- }
- }
- function decryptFormText() {
- if (document.key.text.value.length == 0) {
- alert("Please specify a key with which to decrypt the message.");
- return;
- }
- if(document.cipher.text.value.length == 0) {
- alert("No cipher text to decrypt! Please enter or paste cipher text in the field above.");
- return;
- }
-
- try {
- var dec = GibberishAES.dec(document.cipher.text.value, document.key.text.value);
- document.plain.text.value = dec;
- } catch (err) {
- alert("Invalid key");
- }
- };
- function gup(name) {
- name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
- var regexS = "[\\?&]"+name+"=([^&#]*)";
- var regex = new RegExp( regexS );
- var results = regex.exec(window.location.href);
- if (results == null)
- return "";
- else
- return results[1];
- };
- function load() {
- document.key.text.value = "";
- document.plain.text.value = decodeURIComponent(gup("text"));
- document.cipher.text.value = decodeURIComponent(gup("cipher"));
- document.encryptedCode.text.value = "";
- document.key.text.focus();
- }
|