Certificados Digitais

        Uma regra em sistemas de criptografia com chave pública é que os usuários devem ser constantemente vigilantes para assegurar que eles estão encriptando para a chave correta da pessoa. Em um ambiente onde é seguro a troca livre de chaves por servidores públicos, ataques de uma pessoa do meio são uma ameaça potencial. Neste tipo de ataque, alguém põe no correio uma falsa chave com o nome e ID do usuário do recipiente. Dados encriptados —e interceptados pelo— verdadeiro dono desta falsa chave está agora em mãos erradas.

        Em um ambiente de chave pública, é vital que você esteja seguro que a chave pública para a qual você está encriptando dados é de fato a chave pública do recipiente no qual você quer mandar a mensagem e não uma falsificação. Você simplesmente poderia encriptar só para essas chaves que foram dadas fisicamente a você. Mas suponha você precisa trocar informação com pessoas que você nunca se encontrou; como você pode contar que você tem a chave correta?

        Certificados digitais, ou certs, simplifica a tarefa de estabelecer se uma chave pública realmente pertence ao dono pretendido.

        Um certificado é uma forma de credencial. Exemplos poderiam ser sua licença de motorista, seu cartão de seguro social, ou sua certidão de nascimento. Cada um destes tem um pouco de informação que podem identificar você e essas autorizações declaram que outra pessoa confirmaram sua identidade. Alguns certificados, como seu passaporte, são bastante importantes para a confirmação de sua identidade que você não quereria os perder, para que alguém não os use para te personificar.

        Um certificado digital é um dado como o que funciona muito parecidamente com um certificado físico. Um certificado digital é uma informação incluída com a chave pública de uma pessoa que ajuda outros verificarem que uma chave é genuína ou válida. Certificados digitais são usados para contrariar tentativas de substituição da chave de uma pessoa por outra.

        Um certificado digital consiste em três coisas:

        Uma chave pública.
        Certificado de informação. (Informação de "identidade" sobre o usuário, como nome, ID do usuário, e assim por diante.)
        Uma ou mais assinaturas digitais.

        O propósito da assinatura digital em um certificado é declarar que a informação do certificado foi atestada por alguma outra pessoa ou entidade. A assinatura digital não atesta à autenticidade do certificado como um todo; só atesta que a informação da identidade assinada vai junto com, ou é ligada, a chave pública.

        Assim, um certificado é basicamente uma chave pública com uma ou duas formas de ID atachado, mais um selo cordial de aprovação de alguma outra pessoa confiável.


fig1-8.gif (8407 bytes)

Figura 1-8. Anatomia de um certificado em PGP 

        Distribuição do certificado

        São utilizados certificados quando é necessário trocar chaves públicas com outra pessoa. Para grupos pequenos de pessoas para que se deseje comunicar com segurança, é fácil trocar disquetes manualmente ou e-mail contendo a chave pública de cada dono. Esta é uma distribuição manual da chave pública, e isto é prático até um certo ponto. Além deste ponto, é necessário por sistemas em lugares que pode prover a segurança necessária, armazenamento, e mecanismos de troca, sócios empresariais, ou os estranhos poderiam comunicar se for necessário. Estes poderiam entrar na forma de armazenamento em repositórios chamado Servidores de certificado, ou sistemas mais estruturados que provêem administração adicional de chaves e é chamada de Infra-estruturas de chaves públicas
(PKIs).

        Servidores de certificados:

        Um servidor de certificado, também chamado de servidor de chave, é um banco de dados que permite para os usuários submeter e recuperar certificados digitais. Um servidor de certificados normalmente provê algumas características administrativas que permite uma companhia a manter suas políticas de segurança—por exemplo, permitindo que só as chaves que satisfazem certas exigências serem armazenadas.

        Infra-estruturas das chaves públicas(PKI) :

        Um PKI contém as facilidades de armazenamento de certificados de um servidor de certificado, mas também provê facilidades de administração de certificado (a habilidade para emitir, revogar, armazenar, recobrir, e certificados de confiança). O principal característica de um PKI é a introdução do que é conhecido como uma autoridade de certificação, or CA, na qual é uma entidade humana—uma pessoa, um grupo, departamento, companhia, ou outra associação—que uma organização autorizou a emitir certificados para seus usuários de computador. (Um papel de CA é análogo ao escritório de Passaporte do governo de um país.) Uma CA cria certificados e digitalmente os assina usando a chave privada de CA. Por causa de seu papel de criar certificados, o CA é o componente central de um PKI. Usando a chave público do CA, qualquer um que quer verificar a autenticidade de um certificado verifica a emissão da assinatura digital do CA, e consequentemente, a integridade dos conteúdos do certificado (e mais ainda, a chave pública e a identidade do possuidor do certificado).

        Formatos de certificado

        Um certificado digital é basicamente uma coleção de informações de identificação junto com uma chave pública e assinado por uma terceira parte confiável para provar sua autenticidade. Um certificado digital pode ser um de um número de formatos diferentes.

        PGP reconhece dois formatos de certificado diferentes:

certificados PGP
certificados X.509

Formato do certificado PGP:
        Um certificado PGP inclui (mas não é limitado) a seguinte informação:

        O número da versão do PGP—isto identifica qual versão de PGP foi usado para criar a chave associada com o certificado.

        A chave pública do possuidor do certificado—a porção pública do seu par de chaves, junto com o algoritmo da chave: RSA, DH, (Diffie-Hellman), ou DSA (Digital Signature Algorithm).

        A informação do possuidor do certificado—isto consiste na informação da identidade sobre o usuário, como o nome dele ou dela, ID do usuário, fotografia, e assim por diante.

        A assinatura digital do dono do certificado—também chamado um self-signature, esta é a assinatura que usa a correspondente chave privada da chave pública associada com o certificado.
