Basic formatting applied. Unnecessary comments have been removed. Suspicious code is covered by TODO.
117 lines
5.1 KiB
C#
117 lines
5.1 KiB
C#
using GostCryptography.Asn1.Ber;
|
||
using GostCryptography.Asn1.Gost.Gost_28147_89;
|
||
using GostCryptography.Asn1.Gost.Gost_R3410_2001;
|
||
using GostCryptography.Asn1.Gost.Gost_R3410_2012_256;
|
||
using GostCryptography.Asn1.Gost.Gost_R3410_2012_512;
|
||
using GostCryptography.Asn1.Gost.Gost_R3410_94;
|
||
|
||
namespace GostCryptography.Asn1.Gost.PublicKey
|
||
{
|
||
static class PkiConstants
|
||
{
|
||
// ГОСТ 28147-89
|
||
|
||
private static readonly AlgorithmId Gost_28147_89_EncryptAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_28147_89_Constants.EncryptAlgorithm),
|
||
new Gost_28147_89_Params());
|
||
|
||
// ГОСТ Р 34.10-94
|
||
|
||
private static readonly AlgorithmId Gost_R3410_94_KeyAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_94_Constants.KeyAlgorithm),
|
||
new Gost_R3410_94_PublicKeyType());
|
||
|
||
private static readonly AlgorithmId Gost_R3410_94_DhAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_94_Constants.DhAlgorithm),
|
||
new Gost_R3410_94_DhPublicKeyType());
|
||
|
||
private static readonly AlgorithmId Gost_R3410_94_SignatureAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_94_Constants.SignatureAlgorithm),
|
||
new NullParams());
|
||
|
||
private static readonly AlgorithmId Gost_R3411_94_HashAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_94_Constants.HashAlgorithm),
|
||
new Gost_R3411_94_DigestParamsType());
|
||
|
||
// ГОСТ Р 34.10-2001
|
||
|
||
private static readonly AlgorithmId Gost_R3410_2001_KeyAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2001_Constants.KeyAlgorithm),
|
||
new Gost_R3410_2001_PublicKeyType());
|
||
|
||
private static readonly AlgorithmId Gost_R3410_2001_DhAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2001_Constants.DhAlgorithm),
|
||
new Gost_R3410_2001_DhPublicKeyType());
|
||
|
||
private static readonly AlgorithmId Gost_R3410_2001_SignatureAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2001_Constants.SignatureAlgorithm),
|
||
new NullParams());
|
||
|
||
private static readonly AlgorithmId Gost_R3411_2001_HashAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2001_Constants.HashAlgorithm),
|
||
new Gost_R3411_2001_DigestParamsType());
|
||
|
||
// ГОСТ Р 34.10-2012/256
|
||
|
||
private static readonly AlgorithmId Gost_R3410_2012_256_KeyAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2012_256_Constants.KeyAlgorithm),
|
||
new Gost_R3410_2012_256_PublicKeyType());
|
||
|
||
private static readonly AlgorithmId Gost_R3410_2012_256_DhAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2012_256_Constants.DhAlgorithm),
|
||
new Gost_R3410_2012_256_DhPublicKeyType());
|
||
|
||
private static readonly AlgorithmId Gost_R3410_2012_256_SignatureAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2012_256_Constants.SignatureAlgorithm),
|
||
new NullParams());
|
||
|
||
private static readonly AlgorithmId Gost_R3411_2012_256_HashAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2012_256_Constants.HashAlgorithm),
|
||
new Gost_R3411_2012_256_DigestParamsType());
|
||
|
||
// ГОСТ Р 34.10-2012/512
|
||
|
||
private static readonly AlgorithmId Gost_R3410_2012_512_KeyAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2012_512_Constants.KeyAlgorithm),
|
||
new Gost_R3410_2012_512_PublicKeyType());
|
||
|
||
private static readonly AlgorithmId Gost_R3410_2012_512_DhAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2012_512_Constants.DhAlgorithm),
|
||
new Gost_R3410_2012_512_DhPublicKeyType());
|
||
|
||
private static readonly AlgorithmId Gost_R3410_2012_512_SignatureAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2012_512_Constants.SignatureAlgorithm),
|
||
new NullParams());
|
||
|
||
private static readonly AlgorithmId Gost_R3411_2012_512_HashAlgorithm = new AlgorithmId(
|
||
new Asn1ObjectIdentifier(Gost_R3410_2012_512_Constants.HashAlgorithm),
|
||
new Gost_R3411_2012_512_DigestParamsType());
|
||
|
||
|
||
public static readonly AlgorithmId[] SupportedAlgorithms =
|
||
{
|
||
Gost_28147_89_EncryptAlgorithm,
|
||
|
||
Gost_R3410_94_KeyAlgorithm,
|
||
Gost_R3410_94_DhAlgorithm,
|
||
Gost_R3410_94_SignatureAlgorithm,
|
||
Gost_R3411_94_HashAlgorithm,
|
||
|
||
Gost_R3410_2001_KeyAlgorithm,
|
||
Gost_R3410_2001_DhAlgorithm,
|
||
Gost_R3410_2001_SignatureAlgorithm,
|
||
Gost_R3411_2001_HashAlgorithm,
|
||
|
||
Gost_R3410_2012_256_KeyAlgorithm,
|
||
Gost_R3410_2012_256_DhAlgorithm,
|
||
Gost_R3410_2012_256_SignatureAlgorithm,
|
||
Gost_R3411_2012_256_HashAlgorithm,
|
||
|
||
Gost_R3410_2012_512_KeyAlgorithm,
|
||
Gost_R3410_2012_512_DhAlgorithm,
|
||
Gost_R3410_2012_512_SignatureAlgorithm,
|
||
Gost_R3411_2012_512_HashAlgorithm
|
||
};
|
||
}
|
||
}
|