AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Kleine Verschlüsselung
Thema durchsuchen
Ansicht
Themen-Optionen

Kleine Verschlüsselung

Ein Thema von Sascha_OW · begonnen am 2. Mär 2006 · letzter Beitrag vom 12. Mär 2006
Antwort Antwort
Seite 1 von 2  1 2      
Sascha_OW
Registriert seit: 4. Aug 2005
Delphi-Quellcode:
function verschüssel (Wort: string) : string;
var i,f,x:integer;
    test, test1, test2 : string;
begin
  test := '';
  For i := 1 to length(wort) do begin
       test := Test+ '#' + Inttostr(Ord(Wort[i])) + '#';
       test2 := Inttostr(Ord(Wort[i])) + '#';
       For f := Length(test2) to 9 do begin
             x := random (215) +36;
             test1 := Chr(x);
             test := test + test1;
       end;
  end;
  result := tesT;
end;

function entschüssel (Wort: string) : string;
var Buchstaben : TStringList;
   i,f : integer;
   test: string;
   Test1 : TStringList;
begin
    test := '';
    Test1 := TStringList.Create;
    Buchstaben := TStringList.Create;
    For i := 1 to length( wort) do begin
        If wort[i] = '#then begin
            Buchstaben.add (InttoStr(i));
        end;
    end;
    For i := 1 to Buchstaben.count -1 do begin
        For f := StrtoInt(Buchstaben[i-1]) +1 to StrtoInt(Buchstaben[i])-1 do begin
            test := test + wort[f];
        end;
        try
        StrtoInt(test);
        If test <> 'then Test1.add (test);
        test := '';
        except
        test := '';
        end;
    end;
    test := '';
    For i:= 0 to Test1.Count -1 do begin
        test := test + chr (StrtoInt(Test1[i]));
    end;
    result := test;
end;
Das ist meine kleine Verschlüsslung ist nicht sehr hart zu knacken aber auch da muss man erstmal drauf kommen
Kostenlose SMS unter:
http://www.smsjunky.de
 
Benutzerbild von freak4fun
freak4fun

 
Delphi 10.2 Tokyo Starter
 
#2
  Alt 2. Mär 2006, 10:25
Ist das nicht eher was für die Code-Bibliothek?

MfG
freak
  Mit Zitat antworten Zitat
Daniel

 
Delphi 10.4 Sydney
 
#3
  Alt 2. Mär 2006, 10:36
Hallo Sascha,

vielleicht kannst Du ja noch was zu Deinem Verfahren sagen. Wo liegen die Stärken, wo liegen die Schwächen - was grenzt es gegenüber den anderen Verfahren ab, die zu finden sind?
Daniel R. Wolf
  Mit Zitat antworten Zitat
2. Mär 2006, 10:37
Dieses Thema wurde von "Matze" von "Open-Source" nach "Neuen Beitrag zur Code-Library hinzufügen" verschoben.
Ich habe es mal hierhin verschoben, auch wenn ich denke, dass es für die CL nicht reichen würde, aber das sieht mann dann ja noch.
Sascha_OW

 
Delphi 2005 Professional
 
#5
  Alt 2. Mär 2006, 11:15
also ich denke das die Schwächen auf der Hand liegen, wenn man die Wert in eine Datei speichert und sich dann an mal anguckt dann endeckt man das es viele verwirrende zeiche gibt aber auch Zufälltig gut lesbare zahlen und dann kommt man auch irgendwann drauf das es sich um ord() handelt.
Ich denke aber das das ganze für den "Einfachen gebraucht" geeignet ist
Sascha Schwarz
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#6
  Alt 2. Mär 2006, 11:16
Ich würde sagen, die frißt ganz schön Speicher.
Hab's nicht getestet, aber der verschlüsselte String wird wohl 10 mal so groß sein, wie der Unverschlüsselte, außderem helfen zufällige Bytes darin überhaupt nüschts, wenn man vorher schon weiß, daß man einfach nur jeweils 10 Zeichen auslesen muß, sich die ersten Zahlen wischen den ersten beiden # vornehmen und diese per chr in ein Byte umwandeln muß ... die restelich "zufälligen" Zeichen sind also vollkommen sinnlos und jedem, der nur halbwegs was von Ent-/Verschlüsselung versteht, wird auffallen, daß diese Zeichen nicht zum Eingangsstring gehören können ... entweder sind's immer die Selbern, da di ja das Randomize vergessen hast, oder die sind immer anders, was bei 'nem unverändertem Eingansstring kaum mögich ist.
So, und jetzt darf der Hagen auch noch darüber herziehn ._.

