SlideShare une entreprise Scribd logo

Les signatures avec java.security

Description de Java.Security et des principales méthodes pour réaliser une signature

1  sur  5
Mehdi EL KRARI




                 Les signatures avec java.security



Le package java.security
  • Ce package est apparu dans la version 1.1 de API Java et implémente les méthodes
    de cryptage.
  • Le package java.security permet de signer ou crypter n'importe quelles

    données avec l'algorithme de son choix. Pour signer des données, on utilise un
    objet Signature et pour crypter on utilise un objet MessageDigest. Ces
    deux classes sont appelées les "engine classes".
  • Les différents algrorithmes de crytptage (SHA-1, MD2, MD5) et de signature

    (DSA, MD2/RSA, MD5/RSA, SHA-1/RSA) reposent sur les méthodes SHA
    (Secure Hash Algorithm) et RSA. Quelques algorithmes à clés symétriques sont
    également implémentés : DES, IDEA, RC2, RC4.
Mehdi EL KRARI




                 Les signatures avec java.security




La classe KeyPairGenerator
La classe KeyPairGenerator est utilisé pour générer des paires de clés publiques et
privées. Les générateurs de paire de clés sont construits en utilisant les méthodes
getInstance.

Un générateur de paires de clé pour un algorithme particulier crée une paire de clés
publique / privée qui peut être utilisé avec cet algorithme.
Mehdi EL KRARI




                 Les signatures avec java.security
public void initialize(int keysize, SecureRandom random)
Initialise le générateur de paires clé pour une taille de clé certain avec la source de
donnée aléatoire

public static    KeyPairGenerator   getInstance(String algorithm)throws
                                            NoSuchAlgorithmException

Retourne un objet KeyPairGenerator qui génère une paire de clés public / privé pour
l'algorithme spécifié.
La méthode prend en paramètre le nom de l'algorithme de chiffrement à utiliser :
   • DiffieHellman
   • DSA
   • RSA
   • EC
Mehdi EL KRARI




                 Les signatures avec java.security
La classe Signature

public static    Signature   getInstance(String algorithm)throws
                                             NoSuchAlgorithmException
Retourne un objet « Signature » qui implémente l'algortihme de signature spécifié
en paramètre de la méthode, ce paramètre suit la syntaxe suivante : <MÉTHODE
DE HACHAGE>with<ALGORITHME DE CHIFFREMENT>
  • NONEwithRSA
  • MD2withRSA / MD5withRSA
  • SHA1withRSA / SHA256withRSA / SHA384withRSA / SHA512withRSA
  • NONEwithDSA
  • SHA1withDSA
  • …
Mehdi EL KRARI




                 Les signatures avec java.security
public final void initSign
   (PrivateKey privateKey, SecureRandom random)throws
                                            InvalidKeyException
Initialiser cet objet pour la signature. Si cette méthode est appelée de nouveau
avec un argument différent, il annule l'effet de cet appel.

public final void update(byte[] data) throws SignatureException
Met à jour les données à signer ou vérifier, à l'aide du tableau d'octets spécifié.

public final byte[] sign() throws SignatureException
Renvoie les octets de la signature de toutes les données mises à jour par
« update ». Le format de la signature dépend du schéma de signature sous-
jacente.

Recommandé

Java cours n° 2 - classe-objet-constructeur
Java   cours n° 2 - classe-objet-constructeurJava   cours n° 2 - classe-objet-constructeur
Java cours n° 2 - classe-objet-constructeurAbdelwahab Naji
 
Les agents intelligents et les SMA
Les agents intelligents et les SMALes agents intelligents et les SMA
Les agents intelligents et les SMABilal ZIANE
 
Perceptron monocouche en français
Perceptron monocouche en françaisPerceptron monocouche en français
Perceptron monocouche en françaisHakim Nasaoui
 
Intelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheIntelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheMohamed Heny SELMI
 
