Unbreakable Encryption Technique

That’s right! As of right now, I have a totally open source, unbreakable encryption tool available to the masses called Crypter.

What Is Meant By Unbreakable

The only way that I can conceive of breaking any of the encryption methods used in the Crypter is to actually know the key that was used to encrypt the original message.  Of course, I do not claim to be a world-renowned mathematician or cryptographer, but since I designed the encryption methods used in this tool, I have confidence in the security of them.  I guess this is essentially an invitation to any mathematician or cryptographer who believes he can truly crack the encrypted messages without having the full key. 😉

Quick JavaScript Encryption Method

Recently, I have been interested in creating a quick one-way encryption method. After playing around with a lot of different variations, I settled on the following:

function encrypt(message, length) {
  // If the message is the empty string, return the empty string.
  if(message == "") {
    return "";
  }
  
  // Calculate the offset of the first character.
  var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");
  for(var last = 0, i = 0, len = message.length; i < len; i++) {
    last = (message.charCodeAt(i) + 31 * last) % 59;
  }
  
  // Adjust for the specified length if it was given.
  length = length || message.length;
  while(len < length) {
    message += message;
    len += len;
  }
  message = message.slice(0, length);
  
  // Generate the encrypted string.
  for(var ret = "", i = 0; i < length; i++) {
    ret += chars[last = (i + last + message.charCodeAt(i)) % 64];
  }
  return ret;
}

One nice thing about this function is the fact that you can restrict the encrypted message to a certain length. Another interesting thing is that, the ordering of the characters in the string matters. One last thing that I find interesting is that it truly acts as a one-way encryption method as long as there is more than one character (meaning you can’t decrypt the message once it is encrypted).

The main reason I created this function was to encrypt strings used to verify that a person is who they say they are (kind of like a password, but not exactly in my case 😉 ). All I have to say is, if you think you can break this encryption for string longer than one character, please let me know! 8)