System::Security::Cryptography Namespace Reference

Namespaces

 Pkcs
 
 X509Certificates
 
 Xml
 

Classes

class  AsnEncodedData
 
class  AsymmetricAlgorithm
 
class  AsymmetricSignatureDeformatter
 
class  AsymmetricSignatureFormatter
 
class  CryptoStream
 
class  CspKeyContainerInfo
 Additional information about a cryptographic key pair. More...
 
class  CspParameters
 
class  DeriveBytes
 
class  DSA
 
class  DSACryptoServiceProvider
 
struct  DSAParameters
 
class  DSASignatureDeformatter
 
class  DSASignatureFormatter
 
struct  ECCurve
 An elliptic curve. More...
 
class  ECDsa
 
class  ECDsaBotan
 
struct  ECParameters
 Public and private key parameters of an elliptic curve. More...
 
struct  ECPoint
 Point on an elliptic curve. More...
 
class  FromBase64Transform
 
class  HashAlgorithm
 
struct  HashAlgorithmName
 
class  HMAC
 
class  HMACSHA1
 
class  HMACSHA512
 
class  ICryptoTransform
 
class  ICspAsymmetricAlgorithm
 
class  KeySizes
 
class  MD5
 
class  MD5CryptoServiceProvider
 
class  Oid
 
class  RandomNumberGenerator
 
class  RC2
 
class  RC2Managed
 
class  Rfc2898DeriveBytes
 
class  Rijndael
 
class  RijndaelManaged
 
class  RIPEMD160
 
class  RNGCryptoServiceProvider
 
class  RSA
 
class  RSACryptoServiceProvider
 
class  RSAEncryptionPadding
 Padding mode and parameters for RSA encryption or decryption operations. More...
 
struct  RSAParameters
 
class  RSAPKCS1SignatureDeformatter
 
class  RSAPKCS1SignatureFormatter
 
class  RSASignaturePadding
 Padding mode and parameters for RSA signature creation or verification operations. More...
 
class  SHA1
 
class  SHA1CryptoServiceProvider
 
class  SHA1Managed
 
class  SHA256
 
class  SHA256Managed
 
class  SHA384
 
class  SHA384Managed
 
class  SHA512
 
class  SHA512Managed
 
class  SymmetricAlgorithm
 
class  ToBase64Transform
 
class  TripleDES
 
class  TripleDESManaged
 

Enumerations

enum  FromBase64TransformMode { FromBase64TransformMode::IgnoreWhiteSpaces = 0, FromBase64TransformMode::DoNotIgnoreWhiteSpaces = 1 }
 Specifies whether white space should be ignored in the base 64 transformation. More...
 
enum  CipherMode {
  CipherMode::CBC = 1, CipherMode::ECB = 2, CipherMode::OFB = 3, CipherMode::CFB = 4,
  CipherMode::CTS = 5
}
 Block cipher mode. More...
 
enum  CryptoStreamMode { CryptoStreamMode::Read = 0, CryptoStreamMode::Write = 1 }
 CryptoStream direction. More...
 
enum  ECKeyXmlFormat { ECKeyXmlFormat::Rfc4050 }
 XML format for elliptic curve keys. More...
 
enum  KeyNumber { KeyNumber::Exchange = 1, KeyNumber::Signature = 2 }
 Key type. More...
 
enum  OidGroup : int32_t {
  OidGroup::All = 0, OidGroup::HashAlgorithm = 1, OidGroup::EncryptionAlgorithm = 2, OidGroup::PublicKeyAlgorithm = 3,
  OidGroup::SignatureAlgorithm = 4, OidGroup::Attribute = 5, OidGroup::ExtensionOrAttribute = 6, OidGroup::EnhancedKeyUsage = 7,
  OidGroup::Policy = 8, OidGroup::Template = 9, OidGroup::KeyDerivationFunction = 10
}
 Identifies Windows OID groups. More...
 
enum  PaddingMode {
  PaddingMode::None = 1, PaddingMode::PKCS7 = 2, PaddingMode::Zeros = 3, PaddingMode::ANSIX923 = 4,
  PaddingMode::ISO10126 = 5
}
 Defines how to treat messages that is shorter than block required by crypto operation.s. More...
 
enum  RSAEncryptionPaddingMode { RSAEncryptionPaddingMode::Pkcs1 = 0, RSAEncryptionPaddingMode::Oaep = 1 }
 Padding mode used with RSA encryption or decryption operations. More...
 
enum  RSASignaturePaddingMode { RSASignaturePaddingMode::Pkcs1 = 0, RSASignaturePaddingMode::Pss = 1 }
 Padding mode used with RSA signature creation or verification operations. More...
 

Functions

constexpr bool operator== (std::nullptr_t, const HashAlgorithmName &)
 
constexpr bool operator!= (std::nullptr_t, const HashAlgorithmName &)
 
constexpr bool operator< (std::nullptr_t, const HashAlgorithmName &)
 
constexpr bool operator<= (std::nullptr_t, const HashAlgorithmName &)
 
constexpr bool operator> (std::nullptr_t, const HashAlgorithmName &)
 
constexpr bool operator>= (std::nullptr_t, const HashAlgorithmName &)
 
std::ostream & operator<< (std::ostream &stream, const HashAlgorithmName &name)
 
std::wostream & operator<< (std::wostream &stream, const HashAlgorithmName &name)
 
bool operator== (const SharedPtr< RSAEncryptionPadding > &left, const SharedPtr< RSAEncryptionPadding > &right)
 
bool operator!= (const SharedPtr< RSAEncryptionPadding > &left, const SharedPtr< RSAEncryptionPadding > &right)
 
