- async def secret_key(self):
- if self._secret_key:
- return self._secret_key
- else:
- if self.database_key:
- self._secret_key = self._join_secret_key(self.database_key)
- version_data = await self._admin_collection.find_one({"_id": "version"})
- if version_data and version_data.get("serial"):
- self._secret_key = self._join_secret_key(
- b64decode(version_data["serial"])
- )
- return self._secret_key
+ def secret_key(self):
+ return self._secret_key
+
+ async def get_secret_key(self):
+ """
+ Get secret key using the database key and the serial key in the DB
+ The key is populated in the property self.secret_key
+ """
+ if self.secret_key:
+ return
+ secret_key = None
+ if self.database_key:
+ secret_key = self._join_keys(self.database_key, None)
+ version_data = await self._admin_collection.find_one({"_id": "version"})
+ if version_data and version_data.get("serial"):
+ secret_key = self._join_keys(b64decode(version_data["serial"]), secret_key)
+ self._secret_key = secret_key