DES.IsSemiWeakKey(Byte[]) Method

Definition

Determines whether the specified key is semi-weak.

C#
public static bool IsSemiWeakKey(byte[] rgbKey);

Parameters

rgbKey
Byte[]

The secret key to test for semi-weakness.

Returns

true if the key is semi-weak; otherwise, false.

Exceptions

The size of the rgbKey parameter is not valid.

Remarks

Semi-weak keys are pairs of keys that result in ciphers that are easy to break. If text is encrypted with a semi-weak key, encrypting the resulting cipher with the partner of that semi-weak key returns the original text. There are six known semi-weak key pairs for the Data Encryption Standard (DES) algorithm; this method checks for those semi-weak keys.

Attempting to set a semi-weak key results in a CryptographicException. When GenerateKey is called to create a random key, a semi-weak key will never be returned.

Applies to

Product Versions
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

See also