XORcipher.js 877 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. var XORcipher = function () {
  2. return new XORcipher.fn.init();
  3. };
  4. XORcipher.fn = XORcipher.prototype = {
  5. constructor: XORcipher,
  6. init: function () {
  7. return this;
  8. },
  9. //암호화
  10. xorEncoder: function ($str, $key) {
  11. var bytes = [];
  12. for (var i = 0; i < $str.length; ++i) {
  13. bytes.push($str.charCodeAt(i));
  14. }
  15. var result = [];
  16. for (var i = 0; i < bytes.length; i++) {
  17. result.push(bytes[i] ^ $key);
  18. }
  19. return result;
  20. },
  21. //복호화
  22. xorDecoder: function ($byte, $key) {
  23. var bytes = [];
  24. for (var i = 0; i < $byte.length; i++) {
  25. bytes.push($byte[i] ^ $key);
  26. }
  27. var str = String.fromCharCode.apply(String, bytes);
  28. return str;
  29. }
  30. };
  31. XORcipher.fn.init.prototype = XORcipher.fn;
  32. module.exports = XORcipher