Tutoriel Sécurité Java : initiation cryptographie avec Java 8

JPG - 25.6 ko

Avec Objis, faîtes vos premiers pas en cryptographie avec le langage Java. Découvrez la notion de fournisseur de Sécurité (Security Provider) . Découvrez les classes : Security, Provider, et Service. Comprenez les différents services de sécurités fournis en fonction de le version de Java. Identifiez précisément les algorithmes de chiffrement et de génération de clés disponible dans votre environnement Java.

ASTUCE —> Soyez informé de la mise à jour de nos tutos ou de la création de nouveaux tutos.

Prérequis

- Savoir Installer le Kit de développement Java (JDK)

Objectifs

- Comprendre l’architecture des services de Cryptographie de Java
- Comprendre le rôle de la classe java.security.Security
- Comprendre ce qu’est un fournisseur de Sécurité (Provider)
- Identifier les fournisseurs de Sécurité de Java 8
- Comprendre ce qu’est un Service de Sécurité (Provider.Service)
- Comprendre le lien entre fournisseur de Sécurité et Service de Sécurité
- Identifier les services de sécurité fournis par Java

Programme

- Contexte : Cryptographie et Java
- Partie 1 : lister les fournisseurs de Sécurité (Providers)
- Partie 2 : analyser les services du fournisseur de sécurité "SunJCE"
- Conclusion
- Confiez-nous une mission de formation en Sécurité Java
- Confiez-nous une mission d’audit sécurité de vos applications Java

Durée

- 30 minutes.

Contexte : cryptographie

QUESTION : que propose Java comme algorithme de chiffrement (Cipher), d’empreinte numérique (MessageDigest), de génération de clés (KeyGenerator) ?

PNG - 37.1 ko
tutoriel-securite-java-jee-perimetre-securite-java

- Expliquez les autres domaines de sécurité Java.

PNG - 101.3 ko
chiffrement

Partie 1 : lister les fournisseurs de Sécurité (Providers)

En utilisant la Javadoc Java 8 SE , Expliquez le rôle de la classe java.security.Security

PNG - 19.2 ko
tutoriel-formation-securite-java-objis-jca-1-classe-Security

En utilisant la Javadoc Java 8 SE , Expliquez ce qu’est un fournisseur de Sécurité (java.security.Provider)

PNG - 31.2 ko
tutoriel-formation-securite-java-objis-jca-1-classe-Provider

Analysez et expliquez le code suivant , ainsi que le résultat du code

PNG - 31.7 ko
tutoriel-formation-securite-java-objis-jca-1

QUESTION : combien y a t’il de fournisseurs de Sécurité ?

QUESTION : quel lien avec le fichier JAVA_HOME\lib\security\java.security ?

PNG - 27.1 ko
tutoriel-formation-securite-java-objis-jca-1bis

Quel est le résultat de ce programme sur une JRE Java 7 ? et sur une JRE Java 6 ? Quelle différence ?

Partie 2 : les services du fournisseur "SunJCE"

Analysez et expliquez le code suivant , ainsi que le résultat du code

PNG - 39.4 ko
tutoriel-formation-securite-java-objis-jca-2-Services-Provider-SunJCE

La liste complète est ici :

texte - 4 ko
Liste-Services-Provider-SunJCE

QUESTION : combien y a t’il de services de Sécurité pour le fournisseur "SunJCE" ?

A VOUS DE JOUER : en utilisant la méthode getAlgorithms() de la classe Security, précisez pour Java :

- le nombre d’algorithmes de type Chiffrement (Cipher) disponible
- Le nombre d’algorithmes de type génération de clé (KeyGenerator) disponible
- Le nombre d’algorithmes de type Code d’Authentification de Message (Mac) disponible
- Le nombre d’algorithmes de type Fabrique de clé (KeyFactory) disponible
- Le nombre d’algorithmes de type Fabrique de clé secrète (SecretKeyFactory) disponible
- Le nombre d’algorithmes de type Stockage de clés(KeyStore) disponible

Conclusion

Dans ce tutoriel, vous vous êtes initié à la cryptographie , une des 5 facettes de la sécurité avec le langage Java.

Formation Sécurité applications Java EE

Découvrez lors de notre formation Sécurité Java les concepts théoriques clés et la pratique associée aux services de sécurité clés (Confidentialité , Intégrité , Non répudiation) ainsi que les techniques associées : Authentification, Autorisation , Empreinte , Chiffrement , Signature

JPG - 25.6 ko

— > Obtenez les réponses aux questions posées dans ce tutoriel, ainsi que les codes sources du projet.

— > Développez votre capacité à répondre aux questions suivantes : Qu’est ce qu’un chiffrement DES ? RSA ? AES ? RC2 ? Lequel choisir ? Pourquoi ?

Confiez-nous l’audit sécurité de vos applications Java

Nous auditons votre code Java et vous donnons notre avis sur ses vulnérabilités . Contactez-nous