`
caozuiba
  • 浏览: 902846 次
文章分类
社区版块
存档分类
最新评论

使用非对称加密算法的例子

 
阅读更多

using System;
using System.IO;
using System.Text;
using System.Security.Cryptography;

/// <summary>
/// 一个简单的使用.NET非对称加密算法的例子
/// 本例的程序很简单,仅用于说明如何在.NET里面使用非对称(RSA)算法。
/// </summary>
class Class1
{
public static void Main(string[] args)
{
Class1 c=new Class1();
c.StartDemo();
}

public void StartDemo()
{
//RSA的加解密过程:
// 有 rsa1 和 rsa2 两个RSA对象。
// 现在要 rsa2 发送一段信息给 rsa1, 则先由 rsa1 发送“公钥”给 rsa2
// rsa2 获取得公钥之后,用来加密要发送的数据内容。
// rsa1 获取加密后的内容后,用自己的私钥解密,得出原始的数据内容。

RSACryptoServiceProvider rsa1 = new RSACryptoServiceProvider();
RSACryptoServiceProvider rsa2 = new RSACryptoServiceProvider();

string publickey;
publickey=rsa1.ToXmlString(false); //导出 rsa1 的公钥

string plaintext;
plaintext="你好吗?这是用于测试的字符串。"; //原始数据
Console.WriteLine("原始数据是:/n{0}/n",plaintext);

rsa2.FromXmlString(publickey); //rsa2 导入 rsa1 的公钥,用于加密信息

//rsa2开始加密
byte[] cipherbytes;
cipherbytes=rsa2.Encrypt(
Encoding.UTF8.GetBytes(plaintext),
false);

/*//////////////////////////////////////////////*/
Console.WriteLine("加密后的数据是:");
for(int i=0; i< cipherbytes.Length; i++)
{
Console.Write("{0:X2} ",cipherbytes[i]);
}
Console.WriteLine("/n");
/*//////////////////////////////////////////////*/

//rsa1开始解密
byte[] plaintbytes;
plaintbytes = rsa1.Decrypt(cipherbytes,false);

Console.WriteLine("解密后的数据是:");
Console.WriteLine(Encoding.UTF8.GetString(plaintbytes));

Console.ReadLine();
}

}

分享到:
评论

相关推荐

    用.NET非对称加密算法实例

    一个简单的使用.Net非对称加密算法的例子, 本例的程序很简单,仅用于说明如何在.Net里面使用非对称(RSA)算法。

    c# 对称加密算法 例子

    c# 对称加密算法 例子~~~~~~~~~~~~~~ http://www.dotnetdev.cn

    用C#实现的数据加密(一) —— 对称加密算法

    用C#实现的数据加密(一) —— 对称加密算法 以下是关于对称加密算法的C#实现代码,大家可以根据需要更改不同的算法,文中以Rijndael算法为例: using System; using System.IO; using System.Security....

    rsa非对称加密算法例子

    RSA加密算法-Java实现,随机生产秘钥对,由公钥对内容进行加密,私钥解密。

    Java Blowfish对称加密算法实例.rar

    Java Blowfish对称加密算法实例,应用Blowfish对称密钥加密的一个类,另外还有一个使用该类的例子,研究下Java加密的基础知识,仅供参考。

    GB:T 15843.2-2017 信息技术 安全技术 实体鉴别 第2部分:采用对称加密算法的机制1

    引言本部分等同采用ISO/IEC9798-2:2008及其勘误文件ISO/IEC9798-2:2008TECHNICALCOR-RIGENDUM3,它是由ISO

    java对称/非对称加解密的例子

    java对称/非对称加解密的例子 几个自己写的,网上收集并测试过的java使用对称算法,非对称算法进行加解密的例子

    Java中的Blowfish对称密钥加密算法类和实例

    JAVA中的Blowfish加密属于对称密钥算法,如果知道密钥,则可以对加密后的数据解密,但如果如果不知道密钥,基本上是不可能的,因此,这就决定了它的先天不足,就是带来的密钥的管理问题

    RAS公钥加密私钥解密的例子(加密文件)

    RSA加密算法是一种非对称加密算法,本例使用RAS公钥加密私钥解密文件。

    Java DES 对称加密源码实例.rar

    本实例解释如何利用DES私钥加密算法加解密,对称加密的例子,本例中定义的加密算法可以是DES,DESede,Blowfish等,选择DES算法,密钥长度必须为56位,用密钥加密明文(message),生成密文(cipherText),操作模式为加密...

    java基于DES对称的和RSA非对称的加密解密

    工程根目录下mds5/src/com/目录下有两个例子: 其中DES.java是DES算法的对称加密解密 其中RSA.java是RSA算法的非对称加密解密 项目只给出了加密解密方法,并没有给出保存密钥的方法

    数据加密中的DES加密算法详解

    本文详细介绍了DES数据加密算法的原理,并给出了一个例子演示了如何使用c#中的加密包进行DES算法加密, 最后对DES进行了评价

    C#对称加解密算法工具

    一个加密解密的算法工具!是程序密码加密的好帮手!单独引用里面的一个类就可以了!也有例子!程序是基于C#为源代码写的!

    DESC RSA MD5等加密解密例子

    RAS 能用于数据加密也能用于数字签名的算法。 DES加密,RAS 非对称算法加密,DES RAS 混合加密,公钥私钥算法,数字签名等等示例。

    RSA 密钥生成器

    基于RSA非对称加密算法的一个例子,可提供各位学习和研究

    DES数据加密

    pgp算法(以及大多数基于rsa算法的加密方法)使用公钥来加密一个对称加密算法的密钥,然后再利用一个快速的对称加密算法来加密数据。这个对称算法的密钥是随机产生的,是保密的,因此,得到这个密钥的唯一方法就是使用...

    最佳安全实践:在Java和Android中使用AES进行对称加密

    AES,又称Rijndael加密算法,在2000年被NIST选中以用来替换过时的数据加密标准(DES)。AES 是一种分组密码,这意味着加密发生在固定长度的比特组上。在我们的例子中,算法定义块长度为128位。AES 支持128,192和256...

    VBCorLib加密算法库

    这是一个在vb下实现的各种加密程序,可以实现一般的文本加密和文件加密,其中有用到了1024位的rsa和dsa非对称加密算法,具体用法见例子,不明白的地方联系我,qq:44806988,email:flashlxy@qq.com

    高强度加密软件MiniPGP

    PGP原理:PGP使用非对称加密算法.加密者用公钥加密,解密者则用配套的私钥和密码解 密.因为公钥和私钥是分开的,所以理论上加密者也无法解开没有配套私钥的内容. 使用方法:首先创建密钥,然后把生成的公钥发给你的朋友...

    java前后端加密资料及说明

    该包为java使用AES-128-CBC加密算法的从前端加密到后端解密以及后端加解密的例子和用法,实测有效

Global site tag (gtag.js) - Google Analytics