The QKD key is an elementary class of QKDNetSim. More...
#include "qkd-key.h"
Public Member Functions | |
QKDKey (uint32_t keyID, uint32_t keySize) | |
Create an empty QKD key with a new uid (as returned by getUid). More... | |
Ptr< QKDKey > | Copy (void) const |
Help function - Copy key. More... | |
uint8_t * | GetKey (void) const |
Return key in byte* which is necessery for usage in QKDCrypto module for encryption or authentication Convert key from std::String to byte*. More... | |
uint32_t | GetKeyId (void) const |
uint32_t | GetSize (void) const |
Get the size of the key. More... | |
uint32_t | GetUid (void) const |
Each QKD Key has its own unique ID. More... | |
std::string | KeyToString (void) const |
Return the raw key in std::string format. More... | |
void | SetKeyId (uint32_t) |
void | SetSize (uint32_t) |
Set the size of the key. More... | |
![]() | |
Object () | |
Constructor. More... | |
virtual | ~Object () |
Destructor. More... | |
void | AggregateObject (Ptr< Object > other) |
Aggregate two Objects together. More... | |
void | Dispose (void) |
Dispose of this Object. More... | |
AggregateIterator | GetAggregateIterator (void) const |
Get an iterator to the Objects aggregated to this one. More... | |
virtual TypeId | GetInstanceTypeId (void) const |
Get the most derived TypeId for this Object. More... | |
template<typename T > | |
Ptr< T > | GetObject (void) const |
Get a pointer to the requested aggregated Object. More... | |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
Get a pointer to the requested aggregated Object by TypeId. More... | |
void | Initialize (void) |
Invoke DoInitialize on all Objects aggregated to this one. More... | |
bool | IsInitialized (void) const |
Check if the object has been initialized. More... | |
![]() | |
SimpleRefCount () | |
Default constructor. More... | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment operator. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
![]() | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
Get the value of an attribute, raising fatal errors if unsuccessful. More... | |
bool | GetAttributeFailSafe (std::string name, AttributeValue &value) const |
Get the value of an attribute without raising erros. More... | |
void | SetAttribute (std::string name, const AttributeValue &value) |
Set a single attribute, raising fatal errors if unsuccessful. More... | |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
Set a single attribute without raising errors. More... | |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
Connect a TraceSource to a Callback with a context. More... | |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
Connect a TraceSource to a Callback without a context. More... | |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected with a context. More... | |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected without a context. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Get the TypeId. More... | |
![]() | |
static TypeId | GetTypeId (void) |
Register this type. More... | |
![]() | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Private Attributes | |
uint32_t | m_id |
std::string | m_key |
uint32_t | m_size |
Time | m_timestamp |
Static Private Attributes | |
static uint32_t | m_globalUid = 0 |
Additional Inherited Members | |
![]() | |
Object (const Object &o) | |
Copy an Object. More... | |
virtual void | DoDispose (void) |
Destructor implementation. More... | |
virtual void | DoInitialize (void) |
Initialize() implementation. More... | |
virtual void | NotifyNewAggregate (void) |
Notify all Objects aggregated to this one of a new Object being aggregated. More... | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
Complete construction of ObjectBase; invoked by derived classes. More... | |
virtual void | NotifyConstructionCompleted (void) |
Notifier called once the ObjectBase is fully constructed. More... | |
![]() | |
static TypeId | GetObjectIid (void) |
Ensure the TypeId for ObjectBase gets fully configured to anchor the inheritance tree properly. More... | |
The QKD key is an elementary class of QKDNetSim.
Introspection did not find any typical Config paths.
It is used to describe the key that is established in the QKD process. In QKD process, keys are stored as blocks (blocks of 1024, 2048, 4096 bits or other). Later, some part of the block is taken and used for encryption, while other remains in the buffer. Operations regarding QKD Key management (merge, split and other) are under construction.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Size of this type is 80 bytes (on a 64-bit architecture).
ns3::QKDKey::QKDKey | ( | uint32_t | keyID, |
uint32_t | keySize | ||
) |
Create an empty QKD key with a new uid (as returned by getUid).
Definition at line 53 of file qkd-key.cc.
References ns3::Time::GetMilliSeconds(), m_globalUid, m_id, m_key, m_timestamp, ns3::Simulator::Now(), and NS_LOG_FUNCTION.
Referenced by Copy().
Help function - Copy key.
Definition at line 45 of file qkd-key.cc.
References QKDKey().
uint8_t * ns3::QKDKey::GetKey | ( | void | ) | const |
Return key in byte* which is necessery for usage in QKDCrypto module for encryption or authentication Convert key from std::String to byte*.
Definition at line 105 of file qkd-key.cc.
References m_globalUid, m_key, and NS_LOG_FUNCTION.
uint32_t ns3::QKDKey::GetKeyId | ( | void | ) | const |
Definition at line 66 of file qkd-key.cc.
References m_id.
uint32_t ns3::QKDKey::GetSize | ( | void | ) | const |
Get the size of the key.
Definition at line 85 of file qkd-key.cc.
References m_globalUid, m_size, and NS_LOG_FUNCTION.
|
static |
Get the TypeId.
Definition at line 34 of file qkd-key.cc.
References m_globalUid, and ns3::TypeId::SetParent().
uint32_t ns3::QKDKey::GetUid | ( | void | ) | const |
Each QKD Key has its own unique ID.
Definition at line 78 of file qkd-key.cc.
References m_globalUid, and NS_LOG_FUNCTION.
std::string ns3::QKDKey::KeyToString | ( | void | ) | const |
Return the raw key in std::string format.
Definition at line 99 of file qkd-key.cc.
References m_key.
void ns3::QKDKey::SetKeyId | ( | uint32_t | value | ) |
Definition at line 72 of file qkd-key.cc.
References m_id.
void ns3::QKDKey::SetSize | ( | uint32_t | value | ) |
Set the size of the key.
uint32_t |
Definition at line 92 of file qkd-key.cc.
References m_globalUid, m_size, and NS_LOG_FUNCTION.
|
staticprivate |
|
private |
Definition at line 111 of file qkd-key.h.
Referenced by GetKeyId(), QKDKey(), and SetKeyId().
|
private |
Definition at line 114 of file qkd-key.h.
Referenced by GetKey(), KeyToString(), and QKDKey().
|
private |
|
private |