當前位置:首頁 » 文件管理 » delphi文件夾加密

delphi文件夾加密

發布時間: 2022-04-19 20:06:31

A. delphi 中這4個都是關於加密的MD5String、MD5File、MD5Print、MD5Match,請問解密的演算法怎麼實現。

MD5是單向加密,不存在解密。
是一個公開的演算法,一般用於文件的數字簽名
想解密的話應該只能做一個庫去記錄下比如某個字元經過MD5加密後的值。
記得好像有專門查詢MD5加密前值的網站。
你所說的四個加密函數應該是delphi對MD5加密的再次封裝,理論上一樣的

B. delphi實現DES位元組流加密,該怎麼解決

在 CnPack 提供的源代碼包里,提供了 des 加解密單元文件,提供了以下四個功能函數:

function DESEncryptStr(Str, Key: AnsiString): AnsiString;
{* 傳入明文與加密 Key,DES 加密返回密文,
註:由於密文可能含有擴展 ASCII 字元,因此在 DELPHI 2009 或以上版本中,請用
AnsiString 類型的變數接收返回值,以避免出現多餘的 Unicode 轉換而導致解密出錯}

function DESDecryptStr(Str, Key: AnsiString): AnsiString;
{* 傳入密文與加密 Key,DES 解密返回明文}

function DESEncryptStrToHex(Str, Key: AnsiString): AnsiString;
{* 傳入明文與加密 Key,DES 加密返回轉換成十六進制的密文}

function DESDecryptStrFromHex(StrHex, Key: AnsiString): AnsiString;
{* 傳入十六進制的密文與加密 Key,DES 解密返回明文}

C. Delphi加密演算法

我用的加密解密
function EncryptString(Source, Key: string): string;
//對字元串加密(Source:源 Key:密匙)
var
KeyLen: 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:密匙)
var
KeyLen: 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('$' + (Source, 1, 2));
SrcPos := 3;
repeat
SrcAsc := strtoint('$' + (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;

D. 用delphi創建的excel 文件,能在創建時對他加密嗎

我用delphi創建excel來進行數據的備份,但想對創建的文件加密,請高手指導

E. 請教DELPHI編程實現「透明文件加密的問題 」

利用TFileStream(其實內存流、文件讀取我都試過了),TFileStream.ReadBuffer(Bbuf[0],sizeB)賦值給Bbuf動態byte數組。
不一樣的情況出現了,我直接把動態數組Bbuf傳遞給FrontSealcard或者BackSealcard字元指針,編譯器報錯。
進行轉換為ppF := PChar(Fbuf);然後程序返回值永遠不正常。

F. delphi 中的 MD5 加密怎麼用

1.在Delphi自帶的Indy控制項中其實是提供了MD2,MD4,MD5對象的,可以直接使用來完成MD5的簽名演算法。不需要DLL或是Pas。 2.在Uses單元中引用 IdHashMessageDigest,IdGlobal, IdHash 單元,再寫如下代碼即可以達到MD5的實現。

G. DELPHI 中INI文件加密還原的問題

可以用異或加密演算法。用明文的ASCII碼值同密鑰進行異或運算,得到密文,解密時用密文同密鑰在進行異或運算即可得到明文

H. 在delphi中怎樣實現SHA1加密

方法一、使用 delphi 內置函數。
delphi 的 IdHashSHA 單元,提供了 TidHashSHa1 類,可以實現 SHA1 加密。
方法二、使用第三方控制項。
如:CnPack 小組提供的 CnSHA1。示例代碼如下:

1
2
3
4
5
6
7
8

procere TForm1.btnSha1Click(Sender: TObject);
begin
{$IFDEF UNICODE}
pnlSha1.Caption := SHA1Print(SHA1StringA(AnsiString(edtSha1.Text)));
{$ELSE}
pnlSha1.Caption := SHA1Print(SHA1String(edtSha1.Text));
{$ENDIF}
end;

熱點內容
javaread 發布:2024-05-20 20:51:52 瀏覽:788
java的歸並排序 發布:2024-05-20 20:46:37 瀏覽:743
mac怎麼看存儲空間 發布:2024-05-20 20:06:37 瀏覽:231
編程類股票 發布:2024-05-20 19:54:34 瀏覽:921
筆記本電腦設置密碼怎麼弄 發布:2024-05-20 19:30:21 瀏覽:457
電腦租伺服器一天多少 發布:2024-05-20 19:23:15 瀏覽:776
c語言程序三種基本結構 發布:2024-05-20 19:18:06 瀏覽:800
小蟻運動相機存儲卡 發布:2024-05-20 19:17:31 瀏覽:83
紅米4怎麼關閉密碼鎖屏密碼 發布:2024-05-20 18:55:00 瀏覽:767
買手機看哪些參數配置圖片 發布:2024-05-20 18:35:02 瀏覽:8