Самый простой и самый примитивный способ шифрования - это смещение символов по ASCII-таблице. Вот пример:
Code
var
Str_Symbols: Array[0..MAX_PATH] Of Integer; // сюда будем сохранять зашифрованные данные
i: Integer;
const
KeyCrypt = 43; // это наш ключ шифрования
procedure Crypt;
begin
for i:=1 to Length(Edit1.Text) do
Str_Symbols[i]:=Ord(Edit1.Text[i]) + KeyCrypt;
end;
Все, теперь мы имеем набор чисел в массиве и можем делать с ними что хотим. Чтобы расшифровать, смещаем все в обратном порядке вот таким способом:
Code
Edit1.Text:=Edit1.Text + Char(Str_Symbols[i]-KeyCrypt); // эту строчку лучше поместить в цикл
Если же хотите чтобы при сохранении в файл был не набор цифр и чисел, а непонятные иероглифы, тогда нужно перевести его в ASCII-код без расшифровки, вот так:
Code
Edit1.Text:=Edit1.Text + Char(Str_Symbols[i]);
А ключ... Ключ можете хранить где угодно - если в файле вместе с шифрованным текстом то его можно будет найти, если же передавать его устно - то расшифровать будет уже очень сложно.