Az adatok aláírásának eljárása
A CryptSignMessageegyetlen függvény végzi el az összes feladatot, amely a Aláírt Üzenet Létrehozásarészben szerepel. A struktúrák és egyéb adatok inicializálása azonban továbbra is szükséges. Az alábbi ábra a struktúrákra vagy tömbökre mutató függvényparaméterek és az inicializált adatok közötti kapcsolatot mutatja be. Az ábra csak azokat a függvényparamétereket és struktúratagokat jeleníti meg, amelyek más struktúrákból vagy függvényekből származnak. A többi paraméter egyszerű inicializálás.
hívásához
Az adatok aláírása a CryptSignMessage használatával
- Szerezzen be egy mutatót az aláírandó adatokhoz.
- Állítsa be a mutatót az adatokhoz az "aláírandó adatok" tömb nulla indexére.
- Hivatkozás megszerzése a kriptográfiai szolgáltatóhoz.
- Nyisson meg egy tanúsítványtárolót, amely tartalmazza az aláíró tanúsítványát.
- Kérje le az aláíró tanúsítványának címét.
- Rendelje hozzá a tanúsítvány címét a MsgCert tömb nulla indexéhez.
- Az üzenethez tartozó, mellékelendő egyéb tanúsítványok címeit rendelje hozzá az MsgCert tömbhöz.
- Inicializálja a CRYPT_ALGORITHM_IDENTIFIER struktúrát, inicializálja a pszObjId tagot a kívánt kivonatoló algoritmusba, és szükség szerint a többi tagot.
- Inicializálja a CRYPT_SIGN_MESSAGE_PARA struktúrát az alábbi módon: állítsa a pSigningCert tagot az aláíró tanúsítványának címére, az MsgCert tömbtagot az aláíró és más tanúsítványok címére, a HashAlgorithm tagot az CRYPT_ALGORITHM_IDENTIFIER struktúra címére, és szükség szerint a többi tagot is.
- Hívja meg a CryptSignMessage függvényt, átadva a pSignPara paraméter CRYPT_SIGN_MESSAGE_PARA szerkezetét, az rgpbToBeSigned paraméter "aláírandó adatok" tömbjének címét, a pbSignedBlob kimeneti paraméter címét, valamint a többi paraméter értékeit.