feat: Implémentation authentification NIST SP 800-63B v3.0.8

- Ajout du service PasswordSecurityService conforme NIST SP 800-63B
- Vérification des mots de passe contre la base Have I Been Pwned
- Validation : minimum 8 caractères, maximum 64 caractères
- Pas d'exigences de composition obligatoires (conforme NIST)
- Intégration dans LoginController et UserController
- Génération de mots de passe sécurisés non compromis

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-08-15 15:31:23 +02:00
parent 206c76c7db
commit 5e255ebf5e
49 changed files with 152716 additions and 149802 deletions

View File

@@ -5,7 +5,7 @@
"packages": [
{
"name": "geosector_app",
"version": "3.0.6+306",
"version": "3.0.8+308",
"dependencies": [
"connectivity_plus",
"cupertino_icons",
@@ -170,22 +170,6 @@
"path"
]
},
{
"name": "package_info_plus",
"version": "8.3.0",
"dependencies": [
"clock",
"ffi",
"flutter",
"flutter_web_plugins",
"http",
"meta",
"package_info_plus_platform_interface",
"path",
"web",
"win32"
]
},
{
"name": "retry",
"version": "3.1.2",
@@ -435,27 +419,6 @@
"meta"
]
},
{
"name": "package_info_plus_platform_interface",
"version": "3.2.0",
"dependencies": [
"flutter",
"meta",
"plugin_platform_interface"
]
},
{
"name": "flutter_web_plugins",
"version": "0.0.0",
"dependencies": [
"characters",
"collection",
"flutter",
"material_color_utilities",
"meta",
"vector_math"
]
},
{
"name": "sky_engine",
"version": "0.0.0",
@@ -503,52 +466,42 @@
]
},
{
"name": "syncfusion_flutter_charts",
"version": "30.2.4",
"name": "package_info_plus",
"version": "8.3.1",
"dependencies": [
"flutter",
"intl",
"syncfusion_flutter_core",
"vector_math"
]
},
{
"name": "syncfusion_flutter_core",
"version": "30.2.4",
"dependencies": [
"flutter",
"vector_math"
]
},
{
"name": "connectivity_plus",
"version": "6.1.4",
"dependencies": [
"collection",
"connectivity_plus_platform_interface",
"clock",
"ffi",
"flutter",
"flutter_web_plugins",
"http",
"meta",
"nm",
"web"
"package_info_plus_platform_interface",
"path",
"web",
"win32"
]
},
{
"name": "nm",
"version": "0.5.0",
"dependencies": [
"dbus"
]
},
{
"name": "connectivity_plus_platform_interface",
"version": "2.0.1",
"name": "package_info_plus_platform_interface",
"version": "3.2.1",
"dependencies": [
"flutter",
"meta",
"plugin_platform_interface"
]
},
{
"name": "flutter_web_plugins",
"version": "0.0.0",
"dependencies": [
"characters",
"collection",
"flutter",
"material_color_utilities",
"meta",
"vector_math"
]
},
{
"name": "go_router",
"version": "16.1.0",
@@ -601,16 +554,6 @@
"image_picker_platform_interface"
]
},
{
"name": "image_picker_platform_interface",
"version": "2.10.1",
"dependencies": [
"cross_file",
"flutter",
"http",
"plugin_platform_interface"
]
},
{
"name": "typed_data",
"version": "1.4.0",
@@ -618,13 +561,6 @@
"collection"
]
},
{
"name": "plugin_platform_interface",
"version": "2.1.8",
"dependencies": [
"meta"
]
},
{
"name": "http_cache_core",
"version": "1.1.1",
@@ -744,11 +680,75 @@
"meta"
]
},
{
"name": "syncfusion_flutter_charts",
"version": "30.2.5",
"dependencies": [
"flutter",
"intl",
"syncfusion_flutter_core",
"vector_math"
]
},
{
"name": "syncfusion_flutter_core",
"version": "30.2.5",
"dependencies": [
"flutter",
"vector_math"
]
},
{
"name": "connectivity_plus",
"version": "6.1.5",
"dependencies": [
"collection",
"connectivity_plus_platform_interface",
"flutter",
"flutter_web_plugins",
"meta",
"nm",
"web"
]
},
{
"name": "nm",
"version": "0.5.0",
"dependencies": [
"dbus"
]
},
{
"name": "connectivity_plus_platform_interface",
"version": "2.0.1",
"dependencies": [
"flutter",
"meta",
"plugin_platform_interface"
]
},
{
"name": "args",
"version": "2.7.0",
"dependencies": []
},
{
"name": "image_picker_platform_interface",
"version": "2.11.0",
"dependencies": [
"cross_file",
"flutter",
"http",
"plugin_platform_interface"
]
},
{
"name": "plugin_platform_interface",
"version": "2.1.8",
"dependencies": [
"meta"
]
},
{
"name": "image_picker_macos",
"version": "0.2.1+2",
@@ -794,6 +794,14 @@
"web"
]
},
{
"name": "url_launcher_platform_interface",
"version": "2.3.2",
"dependencies": [
"flutter",
"plugin_platform_interface"
]
},
{
"name": "web",
"version": "1.1.1",
@@ -809,14 +817,6 @@
"web"
]
},
{
"name": "url_launcher_platform_interface",
"version": "2.3.2",
"dependencies": [
"flutter",
"plugin_platform_interface"
]
},
{
"name": "path_provider_windows",
"version": "2.3.0",
@@ -1075,25 +1075,6 @@
"version": "1.3.0",
"dependencies": []
},
{
"name": "mqtt5_client",
"version": "4.13.3",
"dependencies": [
"characters",
"crypto",
"event_bus",
"meta",
"path",
"typed_data",
"universal_html",
"web"
]
},
{
"name": "event_bus",
"version": "2.0.1",
"dependencies": []
},
{
"name": "shared_preferences",
"version": "2.5.3",
@@ -1200,6 +1181,25 @@
"version": "2.0.0",
"dependencies": []
},
{
"name": "mqtt5_client",
"version": "4.14.0",
"dependencies": [
"characters",
"crypto",
"event_bus",
"meta",
"path",
"typed_data",
"universal_html",
"web"
]
},
{
"name": "event_bus",
"version": "2.0.1",
"dependencies": []
},
{
"name": "platform",
"version": "3.1.6",
@@ -1213,6 +1213,25 @@
"path"
]
},
{
"name": "url_launcher_web",
"version": "2.4.1",
"dependencies": [
"flutter",
"flutter_web_plugins",
"url_launcher_platform_interface",
"web"
]
},
{
"name": "file_selector_macos",
"version": "0.9.4+3",
"dependencies": [
"cross_file",
"file_selector_platform_interface",
"flutter"
]
},
{
"name": "source_helper",
"version": "1.3.5",
@@ -1247,25 +1266,6 @@
"string_scanner"
]
},
{
"name": "url_launcher_web",
"version": "2.4.1",
"dependencies": [
"flutter",
"flutter_web_plugins",
"url_launcher_platform_interface",
"web"
]
},
{
"name": "file_selector_macos",
"version": "0.9.4+3",
"dependencies": [
"cross_file",
"file_selector_platform_interface",
"flutter"
]
},
{
"name": "logger",
"version": "2.6.1",