加密演算法 DSA演算法

2021-05-23 07:39:44 字數 897 閱讀 4477

4、dsa演算法

digital signature algorithm (dsa)是schnorr和elgamal簽名演算法的變種,被美國nist作為dss(digitalsignature standard)。演算法中應用了下述引數:

p:l bits長的素數。l是64的倍數,範圍是512到1024;

q:p - 1的160bits的素因子;

g:g = h^((p-1)/q) mod p,h滿足h < p - 1, h^((p-1)/q) mod p > 1;

x:x < q,x為私鑰 ;

y:y = g^x mod p ,( p, q, g, y )為公鑰;

h( x ):one-way hash函式。dss中選用sha( secure hash algorithm )。

p, q, g可由一組使用者共享,但在實際應用中,使用公共模數可能會帶來一定的威脅。簽名及驗證協議如下:

1. p產生隨機數k,k < q;

2. p計算 r = ( g^k mod p ) mod q

s = ( k^(-1) (h(m) + xr)) mod q

簽名結果是( m, r, s )。

3. 驗證時計算 w = s^(-1)mod q

u1 = ( h( m ) * w ) mod q

u2 = ( r * w ) mod q

v = (( g^u1 * y^u2 ) mod p ) mod q

若v = r,則認為簽名有效。

dsa是基於整數有限域離散對數難題的,其安全性與rsa相比差不多。dsa的乙個重要特點是兩個素數公開,這

樣,當使用別人的p和q時,即使不知道私鑰,你也能確認它們是否是隨機產生的,還是作了手腳。rsa演算法卻作不到。

加密演算法 DSA演算法

4 dsa演算法 digital signature algorithm dsa 是schnorr和elgamal簽名演算法的變種,被美國nist作為dss digitalsignature standard 演算法中應用了下述引數 p l bits長的素數。l是64的倍數,範圍是512到1024 ...

加密解密 DSA演算法

digital signature algorithm dsa 是schnorr和elgamal簽名演算法的變種,被美國nist作為dss digitalsignature standard 演算法中應用了下述引數 p l bits長的素數。l是64的倍數,範圍是512到1024 q p 1的160...

對稱加密演算法 DES加密演算法

一 對稱加密演算法 對稱加密也稱為常規加密 私鑰或單鑰加密。乙個對稱加密由5部分組成 明文 plaintext 這是原始資訊或資料,作為演算法的輸入。加密演算法 encryption algorithm 加密演算法對明文進行各種替換和轉換。金鑰 secret key 金鑰也是演算法的輸入。演算法進行...