UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades...

43
UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORM ´ ATICA E ESTAT ´ ISTICA esar Barone Marques Costa MELHORIAS DE USABILIDADE E SEGURANC ¸ A PARA O SGCI Florian´ opolis(SC) 2011

Transcript of UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades...

Page 1: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

UNIVERSIDADE FEDERAL DE SANTA CATARINADEPARTAMENTO DE INFORMATICA E ESTATISTICA

Cesar Barone Marques Costa

MELHORIAS DE USABILIDADE E SEGURANCA PARA O SGCI

Florianopolis(SC)

2011

Page 2: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...
Page 3: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

Cesar Barone Marques Costa

MELHORIAS DE USABILIDADE E SEGURANCA PARA O SGCI

Trabalho de conclusao de curso submetidoao Ciencias da computacao para a obtencaodo Grau de Bacharel em Ciencias da Computacao.Orientador: Jonathan Gehard Kohler, Me.Ciencias da ComputacaoCoorientador: Ricardo Felipe Custodio

Florianopolis(SC)

2011

Page 4: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...
Page 5: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

Cesar Barone Marques Costa

MELHORIAS DE USABILIDADE E SEGURANCA PARA O SGCI

Trabalho de conclusao de curso submetidoao Ciencias da computacao para a obtencaodo Grau de Bacharel em Ciencias da Computacao.Orientador: Jonathan Gehard Kohler, Me.Ciencias da ComputacaoCoorientador: Ricardo Felipe Custodio

Florianopolis(SC)

2011

Page 6: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

Catalogacao na fonte elaborada pela biblioteca daUniversidade Federal de Santa Catarina

A ficha catalografica e confeccionada pela Biblioteca Central.

Tamanho: 7cm x 12 cm

Fonte: Times New Roman 9,5

Maiores informacoes em:http://www.bu.ufsc.br/design/Catalogacao.html

Page 7: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

Cesar Barone Marques Costa

MELHORIAS DE USABILIDADE E SEGURANCA PARA O SGCI

Este Trabalho de conclusao de curso foi julgado aprovado para a obtencaodo Tıtulo de “Bacharel em Ciencias da Computacao”, e aprovado em suaforma final pelo Ciencias da computacao.

Florianopolis(SC), 27 de abril 2011.

Vitorio Bruno MazzolaCoordenador

Jonathan Gehard Kohler, Me. Ciencias da ComputacaoOrientador

Ricardo Felipe CustodioCoorientador

Banca Examinadora:

Ricardo Morais

Felipe Carlos Werlang

Page 8: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...
Page 9: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

Lucas Goncalves Martins

Page 10: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...
Page 11: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

RESUMO

Softwares de gestao de infraestrutura de chaves publicas visam gerir o ciclode vida de um certificado digital, criar e dar manutencao a uma ICP.A proposta desse trabalho e apresentar melhorias nos quesitos de usabilidadee seguranca dos dados do SGCI e ideias de futuras funcionalidades para osistema baseado no estudo e pesquisa de outros SGCs.Todas essas propostas juntas trarao resultados satisfatorios no que desrespeitoa interacao entre o usuario e o sistema, robustez e confiabilidade na segurancados dados e uma reuniao de funcionalidades atrativas disponıveis.

Page 12: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...
Page 13: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

SUMARIO

1 INTRODUCAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.1 CONTEXTUALIZACAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.2 OBJETIVOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.2.1 Objetivos Gerais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.2.2 Objetivos Especıficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141.3 JUSTIFICATIVA E MOTIVACAO . . . . . . . . . . . . . . . . . . . . . . . . . . 141.4 MOTIVACAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141.5 METODOLOGIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.6 ORGANIZACAO DO TRABALHO . . . . . . . . . . . . . . . . . . . . . . . . . 152 REVISAO BIBLIOGRAFICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.1 CRIPTOGRAFIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.1.1 Criptografia simetrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.1.2 Criptografia assimetrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.1.3 Assinatura digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202.2 INFRAESTRUTURA DE CHAVES PUBLICAS . . . . . . . . . . . . . . . 212.2.1 Certificado digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222.2.2 Lista de certificados revogados . . . . . . . . . . . . . . . . . . . . . . . . . . . 222.2.3 Autoridade Certificadora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232.2.4 Autoridade de Registro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242.3 TECNOLOGIAS UTILIZADAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242.3.1 SQLite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242.3.2 Apache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242.3.3 OpenSSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.3.4 Libcryptosec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.3.5 PHP5-Libcryptosec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.3.6 PHP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.3.7 Zend Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 SISTEMAS DE GESTAO DE CERTIFICADOS . . . . . . . . . . . . . . 273.1 INTRODUCAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.2 NEWPKI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.3 OPENCA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.4 EJBCA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.5 SISTEMAS DE GESTAO DE CERTIFICADOS ICPEDU - SGCI 273.6 COMPARATIVO DOS SGC’S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.7 NOVAS FUNCIONALIDADES PROPOSTAS . . . . . . . . . . . . . . . . . 273.7.1 OCSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.7.2 Certificacao cruzada / Ponte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Page 14: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