Cours design pattern m youssfi partie 8 stat, template method, command , medi...
Cours design pattern m youssfi partie 8 stat, template method, command , medi...Cours design pattern m youssfi partie 8 stat, template method, command , medi...
Cours design pattern m youssfi partie 8 stat, template method, command , medi...ENSET, Université Hassan II Casablanca
 

Contenu connexe

Tendances

cours javascript.pptx
cours javascript.pptxcours javascript.pptx
cours javascript.pptxYaminaGh1
 
Examen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesExamen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesInes Ouaz
 
Concevoir, développer et sécuriser des micro-services avec Spring Boot
Concevoir, développer et sécuriser des micro-services avec Spring BootConcevoir, développer et sécuriser des micro-services avec Spring Boot
Concevoir, développer et sécuriser des micro-services avec Spring BootDNG Consulting
 
Systèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jadeSystèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jadeENSET, Université Hassan II Casablanca
 
Présentation python
Présentation pythonPrésentation python
Présentation pythonSarah
 
éNoncés+corrections bac2011
éNoncés+corrections bac2011éNoncés+corrections bac2011
éNoncés+corrections bac2011Morom Bil Morom
 
Gocon2017:Goのロギング周りの考察
Gocon2017:Goのロギング周りの考察Gocon2017:Goのロギング周りの考察
Gocon2017:Goのロギング周りの考察貴仁 大和屋
 
POO Java Chapitre 6 Exceptions
POO Java  Chapitre 6 ExceptionsPOO Java  Chapitre 6 Exceptions
POO Java Chapitre 6 ExceptionsMouna Torjmen
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesENSET, Université Hassan II Casablanca
 
POO Java Chapitre 4 Heritage et Polymorphisme
POO Java Chapitre 4 Heritage et PolymorphismePOO Java Chapitre 4 Heritage et Polymorphisme
POO Java Chapitre 4 Heritage et PolymorphismeMouna Torjmen
 
Project Loom - 限定継続と軽量スレッド -
Project Loom - 限定継続と軽量スレッド - Project Loom - 限定継続と軽量スレッド -
Project Loom - 限定継続と軽量スレッド - Yuichi Sakuraba
 
Machine Learning et Intelligence Artificielle
Machine Learning et Intelligence ArtificielleMachine Learning et Intelligence Artificielle
Machine Learning et Intelligence ArtificielleSoft Computing
 
POO Java Chapitre 3 Collections
POO Java Chapitre 3 CollectionsPOO Java Chapitre 3 Collections
POO Java Chapitre 3 CollectionsMouna Torjmen
 

Tendances (20)

système multi agent
système multi agentsystème multi agent
système multi agent
 
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
 
XML- Schéma
XML- SchémaXML- Schéma
XML- Schéma
 
Cours JavaScript
Cours JavaScriptCours JavaScript
Cours JavaScript
 
cours javascript.pptx
cours javascript.pptxcours javascript.pptx
cours javascript.pptx
 
Examen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesExamen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de données
 
Concevoir, développer et sécuriser des micro-services avec Spring Boot
Concevoir, développer et sécuriser des micro-services avec Spring BootConcevoir, développer et sécuriser des micro-services avec Spring Boot
Concevoir, développer et sécuriser des micro-services avec Spring Boot
 
Systèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jadeSystèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jade
 
Présentation python
Présentation pythonPrésentation python
Présentation python
 
éNoncés+corrections bac2011
éNoncés+corrections bac2011éNoncés+corrections bac2011
éNoncés+corrections bac2011
 
Gocon2017:Goのロギング周りの考察
Gocon2017:Goのロギング周りの考察Gocon2017:Goのロギング周りの考察
Gocon2017:Goのロギング周りの考察
 
arbres de decision.ppt
arbres de decision.pptarbres de decision.ppt
arbres de decision.ppt
 
POO Java Chapitre 6 Exceptions
POO Java  Chapitre 6 ExceptionsPOO Java  Chapitre 6 Exceptions
POO Java Chapitre 6 Exceptions
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependances
 
