5 #ifndef _INC_cKeyExECDH_H
6 #define _INC_cKeyExECDH_H
9 #include "../Key/cKeyECPPair.h"
32 static const BYTE k_ECP_TLS_NAMED_CURVE = 3;
39 : m_bCompressed(false)
53 virtual HRESULT MakeKeyExParams(BYTE* pOut,
size_t nSizeOut,
IRandomNoise* pRandom)
override;
62 virtual HRESULT ReadKeyEx(
const BYTE* pBuffer,
const BYTE* end)
override;
93 virtual HRESULT ReadKeyPublic(
const BYTE* pBuffer,
size_t nSizeBuffer)
override;
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
Definition: cBigInteger.h:18
Definition: cBigUnsigned.h:22
Definition: cECPGroup.h:34
Definition: cECPGroupParams.h:41
Definition: cKeyBase.h:56
Definition: cKeyExBase.h:15
Definition: cKeyExECDH.h:16
cBigInteger m_z
shared secret
Definition: cKeyExECDH.h:26
UNITTEST_FRIEND(cKeyExECDH)
cECPPoint m_Q
our public value (public key)
Definition: cKeyExECDH.h:24
cECPPoint m_Vi
blinding value (for later)
Definition: cKeyExECDH.h:29
cECPGroup m_grp
elliptic curve used
Definition: cKeyExECDH.h:22
~cKeyExECDH()
Definition: cKeyExECDH.h:42
cKeyExECDH() noexcept
Definition: cKeyExECDH.h:38
bool m_bCompressed
format for point export in TLS messages. TLS_ECP_PF_COMPRESSED
Definition: cKeyExECDH.h:27
cECPPoint m_Vf
un-blinding value (for later)
Definition: cKeyExECDH.h:30
cECPPoint m_Qp
peer's public value (public key)
Definition: cKeyExECDH.h:25
UNITTEST2_PREDEF(cQuadtree)