Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > General Coding
You last visited: Today at 13:28

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Java Vigenère Verschlüsselung

Discussion on Java Vigenère Verschlüsselung within the General Coding forum part of the Coders Den category.

Reply
 
Old   #1
 
Seriouz :3's Avatar
 
elite*gold: 1
Join Date: Jun 2008
Posts: 731
Received Thanks: 224
Java Vigenère Verschlüsselung

Hi,

bin noch ziemlich am Anfang von Java.
Hab mir mal einen Quellcode zu einer Vigenère-Verschlüsselung angeguckt.

PHP Code:
public class Vigenere
{
    public 
void verarbeitung(String satzString schluessel)
    {
        
satz=satz.toUpperCase();
        
satz=satz.replaceAll("[^A-Z]","");
        
schluessel=schluessel.toUpperCase();
        
String verschluesselterSatz="";
        for (
int i=0j=0i<satz.length();i++,j++)
        {
            if (
j==schluessel.length())
            {
                
j=0;
            }
            
verschluesselterSatz=verschluesselterSatz+(char)((satz.charAt(i)+schluessel.charAt(j)-130)%26+'A');
        }
        
System.out.println(verschluesselterSatz);
    }

Habe dort noch ein wenig verändert/ergänzt.
Versteh's auch soweit, bis auf
PHP Code:
            verschluesselterSatz=verschluesselterSatz+(char)((satz.charAt(i)+schluessel.charAt(j)-130)%26+'A'); 
Primär gehts mir um "-130%26+'A'".
Das 'A' war vorher eine 65, habs für bessere Lesbarkeit ersetzt (-> richtig?)

Und bei "-130%26" setzt bei mir soziemlich aus.
130=2*65, also möglicherweise um die Zeichen direkt in den richtigen Bereich zu bekommen, aber was soll das "%26"?
Hab mal nach dem % gesucht, da gehts wohl um den Rest bei einer Rechnung.
Das bringt mir für mein Verständnis allerdings wenig bis gar nichts.


Kann mir jemand bitte diesen Teil erklären?


MfG
Seriouz :3 is offline  
Old 04/09/2013, 21:35   #2

 
Obilee's Avatar
 
elite*gold: 144
Join Date: May 2007
Posts: 62,459
Received Thanks: 29,541
% = modulo ()
Berechnet halt den Rest zwischen zwei Zahlen. Wird oft eingesetzt um Zahlen in einem bestimmten Bereich nur zu bekommen z.B. ZufälligeZahl%26 => bekommst nur Zahlen zwischen 0 und 25, ist hier auch der Fall.
Obilee is offline  
Reply


Similar Threads Similar Threads
[JAVA Error] Could not create the java virtual machine
07/21/2013 - Technical Support - 10 Replies
Schönen Abend! Leider hat es sich aus einem unerfindlichen Grund ergeben, dass sobald ich die Minecraft.exe starten will die Errormeldung kommt. Die Tips auf Minecraft.net habe ich schon ohne Erfolg befolgt. Hoffe ihr könnt mir weiterhelfen... Mein PC:
[JAVA] Fehlermeldung - Verschlüsselung
04/22/2012 - General Coding - 3 Replies
Hallo. Bin momentan dran Java zu lernen. Bin momentan totaler Anfänger und versuche mich gerade an einem kleinen Programm, wo die Verschlüsselungsmethoden Vigenere, Caesar und ein eigenes Verschlüsselungssystem verbaut sein wird. Nun hab ich das Problem Vigenere und Caesar mit Buttons zu koppeln. Benutze Java-Editor. Dabei bekomme 2 Fehlermeldungen: GUI.java
[Java]Verschlüsselung mit der monoalphabetischen Substitution
10/06/2011 - General Coding - 7 Replies
Hallo, da ich in der Schule Java lerne/mache bekamen wir eine Aufgabe: Ich lerne zu Hause Java vor als in der Schule, das heißt arrays etc kann ich schon machen. Da wir aber in der Schule keine arrays bis jetzt gemacht haben, hat uns die lehrerin verboten, arrays zu benutzen, für die die es schon können. Also habe ich das ohne arrays gemacht und sogar ohne Switch und tausende if´s ! Jedoch habe ich das Problem das ich den verschlüsselten Text iwie nicht entschlüsseln kann. Hier...



All times are GMT +1. The time now is 13:29.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.