Initial Commit
This commit is contained in:
34
iTechSharp/srcbc/crypto/generators/DesKeyGenerator.cs
Normal file
34
iTechSharp/srcbc/crypto/generators/DesKeyGenerator.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using System;
|
||||
|
||||
using Org.BouncyCastle.Crypto.Parameters;
|
||||
|
||||
namespace Org.BouncyCastle.Crypto.Generators
|
||||
{
|
||||
public class DesKeyGenerator
|
||||
: CipherKeyGenerator
|
||||
{
|
||||
public DesKeyGenerator()
|
||||
{
|
||||
}
|
||||
|
||||
internal DesKeyGenerator(
|
||||
int defaultStrength)
|
||||
: base(defaultStrength)
|
||||
{
|
||||
}
|
||||
|
||||
protected override byte[] engineGenerateKey()
|
||||
{
|
||||
byte[] newKey;
|
||||
|
||||
do
|
||||
{
|
||||
newKey = random.GenerateSeed(DesParameters.DesKeyLength);
|
||||
DesParameters.SetOddParity(newKey);
|
||||
}
|
||||
while (DesParameters.IsWeakKey(newKey, 0));
|
||||
|
||||
return newKey;
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user