当前位置:首页 » 文件管理 » 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;

热点内容
动态规划01背包算法 发布:2024-11-05 22:17:40 浏览:849
nasm编译器如何安装 发布:2024-11-05 22:01:13 浏览:180
登录密码在微信的哪里 发布:2024-11-05 22:00:29 浏览:739
c防止反编译工具 发布:2024-11-05 21:56:14 浏览:247
安卓虚拟机怎么用 发布:2024-11-05 21:52:48 浏览:344
php时间搜索 发布:2024-11-05 20:58:36 浏览:478
燕山大学编译原理期末考试题 发布:2024-11-05 20:13:54 浏览:528
华为电脑出现临时服务器 发布:2024-11-05 20:05:08 浏览:408
斗战神免费挖矿脚本 发布:2024-11-05 19:53:25 浏览:665
网吧服务器分别是什么 发布:2024-11-05 19:45:32 浏览:392