mirror of
https://github.com/KevinMidboe/zoff.git
synced 2025-10-29 18:00:23 +00:00
major security update
This commit is contained in:
81
server/node_modules/node-cryptojs-aes/examples/browser/js/main.js
generated
vendored
Normal file
81
server/node_modules/node-cryptojs-aes/examples/browser/js/main.js
generated
vendored
Normal file
@@ -0,0 +1,81 @@
|
||||
// browser side implementation
|
||||
|
||||
jQuery(document).ready(function($){
|
||||
|
||||
// retrieve encrypted json string when loading page
|
||||
// define server cipherParams JSONP path
|
||||
var encrypted_url = "http://localhost:3000/crypto/encrypted?callback=?";
|
||||
|
||||
// JSONP AJAX call to node.js server running on localhost:3000
|
||||
$.getJSON(encrypted_url, function(data){
|
||||
|
||||
// retrieve encrypted json string
|
||||
var encrypted_json_str = data.encrypted;
|
||||
|
||||
console.log("encrypted json string: ");
|
||||
console.log(encrypted_json_str);
|
||||
|
||||
// store masked data into a div tag
|
||||
$("#data_store").text(encrypted_json_str);
|
||||
|
||||
// for demostration, display masked data explicitly
|
||||
$("#example_heading").text("Masked data");
|
||||
$("#example_data").text(encrypted_json_str);
|
||||
|
||||
}).done(function(){
|
||||
$("#decipher").removeAttr("disabled");
|
||||
});
|
||||
|
||||
|
||||
// decipher button listener
|
||||
$("#decipher").click(function(){
|
||||
|
||||
// define server passphrase JSONP path
|
||||
var passphrase_url = "http://localhost:3000/crypto/passphrase?callback=?";
|
||||
|
||||
// JSONP AJAX call to node.js server running on localhost:3000
|
||||
$.getJSON(passphrase_url, function(data){
|
||||
|
||||
// retrieve passphrase string
|
||||
var r_pass_base64 = data.passphrase;
|
||||
|
||||
console.log("passphrase: ");
|
||||
console.log(r_pass_base64);
|
||||
|
||||
// for demostration, display passphrase explicitly
|
||||
$("#passphrase_heading").text("Passphrase").removeClass("display_none");
|
||||
$("#passphrase_data").text(r_pass_base64).removeClass("display_none");
|
||||
|
||||
// take out masked data from div tag
|
||||
var encrypted_json_str = $("#data_store").text();
|
||||
|
||||
// decrypt data with encrypted json string, passphrase string and custom JsonFormatter
|
||||
var decrypted = CryptoJS.AES.decrypt(encrypted_json_str, r_pass_base64, { format: JsonFormatter });
|
||||
|
||||
// convert to Utf8 format unmasked data
|
||||
var decrypted_str = CryptoJS.enc.Utf8.stringify(decrypted);
|
||||
|
||||
console.log("decrypted string: " + decrypted_str);
|
||||
|
||||
|
||||
// convert into unmasked data and store in the div tag
|
||||
$("#data_store").text(decrypted_str);
|
||||
|
||||
// for demostration, display unmasked data explicitly
|
||||
$("#example_heading").text("Unmasked data");
|
||||
$("#example_data").text(decrypted_str);
|
||||
|
||||
}).done(function(){
|
||||
$("#decipher").attr("disabled","disabled");
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
// menu bar animation
|
||||
$(".menu_item").click(function(){
|
||||
$(".menu_item").removeClass("active");
|
||||
$(this).addClass("active");
|
||||
});
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user