CSharp-code.rar

  • 蓝皮鼠
    了解作者
  • C#
    开发工具
  • 1.8MB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 52
    下载次数
  • 2012-06-19 16:31
    上传日期
代码分7章 第1章 进程、线程与网络协议 第2章 TCP应用编程 第3章 UDP应用编程 第4章 P2P应用编程 第5章 SMTP与POP3应用编程 第6章 网络数据加密与解密 第7章 三维设计与多媒体编程
CSharp-code.rar
内容介绍
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; //添加的命名空间引用 using System.IO; using System.Security.Cryptography; namespace RsaEncryptExample { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void buttonOK_Click(object sender, EventArgs e) { //使用指定的密钥容器存储公钥/私钥对 CspParameters cp = new CspParameters(); MessageBox.Show(cp.KeyContainerName); cp.KeyContainerName = "MyKeyContainer"; //指定密钥容器中的不对称密钥用于交换密钥而不是签名密钥 cp.KeyNumber = (int)KeyNumber.Exchange; // instantiates the rsa instance accessing the key container MyKeyContainerName RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(cp); // add the below line to delete the key entry in MyKeyContainerName rsa.PersistKeyInCsp = false; //writes out the current key pair used in the rsa instance MessageBox.Show("Key is : \n" + rsa.ToXmlString(true)); //Create byte arrays to hold original, encrypted, and decrypted data. byte[] dataToEncrypt = Encoding.UTF8.GetBytes(textBoxInput.Text); byte[] encryptedData; byte[] decryptedData; try { //Pass the data to ENCRYPT, the public key information //(using RSACryptoServiceProvider.ExportParameters(false), //and a boolean flag specifying no OAEP padding. encryptedData = RSAEncrypt(dataToEncrypt, rsa.ExportParameters(false), false); //Pass the data to DECRYPT, the private key information //(using RSACryptoServiceProvider.ExportParameters(true), //and a boolean flag specifying no OAEP padding. decryptedData = RSADecrypt(encryptedData, rsa.ExportParameters(true), false); textBoxDecrypt.Text = Encoding.UTF8.GetString(decryptedData); //Display the decrypted plaintext to the console. //MessageBox.Show(string.Format("Decrypted plaintext: {0}", Encoding.UTF8.GetString(decryptedData))); } catch (ArgumentNullException) { //Catch this exception in case the encryption did //not succeed. MessageBox.Show("Encryption failed."); } } private byte[] RSAEncrypt(byte[] dataToEncrypt, RSAParameters rsaKeyInfo, bool DoOAEPPadding) { try { //Create a new instance of RSACryptoServiceProvider. RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(); //Import the RSA Key information. This only needs //toinclude the public key information. rsa.ImportParameters(rsaKeyInfo); //Encrypt the passed byte array and specify OAEP padding. //OAEP padding is only available on Microsoft Windows XP or //later. return rsa.Encrypt(dataToEncrypt, DoOAEPPadding); } //Catch and display a CryptographicException //to the console. catch (CryptographicException e) { MessageBox.Show(e.Message); return null; } } private byte[] RSADecrypt(byte[] dataToDecrypt, RSAParameters rsaKeyInfo, bool DoOAEPPadding) { try { //Create a new instance of RSACryptoServiceProvider. RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(); //Import the RSA Key information. This needs //to include the private key information. rsa.ImportParameters(rsaKeyInfo); //Decrypt the passed byte array and specify OAEP padding. //OAEP padding is only available on Microsoft Windows XP or //later. return rsa.Decrypt(dataToDecrypt, DoOAEPPadding); } //Catch and display a CryptographicException //to the console. catch (CryptographicException e) { MessageBox.Show(e.ToString()); return null; } } } }
评论
    相关推荐
    • UDP-TCP-SMTP.zip
      UDP TCP SMTP 实现连接,建立服务端和客户端
    • TCP/IP详解
      详细解释了TCP/IP协议
    • tcp/ip详解
      tcpip详解 tcpip详解 tcpip详解 tcpip详解 tcpip详解 tcpip详解
    • TCP/IP技术大全
      TCP/IP协议并不完全符合OSI的七层参考模型。OSI(Open System Interconnect)是传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的...
    • TCP-IP技术大全
      开放式通信模型简介 TCP/IP和Internet TCP/IP概述 IP网络中的名字和地址
    • TCP-IP技术大全
      TCP/IP从基础学习到高级。很好的一本电子书。
    • TCP/IP详解
      最近在学网络,搜集到了三本关于tcp的书,总共三大本。我把它们合到一起了,做了个目录(三本书好像合称TCP/IP详解,不知道对不对,三本书知识比较连贯,总共1000多页),分享给大家一起学习,互相交流。
    • TCP /IP 详解
      TCP/IP 协议的深刻讲解 PDF文档结构
    • SMTP邮件传输TCP/IP
      SMTP邮件传输 TCP/IP recv(),send()
    • tcp/ip详解
      中文版本,方便初学者学习、TCP/ip详解