3.7.3 Autoridade de certificacao digital . . . . . . . . . . . . . . . . . . . . . . . . . 274 MELHORIAS DE USABILIDADE . . . . . . . . . . . . . . . . . . . . . . . . . . 294.1 INTRODUCAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294.2 CARACTERIZACAO DO PROBLEMA . . . . . . . . . . . . . . . . . . . . . 294.3 TIPOS DE INSTALACOES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304.3.1 Sistema auto-contido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304.3.2 Assistente de instalacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304.3.3 Pacotes .deb ou .rpm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314.4 ANALISE DAS SOLUCOES PROPOSTAS . . . . . . . . . . . . . . . . . . . 314.5 DIVISAO DO SGCI EM MODULOS . . . . . . . . . . . . . . . . . . . . . . . . 324.6 MELHORIAS GERAIS DE INTERFACE GRAFICA . . . . . . . . . . . 325 MELHORIAS DE SEGURANCA . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.1 PROTOCOLO DE ACESSO A CHAVE PRIVADA DA AC . . . . . . 335.1.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.1.2 Autenticacao no SGCI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.1.3 ICP interna do SGCI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.1.4 Chave privada da Entidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345.1.5 Uso da chave privada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345.1.6 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345.2 LOGS SEGUROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 CONSIDERACOES FINAIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356.1 TRABALHOS FUTUROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357 ANEXO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 APENDICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39Referencias Bibliograficas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Page 15: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

13

1 INTRODUCAO

No passado, o relacionamento do usuario com a interface de uma de-terminada aplicacao nao tinha prioridade alta na lista de requisitos de umsoftware. Mas, felizmente, isso mudou. Os usuarios estao mais exigentesquanto a facilidade de uso de um software e, embasado nisso, este trabalhovisa como um dos objetivos, apresentar solucoes efetivas para aumentar osnıveis de usabilidade do SGCI.

O SGCI, sigla para Sistema de gestao de certificados ICPEDU, e umsoftware web que foi concebido para gerir o ciclo de vida de um certificadodigital na infraestrutura de chaves publicas educacional, ou, ICPEDU. Comele pode-se criar e dar manutencao a elementos de uma ICP, tais como: cer-tificados digitais, autoridades certificadoras, autoridades de registro e lista decertificados revogados.

O SGCI encontra-se atualmente em aprimoramento do codigo fonte.Aproveitando desse momento, este trabalho tem como intuito propor melho-rias nos quesitos de seguranca, para tornar o software mais seguro e menosvulneravel a ataques e tambem melhorias de usabilidade, proporcionando aousuario final uma experiencia mais agradavel com o sistema.

1.1 CONTEXTUALIZACAO

1.2 OBJETIVOS

A seguir serao apresentados os objetivos a serem atingidos ao finaldeste trabalho, bem como as metas parciais.

1.2.1 Objetivos Gerais

Apresentar e implementar solucoes efetivas para aumentar os nıveis deusabilidade do SGCI, proporcionando ao usuario final uma experiencia maisagradavel com o sistema.

Em termos de melhorias de seguranca, deseja-se apresentar e imple-mentar solucoes que aumentem ainda mais a seguranca relacionada as operacoesno SGCI.

Page 16: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

14

1.2.2 Objetivos Especıficos

• Estudar conceitos de usabilidade em aplicacoes web e com o conheci-mento adquirido, analisar o SGCI, propor e implementar melhorias.

• Estudar tipos de instalacoes de aplicativos, propor e implementar o tipoescolhido. Este deve possuir as seguintes caracterısticas:

Facil utilizacao para o usuario final: Nao tenha passos complexosde configuracao.

Atenda a maioria dos casos: Grande parte das instalacoes de soft-wares, nao e feita de maneira customizada, onde sao trocados os valoresdas opcoes default por outra qualquer. Busca-se entao instalar o SGCIcom as configuracoes padroes usada pela maioria dos seus usuarios.

• Estudar o custo, vantagens e desvantagens da divisao do SGCI emmodulos de AC, AR e publico e se esta for valida, implementar asolucao.

• Propor e implementar melhorias para a seguranca dos logs, de maneiraque seja possıvel detectar mudancas nos mesmos.

• Formalizar, propor melhorias de seguranca para o protocolo de uso dachave privada de uma entidade e implementa-las.

1.3 JUSTIFICATIVA E MOTIVACAO

1.4 MOTIVACAO

