Hallo.
Warum Text übergeben, wenn nur die Länge genügt? Das ist eine unnötige Abhängigkeit von Delphi Implementierungsdetails. Und das Addieren von 1 innerhalb von Random() muss natürlich weg.
Delphi-Quellcode:
function GetOneTimePadKey(size: cardinal): string;
var
i: integer;
begin
SetLength(Result, size);
for i := 1 to Length(Result) do
Result[i] := Chr(Min_ASCII_Code + Random(Max_ASCII_Code - Min_ASCII_Code));
end;
Grüße vom marabu