Notes
Untitled
Content of the notes (1)
Page 1
5 DISSERTAÇÃO - CRIPTOGRAFIA ASSIMÉTRICA
Dentre tantas técnicas de criptografia existentes atualmente, a mais presente nos algoritmos é a que utiliza as chaves assimétrica, também conhecida como criptografia assimétrica. Ela está presente ao mandarmos e-mails, ao fazer compras online, o algoritmo de criptografia mais utilizado no mundo, o RSA, utiliza as chaves assimétricas e ainda traz um elemento essencial para manter a segurança de nossos dados na internet: a assinatura digital.
Este método utiliza um par de chaves que estão relacionados entre si e são denominadas de chave privada e chave pública. A chave pública é distribuída para quem o proprietário desejar enquanto a chave privada se mantém no domínio de quem a criou.
Por meio de qualquer uma das chaves é possível realizar a encriptação de qualquer mensagem, entretanto, a mensagem só poderá ser de criptografada com a outra chave, que na maior parte dos casos é a chave privada e apenas o proprietário a possui, sendo assim, apenas ele obtém o conteúdo da mensagem.
Essas chaves são criadas a partir de extensas fórmulas matemáticas, dificultando que o valor da chave seja obtido a partir de um algoritmo que utilize a força bruta (algoritmos que testem todas as possibilidades até encontrar a solução), que demandaria tempo, talvez até milhares de ano, e grande capacidade de processamento, podendo utilizar diversas máquinas nesse processo.
Uma das fórmulas que gera um algoritmo seguro é aplicar o método fatoração de números inteiros. A partir de dois números primos se gera um terceiro número que será o produto resultado entre a multiplicação dos dois números iniciais. Entretanto, não é tão fácil realizar o processo inverso, pois o produto gerado é um número extenso e que deverá ser fatorado até encontrar os números primos, o que é um processo extenso e que necessita de muito processamento.
Pode também utilizar um método de análise combinatória, conhecido como mochila, normalmente essa técnica é utilizada em pequenos problemas, pois, pode gerar um grande número de combinações e ser computacionalmente impossível de escolher a melhor para se aplicar no problema. Basicamente, é como encher uma mochila com pesos diferentes, estudar a forma de carregar esses pesos e a partir disso criar o meio mais desenvolvido de carregar os pesos sem que exceda o limite. É um processo demorado e exaustivo, raramente este método é aplicado.
Há ainda uma formula mais eficiente, a partir de uma função para encontrar um logaritmo. É possível encontrar o resultado por uma equação em que basta ter um número real elevado a x módulo um outro número real. Esta equação é conhecida como o a Equação do Logaritmo Discreto. Ainda não se tem conhecimento de um algoritmo capaz de solucionar este problema.
As técnicas que utilizam as chaves assimétricas, devem ser autenticas, ou seja, reconhecer a identidade dos envolvidos, e ter confidencialidade, apenas quem receber a mensagem, o destinatário, deve acessar o conteúdo da mesma. Ambos só podem ser alcançados utilizando a chave correta.
O método para realizar a encriptação de uma mensagem seja autêntica, deve se utilizar a chave privada para codificar e a chave pública para realizar o processo inverso. Para que haja a confidencialidade, o emissor da mensagem deve codificar com a chave pública e o destinatário deve decodificar com a chave privada.
Para que uma mensagem seja tanto confidencial quanto autêntica, o emissor deve encriptar a mensagem com ambas as chaves, inicialmente com a sua própria chave privada e posteriormente, encriptar novamente com a chave pública que o destinatário possui. O processo de decodificação deve se utilizar a chave privada do destinatário e em seguida a chave pública que está em posse do emissor.
A criptografia assimétrica, possui uma característica que explica o fato de ser a técnica mais utilizada atualmente, ela permite a possibilidade de assinar os documentos digitais por meio da criação de uma assinatura digital.
A assinatura digital é criada a partir da função hash. Para calcular esta função, é necessário antes obter o "valor hash", que é um "identificador digital" que possui um tamanho fixo e é calculado a partir de qualquer string. Esse valor pode ter um tamanho de até 512 bytes, contudo, geralmente possui entre 15 e 20 bytes.
Com o valor hash ja definido, basta utilizar a chave privada e realizar a criptografia do valor hash. Com a assinatura, o destinatário irá descriptografar com a chave privada o texto e a assinatura e então compara-los, caso o resultado seja igual a assinatura é considerada válida e a operação segue, caso não seja válida a assinatura é descartada.
Utilizar a assinatura digital tem grandes vantagens, como, é computacionalmente impossível atualmente descriptografar a mensagem, devido a quantidade de bytes utilizado. Assim como não há um padrão, cada mensagem irá gerar um valor hash diferente, nunca haverá mensagens encriptadas do mesmo jeito. Há ainda um certificado digital que é um documento emitido por uma autoridade certificadora que garante a autenticidade das chaves públicas identificando o objeto, evitando que a assinatura digital seja fraudada e o conteúdo da mensagem seja obtido por alguém que não seja o destinatário final.
Um dos algoritmos de chave assimétrica mais utilizado atualmente é o RSA, criado por Ronald Rivest, Adi Shamir e Leonard Adleman em 1977, esse método utilizaa a Teoria dos Números, por meio da fatoração dos números inteiros, devido à sua segurança é utilizado por empresas em todo o mundo.
Outro algoritmo conhecido por utilizar a assinatura digital é o ElGamal, criado 1984 por Taher ElGamal, utiliza o método do logaritmo discreto. A função deste é algoritmo é identificar se a mensagem é autentica ou não. O seu código gera as chaves de modo aleatório que impede que aja tentativas de obter a mensagem a partir de uma análise estatística.
Para facilitar a geração do valor hash, foram criados algoritmos específicos como o MD5 e o SHA, entretanto, em ambos foram descobertas aberturas para possíveis criptoanálise mas ainda assim são muito utilizados.
Não basta apenas que o algoritmo seja seguro, a chave privada também deve ser mantida em segurança pelo emissor/destinátario. Muito mantém a chave privada no computador pessoal, o que pode ser um erro pois a segurança da chave estará atrelada ao nível de segurança deste computador, como consequencia alguns usuários recorrem a métodos externos como a utlização de Smart Cards. Esse cartões armazenam a chave e o chip realiza a criptografia da mensagem e o computador acaba não tendo contato direto com o valor hash da chave privada.
Também é necessário prestar atenção com a segurança da distruibuição das chaves públicas para que outras pessoas não possam distruibuir as mesmas em nome de terceiros. Assim como realizar a criptografia de maneira frequente, reduzindo as chances de timming atacks que são ataques realizados por hackers que tem conhecimento do hardware da máquina do usuário.
Apesar da assinatura digital ser uma grande vantagem que a criptografia assimétrica possui, assim como, a utilização de uma chave privada para realizar a decodificação, as chaves assimétricas possuem uma grande desvantagem: a quantidade de processamento que o processo demanda. É uma técnica que ao ser comparada com a chave simétrica perde em velocidade e processamento, principalmente, devido aos processos matemáticos, que exigem demais da unidade processadora e que na maior parte das vezes são realizados mais de uma vez. As chaves assimétricas, normalmente, possuem um grande tamanho e como em qualquer programa, quanto maior mais lento é o processo, neste caso tanto o processo de criptografar, quanto o de descriptografar
Ao ser compara com a criptografia simétrica, fica mais claro as vantagens e as desvantagens das chaves assimétricas. Devida a alta complexidade do algoritmo, as técnicas que utilizam as chaves públicas e privadas ficam seguras de ataques a partir da criptoanálise pois necessita de uma alta quantidade de poder de processamento, contudo, isso também interfere na sua velocidade de reprodução, um algoritmo criando utilizando as chaves simétricas irá produzir um resultado mais rápido e de forma mais eficiente, porém, de forma menos segura.
Levando em consideração todos os aspectos apresentados acima, como a criptografia poderia ser útil em solucionar problemas no nosso cotidiano? Para resolver o problema proposto de controlar o acesso de pessoas e as informações em uma área restrita é possivel usar uma cifra de substituição como a Cifra de César.
Utilizando uma chave pré-estabelecida entre as partes envolvidas e a mantendo segura, é possível realizar a codificação da mensagem e a enviar via rádio. Em seguida, o destinatário deve apenas substituir cada caracter da mensagem pela caracter correspondente à chave. Esse é apenas um dos métodos que se pode utilizar nesta situação.
Algoritmos que envolvem chaves assimétricas também poderiam ser utilizados, para tornar o processo mais seguro e confiável. Assim como o de chaves simétricas para tornar a comunicação mais rápida.
Information
- Description
- Note on Untitled, created by Patrick G. Santana on 14/11/2020.
- Created by
- Patrick G. Santana
- Views
- 0
- Rating