Hola:
Encontré un mensaje viejo, pero creo que mejor pongo un ejemplo simple:
Código:
function encriptar(A, B) {
return String.fromCharCode(A.charCodeAt(0) ^ B.charCodeAt(0));
}
Y por ejemplo: encriptar('a', 'B'), devuelve el carácter '#', y tanto
encriptar(encriptar('a', 'B'), 'B') como
encriptar('#', 'B') devuelve la letra original ('a')
Como puede verse, se encriptan letras sueltas, pero para cadenas intenta adaptarlo (siempre es bueno que lo intentes)
Saludos