Table of Contents

Class TlsEccUtilities

Namespace
Enterprises.Org.BouncyCastle.Crypto.Tls
Assembly
Enterprises.BouncyCastle.Crypto.dll
public abstract class TlsEccUtilities
Inheritance
TlsEccUtilities
Inherited Members

Constructors

TlsEccUtilities()

protected TlsEccUtilities()

Methods

AddSupportedEllipticCurvesExtension(IDictionary, int[])

public static void AddSupportedEllipticCurvesExtension(IDictionary extensions, int[] namedCurves)

Parameters

extensions IDictionary
namedCurves int[]

AddSupportedPointFormatsExtension(IDictionary, byte[])

public static void AddSupportedPointFormatsExtension(IDictionary extensions, byte[] ecPointFormats)

Parameters

extensions IDictionary
ecPointFormats byte[]

AreOnSameCurve(ECDomainParameters, ECDomainParameters)

public static bool AreOnSameCurve(ECDomainParameters a, ECDomainParameters b)

Parameters

a ECDomainParameters
b ECDomainParameters

Returns

bool

CalculateECDHBasicAgreement(ECPublicKeyParameters, ECPrivateKeyParameters)

public static byte[] CalculateECDHBasicAgreement(ECPublicKeyParameters publicKey, ECPrivateKeyParameters privateKey)

Parameters

publicKey ECPublicKeyParameters
privateKey ECPrivateKeyParameters

Returns

byte[]

ContainsEccCipherSuites(int[])

public static bool ContainsEccCipherSuites(int[] cipherSuites)

Parameters

cipherSuites int[]

Returns

bool

CreateSupportedEllipticCurvesExtension(int[])

public static byte[] CreateSupportedEllipticCurvesExtension(int[] namedCurves)

Parameters

namedCurves int[]

Returns

byte[]

CreateSupportedPointFormatsExtension(byte[])

public static byte[] CreateSupportedPointFormatsExtension(byte[] ecPointFormats)

Parameters

ecPointFormats byte[]

Returns

byte[]

DeserializeECFieldElement(int, byte[])

public static BigInteger DeserializeECFieldElement(int fieldSize, byte[] encoding)

Parameters

fieldSize int
encoding byte[]

Returns

BigInteger

DeserializeECPoint(byte[], ECCurve, byte[])

public static ECPoint DeserializeECPoint(byte[] ecPointFormats, ECCurve curve, byte[] encoding)

Parameters

ecPointFormats byte[]
curve ECCurve
encoding byte[]

Returns

ECPoint

DeserializeECPublicKey(byte[], ECDomainParameters, byte[])

public static ECPublicKeyParameters DeserializeECPublicKey(byte[] ecPointFormats, ECDomainParameters curve_params, byte[] encoding)

Parameters

ecPointFormats byte[]
curve_params ECDomainParameters
encoding byte[]

Returns

ECPublicKeyParameters

GenerateECKeyPair(SecureRandom, ECDomainParameters)

public static AsymmetricCipherKeyPair GenerateECKeyPair(SecureRandom random, ECDomainParameters ecParams)

Parameters

random SecureRandom
ecParams ECDomainParameters

Returns

AsymmetricCipherKeyPair

GenerateEphemeralClientKeyExchange(SecureRandom, byte[], ECDomainParameters, Stream)

public static ECPrivateKeyParameters GenerateEphemeralClientKeyExchange(SecureRandom random, byte[] ecPointFormats, ECDomainParameters ecParams, Stream output)

Parameters

random SecureRandom
ecPointFormats byte[]
ecParams ECDomainParameters
output Stream

Returns

ECPrivateKeyParameters

GetNameOfNamedCurve(int)

public static string GetNameOfNamedCurve(int namedCurve)

Parameters

namedCurve int

Returns

string

GetParametersForNamedCurve(int)

public static ECDomainParameters GetParametersForNamedCurve(int namedCurve)

Parameters

namedCurve int

Returns

ECDomainParameters

GetSupportedEllipticCurvesExtension(IDictionary)

public static int[] GetSupportedEllipticCurvesExtension(IDictionary extensions)

Parameters

extensions IDictionary

Returns

int[]

GetSupportedPointFormatsExtension(IDictionary)

