Delphi加密演算法

時間 2022-07-18 05:55:11

1樓:

我用的加密解密

function encryptstring(source, key: string): string;

//對字串加密(source:源 key:密匙)

varkeylen: integer;

keypos: integer;

offset: integer;

dest: string;

srcpos: integer;

srcasc: integer;

range: integer;

begin

keylen := length(key);

if keylen = 0 then

key := 'delphi';

keypos := 0;

range := 256;

randomize;

offset := random(range);

dest := format('%1.2x', [offset]);

for srcpos := 1 to length(source) do

begin

srcasc := (ord(source[srcpos]) + offset) mod 255;

if keypos < keylen then

keypos := keypos + 1

else

keypos := 1;

srcasc := srcasc xor ord(key[keypos]);

dest := dest + format('%1.2x', [srcasc]);

offset := srcasc;

end;

result := dest;

end;

function unencryptstring(source, key: string): string;

//對字串解密(src:源 key:密匙)

varkeylen: integer;

keypos: integer;

offset: integer;

dest: string;

srcpos: integer;

srcasc: integer;

tmpsrcasc: integer;

begin

keylen := length(key);

if keylen = 0 then

key := 'delphi';

keypos := 0;

offset := strtoint('$' + copy(source, 1, 2));

srcpos := 3;

repeat

srcasc := strtoint('$' + copy(source, srcpos, 2));

if keypos < keylen then

keypos := keypos + 1

else

keypos := 1;

tmpsrcasc := srcasc xor ord(key[keypos]);

if tmpsrcasc <= offset then

tmpsrcasc := 255 + tmpsrcasc - offset

else

tmpsrcasc := tmpsrcasc - offset;

dest := dest + chr(tmpsrcasc);

offset := srcasc;

srcpos := srcpos + 2;

until srcpos >= length(source);

result := dest;

end;

2樓:匿名使用者

給你寫個最簡單的:

//加密

function aa(const value,key:integer):integer;

begin

result:=(value+key) xor key;

end;

//解密

function bb(const value,key:integer):integer;

begin

result:=(value xor key) - key;

end;

當然了,這個安全性比較低,你可以自己改造一下,比如再做比較複雜的計算

請高手分析以下delphi加密後的密碼是通過什麼演算法得到

3樓:手機使用者

這個是不可能分析得出來的,任何一種演算法進行二次加密後都可以得到純數字字串,而且演算法還可以自己寫,不一定非要用公眾所知道的演算法。

對稱加密演算法和非對稱加密演算法的區別是什麼

一 對稱加密 symmetric cryptography 對稱加密是最快速 最簡單的一種加密方式,加密 encryption 與解密 decryption 用的是同樣的金鑰 secret key 這種方法在密碼學中叫做對稱加密演算法。對稱加密有很多種演算法,由於它效率很高,所以被廣泛使用在很多加密...

基於C語言的DES加密演算法的實現要怎麼寫啊

首先c語言要熟悉,然後去圖書館借一本加密解密的書,要裡面有c語言des實現 的 這種書是有的,我看到過 先對加密解密的歷史及發展現狀進行介紹,然後著重對des加密的發展歷史及原理進行闡述 以上內容要多借幾本相關書綜合一下用自己的語言表達出來 然後對des的演算法寫個程式 可以利用書裡面的程式 然後執...

最常用的密碼有哪些,常用的加密演算法有哪些?

愛演戲的男孩 1月17日安全公司keeper在對1000萬個洩露的密碼進行分析後,得出了今年最常用的密碼。排名第一的非常好猜,因為它幾乎每年都會當選,這個密碼就是123456,人類選擇密碼的能力實在是遭透了。在這1000萬個洩露的密碼中,有17 的使用者都選擇了123456最為自己的密碼。排名第二的...