POO Java Chapitre 4 Heritage et Polymorphisme
POO Java Chapitre 4 Heritage et PolymorphismePOO Java Chapitre 4 Heritage et Polymorphisme
POO Java Chapitre 4 Heritage et Polymorphisme
 
CV OUAHIDI MOUHCINE
CV OUAHIDI MOUHCINECV OUAHIDI MOUHCINE
CV OUAHIDI MOUHCINE
 
Arbre et algorithme de recherche
Arbre et algorithme de rechercheArbre et algorithme de recherche
Arbre et algorithme de recherche
 
Project Loom - 限定継続と軽量スレッド -
Project Loom - 限定継続と軽量スレッド - Project Loom - 限定継続と軽量スレッド -
Project Loom - 限定継続と軽量スレッド -
 
Machine Learning et Intelligence Artificielle
Machine Learning et Intelligence ArtificielleMachine Learning et Intelligence Artificielle
Machine Learning et Intelligence Artificielle
 
POO Java Chapitre 3 Collections
POO Java Chapitre 3 CollectionsPOO Java Chapitre 3 Collections
POO Java Chapitre 3 Collections
 

Les signatures avec java.security

  • 1. Mehdi EL KRARI Les signatures avec java.security Le package java.security • Ce package est apparu dans la version 1.1 de API Java et implémente les méthodes de cryptage. • Le package java.security permet de signer ou crypter n'importe quelles données avec l'algorithme de son choix. Pour signer des données, on utilise un objet Signature et pour crypter on utilise un objet MessageDigest. Ces deux classes sont appelées les "engine classes". • Les différents algrorithmes de crytptage (SHA-1, MD2, MD5) et de signature (DSA, MD2/RSA, MD5/RSA, SHA-1/RSA) reposent sur les méthodes SHA (Secure Hash Algorithm) et RSA. Quelques algorithmes à clés symétriques sont également implémentés : DES, IDEA, RC2, RC4.
  • 2. Mehdi EL KRARI Les signatures avec java.security La classe KeyPairGenerator La classe KeyPairGenerator est utilisé pour générer des paires de clés publiques et privées. Les générateurs de paire de clés sont construits en utilisant les méthodes getInstance. Un générateur de paires de clé pour un algorithme particulier crée une paire de clés publique / privée qui peut être utilisé avec cet algorithme.
  • 3. Mehdi EL KRARI Les signatures avec java.security public void initialize(int keysize, SecureRandom random) Initialise le générateur de paires clé pour une taille de clé certain avec la source de donnée aléatoire public static KeyPairGenerator getInstance(String algorithm)throws NoSuchAlgorithmException Retourne un objet KeyPairGenerator qui génère une paire de clés public / privé pour l'algorithme spécifié. La méthode prend en paramètre le nom de l'algorithme de chiffrement à utiliser : • DiffieHellman • DSA • RSA • EC
  • 4. Mehdi EL KRARI Les signatures avec java.security La classe Signature public static Signature getInstance(String algorithm)throws NoSuchAlgorithmException Retourne un objet « Signature » qui implémente l'algortihme de signature spécifié en paramètre de la méthode, ce paramètre suit la syntaxe suivante : <MÉTHODE DE HACHAGE>with<ALGORITHME DE CHIFFREMENT> • NONEwithRSA • MD2withRSA / MD5withRSA • SHA1withRSA / SHA256withRSA / SHA384withRSA / SHA512withRSA • NONEwithDSA • SHA1withDSA • …
  • 5. Mehdi EL KRARI Les signatures avec java.security public final void initSign (PrivateKey privateKey, SecureRandom random)throws InvalidKeyException Initialiser cet objet pour la signature. Si cette méthode est appelée de nouveau avec un argument différent, il annule l'effet de cet appel. public final void update(byte[] data) throws SignatureException Met à jour les données à signer ou vérifier, à l'aide du tableau d'octets spécifié. public final byte[] sign() throws SignatureException Renvoie les octets de la signature de toutes les données mises à jour par « update ». Le format de la signature dépend du schéma de signature sous- jacente.