生成蛮力的钥匙

时间:2018-01-19 18:23:16

标签: java ascii brute-force

我试图通过暴力破解文件。我只担心ASCII字符32-127(所有可能的键盘字符)。密钥必须是两个字符的密钥。我正在开始这样的for-loop:

    for(int i = 32; i < 128; i++){
        //Key is a string already declared further up.
        key = Character.toString((char) i);   
    }

我打印了它,它给了我键盘上的所有键。我被困在如何制作两个字符串

我有一些想法,但它们不起作用。我想过要尝试做类似的事情:

if(key.length() > 2)
     key = "";
else
     key += key(i);

但我认为这只会给我一些“背对背”的角色。

我需要测试32和33-127等等等等。任何见解都将受到高度赞赏。谢谢。

2 个答案:

答案 0 :(得分:3)

暴力破解的最好方法是嵌套for循环

for(int i = 32; i < 128; i++){
        //Key is a string already declared further up.
        for(int j = 32; j < 128; j++){
             key = Character.toString((char) i) + Character.toString((char) j);  

        }
    }

这表示对于每个角色,将其与每个角色配对,因此您将获得2个字符代码的所有组合。您可以在设置密钥后立即进行检查

答案 1 :(得分:0)

您是否尝试过双循环,如下所示:

String key;
for(int i = 32; i < 128; i++){
    for(int j = 32; j < 128; j++){
        //Key is a string already declared further up.
        key = (char)i+""+(char)j;
        System.out.println("Key: " + key + ", " + key.length());
    }
}