C# code 转成 Delphi code

风车呼噜噜 2013-05-21 05:02:25
这是一个用C# 写的加密解密算法,哪位可以用delphi代码写一个
public class ClassCrypt
{
private const string EncryptionKey = "711Superl711Hyggehejsa";
private byte[] key = { };
private byte[] IV = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };

public string Decrypt(string stringToDecrypt)
{
try
{
byte[] inputByteArray = new byte[stringToDecrypt.Length];
key = Encoding.UTF8.GetBytes(EncryptionKey.Substring(0, 8)); //s.Text.Encoding.UTF8.GetBytes(Mid(EncryptionKey, 1, 8))
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
inputByteArray = Convert.FromBase64String(stringToDecrypt);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(key, IV), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
Encoding encoding = Encoding.UTF8;
return encoding.GetString(ms.ToArray());
}
catch (Exception ex)
{
return "Error:" + ex.Message;
}
}

public string Encrypt(string stringToEncrypt)
{
try
{
key = Encoding.UTF8.GetBytes(EncryptionKey.Substring(0, 8));
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
Byte[] inputByteArray = Encoding.UTF8.GetBytes(stringToEncrypt);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(key, IV), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
}
catch (Exception ex)
{
return "Error:" + ex.Message;
}
}
}
...全文
130 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
sundayzhao 2013-05-23
  • 打赏
  • 举报
回复
同意楼上,这个真转不了。
sololie 2013-05-21
  • 打赏
  • 举报
回复
转不了,按需求用delphi重写

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