1
comment puis-je convertir la clé exportée par Microsoft dans privatekeyblob vers la structure RSA, qui peut être utilisée avec openSSL?PRIVATEKEYBLOB à RSA struct de OpenSSL
comment puis-je convertir la clé exportée par Microsoft dans privatekeyblob vers la structure RSA, qui peut être utilisée avec openSSL?PRIVATEKEYBLOB à RSA struct de OpenSSL
Lors de l'examen des documents, il semble que les champs se superposent de manière intuitive, un à un. Avez-vous essayé d'implémenter le code de mappage en utilisant cette information? Je voudrais l'essayer si ce n'est pas le cas.
Voici le Microsoft blob (lié à RSAPUBKEY):
typedef struct _RSAPUBKEY {
DWORD magic;
DWORD bitlen;
DWORD pubexp;
} RSAPUBKEY;
BLOBHEADER blobheader;
RSAPUBKEY rsapubkey;
BYTE modulus[rsapubkey.bitlen/8];
BYTE prime1[rsapubkey.bitlen/16];
BYTE prime2[rsapubkey.bitlen/16];
BYTE exponent1[rsapubkey.bitlen/16];
BYTE exponent2[rsapubkey.bitlen/16];
BYTE coefficient[rsapubkey.bitlen/16];
BYTE privateExponent[rsapubkey.bitlen/8];
Voici le RSA struct:
struct
{
BIGNUM *n; // public modulus
BIGNUM *e; // public exponent
BIGNUM *d; // private exponent
BIGNUM *p; // secret prime factor
BIGNUM *q; // secret prime factor
BIGNUM *dmp1; // d mod (p-1)
BIGNUM *dmq1; // d mod (q-1)
BIGNUM *iqmp; // q^-1 mod p
// ...
};
RSA
oui, je l'ai essayé, mais n'a pas trouvé BIGNUM * e dans ce struct microsoft, i essayé de l'obtenir de RSAPubkey, mais n'a pas réussi. – Rampage
N'est-ce pas pubexp dans le RSAPUBKEY? –
hmm peut-être, comment puis-je vérifier que le résultat créé est la bonne clé? – Rampage