Jak zaszyfrować i z powrotem odszyfrować nazwę pliku z polskimi znakami na nazwę odpowiadającą nazwie plików od A-Z i od 0-9 bez polskich znaków? np na coś takiego: pliczekąęł.jakiś.txt > ABCXYZ123.BCEAB567.txt
Oczywiści z ograniczeniem do 255 znaków i wyborem klucza szyfrowania. (xor odpada)
Na tym wlasnie polega programowanie zebys sam TAKIE rzeczy wymyslal:)
własna radosna twórczość, RSA, DES, BlowFish, ...
A najprosciej... Tylko, że nazwa bedzie 2x dluższa od oryginału... Zapisz kazda literke jako hex (lub inny system... np. trzydziesokilkukrotny ) nr. ascii. Co wczesniej zrobisz z numerem ascii... Twoja sprawa... Możesz go zakodować jak ci sie zywnie podoba.
Ale gdzie szyfrowanie co mi da zmiana na kod ascii: tekst się wydłuży i będzie problem, nie ma może innej metody na to?
Ord+Chr+For+F1+Troche Chęci
Ale gdzie szyfrowanie co mi da zmiana na kod ascii: tekst się wydłuży i będzie problem, nie ma może innej metody na to?
Przecież ci flabra napisał, że możesz zakodować sobie kod ASCII, najprościej za pomocą xor. A jak ci się nie podoba wydłużony tekst, to zastosuj algorytm Huffmana.
najprostszy system szyfrowania ktory jest w ksiazkach dla poczatkujacych (bardzo :))
if uppcase(znak)='a' then znak:='j';
itd.
if uppcase(znak)='9' then znak:='u';
odkodowanie analogicznie :d
Robię tak:
procedure TForm1.Edit1Change(Sender: TObject);
var
c: char;
i: integer;
nazwa: string;
begin
for i:=0 to Length(Edit1.text)-1 do
begin
c:=Copy(Edit1.text,i,1)[1];
nazwa:=nazwa+IntToStr(Ord(c));
end;
Label1.Caption := nazwa;
end;
Ale troszkę za dłużo tych znaków, a jak to teraz skompresować w same znaki Hexa (0-9 i A-E).
A jaki algorytm najlepiej by skompresował taki string do postaci nazwy w HEXie? Co polecacie zlib , lhz, zip lub jakieś inne?