Hi,
zuerteinmal guten abend. ich bin neu hier im forum, und hoffe das mir hier geholfen werden kann.
ich habe folgendes Problem, und zwar bastle ich gerade an einem prgramm, das einen WPA2 Schlüssel für WLAN verbindungen generiert. Der Schlüssel ist 63 Zeichen lang und besteht aus allen Zeichen des Alphabets, allen Ziffern und diversen Sonderzeichen.
Das Prgramm ist eine reine Übung, die meiner Meinung nach sogar noch eine tolle funktion hat.
Nun zu meinem Problem, ich habe das selbe Programm schon in C++ geschrieben, damals aber ohne GUI, sondern nur als CLI Tool, CLI deshalb, da es möglichst Plattformunabhängig sein sollte.
Für Java habe ich mir nun aber eine GUI gebastelet, da dies der eigentliche Übungszweck des Programms sein soll.
Ich gehe Folgendermaßen vor, ich habe ein Fenster mit zwei Buttons, einer zum beenden des Prgramms und einen zu generieren des WPA Schlüssels. Dieser Schlüssel soll nach dem er genriert wurde in ein Textfeld geschrieben werden.
Der Schlüssel wird folgendermaßen generiert. ich habe ein array in dem alle zeuchen die in einem schlüssel vorkommen drinstehen. dieses array hat insgesamt 74 zeichen.
ich habe dann eine for-schleife die 63 mal durchläuft und einen Zufallsgenrator initialisiert der von 0-74 geht (größe des arrays) und die zahl die der generator ausspuckt ist der wert im array der der zeichenkete für den kye hinzugefügt wird.
leider erhalte ich beim ausführen des Programms einige fehler. bei c++ war es so, das ich das program mit einer sleep-funktion 1 sek. pausieren lassen musste, bevor der zufallsgenrator neu initialisiert wird. ist das bei java auch so?
hier mal noch der quellcode:
MyFrame:
Klasse Key:
vielen dank für eure Hilfe!
lg,
Fabi
EDIT: ich arbeite mit eclipse, fals das noch wichtig ist.
zuerteinmal guten abend. ich bin neu hier im forum, und hoffe das mir hier geholfen werden kann.
ich habe folgendes Problem, und zwar bastle ich gerade an einem prgramm, das einen WPA2 Schlüssel für WLAN verbindungen generiert. Der Schlüssel ist 63 Zeichen lang und besteht aus allen Zeichen des Alphabets, allen Ziffern und diversen Sonderzeichen.
Das Prgramm ist eine reine Übung, die meiner Meinung nach sogar noch eine tolle funktion hat.
Nun zu meinem Problem, ich habe das selbe Programm schon in C++ geschrieben, damals aber ohne GUI, sondern nur als CLI Tool, CLI deshalb, da es möglichst Plattformunabhängig sein sollte.
Für Java habe ich mir nun aber eine GUI gebastelet, da dies der eigentliche Übungszweck des Programms sein soll.
Ich gehe Folgendermaßen vor, ich habe ein Fenster mit zwei Buttons, einer zum beenden des Prgramms und einen zu generieren des WPA Schlüssels. Dieser Schlüssel soll nach dem er genriert wurde in ein Textfeld geschrieben werden.
Der Schlüssel wird folgendermaßen generiert. ich habe ein array in dem alle zeuchen die in einem schlüssel vorkommen drinstehen. dieses array hat insgesamt 74 zeichen.
ich habe dann eine for-schleife die 63 mal durchläuft und einen Zufallsgenrator initialisiert der von 0-74 geht (größe des arrays) und die zahl die der generator ausspuckt ist der wert im array der der zeichenkete für den kye hinzugefügt wird.
leider erhalte ich beim ausführen des Programms einige fehler. bei c++ war es so, das ich das program mit einer sleep-funktion 1 sek. pausieren lassen musste, bevor der zufallsgenrator neu initialisiert wird. ist das bei java auch so?
hier mal noch der quellcode:
MyFrame:
Code:
/**
*
*/
/**
* @author fabianschneider
*
*/
import java.awt.*;
import java.awt.event.*;
public class MyFrame extends Frame{
Panel GeneratePanel = new Panel();
public Button btnExit = new Button("exit");
public Button btnGenerate = new Button("generate");
String MyKey="Q00blubbblabb12345";
public TextField txfKey = new TextField(" ");
private MyActionListener myActionListener = new MyActionListener(this);
public MyFrame ()
{
setTitle("WPA2KeyGenerator");
setSize(400,100);
addWindowListener(new GUIWindowListener());
GeneratePanel.add(txfKey);
GeneratePanel.add(btnGenerate);
GeneratePanel.add(btnExit);
add(GeneratePanel);
this.btnExit.addActionListener(this.myActionListener);
this.btnGenerate.addActionListener(this.myActionListener);
setVisible(true);
}
class GUIWindowListener extends WindowAdapter
{
public void windowsClosing(WindowEvent e)
{
e.getWindow().dispose();
System.exit(0);
}
}
public class MyActionListener implements ActionListener
{
public MyFrame frame;
public MyActionListener(MyFrame frame)
{
this.frame=frame;
}
public void actionPerformed(ActionEvent e)
{
Object obj = e.getSource();
if(obj == frame.btnExit)System.exit(0);
if(obj == frame.btnGenerate)
{
Key WPA2Key = new Key();
txfKey.setText(WPA2Key.generate());
}
}
}
public static void main (String args[])
{
new MyFrame ();
}
}
Ich bin auch verbesserung offen, ich will ja schließlich was lernen :idea:!/**
*
*/
/**
* @author fabianschneider
*
*/
import java.util.Random;
import java.lang.*;
public class Key {
private int anzChar = 3;
private char Werte[]={'1','2','3','4','5','6','6','7','8','9','0','A','a','B','b','C','c','D','d','E','f','G','g','H','h','I','i','J','j','K','k',
'L','l','M','m','N','n','O','o','P','p','Q','q','R','r','S','s','T','t','U','u','V','w','X','x','Y','y','Z','z','#','$','!','§','%','?','(',')','/','+','-','='};
public String Key;
private int AnzWerte;
//private int Sleeptime = 1000;
public String generate()
{
Random Zufallsgenerator;
Zufallsgenerator = new Random(74);
for(int i= 0;i<anzChar;i++)
{
//try{
//Thread.sleep(Sleeptime);
AnzWerte = Zufallsgenerator.nextInt();
if(i>=1)
{
Key = String.valueOf(Werte[AnzWerte]);
}
else
{
Key=String.valueOf(Werte[AnzWerte]);
}
}
return Key;
}
}
vielen dank für eure Hilfe!
lg,
Fabi
EDIT: ich arbeite mit eclipse, fals das noch wichtig ist.