[nachtrag]
wiedermal ein bissl langsam -.-''

@Sascha_OW noch einfach wird's, weil die zufällg gut lesbaren Zahlen schön eingepackt sind und immer gut positioniert

#123#.....#12#......#123#.....#12#......
  Mit Zitat antworten Zitat
Sascha_OW

 
Delphi 2005 Professional
 
#7
  Alt 2. Mär 2006, 11:29
ich werde jetzt noch mal 2..3 Sachen nach bessern
Sascha Schwarz
  Mit Zitat antworten Zitat
Sascha_OW

 
Delphi 2005 Professional
 
#8
  Alt 2. Mär 2006, 13:49
so ich habe das denn noch mal überdacht:
Delphi-Quellcode:
function verschüssel (Wort: string) : string;
var i,f,x,v,ran:integer;
    test, test1, test2, ran_str, test3 : string;
begin
  test := '';
  ran_str := '';
  ran := 0;
  For i := 1 to length(wort) do begin
     ran := random(8)+1;
     test2 := Inttostr(Ord(Wort[i])*154) ;
     v := Ord(Wort[i]) * 154 * length(test2);
     test2 := InttoStr(v) + InttoStr(length(test2));
       test := Test+ InttoStr(ran);
       If length(test) <10 then ran_str := ran_str + '0' + inttostr(length(test)) else
       ran_str := ran_str + InttoStr(length(test));
       test := test + test2;
  end;
  If length(test)> 9 then ran_str := ran_str + inttostr(length(test)) else ran_str := ran_str + '0' + InttoStr(length(test));
  test3 := InttoStr(Length(ran_str));
  If strtoint(test3) < 9 then test3 := '0' + test3;
  result := test3 + ran_str + test;
end;

function entschüssel (Wort: string): string;
var i,f,x,y, test6, test7 : integer;
  test1,test2: TStringList;
  test, test3, test4, test5, test8,test10 : string;
begin
    x := 0;
    test := '';
    test3 := '';
    result := '';
    test10 := '';
    test4 := '';
    test6 := 0;
    test7 := 0;
    test8 := '';
    test1 := TStringList.Create;
    test2 := TStringList.Create;
    x := 2;
    For i := 2 to (StrToInt((Wort[1] + Wort[2]))+ 2) div 2 do begin
        x := x + 2;
        test := Wort[x -1]+ wort [x];
        If i = (StrToInt((Wort[1] + Wort[2]))+ 2) div 2 then test1.add (Inttostr(Strtoint(test) + 1)) else
        test1.add (test);
    end;
    For i := 3 + StrtoInt(Wort[1] + Wort[2]) to length (wort) do test4 := test4 + Wort[i];

    For i := 1 to (StrtoInt(Wort[1] + Wort[2]) div 2) -1 do begin
        For f := strtoint(test1[i - 1]) +1 to strtoInt(test1[i]) -1 do begin
            test3 := test3 + test4[f];
        end;
        test5 := test3[length(Test3)];
        test6 := StrtoInt(test5);
        For y := 1 to length(test3) - 1 do begin
             test10 := test10 + test3[y];
        end;
        test7 := Strtoint(test10) div strtoint(test5);
        test7 := test7 div 154;
        test8 := Test8 + chr(test7);
        test7 := 0;
        test3 := '';
        test10 := '';
    end;
    result := test8;
end;



Der string sieht dann so aus:
Zitat:
28010815222936435057647178859118932051777705788550 5289320537
77705688550538932052777705388550548932051777705488 55051893205

Jetzt könt ihr mir nicht sagen das das all zu schenll zu knacken ist

[edit=Admin]String umgebrochen, um Scrollbalken zu vermeiden. Mfg, Daniel[/edit]
Sascha Schwarz
  Mit Zitat antworten Zitat
JocalAreaNetwork

 
Delphi 2006 Architect
 
#9
  Alt 2. Mär 2006, 14:43
Naja, das Problem würde ich aber definitiv darin sehen, dass du keinen Schlüssel verwendest. Sobald jemand deinen Code kennt hast du ein großes Problem.
  Mit Zitat antworten Zitat
Sascha_OW

 
Delphi 2005 Professional
 
#10
  Alt 2. Mär 2006, 15:16
das ist schon war, aber ich kenne mich da nicht so gut aus und weiss nicht so recht wie das mit den Schlüüseln läuft und ich finde als einfache Verschlüüselung geht das doch durcvh
Sascha Schwarz
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz