JSFiddle - React, Tailwind, and code Playground
JavaScript
function scramble(key, text) {
return encodeURIComponent(text.replace(/[^\0]/g, function(x, i) {
var code = x.charCodeAt(0) ^ key.charCodeAt(i % key.length);
return String.fromCharCode(code);
}));
}
function descramble(key, text) {
return decodeURIComponent(text).replace(/[^\0]/g, function(x, i) {
var code = x.charCodeAt(0) ^ key.charCodeAt(i % key.length);
return String.fromCharCode(code);
});
}
var key = "secretcode"
var text = "x=27&y=3&z=123456"
var scrambled = scramble(key, text);
console.log('scrambled: ' + scrambled);
var descrambled = descramble(key, scrambled);
console.log('descrambled: ' + descrambled);