|
Introdução
Com o crescimento de popularidade da Internet, Extranet
e Intranet, um crescente número de organizações
e indivíduos observam as redes informáticas
como um meio eficiente para troca e distribuição
de informação. No entanto, sendo a Internet
actualmente considerada como um dos canais mais atractivos
para comunicar em tempo real, aqueles que desejam tirar
vantagem da sua presença nestas redes têm
que assegurar a utilização de meios confiáveis
para essa troca de informação.
A necessidade de segurança na rede
Sem as medidas de segurança adequadas, os participantes
em processos de troca de informação têm
que se preocupar com um conjunto de ameaças -
as fraudes electrónicas:
- Alteração de dados (Data Tampering)
- alteração do número de uma conta
bancária numa transacção financeira,
por exemplo.
- Visualização de dados confidenciais
(Eavesdropping) - monitorização de uma
sessão de troca de informação e
apoderar-se de segredos alheios, por exemplo.
- Impersonificação (Masquerading) - um
dos elementos de uma troca de informação
apelidar-se perante terceiros como se de um outro elemento
se tratasse, por exemplo.
As precauções quanto à fraude electrónica
são especialmente importantes quando se considera
que os dados são armazenados em vários
sistemas informáticos, quando estão em
trânsito entre os elementos de uma troca de informação.
Existem tecnologias especialmente concebidas para possibilitar
a criação de sessões para troca
segura de informação. Estas tecnologias
incluem o SSL (Secure Sockets Layer), o Secure-HTTP
(S-HTTP), o Secure-MIME (S/MIME) e os Certificados Digitais
de Chave Pública.
SSL, S-HTTP e S/MIME
A tecnologia hoje disponível em aplicações
de correio electrónico, servidores de informação
ou browsers possibilita a utilização de
serviços seguros e confiáveis de uma maneira
fácil, sem que os elementos da troca da informação
se tenham que preocupar com a fraude electrónica.
Basicamente, estes protocolos permitem a criação
de sessões seguras de troca de informação
em que os intervenientes se identificam, e sobre a qual
partilham informações de uma maneira segura.
Através do uso de técnicas criptográficas
tais como a cifragem e assinaturas digitais, estes protocolos:
- Permitem a autenticação dos elementos
de uma troca de informação (remetente
e destinatário).
- Permitem que informação sensível
(por exemplo, número de cartão de crédito)
seja partilhada pelos elementos de uma troca de informação,
mantendo-se no entanto inacessível a terceiros.
- Asseguram que a informação trocada entre
elementos não é corrompida, acidental
ou deliberadamente, sem detecção.
Uma componente chave no estabelecimento de sessões
seguras através dos protocolos SSL , S-HTTP ou
S/MIME são os Certificados Digitais. No entanto,
sem certificados autênticos e de confiança,
os protocolos acima mencionados oferecem um nível
de confiança nulo.
Certificados Digitais
As credenciais utilizadas para autenticação
de servidores de rede e browsers através de protocolos,
tais como o SSL e o S-HTTP, são denominados certificados
digitais. O certificado digital utilizado nestes protocolos
baseia-se na norma X.509v3 e permite a comprovação
da identidade do portador, sendo autorizado e emitido
por uma terceira entidade de confiança, conhecida
no mundo da segurança electrónica como
AC - Autoridade Certificadora (CA - Certification Authority)
ou Entidade Certificadora.
Fazendo uma analogia com o Mundo Real, um certificado
digital pode ser visto como um passaporte e a AC como
o arquivo de identificação. Esta última,
verifica a identidade de um indivíduo, cria um
documento de confiança reconhecido e acreditado
por outros, e emite um Certificado Digital para uso
próprio do indivíduo.
A utilização dos certificados digitais,
sua constituição interna e grau de confiança,
varia consoante as necessidades do indivíduo
e as práticas e políticas de exploração
de serviços de emissão de certificados
digitais pelas quais se rege a Entidade Certificadora.
Entidade Certificadora
Uma Entidade Certificadora é responsável
pela emissão de certificados digitais utilizados
para identificar comunidades de indivíduos, sistemas,
ou outras entidades que utilizem meios ligados a redes
informáticas.
Assinando digitalmente os certificados que emite, a
Entidade Certificadora relaciona a identidade do portador
do certificado, e consequente portador da chave privada,
à chave pública existente no certificado.
A Entidade Certificadora, utiliza diferentes processos
para proceder à verificação da
identidade do indivíduo (por exemplo, verificação
de endereço de correio electrónico; verificação
de endereço de correio electrónico + nome
+ morada; verificação de endereço
de correio electrónico + reconhecimento presencial
do indivíduo + verificação do bilhete
de identidade), podendo atribuir diferentes níveis
de confiança ao certificado digital, com a garantia,
ou não, da veracidade de determinados dados do
seu conteúdo.
Triângulo de Confiança
A Entidade Certificadora representa um papel muito
importante em termos da confiança da informação
transitada numa rede, pois possibilita a criação
da terceira entidade na qual as duas partes confiam.
Numa rede informática distribuída e complexa,
este modelo de confiança numa terceira entidade
é absolutamente necessário, pois existem
diversas permutas dinâmicas no relacionamento
browser-servidor. Os browsers e os servidores podem
não ter criado uma relação de confiança
mútua, mas ambas as partes necessitam de criar
sessões de comunicação seguras
entre elas, necessitando para tal de uma terceira entidade
na qual ambos confiam.
A Entidade Certificadora é o vértice
superior do triângulo de confiança necessário
para o estabelecimento de sessões seguras e de
confiança na rede. Cada uma das partes, numa
sessão de troca de informação (vértices
da base do triângulo), confia na Entidade Certificadora.
E como cada uma das partes está certificada pela
Entidade Certificadora, cada uma delas pode confiar
e reconhecer a outra, criando inevitavelmente uma relação
(triangular) de confiança. Podem ambas, assim,
utilizar uma sessão segura sem risco de impersonificações.
Adicionalmente, como as duas partes da sessão
trocam entre si os seus certificados digitais, podem
cifrar e assinar digitalmente informação,
retirando a terceiros a possibilidade de observação
dos dados da sessão ou a possibilidade de os
alterar.
A importância da uma gestão completa
de chaves criptográficas
O processo de criação de certificados
é um dos elementos que uma Entidade Certificadora
tem que gerir, mas é absolutamente necessária
a gestão completa de todo um ambiente de certificados
para estabelecer e manter um ambiente de confiança
com terceiros.
A possibilidade de uma Entidade Certificadora identificar
certificados não confiáveis (por exemplo,
certificados revogados) é tão importante
e fundamental quanto o processo de emissão. No
momento em que a Entidade Certificadora emite um certificado
de chave pública, cria uma relação
entre a chave pública de um indivíduo
(portador da correspondente chave privada) e os dados
relativos ao próprio indivíduo (por exemplo,
a empresa em que trabalha ou dados do cartão
de crédito pessoal).
No entanto, em algum momento no futuro, e por uma infinidade
de razões possíveis, a Entidade Certificadora
poderá ter que proceder à revogação
do certificado previamente emitido por este já
não ser de confiança. Por exemplo, se
o possuidor do certificado termina o seu contrato de
trabalho com a empresa, por cancelamento de cartão
de crédito, ou se a chave privada correspondente
à chave pública constante no certificado
foi comprometida.
Sem esta capacidade não é possível
criar e manter um ambiente de confiança numa
rede baseada em criptografia de chaves públicas.
Adicionalmente à criação de certificados
confiáveis e à gestão eficaz de
processos de revogações, outros aspectos
não menos importantes são:
- Geração segura de pares de chaves públicas
e chaves simétricas.
- Salvaguarda e uso da componente privada de pares
de chaves públicas da Entidade Certificadora
num ambiente seguro.
- Actualização, no tempo, das chaves
públicas dos utilizadores.
- Certificação cruzada com outras entidades
certificadoras.
- Publicação de certificados digitais
emitidos num local de acesso público (exemplo:
Servidor LDAP ou OCSP).
- Serviço público, em tempo real, para
verificação da validade de um certificado.
- Publicação de listas de certificados
digitais revogados.
As funções de uma Entidade Certificadora
As funções básicas de uma Entidade
Certificadora incluem:
- Aceitar solicitações de utilizadores
(por exemplo: browsers, carteiras virtuais) e servidores
de rede.
- Efectuar as verificações necessárias
quanto ao conteúdo e veracidade das credenciais
apresentadas nas solicitações.
- Gerar e emitir certificados digitais.
Um aspecto importante para uma Entidade Certificadora
é a integridade e publicidade do seu certificado
público. Este é utilizado por browsers
e servidores de rede com o fim de verificarem a veracidade
do conteúdo de certificados de outrém,
sendo necessário que cada elemento numa troca
de informação possua uma cópia
fidedigna do certificado da Entidade Certificadora,
e sendo crucial que a chave pública da Entidade
Certificadora seja divulgada por um canal de confiança,
e que possa ser verificada em qualquer altura por qualquer
um dos elementos da cadeia.
Estrutura dos Certificados Digitais X.509 v3
A estrutura dos certificados geridos pela MULTICERT
adopta a norma X.509 v3, possibilitando a customização
de conteúdos em extensões previamente
definidas e adaptadas (de acordo com as normas PKCS#6
e PKCS#9). Assim poderão ser introduzidos dados
específicos do utilizador, níveis de criticidade
com respectivos identificadores (por exemplo, a identificação
da morada do indivíduo, a codificação
do níveis de acesso a informação,
o âmbito de utilização do certificado).
Diagrama simples de um certificado digital X.509
v3 (não incluindo as extensões v3 standard)
Informação básica
Formato do certificado
|
versão 3 |
Nº de Série do certificado
|
123456789 |
Identificador do algoritmo de
assinatura da EC
|
RSA com MD5 |
Endereço X.500 do emissor
|
C=PT,o=EC |
Período de
validade
|
start=01/08/96,
expiry=01/08/98 |
Nome X.500 do utilizador
|
c=PT,o=organização,cn=João
Silva + ..... |
Chave pública do utilizador
e método criptográfico utilizado
|
C.P.U. + RSA com MD5 |
Extensões V3
Tipo
|
Criticidade
|
Valor
|
morada, bit off/não crítico,
Rua das Codornizes 183 |
Tipo
|
Criticidade
|
Valor
|
âmbito, bit on/crítico,
Válido somente para Assinatura Digital |
Tipo
|
Criticidade
|
Valor
|
Nível de acesso,bit off/não
crítico, 1- geral |
Tipo
|
Criticidade
|
Valor
|
...... |
|