vigenere verschlüsselung |
03.05.2011, 11:05 | Auf diesen Beitrag antworten » |
blacke | vigenere verschlüsselung Meine Frage: hey, ich habe ein problem, die oberfläche steht schon und die idee auch, aber der logik teil ist zu schwierig... ich würde mich um hilfe freuen... das ganze soll ein applet werden... schon einmal danke Meine Ideen: import java.awt.*; import javax.swing.*; import java.awt.event.*; /** * Class Cäsar - write a description of the class here * * @author (your name) * @version (a version number) */ public class VigenereVer extends JApplet implements ActionListener { Label eingabe = new Label("Eingabe:",Label.LEFT); //Festlegen aller Textfelder und Buttons TextField editEingabe = new TextField("",20); Button buttonCodieren = new Button("Codieren"); Label ausgabe = new Label("Ausgabe:",Label.LEFT); TextField editAusgabe = new TextField("",20); Label verschiebung = new Label("Verschiebung:",Label.LEFT); TextField editVerschiebung = new TextField("",20); //--------------------------------------------------Anfang Methode------------------------------------------------------------------ public void init() { //Layout setzen setLayout(new GridLayout(10,2)); //Die Tabellarische Form festlegen //Oberflaeche zusammensetzen add(eingabe); //Die Vorher festgelegten Felder und Buttons anzeigen lassen add(editEingabe); add(ausgabe); add(editAusgabe); add(verschiebung); add(editVerschiebung); buttonCodieren.addActionListener (this); add(buttonCodieren); } public void actionPerformed (ActionEvent ereignis){ String s; s = ereignis.getActionCommand(); if (s.equals("Codieren")){ int Verschieben = Integer.parseInt(editVerschiebung.getText()); //Schhlüsselwort aus dem Feld kriegen //Verschieben = Verschieben % 26; //Modulo 26 String ausgeben = new String(); /*while(Verschieben < 0) { Verschieben +=26; } */ for(int i=0; i<editEingabe.getText().length(); i++) //Eingabe-Text auslesen { int k = (int)editEingabe.getText().charAt(i); //in ASCII Code umwandeln //großbuchstaben if (k > 64 && k < 91){ //Buchstaben begrenzen k+=Verschieben; if (k > 90) k -= 26; } //kleinbuchstaben if (k > 96 && k < 123){ k+=Verschieben; //Buchstaben begrenzen if (k > 122) k -= 26; } ausgeben += (char)k; editAusgabe.setText(ausgeben); //Text ausgeben } } } } |
|
|
21.06.2011, 15:50 | Auf diesen Beitrag antworten » |
Beerware Coder | Zeichne dir mal eine Viginiere Tabelle auf Wie wird das Geheimtextcharacter adressiert? Das Viginenere Verfahren ist ein polyalphabetischer Substitutionscode. Abhängig von der Position des Characters im Text wird dem Klartextcharacter ein Geheimtextcharacter zugeordnet. Zuerst einmal muss du ersteinmal den Überlauf implementieren: Du brauchst einen Zeiger, in dem steht, an welcher Position des Schlüssels du gerade bist. Letzendlich benötigst du eine for-Schleife: Darin wird die Tabellenverschlüsselung ermittelt und der Schlüsselzeiger verändert Diesen musst du am Ende der Schleife zuerst präinkrementieren und dann Modulo der Länge rechnen um einen Überlauf zu vermeiden. |
|
Verwandte Themen
Die Beliebtesten » |
Die Größten » |
Die Neuesten » |