Realm, CoreData killer
Realm, CoreData killer
Sommaire
Vous avez sans doute entendu parler des protocoles SSL ou TLS, non, oui ? Nous allons voir ensemble de quoi il s’agit.
Pour cela, nous allons découper cet article en 5 parties, une postée chaque jour jusqu'à vendredi.
Tout d'abord un peu d'historique : attachez vos ceintures, en route pour la partie 1 !
SSL et TLS sont des protocoles de sécurisation des données.
Ils se comportent comme une couche intermédiaire supplémentaire entre la couche Transport (TCP) et la couche application (HTTP, FTP, SMTP etc.. ) (cf. schéma).
Cela signifie donc qu'ils peuvent aussi bien être employés pour sécuriser une transaction web que pour l'envoi ou la réception d'email, etc…
Jusqu’ici tout va bien !
SSL et TLS sont donc transparents pour l'utilisateur et ne nécessitent pas l'emploi de protocole de niveau d'application spécifique.
Modèle OSI avec le SSL/TLS
En clair:
Les protocoles SSL et TLS permettent d'échanger des informations entre deux ordinateurs de façon sûre.
Ils sont censés assurer les 3 points suivants:
Les protocoles SSL et TLS reposent donc sur la combinaison de plusieurs concepts cryptographiques, exploitant à la fois le chiffrement asymétrique et le chiffrement symétrique (nous allons voir ces notions dans la partie chiffrement).
De plus, ces protocoles se veulent évolutifs, indépendants des algorithmes de cryptage et d'authentification mis en oeuvre dans une transaction. Cela leur permet de s'adapter aux besoins des utilisateurs et d’avoir une meilleure sécurité puisque ces protocoles ne sont pas soumis aux évolutions théoriques de la cryptographie (si un chiffrement devient obsolète, le protocole reste exploitable en choisissant un chiffrement plus sûr).
Histoire :
A - SSL :
SSL signifie Secure Socket Layer.
B - TLS :
TLS signifie Transport Layer Security.
Le développement de ce protocole a été repris par l'IETF.
Le protocole TLS n'est pas structurellement différent de la version 3 de SSL, mais des modifications dans l'utilisation des fonctions de hachage font que les deux protocoles ne sont pas directement "interopérables".
Cependant TLS, comme SSLv3, intègre un mécanisme de compatibilité ascendante avec les versions précédentes, c'est-à-dire qu'au début de la phase de négociation, le client et le serveur négocient la «meilleure » version du protocole disponible en commun. Pour des raisons de sécurité (mentionnées plus haut), la compatibilité de TLS avec la version 2 de SSL est abandonnée.
Ce qui différencie aussi le TLS du SSL c’est que la génération des clés symétriques est un peu plus sécurisée dans TLS que dans SSLv3, dans la mesure où aucune étape de l'algorithme ne repose uniquement sur du MD5 (pour lequel sont apparues des faiblesses en cryptanalyse).
Navigateurs :
La plupart des navigateurs web gèrent TLS 1.0. Les navigateurs supportant par défaut la dernière version TLS 1.1 et TLS 1.2 sont :
Bon j’espère que j’en ai pas perdu en chemin car c’est maintenant qu’on passe aux choses sérieuses.
Auteur(s)
Ilan Benichou
Développeur Fullstack (PHP/JS/IOS/DEVOPS), j'adore découvrir de nouvelle chose, toujours prêt à relever un challenge.
Vous souhaitez en savoir plus sur le sujet ?
Organisons un échange !
Notre équipe d'experts répond à toutes vos questions.
Nous contacterDécouvrez nos autres contenus dans le même thème
Rendez plus robuste votre application mobile en ajoutant des tests fonctionnels
Nous allons découvrir un outil qui permet d'automatiser des tâches fastidieuses en mobile.