Java 为蛮力生成密钥
我试图通过暴力破解一个文件。我只担心ASCII字符32-127(所有可能的键盘字符)。密钥必须是两个字符的密钥。我开始我的for循环如下:Java 为蛮力生成密钥,java,ascii,brute-force,Java,Ascii,Brute Force,我试图通过暴力破解一个文件。我只担心ASCII字符32-127(所有可能的键盘字符)。密钥必须是两个字符的密钥。我开始我的for循环如下: for(int i = 32; i < 128; i++){ //Key is a string already declared further up. key = Character.toString((char) i); } 但我认为这只会让我看到彼此“背靠背”的角色 我需要测试像32和33
for(int i = 32; i < 128; i++){
//Key is a string already declared further up.
key = Character.toString((char) i);
}
但我认为这只会让我看到彼此“背靠背”的角色
我需要测试像32和33-127等等。如有任何见解,将不胜感激。谢谢。使用暴力的最好方法是嵌套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);
}
}
for(int i=32;i<128;i++){
//键是一个已进一步声明的字符串。
对于(int j=32;j<128;j++){
key=Character.toString((char)i)+Character.toString((char)j);
}
}
这意味着对于每个字符,将其与每个字符配对,这样就可以得到2个字符代码的所有组合。您可以在设置键后立即进行检查您是否尝试了双for循环,类似于以下内容:
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());
}
}
字符串键;
对于(int i=32;i<128;i++){
对于(int j=32;j<128;j++){
//键是一个已进一步声明的字符串。
key=(char)i++(char)j;
System.out.println(“Key:+Key+,“+Key.length());
}
}
啊,我明白了,既然你已经指出了这一点,那就很有意义了。谢谢,答案被接受了。
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());
}
}