O SGCI e desenvolvido para ser o software gestor da infraestrutura dechaves publicas educacional. Com essa grande responsabilidade atribuıda aesse sistema, tambem vem o seu amplo uso em instituicoes de ensino de todoBrasil. Isso torna mais que necessario que esse sistema seja de qualidade,e nao podemos ter um software de qualidade sem que se tenha conceitos esolucoes de usabilidade aplicados nesse sistema. Ainda se tratando de umsoftware na area de seguranca, e crucial o conhecimento e aplicacao de con-ceitos de seguranca dos dados.

Page 17: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

15

1.5 METODOLOGIA

Para a realizacao do trabalho, sera efetuada uma pesquisa minuciosaem livros, na web e em normas a respeito do conteudo a ser abordado. Paraas funcionalidades, pretende-se realizar um estudo detalhado e um compara-tivo dos atuais SGCs mais populares existentes no mercado. Como resultadodesse estudo teremos um rico material contendo as funcionalidades mais in-teressantes de cada SGC pesquisado.

1.6 ORGANIZACAO DO TRABALHO

Page 18: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

16

Page 19: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

17

2 REVISAO BIBLIOGRAFICA

2.1 CRIPTOGRAFIA

A palavra Criptografia tem sua origem no idioma grego, onde kryptossignifica escondido e graphein escrita. Da etimologia da palavra, conclui-seentao que criptografia nada mais e que o ato de travestir a escrita atraves decodigos, ou simplesmente, escrever em codigos.

A historia dos codigos e de suas chaves e a historia de uma batalhasecular entre os criadores de codigos e os decifradores uma corrida arma-mentista intelectual que teve um forte impacto no curso da historia humana(SINGH, 2004). Reis, rainhas e generais tinham a necessidade de se comu-nicar de forma segura e eficiente, de modo a manter em sigilo as informacoescaso caıssem em mao erradas. A cifras criptograficas surgiam entao e juntocom elas grupos especializados em decifrar esses codigos.

Existiram milhares de cifras ao longo da historia e a mais famosa ea cifra de Cesar. Esta necessita de dois alfabetos. O normal e o cifrado. Ocifrado corresponde ao normal mais um deslocamento. Usando um desloca-mento de 3 posicoes, terıamos os seguintes alfabetos:

Normal: ABCDEFGHIJKLMNOPQRSTUVXZ

Cifrado:DEFGHIJKLMNOPQRSTUVXZABC

No exemplo apresentado, o cifrado e o alfabeto normal deslocado detres posicoes. Dessa forma, a cifragem de uma palavra ocorre da seguintemaneira: Troca-se cada letra da palavra a ser cifrada pela sua correspondentedo alfabeto cifrado.

Palavra original: UFSC

Palavra cifrada: ZIVF

Como resultado, tem-se a palavra cifrada e sem significado algum. Seessa mensagem fosse interceptada por um atacante, ele nao teria acesso aoconteudo original, a nao ser, e claro, se descobrisse a cifra utilizada.

O processo de decifragem e necessario apenas fazer o inverso. Paracada letra da palavra cifrada, busca-se no alfabeto cifrado trocando-a pela suacorrespondente do alfabeto normal.

Page 20: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

18

Palavra cifrada: ZIVFPalavra original: UFSC

Um texto cifrado usando a cifra de Cesar, pode ser decifrado atravesde um estudo de analise de frequencia das letras mais comuns do idioma,trocando-as pelas mais comuns no texto cifrado, ate que seja o texto faca sen-tido. Com o tempo esse metodo e seus similares deram lugar a metodos maisavancados de cifragem, surgindo entao a criptografia simetrica e posterior-mente a assimetrica.

2.1.1 Criptografia simetrica

Na criptografia simetrica e necessario um segredo pre-combinado en-tre as partes. O algoritmo pode ser divulgado. Esse segredo pode ser en-tendido como uma senha que juntamente com um algoritmo e o texto a sercifrado, gera como saıda um texto criptografado. A obtencao do texto originalso sera possıvel por quem tiver acesso ao segredo.

Para viabilizar esse processo, imagina-se duas pessoas, Alice e Beto.Alice deseja enviar uma mensagem sigilosa para Beto, entao, os passos paraviabilizar e enviar a mensagem serao os seguintes:

1. Alice e Beto combinam um segredo entre si atraves de um canal seguro

2. Alice cifra a mensagem com o segredo combinado anteriormente

3. Alice envia para Beto o texto cifrado

4. Beto decifra a mensagem utilizando o segredo combinado com Alice

A figura 2.1.1 ilustra os passos anteriores:Os algoritmos mais populares de cifragem simetrica sao: Data En-

cryption Standard(DES), e o Advanced Encryption Standard(AES) selecionadopelo governo dos EUA para substituir o DES.

Como pode-se ver na figura, a criptografia simetrica apresenta umalimitacao, a combinacao da chave entre as duas partes. Se a chave for inter-ceptada por uma terceira parte, a mesma podera abrir todos os documentoscifrados.

Page 21: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

19

Figura 1: Cifragem simetrica

2.1.2 Criptografia assimetrica

