Europejski profil certyfikatu X.509

2006-06-01 00:00:00 +0100


Polska Ustawa o podpisie i towarzyszące rozporządzenia były opracowywane głównie na podstawie roboczych draftów unijnych zaleceń. Wersje finalne tych zmieniły się od 2001, w wielu miejscach znacząco. Poniżej opis aktualnej wersji zaleceń unijnych, wraz ze wskazaniem kilku “punktów zapalnych”.

keyUsage

Kwestia łączenia bitu niezaprzeczalności z innymi bitami jest najbardziej kontrowersyjną. Aktualny europejski profil certyfikatu dopuszcza taką możliwość, ale… zaleca nie łączenie. Towarzyszy temu także wyjaśnienie dlaczego i kiedy można a kiedy nie należy.

ETSI TS 102 280 definiuje (pkt 5.4.3) konkretnie takie kombinacje bitów w polu keyUsage, oznaczając je literami od A do E:

Type Non-Repudiation
[NR] (Bit 1)
Digital Signature
[DS] (Bit 0)
Key Encipherment
or Agreement

[KEA] (Bit 2 or 4)
A X
B X X
C X
D X X
E X

Kiedy jaka kombinacja?

Według uwag ETSI w punkcie 5.4.3:

  1. Jeśli certyfikat ma być używany do weryfikacji zobowiązania (commitment) wyrażonego podpisem pod dokumentami lub transakcją, to certyfikat powinien mieć keyUsage w kombinacji A lub B. To jest w tych zastosowaniach (commitment) powinien mieć ustawiony bit nonRepudiation.
  2. Z tych dwóch wariantów (A i B) ETSI zaleca używanie typu A czyli niełączenie nonRepudiation z digitalSignature.
  3. Certyfikaty kwalifikowane powinny mieć keyUsage tylko typu A, B lub C czyli albo nonRepudiation albo digitalSignature.

<h3>Dlaczego raczej nie łączyć?</h3>

Dalej następuje obszerne wyjaśnienie tych zaleceń. Kluczowy jest akapit, w którym ETSI wyjaśnia, że w przypadku środowiska, które nie pozostaje pod całkowitą kontrolą podpisującego (każdy przypadek poza "twardym" środowiskiem do podpisu) osoba podpisująca nie ma gwarancji, że podpis nie zostanie wykonany wbrew jej woli, na przykład w wyniku nadużycia lub błędu w oprogramowaniu wykorzystującym podpis do logowania do systemu.

Jeśli będzie to podpis weryfikowany certyfikatem z ustawionym równocześnie nonRepudiation to konsekwencje są bardzo poważne. Mówi o tym także obszernie rozdział 6.4 "Digital Signature without Data Representation" CWA 14365.

Jasno wynika z tego, że choć łączenie tych bitów jest dopuszczalne, to według ETSI powinno to być możliwe tylko wtedy, kiedy podpis jest składany w "twardym" środowisku do podpisu (dedykowane urządzenie do podpisu z zaufanym systemem operacyjnym) i tylko wtedy.

Jest to uzasadnienie przekonujące zarówno z prawnego jak i technicznego jak i praktycznego punktu widzenia. Powinno ono stanowić punkt wyjścia do decydowania w jakim środowisku można, a w jakim nie można łączyć te bity, zdecydowanie lepszy niż mętne kryterium podziału na "oprogramowanie publiczne" vs "niepubliczne" oraz "dom i biuro" pojawiające się w innych CWA i polskim rozporządzeniu.

<h2>Polski profil certyfikatu</h2>

Polski profil certyfikatu określa Rozporządzenie o warunkach technicznych. Zostało ono opracowane na podstawie wcześniejszych szkiców europejskiego profilu certyfikatu kwalifikowanego.

"nonRepudiation: przeznaczenie certyfikatu dla zapewnienia usługi niezaprzeczalności przez osoby fizyczne, ale jednocześnie dla innego celu niż określony w pkt f i g. Bit nonRepudiation może być ustawiony tylko w kwalifikowanych certyfikatach kluczy publicznych użytkowników służących do weryfikacji bezpiecznych podpisów elektronicznychi nie może być łączony z innymi przeznaczeniami, w tym w szczególności, o których mowa w pkt c-e związanych z zapewnieniem poufności," Załącznik nr 2: szczegółowe wymagania dotyczące kwalifikowanego certyfikatu i zaświadczenia certyfikacyjnego oraz listy uniewaŻnionych i zawieszonych certyfikatów, str. 31, pkt 1.2.3b

Komentarz:

  1. polski profil dopuszcza nonRepudiaton tylko w certyfikatach kwalifikowanych i nie może on być łączony z innymi bitami.
  2. z powyższego zapisu nie wynika jednak, że nonRepudiation jest jedynym dopuszczalnym keyUsage w certyfikatach kwalifikowanych.

W praktyce polskie centra certyfikacji - poza Signetem - w swoich politykach nie przewidują wystawiania certyfikatów kwalifikowanych z innymi bitami, niż bit nonRepudiation:

Centrum Dozwolone keyUsage Źródło
Sigillum nonRepudiation Polityce PCCE dla certyfikatów kwalifikowanych, str. 12
Certum nonRepudiation Polityka certyfikacji QCA 2.3, pkt 7.1.1.2, str 38
KIR nonRepudiation Polityka certyfikacji KIR SA dla certyfikatów kwalifikowanych, rozdz. 9, str. 20
Signet dowolny Polityka certyfikacji dla Kwalifikowanych Certyfikatów Centrum Certyfikacji Signet, rozdz. 5.1, str. 16-17

Signet w Polityce dopuszcza stosowanie dowolnego keyUsage z ograniczeniami pkt 1.2.3b Rozporządzenia o warunkach technicznych.