Optimizing Brute Force Code for Python [on hold]











up vote
-2
down vote

favorite












I need to do something for a science fair, and decided to find/modify/make a program to see how long it would take to "find" a password. After searching through the Internet, I found source code which I may use as inspiration to make my own program. However, I'm wondering if there was anything "wrong" or "slow" about this code. Also, I am failing to implement a system which can allow me to input the password that I wish to test (I'm an absolute beginner). So please, how can I make this code better, and how can I input a password to be cracked in the terminal? Sorry for any spelling mistakes, I'm not a native speaker.



Currently, to test for the password, I have to type in line 19 so the program knows if it is solved. As far as I can tell, this program uses the "Brute-Force" method in order to find a password. Also, just to be clear, this code is not originally mine. I believe this program is encoded with Python 2.



    import time
import string

maxattempts = 10000000000000000000
start = time.time()
chars = list(string.printable)[:95]
base = len(chars)
n = 0
solved = False
password = "ab" # This is where I put have to input the password.


print chars

# converts number N base 10 to a list of digits base b
def numberToBase(n, b):
digits =
while n:
digits.append(int(n % b))
n //= b
return digits[::-1]


# begin systematically checking passwords
if not solved:
while n < maxattempts:
lst = numberToBase(n, base)
print(lst)
word = ''
for x in lst:
word += str(chars[x])
print(word)
if password == word:
solved = True
print('-Stats-')
print('Pass: ' + word)
print('Attempts: ' + str(n))
print('time: ' + str((time.time() - start)) + ' sec')
break
else:
n += 1

# number of trys go over the attempt limit
if not solved:
print('Unsolved after ' + str(n) + ' attempts!')









share|improve this question







New contributor




Allim is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











put on hold as off-topic by AJNeufeld, Jamal 2 days ago


This question appears to be off-topic. The users who voted to close gave this specific reason:


  • "Authorship of code: Since Code Review is a community where programmers improve their skills through peer review, we require that the code be posted by an author or maintainer of the code, that the code be embedded directly, and that the poster know why the code is written the way it is." – AJNeufeld, Jamal

