Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

XML biztonság.

Hasonló előadás


Az előadások a következő témára: "XML biztonság."— Előadás másolata:

1 XML biztonság

2 Aláírás W3C és IETF közös munkája W3C IETF
XML-Signature Syntax and Processing / 2002. IETF sok RFC a részletekről

3 Mit biztosít? Hiteles marad Változtatás azonnal észrevehető
Az előállító nem tudja letagadni

4 Szükséges algoritmusok
kanonizáló szemantikailag azonos XML ua. bytesorozat legyen kivonat készítő hash készítés aláíró hash titkosítása titkosító szimmetrikus kulccsal az XML kódolása transzformáló pl. bináris adatok base64 kódolása

5 Aláírás, mint objektum ( ): valamilyen leírás kell
?: 0 vagy 1 előfordulás +: 1 vagy több előfordulás *: 0 vagy több előfordulás

6 Az aláírás előállítása
Forrásadat: leírás a Reference-ben URI-val

7 Az aláírás előállítása
Kanonizálás (normalizálás) kommentárok elhagyása üres sorok kiszedése szóközök megtartása a szövegben cimkék normalizása karakterhivatkozások feloldása betűkészlet UTF-8-ra

8 Kanonizálás

9 Az aláírás előállítása
Lenyomat(hash) az aláirandó elemekről benne az algoritmus hash értéke

10 Az aláírás előállítása
Előkészítés a közvetlen aláíráshoz milyen a kanonizálás milyen a titkosító algoritmus (itt SHA1)

11 Az aláírás előállítása
Aláírás elkészítése

12 Az aláírás előállítása
Opcionális kulcsinfo hozzáadása

13 Az aláírás előállítása
Opcionális object-info hozzáadása pl. időpecsét

14 Az aláírás előállítása
Transzformáció: pl. bináris info base64-be

15

16 Alkalmazás Honnan tudjuk, hogy Alice cége küldte a megrendelőt Bob cégének? Válasz: Alice írja alá

17 Megrendelés <bp:pencilOrder xmlns:bp=" <bp:pencilType>bp:StandardNumberTwo</bp:pencilType> <bp:quantity>100,000</bp:quantity> </bp:pencilOrder>

18 Aláírt szerkezet <bp:signedPencilOrder xmlns:bp=" <Signature xmlns=" <SignedInfo> <CanonicalizationMethod Algorithm=" <SignatureMethod Algorithm=" <Reference URI=""/> <Transforms> <Transform Algorithm=" </Transforms> <DigestMethod Algorithm=" <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue> </Reference> </SignedInfo> <SignatureValue>aiYECAxNqK2PivQaRweWajXup5zJa...</SignatureValue> <KeyInfo> <X509Data> <X509Certificate>MIIH1zCCBr+gAwIBA...</X509Certificate> </X509Data> </KeyInfo> </Signature> <bp:pencilOrder> <bp:OrderID>64B4A0D1-814E-4FF6-918A-DD7E7E1AECEA</bp:OrderID> <bp:pencilType>bp:StandardNumberTwo</bp:pencilType> <bp:quantity>100,000</bp:quantity> </bp:pencilOrder> </bp:signedPencilOrder> eredeti anyag

19 Aláírás kifejtése kanonizálás algoritmus itt az aláírás
mit kell aláírni?* kanonizálás <Signature xmlns=" <SignedInfo> <CanonicalizationMethod Algorithm=" <SignatureMethod Algorithm=" <Reference URI=""> <Transforms> <Transform Algorithm=" </Transforms> <DigestMethod Algorithm=" <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue> </Reference> </SignedInfo> <SignatureValue>aiYECAxNqK2PivQaRweWajXup5zJa...</SignatureValue> <KeyInfo> <X509Data> <X509Certificate>MIIH1zCCBr+gAwIBA...</X509Certificate> </X509Data> </KeyInfo> </Signature> algoritmus itt az aláírás ""= az egészet!

20 Elemzés pencilOrder fölé egy új elem került signedPencilOrder gyereke
Signature és az eredeti pencilOrder Signature, mint előzőekben pencilOrder kibővült bp:OrderID hogy uaz a rendelés ne mehessen be kétszer

21 Titkosítás Itt is W3C és IETF együtt W3C IETF
XML Encryption Syntax and Processing / 2002. IETF sok RFC a részletekről

22 Titkosítás <--> titkosított adatforgalom
SSL (Secure Socket Layer) kiegészítő réteg az Internet Modellben akkor kell, ha az egész beszélgetés titkos Ha csak XML-adatokat akarunk titkosítani XML-Encryption pl. bankkártya-adatok átvitele

23 Megrendelés fizetéssel
<?xml version='1.0' ?> <purchaseOrder> <Order> <Item>book</Item> <Id> </Id> <Quantity>12</Quantity> </Order> <Payment> <CardId> </CardId> <CardName>visa</CardName> <ValidDate> </ValidDate> </Payment> </purchaseOrder>