A criptografia assimetrica, tambem chamada de criptografia de chavepublica, possui esse nome porque tem-se duas chaves distintas, uma que deveser mantida privada e outra que pode ser publicada(IRA, ). A criacao destaschaves tem fundamento na aritmetica modular e nao e possıvel extrair a chaveprivada da chave publica. A cifragem e decifragem ocorre de forma as-simetrica, onde um documento cifrado com uma chave publica, so pode serdecifrado com a respectiva chave privada

A criptografia assimetrica foi muito bem aceita pois nao se tem mais anecessidade de um meio seguro visto que nao ha mais combinacao de chaves.Outra caracterıstica importante e a reducao na quantidade de chaves que umusuario deveria guardar para se comunicar com todos os possıveis outrosusuarios(MARTINA, 2005).

Se Alice deseja enviar um documento sigiloso para o Beto os passossao os seguintes:

1. Alice cifra o documento com a chave publica de Beto.

2. Alice envia para Beto o texto cifrado

3. Beto decifro o texto cifrado com a sua chave privada

A figura 2.1.2 ilustra o procedimento.Enquanto a chave privada estiver segura, a confidencialidade do docu-

mento e garantida, caso a chave seja comprometida, nao e possıvel garantir osigilo do documento.

Page 22: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

20

Figura 2: Cifragem assimetrica

Os algoritmos de geracao do par de chaves e cifragem mais usadosatualmente, sao: Elliptic Curve DSA(ECDSA) e o RSA(MARTINA, 2005).A seguir sera apresentado um dos usos da criptografia de chave publica, aassinatura digital.

2.1.3 Assinatura digital

Assinaturas digitais compartilham algumas funcionalidades com assi-naturas manuscritas. Em particular, eles fornecem um metodo para assegurarque uma mensagem e autentica de um usuario, ou seja, que ela origina dapessoa que alega ter gerado a mensagem (PAAR; PELZL, 2010). Se um doc-umento e assinado digitalmente, as seguintes caracterısticas sao garantidas.

• Autenticidade: O receptor da mensagem pode validar se a assinaturado emissor e autentica.

• Nao-repudio: O signatario nao pode negar que assinou o documento.

• Integridade: Tem-se a garantia que a mensagem nao foi adulterada.

Para assinar um documento digitalmente, primeiramente aplica-se umafuncao resumo no documento a ser assinado. O resultado gerado e assinadocom a chave privada do signatario e anexado ao documento, como demonstraa figura 2.1.3.

Decifra-se a assinatura do documento com a chave publica do sig-natario, resultando em um resumo. Este resumo e comparado com o resumo

Page 23: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

21

Figura 3: Assinatura digital

anexado ao documento. Se os resumos forem iguais, a assinatura e valida,como demonstra a figura 2.1.3.

Figura 4: Verificar assinatura digital

2.2 INFRAESTRUTURA DE CHAVES PUBLICAS

Documentos emitidos para pessoas, tal como um RG so sao validospois foram emitidos por orgaos confiaveis ligados ao governo. Com a assi-natura digital nao e diferente, uma infraestrutura e necessaria para que as assi-naturas digitais sejam reconhecidas e tenham validade legal. Essa infraestru-tura, denominada infraestrutura de chaves publicas (ICP) conta com alguns

Page 24: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

22

elementos chave que serao apresentados nas proximas sessoes.

2.2.1 Certificado digital

Com o advento da criptografia assimetrica, surge o desafio de com-provar quem e o detentor de uma chave privada correspondente a uma chavepublica. O certificado digital surge entao como resposta a esse desafio.

Um certificado ideal deve satisfazer as seguintes propriedades:(IRA, )

1. deve ser um objeto puramente digital, para que possamos distribuı-loatraves da internet e processa-lo automaticamente;

2. deve conter o nome do usuario que detem a chave privada, bem comoinformacoes de contato e da organizacao a qual pertence;

3. deve ser possıvel determinar se o certificado foi emitido recentemente ;

4. deve ser criado por um terceira parte confiavel, ao inves do propriousuario detentor da chave privada;

5. a parte confiavel pode criar varios certificados, inclusive para o mesmousuario e deve ser facil diferencia-los;

6. deve ser facil determinar se o certificado e genuıno ou forjado;

7. deve ser a prova de alteracoes em seu conteudo;

8. deve ser possıvel determinar de forma imediata se alguma informacaono certificado deixou de ser valida;

9. deve-se poder determinar as aplicacoes para as quais o certificado evalido.

O padrao mais utilizado atualmente e o padrao x509 que se encontraatualmente na versao 3. Esse padrao especifica os campos que um certificadopode conter. Alem do conteudo de um certificado, o padrao x509 preve ex-tensoes que dao mais flexibilidade a um certificado. Essas extensoes estaodescritas na RFC 5280 (COOPER et al., 2008).

