Advertisement
Guest User

Untitled

a guest
Aug 18th, 2018
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.00 KB | None | 0 0
  1. import java.io.*;
  2. import java.util.Scanner;
  3.  
  4.  
  5. public class Lancia {
  6.  
  7.  
  8. private static Scanner sc;
  9.  
  10. public static void main(String args[]) throws IOException {
  11.  
  12.  
  13. //Aggiungi quanti caratteri vuoi
  14. char[] caratteri_completi="aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ 1234567890!$%&/()=%|^+èé[]@#-:.;".toCharArray();
  15. char[] caratteri_numerici="1234567890".toCharArray();
  16. char[] caratteri_minuscoli="abcdefghijklmnopqrstuvwxyz".toCharArray();
  17. char[] caratteri_Maiuscoli="ABCDEFGHIJKLMNOPQRSTUVWXYZ".toCharArray();
  18. char[] caratteri_minuscoli_Maiuscoli="aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ ".toCharArray();
  19. char[] caratteri_minuscoli_speciali="abcdefghijklmnopqrstuvwxyz1234567890!$%&/()=%|^+èé[]@#-:.;".toCharArray();
  20. char[] caratteri_Maiuscoli_speciali="ABCDEFGHIJKLMNOPQRSTUVWXYZ!$%&/()=%|^+èé[]@#-:.;".toCharArray();
  21.  
  22.  
  23.  
  24. sc = new Scanner(System.in);
  25. BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
  26. long numCombinazioni=0;
  27. String password=" ";
  28. char prova[];
  29. int numero_colonna[];
  30. char setChar[]=null;
  31.  
  32.  
  33.  
  34. //Output
  35. System.out.println("\t\tBrute-Force by TuX 2.0\t");
  36. System.out.println("\n__________________________________________________________________________");
  37. System.out.println("\n\nSeleziona l' opzione che preferisci ;)");
  38. System.out.println("\n\n1) Attacco generico set di caratteri completo + caratteri speciali");
  39. System.out.println("2) Attacco con set di caratteri numerici");
  40. System.out.println("3) Attacco con set di caratteri minuscoli");
  41. System.out.println("4) Attacco con set di caratteri MAIUSCOLI");
  42. System.out.println("5) Attacco con set di caratteri minuscoli + MAIUSCOLI");
  43. System.out.println("6) Attacco con set di caratteri minuscoli + caratteri speciali+numeri");
  44. System.out.println("7) Attacco con set di caratteri MAIUSCOLI + caratteri speciali+numeri");
  45.  
  46.  
  47.  
  48.  
  49.  
  50. char scelta= (char) input.read();
  51.  
  52. System.out.println(scelta);
  53.  
  54.  
  55.  
  56. switch(scelta) {
  57.  
  58. case '1': setChar=caratteri_completi; break;
  59. case '2': setChar= caratteri_numerici; break;
  60. case '3': setChar= caratteri_minuscoli; break;
  61. case '4': setChar= caratteri_Maiuscoli; break;
  62. case '5': setChar= caratteri_minuscoli_Maiuscoli; break;
  63. case '6': setChar= caratteri_minuscoli_speciali; break;
  64. case '7': setChar=caratteri_Maiuscoli_speciali; break;
  65.  
  66.  
  67.  
  68.  
  69. }
  70.  
  71.  
  72.  
  73. System.out.println("Nota bene che il tempo di ricerca varierà dalla lunghezza e dal numero di caratteri adoperati...");
  74.  
  75. System.out.println("Inserisci chiave ---> ");password=sc.nextLine();
  76.  
  77.  
  78.  
  79. prova=new char[password.length()];
  80. numero_colonna=new int[password.length()];
  81.  
  82.  
  83.  
  84. //Inizializzazione array interi
  85. for(int c=0;c<numero_colonna.length;c++)
  86. numero_colonna[c]=0;
  87.  
  88.  
  89. //Inizializzazione array caratteri
  90. for(int c=0;c<prova.length;c++)
  91. prova[c]=setChar[0];
  92.  
  93.  
  94.  
  95. //Output
  96. System.out.println("Bouna fortuna ;) \n\nBrute start in...");
  97. for(int c=4;c>0;c--) {
  98.  
  99. try {
  100. Thread.sleep(1000);
  101. } catch (InterruptedException e) {
  102.  
  103. e.printStackTrace();
  104. }
  105.  
  106. System.out.println(c);
  107.  
  108. }
  109.  
  110.  
  111.  
  112. //Inizio Ricerca esaustiva
  113. while(true) {
  114.  
  115.  
  116. for(int c=0;c<=setChar.length-1;c++) {
  117.  
  118. numCombinazioni++;
  119.  
  120. prova[prova.length-1]=setChar[c];
  121.  
  122. String p=new String(prova);
  123.  
  124. System.out.println(p);
  125.  
  126. if(p.equals(password)) {
  127. System.out.println("Password : "+p+" numero combinazioni provate "+ numCombinazioni);
  128.  
  129. return;
  130. }
  131.  
  132. }
  133.  
  134. int i=password.length();
  135.  
  136. for(int c=prova.length-1;c>=0;c--){
  137.  
  138. if(prova[c]==setChar[setChar.length-1]) {
  139.  
  140. i=c-1; prova[c]=setChar[0];
  141. numero_colonna[i]++; numero_colonna[i+1]=0;
  142.  
  143. prova[c-1]=setChar[numero_colonna[i]];
  144.  
  145. }
  146. }
  147.  
  148. }
  149. }
  150.  
  151.  
  152.  
  153. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement