Documente Academic
Documente Profesional
Documente Cultură
XML Encryption
Ralis par La syntaxe et le traitement : JOUINI JELJOUL AYACHI Cliquez pour modifier le style des sous-titres duRim masque SHIMI Saoussen RIDENE Boutheina MEFTAHI Dhekra MRAD Henda
23/04/2012
Plan
1 2 Introduction Vue densemble sur le chiffrement & Exemples 3 La syntaxe du Chiffrement Les rgles de traitement Les Algorithmes Conclusion
4 5 6
Plan
1 2 Introduction Vue densemble sur le chiffrement & Exemples 3 La syntaxe du Chiffrement Les rgles de traitement Les Algorithmes Conclusion
4 5 6
Introduction
Egalement connuen tant que XML-Enc, Cest une spcification du W3C, qui dfinitla faon de cryptage du contenud'un document XML.
Introduction
Confidentialit des informations Cryptage slective avec Plusieurs cls possibles Scurit de bout en bout
Introduction
Plan
1 2 Introduction Vue densemble sur le chiffrement & Exemples 3 La syntaxe du Chiffrement Les rgles de traitement Les Algorithmes Conclusion
4 5 6
Plan
2
v
Vue densemble Exemple 1.Le chiffrement d'un lmentXML 2.Le chiffrement du contenu d'un lmentXML (Elements)
10
11
Exemples
<?xml version='1.0'?> <InfoPaiement xmlns='http://example.com/paiementv2'> <Nom>Marcel DUPOND</Nom> <CarteCredit Plafond='5000' Monnaie='EURO'> <Numero>4019 2445 0277 5567</Numero> <Emetteur>Example Bank</Emetteur> <Expiration>04/02</Expiration> </CarteCredit> </InfoPaiement>
12
13
14
15
16
Plan
1 2 Introduction Vue densemble sur le chiffrement & Exemples 3 La syntaxe du Chiffrement Les rgles de traitement Les Algorithmes Conclusion
4 5 6
17
Plan
3
v v
La syntaxe du Chiffrement
L'lmentCipherReference
L'lmentEncryptedKey L'lmentds:RetrievalMethod
L'lmentReferenceList L'lmentEncryptionProperties
18
19
20
21
Plan
1 2 Introduction Vue densemble sur le chiffrement & Exemples 3 La syntaxe du Chiffrement Les rgles de traitement Les Algorithmes Conclusion
4 5 6
22
Plan
4 Les rgles de traitement
v Les rgles de traitement v Exemple v 1.Le chiffrement v 2.Le dcryptage v 3.Le chiffrementXML
23
Application Chiffreur
24
25
Le chiffrement
Pour chaque item de donnes chiffrer comme lment EncryptedDataouEncryptedKey(des lments drivs deEncryptedType), lechiffreurdoit:
1.
Slectionner l'algorithme (et les paramtres) employer pour le chiffrement de ces donnes; Obtenir et (en option) reprsenter la cl. Chiffrer les donnes Construire la structure de l'lmentEncryptedType
2.
3.
4.
(EncryptedDataouEncryptedKey)
5.
Traiter l'lmentEncryptedData
26
Le chiffrement
Slectionner
lalgorithme Chiffr les donnes Construire la structure Obtenir la cl Traiter lelment EncryptedData
27
Le dcryptage 1/2
Pour chaque lment driv deEncryptedType dcrypter ledcrypteurdoit:
1.
Traiter l'lment pour dterminer l'algorithme, les paramtres et l'lmentds:KeyInfo utiliser. Si certaines informations manquent, l'applicationdoit les fournir
2.
Localiser la cl de chiffrement des donnes en fonction de l'lmentds:KeyInfo, qui peut contenir un ou plusieurs sous-lments. Ces sous-lments n'ont pas d'ordre de traitement implicite.
28
Le dcryptage 2/2
3.
Dcrypter les donnes contenues dans l'lmentCipherData TraiterlesdonnesdcryptesdeType"element" ou "content" Traiterlesdonnesdcryptessil'attributTypen'estpas spcifiousisavaleurn'est pas"element"ou "content".
4.
5.
29
30
Devient
<Document xmlns="http://example.com/">
31
Ce problme survient parce que la plupart des srialisationsXMLsupposent que les donnes srialises seront analyses directement dans un contexte sans dclaration d'espace de nommage par dfaut Elles ne rptent pas la dclaration de l'espace de nommage par dfaut vide avec un attributxmlns="". Cependant, si les donnes srialises sont analyses dans le contexte d'action d'une dclaration espace de nommage par
32
Plan
1 2 Introduction Vue densemble sur le chiffrement & Exemples 3 La syntaxe du Chiffrement Les rgles de traitement Les Algorithmes Conclusion
4 5 6
33
Algorithmes
Cette section prsente les algorithmes utiliss avec la spcification XML Encryption. Les entres contiennent l'identificateur utiliser
comme valeur de l'attribut Algorithm de l'lment EncryptionMethod ou d'un autre lment reprsentant le rle de l'algorithme, une rfrence vers la spcification formelle, des dfinitions pour la reprsentation des cls et pour les rsultats des oprations cryptographiques.
34
dpendent de leur rle. Par exemple, les donnes crypter ou dcrypter, le matriel de chiffrement, et la direction de fonctionnement Pour les algorithmes de cryptage , tous les paramtres explicites supplmentaires apparaissent comme des lments de contenu dans l'lment.
35
Algorithmes
Chiffrement par bloc Chiffrement par flux Transport de cl Agrment de cl Enveloppe de cl symtrique Empreinte numrique Authentication de Message Canonisation Codage
36
Les algorithmes de chiffrement par blocs sont conus pour le chiffrement et le dcryptage des donnes dans des blocs d'octets multiples taille fixe. Leur identificateur apparat comme valeur de l'attribut Algorithm des lments EncryptionMethod qui sont les sous-lments des lments EncryptedData.
37
Exemple1:Triple DES
Identificateur : http://www.w3.org/2001/04/xmlenc#tripledes-cbc (OBLIGATOIRE) L'algorithme [TRIPLE DES] spcifie trois oprations [DES] successives. Le TRIPLEDES de XML Encryption consiste en un chiffrement DES, un dcryptage DES et un chiffrement DES, utiliss dans le mode de chiffrement enchanement des blocs (CBC) avec une cl de 192 bits et un vecteur d'initialisation de 64 bits. Des bits de la cl, les 64 premiers sont utiliss dans la premire opration DES, les 64 suivants dans la deuxime opration DES et les 64 derniers dans la troisime opration DES. Voici un exemple avec un lment EncryptionMethod TRIPLEDES : <EncryptionMethod
38
Exemple2:AES
Identificateur : http://www.w3.org/2001/04/xmlenc#aes128-cbc (OBLIGATOIRE) http://www.w3.org/2001/04/xmlenc#aes192-cbc (OPTIONNEL) http://www.w3.org/2001/04/xmlenc#aes256-cbc (OBLIGATOIRE) L'algorithme [AES] est utilis dans le mode de chiffrement enchanement des blocs (CBC) avec un vecteur d'initialisation de 128 bits. Voici un exemple avec un lment EncryptionMethod AES : <EncryptionMethod
39
Ces algorithmes gnrent, en fonction de la cl, un flux d'octets qui sont compars en disjonction exclusive (XOR) avec les octets de donnes du texte en clair pour produire le texte crypt lors du chiffrement et avec les octets du texte crypt pour produire le texte en clair lors du dcryptage.
Ils sont spcifis par la valeur de l'attribut Algorithm du sous-lment EncryptionMethod d'un lment EncryptedData.
40
Les algorithmes de chiffrement par flot emploient gnralement le paramtre explicite optionnel KeySize. Pour les cas o la taille de la cl ne se dduit pas de l'adresse URI ou de la source de la cl de l'algorithme, ce paramtre rgle la taille de la cl. Le schma du paramtre KeySize est le suivant :
41
Ce sont des algorithmes de chiffrement cl publique conus spcialement pour le chiffrement et le dcryptage de cls.
Leurs identificateurs apparaissent en attributs Algorithm des lments EncryptionMethod qui sont les sous-lments d'lments EncryptedKey. L'lment EncryptedKey est son tour le sous-lment d'un lment ds:KeyInfo.
Le type de cl qui est transport, est donn par l'attribut Algorithm du sous-lment EncryptionMethod de l'lment EncryptedData, ou EncryptedKey, parent de cet lment
42
43
Exemple2:RSA-OAEP
Identificateur : http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p (OBLIGATOIRE) L'algorithme RSAES-OAEP-ENCRYPT, admet trois paramtres. Deux paramtres sont spcifis par l'utilisateur : une fonction de hachage cryptographique OBLIGATOIRE et un flux d'octets de codage OAEPparams OPTIONNEL. La fonction de hachage cryptographique est spcifie par l'attribut Algorithm d'un sous-lment ds:DigestMethod et la fonction de gnration de masques, le troisime paramtre, est toujours
44
Un algorithme d'agrment de cl pourvoit une cl secrte partage, qui est calcule partir de certains types de cls publiques compatibles issues la fois de l'metteur et du destinataire.
L'information provenant du donneur d'ordre pour dterminer le secret est indique par un souslment paramtre OriginatorKeyInfo optionnel d'un lment AgreementMethod, alors que celle associe au destinataire est indique par un lment RecipientKeyInfo optionnel.
45
Par exemple
<EncryptedData> <EncryptionMethod Algorithm="Exemple:Block/Alg" <KeySize>80</KeySize> </EncryptionMethod> <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <AgreementMethod Algorithm="exemple:Agrement/Algorithme"> <KANonce>Zm9v</KA-Nonce> <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha1"/ > <OriginatorKeyInfo> <ds:KeyValue>....</ds:KeyValue> </OriginatorKeyInfo> <RecipientKeyInfo> <ds:KeyValue>....</ds:KeyValue> </RecipientKeyInfo>
46
Ce sont des algorithmes de chiffrement cl secrte partage conus spcialement pour le chiffrement et le dcryptage des cls symtriques. Leurs identificateurs apparaissent comme valeurs de l'attribut Algorithm des sous-lments EncryptionMethod d'un lment EncryptedKey, luimme sous-lment d'un lment ds:KeyInfo son tour le sous-lment d'un lment EncryptedData, ou autrement d'un lment EncryptedKey. Le type de la cl qui est emballe est indiqu par l'attribut Algorithm de l'lment EncryptionMethod, souslment du parent du grand-parent ds:KeyInfo de l'lment EncryptionMethod qui spcifie l'algorithme d'emballage de la cl symtrique.
47
On peut utiliser des algorithmes de hachage cryptographique dans l'lment AgreementMethod comme partie de la drivation de la cl, dans un chiffrement RSA-OAEP comme fonction de hachage et en relation avec la mthode de code d'authentification de message HMAC
48
Exemple 1:SHA1
Identificateur : http://www.w3.org/2000/09/xmldsig#sha1 (OBLIGATOIRE)
49
L'implmentation de XML Signature [XML-DSIG] est OPTIONNELLE pour les applications XML Encryption.
50
La canonisation
La canonisation de XML est une mthode pour srialiser XML de manire cohrente en un flux d'octets en cas du besoin avant le chiffrement du code XML
51
La canonisation inclusive
Identificateurs : http://www.w3.org/TR/2001/REC-xml-c14n-20010315 (OPTIONNEL) http://www.w3.org/TR/2001/REC-xml-c14n20010315#WithComments (OPTIONNEL)
XML canonique [Canon] est une mthode de srialisation XML qui inclut l'espace de nommage dans la porte et le contexte de l'attribut d'espace de nommage xml des anctres du code XML qui est srialis.
52
La canonisation exclusive
Identificateurs : http://www.w3.org/2001/10/xml-exc-c14n# (OPTIONNEL) http://www.w3.org/2001/10/xml-excc14n#WithComments (OPTIONNEL)
La canonisation XML exclusive [Exclusive] srialise le code XML de sorte inclure, dans le minimum pratique, la corrlation de prfixe d'espace de nommage et le contexte de l'attribut d'espace de
53
Plan
1 2 Introduction Vue densemble sur le chiffrement & Exemples 3 La syntaxe du Chiffrement Les rgles de traitement Les Algorithmes Conclusion
4 5 6
54
Conclusion
XML Encryption : un autre standard de chiffrement tombe, des chercheurs cassent la norme du W3C pour les Web services
http://aktuell.ruhr-uni-bochum.de/pm2011/pm00330.html.en www.w3c.org