DataProtector.GetHashedPurpose Metod

Definition

Skapar en hash för de egenskapsvärden som anges av konstruktorn.

protected:
 virtual cli::array <System::Byte> ^ GetHashedPurpose();
protected virtual byte[] GetHashedPurpose();
abstract member GetHashedPurpose : unit -> byte[]
override this.GetHashedPurpose : unit -> byte[]
Protected Overridable Function GetHashedPurpose () As Byte()

Returer

Byte[]

En matris med byte som innehåller hashen för ApplicationNameegenskaperna , PrimaryPurposeoch SpecificPurposes .

Exempel

I följande exempel visas hur du använder GetHashedPurpose metoden för att hasha syftesegenskaperna för användning som extra entropi. Det är en del av ett större kodexempel för DataProtector klassen.

// To allow a service to hand out instances of a DataProtector we demand unrestricted DataProtectionPermission
// in the constructor, but Assert the permission when ProviderProtect is called.  This is similar to FileStream
// where access is checked at time of creation, not time of use.
[SecuritySafeCritical]
[DataProtectionPermission(SecurityAction.Assert, ProtectData = true)]
protected override byte[] ProviderProtect(byte[] userData)
{
    // Delegate to ProtectedData
    return ProtectedData.Protect(userData, GetHashedPurpose(), Scope);
}
' To allow a service to hand out instances of a DataProtector we demand unrestricted DataProtectionPermission 
' in the constructor, but Assert the permission when ProviderProtect is called.  This is similar to FileStream
' where access is checked at time of creation, not time of use.
<SecuritySafeCritical(), DataProtectionPermission(SecurityAction.Assert, ProtectData:=True)> _
Protected Overrides Function ProviderProtect(ByVal userData() As Byte) As Byte()
    ' Delegate to ProtectedData
    Return ProtectedData.Protect(userData, GetHashedPurpose(), Scope)

End Function 'ProviderProtect

Kommentarer

GetHashedPurpose beräknar hashen för programnamnet och det fullständiga syftet. Det fullständiga syftet är en sammanlänkning av alla PrimaryPurpose egenskaper och SpecificPurposes . Var och en av de tre delarna är förinställd med sin längd så att hashen kan vändas.

Gäller för