O período de validez do certificado—a data de começo do certificado / tempo e data de vencimento / tempo; indica quando o certificado vai expirar.

        O algoritmo preferido de encriptação simétrica para a chave—indica o algoritmo de encriptação para qual o dono do certificado prefere ter a informação encriptada. Os algoritmos suportados são CAST, IDEA ou Triple-DES. Você poderia pensar que um certificado de PGP fosse como uma chave pública com um ou mais etiquetas amarradas a isto (veja Figura 1-9). Nestas etiquetas você achará informação que identifica o dono da chave e uma assinatura do dono de chave, significando que a chave e a identificação vão junto. (Esta assinatura particular é chamada de self-signature; todo certificado de PGP contém uma self-signature.)

        Um aspecto de formato que só tem no PGP é que um único certificado pode conter assinaturas múltiplas. Várias ou muitas pessoas podem assinar o par chave / identificação para atestar à própria garantia deles/delas que a chave pública definitivamente pertence ao dono especificado. Se você olha em um servidor de certificado público, você pode notar que certos certificados, como aquele do criador do PGP, Phil Zimmermann, contem muitas assinaturas. Alguns certificados de PGP consistem em uma chave pública com várias etiquetas, cada dos quais contém diferentes meios de identificar o dono chave (por exemplo, o nome do dono e conta de e-mail, o apelido do dono e conta de e-mail de casa, uma fotografia do dono—tudo em um certificado). A lista de assinaturas de cada uma dessas identidades podem diferir; aí as assinaturas atestam à autenticidade de que um das etiquetas pertencem à chave pública, não que todas as etiquetas na chave são autênticos.

fig1-9.gif (11262 bytes)

Figura 1-9. Um certificado PGP

        Formato do certificado X.509:

        X.509 é um outro formato de certificado muito comum. Todos os certificados X.509 obedecem o padrão internacional ITU-T X.509; assim (teoricamente) certificados X.509 criados para uma aplicação podem ser usados por qualquer aplicação que obedece X.509. Em prática, porém,
companhias diferentes criaram as próprias extensões deles/delas para certificados X.509, nos quais não trabalham junto.

        Um certificado exige alguém para validar que uma chave pública e o nome do dono da chave vão juntos. Com certificados de PGP, qualquer um pode representar o papel de validador. Com certificados X.509, o validator é sempre uma Autoridade de Certificação ou alguém designado por uma CA (tenha em mente que certificados PGP também suportam completamente uma estrutura hierárquica que usa uma CA para validar certificados.)

        Um certificado X.509 é uma coleção de um conjunto padrão de campos contendo informações sobre um usuário ou dispositivo e suas correspondente chave pública. O padrão X.509 define qual informação vai no certificado, e descreve como codificar isto(o formato dos dados). Todos certificados X.509 têm os seguintes dados:

        O número da versão do X.509 —isto identifica qual padrão é aplicada na versão do X.509 para este certificado, o que afeta qual informação pode ser especificada neste.

        A chave pública do possuidor do certificado—a chave pública do possuidor do certificado, junto com um algoritmo de identificação que especifica qual sistema de criptografia pertence a chave e qualquer parâmetros associados.

        O número de série do certificado—a entidade (aplicação ou pessoa) que criou o certificado é responsável por neste um número de série para distinguir este de outros certificados que ele emite. Esta informação é usada de várias maneiras; por exemplo quando um certificado é revogado, seu número serial é colocado em uma Lista de Revogação de Certificado ou CRL.

        A identificação única do possuidor de certificado—(ou DN—nome distinguido). Este nome tem que ser único pela Internet. Um DN consiste em múltiplas subseções e pode parecer com algo do tipo:
CN=Bob Allen, OU=Total Network Security Division, O=Network Associates, Inc., C=US

(Estes se referem ao Nome Comum do assunto, Organizacional, Unidade, Organização, e País.)

        O período de validez do certificado—a data do começo do certificado /tempo e data de vencimento / tempo; indica quando o certificado expira.

        O nome único do emissor do certificado—o nome único da entidade que assinou o certificado. Esta normalmente é uma CA. Usando o certificado implica em confiar na entidade que assinou este certificado. (Note que em alguns casos, como raiz do certificado ou top-level da CA, o emissor assina seu próprio certificado.)

        A assinatura digital do emissor—a assinatura que usa a chave privada da entidade que emitiu o certificado.

        A identificação do algoritmo de assinatura—identifica o algoritmo usado pela CA para assinar o certificado. Há muitas diferenças entre um certificado X.509 e um certificado PGP, mas os mais salientes são como se segue:

        Você pode criar seu próprio certificado de PGP; você tem que pedir um certificado X.509 de uma Autoridade de Certificação

        Certificados X.509 suportam só um único nome para o dono de chave

        Certificados X.509 suportam só uma única assinatura digital para atestar para a validez da chave

        Para obter um certificado X.509, você tem que pedir para uma CA que emita um certificado a você. Você providencia sua chave pública, prova que você possui a chave privada correspondente, e alguma informação específica sobre você. Você então digitalmente assina a informação e envia o pacote todo—o pedido de certificado—para a CA. A CA então executa alguma devida diligência verificando que a informação que você providenciou está correta, e nesse caso, gera o certificado e retorna ele.

        Você poderia pensar em um certificado X.509 como parecendo um certificado de papel padrão com uma chave pública gravada nele. Isto tem seu nome e um pouco de informação sobre você, mais a assinatura da pessoa que emitiu isto para você.

fig1-10.gif (15250 bytes)

Figura 1-10. Um certificado X.509 

        Provavelmente o mais visível uso de certificados X.509 está em WEB browsers.


voltar

Principal

avançar