mirror of
https://github.com/twonlyapp/twonly-app.git
synced 2026-01-15 14:48:41 +00:00
trying to clear the memory
This commit is contained in:
parent
4988242901
commit
69231282d0
3 changed files with 13 additions and 6 deletions
|
|
@ -5,8 +5,10 @@ part 'signal_identity.g.dart';
|
||||||
|
|
||||||
@JsonSerializable()
|
@JsonSerializable()
|
||||||
class SignalIdentity {
|
class SignalIdentity {
|
||||||
const SignalIdentity(
|
const SignalIdentity({
|
||||||
{required this.identityKeyPairU8List, required this.registrationId});
|
required this.identityKeyPairU8List,
|
||||||
|
required this.registrationId,
|
||||||
|
});
|
||||||
|
|
||||||
final int registrationId;
|
final int registrationId;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -356,10 +356,11 @@ class ApiService {
|
||||||
|
|
||||||
final challenge = result.value.authchallenge;
|
final challenge = result.value.authchallenge;
|
||||||
|
|
||||||
final privKey = (await getSignalIdentityKeyPair())?.getPrivateKey();
|
var privKey = (await getSignalIdentityKeyPair())?.getPrivateKey();
|
||||||
if (privKey == null) return;
|
if (privKey == null) return;
|
||||||
final random = getRandomUint8List(32);
|
final random = getRandomUint8List(32);
|
||||||
final signature = sign(privKey.serialize(), challenge, random);
|
final signature = sign(privKey.serialize(), challenge, random);
|
||||||
|
privKey = null;
|
||||||
|
|
||||||
final getAuthToken = Handshake_GetAuthToken()
|
final getAuthToken = Handshake_GetAuthToken()
|
||||||
..response = signature
|
..response = signature
|
||||||
|
|
|
||||||
|
|
@ -72,12 +72,14 @@ Future<List<PreKeyRecord>> signalGetPreKeys() async {
|
||||||
Future<SignalIdentity?> getSignalIdentity() async {
|
Future<SignalIdentity?> getSignalIdentity() async {
|
||||||
try {
|
try {
|
||||||
final storage = FlutterSecureStorage();
|
final storage = FlutterSecureStorage();
|
||||||
final signalIdentityJson =
|
var signalIdentityJson =
|
||||||
await storage.read(key: SecureStorageKeys.signalIdentity);
|
await storage.read(key: SecureStorageKeys.signalIdentity);
|
||||||
if (signalIdentityJson == null) {
|
if (signalIdentityJson == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return SignalIdentity.fromJson(jsonDecode(signalIdentityJson));
|
final decoded = jsonDecode(signalIdentityJson);
|
||||||
|
signalIdentityJson = null;
|
||||||
|
return SignalIdentity.fromJson(decoded);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
Log.error("could not load signal identity: $e");
|
Log.error("could not load signal identity: $e");
|
||||||
return null;
|
return null;
|
||||||
|
|
@ -118,7 +120,7 @@ Future createIfNotExistsSignalIdentity() async {
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<SignedPreKeyRecord?> _getNewSignalSignedPreKey() async {
|
Future<SignedPreKeyRecord?> _getNewSignalSignedPreKey() async {
|
||||||
final identityKeyPair = await getSignalIdentityKeyPair();
|
var identityKeyPair = await getSignalIdentityKeyPair();
|
||||||
if (identityKeyPair == null) return null;
|
if (identityKeyPair == null) return null;
|
||||||
final signalStore = await getSignalStore();
|
final signalStore = await getSignalStore();
|
||||||
if (signalStore == null) return null;
|
if (signalStore == null) return null;
|
||||||
|
|
@ -130,6 +132,8 @@ Future<SignedPreKeyRecord?> _getNewSignalSignedPreKey() async {
|
||||||
signedPreKeyId,
|
signedPreKeyId,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
identityKeyPair = null;
|
||||||
|
|
||||||
await signalStore.storeSignedPreKey(signedPreKeyId, signedPreKey);
|
await signalStore.storeSignedPreKey(signedPreKeyId, signedPreKey);
|
||||||
|
|
||||||
return signedPreKey;
|
return signedPreKey;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue