From f12bae5a0c2de194ce41685b937ec3cffb5c9745 Mon Sep 17 00:00:00 2001 From: AlaaElattar Date: Thu, 31 Oct 2024 08:41:09 +0300 Subject: [PATCH 1/3] check on mnemonic when confirming sed --- app/lib/screens/mobile_registration_screen.dart | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/lib/screens/mobile_registration_screen.dart b/app/lib/screens/mobile_registration_screen.dart index e9fd7e0c0..8e54198ee 100644 --- a/app/lib/screens/mobile_registration_screen.dart +++ b/app/lib/screens/mobile_registration_screen.dart @@ -147,8 +147,16 @@ class _MobileRegistrationScreenState extends State { seedConfirmationController.text = seedCheckValue; }); + List enteredWords = seedCheckValue.split(' '); + if(enteredWords.length != 3 || enteredWords.toSet().length != 3){ + setState((){ + errorStepperText = 'Please enter three different words.'; + }); + return; + } + bool seedWordConfirmationValidation = validateSeedWords( - _registrationData.phrase, seedConfirmationController.text); + _registrationData.phrase, seedCheckValue); if (seedWordConfirmationValidation) { setState(() { From 9e9c4574ec0e0b86702bebefde8e417892669aaf Mon Sep 17 00:00:00 2001 From: AlaaElattar Date: Tue, 19 Nov 2024 12:20:55 +0200 Subject: [PATCH 2/3] move validation logic inside validateSeedWords --- app/lib/screens/mobile_registration_screen.dart | 8 -------- app/lib/services/tools_service.dart | 3 +++ 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/app/lib/screens/mobile_registration_screen.dart b/app/lib/screens/mobile_registration_screen.dart index 8e54198ee..72b1f3339 100644 --- a/app/lib/screens/mobile_registration_screen.dart +++ b/app/lib/screens/mobile_registration_screen.dart @@ -147,14 +147,6 @@ class _MobileRegistrationScreenState extends State { seedConfirmationController.text = seedCheckValue; }); - List enteredWords = seedCheckValue.split(' '); - if(enteredWords.length != 3 || enteredWords.toSet().length != 3){ - setState((){ - errorStepperText = 'Please enter three different words.'; - }); - return; - } - bool seedWordConfirmationValidation = validateSeedWords( _registrationData.phrase, seedCheckValue); diff --git a/app/lib/services/tools_service.dart b/app/lib/services/tools_service.dart index 84ad1aa32..1ff87cfea 100644 --- a/app/lib/services/tools_service.dart +++ b/app/lib/services/tools_service.dart @@ -30,6 +30,9 @@ bool validateSeedWords(String seed, String confirmationWords) { // if length is not correct return already here if (words.length != 3) return false; + if (words.length < 3 || words.toSet().length < 3) { + return false; + } for (final String word in words) { // check every word in list against the seed From 5efec30f782cd12bb44918738c68e0647b849358 Mon Sep 17 00:00:00 2001 From: AlaaElattar Date: Sun, 24 Nov 2024 13:29:02 +0200 Subject: [PATCH 3/3] fix condition --- app/lib/services/tools_service.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/lib/services/tools_service.dart b/app/lib/services/tools_service.dart index 1ff87cfea..a3c4c3095 100644 --- a/app/lib/services/tools_service.dart +++ b/app/lib/services/tools_service.dart @@ -29,7 +29,7 @@ bool validateSeedWords(String seed, String confirmationWords) { List seedWords = seed.split(' '); // if length is not correct return already here - if (words.length != 3) return false; + if (words.length < 3) return false; if (words.length < 3 || words.toSet().length < 3) { return false; }