IsSemiWeakKey Method
Collapse the table of content
Expand the table of content

DES.IsSemiWeakKey Method

Determines whether the specified key is semi-weak.

[Visual Basic]
Public Shared Function IsSemiWeakKey( _
   ByVal rgbKey() As Byte _
) As Boolean
public static bool IsSemiWeakKey(
 byte[] rgbKey
public: static bool IsSemiWeakKey(
 unsigned char rgbKey __gc[]
public static function IsSemiWeakKey(
   rgbKey : Byte[]
) : Boolean;


The secret key to be tested for semi-weakness.

Return Value

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


Exception Type Condition
CryptographicException The size of the rgbKey parameter is not valid.


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.

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


Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

DES Class | DES Members | System.Security.Cryptography Namespace | Cryptographic Services

© 2016 Microsoft