Windows PowerShell command on Get-command PKCS7_sign
MyWebUniversity

Manual Pages for UNIX Operating System command usage for man PKCS7_sign

OpenSSL PKCS7_sign(3openssl)

NNNNAAAAMMMMEEEE

PKCS7_sign - create a PKCS#7 signedData structure

SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS

#include

PKCS7 *PKCS7_sign(X509 *signcert, EVP_PKEY *pkey, STACK_OF(X509) *certs, BIO *data, int flags);

DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN

PKCS7_sign() creates and returns a PKCS#7 signedData

structure. ssssiiiiggggnnnncccceeeerrrrtttt is the certificate to sign with, ppppkkkkeeeeyyyy is the corresponsding private key. cccceeeerrrrttttssss is an optional

additional set of certificates to include in the PKCS#7

structure (for example any intermediate CAs in the chain). The data to be signed is read from BIO ddddaaaattttaaaa. ffffllllaaaaggggssss is an optional set of flags. NNNNOOOOTTTTEEEESSSS Any of the following flags (ored together) can be passed in the ffffllllaaaaggggssss parameter.

Many S/MIME clients expect the signed content to include

valid MIME headers. If the PPPPKKKKCCCCSSSS7777_TTTTEEEEXXXXTTTT flag is set MIME

headers for type tttteeeexxxxtttt////ppppllllaaaaiiiinnnn are prepended to the data.

If PPPPKKKKCCCCSSSS7777_NNNNOOOOCCCCEEEERRRRTTTTSSSS is set the signer's certificate will not be

included in the PKCS7 structure, the signer's certificate must still be supplied in the ssssiiiiggggnnnncccceeeerrrrtttt parameter though. This can reduce the size of the signature if the signers certificate can be obtained by other means: for example a previously signed message. The data being signed is included in the PKCS7 structure,

unless PPPPKKKKCCCCSSSS7777_DDDDEEEETTTTAAAACCCCHHHHEEEEDDDD is set in which case it is omitted.

This is used for PKCS7 detached signatures which are used in

S/MIME plaintext signed messages for example. Normally the supplied content is translated into MIME

canonical format (as required by the S/MIME specifications)

if PPPPKKKKCCCCSSSS7777_BBBBIIIINNNNAAAARRRRYYYY is set no translation occurs. This option

should be used if the supplied data is in binary format otherwise the translation will corrupt it.

The signedData structure includes several PKCS#7

autenticatedAttributes including the signing time, the

PKCS#7 content type and the supported list of ciphers in an

SMIMECapabilities attribute. If PPPPKKKKCCCCSSSS7777_NNNNOOOOAAAATTTTTTTTRRRR is set then no

authenticatedAttributes will be used. If PPPPKKKKCCCCSSSS7777_NNNNOOOOSSSSMMMMIIIIMMMMEEEECCCCAAAAPPPP is

set then just the SMIMECapabilities are omitted.

27/Mar/2010 Last change: 0.9.8o 1

OpenSSL PKCS7_sign(3openssl)

If present the SMIMECapabilities attribute indicates support for the following algorithms: triple DES, 128 bit RC2, 64 bit RC2, DES and 40 bit RC2. If any of these algorithms is disabled then it will not be included.

If the flags PPPPKKKKCCCCSSSS7777_PPPPAAAARRRRTTTTSSSSIIIIGGGGNNNN is set then the returned PPPPKKKKCCCCSSSS7777

structure is just initialized ready to perform the signing operation. The signing is however nnnnooootttt performed and the data to be signed is not read from the ddddaaaattttaaaa parameter. Signing is deferred until after the data has been written. In this way data can be signed in a single pass. Currently the flag

PPPPKKKKCCCCSSSS7777_DDDDEEEETTTTAAAACCCCHHHHEEEEDDDD mmmmuuuusssstttt also be set.

NNNNOOOOTTTTEEEESSSS

Currently the flag PPPPKKKKCCCCSSSS7777_PPPPAAAARRRRTTTTSSSSIIIIGGGGNNNN is only supported for

detached data. If this flag is set the returned PPPPKKKKCCCCSSSS7777 structure is nnnnooootttt complete and outputting its contents via a function that does not properly finalize the PPPPKKKKCCCCSSSS7777 structure will give unpredictable results.

At present only the SMIME_write_PKCS7() function properly

finalizes the structure. BBBBUUUUGGGGSSSS

PKCS7_sign() is somewhat limited. It does not support

multiple signers, some advanced attributes such as counter signatures are not supported. The SHA1 digest algorithm is currently always used. When the signed data is not detached it will be stored in memory within the PPPPKKKKCCCCSSSS7777 structure. This effectively limits the size of messages which can be signed due to memory restraints. There should be a way to sign data without having to hold it all in memory, this would however require fairly major revisions of the OpenSSL ASN1 code. RRRREEEETTTTUUUURRRRNNNN VVVVAAAALLLLUUUUEEEESSSS

PKCS7_sign() returns either a valid PKCS7 structure or NULL

if an error occurred. The error can be obtained from

ERR_get_error(3).

SSSSEEEEEEEE AAAALLLLSSSSOOOO

ERR_get_error(3), PKCS7_verify(3)

HHHHIIIISSSSTTTTOOOORRRRYYYY

PKCS7_sign() was added to OpenSSL 0.9.5

The PPPPKKKKCCCCSSSS7777_PPPPAAAARRRRTTTTSSSSIIIIGGGGNNNN flag was added in OpenSSL 0.9.8

27/Mar/2010 Last change: 0.9.8o 2

OpenSSL PKCS7_sign(3openssl)

27/Mar/2010 Last change: 0.9.8o 3




Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 MyWebUniversity.com ™