Silverlight4中利用System.Numerics.BigInteger實現RSA演算法

來源:互聯網
上載者:User

    在Silverlight4 Beta版本發布的時候,Silverlight4 Beta的SDK中還不包含System.Numerics.dll庫。要實現RSA演算法,還得利用其他BigInteger類。可參見我上一篇文章《Silverlight中非對稱式加密及數位簽章RSA演算法的實現》。
    現在Silverlight4正式發布了。在Silverlight4正式版的SDK中包含了System.Numerics.dll庫。並且該庫中實現了BigInteger類。因此,現在要在Silverlight下實現RSA演算法,可以直接利用微軟提供的BigInteger類了。

    微軟提供的BigInteger類,經測試效能比Chew Keong TAN的BigInteger類有幾十倍的提升。

以下是利用Chew Keong TAN的BigInteger類實現的RSA演算法的測試結果:

1024b資料 1KB資料 10KB資料
私密金鑰加密 00:00:01.4250000 00:00:04.2260000 00:00:35.6540000
公開金鑰加密 00:00:00.0360000 00:00:00.1070000 00:00:00.9030000

 

以下是利用System.Numerics.BigInteger類實現的RSA演算法的測試結果:

1024b資料 1KB資料 10KB資料
私密金鑰加密 00:00:00.1130000 00:00:00.3730000 00:00:02.8640000
公開金鑰加密 00:00:00.0010000 00:00:00.0040000 00:00:00.0320000

 

說明:測試使用1024位長的密鑰,e由.NET Framework中預設選擇的是65537。

 

本文基於署名 2.5 中國大陸許可協議發布,歡迎轉載,演繹或用於商業目的,但是必須保留本文的署名KevinShan(包含連結)。如您有任何疑問或者授權方面的協商,請給我留言。

  

利用System.Numerics.BigInteger類實現的RSA演算法原始碼下載:

RSAManaged.zip

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.