Partager via


Méthode SignedData.CoSign

[La méthode CoSign est disponible pour une utilisation dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Utilisez plutôt la classe SignedCms dans l’espace de noms System.Security.Cryptography.Pkcs .]

La méthode CoSign crée une signature numérique sur du contenu précédemment signé.

Syntaxe

SignedData.CoSign( _
  [ ByVal Signer ], _
  [ ByVal EncodingType ] _
)

Paramètres

Signataire [in, facultatif]

Référence à l’objet Signer du signataire des données. L’objet Signer doit avoir accès à la clé privée du certificat utilisé pour la signature. Ce paramètre peut être NULL ; Pour plus d’informations, consultez Remarques.

EncodingType [in, facultatif]

Valeur de l’énumération CAPICOM_ENCODING_TYPE qui indique comment les données signées doivent être encodées. La valeur par défaut est CAPICOM_ENCODE_BASE64. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
CAPICOM_ENCODE_ANY
Ce type d’encodage est utilisé uniquement lorsque les données d’entrée ont un type d’encodage inconnu. Si cette valeur est utilisée pour spécifier le type d’encodage de la sortie, CAPICOM_ENCODE_BASE64 sera utilisé à la place. Introduit dans CAPICOM 2.0.
CAPICOM_ENCODE_BASE64
Les données sont enregistrées sous forme de chaîne encodée en base64.
CAPICOM_ENCODE_BINARY
Les données sont enregistrées en tant que séquence binaire pure.

 

Valeur retournée

Cette méthode retourne une chaîne qui contient les données encodées et signées.

Si cette méthode échoue, une erreur est générée. L’objet Err contient des informations supplémentaires sur l’erreur.

Notes

Important

Lorsque cette méthode est appelée à partir d’un script web, le script doit utiliser votre clé privée pour créer une signature numérique. Autoriser les sites web non approuvés à utiliser votre clé privée est un risque pour la sécurité. Une boîte de dialogue qui demande si le site web peut utiliser votre clé privée s’affiche lorsque cette méthode est appelée pour la première fois. Si vous autorisez le script à utiliser votre clé privée pour créer une signature numérique et que vous sélectionnez « Ne plus afficher cette boîte de dialogue », la boîte de dialogue n’apparaîtra plus pour les scripts de ce domaine qui utilisent votre clé privée pour créer une signature numérique. Toutefois, les scripts en dehors de ce domaine qui tentent d’utiliser votre clé privée pour créer une signature numérique entraîneront toujours l’affichage de cette boîte de dialogue. Si vous n’autorisez pas le script à utiliser votre clé privée et sélectionnez « Ne plus afficher cette boîte de dialogue », les scripts de ce domaine se verront automatiquement refuser la possibilité d’utiliser votre clé privée pour créer des signatures numériques.

 

Il n’est pas garanti que les cosignateurs se trouvent dans un ordre particulier.

Les résultats suivants s’appliquent à la valeur du paramètre Signer :

  • Si le paramètre Signer n’a pas la valeur NULL, cette méthode utilise la clé privée pointée vers le certificat associé pour chiffrer la cosignature. Si la clé privée pointée par le certificat n’est pas disponible, la méthode échoue.
  • Si le paramètre Signer a la valeur NULL et qu’il existe exactement un certificat dans le magasin MY CURRENT_USER qui a accès à une clé privée, ce certificat est utilisé pour créer la cosignature.
  • Si le paramètre Signer a la valeur NULL, que la valeur de la propriété Settings.EnablePromptForCertificateUI a la valeur true et qu’il existe plusieurs certificats dans le magasin MY CURRENT_USER avec une clé privée disponible, une boîte de dialogue s’affiche pour permettre à l’utilisateur de sélectionner le certificat utilisé.
  • Si le paramètre Signer a la valeur NULL et que la propriété Settings.EnablePromptForCertificateUI a la valeur false, la méthode échoue.
  • Si le paramètre Signer a la valeur NULL et qu’il n’existe aucun certificat dans le magasin my CURRENT_USER avec une clé privée disponible, la méthode échoue.

Spécifications

Condition requise Valeur
Composant redistribuable
CAPICOM 2.0 ou version ultérieure sur Windows Server 2003 et Windows XP
DLL
Capicom.dll

Voir aussi

Objets de chiffrement

SignedData