title: Multi-thread brute-force password breaking algorithm
body: <p>I made a multi-threaded program in C++ to break passwords of 7 characters long (lower case characters only) using a brute-force algorithm.</p>
  
  <p>My algorithm is mostly 7 nested for-loops going from a to z and testing every possible combination.</p>
  
  <p>Right now, I'm dividing my work this way :<br>
  If I have 3 working threads,<br>
  Thread 1 : axxxxxx to ixxxxxx<br>
  Thread 2 : jxxxxxx to rxxxxxx<br>
  Thread 3 : sxxxxxx to zxxxxxx</p>
  
  <p>So the 3 threads will go on and loop until they find a match.</p>
  
  <p>The main thread will wait for the first thread to return.</p>
  
  <p>My question is : Is this the best way to divide the work between my threads? Do you have any idea on how I could be more efficient?</p>
  
  <p>Also, even if it's not the main part of my interrogation, can you think of a better way than the 7 for-loop iteration?</p>
  
  <p>(Please note that this program is for a school project and not for really cracking passwords)</p>