Autor Beitrag
Jodsalz
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Mo 12.02.07 18:16 
hallo,

hab hier im forum einen quelltext gefunden, der mit dem vigenerechiffre
einen text mit einem schlüsselwort verschlüsselt. kann mir aber nicht erklären
an welcher stelle die eigentliche verschlüsselung stattfindet...

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
  for i:= 1 to length(klartext)+1 do             
        begin                                       
          buffer:= klartext[i];                     
          versch:= Ord(schluessel2[i]) - 97;        
              for j:= 1 to versch do                
                begin                               
                  if buffer= 'z' then buffer:='a';  
                  if buffer= ' ' then buffer:=' '   
                  else                              
                   inc(buffer);                     
                end;                                
          geheimtext:= geheimtext + buffer;      

        end;


eigentlich wird doch nur der asciiwert um 97 verringert und anschliessend
nur geguckt ob es ein leerzeichen oder ein z ist??? nur komischerweise läuft
es und dazu auch noch richtig...

kann mir jemand helfen?

Moderiert von user profile iconChristian S.: Delphi-Tags hinzugefügt
Grenzgaenger
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 12.02.07 18:40 
das ist ja auch kein vigenere. da kannste lange nach der codestrecke suchen suchen.

Suche bei Google VIGENERE
JayEff
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2971

Windows Vista Ultimate
D7 Enterprise
BeitragVerfasst: Mo 12.02.07 18:51 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
  for i:= 1 to length(klartext)+1 do //+1 ist falsch.    
        begin                                       
          buffer:= klartext[i];                     
          versch:= Ord(schluessel2[i]) - 97;        
              for j:= 1 to versch do                
                begin                               
                  if buffer= 'z' then buffer:='a';  
                  if buffer= ' ' then buffer:=' '   
                  else                              
                   inc(buffer); //dashier ist die eigentliche verschlüsselung.                    
                end;                                
          geheimtext:= geheimtext + buffer;      

        end;

Bitte <span class="inlineSyntax"><span class="codecomment">{PROTECTTAGf70c83a610f663af6f3e846f1d66ed6f}</span></span>-Tags verwenden! :mahn:

An der markierten Stelle wird aus einem A ein B gemacht, etc. Der Algorithmus ist allerdings höchst unvollständig und teilweise fehlerhaft. Ausserdem ist er meiner Ansicht nach sehr gewöhnungsbedürftig implementiert.

Was du vor dir hast ist ein Suche in Wikipedia CAESAR CHIFFRE, kein Vigenere.

_________________
>+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
Jodsalz Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Mi 21.02.07 17:50 
ok