diff options
Diffstat (limited to 'keymanager')
-rw-r--r-- | keymanager/changes/bug-serializable-keys | 1 | ||||
-rw-r--r-- | keymanager/src/leap/keymanager/keys.py | 14 |
2 files changed, 15 insertions, 0 deletions
diff --git a/keymanager/changes/bug-serializable-keys b/keymanager/changes/bug-serializable-keys new file mode 100644 index 00000000..0885fd28 --- /dev/null +++ b/keymanager/changes/bug-serializable-keys @@ -0,0 +1 @@ +- encryption keys can now be serialized to json using key.get_dict() diff --git a/keymanager/src/leap/keymanager/keys.py b/keymanager/src/leap/keymanager/keys.py index 38d66b5f..34d921c5 100644 --- a/keymanager/src/leap/keymanager/keys.py +++ b/keymanager/src/leap/keymanager/keys.py @@ -258,6 +258,20 @@ class EncryptionKey(object): KEY_TAGS_KEY: [KEYMANAGER_ACTIVE_TAG], }) + def get_dict(self): + """ + :return: a serializable dict representation of this key. + :rtype: dict + """ + return { + KEY_ADDRESS_KEY: self.address, + KEY_UIDS_KEY: self.uids, + KEY_FINGERPRINT_KEY: self.fingerprint, + KEY_LENGTH_KEY: self.length, + KEY_EXPIRY_DATE_KEY: str(self.expiry_date), + KEY_DATA_KEY: self.key_data + } + def __repr__(self): """ Representation of this class |