bool operator== (const SharedPtr< RSASignaturePadding > &left, const SharedPtr< RSASignaturePadding > &right)
 
bool operator!= (const SharedPtr< RSASignaturePadding > &left, const SharedPtr< RSASignaturePadding > &right)
 

Enumeration Type Documentation

◆ CipherMode

Block cipher mode.

Enumerator
CBC 

Cipher block chaining which combines current block with previous block to improve encryption.

ECB 

Electronic codebook mode with no inter-block influences; results in weaker encryption.

OFB 

Output feedback mode that handles large input blocks in small pieces.

CFB 

Cipher feedback mode that handles large input blocks in small pieces. Mangling rules differ from such of OFB.

CTS 

Cipher text stealing mode, behaves like CBC for all but two last blocks of text.

◆ CryptoStreamMode

CryptoStream direction.

Enumerator
Read 

Stream is for reading only.

Write 

Stream is for writing only.

◆ ECKeyXmlFormat

XML format for elliptic curve keys.

Enumerator
Rfc4050 

RFC-4050 format.

◆ FromBase64TransformMode

Specifies whether white space should be ignored in the base 64 transformation.

Enumerator
IgnoreWhiteSpaces 

White space should be ignored.

DoNotIgnoreWhiteSpaces 

White space should not be ignored.

◆ KeyNumber

Key type.

Enumerator
Exchange 

Asymmetric exchange key.

Signature 

Asymmetric exchange key.

◆ OidGroup

Identifies Windows OID groups.

Enumerator
All 

All groups.

HashAlgorithm 

Group represented by CRYPT_HASH_ALG_OID_GROUP_ID.

EncryptionAlgorithm 

Group represented by CRYPT_ENCRYPT_ALG_OID_GROUP_ID.

PublicKeyAlgorithm 

Group represented by CRYPT_PUBKEY_ALG_OID_GROUP_ID.

SignatureAlgorithm 

Group represented by CRYPT_SIGN_ALG_OID_GROUP_ID.

Attribute 

Group represented by CRYPT_RDN_ATTR_OID_GROUP_ID.

ExtensionOrAttribute 

Group represented by CRYPT_EXT_OR_ATTR_OID_GROUP_ID.

EnhancedKeyUsage 

Group represented by CRYPT_ENHKEY_USAGE_OID_GROUP_ID.

Policy 

Group represented by CRYPT_POLICY_OID_GROUP_ID.

Template 

Group represented by CRYPT_TEMPLATE_OID_GROUP_ID.

KeyDerivationFunction 

Group represented by CRYPT_KDF_OID_GROUP_ID.

◆ PaddingMode

Defines how to treat messages that is shorter than block required by crypto operation.s.

Enumerator
None 

No padding.

PKCS7 

Use PKCS #7 padding string.

Zeros 

Use zero bytes.

ANSIX923 

Use ANSIX923 padding string.

ISO10126 

Use ISO10126 padding string.

◆ RSAEncryptionPaddingMode

Padding mode used with RSA encryption or decryption operations.

Enumerator
Pkcs1 

PKCS #1 v1.5.

Oaep 

Optimal Asymmetric Encryption Padding.

◆ RSASignaturePaddingMode

Padding mode used with RSA signature creation or verification operations.

Enumerator
Pkcs1 

PKCS #1 v1.5.

Pss 

Probabilistic Signature Scheme.

Function Documentation

◆ operator!=() [1/3]

bool System::Security::Cryptography::operator!= ( const SharedPtr< RSASignaturePadding > &  left,
const SharedPtr< RSASignaturePadding > &  right 
)
inline

◆ operator!=() [2/3]

bool System::Security::Cryptography::operator!= ( const SharedPtr< RSAEncryptionPadding > &  left,
const SharedPtr< RSAEncryptionPadding > &  right 
)
inline

◆ operator!=() [3/3]

constexpr bool System::Security::Cryptography::operator!= ( std::nullptr_t  ,
const HashAlgorithmName  
)

◆ operator<()

constexpr bool System::Security::Cryptography::operator< ( std::nullptr_t  ,
const HashAlgorithmName  
)

◆ operator<<() [1/2]

std::ostream& System::Security::Cryptography::operator<< ( std::ostream &  stream,
const HashAlgorithmName name 
)
inline

Insert data into the stream using UTF-8 encoding.

Parameters
streamOutput stream to insert data to.
nameData to insert.
Returns
stream.

◆ operator<<() [2/2]

std::wostream& System::Security::Cryptography::operator<< ( std::wostream &  stream,
const HashAlgorithmName name 
)
inline

Insert data into the stream.

Parameters
streamOutput stream to insert data to.
nameData to insert.
Returns
stream.

◆ operator<=()

constexpr bool System::Security::Cryptography::operator<= ( std::nullptr_t  ,
const HashAlgorithmName  
)

◆ operator==() [1/3]

bool System::Security::Cryptography::operator== ( const SharedPtr< RSASignaturePadding > &  left,
const SharedPtr< RSASignaturePadding > &  right 
)
inline

◆ operator==() [2/3]

bool System::Security::Cryptography::operator== ( const SharedPtr< RSAEncryptionPadding > &  left,
const SharedPtr< RSAEncryptionPadding > &  right 
)
inline

◆ operator==() [3/3]

constexpr bool System::Security::Cryptography::operator== ( std::nullptr_t  ,
const HashAlgorithmName  
)

◆ operator>()

constexpr bool System::Security::Cryptography::operator> ( std::nullptr_t  ,
const HashAlgorithmName  
)

◆ operator>=()

constexpr bool System::Security::Cryptography::operator>= ( std::nullptr_t  ,
const HashAlgorithmName  
)