Ochrona selektywna

Subskrybuj RSS A A A
16 grudnia 2002
Przemysław Kazienko

Standardy XML Encryption i XML Signature pozwalają zabezpieczać całość bądź tylko część informacji zawartych w komunikatach XML.

Standardy XML Encryption i XML Signature pozwalają zabezpieczać całość bądź tylko część informacji zawartych w komunikatach XML.

Umiejscowienie podpisów XML SignatureKliknij, aby powiększyćUmiejscowienie podpisów XML SignatureBezpieczeństwo informacji w systemach informatycznych zapewniają technologie implementowane w protokołach niskiego poziomu, jak np. SSL, IPsec, S/MIME czy PGP. Mogłoby się wydawać, że ochrona na niskim poziomie ma same zalety, z których największą jest możliwość zabezpieczania dowolnego rodzaju informacji. Paradoksalnie, ta uniwersalność nie zawsze jest pożądana - aby bezpiecznie przesłać komunikat, trzeba bowiem zestawić bezpieczny kanał. Obniża to wydajność przetwarzania w rozwiązaniach czysto programowych lub też podwyższa koszt systemu o cenę sprzętowych akceleratorów kryptograficznych. Alternatywą dla zabezpieczeń niskopoziomowych są rozwiązania wyższego poziomu, oparte na powstających standardach opracowywanych w ramach organizacji WWW Consortium (W3C): zatwierdzony w lutym br. XML Signature i będący od października br. na ostatnim etapie standaryzacji - XML Encryption.

W przeciwieństwie do dotychczasowych metod nowe standardy pozwalają tworzyć bardzo elastyczne rozwiązania zabezpieczające. Po pierwsze, umożliwiają szyfrowanie, uwierzytelnianie i podpisywanie zarówno całych dokumentów XML, jak i wybranych ich tylko fragmentów. Możliwa jest więc ochrona całych elementów XML wraz ze znacznikami i atrybutami bądź też tylko treści elementów, bez znaczników. Po drugie, zabezpieczane informacje mogą stanowić integralną część dokumentu albo też jedynie być z nim powiązane przez wskazanie w dokumencie adresu URL, pod którym są przechowywane. Po trzecie, istnieje możliwość zabezpieczenia różnych fragmentów dokumentu za pomocą różnych algorytmów kryptograficznych lub kluczy. W efekcie znacznie łatwiejsze staje się stworzenie logiki uzależniającej sposób przetwarzania danych od tego, czy są one zabezpieczone (podpisane, zaszyfrowane), w jakim zakresie (całość, określone części) i w jaki sposób (np. rodzaj i siła algorytmu).

Szyfrowanie z XML Encryption

XML Encryption to język umożliwiający szyfrowanie dokumentu XML niemal w dowolny sposób. Przewidziano w nim możliwość wykorzystania następujących algorytmów kryptograficznych:

1. Szyfrowanie blokowe, symetryczne: potrójny DES; AES 128, 256 (obowiązkowo), a jedynie opcjonalnie 192

2. Szyfrowanie strumieniowe, symetryczne, w którym podaje się strumień bajtów jako długi jednorazowy klucz przetwarzany z tekstem źródłowym za pomocą funkcji XOR

3. Szyfrowanie oparte tylko na kodowaniu Base64

4. Szyfrowanie asymetryczne wykorzystywane do przekazywania klucza symetrycznego - RSA (w bezparametrowej wersji PKCS1-v1_5 oraz OAEP o trzech parametrach); obowiązkowe

5. Szyfrowanie oparte na metodzie Diffiego-Hellmana - asymetryczna metoda uzgadniania klucza (choć warto zauważyć, że standard XML Encryption nie wspomaga procesu negocjacji klucza); opcjonalnie

6. Algorytmy tworzenia skrótów: obowiązkowy SHA-1 (skrót 160-bitowy), zalecany SHA-256 oraz opcjonalnie: SHA-512 i RIPEMD-160

7. Inne, np. samodzielnie opracowane metody szyfrowania, które nie muszą być uwzględniane przez standardowe programy.

Element dokumentu XML zabezpieczony zgodnie ze standardem XML Encryption jest oznaczany jako EncryptedData i zawiera:

  • Zaszyfrowane dane lub wskazanie na nie i ewentualnie sposób ich transformacji
  • Informacje o sposobie deszyfrowania: algorytm i - opcjonalnie - jego parametry (np. długość klucza)
  • Informacje o kluczu publicznym. Może to być: zaszyfrowany asymetrycznie klucz symetryczny, wskazanie na umiejscowienie klucza (identyfikator miejsca URI, zwykle adres URL) lub inne przewidziane przez standard XML Signature (patrz dalej)
  • Wskazanie na elementy zaszyfrowane w ten sam sposób. Tym samym kluczem i algorytmem można zaszyfrować wiele różnych fragmentów dokumentu
  • Informacje dodatkowe, np. stempel czasowy, nr seryjny urządzenia kryptograficznego itd.
Na rynku istnieją już implementacje standardu XML Encryption, np. IBM XML Security Suite for Java, Phaos, XMLSec czy opracowany w polskiej firmie Pyton Software - COMiX.

Oceń artykuł

średnio: 0 liczba ocen: 0
1  2  dalej »

Komentarze (0)

Najnowsze

e-Sąd z odsieczą sprawiedliwości

Polski wymiar sprawiedliwości postrzegany jest jako skostniały i opieszały. Tymczasem kolejne e-usługi udostępniane przez Ministerstwo Sprawiedliwości ułatwiają życie przedsiębiorcom i usprawniają pracę sądów.

e-Zdrowie w Polsce i na świecie

Projekty informatyzacji służby zdrowia realizowane są na świecie z różnym powodzeniem. Skąd Polska mogłaby czerpać wzorce? A może jesteśmy skazani na własne rozwiązania?

Raport Państwo 2.0, czyli nowa wizja informatyzacji państwa

Michał Boni, minister administracji i cyfryzacji, zaprezentował raport "Polska 2.0. Nowy start dla e-administracji". Przedstawia on informacje na temat stanu realizacji projektów będących w gestii nowo utworzonego ministerstwa oraz prezentuje kierunki dalszych działań związanych z informatyzacją i cyfryzacją administracji publicznej w naszym kraju.

Cyberprzestępcy podążają za użytkownikami

Już dwie na trzy polskie firmy odnotowały ataki lub awarie, które spowodowały spadek produkcji. Co trzecia firma utraciła dane. Liczba takich przypadków będzie rosła, bo hakerzy biorą na cel najbardziej masowe technologie. Szybko reagują też na zmiany w firmowej architekturze.

Jak zaplanować karierę w branży IT

Doświadczenia łączone na różnych stanowiskach w firmach o odmiennych profilach są szczególnie cenione przez pracodawców. Dlatego warto głęboko przeanalizować możliwości rozwoju kariery, które obecnie stwarza rynek IT.

Jakie są różnice między chmurą a wirtualizacją

Wirtualizacja jest obecnie standardową technologią, stosowaną powszechnie w IT. Od środowiska chmury prywatnej dzieli ją jednak długa droga, gdyż wymaga ona uzupełnienia o istotne składniki.

Jakie są różnice między chmurą a wirtualizacją

Wirtualizacja jest obecnie standardową technologią, stosowaną powszechnie w IT. Od środowiska chmury prywatnej dzieli ją jednak długa droga, gdyż wymaga ona uzupełnienia o istotne składniki.

Rekomendacje



Serwisy IDG - Warunki obsługi - Kontakt - Redakcja - Regulamin - O nas - Polityka prywatności - Serwis zgodny z ASME
Reklama - Licencjonowanie treści - Prenumerata: Computerworld, Networld, PC World
Computerworld Polska i Computerworld Polska online są znakami towarowymi IDG Poland SA.
© Copyright 2012 International Data Group Poland S.A. 04-204 Warszawa ul. Jordanowska 12 tel.(+4822)321-78-00 fax(+4822)321-78-88