Interfaccia ISignerCertificate (certenroll.h)
L'interfaccia ISignerCertificate rappresenta un certificato di firma che consente di firmare una richiesta di certificato. Quando si inizializza l'interfaccia, il controllo registrazione certificati recupera il certificato di firma dall'archivio personale e lo usa per trovare una chiave privata associata. È possibile usare la chiave privata per firmare una richiesta PKCS #7 o CMC, ma non una richiesta PKCS #10. Le richieste PKCS #10 devono essere firmate usando la chiave privata associata alla chiave pubblica inclusa nella richiesta. I certificati autofirmato possono essere firmati usando la chiave privata associata alla richiesta o alla chiave privata associata al certificato di firma. Questa operazione viene riepilogata nella tabella seguente.
Tipo di richiesta (interfaccia) | Certificati di firma |
---|---|
PKCS #7(IX509CertificateRequestPkcs7) | 1 |
PKCS #10(IX509CertificateRequestPkcs10) | 0 |
CMC(IX509CertificateRequestCmc) | 0 o più |
Autofirmato(IX509CertificateRequestCertificate) | 0 o 1 |
Quando si firma una richiesta CMC, i dati da firmare sono costituiti da un oggetto CmcData codificato Distinguished Encoding Rules (DER) con codifica CMS in un oggetto CMS SignedData. Il campo encryptedDigest dell'oggetto SignerInfo contiene una firma e più oggetti SignerInfo possono essere associati alla richiesta.
---------------------------------------------------------------------
-- CMC request data
---------------------------------------------------------------------
CmcData ::= SEQUENCE
{
controlSequence SEQUENCE OF TaggedAttribute,
reqSequence SEQUENCE OF TaggedRequest,
cmsSequence SEQUENCE OF TaggedContentInfo,
otherMsgSequence SEQUENCE OF TaggedOtherMs
}
---------------------------------------------------------------------
-- SignedData object that wraps the CMC request
---------------------------------------------------------------------
SignedData ::= SEQUENCE
{
version INTEGER,
digestAlgorithms DigestAlgorithmIdentifiers,
contentInfo ContentInfo,
certificates [0] IMPLICIT Certificates OPTIONAL,
crls [1] IMPLICIT CertificateRevocationLists OPTIONAL,
signerInfos SignerInfos
}
DigestAlgorithmIdentifiers ::= SET OF DigestAlgorithmIdentifier
DigestAlgorithmIdentifiersNC ::= SET OF DigestAlgorithmIdentifierNC
SignerInfos ::= SET OF SignerInfo
SignerInfo ::= SEQUENCE
{
version INTEGER,
sid CertIdentifier,
digestAlgorithm DigestAlgorithmIdentifier,
authenticatedAttributes [0] IMPLICIT Attributes OPTIONAL,
digestEncryptionAlgorithm DigestEncryptionAlgId,
encryptedDigest EncryptedDigest,
unauthenticatedAttributes [1] IMPLICIT Attributes OPTIONAL
}
Ogni oggetto ISignerCertificate è associato a un oggetto IX509SignatureInformation che identifica gli algoritmi hashing e chiave pubblica usati. Questo oggetto viene creato e inizializzato quando l'oggetto ISignerCertificate viene inizializzato.
Ereditarietà
L'interfaccia ISignerCertificate eredita dall'interfaccia IDispatch . ISignerCertificate include anche questi tipi di membri:
Metodi
L'interfaccia ISignerCertificate include questi metodi.
ISignerCertificate::get_Certificate Recupera una matrice di byte codificata Distinguished Encoding Rules (DER) che contiene il certificato. |
ISignerCertificate::get_ParentWindow Specifica o recupera l'ID della finestra usata per visualizzare le informazioni sul certificato di firma. (Get) |
ISignerCertificate::get_PrivateKey Recupera la chiave privata associata all'oggetto ISignerCertificate. |
ISignerCertificate::get_SignatureInformation Recupera un oggetto IX509SignatureInformation che contiene informazioni sulla firma del certificato. |
ISignerCertificate::get_Silent Specifica o recupera un valore booleano che indica se l'utente riceve una notifica quando la chiave privata viene usata per firmare una richiesta di certificato. (Get) |
ISignerCertificate::get_UIContextMessage Specifica o recupera una stringa contenente testo dell'interfaccia utente associata al certificato di firma. (Get) |
ISignerCertificate::Initialize Inizializza l'oggetto da un certificato di firma. |
ISignerCertificate::p ut_ParentWindow Specifica o recupera l'ID della finestra usata per visualizzare le informazioni sul certificato di firma. (Put) |
ISignerCertificate::p ut_Pin Specifica un numero di identificazione personale (PIN) usato per autenticare un utente di smart card. |
ISignerCertificate::p ut_Silent Specifica o recupera un valore booleano che indica se l'utente riceve una notifica quando la chiave privata viene usata per firmare una richiesta di certificato. (Put) |
ISignerCertificate::p ut_UIContextMessage Specifica o recupera una stringa contenente testo dell'interfaccia utente associata al certificato di firma. (Put) |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | certenroll.h |