Show / Hide Table of Contents

Sha1Creator Property

Sha1Creator

This property is a delegate (function pointer). The method loaded will return an instance of SHA1.

C#
public static Func<SHA1> Sha1Creator { get; set; }

Property Value

Type Description
Func<SHA1>

Remarks

When an SDK operation needs to digest data using SHA-1, it will do so using an implementation of the System.Security.Cryptography.SHA1 abstract class. However, when it needs the SHA1 class, it will ask this delegate to build an object, rather than ask for an object itself. This has to do with the fact that the SHA1 class implements IDisposable. In order to avoid the complex problem of ownership of an object that will be disposed once it goes out of scope, the SDK will create a new object each time one is needed. This new object will be in scope only for the duration of its use in the SDK, and will be disposed immediately when the SDK is done with it.

The method loaded will return an object. This class is initialized with a method that will build and return an instance of the C# default implementation. For example, it could be used as follows.

SHA1 sha1Object = CryptographyProviders.Sha1Creator();

If you want to replace the implementation, you will likely do something like this in your application.

CryptographyProviders.Sha1Creator = () =>
{
    Handle sha1Handle = Sha1Impl.GetSha1Handle();
    return Sha1Impl.GetSha1Object(sha1Handle);
};
In this article
Back to top Generated by DocFX