24 Az egész titkosítása <?xml version='1.0' ?> <EncryptedData xmlns=' type=' <CipherData> <CipherValue>A23B45C56</CipherValue> </CipherData> </EncryptedData>

25 Részlet titkosítása <purchaseOrder> <Order> <Item>book</Item> <Id> </Id> <Quantity>12</Quantity> </Order> <EncryptedData xmlns=' type=' <CipherData> <CipherValue>A23B45C564587</CipherValue> </CipherData> </EncryptedData> </purchaseOrder> <Payment> <CardId> </CardId> <CardName>visa</CardName> <ValidDate>12-...</ValidDate> </Payment>

26 Szöveg titkosítása <purchaseOrder> <Order> <Item>book</Item> <Id> </Id> <Quantity>12</Quantity> </Order> <Payment> <CardId> <EncryptedData xmlns=' type=' <CipherData> <CipherValue>A23B45C564587</CipherValue> </CipherData> </EncryptedData> </CardId> <CardName>visa</CardName> <ValidDate> </ValidDate> </Payment> </purchaseOrder>

27 Mit lehet XML-titkosítani?
Szöveget azon belül XML-t: type=' Nem-szöveget pl. képet: type='

28 Kulcsok Aszimmetrikus kulcs Szimmetrikus kulcs
átviteli folyamatban kicserélve Szimmetrikus kulcs előzetesen már kicserélve

29 Kulcs elhelyezése <purchaseOrder> <Order> <Item>book</Item> <Id> </Id> <Quantity>12</Quantity> </Order> <Payment> <CardId> <EncryptedData xmlns=' type=' <EncryptionMethod Algorithm=' '/> <ds:KeyInfo xmlns:ds=' <ds:KeyName>John Doe</ds:KeyName> </ds:KeyInfo> <CipherData> <CipherValue>A23B45C564587</CipherValue> </CipherData> </EncryptedData> </CardId> <CardName>visa</CardName> <ValidDate> </ValidDate> </Payment> </purchaseOrder> algoritmus neve

30 Titkosított információ helye
2 megoldás XML dokumentumba ágyazva <CipherData> <CipherValue>A23B45C564587</CipherValue> </CipherData> külön dokumentumban <CipherData> <CipherReference>...</CipherReference> </CipherData>

31 Hivatkozás külső anyagra
<?xml version='1.0' ?> <EncryptedData xmlns=' type=' <EncryptionMethod Algorithm=' '/> <ds:KeyInfo xmlns:ds=' <ds:KeyName>John Doe</ds:KeyName> </ds:KeyInfo> <CipherData> <CipherReference URI=" </CipherData> </EncryptedData>

32 Megrendelés fizetéssel
<bp:pencilOrder xmlns:bp=" <bp:pencilType>bp:StandardNumberTwo</bp:pencilType> <bp:quantity>100,000</bp:quantity> <bank:paymentInfo xmlns:bank=“ <bank:PaymentAmount>$999.95</bank:PaymentAmount> <bank:CrediCardNumber> </bank:CrediCardNumber > </bank:paymentInfo> </bp:pencilOrder>

33 Összeg titkosítva <bp:pencilOrder xmlns:bp=" <bp:OrderID>64B4A0D1-814E-4FF6-918A-DD7E7E1AECEA</bp:OrderID> <bp:pencilType>bp:StandardNumberTwo</bp:pencilType> <bp:quantity>100,000</bp:quantity> <bank:paymentInfo xmlns:bank=" <EncryptedData xmlns=" Type=" <EncryptionMethod Algorithm=" <ds:KeyInfo xmlns:ds=" <ds:RetrievalMethod URI="#SessKey" Type=" </ds:KeyInfo> <CipherData> <CipherValue>9oATk2hDK2+HcTVHg...</CipherValue> </CipherData> </EncryptedData> <EncryptedKey Id="SessKey" xmlns=" <EncryptionMethod Algorithm=" <ds:KeyName>Bob's Pencil Manufacturing Company's Public/Private Key</ds:KeyName> <CipherValue>CCBPowCwYDVR0PBA...</CipherValue> <ReferenceList> <DataReference URI="#SessKey"/> </ReferenceList> </EncryptedKey> </bank:paymentInfo> </bp:pencilOrder> <bank:PaymentAmount>$999.95</...> <bank:CrediCardNumber>123...</...>

34 Elemzés Csak a bankkártya-rész van titkosítva
Titkosításhoz szimmetrikus kulcs 3DES kódolással <EncryptionMethod Algorithm=" Szimmetrikus kulcs RSA-val titkosítva <EncryptionMethod Algorithm="

35 Aláírás és titkosítás együtt
SOAP bevezetése Simple Object Application Protocol, mint XML boríték formában: fejléc és törzs SOAP-header aláírás Signature szerkezettel SOAP-body tartalom titkosítva


Letölteni ppt "XML biztonság."

Hasonló előadás


Google Hirdetések