Juno_okyo

Brute Force UDF

Jul 15th, 2015
559
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
AutoIt 1.75 KB | None | 0 0
  1. #include <Timers.au3>
  2. #include <Constants.au3>
  3.  
  4. HotKeySet("{ESC}","_Exit")
  5.  
  6. Global $count
  7.  
  8.  
  9. $iBruteLenght=3
  10. $count=0
  11. for $i=1 to $iBruteLenght
  12.         $count+=62^$i
  13. next
  14. $count-=1
  15. $icount=$count
  16. ProgressOn("Progress Meter", "Increments every second")
  17.  
  18. _BruteForce('__BruteFunc',$iBruteLenght)
  19.  
  20. while 1
  21.     sleep(100)
  22. wend
  23.  
  24. Func _BruteForce($sFunktionName = "__BruteFunc", $iBruteLenght = 4, $sCharSet = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")
  25.  
  26.     Local $aBruteArray[$iBruteLenght]
  27.     Local $aCharSet = StringSplit($sCharSet, "", 2)
  28.     Local $iCharSetCount = UBound($aCharSet) - 1
  29.     Local $sBruteString = ""
  30.     __InitBruteArray($aBruteArray)
  31.     ConsoleWrite("Beginne mit Bruteforce" & @CRLF)
  32.     Do
  33.         $sBruteString = ""
  34.         $aBruteArray[0] += 1
  35.         For $i = 0 To $iBruteLenght - 1
  36.             If $aBruteArray[$i] > $iCharSetCount Then
  37.                 $aBruteArray[$i] = 0
  38.                 $aBruteArray[$i + 1] += 1
  39.             ElseIf $aBruteArray[$i] = -1 Then
  40.                 ExitLoop (1)
  41.             EndIf
  42.         Next
  43.         For $i = 0 To $iBruteLenght - 1
  44.             If $aBruteArray[$i] > -1 Then
  45.                 $sBruteString &= $aCharSet[$aBruteArray[$i]]
  46.             Else
  47.                 ExitLoop 1
  48.             EndIf
  49.         Next
  50.         Call($sFunktionName, $sBruteString,$iBruteLenght)
  51.     Until StringRegExp($sBruteString, "\Q" & $aCharSet[$iCharSetCount] & "\E{" & $iBruteLenght & "}")
  52.     ConsoleWrite("Brute Fore abgeschlossen" & @CRLF)
  53.  
  54. EndFunc   ;==>_BruteForce
  55.  
  56. Func __BruteFunc($sString,$iBruteLenght)
  57.  
  58. ProgressSet(100/$icount*($icount-$count), 'Processed: '&$icount-$count& '/'&$icount&'  current: ' &$sString)
  59.  
  60. $count-=1
  61.  
  62. EndFunc   ;==>__BruteFunc
  63.  
  64.  
  65. Func __InitBruteArray(ByRef $aBruteArray)
  66.     Dim $sCharSet
  67.     For $i = 0 To UBound($aBruteArray) - 1
  68.         $aBruteArray[$i] = -1
  69.     Next
  70. EndFunc   ;==>__InitBruteArray
  71.  
  72.  
  73. Func _Exit()
  74.     Exit
  75. EndFunc
Add Comment
Please, Sign In to add comment