Deve-se ter uma ferramenta que de suporte a oitava propriedade citada.Esse ferramenta e a Lista de certificados revogados (LCR) que sera apresen-tada na proxima sessao.

Page 25: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

23

2.2.2 Lista de certificados revogados

Um certificado digital pode deixar de ser valido, por comprometi-mento da chave da AC, da propria chave ou ainda pode necessitar de atualizacaodos seus dados. Por ser um objeto digital, pode facilmente ser copiado e re-distribuıdo tornando impossıvel de se rastrear todas as copias e destruı-las. Asolucao entao e manter uma lista de certificados que nao sao mais validos.

A ferramenta na ICP para disponibilizar informacoes a respeito dostatus de um certificado e a LCR. Esta contem uma lista de numeros serias decertificados revogados que nao sao mais confiaveis(IRA, ).

Se Alice deseja verificar se o certificado de Beto esta valido, ela deveobter e consultar a LCR da entidade que emitiu o certificado de Beto.

Os campos que uma LCR pode conter estao especificados na RFC5280(COOPER et al., 2008).

2.2.3 Autoridade Certificadora

A Autoridade Certificadora(AC), e a base de uma ICP. A AC e umcolecao de hardware, software e pessoas que a operam. (IRA, ) //Uma ACpode emitir, usando a sua chave privada, certificados para outras entidades,pessoas, servidores etc, certificando assim a legitimidade destes.

Uma AC emite certificados para entidades, finais ou nao, afirmandoque o conteudo do certificado e valido bem como o requisitante do certificadodetem a chave privada correspondente a chave publica contida no certificado.A AC pode adicionar informacoes no certificado que considerar validas.

A AC ainda e responsavel pela emissao de LCRs, podendo conternessa o motivo da revogacao dos certificados. Uma AC emite uma LCR ea assina com sua chave privada, atestando assim que o seu conteudo e valido.

De acordo com, a AC e conhecida por dois atributos: seu nome esua chave publica e tem as seguintes responsabilidades no escopo de umaICP(IRA, ):

• Assinar certificados digitais

• Manter informacoes sobre o estado dos certificados e emitir LCR’s

• Publicar certificados (nao expirados) e LCR’s, para que os usuariospossam obter a informacao que precisam para implementarem servicosde seguranca

• Manter arquivos de informacao de status de certificados expirados ourevogados

Page 26: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

24

Uma AC inserida em uma ICP usada em larga escala, pode ser sobre-carregada realizando todas as tarefas pertinentes a ela. Entao, pode-se delegarparte das tarefas a outra entidade, denominada, Autoridade de Registro.

2.2.4 Autoridade de Registro

Segundo Ignaczak (IGNACZAK, 2002), Uma Autoridade de Registro(AR) prove uma interface entre um usuario e uma AC. Ela e responsavel porconferir as informacoes do usuario e enviar a requisicao do certificado para aAC.

Uma AR pode estar comprometida a verificar os dados para variasACs, assim como uma AC pode receber requisicoes de diversas ARs. Asrequisicoes aceitas e encaminhadas para a AC devem estar assinadas com achave da AR.

2.3 TECNOLOGIAS UTILIZADAS

Nas proximas subsecoes, sera apresentado algumas das tecnologiasenvolvidas no desenvolvimento deste trabalho.

2.3.1 SQLite

SQLite e uma biblioteca(SQLITE, a) que implementa base de dadosSQL que:

• auto-contido: Necessita de pouco suporte de bibliotecas externas. Issotem a grande vantagem de facilitar a criacao de aplicacoes embarcadas(SQLITE,b),

• Nao possui um servidor de processos: Com o SQLite, o processo quedeseja acessar o banco de dados le e escreve diretamente a partir dosarquivos de banco de dados no disco. Nao existe nenhum processoservidor intermediario.(SQLITE, c).

• Nao e necessario configurar: Para instalar o SQLite, basta instalar abiblioteca deste. Feito isso, nenhuma configuracao adicional e necessaria(SQLITE,d).

Page 27: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

25

2.3.2 Apache

O Apache (APACHE, ) e um servidor web, amplamente utilizado egratuito. E codigo aberto e mantido pela comunidade. Seu uso foi muitoimpulsionado no passado pois foi o primeiro servidor permitir a hospedagemmais de um sitio em uma mesma maquina.

2.3.3 OpenSSL

O OpenSSL (OPENSSL, ) e uma biblioteca, de codigo aberto e gra-tuita, sobre a licenca estilo Apache que permite seu uso em aplicacoes comer-ciais ou nao. E mantida por esforco de colaboradores do mundo inteiro e temcomo proposito disponibilizar funcoes criptograficas atraves da implementacaodos protocolos para camadas de sockets seguros(SSL v2/v3) e de transporteseguro (TLS v1) (DIERKS; RESCORLA, 2008).

E a biblioteca criptografica mais utilizadas em softwares na area deseguranca. O SGCI utiliza essa biblioteca indiretamente atraves do modulophp5-libcryptosec que por sua vez utiliza a libcryptosec.

