function cryptstr(const s:string; stype: dword):string;
var
  i: integer;
  fkey: integer;
begin
  result:='';
  case stype of
  0:    
    begin
      randomize;
      fkey := random($ff);
      for i:=1 to length(s) do
       result := result+chr( ord(s[i]) xor i xor fkey);
      result := result + char(fkey);
    end;
  1:    
    begin
      fkey :=  ord(s[length(s)]);
      for i:=1 to length(s) - 1 do
      result := result+chr( ord(s[i]) xor i xor fkey);
   end;
end;
这是我用的,好用啊