Simulação de Brute force

Pessoal, seguinte. Estou pensando em fazer um simulador de Brute Force… mas nao esta funcionando… depois de ele ir de A - Z ele faz ZA… oque esta errado pois depois de Z vem AB. Correto?

public class bForce {
	public static void main(String[] args) {
		boolean senha = false;
		String password = "a";
		boolean verifica = false;
		String[] vetor = new String[9];
		Objeto pass = new Objeto();
		while (senha == false) {
			for (int i = 0; i < vetor.length; i++) {
				if (verifica == false) {
					for (int j = 0; j < pass.vetor.length; j++) {
						vetor[i] = pass.vetor[j];
						String aux=" ";
						for (int k = 0; k < vetor.length; k++) {
							if(vetor[k]==null){
								vetor[k]= " ";
							}
						}
						for (int j2 = 0; j2< vetor.length; j2++) {
							aux=aux+vetor[j2];
						}
						aux=aux.replaceAll(" ", "");
						if (password == aux) {
							senha = true;
							verifica = true;
							System.out.println("Achou!"+j);
							break;
						}else System.out.println("Não achou"+aux);
					}
				}else break;
			}
		}
	}
}

mais uma coisa… ele nao esta comparando as Strings

Oi!

Só para que entenda, um ataque de força bruta em uma senha consideram N possibilidades.
Como exemplo, vamos imaginar que tu saiba que a senha tenha limite de 4 caracteres e só podem, exclusivamente, letras.
Nesse caso, você não sabe se pode ou não repetir as letras, portanto, você tem uma combinação assim:

26 26 26 26.

São 26 letras possíveis para cada posição.
AAAA
AAAB
AAAC
AAAD

ZZZZ.

A partir dessa lógica, você monta seu algoritmo. Como eu citei, é apenas uma simulação onde é considerado somente o alfabeto com 26 letras e tamanho 4, como faria para descobrir um campo em aberto de uma senha ? :smiley:

Agora é contigo. Segundo meus calculos, são 456.976 combinações possíveis.
Abraços.