verschlüsselung

Status
Nicht offen für weitere Antworten.

agosinga

Mitglied
sollte mit java eine verschlüsselungsmethode erstellen, wo ein beliebiges wort durch den benutzer eingeben wird und dann das wort verschlüsselt wird.

zb. aus "HALLO" wird BLVVU

und es soll auch umgekehrt funktionieren lt folgender tabelle

Klartextbuchstabe ABCDEFGHIJKLMNOPQRSTUVWXYZ
Chiffrebuchstabe LEDCRQFBAZYVHXUPONWKGMJIST

gibt der benutzer +hallo ein (mit plus) wird in chiffre umgewandelt, gibt der ben. -blvvu (mit minus) wird
in klartext umgewandelt. (viell. geht das mit char.at)

hat jemand eine idee wie man an so ein projekt herangehen könnte`?
 

merlin2

Top Contributor
Code:
char[] alph1 = {'A', 'a', ...}
char[] alph2 = {'L', 'l', ...}
String input = ...;
String output = "";
if(input.startsWith("+"))
encode(input);
else if(input.startsWith("-"))
decode(input);
else
//ungültig

void encode(String in) {
   for(int i = 0; i < in.length(); i++) {
     for(int j = 0; j < alph1.length; j++) {
       if(in.charAt(i) == alph1[j])
         output += alph2[j];
     }
   } 
}
Das gleiche natürlich für decode().
 

agosinga

Mitglied
der benutzer gibt ein:

java "Dateiname" LEDCRQFBAZYVHXUPONWKGMJIST +HALLO

und java kodiert hallo um.

wie kann ich an das programm herangehen?
 

*Hendrik

Bekanntes Mitglied
Mal das Beispiel kommentiert

Code:
/*Hier speicherst Du in 2 char Arrays Deine Verschlüsselung. alph1 enthält das Ursprungsformat 
*(quasi das Alphabet, evtl. noch mit Zahlen), alph2 enthält die Verschlüsselung. D.h. in diesem Beispiel 
*ist die Verschlüsselung fest definiert. Willst Du die Verschlüsselung beim Aufruf Deines Programms 
*übergeben, musst  Du alpha2 mit dem übergebenen Wert füllen. Bei der Übergabe der Verschlüsselung
*solltest Du prüfen, dass es für jede Position in alpha1 eine Entsprechung in alpha2 gibt.
*/
char[] alph1 = {'A', 'a', ...} 
char[] alph2 = {'L', 'l', ...} 
String input = ...; 
String output = ""; 

/*In diesem Beispiel wird die Verschlüsselung nicht als Parameter übergeben. Stattdessen erfolgt der
*Aufruf mit java +Hello bzw. java -Hello. Über + und - wird festgelegt, ob codiert oder decodiert werden
*soll. Deswegen die Abfrage startsWith. Dementsprechend wird also encode oder decode aufgerufen.
*/
if(input.startsWith("+")) 
encode(input); 
else if(input.startsWith("-")) 
decode(input); 
else 
//ungültig 

/*Beim Codieren oder Decodieren erfolgt nichts anderes als ein zeichenweises Ersetzen. Dies wird
*durch zwei geschachtelte for-Schleifen realisiert. D.h. for(int i = 0...  durchläuft den übergebenen 
*String und sucht mit for(int j = 0... an welcher Stelle das aktuelle Zeichen in alph1 steht. Wenn
*if(in.charAt(i) == alph1[j]) ist dies der Fall und die Position für das Ersatz-/Verschlüsselungszeichen
*aus alph2 steht fest. Mit diesem Zeichen aus alph2 erstellst Du dann den verschlüsselten String, also
*output +=alph2[i]. 
void encode(String in) { 
   for(int i = 0; i < in.length(); i++) { 
     for(int j = 0; j < alph1.length; j++) { 
       if(in.charAt(i) == alph1[j]) 
         output += alph2[j]; 
     } 
   } 
}

/*Beispiel alph1 und alph2 (ohne Kleinbuchstaben)
*
*A B C D E F G H I J K L ...  (alph1)
*X Y D R S Z T G L I C P ... (alph2/Verschlüsselung) 
*
*zu verschlüsseln: AFFE
*
*Über die for-Schleifen wird die Position in der Verschlüsselung ermittelt:
*
*A -> 0 -> X
*F -> 5 -> Z
*F -> 5 -> Z
*E -> 4 ->S
*/

//Statt String würde ich für output StringBuilder verwenden.
 

merlin2

Top Contributor
Danke fürs Kommentieren!
Mit dem StringBuilder hast du natürlich Recht; ich habe keinen verwendet, da das Beispiel nur eine Herangehensweise für das eigentliche Codieren darstellen sollte (deshalb wird z. B. input auch nur mit "..." belegt).
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
U Cäsar Verschlüsselung Java Basics - Anfänger-Themen 8
Camoflasche RSA Verschlüsselung Java Basics - Anfänger-Themen 0
J RSA Verschlüsselung Testen / byte[] in Objekt umwandeln Java Basics - Anfänger-Themen 1
M Verschlüsselung mit replace() Java Basics - Anfänger-Themen 35
P Cäsear verschlüsselung irgendwas passt noch nicht Java Basics - Anfänger-Themen 2
A Methoden Cäsar-Verschlüsselung Java Basics - Anfänger-Themen 13
E Einfache Java Verschlüsselung Java Basics - Anfänger-Themen 4
N Erste Schritte JFrame Caesar-Verschlüsselung Java Basics - Anfänger-Themen 23
Y Caesar Verschlüsselung Fehler Java Basics - Anfänger-Themen 4
Ä Cäsar-Verschlüsselung Java Basics - Anfänger-Themen 5
N Caesar Verschlüsselung Java Basics - Anfänger-Themen 2
L Interpreter-Fehler RSA Verschlüsselung Fehler Java Basics - Anfänger-Themen 2
M Erste Schritte Verschlüsselung von text Java Basics - Anfänger-Themen 21
M Erste Schritte Verschlüsselung / Login-Sicherheit Java Basics - Anfänger-Themen 8
D Eine einfache Verschlüsselung schreiben Java Basics - Anfänger-Themen 3
A Vigenere Verschlüsselung Java Basics - Anfänger-Themen 2
B RSA Verschlüsselung für Aktivierunscode Java Basics - Anfänger-Themen 7
T Array Verschlüsselung Java Basics - Anfänger-Themen 5
Z Cäsar-Verschlüsselung Java Basics - Anfänger-Themen 1
V Permutation, Verschlüsselung Java Basics - Anfänger-Themen 19
H Cäsar-Verschlüsselung Java Basics - Anfänger-Themen 1
S Caesar Verschlüsselung Start Hilfe Java Basics - Anfänger-Themen 4
K Symmetrische Verschlüsselung von TextArea Java Basics - Anfänger-Themen 7
U Problem mit Verschlüsselung Java Basics - Anfänger-Themen 2
C Frage zu RSA-Verschlüsselung Java Basics - Anfänger-Themen 3
Y Applet: Verschlüsselung Java Basics - Anfänger-Themen 3
H Caesar-Verschlüsselung - Was stimmt nicht? Java Basics - Anfänger-Themen 6
V Ceasar Verschlüsselung Java Basics - Anfänger-Themen 9
D Verschlüsselung mit Java Java Basics - Anfänger-Themen 8
F Problem: Verschlüsselung von String in Array Fehler Java Basics - Anfänger-Themen 2
C Verschlüsselung Java Basics - Anfänger-Themen 8
R Frage zu Cäsar - Verschlüsselung! Java Basics - Anfänger-Themen 10
I Rc4 Verschlüsselung in BlueJ Java Basics - Anfänger-Themen 18
D Verschlüsselung Java Basics - Anfänger-Themen 4
C Compiler-Fehler Verschlüsselung Java Basics - Anfänger-Themen 2
B byte-weise Verschlüsselung Java Basics - Anfänger-Themen 6
S Caesar-Verschlüsselung Problem/Frage Java Basics - Anfänger-Themen 4
D Java Password verschlüsselung Java Basics - Anfänger-Themen 6
P RSA Verschlüsselung kleines Problem Java Basics - Anfänger-Themen 5
R Verschlüsselung von String Java Basics - Anfänger-Themen 4
J Cäsar Verschlüsselung Java Basics - Anfänger-Themen 12
G Verschlüsselung und Entschlüsselung von Texten Java Basics - Anfänger-Themen 7
D Java Verschlüsselung Java Basics - Anfänger-Themen 8
O Verschlüsselung mit Cipher & Key Java Basics - Anfänger-Themen 9
A Vigenere Verschlüsselung Java Basics - Anfänger-Themen 2
K Cäsar-Verschlüsselung Java Basics - Anfänger-Themen 1
S Hill Verschlüsselung Java Basics - Anfänger-Themen 10
A Einfache java Verschlüsselung HILFE Java Basics - Anfänger-Themen 3
W Xor-Verschlüsselung Java Basics - Anfänger-Themen 15
Y verschlüsselung Java Basics - Anfänger-Themen 10
T Frage zur Verschlüsselung (RSA) Java Basics - Anfänger-Themen 6
A Java Verschlüsselung/Cipher Java Basics - Anfänger-Themen 12
S Verschlüsselung Key Splitting Java Basics - Anfänger-Themen 2
B Again, Verschlüsselung Java Basics - Anfänger-Themen 3
M Caeser Verschlüsselung ganz einfach(nicht für mich) Java Basics - Anfänger-Themen 6
L Frage zur Verschlüsselung in java Java Basics - Anfänger-Themen 3
D Verschlüsselung Java Basics - Anfänger-Themen 4
G Vergleich bei MD5-Verschlüsselung Java Basics - Anfänger-Themen 3
zilti md5-Verschlüsselung? Java Basics - Anfänger-Themen 7
L Caesar-Verschlüsselung programmieren Java Basics - Anfänger-Themen 12
Lazybone Vigenere Verschlüsselung funktioniert nicht richtig Java Basics - Anfänger-Themen 8
S XOR-Verschlüsselung Java Basics - Anfänger-Themen 5
U "Einfache Verschlüsselung" Java Basics - Anfänger-Themen 17
K Verschlüsselung Java Basics - Anfänger-Themen 8
E Verschlüsselung mithilfe von Array Java Basics - Anfänger-Themen 2
S SHA? Hashcodes, Blowfish Verschlüsselung Java Basics - Anfänger-Themen 7
L Java und PGP Verschlüsselung, wie...??? Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben