CryptoSys PKI Pro Manual

Cms.MakeEnvDataFromBytes Method

Create a CMS enveloped-data object from data in a byte array.

Syntax

[C#]
public static int MakeEnvDataFromBytes(
   string outputFile,
   byte[] inputData,
   string certList,
   CipherAlgorithm cipherAlg = ,
   Cms.KeyEncrAlgorithm keyEncrAlg = Cms.KeyEncrAlgorithm.Default,
   HashAlgorithm hashAlg = HashAlgorithm.Sha1,
   Cms.EnvDataOptions advOptions = Cms.EnvDataOptions.None,
   Kdf.KdfAlg kdfAlg = Kdf.KdfAlg.X963,
   Kdf.KeyWrapAlg keyWrapAlg = Kdf.KeyWrapAlg.Default,
   string keyString = "",
   int count = 0,
   Cms.ContentEncrAlg contEncrAlg = Cms.ContentEncrAlg.Aes128 
)
[VB]
Public Shared Function MakeEnvDataFromBytes (
   outputFile As String,
   inputData As Byte(),
   certList As String,
   Optional cipherAlg As CipherAlgorithm = ,
   Optional keyEncrAlg As Cms.KeyEncrAlgorithm = Cms.KeyEncrAlgorithm.Default,
   Optional hashAlg As HashAlgorithm = HashAlgorithm.Sha1,
   Optional advOptions As Cms.EnvDataOptions = Cms.EnvDataOptions.None,
   Optional kdfAlg As Kdf.KdfAlg = Kdf.KdfAlg.X963,
   Optional keyWrapAlg As Kdf.KeyWrapAlg = Kdf.KeyWrapAlg.Default,
   Optional keyString As String = "",
   Optional count As Integer = 0,
   Optional contEncrAlg As Cms.ContentEncrAlg = Cms.ContentEncrAlg.Aes128 
) As Integer

Parameters

outputFile  String
Output file to be created
inputData  Byte
Input data.
certList  String
List of one or more recipient X.509 certificate filenames, separated by semicolons (;). A certificate's representation in base64 or as a PEM string may be used instead of a filename. Alternatively, specify a single PKCS#7 certificate chain file (.p7c/.p7b).

Special cases: Set as "type=@pwri" to create a single recipientInfo of the PasswordRecipientInfo (pwri) type; or set as "type=@kekri,keyid=<string>" to create a single recipientInfo of the KEKRecipientInfo (kekri) type. See Remarks.

cipherAlg  CipherAlgorithm  (Optional)
Content encryption algorithm [default=ignored]. Deprecated: use contEncrAlg. (This parameter will be removed in a future update)
keyEncrAlg  Cms.KeyEncrAlgorithm  (Optional)
Key encryption algorithm for ktri type [default=RSAES-PKCS-v1_5)]
hashAlg  HashAlgorithm  (Optional)
Hash function where applicable. Must be one of the SHA-* family [default=SHA-1; SHA-256 for RSA-KEM]
advOptions  Cms.EnvDataOptions  (Optional)
Advanced options.
kdfAlg  Kdf.KdfAlg  (Optional)
Key derivation function (KDF) (where applicable)
keyWrapAlg  Kdf.KeyWrapAlg  (Optional)
Key wrap algorithm for ECDH key agreement scheme or kekri type (default=match content encryption algorithm)
keyString  String  (Optional)
(formerly ukmString) Use to pass optional additional user key material (ukm) for KDF where KeyAgreement (kari) type or RSA-KEM is used. Or use to pass the password for a pwri type or the key encryption key (KEK) for a kekri type. Either pass a plain ASCII string, e.g. "abc" or use the format "#x<hex-digits>" to pass a string of arbitrary octet values, e.g. "#xdeadbeef01" to pass the 5 bytes 0xde,0xad,0xbe,0xef,0x01. Required for pwri and kekri types.
count  Int32  (Optional)
Optional iteration count for KDF in pwri type (default=4096) or tag length for AuthEnvelopedData (in range 12-16, default=16). Otherwise ignored.
contEncrAlg  Cms.ContentEncrAlg  (Optional)
Alternative way to specify content encryption algorithm with more options. Takes precedence over cipherAlg. [default=AES128-CBC]

Return Value

Int32
Number of successful recipients or negative error code

Remarks

See remarks for MakeEnvData(String, String, String, CipherAlgorithm, Cms.KeyEncrAlgorithm, HashAlgorithm, Cms.EnvDataOptions, Kdf.KdfAlg, Kdf.KeyWrapAlg, String, Int32, Cms.ContentEncrAlg)

See Also

VB6/C equivalent: CMS_MakeEnvDataFromBytes

[Contents] [Index]

[PREV: Cms.MakeEnvData(String, String, String, CipherAlgorithm, Cms.KeyEncrAlgorithm, HashAlgorithm, Cms.EnvDataOptions, Kdf.KdfAlg, Kdf.KeyWrapAlg, String, Int32, Cms.ContentEncrAlg) Method...]   [Contents]   [Index]   
   [NEXT: Cms.MakeEnvDataFromString(String, String, String, CipherAlgorithm, Cms.EnvDataOptions) Method...]

Copyright © 2004-26 D.I. Management Services Pty Ltd t/a CryptoSys. All rights reserved. Generated 2026-09-21T05:59:39Z.