using System;
using System.Runtime.InteropServices;
namespace System.Security.Cryptography
{
/// Represents the base class from which all implementations of the algorithm must derive.
// Token: 0x02000515 RID: 1301
[ComVisible(true)]
public abstract class RC2 : SymmetricAlgorithm
{
/// Initializes a new instance of .
// Token: 0x06002FCC RID: 12236 RVA: 0x0009A994 File Offset: 0x00098B94
protected RC2()
{
this.KeySizeValue = 128;
this.BlockSizeValue = 64;
this.FeedbackSizeValue = 8;
this.LegalKeySizesValue = new KeySizes[1];
this.LegalKeySizesValue[0] = new KeySizes(40, 128, 8);
this.LegalBlockSizesValue = new KeySizes[1];
this.LegalBlockSizesValue[0] = new KeySizes(64, 64, 0);
}
/// Creates an instance of a cryptographic object to perform the algorithm.
/// An instance of a cryptographic object.
/// The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.
///
///
///
// Token: 0x06002FCD RID: 12237 RVA: 0x0009AA00 File Offset: 0x00098C00
public new static RC2 Create()
{
return RC2.Create("System.Security.Cryptography.RC2");
}
/// Creates an instance of a cryptographic object to perform the specified implementation of the algorithm.
/// An instance of a cryptographic object.
/// The name of the specific implementation of to use.
/// The algorithm described by the parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.
// Token: 0x06002FCE RID: 12238 RVA: 0x0009AA0C File Offset: 0x00098C0C
public new static RC2 Create(string AlgName)
{
return (RC2)CryptoConfig.CreateFromName(AlgName);
}
/// Gets or sets the effective size of the secret key used by the algorithm in bits.
/// The effective key size used by the algorithm.
/// The effective key size is invalid.
// Token: 0x17000971 RID: 2417
// (get) Token: 0x06002FCF RID: 12239 RVA: 0x0009AA1C File Offset: 0x00098C1C
// (set) Token: 0x06002FD0 RID: 12240 RVA: 0x0009AA38 File Offset: 0x00098C38
public virtual int EffectiveKeySize
{
get
{
if (this.EffectiveKeySizeValue == 0)
{
return this.KeySizeValue;
}
return this.EffectiveKeySizeValue;
}
set
{
this.EffectiveKeySizeValue = value;
}
}
/// Gets or sets the size of the secret key used by the algorithm in bits.
/// The size of the secret key used by the algorithm.
/// The value for the RC2 key size is less than the effective key size value.
// Token: 0x17000972 RID: 2418
// (get) Token: 0x06002FD1 RID: 12241 RVA: 0x0009AA44 File Offset: 0x00098C44
// (set) Token: 0x06002FD2 RID: 12242 RVA: 0x0009AA4C File Offset: 0x00098C4C
public override int KeySize
{
get
{
return base.KeySize;
}
set
{
base.KeySize = value;
this.EffectiveKeySizeValue = value;
}
}
/// Represents the effective size of the secret key used by the algorithm in bits.
// Token: 0x04001381 RID: 4993
protected int EffectiveKeySizeValue;
}
}