2.3.4 Libcryptosec

A libcryptosec (LIBCRYPTOSEC, ) e uma biblioteca criptografica,orientada a objetos, escrita na linguagem de programacao C++. Ela e imple-mentada utilizando o OpenSSL e abstrai diversas funcoes. Tem como objetivofacilitar e tornar mais flexıvel o desenvolvimento de aplicativos e solucoes decriptografia.

2.3.5 PHP5-Libcryptosec

O php5-libcryptosec (PHP5-LIBCRYPTOSEC, ) e um modulo paraPHP que permite usar funcoes da libcryptosec em uma aplicacao PHP. Elesurgiu da necessidade da realizacao de operacoes criptograficas em aplicacoesPHP e da carencia de uma biblioteca para tal objetivo.

Page 28: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

26

2.3.6 PHP

PHP (PHP, ) e uma linguagem de programacao alto-nıvel,interpretada,nao tipada e de domınio especıfico. E possıvel integrar um codigo escrito emPHP a um codigo em HTML.

2.3.7 Zend Framework

Zend Framework (ZEND. . . , ) e uma framework concebido para serde facil utilizacao, escrito em PHP, orientado a objetos e carregado de boas-praticas. Conta testes automatizados e e amplamente documentado. Adotou-se o uso do Zend Framework porque esse propicia ganho em produtividade,uma vez que abstrai diversas funcoes que antes teriam que ser implementadase tambem em flexibilidade para, por exemplo, trocar a base de dados utilizada,uma vez que as operacoes em BD estao todas abstraıdas pelo framework.

Page 29: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

27

3 SISTEMAS DE GESTAO DE CERTIFICADOS

3.1 INTRODUCAO

3.2 NEWPKI

3.3 OPENCA

3.4 EJBCA

3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ICPEDU - SGCI

3.6 COMPARATIVO DOS SGC’S

3.7 NOVAS FUNCIONALIDADES PROPOSTAS

3.7.1 OCSP

3.7.2 Certificacao cruzada / Ponte

3.7.3 Autoridade de certificacao digital

Page 30: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

28

Page 31: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

29

4 MELHORIAS DE USABILIDADE

4.1 INTRODUCAO

Grande parte dos softwares hoje em dia necessitam estar instalados econfigurados para o seu correto funcionamento. Tratando-se de servicos web,tal qual o SGCI, a instalacao pode nao ser simples por envolver a configuracaode ferramentas adicionais. Felizmente, esse esforco pode ser reduzido se osoftware contar com um bom instalador. As proximas sessoes apresentaraoabordagens de instaladores que podem vir a serem usadas no SGCI.

4.2 CARACTERIZACAO DO PROBLEMA

O funcionamento do SGCI depende, diretamente, da instalacao doPHP e do modulo PHP5-Libcryptosec que por sua vez depende da Libcryp-tosec e essa do OpenSSL. Esses se comunicacao entre si para realizar asoperacoes criptograficas. A figura 4.2 representa as camadas de dependenciasdesde o SGCI ate o sistema operacional.

Figura 5: Camadas de dependencias

Nem todas as versoes das bibliotecas sao compatıveis entre si e no casodo OpenSSL, a versao necessaria para o SGCI, esta disponıvel em poucasdistribuicoes Linux. Isso acarreta uma dificuldade. O usuario teria que baixar

Page 32: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

30

a versao requerida do OpenSSL e instala-la manualmente em seu sistemaoperacional. Uma vez instalada, e preciso baixar o codigo fonte do PHPe compila-lo e instala-lo manualmente, afim que esse trabalhe com o novoOpenSSL.

Outra dificuldade na instalacao surge das ferramentas utilizadas peloSGCI. E necessario o banco de dados SQLite, o servidor Apache compiladocom parametros que nao sao padroes nas distribuicoes Linux.

Todas essas dificuldades elevam o grau de complexidade da instalacaodo SGCI acarretam em perda de tempo com suporte tecnico, tanto da partedos desenvolvedores como do usuario que esta tentando instalar o sistema.

4.3 TIPOS DE INSTALACOES

Ha diversas abordagens possıveis de instaladores para servicos web,cada qual com suas vantagens e desvantagens. E claro que nao sera apresen-tado todas os possıveis tipos, apenas aqueles que apresentam caracterısticasinteressantes ao SGCI.

4.3.1 Sistema auto-contido

Nesta modalidade de instalacao, disponibiliza-se um pacote contendoo proprio software e todas as dependencias necessarias para o seu correto fun-cionamento. Tudo que esta contido nesse pacote foi previamente configuradoe compilado para satisfazer suas dependencias dentro dessa estrutura, sem anecessidade de uso de bibliotecas e aplicacoes do sistema operacional.

