Escolar Documentos
Profissional Documentos
Cultura Documentos
A criptografia assimtrica usa um par de chaves pblica/privada. Os dados criptografados com a chave
privada podem ser descriptografados apenas com a chave pblica correspondente e vice-versa.
As chaves pblicas (como o nome sugere) so amplamente disponibilizadas. De modo inverso, uma
chave privada permanece privada para um indivduo especfico. O mecanismo de distribuio pelo qual
as chaves pblicas so transportadas aos usurios um certificado. Normalmente, os certificados so
assinados por uma CA (autoridade de certificao) para confirmar que a chave pblica do indivduo
que afirma t-la enviado. A autoridade de certificao uma entidade mutuamente confivel.
A implementao tpica do certificado digital envolve um processo de assinatura do certificado. O
processo demonstrado na Figura 1.
Figura 1
Processo de certificao digital
A seqncia de eventos mostrada na Figura 1 a seguinte:
1.
Alice envia uma solicitao de certificado assinado contendo seu nome, sua chave pblica e,
2.
3.
4.
Alice.
Como com qualquer assinatura digital, qualquer receptor com acesso chave pblica da autoridade de
certificao pode determinar se uma autoridade de certificao especfica assinou o certificado. Esse
processo no requer acesso a nenhuma informao secreta. O cenrio anterior considera que Bob tem
acesso chave pblica da autoridade de certificao. Bob pode ter acesso a essa chave se tiver uma
cpia do certificado da autoridade de certificao que contm essa chave pblica.
Incio da pgina
Armazenamentos de certificados
Os certificados so armazenados em locais seguros chamados de armazenamentos de certificados. Um
armazenamento de certificado pode conter certificados, CRLs e CTLs (lista de certificados confiveis).
Cada usurio tem um armazenamento pessoal (chamado "MEU armazenamento") onde os certificados
desse usurio so armazenados. O MEU armazenamento pode ser fisicamente implementado em
vrios locais, incluindo o Registro, um computador local ou remoto, um arquivo de disco, uma banco
de dados, um servio de diretrios, um dispositivo inteligente ou outro local.
Embora qualquer certificado possa ser armazenado em MEU armazenamento, esse armazenamento
deve ser reservado para os certificados pessoais de um usurio, isto , os certificados usados para
assinar e descriptografar as mensagens desse usurio especfico.
Alm de MEU armazenamento, o Windows tambm mantm os armazenamentos de certificados a
seguir:
mensagens assinadas.
A CryptoAPI fornece funes para gerenciar certificados. Essas APIs podem ser acessadas apenas por
meio de um cdigo no gerenciado. Alm disso, o CAPICOM uma API com base em COM para a
CryptoAPI, que pode ser acessada por meio de COM Interop.
Mais informaes
Para obter mais informaes, consulte "Cryptography, CryptoAPI, and CAPICOM" no MSDN
(http://msdn.microsoft.com/library/default.asp?url=/library/enus/security/Security/cryptography_cryptoapi_and_capicom.asp).
Incio da pgina
Criptografia
A criptografia usada para proporcionar o seguinte:
valor do hash dos dados, conforme eles foram enviados para determinar se foram alterados.
Autenticao. Para garantir que os dados se originem de uma parte especfica. Os certificados
digitais so usados para fornecer autenticao. As assinaturas digitais geralmente so aplicadas a
valores de hash, uma vez que eles so significativamente menores que os dados de origem que
representam.
Incio da pgina
Opes tcnicas
Use um hash quando desejar uma maneira de verificar se os dados no foram alterados em
trnsito.
Use um hash com chave quando desejar provar que uma entidade conhece um segredo sem ter de
transmiti-lo ou quando desejar defender-se de interceptaes durante o trnsito com um hash
simples.
Use a criptografia se desejar ocultar os dados quando eles estiverem sendo enviados por uma mdia
no segura ou quando desejar torn-los persistentes.
Use um certificado quando desejar verificar a pessoa que est afirmando ser a proprietria da
chave pblica.
Use a criptografia simtrica para fins de velocidade e quando ambas as partes compartilharem a
chave antecipadamente.
Use a criptografia assimtrica quando desejar trocar dados de maneira segura por uma mdia no
segura.
Use uma assinatura digital quando desejar autenticao e no-repdio.
Use um valor salt (um nmero aleatrio gerado de maneira criptogrfica) para se defender de
ataques de dicionrio.
Incio da pgina
Criptografia no .NET
O espao para nome System.Security.Cryptography fornece servios criptogrficos, inclusive a
codificao e a decodificao seguras de dados, hash, gerao de nmero aleatrio e autenticao de
mensagens.
O .NET Framework fornece implementaes de muitos algoritmos criptogrficos padro, que podem
ser facilmente estendidos devido hierarquia de herana bem definida, que consiste em classes
abstratas que definem os tipos bsicos de algoritmos algoritmos simtricos, assimtricos e de hash,
juntamente com as classes de algoritmos.
Tabela 1: Mostra os algoritmos para os quais o .NET Framework fornece classes de
implementao "preestabelecidas".
Algoritmos simtricos
Algoritmos
assimtricos
Algoritmos de hash
de dados)
assinatura digital)
SHA1)
MAC Triple DES (cdigo de autenticao de
criptografia de dados)
Rijndael
RC2
DESCryptoServiceProvider
RC2CryptoServiceProvider
RijndaelManaged
TripleDESCryptoServiceProvider
Figura 2
A hierarquia de herana de classe de criptografia simtrica
DSACryptoServiceProvider
RSACryptoServiceProvider
Eles so usados para assinar e criptografar dados digitalmente. A Figura 3 mostra a hierarquia de
herana.
Figura 3
Hierarquia de herana da classe de criptografia assimtrica
Figura 4
Hierarquia de herana da classe de criptografia de hash
Incio da pgina
Resumo
A criptografia uma tecnologia importante para a criao de aplicativos da Web seguros. Este
apndice abrangeu alguns dos princpios fundamentais de certificados e criptografia e introduziu
algumas das classes expostas pelo espao para nome System.Security.Cryptography, que
permitem incorporar mais facilmente as solues de segurana criptogrfica aos aplicativos .NET.
Para obter mais informaes sobre criptografia no.NET, pesquise no MSDN a pgina ".NET Framework
Cryptography Model".