public static byte[] GetSupportedPointFormatsExtension(IDictionary extensions)

Parameters

extensions IDictionary

Returns

byte[]

HasAnySupportedNamedCurves()

public static bool HasAnySupportedNamedCurves()

Returns

bool

IsCompressionPreferred(byte[], byte)

public static bool IsCompressionPreferred(byte[] ecPointFormats, byte compressionFormat)

Parameters

ecPointFormats byte[]
compressionFormat byte

Returns

bool

IsEccCipherSuite(int)

public static bool IsEccCipherSuite(int cipherSuite)

Parameters

cipherSuite int

Returns

bool

IsSupportedNamedCurve(int)

public static bool IsSupportedNamedCurve(int namedCurve)

Parameters

namedCurve int

Returns

bool

ReadECExponent(int, Stream)

public static int ReadECExponent(int fieldSize, Stream input)

Parameters

fieldSize int
input Stream

Returns

int

ReadECFieldElement(int, Stream)

public static BigInteger ReadECFieldElement(int fieldSize, Stream input)

Parameters

fieldSize int
input Stream

Returns

BigInteger

ReadECParameter(Stream)

public static BigInteger ReadECParameter(Stream input)

Parameters

input Stream

Returns

BigInteger

ReadECParameters(int[], byte[], Stream)

public static ECDomainParameters ReadECParameters(int[] namedCurves, byte[] ecPointFormats, Stream input)

Parameters

namedCurves int[]
ecPointFormats byte[]
input Stream

Returns

ECDomainParameters

ReadSupportedEllipticCurvesExtension(byte[])

public static int[] ReadSupportedEllipticCurvesExtension(byte[] extensionData)

Parameters

extensionData byte[]

Returns

int[]

ReadSupportedPointFormatsExtension(byte[])

public static byte[] ReadSupportedPointFormatsExtension(byte[] extensionData)

Parameters

extensionData byte[]

Returns

byte[]

SerializeECFieldElement(int, BigInteger)

public static byte[] SerializeECFieldElement(int fieldSize, BigInteger x)

Parameters

fieldSize int
x BigInteger

Returns

byte[]

SerializeECPoint(byte[], ECPoint)

public static byte[] SerializeECPoint(byte[] ecPointFormats, ECPoint point)

Parameters

ecPointFormats byte[]
point ECPoint

Returns

byte[]

SerializeECPublicKey(byte[], ECPublicKeyParameters)

public static byte[] SerializeECPublicKey(byte[] ecPointFormats, ECPublicKeyParameters keyParameters)

Parameters

ecPointFormats byte[]
keyParameters ECPublicKeyParameters

Returns

byte[]

ValidateECPublicKey(ECPublicKeyParameters)

public static ECPublicKeyParameters ValidateECPublicKey(ECPublicKeyParameters key)

Parameters

key ECPublicKeyParameters

Returns

ECPublicKeyParameters

WriteECExponent(int, Stream)

public static void WriteECExponent(int k, Stream output)

Parameters

k int
output Stream

WriteECFieldElement(ECFieldElement, Stream)

public static void WriteECFieldElement(ECFieldElement x, Stream output)

Parameters

x ECFieldElement
output Stream

WriteECFieldElement(int, BigInteger, Stream)

public static void WriteECFieldElement(int fieldSize, BigInteger x, Stream output)

Parameters

fieldSize int
x BigInteger
output Stream

WriteECParameter(BigInteger, Stream)

public static void WriteECParameter(BigInteger x, Stream output)

Parameters

x BigInteger
output Stream

WriteECPoint(byte[], ECPoint, Stream)

public static void WriteECPoint(byte[] ecPointFormats, ECPoint point, Stream output)

Parameters

ecPointFormats byte[]
point ECPoint
output Stream

WriteExplicitECParameters(byte[], ECDomainParameters, Stream)

public static void WriteExplicitECParameters(byte[] ecPointFormats, ECDomainParameters ecParameters, Stream output)

Parameters

ecPointFormats byte[]
ecParameters ECDomainParameters
output Stream

WriteNamedECParameters(int, Stream)

public static void WriteNamedECParameters(int namedCurve, Stream output)

Parameters

namedCurve int
output Stream