Juntamente com esse pacote, disponibiliza-se um script de inicializacaodos servicos pertinentes ao software. Para instalacao, basta que o pacote sejaextraıdo em um diretorio qualquer.

4.3.2 Assistente de instalacao

Nesta modalidade de instalacao, disponibiliza-se um pacote que contemo software a ser instalado. As dependencias a serem utilizadas sao do propriosistema operacional e caso nao sejam satisfeitas, ou seja, nao estejam instal-adas no sistema, sera impossıvel utilizar o software. A instalacao consiste naexecucao de um script contido dentro do pacote disponibilizado. Este script eo assistente de instalacao que ira interagir com o usuario atraves de telas, per-guntando a ele informacoes pertinentes para a correta instalacao da software.

Page 33: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

31

4.3.3 Pacotes .deb ou .rpm

Algumas famılias de distribuicoes linux contam com pacotes com-pactados instalaveis. Esses pacotes podem ser pre-configurados para fazeremuma verificacao e resolucao de dependencias antes de serem instalados efeti-vamente no sistema ou ainda podem conter todas as suas dependencias dentrodo proprio pacote. Estes sao instalados por um software que acompanha o sis-tema operacional que sao comumente chamados de gerenciadores de pacotes.

Pacotes desse tipo sao pacotes compactados, com funcionalidades in-teligentes como verificacao e instalacao de dependencias. Sao geralmenteinstalador por um gerenciador de pacotes e sao especıficos para cada famıliade distribuicoes Linux. Para esse tipo de instalacao vamos dividir em doissubtipos:

• Com dependencias do sistema: Na criacao desse tipo de pacote, lista-mos as dependencias necessarias e quando um gerenciador de pacotefor instalar esse pacote, vai automaticamente procurar satisfazer as de-pendencias listadas usando as dependencias do sistema operacional.

• Com dependencias estaticas: Nesse subtipo, nao listamos dependenciase sim disponibilizamos elas dentro do pacote, apontando apenas o lugarde instalacao das mesmas.

4.4 ANALISE DAS SOLUCOES PROPOSTAS

Exposto cada tipo de instalacao, vamos comparar as suas vantagens edesvantagens. Para efeito de analise, vamos considerar os dois subtipos depacotes .deb e .rpm como solucoes isoladas.

Page 34: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

32

Analise das VantagensModalidade do instalador Vantagens

Sistema auto-contido

Facilidade de instalacaoDesprendimento de bibliotecas e distros

Multiplataforma no escopo do UnixDisponibilizacao de novas versoes

Assistente de instalacao Flexibilidade

Pacotes .deb ou .rpm (sistema)

Facil criacao atraves da ferramenta checkinstallFacilidade de instalacao

Possibilidade de disponibilizar via apt ou yumResolucao de dependencias fica a cargo do pacote

Pacotes .deb ou .rpm (estatico)

Facil criacao atraves da ferramenta checkinstallFacilidade de instalacao

Possibilidade de disponibilizar vi a apt ou yumDependencias controladas pelo SGCI

Como desvantagens, podemos explicitar as seguintes:

Analise das DesvantagensModalidade do instalador Vantagens

Sistema auto-contido

Tamanho do pacote de instalacaoConfiguracao do path do sistema

Base de dados localLevantamento de todas as dependencias recursivamente

Assistente de instalacao

Dificuldade de criacaoDificuldade da realizacao de testes

Necessidade de ”work arounds”

Pacotes .deb ou .rpm (sistema) Revisao do pacote geradoDiferentes pacotes para diferentes distros

Pacotes .deb ou .rpm (estatico) Tamanho dos pacotes

4.5 DIVISAO DO SGCI EM MODULOS

4.6 MELHORIAS GERAIS DE INTERFACE GRAFICA

Page 35: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

33

5 MELHORIAS DE SEGURANCA

5.1 PROTOCOLO DE ACESSO A CHAVE PRIVADA DA AC

5.1.1 Introducao

No SGCI 2.0.0, e possıvel configurar uma AC ou uma AR armazenandosua chave privada em disco ou hardware criptografico. Se tratando da chaveem disco, a mesma fica salva em banco de dados. A chave de uma Autoridadeem claro, le-se decifrada, no banco de dados representa um grande falha deseguranca, uma vez que se um invasor ou um administrador mal intencionadotivesse acesso ao banco de dados do SGCI, consequentemente teria acesso aschaves privadas das Autoridades que por sua vez poderia emitir certificadosou assinar requisicoes legıtimas. Baseado nessa vulnerabilidade, surgiu a ne-cessidade da criacao de um protocolo seguro para o armazenamento e uso dachave privada de uma autoridade. Esse protocolo sera descrito nas proximassessoes.

5.1.2 Autenticacao no SGCI

