自己寫動手寫非對稱加密演算法

2021-09-27 07:35:01 字數 796 閱讀 3332

第一部分:

1:7 除以 3 = 2 餘 1,

2:令a=7,p=3,mod為取餘符號,顯然 a mod p = 1,

3:設a為任意整數,則a mod p 可能取到的值 為1,2,3,4...p-1.

4:如果整數b和p互質,任意取a1,a2為[1,p-1]中2個不同的數,

那麼(a1*b)mod p -(a2*b)mod p = (a1-a2)* b mod p

因為a1-a2所以a*b mod p 可能取到的值也為1,2,3,4...p-1,且任意不同a屬於[1,p-1]乘以b

mod p的值必不同。

5.這樣我們可以用a*b mod p 做一次加密,a為明文,b為加密金鑰,mod p為加解密的演算法。

第二部分:

1.因為a小於p,所以a = a mod p = a mod p + 0 = (a + n*a*p) mod p = a(1 + n*p) mod p

2.令 k = 1 + n*p = b * d,那麼a = a*(b*d)mod p = ((a*b)mod p * d) mod p,顯然

b為加密金鑰,d就解密金鑰。

第三部分:

1.對1234按位加密,演算法為mod 5,加密金鑰為2,解密金鑰為3 ( 2*3 = 5+1)。

2.加密:1*2mod5=2,2*2mod5=4,3*2mod5=1,4*2mod5=3,加密密文為2413.

3.解密:2*3mod5=1,4*3mod5=2,1*3mod5=3,3*3mod5=4,解密明文為1234.

2.設a mod p = a * (?) mod p,

對稱加密演算法 非對稱加密演算法

對稱加密演算法 對稱加密演算法是應用較早的加密演算法,技術成熟。在對稱加密演算法中,資料發信方將明文 原始資料 和加密金鑰一起經過特殊加密演算法處理後,使其變成複雜的加密密文傳送出去。收信方收到密文後,若想解讀原文,則需要使用加密用過的金鑰及相同演算法的逆演算法對密文進行解密,才能使其恢復成可讀明文...

非對稱加密演算法

非對稱加密演算法非 對稱加密演算法 是一種金鑰的保密方法。非對稱加密演算法需要兩個金鑰 公開金鑰 publickey 和私有金鑰 privatekey 公開金鑰與私有金鑰是一對,如果用公開金鑰對資料進行加密,只有用對應的私有金鑰才能解密 如果用私有金鑰對資料進行加密,那麼只有用對應的公開金鑰才能解密...

非對稱加密演算法

使用非對稱加密加密演算法生成一對公鑰和私鑰,可以使用公鑰加密明文然後私鑰解密,也可以使用私鑰加密然後公鑰進行解密.核心是公鑰加密私鑰解密.甲方把公鑰交給要通訊的乙方,乙方使用甲方的公鑰進行加密資訊,然後把加密結果傳送給甲方,甲方收到加密資訊後使用私鑰進行解密.這樣就算第三者知道了公鑰和加密資訊也無法...