AutoHotkey Homepage AutoHotkey Community
Let's help each other out
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Breaking down a password to component parts...

 
Post new topic   Reply to topic    AutoHotkey Community Forum Index -> Ask for Help
View previous topic :: View next topic  
Author Message
JonTheNiceGuy



Joined: 22 Apr 2004
Posts: 18
Location: Manchester, UK

PostPosted: Wed Jul 14, 2004 2:10 pm    Post subject: Breaking down a password to component parts... Reply with quote

I receive a log file daily of new accounts created with a random password string.

I wrote this script to break down each character of that password, but for some reason, it keeps missing a couple of the characters. Now, I understand why when it's part of the script, that it would process the curly brackets ({) as a "Send a single key" statement, however how do I stop it from interpreting it?

Do I have to get the ascii value of each character and use that to create the Send statement? If so, how do I do it?

Here's my script and underneath it is the result from one of these passwords (since changed)

Code:

   Send, Password: %Password%{enter}{enter}

   Send, As this contains several unusual characters, the password has been spelt out using phonetics or descriptions of symbols:{enter}{enter}

   StringCaseSense, On

   loop, parse, Password
   {

      Send, (%A_LoopField%) -
      IfEqual,A_LoopField, A ,Send,Uppercase a for Alpha
      IfEqual,A_LoopField, B ,Send,Uppercase b for Bravo
      IfEqual,A_LoopField, C ,Send,Uppercase c for Charlie
      IfEqual,A_LoopField, D ,Send,Uppercase d for Delta
      IfEqual,A_LoopField, E ,Send,Uppercase e for Echo
      IfEqual,A_LoopField, F ,Send,Uppercase f for Foxtrot
      IfEqual,A_LoopField, G ,Send,Uppercase g for Golf
      IfEqual,A_LoopField, H ,Send,Uppercase h for Hotel
      IfEqual,A_LoopField, I ,Send,Uppercase i for India
      IfEqual,A_LoopField, J ,Send,Uppercase j for Juliette
      IfEqual,A_LoopField, K ,Send,Uppercase k for Kilo
      IfEqual,A_LoopField, L ,Send,Uppercase l for Lima
      IfEqual,A_LoopField, M ,Send,Uppercase m for Mike
      IfEqual,A_LoopField, N ,Send,Uppercase n for November

      IfEqual,A_LoopField, O ,Send,Uppercase o for Oscar
      IfEqual,A_LoopField, P ,Send,Uppercase p for Papa
      IfEqual,A_LoopField, Q ,Send,Uppercase q for Qubec
      IfEqual,A_LoopField, R ,Send,Uppercase r for Romeo
      IfEqual,A_LoopField, S ,Send,Uppercase s for Sierra
      IfEqual,A_LoopField, T ,Send,Uppercase t for Tango
      IfEqual,A_LoopField, U ,Send,Uppercase u for Uniform
      IfEqual,A_LoopField, V ,Send,Uppercase v for Victor
      IfEqual,A_LoopField, W ,Send,Uppercase w for Whiskey
      IfEqual,A_LoopField, X ,Send,Uppercase x for X-Ray
      IfEqual,A_LoopField, Y ,Send,Uppercase y for Yankee
      IfEqual,A_LoopField, Z ,Send,Uppercase z for Zulu

      IfEqual,A_LoopField, a ,Send,Lowercase a for Alpha
      IfEqual,A_LoopField, b ,Send,Lowercase b for Bravo
      IfEqual,A_LoopField, c ,Send,Lowercase c for Charlie
      IfEqual,A_LoopField, d ,Send,Lowercase d for Delta
      IfEqual,A_LoopField, e ,Send,Lowercase e for Echo
      IfEqual,A_LoopField, f ,Send,Lowercase f for Foxtrot
      IfEqual,A_LoopField, g ,Send,Lowercase g for Golf
      IfEqual,A_LoopField, h ,Send,Lowercase h for Hotel
      IfEqual,A_LoopField, i ,Send,Lowercase i for India
      IfEqual,A_LoopField, j ,Send,Lowercase j for Juliette
      IfEqual,A_LoopField, k ,Send,Lowercase k for Kilo
      IfEqual,A_LoopField, l ,Send,Lowercase l for Lima
      IfEqual,A_LoopField, m ,Send,Lowercase m for Mike
      IfEqual,A_LoopField, n ,Send,Lowercase n for November
      IfEqual,A_LoopField, o ,Send,Lowercase o for Oscar
      IfEqual,A_LoopField, o ,Send,Lowercase p for Papa
      IfEqual,A_LoopField, q ,Send,Lowercase q for Qubec
      IfEqual,A_LoopField, r ,Send,Lowercase r for Romeo
      IfEqual,A_LoopField, s ,Send,Lowercase s for Sierra
      IfEqual,A_LoopField, t ,Send,Lowercase t for Tango
      IfEqual,A_LoopField, u ,Send,Lowercase u for Uniform
      IfEqual,A_LoopField, v ,Send,Lowercase v for Victor
      IfEqual,A_LoopField, w ,Send,Lowercase w for Whiskey
      IfEqual,A_LoopField, x ,Send,Lowercase x for X-Ray
      IfEqual,A_LoopField, y ,Send,Lowercase y for Yankee
      IfEqual,A_LoopField, z ,Send,Lowercase z for Zulu

      IfEqual,A_LoopField, 1 ,Send,Number One
      IfEqual,A_LoopField, 2 ,Send,Number Two
      IfEqual,A_LoopField, 3 ,Send,Number Three
      IfEqual,A_LoopField, 4 ,Send,Number Four
      IfEqual,A_LoopField, 5 ,Send,Number Five
      IfEqual,A_LoopField, 6 ,Send,Number Six
      IfEqual,A_LoopField, 7 ,Send,Number Seven
      IfEqual,A_LoopField, 8 ,Send,Number Eight
      IfEqual,A_LoopField, 9 ,Send,Number Nine
      IfEqual,A_LoopField, 0 ,Send,Number Zero

      IfEqual,A_LoopField, ! ,Send, Exclamation Mark - usually located over the number 1
      IfEqual,A_LoopField, " ,Send, Double Quotes - usually located over the number 2
      IfEqual,A_LoopField, £ ,Send, Pound Sign - usually located over the number 3
      IfEqual,A_LoopField, $ ,Send, Dollar Symbol - usually located over the number 4
      IfEqual,A_LoopField, `% ,Send, Percent Symbol - usually located over the number 5
      IfEqual,A_LoopField, ^ ,Send, Carret Symbol - usually located over the number 6
      IfEqual,A_LoopField, & ,Send, Ampersand Symbol - usually located over the number 7
      IfEqual,A_LoopField, * ,Send, Star Symbol - usually located over the number 8
      IfEqual,A_LoopField, ( ,Send, Open Bracket - usually located over the number 9
      IfEqual,A_LoopField, ) ,Send, Close Bracket - usually located over the number 0
      IfEqual,A_LoopField, _ ,Send, Underscore Symbol - usually located over the minus symbol
      IfEqual,A_LoopField, + ,Send, Plus Symbol - usually located over the equals symbol

      IfEqual,A_LoopField, [ ,Send, Left Square Bracket - usually located to the right of the letter P
      IfEqual,A_LoopField, { ,Send, Left Curled Bracket - hold down the shift key and press the key usually located to the right of the letter P
      IfEqual,A_LoopField, ] ,Send, Right Square Bracket - usually located two keys to the right of the letter P
      IfEqual,A_LoopField, } ,Send, Right Curled Bracket - hold down the shift key and press the key two keys to the right of the letter P

      IfEqual,A_LoopField, `: ,Send, Colon - usually located to the right of the letter L
      IfEqual,A_LoopField, `; ,Send, Semi Colon - hold down the shift key and press the key usually located to the right of the letter L
      IfEqual,A_LoopField, @ ,Send, At Symbol - hold down the shift key and press the key usually located two keys to the right of the letter L
      IfEqual,A_LoopField, ' ,Send, Appostrophy - usually located two keys to the right of the letter L
      IfEqual,A_LoopField, ~ ,Send, Tilde or Cedilla - hold down the shift key and press the key usually located three keys to the right of the letter L
      IfEqual,A_LoopField, `# ,Send, Hash`, Pound or Checkerboard Symbol - usually located three keys to the right of the letter L

      IfEqual,A_LoopField, `, ,Send, Comma
      IfEqual,A_LoopField, < ,Send, Left Chevron
      IfEqual,A_LoopField, . ,Send, Full Stop
      IfEqual,A_LoopField, > ,Send, Right Chevron
      IfEqual,A_LoopField, \ ,Send, Back Strike or Backslash - usually located to the left of the letter Z
      IfEqual,A_LoopField, | ,Send, Pipe or Bar - Hold down the shift key and press the key usually located to the left of the letter Z
      IfEqual,A_LoopField, / ,Send, Forward Strike or Slash - usually located three keys to the right of the letter M
      IfEqual,A_LoopField, ? ,Send, Pipe or Bar - Hold down the shift key and press the key usually located three keys to the right of the letter M

      Send, {enter}
   }

   StringCaseSense, Off


Quote:
M<b3:35b

As this contains several unusual characters, the password has been spelt out using phonetics or descriptions of symbols:

(M) -Uppercase m for Mike
(<) -Left Chevron
(b) -Lowercase b for Bravo
(3) -Number Three
(:) -Colon - usually located to the right of the letter L
(3) -Number Three
(5) -Number Five
() -Left Curled Bracket - hold down the shift key and press the key usually located to the right of the letter P
(f) -Lowercase f for Foxtrot
(;) -Semi Colon - hold down the shift key and press the key usually located to the right of the letter L
( -Carret Symbol - usually located over the number 6
(1) -Number One


Oh yes, and the initial password it returns, if it contains a curly bracket - it sends a confused response. Is there an "Implicit" or "Do Not Interpret" code I can use here at all?

And for those who are wondering why the character's aren't where yours are normally... this is a UK keyboard layout :)

Jon
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Chris
Site Admin


Joined: 02 Mar 2004
Posts: 10480

PostPosted: Wed Jul 14, 2004 2:42 pm    Post subject: Reply with quote

I've updated the installer at http://www.autohotkey.com/download/ with two new commands: SendRaw and ControlSendRaw.

Try using SendRaw, which will send the keystrokes in the Keys parameter exactly as they appear rather than translating {Enter} to an ENTER keystroke, ^c to Control-C, etc.

If there are still issues after that, please let me know.
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic    AutoHotkey Community Forum Index -> Ask for Help All times are GMT
Page 1 of 1

 
Jump to:  
You can post new topics in this forum
You can reply to topics in this forum


Powered by phpBB © 2001, 2005 phpBB Group