91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

RSA如何實現C# 加密

發布時間:2021-11-24 09:20:33 來源:億速云 閱讀:274 作者:柒染 欄目:編程語言

RSA如何實現C# 加密,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

RSA實現C# 加密首先我們來了解下什么是RSA ,它屬于不對稱加密,其原理就是使用一個公鑰一個私鑰,公鑰可以公開用以加密,私鑰嚴格保密用于解密,那么這樣大家知道了RSA 適合于數據量不大的加密,比如加密對稱加密的密鑰。

RSA實現C# 加密

RSACryptoServiceProvider 的名稱空間是:

System.Security.  CryptographyRSACryptoServiceProvider   rsaSend = new RSACryptoServiceProvider();   string plaintext = "明文"; //明文   byte[] ciphertext = rsaSend.Encrypt(  System.Text.Encoding.UTF8.GetBytes(plaintext), false);   //加密后   lbl.Text = Convert.ToBase64String(ciphertext);   //顯示加密后的,為了顯示不可見字符,使用的是 Base64 編碼。

使用 RSACryptoServiceProvider() 創建 RSACryptoServiceProvider 實例時,自動產生密鑰。

RSA 實際應用中是:接收方產生公鑰和私鑰,發送方用其公鑰加密,再把加密后的內容發送給接收方。

CspParameters 的名稱空間是:

System.Security.CryptographyCspParameters cpSend =   new CspParameters(); //Csp = Cryptography Service Provider  CspParameters cpReceive = new CspParameters();  cpSend.KeyContainerName = "SendTestContainer";  cpReceive.KeyContainerName =   "ReceiveTestContainer";   RSACryptoServiceProvider rsaSend =   new RSACryptoServiceProvider(cpSend); ;  RSACryptoServiceProvider rsaReceive =   new RSACryptoServiceProvider(cpReceive);   rsaSend.FromXmlString(rsaReceive.ToXmlString(false));   //發送方使用接收方給它的公鑰進行加密   string plaintext =   "前幾天我碰到一個朋友,約我跟馬賊打架,  我立馬答應了他,因為我覺得這件事好無聊。";  byte[] ciphertext =   rsaSend.Encrypt(System.Text.Encoding.UTF8.GetBytes(  plaintext), false); //加密后  byte[] decryption =   rsaReceive.Decrypt(ciphertext, false); //解密后   lbl.Width = 760;  lbl.Text = "";  lbl.Text +=   Convert.ToBase64String(ciphertext) + "﹤br /﹥";   //顯示加密后的  lbl.Text +=   System.Text.Encoding.UTF8.GetString(decryption) + "﹤br /﹥";   //顯示解密后的  lbl.Text +=   Server.HtmlEncode(rsaSend.ToXmlString(false)) + "﹤br /﹥";   //顯示發送方公鑰  lbl.Text +=   Server.HtmlEncode(rsaReceive.ToXmlString(true)) + "﹤br /﹥";   //顯示接收方公鑰和私鑰  lbl.Text +=   Server.HtmlEncode(rsaReceive.ToXmlString(false)) + "﹤br /﹥";    //顯示接收方公鑰   rsaSend.PersistKeyInCsp = true; //密鑰要保存起來  //rsaSend.Clear();  rsaReceive.PersistKeyInCsp = true;  //rsaReceive.Clear();

在上面的代碼中,我們使用 CspParameters 將密鑰保存起來,ToXmlString 和 FromXmlString 將接收方的公鑰告訴給發送方。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節
推薦閱讀:
  1. RSA算法
  2. RSA加密

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

rsa
AI

冀州市| 延庆县| 额尔古纳市| 阿拉善左旗| 新河县| 二连浩特市| 盐亭县| 重庆市| 密云县| 哈巴河县| 澄城县| 平陆县| 大化| 秭归县| 延庆县| 平塘县| 南昌市| 波密县| 宾阳县| 沛县| 阳曲县| 乃东县| 阜阳市| 武邑县| 谷城县| 静宁县| 虹口区| 洞口县| 邢台市| 广平县| 五河县| 松江区| 桦甸市| 龙游县| 公主岭市| 广饶县| 张家港市| 大宁县| 韩城市| 深圳市| 和田市|