Advertisement
Guest User

Untitled

a guest
Jun 24th, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.16 KB | None | 0 0
  1. import java.util.Arrays;
  2.  
  3. public class BruteForce {
  4.  
  5.     public static void main(String[] args) {
  6.         String password = "pass";
  7.         char[] charset = "abcdefghijklmnopqrstuvwxyz".toCharArray();
  8.         BruteForce bf = new BruteForce(charset, 1);
  9.  
  10.         String attempt = bf.toString();
  11.         while (true) {
  12.             if (attempt.equals(password)) {
  13.                 System.out.println("Password Found: " + attempt);
  14.                 break;
  15.             }
  16.             attempt = bf.toString();
  17.             System.out.println("Tried: " + attempt);
  18.             bf.increment();
  19.         }
  20.     }
  21.  
  22.     private char[] cs; // Character Set
  23.     private char[] cg; // Current Guess
  24.  
  25.     public BruteForce(char[] characterSet, int guessLength) {
  26.         cs = characterSet;
  27.         cg = new char[guessLength];
  28.         Arrays.fill(cg, cs[0]);
  29.     }
  30.  
  31.     public void increment() {
  32.         int index = cg.length - 1;
  33.         while (index >= 0) {
  34.             if (cg[index] == cs[cs.length - 1]) {
  35.                 if (index == 0) {
  36.                     cg = new char[cg.length + 1];
  37.                     Arrays.fill(cg, cs[0]);
  38.                     break;
  39.                 } else {
  40.                     cg[index] = cs[0];
  41.                     index--;
  42.                 }
  43.             } else {
  44.                 cg[index] = cs[Arrays.binarySearch(cs, cg[index]) + 1];
  45.                 break;
  46.             }
  47.         }
  48.     }
  49.  
  50.     public String toString() {
  51.         return String.valueOf(cg);
  52.     }
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement