Secure Exchanges SDK Documentation
Search Results for

    Show / Hide Table of Contents

    Class CryptoHelper

    This is the Helper to encrypt and decrypt the information with Secure Exchanges

    Inheritance
    object
    CryptoHelper
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: SecureExchangesSDK.Helpers
    Assembly: SecureExchangesSDK.dll
    Syntax
    public static class CryptoHelper

    Methods

    AlterBinary(string, byte[], int, int)

    This will derive a byteArray with a Password and a number of iteration

    Declaration
    public static byte[] AlterBinary(string password, byte[] original, int iteration, int maskLength = 16)
    Parameters
    Type Name Description
    string password

    Password to use for derivation, longer, is better

    byte[] original

    The original byte array to derive

    int iteration

    the number of iteration you want to derive. Higher is better, but will be more slow. 1000 should be use

    int maskLength
    Returns
    Type Description
    byte[]
    Examples
    Random rnd = new Random();
     var iteration = rnd.Next(1000, 1200);
     byte[] alterByteArray = CryptoHelper.AlterBinary("ThatIsAVeryComplexPswMmmNotSure!!!?", binary, iteration);

    AlterGuid(string, Guid)

    That is use to Derive a Guid with a password

    Declaration
    public static Guid AlterGuid(string password, Guid original)
    Parameters
    Type Name Description
    string password

    Password need to be use for derivation

    Guid original

    Original Guid need to be derived

    Returns
    Type Description
    Guid
    Examples
    Guid newGuid =  CryptoHelper.AlterGuid(password, MyGuid);

    BytesXor(byte[], byte[])

    Performs XOR operation between two byte arrays of equal length.

    Declaration
    public static byte[] BytesXor(byte[] mask, byte[] source)
    Parameters
    Type Name Description
    byte[] mask

    The mask byte array to XOR with the source.

    byte[] source

    The source byte array to be XORed.

    Returns
    Type Description
    byte[]

    A new byte array containing the XOR result.

    Examples
    byte[] mask = new byte[] { 0x0F, 0xF0, 0xAA };
    byte[] source = new byte[] { 0x55, 0x55, 0x55 };
    byte[] result = CryptoHelper.BytesXor(mask, source);
    // result = { 0x5A, 0xA5, 0xFF }
    Exceptions
    Type Condition
    Exception

    Thrown when the arrays have different lengths.

    ClearRSAKeyStore(string)

    Declaration
    public static bool ClearRSAKeyStore(string keyStoreName)
    Parameters
    Type Name Description
    string keyStoreName
    Returns
    Type Description
    bool

    ConcatByteArray(params byte[][])

    Use to merge multiple bytearray togheter

    Declaration
    public static byte[] ConcatByteArray(params byte[][] arrays)
    Parameters
    Type Name Description
    byte[][] arrays

    Return a single bytes arrays

    Returns
    Type Description
    byte[]
    Examples
    byte[] singleByteArray =  CryptoHelper.ConcatByteArray(byte[], byte[],byte[]);

    CreateNewPrivateCertificate(int, bool)

    Export a certificate with the private Key

    Declaration
    public static string CreateNewPrivateCertificate(int keySize, bool exportPrivateKey = false)
    Parameters
    Type Name Description
    int keySize

    The key site

    bool exportPrivateKey

    Did the CER string will contains the certificate

    Returns
    Type Description
    string

    CreateNewPrivateKey(int)

    Create a new private RSA key xml format

    Declaration
    public static string CreateNewPrivateKey(int keySize)
    Parameters
    Type Name Description
    int keySize

    Key size need to be use, 256, 512, 1024, 2048, 4096, 8192

    Returns
    Type Description
    string

    Return the xml private key

    CreateRSAKeyStore(string, int)

    Declaration
    public static string CreateRSAKeyStore(string keyStoreName, int keySize = 2048)
    Parameters
    Type Name Description
    string keyStoreName
    int keySize
    Returns
    Type Description
    string

    DecryptBinaryFromBytes(byte[], byte[], byte[], PaddingMode)

    This method is use to decrypt binary Rijndael

    Declaration
    public static byte[] DecryptBinaryFromBytes(byte[] cipher, byte[] Key, byte[] IV, PaddingMode paddingMode = PaddingMode.PKCS7)
    Parameters
    Type Name Description
    byte[] cipher

    The binary to decrypt, canot be null

    byte[] Key

    The key use to decrypt the binary

    byte[] IV

    The iv use to decrypt the binary

    PaddingMode paddingMode

    Padding mode use to decrypt. The default is PKCS7

    Returns
    Type Description
    byte[]

    The decrypted array

    Examples
    byte[] unEncryptedByteArray =  CryptoHelper.DecryptBinaryFromBytes(Convert.FromBase64String(Base64BinaryArray), Key, IV);

    DecryptFile(string, string, byte[], byte[])

    Decrypt file, destination will be override.

    Declaration
    public static void DecryptFile(string sourceFilename, string destinationFilename, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    string sourceFilename
    string destinationFilename
    byte[] Key
    byte[] IV

    DecryptRSAContent(string, byte[], bool)

    Decrypt RSA crypted data with private key, and return a byte array

    Declaration
    public static byte[] DecryptRSAContent(string privateKey, byte[] cryptedData, bool fOAEP)
    Parameters
    Type Name Description
    string privateKey

    The xml private key need to be use to uncrypt the crypteddata

    byte[] cryptedData

    Byte array of encrypted data

    bool fOAEP

    true to perform direct System.Security.Cryptography.RSA encryption using OAEP padding (only available on a computer runing XP or later); otherwise, false to use PCKS#1.5 padding

    Returns
    Type Description
    byte[]

    The byte array uncrypted of the byte array

    DecryptRSAContentToString(string, byte[], bool)

    Decrypt RSA crypted data with private key, and return a string

    Declaration
    public static string DecryptRSAContentToString(string privateKey, byte[] cryptedData, bool fOAEP)
    Parameters
    Type Name Description
    string privateKey

    The xml private key need to be use to uncrypt the crypteddata

    byte[] cryptedData

    Byte array of encrypted data

    bool fOAEP

    true to perform direct System.Security.Cryptography.RSA encryption using OAEP padding (only available on a computer runing XP or later); otherwise, false to use PCKS#1.5 padding

    Returns
    Type Description
    string

    The string uncrypted of the byte array

    Examples
    string decryptedString = CryptoHelper.DecryptRSAContentToString(privateKey, stringByteArray, true);

    DecryptSecfFile(string, byte[], byte[])

    Decrypt file, destination will be override.

    Declaration
    public static bool DecryptSecfFile(string sourceFilename, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    string sourceFilename
    byte[] Key
    byte[] IV
    Returns
    Type Description
    bool

    DecryptSecfFile(string, string, byte[], byte[])

    Decrypt file, destination will be override.

    Declaration
    public static bool DecryptSecfFile(string sourceFilename, string destinationDirectory, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    string sourceFilename
    string destinationDirectory
    byte[] Key
    byte[] IV
    Returns
    Type Description
    bool

    DecryptStream(Stream, Stream, byte[], byte[], PaddingMode)

    Decrypt Binaray with stream

    Declaration
    public static void DecryptStream(Stream inputStream, Stream outputStream, byte[] Key, byte[] IV, PaddingMode paddingMode = PaddingMode.PKCS7)
    Parameters
    Type Name Description
    Stream inputStream

    The caller must close the input stream after use

    Stream outputStream

    The caller must close the output stream after use

    byte[] Key

    The key

    byte[] IV

    The IV

    PaddingMode paddingMode

    The padding mode

    Exceptions
    Type Condition
    ArgumentNullException

    DecryptStringFromBase64(string, byte[], byte[])

    Decrypt base 64 string

    Declaration
    public static string DecryptStringFromBase64(string b64, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    string b64

    The encrypted string base64

    byte[] Key

    The key need to be use for decryption

    byte[] IV

    The iv need to be use for decryption

    Returns
    Type Description
    string
    Examples
    string decryptedString =  DecryptStringFromBytes("SSBuZWVkIHRvIGJlIGRlY3J5cHRlZD8gWW91IGFyZSByaWdodCwgdGhhdCB3YXMgbm90IHJlYWxseSBlbmNyeXB0ZWQhISA6LSk=", Key, IV);

    DecryptStringFromBase64(string, string, string)

    Decrypts a Base64 encoded encrypted string using Base64 encoded key and IV.

    Declaration
    public static string DecryptStringFromBase64(string b64, string Base64Key, string Base64IV)
    Parameters
    Type Name Description
    string b64

    The Base64 encoded encrypted string.

    string Base64Key

    The Base64 encoded AES key.

    string Base64IV

    The Base64 encoded AES initialization vector.

    Returns
    Type Description
    string

    The decrypted plain text string.

    Examples
    string decrypted = CryptoHelper.DecryptStringFromBase64(encryptedB64, base64Key, base64IV);

    DecryptStringFromBytes(byte[], byte[], byte[])

    Decrypt binaryText

    Declaration
    public static string DecryptStringFromBytes(byte[] cipherText, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    byte[] cipherText

    The encrypted binary data

    byte[] Key

    The key need to be used for decryption

    byte[] IV

    The iv need to be used for decryption

    Returns
    Type Description
    string

    return a string unencrypted of a string encrypted

    Examples
    DecryptStringFromBytes(Convert.FromBase64String(b64), Key, IV);

    EncryptBinary(byte[], byte[], byte[], PaddingMode)

    Use to encrypt with Rijndael a byte array

    Declaration
    public static byte[] EncryptBinary(byte[] binary, byte[] Key, byte[] IV, PaddingMode paddingMode = PaddingMode.PKCS7)
    Parameters
    Type Name Description
    byte[] binary

    Binary need to be encrypted

    byte[] Key

    The key of the encryption

    byte[] IV

    The iv of the encryption

    PaddingMode paddingMode
    Returns
    Type Description
    byte[]

    Return the crypted bytes array

    Examples
    byte[] cryptedBinary = CryptoHelper.EncryptBinary(Binary, Key, IV);

    EncryptFile(string, string, byte[], byte[])

    Use to encrypt file destination will be override

    Declaration
    public static void EncryptFile(string sourceFilename, string destinationFilename, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    string sourceFilename
    string destinationFilename
    byte[] Key
    byte[] IV

    EncryptRSAContent(string, byte[], bool)

    Encrypt a byte array with a public key

    Declaration
    public static byte[] EncryptRSAContent(string publicKey, byte[] content, bool fOAEP)
    Parameters
    Type Name Description
    string publicKey

    The xml public key need to be use

    byte[] content

    The string need to be encrypted

    bool fOAEP

    true to perform direct System.Security.Cryptography.RSA encryption using OAEP padding (only available on a computer runing XP or later); otherwise, false to use PCKS#1.5 padding

    Returns
    Type Description
    byte[]

    Byte array of the byte array, encrypted with the public key

    Examples
    byte[] cryptedString = EncryptRSAContent(publicKey, contentBinary, true);

    EncryptRSAContent(string, string)

    Encrypt RSA content with xml public key

    Declaration
    public static byte[] EncryptRSAContent(string publicKey, string content)
    Parameters
    Type Name Description
    string publicKey

    Public key

    string content

    The string need to be encrypted

    Returns
    Type Description
    byte[]

    Encrypted string

    Examples
    byte[] encryptedData = EncryptRSAContent(publicKey, content);

    EncryptRSAContent(string, string, bool)

    Encrypt a string with a public key

    Declaration
    public static byte[] EncryptRSAContent(string publicKey, string content, bool fOAEP)
    Parameters
    Type Name Description
    string publicKey

    The xml public key need to be use

    string content

    The string need to be encrypted System.Text.Encoding.Default

    bool fOAEP

    true to perform direct System.Security.Cryptography.RSA encryption using OAEP padding (only available on a computer runing XP or later); otherwise, false to use PCKS#1.5 padding

    Returns
    Type Description
    byte[]

    Byte array of the string, encrypted with the public key

    Examples
    byte[] cryptedString = EncryptRSAContent(publicKey, contentString, true);

    EncryptSecfFile(string, byte[], byte[])

    Use to encrypt file destination will be override

    Declaration
    public static bool EncryptSecfFile(string sourceFilename, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    string sourceFilename
    byte[] Key
    byte[] IV
    Returns
    Type Description
    bool

    EncryptSecfFile(string, string, byte[], byte[])

    Use to encrypt file destination will be override

    Declaration
    public static bool EncryptSecfFile(string sourceFilename, string destinationDirectory, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    string sourceFilename
    string destinationDirectory
    byte[] Key
    byte[] IV
    Returns
    Type Description
    bool

    EncryptStream(Stream, Stream, byte[], byte[], PaddingMode)

    Encrypt binary by using stream to encrypt large file

    Declaration
    public static void EncryptStream(Stream inputStream, Stream outputStream, byte[] Key, byte[] IV, PaddingMode paddingMode = PaddingMode.PKCS7)
    Parameters
    Type Name Description
    Stream inputStream

    The input stream

    Stream outputStream

    The outpout stream. ATTENTION THE CALLER MUST CLOSE THE STREAM

    byte[] Key

    The key

    byte[] IV

    The IV

    PaddingMode paddingMode

    The padding mode

    Exceptions
    Type Condition
    ArgumentNullException

    EncryptStringToB64(string, byte[], byte[])

    Use to encrypt a string to UTF8 base 64

    Declaration
    public static string EncryptStringToB64(string plainText, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    string plainText

    Text to encrypt

    byte[] Key

    The key use to encrypt

    byte[] IV

    The Iv use to encrypt

    Returns
    Type Description
    string

    The base64 string

    Examples
    string cryptedString = CryptoHelper.EncryptStringToB64("I need encryption for this string", KEY, IV);

    EncryptStringToBytes(string, byte[], byte[])

    Use to encrypt plainText UTF8 to byte array

    Declaration
    public static byte[] EncryptStringToBytes(string plainText, byte[] Key, byte[] IV)
    Parameters
    Type Name Description
    string plainText
    byte[] Key
    byte[] IV
    Returns
    Type Description
    byte[]

    A byte array encrypted. The plainText must be in UTF-8

    Examples
    byte[] encrypted = CryptoHelper.EncryptStringToBytes(plainText, Key, IV);

    EnncryptRSAContentToBase64String(string, string)

    Encrypt with public key a string. Use RSA crypto provider

    Declaration
    public static string EnncryptRSAContentToBase64String(string publicKey, string content)
    Parameters
    Type Name Description
    string publicKey

    The public XML public key need to be used

    string content

    The content to encrypt

    Returns
    Type Description
    string

    Base64 encrypted string

    Examples
    string encryptedString =  CryptoHelper.EnncryptRSAContentToBase64String(PublicKey, Content);

    FillSecureRandomByteArray(byte[])

    Fill a array with random strong value

    Declaration
    public static void FillSecureRandomByteArray(byte[] data)
    Parameters
    Type Name Description
    byte[] data

    Array to fill

    GenerateAESKeys()

    Generate a new AES keys

    Declaration
    public static Keys GenerateAESKeys()
    Returns
    Type Description
    Keys

    GenerateBase64KeyAndIV(out string, out string)

    Generate 256 bits base 64 key and base 64 iv key with RijndaelManaged.

    Declaration
    public static void GenerateBase64KeyAndIV(out string b64Key, out string b64iv)
    Parameters
    Type Name Description
    string b64Key
    string b64iv

    GenerateSecureRandomByteArray(int)

    That method will return a array fill with SecureRandomValue

    Declaration
    public static byte[] GenerateSecureRandomByteArray(int length)
    Parameters
    Type Name Description
    int length
    Returns
    Type Description
    byte[]

    GetKeyFromSHA512(byte[])

    From a SHA512 return a 32 bit keys

    Declaration
    public static byte[] GetKeyFromSHA512(byte[] hash)
    Parameters
    Type Name Description
    byte[] hash
    Returns
    Type Description
    byte[]

    GetMD5Bytes(string)

    Computes the MD5 hash of a UTF-8 encoded string and returns it as a byte array.

    Declaration
    public static byte[] GetMD5Bytes(string plainText)
    Parameters
    Type Name Description
    string plainText

    The UTF-8 string to hash.

    Returns
    Type Description
    byte[]

    The MD5 hash as a byte array, or null if the input is null or empty.

    Examples
    byte[] hashBytes = CryptoHelper.GetMD5Bytes("Hello World");

    GetMD5HashOfBytes(byte[])

    Return a MD5 Hexa string of the hash

    Declaration
    public static string GetMD5HashOfBytes(byte[] b)
    Parameters
    Type Name Description
    byte[] b

    Source binary that need to get the Hash

    Returns
    Type Description
    string

    MD5 128 bit hexa hash

    Examples
    string fileHash = CryptoHelper.GetMD5HashOfBytes(Binary);

    GetMD5HashOfFile(string)

    Return a MD5 hash of a file

    Declaration
    public static string GetMD5HashOfFile(string filePath)
    Parameters
    Type Name Description
    string filePath

    Path to the file

    Returns
    Type Description
    string

    HEXA MD5 string file

    Examples
    string hash = CryptoHelper.GetMD5HashOfFile(myfile.FileName);

    GetMD5HashOfStream(Stream)

    Get the Hexa MD5 string of a stream

    Declaration
    public static string GetMD5HashOfStream(Stream stream)
    Parameters
    Type Name Description
    Stream stream
    Returns
    Type Description
    string
    Examples
    using (var stream = new BufferedStream(File.OpenRead(filePath), 3145728))
       {
         return GetMD5HashOfStream(stream);
     }

    GetMD5HashOfString(string)

    Return the MD5 hash of a string

    Declaration
    public static string GetMD5HashOfString(string stringToHash)
    Parameters
    Type Name Description
    string stringToHash

    UTF-8 string

    Returns
    Type Description
    string

    HEXA string of the Hash

    Examples
    string hash = CryptoHelper.GetMD5HashOfString(content);

    GetPublicKeyFromPrivateKey(string)

    Return the public RSA key of a private key. the public key will be in xml format

    Declaration
    public static string GetPublicKeyFromPrivateKey(string privateKey)
    Parameters
    Type Name Description
    string privateKey

    XML private key to extract the public key

    Returns
    Type Description
    string

    The xml public key of the private key

    GetPublicKeyFromPrivateXmlOrPEM(string)

    Declaration
    public static RSAKeys GetPublicKeyFromPrivateXmlOrPEM(string privateKey)
    Parameters
    Type Name Description
    string privateKey
    Returns
    Type Description
    RSAKeys

    GetPublicKeySize(string)

    Get the key size of a public key

    Declaration
    public static int GetPublicKeySize(string publicKey)
    Parameters
    Type Name Description
    string publicKey
    Returns
    Type Description
    int

    GetSHA256Bytes(byte[])

    REturn the hash of a SHA256 of bytes

    Declaration
    public static byte[] GetSHA256Bytes(byte[] bytes)
    Parameters
    Type Name Description
    byte[] bytes
    Returns
    Type Description
    byte[]

    GetSHA256Bytes(string)

    Get the SHA 256 of UTF-8 string

    Declaration
    public static byte[] GetSHA256Bytes(string plainText)
    Parameters
    Type Name Description
    string plainText
    Returns
    Type Description
    byte[]

    GetSHA256HashOfBytes(byte[])

    Get the HEX hash of bytes

    Declaration
    public static string GetSHA256HashOfBytes(byte[] b)
    Parameters
    Type Name Description
    byte[] b
    Returns
    Type Description
    string

    GetSHA256HashOfString(string)

    Get the HEX hash of a string utf8

    Declaration
    public static string GetSHA256HashOfString(string b)
    Parameters
    Type Name Description
    string b
    Returns
    Type Description
    string

    GetSHA256OfFile(string)

    Get the HEX hash of file

    Declaration
    public static string GetSHA256OfFile(string filePath)
    Parameters
    Type Name Description
    string filePath
    Returns
    Type Description
    string

    GetSHA256OfStream(Stream)

    Get the HEX hash of stream

    Declaration
    public static string GetSHA256OfStream(Stream stream)
    Parameters
    Type Name Description
    Stream stream
    Returns
    Type Description
    string

    GetSHA512Bytes(byte[])

    Return the hash of a SHA 512 of bytes

    Declaration
    public static byte[] GetSHA512Bytes(byte[] bytes)
    Parameters
    Type Name Description
    byte[] bytes
    Returns
    Type Description
    byte[]

    GetSHA512Bytes(string)

    Get SHA 512 of UTF-8 string

    Declaration
    public static byte[] GetSHA512Bytes(string plainText)
    Parameters
    Type Name Description
    string plainText
    Returns
    Type Description
    byte[]

    GetSHA512HashOfBytes(byte[])

    Get the HEX hash of bytes

    Declaration
    public static string GetSHA512HashOfBytes(byte[] b)
    Parameters
    Type Name Description
    byte[] b
    Returns
    Type Description
    string

    GetSHA512HashOfString(string)

    Get the HEX hash of a string utf8

    Declaration
    public static string GetSHA512HashOfString(string b)
    Parameters
    Type Name Description
    string b
    Returns
    Type Description
    string

    GetSHA512OfFile(string, bool)

    Get the HEX hash of file

    Declaration
    public static string GetSHA512OfFile(string filePath, bool fileOverOneGigabitHashIsSplit = true)
    Parameters
    Type Name Description
    string filePath
    bool fileOverOneGigabitHashIsSplit

    If the file is over that 1G, then the hash calculation is optimised with combinaison of 100Mb hash

    Returns
    Type Description
    string

    GetSHA512OfStream(Stream)

    Get the HEX hash of stream

    Declaration
    public static string GetSHA512OfStream(Stream stream)
    Parameters
    Type Name Description
    Stream stream
    Returns
    Type Description
    string

    GetStrongKeyStoreNameFromAssemblyGuid()

    Declaration
    public static string GetStrongKeyStoreNameFromAssemblyGuid()
    Returns
    Type Description
    string

    HexToByteArray(string)

    Declaration
    public static byte[] HexToByteArray(string hex)
    Parameters
    Type Name Description
    string hex
    Returns
    Type Description
    byte[]

    KeyAlreadyExistInMachineKeys(string)

    Declaration
    public static bool KeyAlreadyExistInMachineKeys(string strongName)
    Parameters
    Type Name Description
    string strongName
    Returns
    Type Description
    bool

    RSADencryptWhitKeyContainerFromMachineKeys(byte[], string)

    Declaration
    public static byte[] RSADencryptWhitKeyContainerFromMachineKeys(byte[] encrBytes, string containerName)
    Parameters
    Type Name Description
    byte[] encrBytes
    string containerName
    Returns
    Type Description
    byte[]

    RSADencryptWhitKeyContainerFromMachineKeysToString(byte[], string)

    Declaration
    public static string RSADencryptWhitKeyContainerFromMachineKeysToString(byte[] encrBytes, string containerName)
    Parameters
    Type Name Description
    byte[] encrBytes
    string containerName
    Returns
    Type Description
    string

    RSAEncryptWhitKeyContainerMachineKeyStore(string, string)

    Declaration
    public static byte[] RSAEncryptWhitKeyContainerMachineKeyStore(string message, string keyContainerName)
    Parameters
    Type Name Description
    string message
    string keyContainerName
    Returns
    Type Description
    byte[]

    RSAEncryptWhitKeyContainerMachineKeyStoreToBase64(string, string)

    Declaration
    public static string RSAEncryptWhitKeyContainerMachineKeyStoreToBase64(string message, string keyContainerName)
    Parameters
    Type Name Description
    string message
    string keyContainerName
    Returns
    Type Description
    string

    SignDataWithPrivateKey(string, byte[], string)

    Get the signature of a message signed with a private key

    Declaration
    public static byte[] SignDataWithPrivateKey(string privateKey, byte[] cryptedData, string hashAlgo = "SHA512")
    Parameters
    Type Name Description
    string privateKey
    byte[] cryptedData
    string hashAlgo
    Returns
    Type Description
    byte[]

    SignDataWithPrivateKey(string, string, string)

    return a base64 signature of the hash

    Declaration
    public static string SignDataWithPrivateKey(string privateKey, string clearText, string hashAlgo = "SHA512")
    Parameters
    Type Name Description
    string privateKey
    string clearText
    string hashAlgo
    Returns
    Type Description
    string

    TransformXmlKeyToPEM(string)

    That will transform a xml key to certificate

    Declaration
    public static string TransformXmlKeyToPEM(string xmlKey)
    Parameters
    Type Name Description
    string xmlKey

    If we get the private key, the PEM will contain the private key if not only the public key

    Returns
    Type Description
    string

    VerifySignature(string, byte[], byte[], string)

    Vérifie la signature d'un échange clé publique privé

    Declaration
    public static bool VerifySignature(string xmlPublicKey, byte[] signature, byte[] clearHashData, string hashAlgo = "SHA512")
    Parameters
    Type Name Description
    string xmlPublicKey

    La clé publique associer à la clé privé

    byte[] signature

    La signature en bytes

    byte[] clearHashData

    Le hash des données signers en bytes

    string hashAlgo

    l'alrorithme utiliser

    Returns
    Type Description
    bool

    VerifySignature(string, string, string, string)

    Vérifie la signature d'un échange clé publique privé

    Declaration
    public static bool VerifySignature(string xmlPublicKey, string base64Signature, string clearBase64HashData, string hashAlgo = "SHA512")
    Parameters
    Type Name Description
    string xmlPublicKey

    La clé publique associer à la clé privé

    string base64Signature

    La signature fait à partir de la clé privé en base 64

    string clearBase64HashData

    Le hash du message qui à été signer en base 64

    string hashAlgo

    l'algoritme utiliser

    Returns
    Type Description
    bool
    In this article
    Back to top Secure Exchanges Inc. - Documentation