Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.*;
- import java.util.Scanner;
- public class Lancia {
- private static Scanner sc;
- public static void main(String args[]) throws IOException {
- //Aggiungi quanti caratteri vuoi
- char[] caratteri_completi="aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ 1234567890!$%&/()=%|^+èé[]@#-:.;".toCharArray();
- char[] caratteri_numerici="1234567890".toCharArray();
- char[] caratteri_minuscoli="abcdefghijklmnopqrstuvwxyz".toCharArray();
- char[] caratteri_Maiuscoli="ABCDEFGHIJKLMNOPQRSTUVWXYZ".toCharArray();
- char[] caratteri_minuscoli_Maiuscoli="aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ ".toCharArray();
- char[] caratteri_minuscoli_speciali="abcdefghijklmnopqrstuvwxyz1234567890!$%&/()=%|^+èé[]@#-:.;".toCharArray();
- char[] caratteri_Maiuscoli_speciali="ABCDEFGHIJKLMNOPQRSTUVWXYZ!$%&/()=%|^+èé[]@#-:.;".toCharArray();
- sc = new Scanner(System.in);
- BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
- long numCombinazioni=0;
- String password=" ";
- char prova[];
- int numero_colonna[];
- char setChar[]=null;
- //Output
- System.out.println("\t\tBrute-Force by TuX 2.0\t");
- System.out.println("\n__________________________________________________________________________");
- System.out.println("\n\nSeleziona l' opzione che preferisci ;)");
- System.out.println("\n\n1) Attacco generico set di caratteri completo + caratteri speciali");
- System.out.println("2) Attacco con set di caratteri numerici");
- System.out.println("3) Attacco con set di caratteri minuscoli");
- System.out.println("4) Attacco con set di caratteri MAIUSCOLI");
- System.out.println("5) Attacco con set di caratteri minuscoli + MAIUSCOLI");
- System.out.println("6) Attacco con set di caratteri minuscoli + caratteri speciali+numeri");
- System.out.println("7) Attacco con set di caratteri MAIUSCOLI + caratteri speciali+numeri");
- char scelta= (char) input.read();
- System.out.println(scelta);
- switch(scelta) {
- case '1': setChar=caratteri_completi; break;
- case '2': setChar= caratteri_numerici; break;
- case '3': setChar= caratteri_minuscoli; break;
- case '4': setChar= caratteri_Maiuscoli; break;
- case '5': setChar= caratteri_minuscoli_Maiuscoli; break;
- case '6': setChar= caratteri_minuscoli_speciali; break;
- case '7': setChar=caratteri_Maiuscoli_speciali; break;
- }
- System.out.println("Nota bene che il tempo di ricerca varierà dalla lunghezza e dal numero di caratteri adoperati...");
- System.out.println("Inserisci chiave ---> ");password=sc.nextLine();
- prova=new char[password.length()];
- numero_colonna=new int[password.length()];
- //Inizializzazione array interi
- for(int c=0;c<numero_colonna.length;c++)
- numero_colonna[c]=0;
- //Inizializzazione array caratteri
- for(int c=0;c<prova.length;c++)
- prova[c]=setChar[0];
- //Output
- System.out.println("Bouna fortuna ;) \n\nBrute start in...");
- for(int c=4;c>0;c--) {
- try {
- Thread.sleep(1000);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- System.out.println(c);
- }
- //Inizio Ricerca esaustiva
- while(true) {
- for(int c=0;c<=setChar.length-1;c++) {
- numCombinazioni++;
- prova[prova.length-1]=setChar[c];
- String p=new String(prova);
- System.out.println(p);
- if(p.equals(password)) {
- System.out.println("Password : "+p+" numero combinazioni provate "+ numCombinazioni);
- return;
- }
- }
- int i=password.length();
- for(int c=prova.length-1;c>=0;c--){
- if(prova[c]==setChar[setChar.length-1]) {
- i=c-1; prova[c]=setChar[0];
- numero_colonna[i]++; numero_colonna[i+1]=0;
- prova[c-1]=setChar[numero_colonna[i]];
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement