I just found a way to brute force an encrypted key in Gs2.
Let's say 'md5' as an example:
PHP Code:
//#CLIENTSIDE
function onCreated() {
  
this.hash "527bd5b5d689e2c32ae974c6229ff785"// md5("john") is equivalent to this
  
this.hash_type "md5";
  
player.chat bruteForce(this.hashthis.hash_type); // You can use other than md5, first param is hash, and second param is type
}

function 
bruteForce(hshtp) {
  
temp.letters = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};
  
temp.solved false;
  
temp.track temp.letters[0];
  
temp.ltrack temp.letters[temp.letters.size() - 1];
  while(!
temp.solved) {
    
temp.i++;
    
player.chat temp.track;
    
temp.track setLCharPos(temp.tracktemp.ltracktemp.letters);
    if ((@ 
tp)(temp.track) == hsh) {
      
temp.solved true;
    } 
sleep(0.01); // Remove this for more speed
  
} return temp.track;
}

function 
setLCharPos(ttrltrlts) {
  if (
ttr == "") return lts[0];
  if (
ttr.charat(ttr.length() - 1) != ltr) {
    return 
ttr.substring(0ttr.length() - 1) @ lts[lts.index(ttr.charat(ttr.length() - 1)) + 1];
  } else {
    return 
setLCharPos(ttr.substring(0ttr.length() - 1), ltrlts) @ lts[0];
  }

This stuff takes alot of time to finish cracking, some words can take up a few days too!
Since graal's speed is limited, I made a javascript version for you guys :http://johnaudi.netai.net/bfmd5
You can check the source for that too...

If you got any ideas for scripts, comment them off - or if you want this one in another language, comment it off too