Como o protocolo para uso da chave privada de uma Autoridade estaintimamente ligado ao sistema de autenticacao do SGCI, nao podemos ir adi-ante sem antes elucidar o funcionamento deste. O SGCI conta com 3 papeisdistintos de usuario. Sao eles: criador, administrador e operador, sendo queos dois ultimos, estao necessariamente ligados a uma Autoridade, portanto,podemos expandi-los para administrador de uma AR, administrador de umaAC, operador de uma AR e operador de uma AC. O usuario criador e unicono sistema e sua existencia nao esta atrelada a nenhuma uma autoridade, elee o usuario responsavel por criar a primeira entidade no SGCI, dai seu nome,criador. Vale lembrar que cada usuario cadastrado no sistema conta com umlogin, uma senha e um certificado digital de uma ICP interna ao SGCI, quesera explicada na sequencia.

5.1.3 ICP interna do SGCI

Para viabilizar certificados digitais para usuarios cadastrados no SGCI,esse conta com uma ICP interna. Ela e composta por uma ou mais entidades

Page 36: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

34

que sao criadas no ato da instalacao do software e tem como unico objectivo,a emissao de certificados digitais para os usuarios do sistema. Esse certifi-cado e armazenado em banco de dados, juntamente com outros dados perti-nentes, incluindo a chave primaria do certificado cifrada com a senha pessoaldo proprio usuario.

5.1.4 Chave privada da Entidade

Agora que ja temos conhecimento do mecanismo de autenticacao earmazenamento dos dados de um usuario, podemos prosseguir com o ar-mazenamento da chave de uma autoridade.

Como dito anteriormente, uma chave privada nao cifrada no bancode dados representa uma falha de seguranca. Entao a solucao foi cifrar achave privada da autoridade com a chave privada de cada usuario que possuirelacionamento com a entidade em questao, como mostra a figura:

5.1.5 Uso da chave privada

Entendido todas as pecas envolvidas no uso da chave de uma entidade,finalmente podemos explicar o fluxo para o uso dela.

O ponto inicial e a senha pessoal do usuario que apos digitada e sub-metida ao SGCI, essa passa por uma verificacao de corretude. Se estivercorreta , o proximo passo e decifrar a chave privada do usuario em questao,que por sua vez e usada para descifrar a senha da entidade cujo usuario estalogado e atingindo o ultimo passo do fluxo de disponibilizacao da chave.

5.1.6 Conclusao

Como podemos notar, a origem do uso de uma chave privada de umaentidade e a senha pessoal do usuario, garantindo que mesmo que um invasorou um usuario mau intencionado tenha acesso ao banco de dados do SGCI,esse nao podera usar a chave privada da entidade para nenhum fim pois aindasim e necessario a senha pessoal do usuario.

5.2 LOGS SEGUROS

Page 37: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

35

6 CONSIDERACOES FINAIS

6.1 TRABALHOS FUTUROS

Page 38: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

36

Page 39: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

37

7 ANEXO

Page 40: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

38

Page 41: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

39

8 APENDICE

Page 42: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

40

Page 43: UNIVERSIDADE FEDERAL DE SANTA CATARINA … · . ... dos dados e uma reuniao de funcionalidades atrativas dispon ... 3.5 SISTEMAS DE GESTAO DE CERTIFICADOS ...

41

REFERENCIAS BIBLIOGRAFICAS

APACHE.

COOPER, D. et al. Internet X.509 Public Key Infrastructure Certificateand Certificate Revocation List (CRL) Profile. IETF, maio 2008.RFC 5280 (Proposed Standard). (Request for Comments, 5280).<http://www.ietf.org/rfc/rfc5280.txt>.

DIERKS, T.; RESCORLA, E. The Transport Layer Security (TLS)Protocol Version 1.2. IETF, ago. 2008. RFC 5246 (Proposed Standard).(Request for Comments, 5246). Updated by RFCs 5746, 5878, 6176.<http://www.ietf.org/rfc/rfc5246.txt>.

IGNACZAK, L. Um Novo Modelo de Infra-estrutura de Chaves Publicaspara Uso no Brasil Utilizando Aplicativos com o Codigo Fonte Aberto.Dissertacao (Mestrado) — Universidade Federal de Santa Catarina, 2002.

IRA, T. K. Inducing Models of Black-Box Storage Arrays.<citeseer.ist.psu.edu/703376.html>.

LIBCRYPTOSEC.

MARTINA, J. E. Projeto de um provedor de servicos criptograficosembarcado para infra-estrutura de chaves publicas e suas aplicacoes.Dissertacao (Mestrado) — Universidade Federal de Santa Catarina, 2005.

OPENSSL.

PAAR, C.; PELZL, J. Understanding Cryptography: A Textbook for Studentsand Practitioners. [S.l.]: Springer-Verlag New York Inc, 2010.

PHP.

PHP5-LIBCRYPTOSEC.

SINGH, S. O livro dos codigos. 4. ed. [S.l.: s.n.], 2004.

SQLITE.

SQLITE.

SQLITE.

SQLITE.

ZEND Framework.