C#中字符串的加密

王朝c#·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

可以用DSA和RSA,如:

using System;

using System.Text;

using System.Security.Cryptography;

class dsacrypto_SignData {

public static void Main(String[] args){

//先要将字符串转换为字节数组,这与编码有关。

String str = "this is a test.";

byte[] bytes = Encoding.ASCII.GetBytes(str);

//选择签名方式,有RSA和DSA

DSACryptoServiceProvider dsac = new DSACryptoServiceProvider();

byte[] sign = dsac.SignData(bytes);

//sign便是出来的签名结果。

//下面是认证了

DSACryptoServiceProvider dsac2 = new DSACryptoServiceProvider();

dsac2.FromXmlString(dsac.ToXmlString(false));

bool ver = dsac2.VerifyData(bytes, sign);

if (ver) {

Console.WriteLine("通过");

} else {

Console.WriteLine("不能通过");

}

}

}

RSA类似,不过RSA比DSA慢得多,但比DSA安全。RSA可以选择关键字的大小,越大越安全

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航