2012-05-09 74 views
1

什麼是參數n, e, d, p, q代表下面的openssl的RSA結構?Openssl:RSA參數代表什麼?

struct rsa_st 
    { 
    /* The first parameter is used to pickup errors where 
    * this is passed instead of aEVP_PKEY, it is set to 0 */ 
    int pad; 
    long version; 
    const RSA_METHOD *meth; 
    /* functional reference if 'meth' is ENGINE-provided */ 
    ENGINE *engine; 
    BIGNUM *n; 
    BIGNUM *e; 
    BIGNUM *d; 
    BIGNUM *p; 
    BIGNUM *q; 
    BIGNUM *dmp1; 
    BIGNUM *dmq1; 
    BIGNUM *iqmp; 
    /* be careful using this if the RSA structure is shared */ 
    CRYPTO_EX_DATA ex_data; 
    int references; 
    int flags; 

    /* Used to cache montgomery values */ 
    BN_MONT_CTX *_method_mod_n; 
    BN_MONT_CTX *_method_mod_p; 
    BN_MONT_CTX *_method_mod_q; 

    /* all BIGNUM values are actually in the following data, if it is not 
    * NULL */ 
    char *bignum_data; 
    BN_BLINDING *blinding; 
    BN_BLINDING *mt_blinding; 
    }; 
+1

http://en.wikipedia.org/wiki/RSA_(algorithm)#Operation – MByD

回答

3

,你可以從OpenSSL的官方網頁看到,他們的人數在計算密文的具體作用,OpenSSL official documentation

我建議你採取甘德它, 再見!

Linuxatico

+0

我忘了還有這個:[RFC 3447](http://tools.ietf.org/html/rfc3447) – linuxatico

4

這些是RSA算法的參數:

p和q是兩個大的素數,且n爲p×q個計算。 e是公開指數,d是e mod(p-1)(q-1)的乘法逆。

私鑰是對(p,q)。公鑰是雙(n,e)

您可以瞭解更多關於它here

0

在Linux中,man 3 rsa會給你一個詳細的解釋。