日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

RSA简介

發布時間:2025/3/21 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RSA简介 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

什么是RSA

RSA算法是應用最廣泛的公鑰密碼算法。

1977年,RSA算法由MIT的羅納德 · 李維斯特(Ron Rivest)、阿迪 · 薩莫爾(Adi Shamir)和倫納德 · 阿德曼(Leonard Adleman)共同設計,于1978年正式發布,以他們三人的首字母命名。

在這之前所用的對稱加密方式只采用一個密鑰,知道加密密鑰就可以知道解密密鑰。但是由于雙方需要事先約定加密的規則,就導致沒有辦法安全地交換密鑰,建立安全的傳遞通道。

但是1976年出現的非對稱加密算法的思想就可以解決密鑰的交換和存放問題。它使用兩個密鑰,一個用來加密消息和驗證簽名,叫公鑰,另一個用來解密,叫私鑰,加解密雙方是不平等的。這種新的構思是由美國計算機科學家Whitfield Diffie和Martin Hellman提出的,被稱為Diffie-Hellman密鑰交換算法,RSA算法就是受到它的啟發產生的,是這種構思的具體實現方式,既可以用來加密,解密,也可以用于密鑰交換。

RSA主要使用大整數分解這個數學難題進行設計,巧妙地利用了數論的概念。給了RSA公鑰,首先想到的攻擊就是分解模數,給了的因子攻擊者可以計算得到,從而也可以計算得到解密指數,我們稱這種分解模數的方法為針對RSA的暴力攻擊。雖然分解算法已經穩步改進,但是在正確使用RSA情況下,當前的技術水平仍遠未對RSA的安全性構成威脅。如今,只有短的 RSA 密鑰才有可能被強力方式解破。

目前,RSA部署在許多商業系統中。Web服務器和瀏覽器使用它來保護Web流量,它可以用于保障電子郵件的隱私和真實性,還可以用于保護遠程登錄會話,同時它也是電子信用卡支付系統的核心。簡而言之,RSA常用于需要考慮數字數據安全性的應用中。

算法步驟

可以通過以下步驟生成一個公鑰/私鑰對:

1.隨計選擇兩個不相等的質數p,q
2.計算它們的乘積N=p*q
3.計算歐拉函數φ(N)=(p-1)(q-1),N的二進制長度作為密鑰的長度,
4.隨機選擇一個加密密鑰e,這里1<e<φ(N),gcd(e,φ(N))=1
5.根據以下公式求解得到解密密鑰d
ed=1 mod φ(N),0≤d≤N
6.發布加密密鑰:(e,N)
7.保密解密密鑰:(d,N)

實例

在實際應用中e和N都是大整數,為了方便理解,下面選取非常小的整數來實現一次密鑰生成過程。

1.隨機選擇兩個質數

p=17 ,q=11

2.計算它們的乘積

N=p*q=17×11=187

3.計算歐拉函數

φ(N)=(p-1)(q-1)=16×10=160

4.選擇e,e是與φ(N)互質的整數,且1<e<φ(N)

e=7

5.決定d

d*e=1 mod φ(N)且d<φ(N)
23×7=160+1
d=23

6.得到公鑰(7,187)

7.得到私鑰(23,187)

用途

生成了公鑰和私鑰,就可以用來加密和解密了。

1.發送方加密消息M
拿到對方的公鑰e和N后,計算C = M^e mod N,這里0≤M<N,將C作為密文發送給接收方;
例如M=88,C=88^7 mod 187=11

2.接收方解密密文C
拿出自己的私鑰d和N,計算M=C^d mod N, 得到原消息M=11^23 mod 187=88

總結

以上是生活随笔為你收集整理的RSA简介的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。