HashAlgorithmProvider.OpenAlgorithm | openAlgorithm method
Creates a HashAlgorithmProvider object and opens the specified algorithm for use.
Syntax
var hashAlgorithmProvider = Windows.Security.Cryptography.Core.HashAlgorithmProvider.openAlgorithm(algorithm);
Parameters
- algorithm
-
Type: String [JavaScript] | System.String [.NET] | Platform::String [C++]
Algorithm name.
Return value
Type: HashAlgorithmProvider
Represents a provider that implements hash algorithms.
Remarks
The following hashing algorithm names are supported:
- HashAlgorithmNames.Md5
- HashAlgorithmNames.Sha1
- HashAlgorithmNames.Sha256
- HashAlgorithmNames.Sha384
- HashAlgorithmNames.Sha512
Examples
public String SampleHashMsg(String strAlgName, String strMsg)
{
// Convert the message string to binary data.
IBuffer buffUtf8Msg = CryptographicBuffer.ConvertStringToBinary(strMsg, BinaryStringEncoding.Utf8);
// Create a HashAlgorithmProvider object.
HashAlgorithmProvider objAlgProv = HashAlgorithmProvider.OpenAlgorithm(strAlgName);
// Demonstrate how to retrieve the name of the hashing algorithm.
String strAlgNameUsed = objAlgProv.AlgorithmName;
// Hash the message.
IBuffer buffHash = objAlgProv.HashData(buffUtf8Msg);
// Verify that the hash length equals the length specified for the algorithm.
if (buffHash.Length != objAlgProv.HashLength)
{
throw new Exception("There was an error creating the hash");
}
// Convert the hash to a string (for display).
String strHashBase64 = CryptographicBuffer.EncodeToBase64String(buffHash);
// Return the encoded string
return strHashBase64;
}
Requirements
|
Minimum supported client | Windows 8 |
|---|---|
|
Minimum supported server | Windows Server 2012 |
|
Namespace |
|
|
Metadata |
|
See also
Build date: 12/4/2012
