persistKeys method
Returns true
on persisting keys into keystore.
Implementation
Future<bool> persistKeys(String atSign) async {
var pkamPrivateKey = await (getPkamPrivateKey(atSign)) ?? '';
var pkamPublicKey = await (getPkamPublicKey(atSign)) ?? '';
var encryptPrivateKey = await (getEncryptionPrivateKey(atSign)) ?? '';
var encryptPublicKey = await getEncryptionPublicKey(atSign);
var selfEncryptionKey = await (getSelfEncryptionKey(atSign)) ?? '';
await atClient!
.getLocalSecondary()!
.putValue(AT_PKAM_PUBLIC_KEY, pkamPublicKey);
await atClient!
.getLocalSecondary()!
.putValue(AT_PKAM_PRIVATE_KEY, pkamPrivateKey);
await atClient!
.getLocalSecondary()!
.putValue(AT_ENCRYPTION_PRIVATE_KEY, encryptPrivateKey);
var updateBuilder = UpdateVerbBuilder()
..atKey = 'publickey'
..isPublic = true
..sharedBy = atSign
..value = encryptPublicKey;
await atClient!.getLocalSecondary()!.executeVerb(updateBuilder, sync: true);
await atClient!
.getLocalSecondary()!
.putValue(AT_ENCRYPTION_SELF_KEY, selfEncryptionKey);
var result = await _getKeysFromLocalSecondary(atSign);
return result;
}