:::info
:bulb: Ce document n'a pas de caractère officiel ; il est créé dans le but de mettre en place un <ins>**brouillon**</ins> du projet. Il contient les différentes fonctionnalités envisageables pour notre entreprise, les avantages et inconvénients des différentes options... Prochainement nous passerons sur document crypté.
:::
# I. Informations diverses :
#### :small_blue_diamond: **Nom entreprise:...**
#### :small_blue_diamond: **A rajouter..**
# II. Idées :
## OTP
## OTP basé sur la reconnaissance biométrique effectuée par une intelligence artificielle
La proposition consiste à créer un OTP basé sur la reconnaissance biométrique.
<ins>**Enregistrement biométrique :**</ins> L'utilisateur s'inscrit initialement en fournissant ses données biométriques: la reconnaissance faciale. S'il est déja incrist, il sera en mesure de se rendre sur le panel du site afin de d'initier cette OTP.
<ins>**Génération de l'OTP :**</ins> L'utilisateur est invité à effectuer une validation biométrique en utilisant la mêm modalité biométrique enregistrée.
<ins>**Comparaison et vérification biométrique :**</ins> Le système compare la donnée biométrique fournie par l'utilisateur avec celle enregistrée lors de l'étape d'enregistrement. Si la caractéristique biométrique corresponde, l'OTP est validé et l'utilisateur est autorisé à accéder à son compte.
### Reconnaissance biométrique
#### Type de reconnaissance faciale à mettre en place
> Les entreprises seront en mesure de chosir le type de reconnaissance facial à initier sur leur infrastructures.
#### **1) SecurityAdvanced**
>Vérification SELFIE photo
À chaque connexion, l'utilisateur devra s'authentifier en utilisant la vérification en temps réel par selfie. Je tiens à préciser que cette méthode n'a rien à voir avec le Face ID d'Apple.
#### **2) SecurityExpert**
>Vérification SELFIE vidéo
A chaque connexion, l'utilisateur devra s'authentifier en utilisant la vérification en temps réel par vidéo selfie.*.
> Vérification 'classique'
A chaque connexion, l'utilisateur devra s'authentifier en utilisant la vérification faciale en temps réel. La détection se fera de manière similaire à Face ID, sans nécessiter l'affichage de l'image du visage comme dans les exemples précédents.
:::info
Les fonctionnalités 1 à 2 fonctionnent de cette manière :

