当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > C#中字符串的加密

ASP.NET
Java、C#泛型的一些个人看法
用JScript.net写.net应用程序
.Net Remoting实现定向广播
ASP.NET 与 Ajax 的实现方式
在.NET环境下绘制模糊数学中隶属函数分布图
.Net UCS2 加码最简单的方法
在VS2005中创建并使用MasterPage
无废话C#设计模式之十三:Decorator
用 C# 编程实现读写Binary
无废话C#设计模式之十二:Bridge
无废话C#设计模式之十一:Composite
ASP.NET连接Access和SQL Server数据库
.NET和J2EE该相互学习什么
ASP.NET 2.0功能扩展:跨页提交
巧用escape解决ASP.NET中URL传参乱码问题
理解ASP.NET中的三层结构
解读ADO.NET2.0的十大最新特性
ASP.NET教程:抽象工厂模式
ASP.NET教程:抽象类和接口的比较
C#实现USB接口的程序代码

ASP.NET 中的 C#中字符串的加密


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 81 ::
收藏到网摘: n/a


可以用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可以选择关键字的大小,越大越安全