CakeWallet/lib/core/key_service.dart

25 lines
953 B
Dart
Raw Normal View History

2020-07-06 23:09:03 +03:00
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
2020-09-21 14:50:26 +03:00
import 'package:cake_wallet/entities/secret_store_key.dart';
import 'package:cake_wallet/entities/encrypt.dart';
2020-07-06 23:09:03 +03:00
class KeyService {
KeyService(this._secureStorage);
final FlutterSecureStorage _secureStorage;
2022-10-12 13:09:57 -04:00
Future<String> getWalletPassword({required String walletName}) async {
2020-07-06 23:09:03 +03:00
final key = generateStoreKeyFor(
key: SecretStoreKey.moneroWalletPassword, walletName: walletName);
final encodedPassword = await _secureStorage.read(key: key);
2022-10-12 13:09:57 -04:00
return decodeWalletPassword(password: encodedPassword!);
2020-07-06 23:09:03 +03:00
}
2022-10-12 13:09:57 -04:00
Future<void> saveWalletPassword({required String walletName, required String password}) async {
2020-07-06 23:09:03 +03:00
final key = generateStoreKeyFor(
key: SecretStoreKey.moneroWalletPassword, walletName: walletName);
final encodedPassword = encodeWalletPassword(password: password);
await _secureStorage.write(key: key, value: encodedPassword);
}
}