XML ENCRYPTION Projet XML Encryption SAMIR ZABI THIAM
XML ENCRYPTION Projet : XML Encryption SAMIR ZABI & THIAM SERIGNE SALIOU
PLAN XML Encryption q INTRODUCTION q EXEMPLE q CHIFFREMENT q DECRYPTAGE q CONCLUSION
INTRODUCTION XML Encryption q q Recommandation de la norme W 3 C du 10 Décembre 2002 But de XML Encryption Ø q q <Encrypted. Data/> Polyvalent & puissant Sécurisation des échanges indépendants de la plateforme Outils pour utiliser XML Encryption q
EXEMPLE XML Encryption <? xml version='1. 0'? > <Payment. Info> <Name>Samir Zabi</Name> <Credit. Card Limit='10, 000' > <Number>4019 2445 0277 5567</Number> <Banque> Societé Generale </Banque> <Expiration> 07/04 </Expiration> </Credit. Card> </Payment. Info>
EXEMPLE XML Encryption <? xml version='1. 0'? > <Payment. Info> <Name>Dominique Silquenen</Name> <Encrypted. Data Type='http: //www. w 3. org/2001/04/xmlenc#Element' xmlns='http: //www. w 3. org/2001/04/xmlenc#'> <Cipher. Data> <Cipher. Value>A 23 B 45 C 56</Cipher. Value> </Cipher. Data> </Encrypted. Data> </Payment. Info>
CHIFFREMENT XML Encryption Exprimé dans une forme abrégée, l'élément Encrypted. Data à la structure suivante <Encrypted. Data Id? Type? Mime. Type? Encoding? > <Encryption. Method/>? <ds: Key. Info> <Encrypted. Key>? <Agreement. Method>? <ds: Key. Name>? <ds: Retrieval. Method>? <ds: *>? </ds: Key. Info>? <Cipher. Data> <Cipher. Value>? <Cipher. Reference URI? >? </Cipher. Data> <Encryption. Properties>? </Encrypted. Data>
CHIFFREMENT XML Encryption L'élèment Encrypted. Type Définition de schéma : <complex. Type name='Encrypted. Type' abstract='true'> <sequence> <element name='Encryption. Method' type='xenc: Encryption. Method. Type' min. Occurs='0'/> <element ref='ds: Key. Info' min. Occurs='0'/> <element ref='xenc: Cipher. Data'/> <element ref='xenc: Encryption. Properties' min. Occurs='0'/> </sequence> <attribute name='Id' type='ID' use='optional'/> <attribute name='Type' type='any. URI' use='optional'/> <attribute name='Mime. Type' type='string' use='optional'/> <attribute name='Encoding' type='any. URI' use='optional'/> </complex. Type>
CHIFFREMENT XML Encryption L'élèment Encryption. Method Définition de schéma : <complex. Type name='Encryption. Method. Type' mixed='true'> <sequence> <element name='Key. Size' min. Occurs='0' type='xenc: Key. Size. Type'/> <element name='OAEPparams' min. Occurs='0' type='base 64 Binary'/> <any namespace='##other' min. Occurs='0' max. Occurs='unbounded'/> </sequence> <attribute name='Algorithm' type='any. URI' use='required'/> </complex. Type>
CHIFFREMENT XML Encryption L'élèment Cypher. Data Définition de schéma : <element name='Cipher. Data' type='xenc: Cipher. Data. Type'/> <complex. Type name='Cipher. Data. Type'> <choice> <element name='Cipher. Value' type='base 64 Binary'/> <element ref='xenc: Cipher. Reference'/> </choice> </complex. Type>
CHIFFREMENT XML Encryption L'élèment Encrypted. Data Définition de schéma : <element name='Encrypted. Data' type='xenc: Encrypted. Data. Type'/> <complex. Type name='Encrypted. Data. Type'> <complex. Content> <extension base='xenc: Encrypted. Type'> </extension> </complex. Content> </complex. Type>
CHIFFREMENT XML Encryption Pour chaque Item de données à chiffrer comme élément Encrypted. Data ou Encrypted. Key , le chiffreur doit : Sélectionner l'algorithme (et les paramètres) à employer pour le chiffrement de ces données ; q Triple. DES, RSA, AES, SHA, Diffie-Hellman q Obtenir et (en option) représenter la clé. q Chiffrer les données q q q Construire la structure de l'élément Encrypted. Type (Encrypted. Data ou Encrypted. Key) : Traiter l'élément Encrypted. Data
DECRYPTAGE XML Encryption Pour chaque item Encrypted. Type à décrypter , le décrypteur doit : Traiter l'élément pour déterminer l'algorithme, les paramètreset l'élément ds: Key. Info à utiliser. Localiser la clé de chiffrement des données en fonction de l'élément ds: Key. Info, qui peut contenir un ou plusieurs souséléments Décrypter les données contenues dans l'élément Cipher. Data. Traiter les données décryptées de Type ”element" ou ”content". Traiter les données décryptées si l'attribut Type n'est pas spécifié ou si sa valeur n'est pas ”element" ou ”content".
CONCLUSION XML Encryption q Outil puissant et polyvalent Crypter une partie ou la totalité des données Ø Surchiffrement Ø Utilisation d’algorithmes puissants q Echanges sécurisés indépendants de la plateforme Ø q Outils fréquemment utilisés
XML ENCRYPTION
- Slides: 14