U
N I V ERSI D AD E FED ERAL D O RI OGRAN D E D O N
ORTECEN TRO D E CI ÊN CI AS
EX ATAS E D A TERRA
D
EPARTAM EN TO D EI
N FORM ÁTI CA EM
ATEM ÁTI CAA
PLI CAD AP
ROGRAM AD
EP
ÓS- G
RAD UAÇÃO EMS
I STEM AS EC
OM PUTAÇÃOUm Ser viço de Cer t ificação Digit al par a
Plat afor m as de Middlew ar e
Ca io Sé r gio de V a scon ce los Ba t ist a
Ca io Sé r gio de V a scon ce los Ba t ist a
Um Ser viço de Cer t ificação Digit al par a
Plat afor m as de Middlew ar e
Or ie n t a dor a :
Pr ofa. Dr a. Thaís Vasconcelos Bat ist a UFRN
Ex a m in a d or e s:
Pr of. Dr . Guido Lem os de Souza Filho UFPB
Pr of. Dr . Andr é Maur ício Cunha Cam pos UFRN
Pr of. Dr . Nelson Sout o Rosa UFPE
N a t a l – RN
Sum ár io
1 . I N TROD UÇÃO 1
2 . CERTI FI CAD OS D I GI TAI S 6
2.1 CONCEI TOS BÁSI COS... ... 6
2.2 INFRA-ESTRUTURA DE CHAVEPÚBLI CA... ... 8
2.3 FORMATO DOS CERTI FI CADOS DI GI TAI S... 10
2.3.1.SI MPLEPUBLI CKEY NFRASTRUCTURE ( SPKI ) ... 10
2.3.2.X.509... ... 19
2.4 LI STA DE REVOGAÇÃO DE CERTI FI CADOS... 23
2.5 AUTORI DADES CERTI FI CADORAS... 27
2.6 EMI SSÃO DE CERTI FI CADO... 28
2.7 AUTORI DADES REGI STRADORAS LOCAI S... 30
2.8 SERVI ÇO DE DI RETÓRI O... 31
2.8.1.LDAP ... 33
2.8.1.1.MODELO DE I NFORMAÇÕES DO LDAP... 34
2.8.1.2.NOMES LDAP ... 37
2.8.1.3.O MODELO FUNCI ONAL ... 37
2.8.1.4.SEGURANÇA... 38
2.8.1.5.O FORMATO LDI F( LDAP DATAINTERCHANGE FORMAT) ... 39
2.9 VALI DAÇÃO DE CERTI FI CADOS... 39
2.10 DELEGAÇÃO... 46
2.11 CERTI FI CADOS DE ATRI BUTOS... 50
3 . PLATAFORM AS D E M I D D LEW ARE 5 6 3.1 INTRODUÇÃO ... 56
3.2 CORBA ... 58
3.2.1 ARQUI TETURACORBA ... 59
3.2.2 SEGURANÇA EM CORBA ... 60
4 . SERV I ÇO D E CERTI FI CAÇÃO D I GI TAL 6 5 4.1 ARQUI TETURA GENÉRI CA... 65
4.2 FUNCI ONAMENTO... 69
4.3 FORMATO DOS CERTI FI CADOS... 82
5 . I M PLEM EN TAÇÃO D O SERV I ÇO D E CERTI FI CAÇÃO D I GI TAL PARA A
PLATAFORM A CORBA 9 2
5.1 CLASSES... 93
5.2 DESCRI ÇÃO... 95
5.3.ESTUDO DE CASO: SI STEMA DE CONTROLE BANCÁRI O... ... 100
6 . TRABALH OS RELACI ON AD OS 109
6.1 USANDOCERTI FI CADOS SPKI PARA AUTORI ZAÇÃO EM SI STEMAS ORI ENTADOS A OBJETOS BASEADOS EM CORBA... 109
6.2 REFLEXÕES SOBRE X.509 E LDAP. COMO A SEPARAÇÃO ENTRE IDENTI DADE E ATRI BUTOS PODE SI MPLI FI CAR UMA PKI ... 114
6.3.INTEGRANDO SERVI ÇOS PMI EM APLI CAÇÕESCORBA ... 118
6.4.ANÁLI SECRÍ TI CA... 122
7 . COM EN TÁRI OS FI N AI S 1 2 5 7.1 CONTRI BUI ÇÕES... 126
List a de Figur as
FI GURA2.1 . (A) ESTRUTURA DE UM CERTI FI CADO ... 11
FI GURA2.1 . (B) CERTI FI CADO DE KB EMI TI DO POR KA... 12
FI GURA2.2 . CERTI FI CADOS DE KC... 15
FI GURA2.3 . NOVO CERTI FI CADO DE KC... 15
FI GURA2.4 . CERTI FI CADOS SPKI E CERTI FI CADOS DE NOMES SPKI / SDSI ... 17
FI GURA2.5 . ELEMENTOS DOS CERTI FI CADOS DE NOMES SPKI / SDSI ... 18
FI GURA2.6 . CERTI FI CADOS DE NOMES... 19
FI GURA2.7 . FORMATO DE UM CERTI FI CADO X.509 V3 ... 21
FI GURA2.8 . FORMATO DA LI STA DE REVOGAÇÃO DE CERTI FI CADOS X.509 VERSÃO 2 ... 26
FI GURA2.9 . MODELO DE OPERAÇÃO DE UMA CA... 27
FI GURA2.10. MODELO DE OPERAÇÃO DE UMA LRA ... 32
FI GURA2.11. ORI GEM E DESTI NO NO MESMO DOMÍ NI O... 42
FI GURA2.12. ORI GEM E DESTI NO EM DI FERENTES DOMÍ NI OS ... 42
FI GURA2.13. ESTRUTURA HI ERÁRQUI CA TOP-DOWN... 45
FI GURA2.14. FLORESTAS DE HI ERARQUI AS TOP-DOWN ... 46
FI GURA2.15. DELEGAÇÃO... 47
FI GURA2.16. PROXY CERTI FI CATE ... 48
FI GURA2.17. CADEI A DE CERTI FI CADOS... 51
FI GURA3.1. EXEMPLO DE USO DE CERTI FI CADOS DI GI TAI S PELAS PLATAFORMAS DE MI DDLEWARE ... 58
FI GURA3.2. ARQUI TETURA CORBA ... 59
FI GURA3.3. ESQUEMAS DE FUNCI ONAMENTO DO CORBA ... 60
FI GURA3.4. I NI CI ALI ZAÇÃO DE UMA APLI CAÇÃO RECEBENDO CERTI FI CADO.. 61
FI GURA3.5. EXEMPLO DE CONTROLE DE ACESSO NO CORBASEC... 63
FI GURA3.6. REGRA DE CONTROLE DE ACESSO... 63
FI GURA4.1. ARQUI TETURA GENÉRI CA ... 67
FI GURA4.2. FUNCI ONAMENTO DO SERVI ÇO DE CERTI FI CAÇÃO DI GI TAL PARA PLATAFORMAS DE MI DDLEWARE ... 70
FI GURA4.3. DI AGRAMA DE CASOS DE USO... 74
FI GURA4.4. SOLI CI TAÇÃO DE EMI SSÃO DE CERTI FI CADO DE I DENTI DADE .... 75
FI GURA4.5. SOLI CI TAÇÃO DE EMI SSÃO DE CERTI FI CADO DE ATRI BUTO... 76
FI GURA4.6. SOLI CI TAÇÕES DE REVOGAÇÃO DE CERTI FI CADO ... 78
FI GURA4.8. OBTENÇÃO DO STATUS DE REVOGAÇÃO DE UM CERTI FI CADO DE
I DENTI DADE, DE ATRI BUTO OU PROXY CERTI FI CATE... 81
FI GURA4.9. PROCESSO DE VALI DAÇÃO DE CERTI FI CADOS DE I DENTI DADE OU DE ATRI BUTO...82
FI GURA4.10. PROCESSO DE EMI SSÃO E VALI DAÇÃO DE UM PROXY CERTI FI CATE ... 83
FI GURA4.11. EXEMPLOS DE CERTI FI CADOS... 85
FI GURA5.1. DI AGRAMA DE CLASSES... 93
FI GURA5.2. TRECHO DE CÓDI GO PARA GERAÇÃO DE CHAVES... 95
FI GURA5.3. PUBLI CAÇÃO DE OBJETOS DO SERVI ÇO DE DI RETÓRI O... 96
FI GURA5.4. HI ERARQUI A DE CONFI ANÇA... 97
FI GURA5.5. CÓDI GO PARA ENCONTRAR PONTO DECONFI ANÇA MÚTUO ... 98
FI GURA5.6. ADI CI ONAR/RECUPERAR ATRI BUTOS DO CERTI FI CADO DE ATRI BUTOS ... 99
FI GURA5.7. VALI DAÇÃO DA CHAVE PÚBLI CA... 100
FI GURA5.8. DI AGRAMA DE CLASSES DA APLI CAÇÃO BANCÁRI A. ... 101
FI GURA5.9. INTERFACE CLI ENT... 102
FI GURA5.10. INTERFACE BANK... 102
FI GURA5.11. INTERFACE ACCOUNT... 102
FI GURA5.12. INSTALAÇÃO DO SERVI ÇO DE CERTI FI CAÇÃO NO SERVI DOR... 103
FI GURA5.13. INSTALAÇÃO DA I MPLEMENTAÇÃO DO ACCOUNT... 103
FI GURA5.14. CRI AÇÃO DE UMA NOVA CONTA... 104
FI GURA5.15. DEFI NI ÇÃO DOS PRI VI LÉGI OS DOS PAPÉI S... 105
FI GURA5.16. IMPLEMENTAÇÃO DO MANAGER... 107
FI GURA5.17. AUTENTI CAÇÃO DOS CLI ENTES... 108
FI GURA6.1. ARQUI TETURA BASEADA EM CORBA COM SPKI ... 109
FI GURA6.2. PASSANDO OS CERTI FI CADOS NO OBJETO CURRENT... 112
List a de t abelas
TABELA2.1. ALGUNS ATRI BUTOS PRÉ-DEFI NI DOS PARA O LDAP ... 35
AGRAD ECI M EN TOS
A Deus, pois nada acont ece a não ser por sua supr em a vont ade.
Aos m eus pais, pelo exem plo de dignidade e busca do saber .
À m inha esposa I sabel Cr ist ina e ao m eu filho César August o, que souber am
com pr eender as m inhas ausências.
Ao Pr of. Dr . Jair Leit e, pelo indispensáv el apoio, com preensão e est ím ulo que m e
possibilit ar am vencer os obst áculos e r ealizar est a et apa de gr ande significação
par a m im .
Ao Pr of. Dr . Guido Lem os de Souza Filho, a quem m uit o agr adeço pela
solidar iedade dem onst r ada e pelo apoio, or ient ação e est ím ulo com que sem pr e
m e dist inguiu.
Aos colegas Andr é Gust avo de Alm eida e Thiago Leir os, aos quais agr adeço pelo
inest im ável apoio recebido.
À m inha irm ã Christ ine e ao m eu sobrinho Juarez pela com preensão e apoio nos
m om ent os m ais difíceis.
AGRAD ECI M EN TO ESPECI AL
À Pr ofa. Dr a. Thaís Vasconcelos Bat ist a, a quem ser ei sem pr e gr at o e sem cuj a
solidar iedade, apoio, or ient ação, dedicação, est ím ulo e com pr eensão em t odos os
m om ent os, não t er ia sido possível alcançar est e obj et ivo de gr ande im por t ância
Re su m o
At ualm ent e, plat afor m as de int egr ação de com ponent es, t am bém
cham adas de plat afor m as de m iddlew ar e, t êm t ido um im por t ant e papel no
supor t e ao desenvolvim ent o de sist em as dist r ibuídos. Em r elação a cont r ole de
acesso, plat afor m as de m iddlew ar e t êm ut ilizado cer t ificados digit ais, par a
ver ificar a aut ent icidade de um elem ent o, em conj unt o com cont role de acesso
baseado em papéis, par a ident ificar quais oper ações poder ão ser acessadas por
t al elem ent o. Apesar dos cer t ificados t er em um papel fundam ent al no supor t e a
segur ança em plat afor m as de m iddlew ar e, a m aior ia delas não define r equisit os
par a obt enção, m anut enção, validação e delegação de cert ificados.
Esse t rabalho t em com o obj et ivo propor um serviço genérico para
cer t ificação digit al em plat afor m as de m iddlew ar e. Esse ser viço deve ofer ecer
flexibilidade at r avés do uso conj unt o de cer t ificados de chave pública e
cer t ificados de at r ibut os de for m a a dist inguir a função de aut ent icação da função
de aut or ização. Os cer t ificados de at r ibut os dão supor t e ao cont r ole de acesso
baseado em papéis. A flexibilidade t am bém deve ser endereçada at ravés do
supor t e a delegação. Na im plem ent ação par a difer ent es plat afor m as de
m iddlew ar e o cont r ole de acesso baseado em cer t ificados deve funcionar de
for m a t r anspar ent e para os obj et os.
De for m a a validar o ser viço pr et ende- se im plem ent á- lo e t est á- lo no
Abst r a ct
Now adays due t o t he secur it y vulner abilit y of dist r ibut ed syst em s, it is
needed m echanism s t o guarant ee t he securit y requirem ent s of dist ribut ed obj ect s com m unicat ions. Middlew ar e Plat for m s – com ponent int egr at ion plat for m s – pr ovide secur it y funct ions t hat t ypically offer ser vices for audit ing, for
guar ant ee m essages pr ot ect ion, aut hent icat ion, and access cont r ol. I n or der t o suppor t t hese funct ions, m iddlew ar e plat for m s use digit al cer t ificat es t hat ar e pr ovided and m anaged by ext er nal ent it ies.
How ever , m ost m iddlew ar e plat for m s do not define r equir em ent s t o get , t o m aint ain, t o validat e and t o delegat e digit al cer t ificat es. I n addit ion, m ost digit al cer t ificat ion syst em s use X. 509 cer t ificat es t hat ar e com plex and have a
lot of at t r ibut es.
I n or der t o addr ess t hese pr oblem s, t his w or k pr oposes a digit al cert ificat ion gener ic ser vice for m iddlew ar e plat for m s. This ser vice pr ovides
flexibilit y via t he j oint use of public key cer t ificat es, t o im plem ent t he aut hent icat ion funct ion, and at t r ibut es cer t ificat es t o t he aut hor izat ion funct ion. I t also suppor t s delegat ion. Cer t ificat e based access cont r ol is t r anspar ent for
obj ect s. The pr oposed ser vice defines t he digit al cer t ificat e for m at , t he st or e and r et r ieval syst em , cer t ificat e validat ion and suppor t for delegat ion.
I n or der t o validat e t he pr oposed archit ect ur e, t his w or k pr esent s t he
Ca pít u lo 1
I N TROD UÇÃO
Sist em as dist r ibuídos são, por nat ur eza, m ais vulneráveis a problem as
de segur ança que os dem ais, um a vez que há, pot encialm ent e, m ais lugar es a
serem alvos de at aques. Por t ant o, é necessár io gar ant ir a int egridade e a
pr ivacidade na com unicação ent r e os elem ent os dist r ibuídos, bem com o for necer
m ecanism os de cont r ole de acesso aos r ecur sos dist r ibuídos.
At ualm ent e, plat afor m as de int egr ação de com ponent es, t am bém
cham adas de plat afor m as de m iddlew ar e [ Ber nst ein 1996] , t em t ido um
im por t ant e papel no supor t e ao desenvolvim ent o de sist em as dist r ibuídos. Est as
plat afor m as ofer ecem um a infr a- est r ut ur a que inclui supor t e a com unicação ent r e
com ponent es dist r ibuídos e het er ogêneos e um m odelo de pr ogr am ação que
inclui definição de int er face de com ponent es e separ ação ent r e int er face e
im plem ent ação. São ex em plos de plat afor m as de m iddlew ar e: CORBA [ OMG
1998] , Ent er pr ise JavaBeans [ Sun 1997] , ent re out r os.
Em r elação à segur ança, ger alm ent e as plat afor m as de m iddlew ar e
ofer ecem ser viços de segur ança que t ipicam ent e abr angem funções par a
aut ent icação, aut or ização, audit or ia e prot eção de m ensagens. A especificação
CORBA ofer ece um ser viço de segur ança, o CORBASec [ Lang 2002, OMG 2001] ,
Tr adicionalm ent e, decisões de aut or ização e cont r ole de acesso são
baseadas no uso de list as de cont r ole de acesso ( ACLs) . ACLs são adequadas
par a sist em as cent r alizados m as não são escaláveis par a uso em sist em as
dist r ibuídos [ Lam pinen 1999] . Além disso, ACLs im pedem a delegação de
aut or izações par a um a t er ceir a par t e, que é um a car act er íst ica desej ável em um
am bient e dist r ibuído. Por essas r azões, plat afor m as de m iddlew ar e, com o CORBA
e EJB, t êm adot ado cont r ole de acesso baseado em papéis ( Role Based Access
Cont r ol – RBAC) . Nesse t ipo de cont r ole de acesso os privilégios de acessos são
concedidos a papéis e não a usuár ios indiv iduais. Papéis são cr iados de acor do
com as difer ent es funções em um a or ganização e usuár ios são associados a
papéis com base nas suas r esponsabilidades e qualificações. Em um a inst it uição
bancár ia, por exem plo, o cont r ole de acesso ser ia associado aos seguint es
papéis: ger ent e, caixa, cor r ent ist a, et c. Essa est r at égia sim plifica o
ger enciam ent o de per m issões [ Zhou 2003] .
Um a out r a opção explor ada em m uit os t r abalhos [ Lam pinen 1999,
Lopez 2003, Zhou 2003] par a evit ar os problem as associados a ACLs consist e no
uso de cer t ificados digit ais [ Feghhi at al. 1999] com o m ecanism o usado na
aut or ização e cont r ole de acesso em am bient es dist r ibuídos. Em alguns cont ext os
cert ificados digit ais são usados em conj unt o com cont r ole de acesso baseado em
papéis. Em CORBA, por exem plo, pr im eir am ent e os cer t ificados digit ais são
usados para se ver ificar a aut ent icidade de um elem ent o e, em seguida, o
cont r ole de acesso baseado em papéis é ut ilizado par a ident ificar quais oper ações
poder ão ser acessadas por t al elem ent o.
A m aior ia dos sist em as de cert ificação digit al ut ilizam cer t ificados
X.509 [ CCI TT 1998] cuj o for m at o padr ão inclui a ident idade do pr opr iet ár io, sua
chave pública e seus at r ibut os. Apesar desse padr ão ser am plam ent e usado em
vár ios sist em as, alguns t r abalhos [ Zhou 2003, Gr aaf e Car valho 2004] cr it icam o
dem ais, o que com pr om et e a pr ivacidade do pr opriet ár io j á que cont ém seus
dados pessoais. Tam bém se alega que o excesso de at r ibut os é desnecessár io em
um cenár io onde há um pr ocesso on- line par a ver ificação de cer t ificados. Out r o
pr oblem a r essalt ado r efer e- se a necessidade de t odos os at r ibut os ser em
conhecidos ant es da em issão do cer t ificado, o que im plica que cada m udança em
um at r ibut o significa que o cer t ificado dev e ser r evogado e um novo cert ificado
deve ser em it ido. Além disso, par a difer ent es pr opósit os são necessár ios
difer ent es at r ibut os.
Em t er m os de cont r ole de acesso um out r o aspect o im por t ant e r efer
e-se à delegação. Sist em as com supor t e a delegação per m it em que um a ent idade
do sist em a delegue aut or idade a um a segunda ent idade de for m a a r ealizar
algum as funções em nom e da pr im eir a. O X.509 não dá supor t e a delegação.
De for m a a evit ar t ais problem as, alguns t r abalhos [ I TU- T 2001, Gr aaf
e Car valho 2004] pr opõem a separ ação das infor m ações básicas de ident ificação
do pr opr iet ár io e dos at r ibut os. Essa est r at égia r epr esent a a separ ação ent r e
aut ent icação ( ident ificação) e aut or ização ( cont r ole de acesso) . A ver são 4 do
X.509 padr oniza um m ecanism o de aut or ização cham ado I nfr aest r ut ur a de
Gerenciam ent o de Privilégios ( PMI ) que inclui o conceit o de Cer t ificados de
At r ibut os ( ACs) propost a pelo ANSI X9. Com essa nov a est rat égia há a dist inção
ent r e Aut oridades de Chaves Públicas e Aut or idades de At r ibut os ( AA) . Nesse
caso, a idéia é pr over aut or ização baseada no cer t ificado de at r ibut os após a
aut ent icação baseada no cer t ificado de chave pública. Cer t ificados de at r ibut os
podem ser usados para vár ios pr opósit os podendo cont er r elacionam ent os ent r e
m em br os de gr upos, papéis, et c.
O obj et ivo desse t r abalho é pr opor um a ar quit et ur a genér ica par a
cer t ificação digit al em plat afor m as de m iddlew ar e que ofereça flexibilidade
at r avés do uso conj unt o de cer t ificados de chave pública e cer t ificados de
aut or ização. A flexibilidade t am bém deve ser ender eçada at r avés do supor t e a
delegação. Na im plem ent ação par a difer ent es plat afor m as de m iddlew ar e o
cont r ole de acesso baseado em cer t ificados deve funcionar de for m a t ranspar ent e
par a os obj et os.
A flexibilidade for necida por ser viços de segur ança de m odelos de
com ponent es par a est abelecim ent o de polít icas de cont role de acesso, com o, por
exem plo, do CORBA e EJB, per m it e a adoção de cer t ificados digit ais com o
est rat égia de cont r ole de acesso. Em CORBA, por exem plo, o CORBASec ut iliza
cer t ificados na cr iação de cr edenciais par a os elem ent os do sist em a, no ent ant o
não define r equisit os par a obt enção, m anipulação e validação de cer t ificados.
[ Mar t ins 2003] desenvolveu um m ódulo par a validação de cer t ificados em
am bient es CORBA usando cer t ificados SSL [ Fr eier at al. 1996] . No ent ant o, o
t r abalho r est r inge- se a validar cer t ificados SSL, um a vez que o seu foco não foi
em um sist em a de cert ificação digit al com plet o, endereçando form at o, em issão,
validação e delegação de cer t ificados. O pr esent e t r abalho pr opõe- se a
desenvolver um serviço de cert ificação digit al para plat aform as de m iddlew are
que defina desde o for m at o a ser adot ado par a os cer t ificados digit ais at é o
sist em a de arm azenam ent o, recuperação e validação de cert ificados bem com o o
supor t e à delegação e a ut ilização dessa ar quit et ur a em plat afor m as de
m iddlew ar e.
De for m a a validar a ar quit et ur a pr opost a, pr et ende- se im plem ent á- la
e t est á- la em conj unt o com a plat afor m a de m iddlew ar e CORBA.
Est e t r abalho est á organizado da seguint e for m a. O Capít ulo 2
apr esent a conceit os e padr ões r elacionados com cer t ificação digit al. O Capít ulo 3
int r oduz plat afor m as de m iddlew ar e e o ser viço de segur ança da plat afor m a
CORBA. O Capít ulo 4 apr esent a o ser viço de cert ificação digit al para plat aform as
de m iddlew ar e pr opost o nesse t r abalho. Nesse Capít ulo são descr it os a
pelo ser viço. O Capít ulo 5 apr esent a a im plem ent ação do serviço de cert ificação
digit al par a a plat afor m a de m iddlew ar e CORBA e um est udo de caso que
dem onst r a as funcionalidades do ser viço. O Capít ulo 6 com ent a alguns t r abalhos
relacionados e apresent a um a análise crít ica da form a com o os m esm os se
relacionam com o serviço de cert ificação digit al pr opost o nest e t rabalho. O
Capít ulo 7 apr esent a alguns com ent ár ios finais, descr eve as cont r ibuições desse
t r abalho e os t r abalhos fut ur os que são suger idos com o for m a de dar
Ca pít u lo 2
CERTI FI CAD OS D I GI TAI S
2 .1 C o n c e i t o s B á s i c o s
Cer t ificados digit ais são elem ent os par a dist r ibuição de chaves públicas que,
t r adicionalm ent e cont êm , ent r e out r as inform ações, a chave pública e at r ibut os
do seu t it ular . Por t ant o, a finalidade do cer t ificado digit al é publicar a chave
pública de um a ent idade.
Os cer t ificados são em it idos por aut or idades cert ificadoras ( CA –
Cer t ificat e Aut hor it y) , que são t erceiros que oferecem serviços de aut ent icação
de chaves públicas, list agem de revogação de cert ificados e assinam digit alm ent e
os cer t ificados. O cer t ificado é enviado ao seu t it ular pela aut oridade cert ificador a
que o em it iu.
Os pr incipais com ponent es de um cer t ificado são, em ger al: a chave
pública, a ident idade da ent idade t it ular do cer t ificado ( que pode ser um a pessoa,
um disposit ivo de har dw ar e ou um pr ocesso) e a assinat ur a digit al da aut or idade
cert ificador a em issora do cert ificado.
Um Cer t ificado Digit al associa um a chave pública de um a ent idade a
que a chave pública per t ence à ent idade ident ificada e que a m esm a possui a
chave pr ivada cor r espondent e. Assim , um Cer t ificado Digit al gar ant e que a chave
pública do seu t it ular é confiável.
Os cer t ificados digit ais possibilit am , dent r e out r as coisas, usar
cr ipt ogr afia; usar assinat ur a digit al; ver ificar a assinat ur a de um a out r a par t e ( ou
par ceir o de com unicação) ; cont r olar o acesso aos r ecur sos; codificar pr ivilégios
de aut or ização.
Tipicam ent e, de posse de um cer t ificado digit al, seu t it ular pode
enviá- lo aos dest inat ários de suas m ensagens, que, par a validá- lo, deve cont at ar
a CA em issor a do cer t ificado. Dest a for m a, os r efer idos dest inat ár ios podem
passar a confiar na chave pública do t it ular . As m ensagens a ser em enviadas
pelo t it ular do cert ificado são assinadas digit alm ent e com a chave privada e
decr ipt ada pelo dest inat ár io com a chave pública do em issor . Por ém , com o a
chave pública pode ser do conhecim ent o de t er ceir os, não exist e sigilo na
com unicação nesse sent ido ( do t it ular par a o dest inat ár io) . Em um pr ogr am a de
e- m ail, pode- se habilit ar a assinat ur a digit al e as m ensagens passarão a ser em
enviadas com a assinat ur a do em issor da m ensagem em anexo. A m ensagem
nesse caso não é cr ipt ogr afada, m as são enviadas infor m ações de cont r ole que o
r ecept or da m ensagem consegue ver ificar a ident idade de quem enviou a
m ensagem , em conj unt o com a ent idade em issor a do cer t ificado digit al [ Tor r es
2002 ] .
I nver sam ent e, as m ensagens que ser ão enviadas de volt a pelos
dest inat ár ios ser ão encr ipt adas com a chave pública ext r aída do cer t ificado e
decript ada pelo t it ular com sua chave pr ivada. Com o só o t it ular do cer t ificado
conhece sua chave privada, apenas ele pode decr ipt ar essa m ensagem , e,
por t ant o a com unicação nesse sent ido ( do dest inat ár io par a o t it ular ) é sigilosa.
Out r a for m a de se saber a chave pública de um a ent idade, é at r avés
de um a list agem pública de cer t ificados digit ais. Tal list agem é um banco de
dados cont endo cer t ificados digit ais públicos. O pr ópr io pr ogr am a de e- m ail
pr ocur a pela chave pública, desde que o pr ogr am a est ej a apont ando par a um
ser viço de dir et ór io público [ Tor r es 2002] . Par a assegur ar que um cert ificado não
é for j ado, ist o é, que um int r uso não associe sua chave pública à ident idade do
t it ular par a exer cer at ividades fr audulent as, deve- se assegur ar que o cer t ificado
foi de fat o em it ido por um a aut or idade cer t ificador a. Por isso, um a aut or idade
cer t ificador a após aut ent icar a ident idade do t it ular , incor por a sua assinat ur a
digit al no cer t ificado. A assinat ur a digit al é calculada com put ando um valor hash
a part ir do cert ificado e encript ando a m esm a com sua chave privada. Dest a
for m a um int r uso não pode for j ar um cer t ificado de um a aut or idade cer t ificador a,
um a vez que não t em com o ger ar a assinat ura digit al cor r et a, pois não conhece a
chave pr ivada da r efer ida aut or idade. Além disso, se um int r uso fizer qualquer
alt eração no cert ificado, o valor hash não coincide com a assinat ur a da
aut or idade cer t ificador a cont ida no cer t ificado [ Feghhi at al. 1999] .
2 .2 I n fr a - Est r u t u r a de Ch a v e Pú blica
A ut ilização da t ecnologia de chave pública para áreas
geogr aficam ent e dist r ibuídas r equer a cr iação de um a infr a- est r ut ur a de chave
pública ( PKI –Public- Key I nfr ast ruct ur e) que t or ne viável a ut ilização dessa
t ecnologia. Um a infr a- est r ut ur a de chave pública pode ser definida com o o
conj unt o de har dw ar e, soft w ar e, pessoas, polít icas de segur ança e pr ocedim ent os
necessár ios par a cr iar , ger enciar , ar m azenar , dist r ibuir e r evogar cer t ificados de
chave pública, baseado em cr ipt ogr afia de chave pública. Essa definição m ost r a
dessa cooper ação é est abelecer um r elacionam ent o confidencial ent r e seus
usuár io[ Bat ar fi 2003] . Um a PKI define padr ões, aut or idades cer t ificador as,
est r ut ur as ent r e m últ iplas CA, m ét odos par a descobr ir e validar cam inhos de
cer t ificação, pr ot ocolos oper acionais, pr ot ocolos de ger enciam ent o, fer r am ent as e
legislação. Os prot ocolos oper acionais t r at am das exigências para int erações
on-line e off- on-line ent r e difer ent es com ponent es de duas PKI ( por exem plo, ent r e
duas CAs ou ent r e um a CA e um sist em a usuár io) . Pr ot ocolos de ger enciam ent o
t rat am de regist ro, inicialização, cer t ificação, r evogação, e r ecuper ação do par de
chaves [ Feghhi at al. 1999] .
As especificações das polít icas de segur ança da PKI são feit as at r avés
dos padr ões. At ualm ent e exist em dois padr ões aber t os de PKI [ Bat ar fi 2003] :
a. A Recom endação X.509 da I nt ernat ional Telecom m unicat ion
Union-Telecom unicat ion St andar dizat ion Sect or ( I TU- T) e I SO/ I nt ernat ional
Elect r ot echnical Com m ission ( I EC) , publicado pela pr im eir a vez em
1988 com o par t e do padr ão par a ser viço de dir et ór io X.500
[ISO 1994,
Chadwick 1994]
.b. Par a o am bient e da I nt er net , o principal fór um par a especificação é o
gr upo de t r abalho de I nfr a- est r ut ur a de Chave Pública ( PKI X) , do
I nt er net Engineer ing Task For ce ( I ETF)
.
A r ecom endação X.509 v3 define um a est r ut ur a para um a PKI ,
incluindo a em issão, ger enciam ent o, uso e r evogação de cer t ificados. Est a
est r ut ur a define o for m at o dos cer t ificados e seus at r ibut os, o for m at o da list a de
r evogação de cer t ificados e seus at r ibut os, definição de cam pos de ext ensão, e
um esquem a de ar m azenam ent o dos obj et os em dir et ór ios [ Bat ar fi 2003] .
O padr ão PKI X foi pr opost o com o aper feiçoam ent o do X.509, e
desenvolveu novos padr ões par a uso do X.509 na I nt er net , com o o Pr ot ocolo de
inclui um prot ocolo para inicializar, cert ificar, at ualizar e revogar ent idades;
Pr ot ocolo de St at us do Cert ificado Online ( OCSP – Online Cer t ificat e St at us
Pr ot ocol) ; For m at o de Solicit ação de Ger enciam ent o de Cer t ificado (
CMRF-Cer t ificat e Managem ent Request For m at ) ; Uso de FTP e HTTP par a t ranspor t e das
oper ações da PKI , et c. O PKI X t em as m esm as funções do X.509 o qual facilit a a
ident ificação, aut ent icação, cont r ole de acesso, e aut or ização na I nt er net . O PKI X
t am bém define um per fil par a os cer t ificados e um a list a de r evogação de
cer t ificados.
2 . 3
F o r m a t o d o s Ce r t i f i c a d o s D i g i t a i s
2 .3 .1 Sim ple Pu blic Ke y I n fr a st r u ct u r e ( SPKI )
A SPKI ( Sim ple Public Key I nfr ast r uct ur e) [ Wang 1998, Ellison e I nt el,
1999, Ellison et al. 1999, Ellison 1998] define cert ificados de chave pública para
aut or ização ( cont r ole de acesso) e usa a chave pública das ent idades em vez de
seus nom es, evit ando assim , o uso de nom es únicos globais par a as ent idades e
aut or idades globais de cer t ificação. A SPKI especifica apenas o for m at o do
cert ificado, m as não os pr ot ocolos que ir ão usá- lo. Um cer t ificado SPKI é um a
m ensagem assinada com a chave pública do em issor que consist e de cinco
cam pos: ( 1) A chave pública do em issor ( pessoa ou qualquer ent idade) ou seu
valor hash; ( 2) A chave pública do usuár io t it ular do cert ificado ou seu valor hash
ou ainda seu nom e; ( 3) Delegação, que cont ém um valor booleano par a
delegação, definindo se a aut or ização pode ser delegada pelo usuário t it ular para
um a t er ceir a par t e; ( 4) Aut or ização, que especifica os dir eit os de acesso
gar ant idos ao usuár io t it ular cuj o cont eúdo depende int eiram ent e da aplicação,
pois difer ent es aplicações definem difer ent es dir eit os de acesso; ( 5) Validade que
define o per íodo no qual o cer t ificado pode ser consider ado válido. A Figur a 2.1
cert ificado em it ido pela chave pública de Alice ( Ka) para a chave pública de Bob
( Kb) .
As pr incipais vant agens dest es cer t ificados são as seguint es [ Lam pinen
1999] :
a. Descent r alização: Os cer t ificados podem ser em it idos liv rem ent e por
qualquer pessoa e não apenas por um a aut oridade cent ral com o no
padr ão X.509.
( a )
Ch a v e 1 Ch a v e 2 Pode
Re de le ga r ?
D ir e it os
D a t a s D a t a s de V a lida de Au t or iz a çã o
Em issor
Tit u la r
de le ga çã o
Assin a do pe la Ch a v e Pr iva da Cor r e spon de n t e à Ch a v e 1
Ka Kb V e r da de ir o
Pe r m issõe s pa r a le r e e x e cu t a r a r qu ivos sob Alice / Pr oj e t o
( b)
Figu r a 2 .1 : ( a ) Est r u t u r a de u m ce r t ifica d o e ( b) Ce r t ifica d o de Kb e m it ido por Ka .
b. Delegação de aut or ização: Os dir eit os de acesso podem ser delegados
( t odos ou um a par t e deles) , for m ando assim , um a cadeia de
cer t ificados.
c. Per m issões flexíveis: Aut or izações e per m issões podem ser livr em ent e
definidas e dist r ibuídas. Por exem plo, um usuár io que t enha um a
cont a em um sist em a Unix, pode em it ir cer t ificados par a t er ceir os,
est abelecendo det er m inadas per m issões par a os m esm os dur ant e
cer t o int er valo de t em po, com o t am bém quais per m issões o m esm o
pode r epassar ou não par a out r os. Out r o exem plo ser ia um a em pr esa
em it ir cert ificados para seus em pregados, est abelecendo que
oper ações bancár ias os m esm os poder iam efet uar , em que per íodo de
t em po, que lim it es de valor es devem ser obser vados, et c. Por t ant o,
deve ser possível definir novos t ipos de perm issões par a cada nova
aplicação.
d. Sem ligações a nom es: os cer t ificados são ligados a chaves públicas e
não a nom es, um a vez que chaves públicas são globalm ent e únicas,
podendo assim , ser em usadas para ident ificar um obj et o, ao cont r ár io
de nom es que não são globalm ent e únicos. Com o os cer t ificados são
usados anonim am ent e, obt ém - se privacidade. Além disso, evit a o
problem a de ligar chaves públicas a nom es e de encont rar a chave
pública r elat iva a det er m inado nom e. Os dir eit os de acesso são,
e. Publicação sem encr ipt ação: quando o cert ificado é usado em um a
solicit ação, a m esm a é assinada com a chave pr ivada do t it ular para
pr ovar que o usuár io é aut or izado a usar est e cer t ificado. Com o os
cer t ificados são assinados, eles não podem ser m odificados ou usados
por um a t er ceir a par t e. Dest a for m a, os cer t ificados podem ser
dist r ibuídos dir et am ent e par a os usuár ios finais.
f. Ar m azenam ent o: Com o o banco de dados não r equer pr ot eções
sever as cont r a m odificações, podem ser usadas soluções par a
ar m azenam ent o baseadas em Dom ain Nam e Ser vers( DNS) [ Hasu
1999] ou no ser viço de dir et ór io X.500, com o t am bém no LDAP [ Yeong
1995] .
Quando um a ent idade desej a acessar um ser viço, ela dev e enviar seu
cert ificado e um a solicit ação assinados com sua chave pr ivada para o servidor
pr ovedor do ser viço. Com o dir eit os de acesso fr eqüent em ent e dependem de um a
cadeia de cer t ificados, é necessár io validá- los e sim plificá- los par a ver ificar os
reais per íodos de validade e os reais direit os de acesso, pois perm issões e prazos
podem ser livr em ent e definidos por um em issor , podendo, assim , o m esm o
em it ir um cert ificado com direit os e prazos que vão além dos que ele r ecebeu
per m issão par a delegar a t er ceir os. Par a est a finalidade, o ser vidor , após r ealizar
a ver ificação da assinat ur a de cada um dos cer t ificados que com põem a cadeia,
efet ua a int er seção dos dir eit os e dat as de validade de t oda cadeia, oper ação que
é denom inada r e du çã o da s 5 t u pla s, sendo assim , a sér ie de 5 t uplas que
com põem a cadeia, r eduzida a um único conj unt o de 5 t uplas, ou sej a, a um
único cer t ificado.
O em issor pode, t am bém , pr oduzir um cer t ificado sim plificado
-Cer t ificat e Result -Cer t ificat e ( CRC) - par a a ent idade que desej a acessar o
ser viço. Se um a ent idade A em it e um cer t ificado par a um a ent idade B e B
de acordo com as regras de redução é igual a um cert ificado em it ido pela
ent idade A par a a ent idade C com os dir eit os de delegação de C e a aut or ização
bem com o dat a de validade, cor r espondem à int er secção, r espect ivam ent e, das
aut or izações e das dat as de validade dos dois cer t ificados.
Most r ar em os at r avés de um exem plo, com o a r egr a de r edução é
usada. Ka em it e um cer t ificado par a Kb e perm it e que Kb delegue seus direit os.
Kb decide delegar a Kc par t e dos seus dir eit os. Assim , Kb envia seu cer t ificado
( em it ido por Ka) par a Kc e em it e um novo cer t ificado par a Kc delegando par t e
dos seus dir eit os e o assina com a chave pr ivada cor r espondent e a Kb, confor m e
ilust r ado na Figur a 2.2.
Agor a Kc t em dois cer t ificados que for m am um a cadeia. Os dois
cer t ificados podem ser r eduzidos de acordo com a r egr a de r edução de 5 t uplas,
r esult ando em um novo cer t ificado par a Kc, com post o pelos cinco elem ent os
m ost r ados na Figur a 2.3. Not e que o cer t ificado de Kc é assinado por Ka, ou sej a,
Kc pode solicit ar a em issão do cert ificado reduzido que é em it ido pelo provedor
do ser viço de chaves.
Figu r a 2 .2 : Ce r t ifica dos de Kc.
Kb V e r da de ir o
Pe r m issõe s Pa r a Le r e Ex e cu t a r Ar qu iv os sob
Alice / Pr oj e t o
D e 1 0 / 1 1 / 9 8 a 1 1 / 1 1 / 9 8
Ka Kc V e r da de ir o
Pe r m issõe s Pa r a Le r e Ex e cu t a r Ar qu iv os sob Alice / Pr oj e t o / Gr u po
D e 1 0 / 1 1 / 9 8 a 1 6 / 1 1 / 9 8 Kb
Assin a do pe la Ch a v e Pr iva da Cor r e spon de n t e
a Ka
Assin a do pe la Ch a v e Pr iva da Cor r e spon de n t e
Figu r a 2 .3 : N ov o ce r t ifica do de Kc.
Ao r eceber um a solicit ação de ser viço, um ser vidor pr ovedor de
serviço dev e dar início ao processo de validação que pode ser im plem ent ada de
vár ias for m as. Consider em os um cer t ificado em it ido pela chave pública de Alice
( Ka) , par a a chave pública de Bob ( Kb) e que o ser vidor de ar quivos de Alice
r ecebe um a solicit ação de Bob par a acessar um dir et ór io. Tipicam ent e, o
pr ocesso de validação segue a seguint e seqüência:
a. O ser vidor de ar quivos de Alice obt ém no cert ificado recebido a chave
pública do em issor ( Ka) e ver ifica na sua list a de cont role de acesso se
Ka t em o dir eit o de conceder dir eit os de acesso. Adm it am os que sim .
Ent ão o ser vidor de ar quivos usa Ka par a ver ificar se o cer t ificado é
r ealm ent e assinado pela chave pr ivada cor r espondent e. Caso
negat ivo, a solicit ação é r ecusada.
b. O servidor de arquivos de Alice obt ém no cert ificado a chave pública
do t it ular ( Kb) e ver ifica se ela é a cor r espondent e à chave pr ivada que
assina a solicit ação, ver ificando com Kb a assinat ura digit al da
Ka Kc V e r da de ir o
Pe r m issõe s pa r a le r e e x e cu t a r a r qu ivos sob Alice / Pr oj e t o/ Gr u po
solicit ação. Se a assinat ur a não é válida, a solicit ação é r ecusada. Not e
que o ser vidor não pr ecisa saber a quem per t ence a chave pública Kb.
c. O ser viço solicit ado deve ser per m it ido par a Ka no ser vidor e deve
est ar sob os dir eit os dos cam pos de aut or ização do cer t ificado. O
ser vidor de ar quivos de Alice t am bém ver ifica as dat as de validade no
cert ificado. O cert ificado deve ser válido na dat a da solicit ação. Caso
negat ivo, a solicit ação é r ecusada.
d. Depois que esses pr ocessos são r ealizados, o ser vidor de ar quivos de
Alice t em cer t eza que Kb t em dir eit o de acessar o diret ório.
A Figur a 2.4 m ost r a os diver sos sist em as que aplicam cr ipt ogr afia de chave
pública. A SPKI separ a os cer t ificados SPKI dos cer t ificados de nom es SPKI . I st o
por que, A SPKI adot ou os nom es da SDSI ( Sim ple Dist r ibut ed Secur it y
I nfr ast r uct ur e) [ Rivest 1996] com o par t e do padr ão, a fim de for necer um
m ecanism o m elhor que o X.509 e os dem ais de encont r ar chaves públicas de
acor do com os nom es ou out r os at r ibut os das ent idades. Os cer t ificados SPKI são
usados dir et am ent e pelos sist em as de cont r ole de acesso par a r esolver se
Sist e m a s qu e Aplica m Cr ipt ogr a fia de Ch a v e Pú blica
SSL
Ce r t ifica dos SPKI SSH PGP Ou t r os
Com o Obt e r Ch a v e s Pú blica s
Ce r t ifica dos de N om e s SPKI ( SD SI )
Ce r t ifica dos de N om e s X .5 0 9 Cr ipt ogr a fia de Ch a v e Pú blica
Figu r a 2 .4 : Ce r t ifica dos SPKI e ce r t ifica dos de n om e s SPKI / SD SI .
o seu t it ular t em direit o de acesso ao serv iço. Cer t ificados de nom es SPKI / SDSI
fornecem um m ecanism o de encont r ar chaves públicas com o os cert ificados de
nom es t r adicionais com o o X.509.
Um cer t ificado de nom e é um a m ensagem assinada que define um
nom e par a um a chave pública ou par a um valor hash da chave. Ele pode ser
r epr esent ado por 4 t uplas cuj os elem ent os são: Em issor , nom e, t it ular e dat as de
validade, confor m e m ost r ado na Figur a 2.5.
Com par ando com as 5 t uplas dos cer t ificados SPKI , o cam po
“ aut or ização” é subst it uído por um nom e e não exist e o cam po “ delegação” . Um
nom e pode ser qualquer st r ing de byt es, com o por exem plo, “ a ir m ã do
nam orado de Alice” .
Vej am os, por exem plo, com o encont r ar quem é “ a ir m ã do nam or ado de Alice” .
Prim eiram ent e devem os saber quem é Alice, depois pergunt ar a Alice quem é o
seu nam or ado e por últ im o per gunt ar ao nam or ado quem é sua ir -
Ch a v e 1 Ch a v e 2
D a t a s D a t a s de V a lida de N om e
Em issor Tit u la r
Assin a do pe la Ch a v e Pr iva da Cor r e spon de n t e à Ch a v e 1
Figu r a 2 .5 : Ele m e n t os dos ce r t ifica dos de n om e s SPKI / SD SI .
m ã ( se houver m ais de um a ir m ã, t odas poderão usar os dir eit os delegados) .
Nom es SDSI são divididos em duas par t es: Um a cadeia de nom es e a
ent idade que define o nom e. Na SPKI os elem ent os principais são chaves
públicas. Logo o nom e “ a ir m ã do nam or ado de Alice” significa “ a ir m ã do
nam or ado de Ka” , sendo Ka a chave pública de Alice ( pois Ka é única) . Para
encont r ar “ a ir m ã do nam or ado de Ka” pr im eir o encont r a- se um cer t ificado de
nom e assinado por Ka, que expr essa “ m eu nam or ado é Kb” , assinado por Ka e
depois encont r ar um cer t ificado assinado por Kb que diga “ m inha ir m ã é Kc” . A
Figur a 2.6 m ost r a esses cer t ificados de nom es.
O cer t ificado de nom e da Figur a ant er ior é m apeado par a a seguint e 4
t uplas:
< Ka, " nam or ado" , Kb, 10/ 11/ 98 - 01/ 01/ 99>
< Kb, " ir m ã" , Kc, 15/ 12/ 72>
Por t ant o, delegar dir eit os à “ ir m ã do nam or ado de Ka” significa delegá- los a Kc.
Se um cert ificado de aut orização é em it ido para “ a ir m ã do nam orado de Ka” ,
quando a ir m ã desej a usar o cer t ificado de aut or ização, ela deve enviar
Figu r a 2 .6 : Ce r t ifica dos de n om e s.
Kb
N a m or a do
D e 1 0 / 1 1 / 9 8 a 0 1 / 0 1 / 9 9
Ka Kc
I r m ã
D e 1 5 / 1 2 / 7 2 Kb
Assin a do pe la Ch a v e Pr iva da Cor r e spon de n t e a Ka
um a solicit ação assinada por Kc e deve pr ovar que Kc é a chave pública de “ a
ir m ã do nam or ado de Ka” , enviando os cer t ificados da Figur a ant er ior . Ao r
ecebê-los, o ser vidor ir á validar os dir eit os de Kc fazendo a redução das 4 t uplas. No
cam po “ t it ular ” o ser vidor encont ra que o cer t ificado é em it ido par a “ a ir m ã do
nam or ado de Ka” . O ser vidor usa o cer t ificado à esquer da na Figur a ant er ior par a
r eduzir o nom e “ a ir m ã do nam or ado de Ka” par a “ a ir m ã de Kb” . Ent ão, de
acordo com o cer t ificado à dir eit a na Figur a ant er ior , “ a irm ã de Kb” é Kc.
Por t ant o, o nom e do t it ular do cer t ificado de aut or ização é r eduzido par a Kc. Not e
que o conceit o da r edução de 4 t uplas é difer ent e da r edução de 5 t uplas. Não há
necessidade de r edução dos cer t ificados, sendo a r edução de 4 t uplas usada
quando cer t ificados de nom es devem ser usados com cer t ificados de aut or ização.
2 . 3 . 2 X . 5 0 9
A r ecom endação X.509 é um padr ão especificado pela I nt er nat ional
Telecom m unicat ion Union- Telecom m unicat ion St andar dizat ion Sect or ( I TU- T) e
pela I SO/ I nt er nat ional Elet r ot echnical Com m ission ( I EC) publicado inicialm ent e
com o par t e das r ecom endações dos ser viços de dir et ór io X.500. Essa
r ecom endação é um dos padr ões aber t os de infr a- est r ut ur a de chave pública
( PKI ) que inclui, ent r e out r os padr ões, o for m at o do cer t ificado. O for m at o de
cer t ificado X.509 ver são 1 ( v1) foi post er ior m ent e est endido par a incor por ar dois
novos cam pos par a supor t ar cont r ole de acesso a dir et ór io r esult ando no for m at o
de cer t ificado X.509 ver são 2 ( v2) . At ualm ent e, a ver são X.509 m ais ut ilizada é a
ver são 3 ( X.509 v3) que per m it e cam pos adicionais de ext ensão.
A Figur a 2.7 m ost r a o for m at o de um cer t ificado X.509 v3.
A est r ut ur a de um Cer t ificado Digit al X.509 é basicam ent e a seguint e:
( a) um a est r ut ur a de dados ( cuj os cam pos são com ent ados a seguir ) ; ( b) a
Os cam pos básicos de um cer t ificado incluem [ Bat ar fi 2003, Feghhi et
al. 1999] :
a. V e r sã o do for m a t o do ce r t ifica do: I ndicador do núm er o da ver são
X.509. Pode assum ir os valor es 1 ou 2 ou 3.
b. N ú m e r o de sé r ie do ce r t ifica do: Um ident ificador num ér ico int eir o
único par a o cer t ificado.
c. I de n t ifica dor do a lgor it m o de a ssin a t u r a : I dent ificador do
algor it m o de assinat ura digit al usado pela CA par a assinar digit alm ent e
o cer t ificado.
d. N om e do e m issor : Nom e ident ificador da CA que em it iu o cer t ificado.
Figu r a 2 .7 : For m a t o de u m ce r t ifica do X .5 0 9 v 3 .
V ERSÃO
N º SÉRI E D O CERTI FI CAD O
CH AV E PRI V AD A D A
CA
EM I SSOR I D . ALGORÍ TM O D E ASSI N ATURA
GERA ASSI N ATURA
D I GI TAL
ASSI N ATURA D I GI TAL D A CA EX TEN SÕES ( OPI CI ON AL)
I D . ÚN I CO D O TI TULAR( OP.) I D . ÚN I CO D O EM I SSOR( OP.)
PERÍ OD O D E V ALI D AD E
TI TULAR
e. Pe r íodo de v a lida de : Dat as e opcionalm ent e hor a de início e de
expir ação do cer t ificado.
f. N om e do t it u la r : Especifica o nom e da ent idade pr opr iet ár ia da
chave pr ivada cor r espondent e à chave pública ident ificada no
cer t ificado. Um a m esm a ent idade pode ser t it ular com o m esm o nom e
de m ais de um cert ificado. Porém um a CA não pode em it ir m ais de um
cer t ificado com o m esm o nom e de t it ular par a ent idades difer ent es.
g. I n for m a çã o da ch a v e pú blica : Especifica a chave pública
pert encent e ao t it ular do cer t ificado, com o t am bém o algor it m o de
chave pública e a função hash com a qual a chave pública deve ser
usada.
h. I de n t ifica dor ú n ico do e m issor : Cam po opcional par a perm it ir o
r euso de nom es do em issor ( aut or idade cer t ificador a em issor a) .
i. I de n t ifica dor ú n ico do t it u la r : Cam po opcional par a perm it ir o
r euso de nom es.
j . Ex t e n sõe s: Com ent ado a seguir .
O padr ão X.500 im plem ent a a idéia de r eposit ór ios dist r ibuídos par a
que os cer t ificados est ej am disponíveis par a t odos usuár ios da I nt er net . O padr ão
especifica a est r ut ur a de infor m ação do dir et ór io e os pr ot ocolos para acessar a
infor m ação cont ida no dir et ór io. O X.500 define um a especificação par a dir et ór ios
dist r ibuídos baseado em obj et os nom eados hier ar quicam ent e ( ent r adas do
dir et ór io) . Cada ent r ada per t ence a um a ou m ais classe de obj et os ( país, pessoa,
or ganização, et c.) . Cada ent idade cont ém um conj unt o de at r ibut os que det êm as
infor m ações do obj et o, e pelo m enos um at ribut o especifica um nom e par a a
ent r ada. Est e nom e é conhecido com o dist inguished nam e ( DN) a qual é um a
ident ificação única [ Bat ar fi 2003] . Port ant o, os cam pos “ nom e do em issor ” e
especificam os dist inguished nam e ( DN) do padr ão X.500, r espect ivam ent e da
ent idade em issor a do cer t ificado e do t it ular do m esm o. Um dist inguished nam e
válido ser ia, por exem plo, cn= caio, ou= DI MAP, o= UFRN.
A ver são 3 da r ecom endação X.509 ( X.509 v3) adiciona novos cam pos
ao cer t ificado básico cham ados “ ext ensões” [ I SO/ I EC 1995] . Esse cam po é
opcional, por t ant o um cer t ificado pode t er zer o ou m ais cam pos de ext ensão. A
pr incipal função das ext ensões é per m it ir que novos cam pos sej am adicionados
sem m odificar o cer t ificado. As ext ensões per m it em associar infor m ações
adicionais sobr e t it ular es, chaves públicas, ger enciam ent o da hier ar quia de
cer t ificação e ger enciam ent o da dist r ibuição da list a de r evogação de cer t ificados.
Assim , com unidades e or ganizações podem definir seus pr ópr ios cam pos de
ext ensões par a at ender às suas necessidades. Por exem plo, um am bient e
financeir o, pode pr ecisar est ender um cer t ificado par a codificar dados sobr e o
car t ão de cr édit o do pr opr iet ár io t ais com o o núm er o do car t ão de cr édit o e lim it e
de cr édit o [ Feghhi at al. 1999] . Cada ext ensão consist e de t r ês cam pos: Tipo,
Valor e Gr au de I m por t ância [ Bat ar fi 2003] .
a. Tipo: Cont ém o ident ificador do obj et o que for nece infor m ação de t ipo
e sem ânt ica par a o cont eúdo do cam po “ valor ” ( por exem plo, st r ing,
dat a, et c.) .
b. V a lor : Cont ém os dados pr esent es na ext ensão, os quais são descr it os
pela ext ensão t ipo.
c. Gr a u de I m por t â n cia : Um bit de flag que indica se um valor
associado à det erm inada ext ensão é crít ico ou não. Quando o flag
indica um a ext ensão cr ít ica, qualquer aplicação que pr ocessar o
cer t ificado pr ecisa pr ocessar o valor da ext ensão associada
im ediat am ent e; Se a aplicação não pode pr ocessar um a ext ensão
cr ít ica por que não r econheceu o t ipo de ext ensão, ela deve r ej eit ar o
2 . 4 L i s t a d e R e v o g a ç ã o d e C e r t i f i c a d o s
Um cert ificado digit al t em um período de validade durant e o qual ele é
confiável. Após seu per íodo de validade, um cer t ificado t or na- se inválido e não é
m ais confiáv el. Durant e o período de validade do cer t ificado, a CA que o em it iu
m ant ém e for nece infor m ação sobr e o st at us do m esm o. O st at us “ r evogado”
indica que o per íodo de validade do cer t ificado foi pr em at ur am ent e encer r ado, e,
por t ant o não é m ais confiável.
Um a aut or idade cer t ificador a deve r evogar um cer t ificado por r azões
com o: ( a) Com pr om et im ent o da chave pr ivada do t it ular ; ( b) Com prom et im ent o
da chave pr ivada da aut or idade cer t ificador a, o que significa que t odos os
cert ificados em it idos pela CA são pot encialm ent e não confiáveis e devem ser
r evogados; ( c) Mudanças nas infor m ações r elat ivas ao t it ular do cer t ificado; ( d)
Violação da polít ica de segur ança da aut or idade cer t ificador a pelo assinant e.
A CA deve divulgar um a list a de r evogação de cer t ificados ( CRL –
Cer t ificat e Revocat ion List ) . Essa list a é um a est r ut ur a de dados digit alm ent e
assinada pela CA em issora dos m esm os, que cont ém : ( a) a dat a e a hora de sua
publicação; ( b) o nom e da CA em issor a; ( c) o núm er o de sér ie dos cer t ificados
r evogados que ainda não expir ar am .
Par a poder confiar em um cer t ificado, a aplicação deve ver ificar se o
núm er o de sér ie do m esm o não const a da list a de r evogação de cer t ificados. Para
t al, vár ios m ét odos difer ent es podem ser em pr egados. A list a de r evogação de
cer t ificados pode ser consult ada pela aplicação acessando a CA e fazendo o
dow nload da list a. Nest e caso, a aplicação dever á conhecer a pr óx im a dat a de
at ualização da list a par a fazer novo dow nload da m esm a. Out r a for m a de
divulgação da list a é o envio da m esm a pela CA par a as aplicações, t ão logo um
não se t er cer t eza de que as infor m ações não vão ser apagadas por um int r uso
quando est iver em em t r ânsit o.
A for m a m ais pr át ica de ver ificação da r evogação de um det er m inado
cert ificado é o envio pela aplicação de um a solicit ação do st at us de r evogação do
m esm o à CA.
Um a solicit ação de r evogação pode ser or iginada pelo t it ular do
cer t ificado ou por um a aut or idade local de r egist r o. A CA deve validar a or igem e
aut ent icidade de um a solicit ação de r evogação, ant es de r evogar um cer t ificado.
A I TU- T e a I SO/ I EC desenvolver am na r ecom endação X.509, um
padr ão de for m at o da list a de r evogação de cer t ificados. A Figur a 2.8 m ost r a o
for m at o da list a de r ev ogação de cer t ificados est abelecido na ver são 2, incluindo
os cam pos básicos pr é- definidos, e zer o ou m ais cam pos de ext ensão e zer o ou
m ais cam pos de ext ensões de ent r ada. Os cam pos básicos do for m at o da list a de
r evogação de cer t ificados est abelecido na ver são 2, são os m esm os da ver são 1 e
são list ados a seguir [ Feghhi 1999] :
a. V e r sã o: Deve especificar a ver são 2 se algum cam po de ext ensão
est á pr esent e, e om it ido se não exist em cam pos de ext ensão.
b. Assin a t u r a : Cont ém o ident ificador do algor it m o usado par a assinar a
list a de revogação de cert ificados.
c. N om e do e m issor : Nom e da ent idade que em it iu e assinou a list a de
r evogação de cer t ificados.
d. At u a liz a çã o: I ndica a dat a e hora de em issão da list a de r evogação
de cer t ificados.
e. Pr óx im a a t u a liz a çã o: I ndica a dat a e hor a de em issão da pr óxim a
list a de revogação de cert ificados. Pode ser om it ido se a próx im a
at ualização for conhecida por t odos os sist em as. Um a at ualização pode
f. Ce r t ifica do do u su á r io: Cont ém o núm er o de série de um cert ificado
r evogado.
g. D a t a de r e v oga çã o: I ndica a dat a efet iva da r evogação.
Com o m ost r ado na Figur a 2.8, o cam po cer t ificados r evogados é
com post o pelos dados do conj unt o de t odos cer t ificados r evogados. Assim , cada
cert ificado revogado é especificado no cam po cer t ificados r evogados
Figu r a 2 .8 : For m a t o da list a de r e v oga çã o de ce r t ifica dos X .5 0 9 v e r sã o 2 .
at r avés de t r ês sub- cam pos, a saber : cer t ificado do usuár io, dat a de r evogação e
ext ensões de ent r ada da list a de r evogação de cer t ificados. Esses t r ês
sub-cam pos r eúnem as infor m ações necessár ias par a especificar t ot alm ent e o
cer t ificado r evogado e a dat a da r evogação do m esm o.
A ANSI X9, I SO/ I EC e o I TU t am bém definir am um conj unt o de
ext ensões padr ões par a as list as de r evogação de cer t ificados ( X. 509 v2 CRL) ,
I D .ALGORÍ TI M O D E ASSI N ATURA
CH AV E PRI V AD A
D A CA
GERA ASSI N ATURA
D I GI TAL
CERT.USUÁRI O ( N º D E SÉRI E)
D ATA D E REV OGAÇÃO
EX TEN SÃO D E EN TRAD A D A CRL
CERT. USUÁRI O ( N º D E SÉRI E)
D ATA D E REV OGAÇÃO
EX TEN SÃO D E EN TRAD A D A CRL
. . .
V ERSÃO
ATUALI ZAÇÃO
PRÓX I M A ATUALI ZAÇÃO
( OPCI ON AL)
EX TEN SÕES D A CRL
ASSI N ATURA D I GI TAL D A
CA N OM E D O EM I SSOR
com os m esm os sub- cam pos dos cert ificados X.509 v3 cuj os det alhes podem ser
consult ados no [ I SO/ I EC 1996, Feghhi at al. 1999] .
2 . 5 A u t o r i d a d e s C e r t i f i c a d o r a s
Um a aut or idade cer t ificador a ( CA) é um a ent idade que, ent r e out r as
t ar efas, t em a função de em it ir cer t ificados digit ais e de m ant er inform ação de
st at us sobre os cer t ificados. A Figur a 2.9 [ Feghhi at al. 1999] apr esent a um
m odelo de oper ação de um a CA.
Figu r a 2 .9 : M ode lo de ope r a çã o de u m a CA.
Par a desem penhar suas at r ibuições, um a CA execut a aut ent icação,
dist r ibuição de cer t ificados e ger enciam ent o de chaves. Aut ent icação é o
processo de verificar se alguém realm ent e é quem diz ser. Dist r ibuição de
En t ida de Fin a l
- Solicit a r Em issã o de Ce r t ifica do
- Obt e r Ce r t ifica do - Solicit a r Re voga çã o
de Ce r t ifica do - Solicit a r Re n ov a çã o
de Ce r t ifica do
Au t or ida de Ce r t ifica dor a ( CA)
Ge r e n cia m e n t o de Ch a v e s
- Em issã o d e Ce r t ifica d o
-
Re v oga çã o d e Ce r t if ica d o-
Su sp e n sã o d e Ce r t if ica d o-
Re n ova çã o d e Ce r t if ica d oD ist r ibu içã o de Ce r t ifica do
- En v io do Ce r t ifica do pa r a Usu á r ios Fin a is - Ar m a z e n a m e n t o de
Ce r t ifica dos e m Re posit ór ios
cer t ificado é o envio de um cer t ificado par a o t it ular do m esm o, após ver ificar sua
ident idade e em it ir o cert ificado. Tipicam ent e a CA arm azena o cert ificado em seu
r eposit ór io que pode ser acessado ext er nam ent e. Ger enciam ent o de chaves inclui
em issão do cer t ificado, r evogação, suspensão e r enovação. A confiabilidade de
um a CA depende basicam ent e do gr au de segur ança da oper ação do seu sist em a
de ger enciam ent o de chaves, o qual r equer subst ancial dispêndio de capit al,
especialização em segurança e know - how , a fim de evit ar a ação de int r usos ou
de em pr egados desonest os.
2 .6 Em issã o de Ce r t ifica do
Um a CA em it e um cer t ificado par a out r a CA ou par a um a ent idade
( usuários finais, disposit ivos, ser vidor es Web, pr ocessos) . Tipicam ent e, a
seqüência de passos usada par a que um a aut or idade cer t ificador a em it a um
cer t ificado digit al é a seguint e [ Bat ar fi 2003, Feghhi at al. 1999, Resende 2000 ] :
a. O usuár io pr eenche um for m ulár io e o subm et e a um a CA solicit ando a
em issão do cer t ificado. As infor m ações que o solicit ant e deve for necer
dependem da classe do cer t ificado e da CA em par t icular . Ent r et ant o,
deve incluir obr igat or iam ent e a chave pública do t it ular e algum as
infor m ações de ident ificação.
b. As exigências do sist em a usuár io do cer t ificado dit am o m ét odo de
ger ação do par de chaves. O usuár io pode cr iar seu par de chaves
pública e pr ivada usando algum algor it m o de chave pública. Est e é o
caso de ger ação do par de chaves, quando a chave pr ivada ser á
ut ilizada par a assinat ur a digit al e, por t ant o não devem sair do
am bient e onde ser á usada. A chave pr ivada deve ser m ant ida em
sigilo devendo por isso ser ar m azenada cr ipt ogr afada ou em um
c. A aut or idade cer t ificador a deve confir m ar as infor m ações que o t it ular
for neceu, par a evit ar que um im post or associe sua chave pr ivada à
ident idade de out r a pessoa com a finalidade de com et er at ividades
fr audulent as. As m edidas que a CA t om a para confir m ar a ident idade
do t it ular dependem da classe do cer t ificado. Por exem plo, a CA pode
usar bancos de dados de aut ent icação de consum idor es ou m esm o
exigir a pr esença física do t it ular no seu escr it ór io com a
docum ent ação exigida, o que for nece um elevado gr au de segur ança.
d. Com o um a CA lida com um a população geogr aficam ent e disper sa, é
im pr at icável ex igir que o t it ular com par eça ao seu escr it ór io. Nest es
casos, a CA usa um a aut or idade r egist r ador a local ( LRA) que m ant ém
um cont at o pessoal com o t it ular e é r esponsável pelo processo de
aut ent icação. A aut or idade r egist r ador a local valida as infor m ações de
ident idade, podendo apr ová- la ou rej eit á- la. Caso a apr ove, encam inha
a solicit ação de cert ificação para a CA em it ir o cert ificado para o
usuár io.
e. Depois que a CA recebe um a solicit ação de em issão de um cert ificado
do t it ular e valida as infor m ações apr esent adas ou r ecebe um a
solicit ação de um a aut or idade r egist r ador a local, que j á validou as
infor m ações de ident idade do t it ular , ela ger a o cer t ificado
cor r espondent e e o assina com sua chave pr ivada. A CA ent ão envia o
cer t ificado par a o t it ular ou par a a aut or idade r egist r ador a local.
Opcionalm ent e, a CA pode ar m azenar o cer t ificado ou ent r egá- lo par a
um r eposit ór io de cer t ificados par a dist r ibuição.
f. No caso da CA ent r egar o cer t ificado par a um r eposit ór io, a aut or idade
r egist r ador a local envia um a not ificação par a o usuár io cont endo o
núm ero de série do cert ificado e a URL onde ele pode ret irar o
g. O usuár io ent ão r et ir a o cer t ificado de um r eposit ór io apr esent ando o
núm er o de sér ie à aut or idade r egist r ador a ( ou pr ovedor de r eposit ór io
por ela cont r at ado) .
A seqüência apr esent ada acim a não é a única possível par a que um a
aut oridade cert ificador a em it a um cert ificado digit al conform e os ex em plos que
m ost r ar em os na pr óxim a Seção.
2 .7 Au t or ida de s Re gist r a dor a s Loca is
Confor m e m encionado ant er ior m ent e, um a aut or idade r egist r ador a
local faz- se necessár ia, t endo em vist a que um a CA lida com um a população
geograficam ent e disper sa e no caso de em issão de cer t ificados que exij am a
pr esença física do assinant e, não há com o esses assinant es com par ecer em ao
escr it ór io da CA. Agências dos cor r eios podem desem penhar as t ar efas de
aut or idades r egist r ador as locais par a o público em ger al e em pr esas podem fazer
o m esm o par a seus em pr egados. As agências dos cor r eios deve ofer ecer um a
list a de pr ovedor es de ser viço de CA que o assinant e poder á escolher com qual
desej a t r abalhar [ Feghhi at al. 1999] .
Um a aut oridade regist radora local desem penha um a variedade de
t ar efas, t ais com o: det er m inar os dist inguished nam e par a assinant es, r eceber
solicit ações de cert ificados, confir m ar infor m ações de ident idade, ver ificar car t ões
de ident ificação, r epor t ar r evogação, aceit ar solicit ação de r enovação, gerar um
par de chaves par a assinant es, ar quivá- las e r ecuper á- las caso venham a ser em
per didas. Por t ant o, aut or idades r egist r ador as locais não desem penham qualquer
função de ger enciam ent o de chav es, m as são r esponsáveis pela função de
aut ent icação da ident idade do assinant e. A aut or idade cer t ificador a pode r ej eit ar
um a solicit ação de um a aut or idade r egist r ador a local se houver conflit o com as
pr át icas adot adas, podendo ainda m odificar o cont eúdo de um a solicit ação com o,
aut or idade r egist r ador a local e o usuár io são livr es par a declinar desses
cer t ificados alt er ados [ Feghhi at al. 1999] .
A Figur a 2.10 apr esent a um m odelo de r elacionam ent o ent r e
usuár ios, um a aut or idade r egist r ador a local e um a CA.
2 .8 Se r v iço de D ir e t ór io
Um a CA deve for necer um ser viço de dist r ibuição de cer t ificados de
for m a que os sist em as usuár ios possam acessá- lo, obt er o cer t ificados de um
dado assinant e e fazer o dow nload do m esm o. Tipicam ent e um a CA dist r ibui
cer t ificados at r avés de vár ios m ét odos, com o e- m ail ou ser vidor de dir et ór io.
No caso de dist r ibuição de cer t ificados at r avés de ser vidor es de
dir et ór ios, podem ser usados ser vidor es de dir et ór ios pr opr iet ár ios, ou
r eposit ór ios dist r ibuídos ( dir et ór ios) .
Aut or idades cer t ificador as nem sem pr e dispõem da infr a- est r ut ur a
necessár ia par a m ant er um banco de dados que forneça um nível de serviço
alt am ent e confiável, sob o pont o de vist a oper acional e de segur ança, com o, por
exem plo, oper ar com r edes de alt a velocidade e com sist em as t oler ant es a
falhas, exibir alt a disponibilidade, possuir sist em as à prova de falsificações,
m ant er o arm azenam ent o dos dados por 30 anos, et c.
Nest es casos, a CA cont r at a um pr ovedor de r eposit ór io par a
desem penhar as t ar efas dos pr ocessos de publicação de cer t ificados. Um
r eposit ór io é um banco de dados onde são oficialm ent e ar m azenados os
cert ificados e as inform ações de st at us de r evogação com o as list as de r evogação
Figu r a 2 .1 0 : M ode lo de ope r a çã o de u m a LRA
O X.500 é um padrão para o serviço de diret ório da I TU e especifica
t ant o a est r ut ur a de infor m ação do dir et ór io com o os pr ot ocolos par a acessar
est as inform ações [ Bat ar fi 2003] . Além disso, com o j á nos r efer im os no início
desse Capít ulo, o padr ão X.500 define um a especificação par a dir et ór ios
dist r ibuídos baseado em obj et os nom eados hier ar quicam ent e ( ent r adas do
dir et ór io) , conhecidos com o dist inguished nam e, e dá suport e a replicação,
cont r ole de acesso e m ecanism os de busca. A com plexidade de im plem ent ar
ser vidor es de dir et ór io X.500 e aplicações client es t êm sido um em pecilho par a
sua dissem inação na I nt er net [ Feghhi at al. 1999] .
En t ida de Fin a l
- Solicit a r Em issã o de Ce r t ifica do - Obt e r Ce r t ifica do - Solicit a r
Re voga çã o de Ce r t ifica do - Solicit a r
Re n ov a çã o de Ce r t ifica do
- En v io de Ce r t . pa r a Usu á r ios Fin a is
- En v io de Ce r t . pa r a LRA - Ar m a z e n a m e n t o de Ce r t . e m Re posit ór ios
Ge r e n cia m e n t o de Ch a v e s
- Em it ir Ce r t . - Re voga r Ce r t . - Su spe n de r Ce r t . - Re n ov a r Ce r t .
D ist r ibu içã o de Ce r t ifica do Au t or ida de
Re gist r a dor a Loca l ( LRA)
Au t e n t ica çã o
Su por t e a o Pa r de Ch a v e s
Au t or ida de Ce r t ifica dor a ( CA)
- Ge r a r e a r m a z e n a r pa r de ch a v e s - Re cu pe r a r pa r de
ch a v e s pe r dida s
- Solicit a r e m issã o de ce r t ifica dos - At r ibu ir D N
- Re ce be r a plica çã o de ce r t ifica dos