If this question can be reworded to fit the rules in the help center, please edit the question.

















    up vote
    -2
    down vote

    favorite












    I need to do something for a science fair, and decided to find/modify/make a program to see how long it would take to "find" a password. After searching through the Internet, I found source code which I may use as inspiration to make my own program. However, I'm wondering if there was anything "wrong" or "slow" about this code. Also, I am failing to implement a system which can allow me to input the password that I wish to test (I'm an absolute beginner). So please, how can I make this code better, and how can I input a password to be cracked in the terminal? Sorry for any spelling mistakes, I'm not a native speaker.



    Currently, to test for the password, I have to type in line 19 so the program knows if it is solved. As far as I can tell, this program uses the "Brute-Force" method in order to find a password. Also, just to be clear, this code is not originally mine. I believe this program is encoded with Python 2.



        import time
    import string

    maxattempts = 10000000000000000000
    start = time.time()
    chars = list(string.printable)[:95]
    base = len(chars)
    n = 0
    solved = False
    password = "ab" # This is where I put have to input the password.


    print chars

    # converts number N base 10 to a list of digits base b
    def numberToBase(n, b):
    digits =
    while n:
    digits.append(int(n % b))
    n //= b
    return digits[::-1]


    # begin systematically checking passwords
    if not solved:
    while n < maxattempts:
    lst = numberToBase(n, base)
    print(lst)
    word = ''
    for x in lst:
    word += str(chars[x])
    print(word)
    if password == word:
    solved = True
    print('-Stats-')
    print('Pass: ' + word)
    print('Attempts: ' + str(n))
    print('time: ' + str((time.time() - start)) + ' sec')
    break
    else:
    n += 1

    # number of trys go over the attempt limit
    if not solved:
    print('Unsolved after ' + str(n) + ' attempts!')









    share|improve this question







    New contributor




    Allim is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.











    put on hold as off-topic by AJNeufeld, Jamal 2 days ago


    This question appears to be off-topic. The users who voted to close gave this specific reason:


    • "Authorship of code: Since Code Review is a community where programmers improve their skills through peer review, we require that the code be posted by an author or maintainer of the code, that the code be embedded directly, and that the poster know why the code is written the way it is." – AJNeufeld, Jamal

    If this question can be reworded to fit the rules in the help center, please edit the question.















      up vote
      -2
      down vote

      favorite









      up vote
      -2
      down vote

      favorite











      I need to do something for a science fair, and decided to find/modify/make a program to see how long it would take to "find" a password. After searching through the Internet, I found source code which I may use as inspiration to make my own program. However, I'm wondering if there was anything "wrong" or "slow" about this code. Also, I am failing to implement a system which can allow me to input the password that I wish to test (I'm an absolute beginner). So please, how can I make this code better, and how can I input a password to be cracked in the terminal? Sorry for any spelling mistakes, I'm not a native speaker.



      Currently, to test for the password, I have to type in line 19 so the program knows if it is solved. As far as I can tell, this program uses the "Brute-Force" method in order to find a password. Also, just to be clear, this code is not originally mine. I believe this program is encoded with Python 2.



          import time
      import string

      maxattempts = 10000000000000000000
      start = time.time()
      chars = list(string.printable)[:95]
      base = len(chars)
      n = 0
      solved = False
      password = "ab" # This is where I put have to input the password.


      print chars

      # converts number N base 10 to a list of digits base b
      def numberToBase(n, b):
      digits =
      while n:
      digits.append(int(n % b))
      n //= b
      return digits[::-1]


      # begin systematically checking passwords
      if not solved:
      while n < maxattempts:
      lst = numberToBase(n, base)
      print(lst)
      word = ''
      for x in lst:
      word += str(chars[x])
      print(word)
      if password == word:
      solved = True
      print('-Stats-')
      print('Pass: ' + word)
      print('Attempts: ' + str(n))
      print('time: ' + str((time.time() - start)) + ' sec')
      break
      else:
      n += 1

      # number of trys go over the attempt limit
      if not solved:
      print('Unsolved after ' + str(n) + ' attempts!')









      share|improve this question







      New contributor




      Allim is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      I need to do something for a science fair, and decided to find/modify/make a program to see how long it would take to "find" a password. After searching through the Internet, I found source code which I may use as inspiration to make my own program. However, I'm wondering if there was anything "wrong" or "slow" about this code. Also, I am failing to implement a system which can allow me to input the password that I wish to test (I'm an absolute beginner). So please, how can I make this code better, and how can I input a password to be cracked in the terminal? Sorry for any spelling mistakes, I'm not a native speaker.



      Currently, to test for the password, I have to type in line 19 so the program knows if it is solved. As far as I can tell, this program uses the "Brute-Force" method in order to find a password. Also, just to be clear, this code is not originally mine. I believe this program is encoded with Python 2.



          import time
      import string

      maxattempts = 10000000000000000000
      start = time.time()
      chars = list(string.printable)[:95]
      base = len(chars)
      n = 0
      solved = False
      password = "ab" # This is where I put have to input the password.


      print chars

      # converts number N base 10 to a list of digits base b
      def numberToBase(n, b):
      digits =
      while n:
      digits.append(int(n % b))
      n //= b
      return digits[::-1]


      # begin systematically checking passwords
      if not solved:
      while n < maxattempts:
      lst = numberToBase(n, base)
      print(lst)
      word = ''
      for x in lst:
      word += str(chars[x])
      print(word)
      if password == word:
      solved = True
      print('-Stats-')
      print('Pass: ' + word)
      print('Attempts: ' + str(n))
      print('time: ' + str((time.time() - start)) + ' sec')
      break
      else:
      n += 1

      # number of trys go over the attempt limit
      if not solved:
      print('Unsolved after ' + str(n) + ' attempts!')






      python






      share|improve this question







      New contributor




      Allim is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question







      New contributor




      Allim is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question






      New contributor




      Allim is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 2 days ago









      Allim

      11




      11




      New contributor




      Allim is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      Allim is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      Allim is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




      put on hold as off-topic by AJNeufeld, Jamal 2 days ago


      This question appears to be off-topic. The users who voted to close gave this specific reason:


      • "Authorship of code: Since Code Review is a community where programmers improve their skills through peer review, we require that the code be posted by an author or maintainer of the code, that the code be embedded directly, and that the poster know why the code is written the way it is." – AJNeufeld, Jamal

      If this question can be reworded to fit the rules in the help center, please edit the question.




      put on hold as off-topic by AJNeufeld, Jamal 2 days ago


      This question appears to be off-topic. The users who voted to close gave this specific reason:


      • "Authorship of code: Since Code Review is a community where programmers improve their skills through peer review, we require that the code be posted by an author or maintainer of the code, that the code be embedded directly, and that the poster know why the code is written the way it is." – AJNeufeld, Jamal

      If this question can be reworded to fit the rules in the help center, please edit the question.



























          active

          oldest

          votes






















          active

          oldest

          votes













          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes

          Popular posts from this blog

          Quarter-circle Tiles

          build a pushdown automaton that recognizes the reverse language of a given pushdown automaton?

          Mont Emei