La fonctionnalité 3 procède de la même manière que FACE ID, c'est-à-dire qu'elle effectue la vérification sans afficher l'image de la personne.
:::
## OPTIONS
Substitue l'authentification basée sur les mots de passe (Passwordless) ou ajoute une couche d'authentification supplémentaire.
- SecurityAdvanced (photo)
- Si pas de webcam
- Envoie lien classique ou QR code classique
- QR code sécurisé afin de prouver que la personne faisant la requete est bien la proprietaire du compte
- Basculement vers notre site WEB ou non
- SecurityExpert (vidéo)
- Si pas de webcam
- Envoie lien classique ou QR code classique
- QR code sécurisé afin de prouver que la personne faisant la requete est bien la proprietaire du compte
- Basculement vers notre site WEB ou non
- OTP APP (QR CODE)
1. Enregistrement de toutes les tentatives d'authentification, réussies ou échouées, pour une analyse ultérieure.
2. Possibilité d'envoyer des alertes en temps réel en cas de comportement suspect.
3. Configuration de notifications pour avertir les utilisateurs lorsqu'un OTP est généré ou lorsqu'une tentative d'authentification échoue.
### INCONVENIENTS
<ins>Problèmes généraux appliqués aux 5 fonctionnalitées :</ins>
**1 - Non présence de caméra sur PC/mobile.**
Solution :
L'utilisateur aura la possibilité d'effectuer la vérification sur un autre appareil grâce à l'apparition d'un QR CODE (numéro 1) sur l'appareil qui ne possède pas de webcam. Ce QR code contiendra le lien nécessaire pour poursuivre la vérification. En alternative, une autre option consistera à afficher un champ de saisie pour un e-mail, où l'utilisateur recevra le lien pour continuer le processus.
Une fois que l'utilisateur accède au lien, il pourra effectuer sa vérification selfie. Toutefois, une préoccupation majeure est d'empêcher le partage non autorisé du lien. Il est possible qu'un hacker envoie le lien à la victime en se faisant passer pour un conseiller, puis accède ainsi au compte frauduleusement. Dans notre système, le lien peut en effet être partagé, mais une mesure de sécurité supplémentaire sera mise en place.
L'utilisateur devra effectuer une étape de vérification supplémentaire en enregistrant une vidéo en DIRECT (numéro 2) du QR code spécial. Ce QR code spécial est composé de 4 faces, qui tournent chaque seconde. Chaque face est valide pendant 4 secondes, à partir de la 5 ème seconde , le QR CODE 1 n'est plus valide... (voire l'exemple)
Pour se connecter sur l'appareil d'origine, l'utilisateur devra scanner consécutivement les 4 QR codes affichés par la séquence du QR code spécial. Cette méthode assure une vérification en temps réel et renforce la sécurité de l'accès au compte, afin d'éviter que le QR CODE soit partagé sous format de capture photo ou vidéo."
Exemple :
| Seconde(s) | Face(s) présente(s) |
|------------|-----------------------------------------------------------|
| 1s | 1 (valide) |
| 2s | 1 (valide) ; 2 (valide) |
| 3s | 1 (valide) ; 2 (valide) ; 3 (valide) |
| 4s | 1 (valide) ; 2 (valide) ; 3 (valide) ; 4 (valide) |
| 5s | <span style="color:red"> 1 (invalide)</span> ; 2 (valide) ; 3 (valide) ; 4 (valide) ; 1 (valide) |
| 6s | <span style="color:red">1 (invalide) ; 2 (invalide) </span> ; 3 (valide) ; 4 (valide) ; 1 (valide) ; 2 (valide) |
| 7s | <span style="color:red">1 (invalide) ; 2 (invalide) ; 3 (invalide) ;</span> 4 (valide) ; 1 (valide) ; 2 (valide) ; 3 (valide) |
| 8s | <span style="color:red">1 (invalide) ; 2 (invalide) ; 3 (invalide) ; 4 (invalide)</span> ; 1 (valide) ; 2 (valide) ; 3 (valide) ; 4 (valide) |
...
Cependant, un autre problème apparaît : un escroc ou hacker pourrait aisément enregistrer l'écran avec un deuxième appareil et le diffusé sur un appareil de la victime. De cette manière, le hacker pourrait se faire passer à nouveau pour un conseiller légitime et inciter la victime à valider un QR code à distance. Pour remédier à cette situation, une solution consisterait à mettre en place une intelligence artificielle capable de déterminer si l'utilisateur filmer véritablement son propre écran ou s'il film son écran qui retransmet les images capturées par le hacker.
> On oblige l'utilisateur de filmer les bordures de son appareils pour valider le QR CODE.
L'ia sera en mesure de détecter les anomalies suivantes :
- Les tailles des écrans en fonction de la taille du QR CODE, et étudier la cohérence.
- Détection double bord de téléphone : Repérer les bords de deux appareils : l'appareil du hacker (qui film le QR CODE) et l'appareil de la victime (qui filme l'écran qui diffuse la vidéo du hacker). Le but est d'identifier l'apparition possible de deux bords d'écran. -> **Détection de contours améliorée**
- Détection qualité de l'image
## OTP basé sur la carte NFC
TRES SPECIFIQUE A VOIRE PLUS TARD

## Technologies requises
### Sécurités
- **Verification authenticité webcam**
- **Verification intégrité vidéo/photo/son**
- **JSON Web Tokens** (exemple : jsonwebtoken)
- **Sessions** (exemple : express-session lors de l'utilisation de EXPRESS.JS)
- **Gestion des cookies** (cookie-parser lors de l'utilisation de EXPRESS.JS)
- **CSRF** éviter modification requete (exemple : csurf lors de l'utilisation de EXPRESS.JS)
- **Chiffrement et hachage** (bcrypt & crypto)
- **Authentification** (Passport.js, OAuth 2.0, OpenID )
- **XSS** (exemple : helmet)
- **Filtrage et nettoyage des données pour prévenir les attaques XSS** (exemple : xss-filters)
- **Injection SQL** (exemple : knex)
- **Validation des entrée**
- **Pare-feu, analyse de log lié spécifiquement au appplication utilisant node JS** : (NodeArmor)
- **Protection contre brute force** (exemple : node-rate-limiter-flexible )
- **Mot de passe robuste vérifié par l'OWASP** (exemple : de-owasp-password-strength-test)
- **Protection contre les attaques de pollution des paramètres HTTP** (exemmple: hpp)
- **Nettoyage des données HTML** (exemple : sanitize-html)
- **Configuration de l'en-tête HTTP "X-Download-Options"** (exemple :: helmet-ienoopen)
- **Configuration de l'en-tête HTTP "X-Content-Type-Options" pour prévenir les attaques MIME sniffing** (exemple : helmet-no-sniff )
- **Gestion des stratégies de politique de sécurité du contenu (Content Security Policy)** (exemple : node-csp )
- **Bibliothèque de gestion des traductions pour prévenir les attaques d'injection de contenu** (exemple : i18n)
- **Contrôle de la prélecture DNS** (Exemple : helmet-dns-prefetch-control )
- **Bibliothèque de validation de données** (exemple : validator.js)
- **Middleware pour ralentir les requêtes excessives afin de prévenir les attaques par saturation de bande passante** (exemple express-slow-down)
- **Gestion sécurisée des en-têtes Content-Disposition** (exemple : content-disposition)
- **Configuration des stratégies de contrôle de l'accès cross-domain** (exemple : helmet-crossdomain)
- **Configuration des stratégies de contrôle** (exemple : helmet-referrer-policy)
- **Configuration des stratégies de préchargement de la liste de broches de clé publique (HPKP) pour renforcer la sécurité du certificat SSL (exemple : helmet-hpkp)**
- **Génération de UUID** (exemple : node-uuid)
- **Gestion sécurisée des téléchargements de fichiers** (exemple : express-fileupload )
- **Utilisation ELA** (éviter photoshop)
- **Gestion des erreurs** (éviter exemple affiche message dangeureux lié à un problème : message généric en gros)
- **Redirection automatique du trafic HTTP vers HTTPS** exemple (express-sslify)
- **Activation de la politique de sécurité de transport strict (HTTP Strict Transport Security) pour forcer les connexions HTTPS** (hsts)
- **Suppression des en-têtes d'identification du serveur pour masquer les informations sensibles** (exemple : helmet-hide-powered-by)
- **Configuration sécurisée des en-têtes HTTP** (exemple : secure-headers)
- **Configuration de la politique de sécurité de transport strict (HSTS) pour spécifier la durée de validité de la politique** exemple (helmet-set-hsts)
- **Tunnel VPN**
- **Proxy**
**Sécurité des entetes :**
D'accord, voici la liste complète avec les titres en gras et les correspondances avec les bibliothèques Node.js pour chaque en-tête :
- **X-XSS-Protection** : Active le filtre XSS du navigateur pour prévenir les attaques de script intersite. [helmet](https://www.npmjs.com/package/helmet)
- **X-Content-Type-Options** : Empêche le navigateur de deviner le type de contenu, réduisant ainsi les risques de certaines attaques. [helmet](https://www.npmjs.com/package/helmet)
- **Content-Security-Policy (CSP)** : Définit une politique de sécurité du contenu pour contrôler les ressources chargées sur votre site. [helmet-csp](https://www.npmjs.com/package/helmet-csp)
- **Strict-Transport-Security (HSTS)** : Indique au navigateur d'utiliser toujours HTTPS pour les futures connexions avec votre site. [helmet](https://www.npmjs.com/package/helmet)
- **X-Frame-Options** : Contrôle si votre site peut être inclus dans un cadre (frame) ou un iframe. [helmet](https://www.npmjs.com/package/helmet)
- **Referrer-Policy** : Contrôle les informations de référence (referrer) envoyées par le navigateur lors de la navigation vers une autre page. [helmet](https://www.npmjs.com/package/helmet)
- **X-Permitted-Cross-Domain-Policies** : Contrôle la politique de domaine croisé pour les fichiers Adobe Flash. [helmet-crossdomain](https://www.npmjs.com/package/helmet-crossdomain)
- **Content-Disposition** : Contrôle le comportement de traitement des fichiers téléchargés. [content-disposition](https://www.npmjs.com/package/content-disposition)
- **Cache-Control** : Spécifie comment les réponses HTTP doivent être mises en cache par le navigateur et les proxies intermédiaires. [http-cache-control](https://www.npmjs.com/package/http-cache-control)
- **Public-Key-Pins (HPKP)** : Spécifie une liste de broches de clé publique pour renforcer la sécurité des connexions SSL/TLS. [hpkp](https://www.npmjs.com/package/hpkp)
- **X-Download-Options** : Contrôle le comportement de téléchargement des fichiers dans Internet Explorer. [helmet](https://www.npmjs.com/package/helmet)
- **Feature-Policy** : Contrôle les fonctionnalités spécifiques autorisées sur une page web. [feature-policy](https://www.npmjs.com/package/feature-policy)
- **X-Content-Duration** : Spécifie la durée de vie maximale d'une ressource dans le cache du navigateur. [helmet](https://www.npmjs.com/package/helmet)
- **X-Robots-Tag** : Contrôle l'indexation des moteurs de recherche et le partage de contenu. [helmet](https://www.npmjs.com/package/helmet)
- **Expect-CT** : Enforce la politique de transparence de la conformité des certificats (Certificate Transparency). [helmet](https://www.npmjs.com/package/helmet)
- **X-DNS-Prefetch-Control** : Contrôle la prélecture DNS pour limiter les fuites d'informations. [helmet-dns-prefetch-control](https://www.npmjs.com/package/helmet-dns-prefetch-control)
- **X-WebKit-CSP** : Contrôle la politique de sécurité du contenu spécifique à WebKit, utilisé par certains navigateurs. [helmet](https://www.npmjs.com/package/helmet)
- **X-Content-Security-Policy** : Contrôle la politique de sécurité du contenu spécifique à certaines versions obsolètes de navigateurs. [helmet](https://www.npmjs.com/package/helmet)
- **Public-Key-Pins-Report-Only** : Rapporte uniquement les violations de la politique de broches de clé publique sans les forcer. [hpkp-report-only](https://www.npmjs.com/package/hpkp-report-only)
- **Content-Security-Policy (CSP)** : Définit une politique de sécurité du contenu pour contrôler les ressources chargées sur votre site. [helmet-csp](https://www.npmjs.com/package/helmet-csp)
- **Strict-Transport-Security (HSTS)** : Indique au navigateur d'utiliser toujours HTTPS pour les futures connexions avec votre site. [helmet](https://www.npmjs.com/package/helmet)
- **Cache-Control** : Spécifie comment les réponses HTTP doivent être mises en cache par le navigateur et les proxies intermédiaires. [http-cache-control](https://www.npmjs.com/package/http-cache-control)
- **Public-Key-Pins (HPKP)** : Spécifie une liste de broches de clé publique pour renforcer la sécurité des connexions SSL/TLS. [hpkp](https://www.npmjs.com/package/hpkp)
- **Expect-CT** : Enforce la politique de transparence de la conformité des certificats (Certificate Transparency). [helmet](https://www.npmjs.com/package/helmet)
- **X-XSS-Protection** : Active le filtre XSS du navigateur pour prévenir les attaques de script intersite. [helmet](https://www.npmjs.com/package/helmet)
- **X-Content-Type-Options** : Empêche le navigateur de deviner le type de contenu, réduisant ainsi les risques de certaines attaques. [helmet](https://www.npmjs.com/package/helmet)
- **Content-Security-Policy (CSP)** : Définit une politique de sécurité du contenu pour contrôler les ressources chargées sur votre site. [helmet-csp](https://www.npmjs.com/package/helmet-csp)
- **Strict-Transport-Security (HSTS)** : Indique au navigateur d'utiliser toujours HTTPS pour les futures connexions avec votre site. [helmet](https://www.npmjs.com/package/helmet)
- **X-Frame-Options** : Contrôle si votre site peut être inclus dans un cadre (frame) ou un iframe. [helmet](https://www.npmjs.com/package/helmet)
- **Referrer-Policy** : Contrôle les informations de référence (referrer) envoyées par le navigateur lors de la navigation vers une autre page. [helmet](https://www.npmjs.com/package/helmet)
- **X-Permitted-Cross-Domain-Policies** : Contrôle la politique de domaine croisé pour les fichiers Adobe Flash. [helmet-crossdomain](https://www.npmjs.com/package/helmet-crossdomain)
- **Content-Disposition** : Contrôle le comportement de traitement des fichiers téléchargés. [content-disposition](https://www.npmjs.com/package/content-disposition)
- **Cache-Control** : Spécifie comment les réponses HTTP doivent être mises en cache par le navigateur et les proxies intermédiaires. [http-cache-control](https://www.npmjs.com/package/http-cache-control)
- **Public-Key-Pins (HPKP)** : Spécifie une liste de broches de clé publique pour renforcer la sécurité des connexions SSL/TLS. [hpkp](https://www.npmjs.com/package/hpkp)
- **X-Download-Options** : Contrôle le comportement de téléchargement des fichiers dans Internet Explorer. [helmet](https://www.npmjs.com/package/helmet)
- **Feature-Policy** : Contrôle les fonctionnalités spécifiques autorisées sur une page web. [feature-policy](https://www.npmjs.com/package/feature-policy)
- **X-Content-Duration** : Spécifie la durée de vie maximale d'une ressource dans le cache du navigateur. [helmet](https://www.npmjs.com/package/helmet)
- **X-Robots-Tag** : Contrôle l'indexation des moteurs de recherche et le partage de contenu. [helmet](https://www.npmjs.com/package/helmet)
- **Expect-CT** : Enforce la politique de transparence de la conformité des certificats (Certificate Transparency). [helmet](https://www.npmjs.com/package/helmet)
- **X-DNS-Prefetch-Control** : Contrôle la prélecture DNS pour limiter les fuites d'informations. [helmet-dns-prefetch-control](https://www.npmjs.com/package/helmet-dns-prefetch-control)
- **X-WebKit-CSP** : Contrôle la politique de sécurité du contenu spécifique à WebKit, utilisé par certains navigateurs. [helmet](https://www.npmjs.com/package/helmet)
- **X-Content-Security-Policy** : Contrôle la politique de sécurité du contenu spécifique à certaines versions obsolètes de navigateurs. [helmet](https://www.npmjs.com/package/helmet)
**Sécurité du serveur :**
- Configurez la journalisation centralisée : **ELK Stack**
- Mécanismes de prévention d'intrusion (IPS) :**Snort,Suricata**
- Système de détection d'anomalies : **OSSEC, Prelude**
- Limitez accès réseau (ACL)
- Contrôle d'accès (ACL) au niveau du système de fichiers
- prévention d'intrusion au niveau de l'hôte (HIPS) : **OSSEC ou Samhain**
- Analyse de vulnérabilités : **OpenVAS,Nessus**
- Utilisez des conteneurs ou des environnements d'exécution isolés : **Docker**
- Surveillance d'intégrité : **AIDE ou ossec**
- Configurez une liste blanche d'exécution : **AppArmor**
- Utilisez un pare-feu d'application web (WAF) : **ModSecurity**
- Utilisez des outils de détection d'intrusion au niveau du réseau (NIDS)
- Utilisez des systèmes de prévention de fuites de données (DLP)
- Effectuez sauvegardes régulières
- protection contre les logiciels malveillants : **RKHunter, ClamAV**
- pare-feu de nouvelle génération (NGFW) : **Zscaler Cloud Firewall : pour le cloud, Cisco Firepower, Palo Alto Networks Next-Generation Firewall, Fortinet FortiGate, Sophos XG Firewall**
- brute force : **Fail2Ban**
- Attaque DDOS : service de protection contre les attaques DDoS : **Akamai** ; mise en place de CDN ; limitez les connexions par la même IP ; Activez le routage basé sur le flux (FBR)
**Sécurité Serveur WEB nginx**
- **Activez la réécriture d'URL :** Utilisez la réécriture d'URL pour masquer les technologies utilisées (comme les versions de logiciels) et améliorer la sécurité en limitant les informations exposées aux attaquants potentiels.
- **Utilisez des listes de contrôle d'accès (ACL) Nginx**
- **Activez la protection contre les répertoires sensibles : Configurez Nginx pour interdire l'accès à certains répertoires sensibles, tels que les fichiers de configuration, les journaux et les répertoires de données sensibles.**
- **Activez la journalisation sécurisée : Configurez Nginx pour enregistrer les journaux dans un emplacement sécurisé et définissez des politiques de conservation appropriées pour les journaux afin de faciliter la détection des activités suspectes et l'analyse des incidents de sécurité.**
- **Activez la protection contre les attaques par force brute :** ngx_http_auth_basic_module
- **Utilisez une stratégie de limitation de la bande passante : Limitez la bande passante disponible pour certaines requêtes ou adresses IP pour atténuer les attaques volumétriques et les attaques par déni de service distribué (DDoS).**
lien : https://cheatsheetseries.owasp.org/cheatsheets/Nodejs_Security_Cheat_Sheet.html
- **Modules de sécurité Nginx**:
1. ngx_http_access_module
2. ngx_http_addition_module
3. ngx_http_auth_basic_module
4. ngx_http_auth_jwt_module
5. ngx_http_auth_request_module
6. ngx_http_autoindex_module
7. ngx_http_browser_module
8. ngx_http_cache_purge_module
9. ngx_http_charset_module
10. ngx_http_concat_module
11. ngx_http_core_module
12. ngx_http_dav_module
13. ngx_http_degradation_module
14. ngx_http_echo_module
15. ngx_http_empty_gif_module
16. ngx_http_fancyindex_module
17. ngx_http_fastcgi_module
18. ngx_http_flv_module
19. ngx_http_geoip_module
20. ngx_http_geoip2_module
21. ngx_http_gunzip_module
22. ngx_http_gzip_module
23. ngx_http_headers_module
24. ngx_http_image_filter_module
25. ngx_http_js_module
26. ngx_http_limit_conn_module
27. ngx_http_limit_req_module
28. ngx_http_lua_module
29. ngx_http_map_module
30. ngx_http_memcached_module
31. ngx_http_mirror_module
32. ngx_http_mp4_module
33. ngx_http_perl_module
34. ngx_http_proxy_module
35. ngx_http_random_index_module
36. ngx_http_realip_module
37. ngx_http_referer_module
38. ngx_http_rewrite_module
39. ngx_http_scgi_module
40. ngx_http_secure_link_module
41. ngx_http_slice_module
42. ngx_http_split_clients_module
43. ngx_http_ssi_module
44. ngx_http_ssl_module
45. ngx_http_status_module
46. ngx_http_stub_status_module
47. ngx_http_sub_module
48. ngx_http_upload_module
49. ngx_http_upstream_hash_module
50. ngx_http_upstream_ip_hash_module
51. ngx_http_upstream_keepalive_module
52. ngx_http_upstream_least_conn_module
53. ngx_http_upstream_random_module
54. ngx_http_upstream_zone_module
55. ngx_http_userid_module
56. ngx_http_uwsgi_module
57. ngx_http_v2_module
58. ngx_http_xslt_module
59. ngx_mail_auth_http_module
60. ngx_mail_core_module
61. ngx_mail_imap_module
62. ngx_mail_pop3_module
63. ngx_mail_smtp_module
64. ngx_stream_access_module
65. ngx_stream_core_module
66. ngx_stream_geoip_module
67. ngx_stream_js_module
68. ngx_stream_limit_conn_module
69. ngx_stream_log_module
70. ngx_stream_map_module
71. ngx_stream_realip_module
72. ngx_stream_return_module
73. ngx_stream_split_clients_module
74. ngx_stream_ssl_module
75. ngx_stream_ssl_preread_module
76. ngx_stream_upstream_hash_module
77. ngx_stream_upstream_least_conn_module
78. ngx_stream_upstream_random_module
79. ngx_stream_upstream_zone_module
80. ngx_stream_geo_module (module tiers)
81. ngx_stream_realip2_module (module tiers)
82. ngx_stream_reqstat_module (module tiers)
83. ngx_stream_ssl_preread_module (module tiers)
### DETECTEUR DE VISAGE
#### Présentation
**Deep Learning in Computer Vision** est la tecnologie mis en place pour l'analyse, traitement des images....
L'analyse en temps réel de la webcam avec le Deep Learning est également considérée comme de la "vision par ordinateur". La vision par ordinateur englobe l'ensemble des techniques et des méthodes permettant aux ordinateurs d'interpréter et de comprendre les informations visuelles provenant de sources telles que des images, des vidéos ou **des flux de caméras en temps réel.**
https://www.udemy.com/courses/search/?src=ukw&q=Deep+Learning+in+Computer+Vision
<ins>Voici les technologies spécifiques :</ins>
Réseaux de neurones convolutifs (Convolutional Neural Networks, CNN) : Les CNN ont révolutionné la détection de visage grâce à leur capacité à apprendre des caractéristiques de visage de manière automatique. Les réseaux de neurones convolutifs tels que le modèle de détection de visage basé sur SSD (Single Shot MultiBox Detector) et le modèle de détection de visage basé sur MTCNN (Multi-task Cascaded Convolutional Networks) sont largement utilisés pour la détection précise de visage.
Méthodes basées sur le deep learning : Outre les CNN, des méthodes basées sur le deep learning, telles que les réseaux adverses génératifs (GAN), ont également été utilisées pour la génération de visages réalistes et pour améliorer la détection de visage en fournissant des modèles plus précis et robustes.
Se renseigner sur : **RetinaFace** & **EfficientDet**
### Site WEB
#### Présentation
- Présentation de notre entreprise
- Présentation de nos projets
- FAQ
- Page qui explique nos motivations
- Support en temps réel (chat)
- Système d'inscription (soumis à des conditions strictes)
- Système de connexion
- Présence de l'API pour que les developpers puissent intégrer nos Algos.
- Présence CGV
- Présence CGU
#### Outils utilisés
### Algo IA
#### Présentation
- Développé en Python
- Mise en place d'une interface avec django + react ?
- Demande d'accès webcam
- Demande d'accord utilisation droit image (Théo)
#### Outils utilisés
- Framework Deep Learning Pytorch ?
- Framework Deep Learning Tensorflow ?
- Mise en place d'un algorithme de reseau de neurones ?
- Stockage des infos classiques nom prenom etc en BDD (PostgreSQL)
- Stockage d'identification biométrique (NoSQL ou fichier dur?)
### Autres
#### Réseaux sociaux
- Création compte chez FACEBOOK
- Création compte chez INSTAGRAM
- Création compte chez TIKTOK
- Création compte chez TWITTER
#### Support
- Création numero FIXE
- Création mail support
# Autres idée
#### Analyse des anomalies comportementales
#### Anti-photoshop
#### Anti-deepfakes
#### Prévention des attaques de phishing
#### Détection de logiciels malveillants