CryptographicOperations.FixedTimeEquals メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
2 バイト シーケンスの等価性を、値ではなくシーケンスの長さに依存する時間の長さで決定します。
public:
static bool FixedTimeEquals(ReadOnlySpan<System::Byte> left, ReadOnlySpan<System::Byte> right);
public static bool FixedTimeEquals (ReadOnlySpan<byte> left, ReadOnlySpan<byte> right);
static member FixedTimeEquals : ReadOnlySpan<byte> * ReadOnlySpan<byte> -> bool
Public Shared Function FixedTimeEquals (left As ReadOnlySpan(Of Byte), right As ReadOnlySpan(Of Byte)) As Boolean
パラメーター
- left
- ReadOnlySpan<Byte>
比較対象となる最初のバッファー。
- right
- ReadOnlySpan<Byte>
比較対象となる 2 番目のバッファー。
戻り値
left
および right
で、Length の値が同じであり、同じコンテンツが含まれている場合は、true
。それ以外の場合は false
。
注釈
このメソッドは、2 つのバッファーの内容を等しいかどうかを比較し、タイミング情報を漏らさない方法で比較するため、暗号化ルーチン内での使用に最適です。
このメソッドは、 と の長さが異なる場合left
にのみショートサーキットし、 right
を返しますfalse
。
固定時間動作は、同じアドレスを参照するときやright
参照する場合left
を含め、他のすべての場合に保証されます。
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET