Chave (criptografia)

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar

A chave chave em criptografia é um pedaço de informação, geralmente uma cadeia de números ou letras que são armazenados em um arquivo, que, quando processados através de um algoritmo criptográfico, pode codificar ou decodificar dados criptográficos. Com base no método usado, a chave pode ser diferentes tamanhos e variedades, mas em todos os casos, a força da criptografia depende da segurança da chave que está sendo mantida. A força de segurança de uma chave depende do seu algoritmo, do tamanho da chave, da geração da chave e do processo de troca de chaves.

Escopo

A chave é usada para criptografar dados de texto simples para texto cifrado. Existem diferentes métodos para utilizar chaves e criptografia.

Criptografia simétrica

A criptografia simétrica refere-se à prática de usar a mesma chave para criptografia e descriptografia.

Criptografia assimétrica

A criptografia assimétrica possui chaves separadas para criptografar e descriptografar. Essas chaves são conhecidas como chaves públicas e privadas, respectivamente.

Propósito

Como a chave protege a confidencialidade e a integridade do sistema, é importante mantê-la em segredo de pessoas não autorizadas. Com a criptografia de chave pública, apenas a chave privada deve ser mantida em segredo, mas com a criptografia simétrica é importante manter a confidencialidade da chave. O princípio de Kerckhoff afirma que toda a segurança do sistema criptográfico depende do sigilo da chave.

Tamanhos de chave

O tamanho da chave é o número de bits na chave definido pelo algoritmo. Este tamanho define o limite superior da segurança do algoritmo criptográfico. Quanto maior o tamanho da chave, mais tempo levará até que ela seja comprometida por um ataque de força bruta. Como o sigilo perfeito não é viável para algoritmos-chave, as pesquisas estão agora mais focadas na segurança computacional.

No passado, era necessário que as chaves tivessem no mínimo 40 bits de comprimento. No entanto, com o avanço da tecnologia, essas chaves foram sendo quebradas cada vez mais rápido. Como resposta, as restrições às chaves simétricas foram aprimoradas para serem maiores em tamanho.

Atualmente, o RSA de 2048 bits é comumente usado, o que é suficiente para os sistemas atuais. No entanto, os tamanhos de chave atuais seriam todos quebrados rapidamente com um poderoso computador quântico.

“As chaves usadas na criptografia de chave pública possuem alguma estrutura matemática. Por exemplo, as chaves públicas utilizadas no sistema RSA são o produto de dois números primos. Assim, os sistemas de chave pública requerem comprimentos de chave mais longos do que os sistemas simétricos para um nível equivalente de segurança. 3.072 bits é o comprimento de chave sugerido para sistemas baseados em fatoração e logaritmos discretos inteiros que visam ter segurança equivalente a uma cifra simétrica de 128 bits.

Geração de chaves

Para evitar que uma chave seja adivinhada, as chaves precisam ser geradas aleatoriamente e conter entropia suficiente. O problema de como gerar chaves aleatórias com segurança é difícil e tem sido abordado de várias maneiras por vários sistemas criptográficos. Uma chave pode ser gerada diretamente usando a saída de um Random Bit Generator (RBG), um sistema que gera uma sequência de bits imprevisíveis e imparciais. Um RBG pode ser usado para produzir diretamente uma chave simétrica ou a saída aleatória para a geração de um par de chaves assimétrico. Alternativamente, uma chave também pode ser criada indiretamente durante uma transação de acordo de chave, a partir de outra chave ou de uma senha.

Alguns sistemas operacionais incluem ferramentas para "coletar" entropia devido ao tempo de operações imprevisíveis, como movimentos da cabeça da unidade de disco. Para a produção de pequenas quantidades de material de chaveamento, os dados comuns fornecem uma boa fonte de aleatoriedade de alta qualidade.

Esquema de estabelecimento

A segurança de uma chave depende de como ela é trocada entre as partes. É necessário estabelecer um canal de comunicação seguro para que pessoas de fora não possam obter a chave. Um esquema de estabelecimento de chaves (ou troca de chaves) é usado para transferir uma chave de criptografia entre entidades. O acordo de chaves e o transporte de chaves são os dois tipos de esquema de troca de chaves usados para serem trocados remotamente entre entidades. Num esquema de acordo de chave, uma chave secreta, que é usada entre o remetente e o destinatário para criptografar e descriptografar informações, é configurada para ser enviada indiretamente. Todas as partes trocam informações (o segredo compartilhado) que permitem que cada parte obtenha o material da chave secreta. Em um esquema de transporte de chaves, o material de codificação criptografado escolhido pelo remetente é transportado para o destinatário. Técnicas de chave simétrica ou de chave assimétrica podem ser usadas em ambos os esquemas.

A troca de chaves Diffie-Hellman e Rivest-Shamir-Adleman (RSA) são os dois algoritmos de troca de chaves mais usados. Em 1976, Whitfield Diffie e Martin Hellman construíram o algoritmo Diffie-Hellman, que foi o primeiro algoritmo de chave pública. O protocolo de troca de chaves Diffie-Hellman permite a troca de chaves através de um canal inseguro, gerando eletronicamente uma chave compartilhada entre duas partes. Por outro lado, RSA é uma forma de sistema de chave assimétrica que consiste em três etapas: geração de chave, criptografia e descriptografia.

A confirmação da chave oferece uma garantia entre o destinatário e o fornecedor da confirmação da chave de que os materiais de codificação compartilhados estão corretos e estabelecidos. O Instituto Nacional de Padrões e Tecnologia recomenda que a confirmação chave seja integrada num esquema de estabelecimento chave para validar as suas implementações.

Gestão

O gerenciamento de chaves diz respeito à geração, estabelecimento, armazenamento, uso e substituição de chaves criptográficas. Um sistema de gerenciamento de chaves (KMS) normalmente inclui três etapas de estabelecimento, armazenamento e uso de chaves. A base de segurança para geração, armazenamento, distribuição, uso e destruição de chaves depende de protocolos de gerenciamento de chaves bem-sucedidos.

Chave versus senha

Uma senha é uma série memorizada de caracteres, incluindo letras, dígitos e outros símbolos especiais, usados para verificar a identidade. Muitas vezes é produzido por um usuário humano ou por um software de gerenciamento de senhas para proteger informações pessoais e confidenciais ou gerar chaves criptográficas. As senhas geralmente são criadas para serem memorizadas pelos usuários e podem conter informações não aleatórias, como palavras de dicionário. Por outro lado, uma chave pode ajudar a fortalecer a proteção por senha, implementando um algoritmo criptográfico que é difícil de adivinhar ou substituir completamente a senha. Uma chave é gerada com base em dados aleatórios ou pseudoaleatórios e muitas vezes pode ser ilegível para humanos.

Uma senha é menos segura que uma chave criptográfica devido à sua baixa entropia, aleatoriedade e propriedades legíveis por humanos. No entanto, a senha pode ser o único dado secreto acessível ao algoritmo criptográfico para segurança da informação em algumas aplicações, como a segurança de informações em dispositivos de armazenamento. Assim, um algoritmo determinístico denominado função de derivação de chave (KDF) usa uma senha para gerar o material de chaveamento criptográfico seguro para compensar a fraqueza da senha. Vários métodos, como adição de sal ou alongamento de chave, podem ser usados na geração.

Contenido relacionado

MySQL

MySQL é um sistema de gerenciamento de banco de dados relacional de código aberto. Seu nome é uma combinação de "My", o nome da filha do...

Minix

MINIX é um sistema operacional semelhante ao Unix baseado em uma arquitetura de microkernel. Desde a versão 2.0, ele é compatível com Portable Operating...

Hackear

Hacking pode referir-se...
Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save