delphi4arab منتديات دلفي للعرب

نسخة كاملة : كيف يتم حل معادلة تشفير كلمة السر
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2 3
التعديلات فى الدالفى 2009 .

PHP كود :
function Encrypt(s:AnsiString):AnsiString;
var 
i,b:byte;
var 
aux,aux2:AnsiString;
begin
     aux2
:='r#gg&P~<gthb8b=r#gg&P~<gthb8b=';
     
aux:=s;
     for 
i:=1 to length(s)do
     
begin
       b
:=ord(s[i])+ord(aux2[i])+(length(s)*23)+(i*49);
       
aux[i]:= AnsiChar(chr(b));
     
end;
     
Encrypt:=aux;
end; 

PHP كود :
Function Dcyt(S:AnsiString):AnsiString;
Const 
Aux2 = 'r#gg&P~<gthb8b=r#gg&P~<gthb8b=';
var
 
I:Longword;
begin
  
for I := Low(I)+1 To Length(S)  do
  
Result:=Result+AnsiChar(Chr(Ord(S[I])-(Ord(Aux2[i])+Length(S)*23+(I*49))));
end; 

الكلمة byby ??????? .
وعليكم السلام
اليوم فقط وقعت على هذا الموضوع، فيما يخص التعديلات على Delphi2010، بهذا الشكل:
PHP كود :
function Encrypt(s: AnsiString): String;
var
  
i, b: byte;
var
  
aux, aux2: AnsiString;
begin
  aux2 
:= 'r#gg&P~<gthb8b=r#gg&P~<gthb8b=';
  
aux := s;
  for 
i := 1 to length(s) do
  
begin
    b 
:= ord(s[i]) + ord(aux2[i]) + (length(s) * 23) + (i * 49);
    
aux[i] := AnsiChar(chr(b));
  
end;
  
Encrypt := aux;
end;

Function 
Dcyt(s: AnsiString): String;
Const
  
aux2: AnsiString = 'r#gg&P~<gthb8b=r#gg&P~<gthb8b=';
var
  
i: Longword;
begin
  
for i := Low(i) + 1 To length(s) do
    
Result := Result + AnsiChar
      
(chr(ord(s[i]) - (ord(aux2[i]) + length(s) * 23 + (i * 49))));
end; 
ولا حاجة لتحويل ناتج الدوال إلى AnsiString وتحويل البراميتر في Encrypt فقط لدعم Unicode.
يبقى كلمة byby أعتقد أنه وقع في التشفير رمز يصعب فك تشفيره فتحول إلى شكل آخر، حاول إضافة نقطة بعد byby وستجد النتيجة صحيحة.
شكرا كثيرا لكم.
الصفحات : 1 2 3