Uma coisa que se tornou abundantemente clara na era da Internet é que impedir que pessoas não autorizadas tenham acesso aos dados armazenados em sistemas de computador habilitados para a Web é extremamente difícil. Basta que um trabalhador clique no link errado em um e-mail, ou responda desavisadamente a um pedido de informação aparentemente legítimo, e um intruso poderia obter acesso completo a todos os seus dados. Nos ambientes regulamentares e de relações públicas de hoje, esse tipo de violação pode ser catastrófica.
Mas e se você pudesse ter certeza de que mesmo que um invasor tivesse acesso às suas informações, ele não poderia usá-las? Essa é a função da criptografia de dados.
Como funciona a criptografia
A idéia básica da criptografia é converter os dados em uma forma na qual o significado original é mascarado, e somente aqueles que são devidamente autorizados podem decifrá-la. Isto é feito através da codificação da informação usando funções matemáticas com base num número chamado chave. Um processo inverso, usando a mesma chave ou uma chave diferente, é usado para descodificar (ou decifrar) a informação. Se a mesma chave é utilizada tanto para encriptação como para decifragem, diz-se que o processo é simétrico. Se chaves diferentes são usadas, o processo é definido como assimétrico.
Dois dos algoritmos de criptografia mais usados atualmente são AES e RSA. Ambos são altamente eficazes e seguros, mas são tipicamente usados de maneiras diferentes. Vamos ver como eles se comparam.
AES criptografia
AES (Advanced Encryption Standard) tornou-se o algoritmo de criptografia de escolha para governos, instituições financeiras e empresas preocupadas com a segurança em todo o mundo. A Agência de Segurança Nacional dos EUA (NSC) usa-o para proteger a informação “top secret” do país.
O algoritmo AES aplica sucessivamente uma série de transformações matemáticas a cada bloco de dados de 128 bits. Como os requisitos computacionais dessa abordagem são baixos, o AES pode ser usado com dispositivos de computação de consumo, como laptops e smartphones, bem como para criptografar rapidamente grandes quantidades de dados. Por exemplo, a série IBM z14 de mainframes usa AES para habilitar a criptografia universal na qual todos os dados em todo o sistema, em repouso ou em trânsito, são criptografados.
AES é um algoritmo simétrico que usa a mesma chave de 128, 192 ou 256 bits para criptografia e decriptografia (a segurança de um sistema AES aumenta exponencialmente com o comprimento da chave). Mesmo com uma chave de 128 bits, a tarefa de cracking AES verificando cada um dos 2128 valores chave possíveis (um ataque de “força bruta”) é tão computacionalmente intensiva que mesmo o supercomputador mais rápido precisaria, em média, de mais de 100 trilhões de anos para fazê-lo. Na verdade, o AES nunca foi quebrado, e com base nas tendências tecnológicas atuais, espera-se que permaneça seguro nos próximos anos.
Ler nosso eBook
IBM i Encryption 101
Este eBook fornece uma introdução à criptografia, incluindo as melhores práticas para a criptografia IBM i.
Criptografia RSA
RSA é nomeado para os cientistas do MIT (Rivest, Shamir e Adleman) que o descreveram pela primeira vez em 1977. É um algoritmo assimétrico que usa uma chave conhecida publicamente para encriptação, mas requer uma chave diferente, conhecida apenas pelo destinatário pretendido, para descriptação. Neste sistema, apropriadamente chamado de criptografia de chave pública (PKC), a chave pública é o produto da multiplicação de dois grandes números primos juntos. Apenas esse produto, 1024, 2048, ou 4096 bits de comprimento, é tornado público. Mas a decriptação RSA requer o conhecimento dos dois fatores primordiais desse produto. Como não há um método conhecido de cálculo dos fatores primos de números tão grandes, apenas o criador da chave pública também pode gerar a chave privada necessária para a decriptação.
RSA é computacionalmente mais intensivo do que AES, e muito mais lento. É normalmente usado para encriptar apenas pequenas quantidades de dados.
Como AES e RSA trabalham em conjunto
Um dos principais problemas com AES é que, como um algoritmo simétrico, requer que tanto o encriptador como o deciptor usem a mesma chave. Isto dá origem a uma questão crucial de gestão de chaves – como pode essa importantíssima chave secreta ser distribuída a talvez centenas de destinatários em todo o mundo sem correr o enorme risco de ser descuidada ou deliberadamente comprometida em algum lugar pelo caminho? A resposta é combinar os pontos fortes da criptografia AES e RSA.
Em muitos ambientes de comunicação modernos, incluindo a Internet, a maior parte dos dados trocados é criptografada pelo rápido algoritmo AES. Para obter a chave secreta necessária para decifrar esses dados, os destinatários autorizados publicam uma chave pública, mantendo uma chave privada associada que só eles conhecem. O remetente então usa essa chave pública e RSA para encriptar e transmitir a cada destinatário a sua própria chave AES secreta, que pode ser usada para desencriptar os dados.
Para mais informações sobre encriptação, leia o nosso livro electrónico: IBM i Encryption 101