Kontrasygnowanie wiadomości
Aby kontrasygnować podpisaną wiadomość przy użyciu CryptMsgCountersign
- Wywołaj CryptMsgOpenToDecode, aby uzyskać dojście do podpisanej wiadomości.
- Zainicjuj strukturę CMSG_SIGNER_ENCODE_INFO dla kontrasygnatora.
- Dodaj strukturę CMSG_SIGNER_ENCODE_INFO do tablicy kontrasygnatariuszy (obecnie obsługiwany jest tylko jeden kontrasygnatariusz).
- Wywołaj CryptMsgCountersign, aby dodać kontrasygnaturę lub kontrasygnatury.
Jeśli wszystkie wywołania funkcji powiodą się, oryginalny komunikat teraz zawiera kontrasygnaturę dołączoną jako nieuwierzytelniony atrybut.
Aby dodatkowo autoryzować podpisaną wiadomość przy użyciu CryptMsgCountersignEncoded
- Wywołaj CryptMsgOpenToDecode, aby uzyskać dojście do podpisanej wiadomości.
- Wywołaj CryptMsgGetParam, aby pobrać zakodowane informacje o podpisie komunikatu.
- Zainicjuj strukturę CMSG_SIGNER_ENCODE_INFO dla kontrasygnatariusza.
- Dodaj strukturę CMSG_SIGNER_ENCODE_INFO do tablicy liczników (obecnie obsługiwany jest tylko jeden licznik).
- Wywołaj CryptMsgCountersignEncoded, aby utworzyć zakodowany atrybut kontrasygnatury.
- Wywołaj CryptMsgControl, aby dodać atrybut countersignature do oryginalnego komunikatu jako atrybut nieuwierzytelniony.
Jeśli wszystkie wywołania funkcji powiodą się, do oryginalnego komunikatu zostanie dodany atrybut countersignature.