Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ SignDataCore() [1/2]

virtual byte[] System.Security.Cryptography.DSA.SignDataCore ( ReadOnlySpan< byte > data,
HashAlgorithmName hashAlgorithm,
DSASignatureFormat signatureFormat )
inlineprotectedvirtualinherited

Definition at line 152 of file DSA.cs.

153 {
154 Span<byte> destination = stackalloc byte[128];
155 if (TrySignDataCore(data, destination, hashAlgorithm, signatureFormat, out var bytesWritten))
156 {
157 return destination.Slice(0, bytesWritten).ToArray();
158 }
159 byte[] rgbHash = HashSpanToArray(data, hashAlgorithm);
160 byte[] signature = CreateSignature(rgbHash);
161 return AsymmetricAlgorithmHelpers.ConvertFromIeeeP1363Signature(signature, signatureFormat);
162 }
static byte[] ConvertFromIeeeP1363Signature(byte[] signature, DSASignatureFormat targetFormat)
byte[] CreateSignature(byte[] rgbHash)
byte[] HashSpanToArray(ReadOnlySpan< byte > data, HashAlgorithmName hashAlgorithm)
Definition DSA.cs:498
virtual bool TrySignDataCore(ReadOnlySpan< byte > data, Span< byte > destination, HashAlgorithmName hashAlgorithm, DSASignatureFormat signatureFormat, out int bytesWritten)
Definition DSA.cs:364

References Internal.Cryptography.AsymmetricAlgorithmHelpers.ConvertFromIeeeP1363Signature(), System.Security.Cryptography.DSA.CreateSignature(), System.destination, System.Security.Cryptography.DSA.HashSpanToArray(), System.Span< T >.Slice(), and System.Security.Cryptography.DSA.TrySignDataCore().

Referenced by System.Security.Cryptography.DSA.SignData(), System.Security.Cryptography.DSA.SignData(), and System.Security.Cryptography.DSA.SignData().