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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

RSA算法加密流程

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

RSA加密原理

大整數因數分解困難問題

RSA算法就是利用大整數分解困難問題而設計 限門單向函數實現公鑰密碼算法

預備知識

質數

互質是公約數只有1的兩個整數,叫做互質整數。

質數是指在大于1的自然數中,除了1和它本身以外不再有其他因數的自然數

歐拉函數

  • 就是對于一個正整數n,小于n且和n互質的正整數個數,記作φ(n)。
  • 如果n=1,則 φ(1) = 1 。因為1與任何數(包括自身)都構成互質關系。
  • 如果n是質數,則 φ(n)=n-1 。因為質數與小于它的每一個數,都構成互質關系。比如5與1、2、3、4都構成互質關系。
  • 如果n=p*q,則φ(n)=φ(p)*φ(q)。更進一步如果p與q都為素數,則φ(n)=(p-1)*(q-1)
  • 模反元素

    如果兩個正整數e和φ(n)互質那么一定可以找到整數d,使得 ed-1 被φ(n)整除,或者說ed被φ(n)除的余數是1。這時,d就叫做e的“模反元素”。

    edmodφ(n)=1

    正式的算法加密步驟

    ① 選兩個安全的大素數p和q。

    ② 計算n=p×q,φ(n)=(p-1)(q-1),其中φ(n)是n的歐拉函數值。

    ③ 選一整數e,滿足1<e<φ(n),且gcd(φ(n),e)=1。

    ④ 計算d,滿足d·e≡1 mod φ(n),即d是e在模φ(n)下的乘法逆元,因e與φ(n)互素,由模運算可知,它的乘法逆元一定存在。(一般公鑰取值為65537(216+1))

    ⑤ 以{e,n}為公開密鑰(PK),{d,n}為秘密密鑰(SK)。

    ?

    注意由e計算d需要使用p和q,但是密碼破譯者并不知道p和q,因此不可能通過和生成密鑰對時相同的計算方法來求出d。

    對于RSA來說,有一點很重要,那就是質數p和q不能被密碼破譯者知道。把p和q交給密碼破譯者與把私鑰交給密碼破譯者是等價的。

    總結

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

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