Sha384Creator Property
Sha384Creator
This property is a delegate (function pointer). The method loaded
will return an instance of SHA384
.
public static Func<SHA384> Sha384Creator { get; set; }
Property Value
Type | Description |
---|---|
System.Func<System.Security.Cryptography.SHA384> |
Remarks
When an SDK operation needs to digest data using SHA-384, it will do
so using an implementation of the
System.Security.Cryptography.SHA384
abstract class. However,
when it needs the SHA384 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 SHA384
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.
SHA384 sha384Object = CryptographyProviders.Sha384Creator();
If you want to replace the implementation, you will likely do something like this in your application.
CryptographyProviders.Sha384Creator = () =>
{
Handle sha384Handle = Sha384Impl.GetSha384Handle();
return Sha384Impl.GetSha384Object(sha384Handle);
};