Initial Commit
This commit is contained in:
68
iTechSharp/srcbc/cms/CMSPBEKey.cs
Normal file
68
iTechSharp/srcbc/cms/CMSPBEKey.cs
Normal file
@@ -0,0 +1,68 @@
|
||||
using System;
|
||||
|
||||
using Org.BouncyCastle.Crypto;
|
||||
using Org.BouncyCastle.Crypto.Parameters;
|
||||
using Org.BouncyCastle.Utilities;
|
||||
|
||||
//import javax.crypto.interfaces.PBEKey;
|
||||
|
||||
namespace Org.BouncyCastle.Cms
|
||||
{
|
||||
public abstract class CmsPbeKey
|
||||
// TODO Create an equivalent interface somewhere?
|
||||
// : PBEKey
|
||||
: ICipherParameters
|
||||
{
|
||||
private readonly string password;
|
||||
private readonly byte[] salt;
|
||||
private readonly int iterationCount;
|
||||
|
||||
public CmsPbeKey(
|
||||
string password,
|
||||
byte[] salt,
|
||||
int iterationCount)
|
||||
{
|
||||
this.password = password;
|
||||
this.salt = Arrays.Clone(salt);
|
||||
this.iterationCount = iterationCount;
|
||||
}
|
||||
|
||||
public string Password
|
||||
{
|
||||
get { return password; }
|
||||
}
|
||||
|
||||
public byte[] Salt
|
||||
{
|
||||
get { return Arrays.Clone(salt); }
|
||||
}
|
||||
|
||||
[Obsolete("Use 'Salt' property instead")]
|
||||
public byte[] GetSalt()
|
||||
{
|
||||
return Salt;
|
||||
}
|
||||
|
||||
public int IterationCount
|
||||
{
|
||||
get { return iterationCount; }
|
||||
}
|
||||
|
||||
public string Algorithm
|
||||
{
|
||||
get { return "PKCS5S2"; }
|
||||
}
|
||||
|
||||
public string Format
|
||||
{
|
||||
get { return "RAW"; }
|
||||
}
|
||||
|
||||
public byte[] GetEncoded()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
internal abstract KeyParameter GetEncoded(string algorithmOid);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user