官术网_书友最值得收藏!

2.3.2 RSA算法

Rivest-Shamir-Adleman(RSA)算法是最流行和最安全的公鑰加密方法之一。該算法利用了這樣一個事實:根據數論,尋求兩個大素數相對比較簡單,但是將它們的乘積進行因式分解卻極其困難,因此可以將乘積公開,作為加密密鑰。加密密鑰是公開的,解密密鑰由用戶保密。

假設使用加密密鑰key(en),其實現算法如下:

將消息表示為0到(n-1)之間的整數。大型消息可以分解為多個塊。然后,每個塊將由相同范圍內的整數表示。

取其e次方再模n,得到密文消息C;

要解密密文消息C,取其d次方再模n

加密密鑰(en)是公開的。解密密鑰(dn)由用戶保密。

如何確定edn的適當值?

選擇兩個非常大(100位以上)的素數,將其表示為pq

n設為等于p * q

選擇任何大整數d,使得GCD(d,((p-1)*(q-1)))= 1。

e使得e * d = 1(mod((p-1)*(q-1)))。

Rivest、Shamir和Adleman為每個所需的操作提供了有效的算法。

主站蜘蛛池模板: 祁阳县| 南部县| 永仁县| 广昌县| 鲁山县| 隆回县| 鹰潭市| 乐平市| 富阳市| 运城市| 安平县| 西宁市| 全州县| 赣榆县| 浮山县| 申扎县| 铅山县| 彩票| 博乐市| 太康县| 杨浦区| 乐平市| 金塔县| 东平县| 昌吉市| 北宁市| 永善县| 河西区| 德保县| 阿鲁科尔沁旗| 武冈市| 松原市| 蕉岭县| 奇台县| 娄烦县| 靖州| 南平市| 深圳市| 巩留县| 梁平县| 灌阳县|