DataProtector.GetHashedPurpose Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt einen Hash der vom Konstruktor angegebenen Eigenschaftswerte.
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()
Gibt zurück
Ein Array von Bytes, die den Hash der ApplicationName, PrimaryPurposeund SpecificPurposes Eigenschaften enthalten.
Beispiele
Das folgende Beispiel zeigt, wie die Methode zum Hashen der GetHashedPurpose Zweckeigenschaften als zusätzliche Entropie verwendet wird. Sie ist Teil eines größeren Codebeispiels für die DataProtector Klasse.
// 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
Hinweise
GetHashedPurpose berechnet den Hash des Anwendungsnamens und den vollständigen Zweck. Der vollständige Zweck ist eine Verkettung aller und PrimaryPurpose EigenschaftenSpecificPurposes. Jeder der drei Teile wird mit seiner Länge vorgestellt, sodass der Hash umgekehrt werden kann.