Zitat:
zu deinem patent (a) gibts hier in europa keine softwarepatente
Wie jetzt? Dann kann ich mir das also sparen... mhh...
Theoretisch könnte ich den Algorithmus ja dann doch ins Forum schreiben. Ich werd drüber nachdenken.
Was das copy angeht:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var text1,text2: string;
i,x: integer;
begin
text1 := FileToString('abc.xyz'); // datei hat nix zu sagen, dient als temp. Datenquelle
x := length(text1);
ShowMessage('Messung starten');
for i := 1 to 1000 do
begin
text2 := copy(text1,20000,500000 - 19999) + copy(text1,1,19999) + copy(text1,500001,x - 500000);
end;
ShowMessage('Fertig');
end;
Dauer: 37 Sekunden
Delphi-Quellcode:
procedure TForm1.Button5Click(Sender: TObject);
var text1,text2: string;
i,x: integer;
begin
text1 := FileToString('abc.xyz'); // datei hat nix zu sagen, dient als temp. Datenquelle
x := length(text1);
ShowMessage('Messung starten');
for i := 1 to 1000 do
begin
SetLength(text2, x); // Speicher reservieren
Move(text1[20000], text2[1], 500000 - 19999);
Move(text1[1], text2[500001 - 20000], 19999);
Move(text1[500001],text2[500001], x - 500001);
end;
ShowMessage('Fertig');
end;
Dauer: 11 Sekunden
Delphi-Quellcode:
procedure TForm1.Button7Click(Sender: TObject);
var text1,text2: string;
i,x: integer;
begin
text1 := FileToString('abc.xyz'); // datei hat nix zu sagen, dient als temp. Datenquelle
x := length(text1);
ShowMessage('Messung starten');
for i := 1 to 1000 do
begin
SetLength(text2, x); // Speicher reservieren
text2 := copy(text1,20000,500000 - 19999) + copy(text1,1,19999) + copy(text1,500001,length(text1) - 500000);
SetLength(text2, x);
MoveMemory(@text2[1], @text1[20000], 500000 - 19999);
MoveMemory(@text2[500000 -19999 + 1], @text1[1], 19999);
MoveMemory(@text2[500001], @text1[500001], x-500001);
end;
ShowMessage('Fertig');
end;
Dauer: 47 Sekunden
Damit wäre diese Frage auch beantwortet. Mit Move kann man die Meiste Zeit einsparen, dann geht das ganze 3 mal so schnell
Werd dies auch auf alle anderen Stellen übertragen, wo Zeichenketten zusammengefügt werden. Wieder etwas neues dazu gelernt
Aber eine Frage habe ich jetzt noch:
Wenn ich hier in Deutschland dieses Programm nun kostenlos zur Verfügung stelle, könnte ich dann von den anderen Ländern aus Ärger bekommen? Es liegt ja nahe, dass auch in diesen Ländern das Programm genutzt werden "könnte". Oder ist dann der Anwender schuld, der es benutzt?
Ich bin gerade dabei das Programm ins Englische zu übersetzen. Kann ich da Probleme bekommen wenn ich das Online stelle, und auch Englisch unterstützt wird? Weil damit fördere ich ja quasi die Verbreitung auf den anderen Kontinenten. Kennt sich da jemand aus?
Zitat:
PS: such mal im Forum nach Beiträgen des Users "negah" (Hagen) ... ist einer der größten Verschlüsselungsexperten ... also gibt's viel guten Stoff zum lesen,
aber nach den Beschreibungen hier, würd ich jetzt einfach mal vermuten, daß er deinen Algo in der Luft zerreißt und dirleicht beweißt, daß er unsicher ist ... sind halt, selbst wenn in guter und sicherer Kern dahinterstecken könnte, zuviele Schwachstellen drin, welche das Ganze wieder insgesammt unsicher machen.
Ich werde mich mit ihm in Kontakt setzen, das wäre schon krass wenn es da ne Schwachstelle gibt, denn ich habe keine Hintertüren eingebaut, es wird noch nicht mal erkannt, ob das Passwort richtig ist, also kein Rückgabewert geliefert. Naja, mal schauen.