用delphi写一个加密st
时间: 2024-03-20 18:39:52 浏览: 288
请问您的问题中的"st"是指什么?如果是指字符串,那么可以使用Delphi内置的加密函数来对字符串进行加密。以下是一个使用AES加密算法对字符串进行加密的示例代码:
```
uses
System.SysUtils, System.Hash, System.Classes, System.NetEncoding, System.NetEncodingEx;
function EncryptString(const Input: string; const Key: TBytes): string;
var
Cipher: TAESEncryption;
InputBytes: TBytes;
OutputBytes: TBytes;
begin
InputBytes := TEncoding.UTF8.GetBytes(Input);
Cipher := TAESEncryption.Create(Key);
try
OutputBytes := Cipher.EncryptBytes(InputBytes);
finally
Cipher.Free;
end;
Result := TBase64EncodingEx.EncodeBytesToString(OutputBytes);
end;
function DecryptString(const Input: string; const Key: TBytes): string;
var
Cipher: TAESEncryption;
InputBytes: TBytes;
OutputBytes: TBytes;
begin
InputBytes := TBase64EncodingEx.DecodeStringToBytes(Input);
Cipher := TAESEncryption.Create(Key);
try
OutputBytes := Cipher.DecryptBytes(InputBytes);
finally
Cipher.Free;
end;
Result := TEncoding.UTF8.GetString(OutputBytes);
end;
```
这个示例代码中,EncryptString函数接受一个字符串和一个AES加密密钥作为输入,然后使用Delphi的TAESEncryption类对字符串进行加密。加密后的结果转换为Base64编码的字符串并返回。
DecryptString函数接受一个Base64编码的字符串和一个AES加密密钥作为输入,然后使用相同的TAESEncryption类对字符串进行解密。解密后的结果转换为UTF8编码的字符串并返回。
您可以在需要加密字符串的地方调用EncryptString函数,需要解密字符串的地方调用DecryptString函数。请注意,这个示例代码中使用了Base64编码,您可以选择其他编码方式来转换加密后的结果。
阅读全文