symmetric and asymmetric encryption algorithms

Description

70-483 C# Flashcards on symmetric and asymmetric encryption algorithms, created by Thiago Russo on 21/05/2017.
Thiago Russo
Flashcards by Thiago Russo, updated more than 1 year ago
Thiago Russo
Created by Thiago Russo almost 7 years ago
2
0

Resource summary

Question Answer
o que é criptografia? Com criptografia, vc pega um pedaço de texto simples (texto regular q é humanamente legível) e, em seguida, executa um algoritmo sobre ele. Os dados resultantes parecem uma sequência de bytes aleatórios, mtas vezes chamado de texto cifrado (ciphertext). Descriptografia é o processo oposto: A sequência de bytes é transformada nos dados de texto simples originais.
manter o algoritmo de criptografia privado/secreto é uma boa prática? Na criptografia, vc pode manter seu algoritmo secreto ou pode usar um algoritmo público e manter a chave secreta. Mantendo o seu algoritmo secreto é mtas vezes impraticável, pq vc precisaria mudar o algoritmo toda vez que alguém o descobre. Em vez disso, é recomendado q uma chave seja mantida em segredo.
o que é uma chave em um algoritmo de criptografia? Uma chave é utilizada por um algoritmo para controlar o processo de encriptação. Uma chave de criptografia é o mesmo que uma senha normal: Não deve ser fácil de adivinhar a chave que você escolheu.
vantagens de tornar um algoritmo público - trabalhar com chaves. Ao invés de mudar o algorítimo toda vez que é quebrado, mudar a chave e mantê-la em segredo. - outra vantagem é q qdo o algoritmo é público ele é amplamente testado para que a comunidade tente quebrá-lo, achar falhas, etc.
algoritmo simétrico Como o algoritmo é público, a chave é a coisa que deve ser mantida privada. A diferença nas estratégias de criptografia simétrica e assimétrica reside na forma como esta chave é usada. Um algoritmo simétrico usa uma única chave para criptografar e descriptografar os dados. Vc precisa passar sua chave original para o receptor para que ele possa descriptografar os dados. E isto leva automaticamente para o problema de troca de chaves de forma segura. Isto é onde um algoritmo assimétrico pode ser usado.
algoritmo assimétrico Um algoritmo assimétrico utiliza duas chaves diferentes que são matematicamente relacionadas uma com a outra. Embora elas estejam relacionadas, é inviável determinar se vc sabe uma, conhecerá a outra. Uma chave é completamente pública e pode ser lida e utilizada por todos. A outra parte é privada e nunca devem ser compartilhada com outra pessoa. Ao criptografar algo com a chave pública, pode ser decifrada usando a chave privada, e vice-versa
criptografia simétrica x assimétrica desempenho e tamanho da menagem Outra diferença entre criptografia simétrica e assimétrica tem a ver com desempenho e tamanho da mensagem. A criptografia simétrica é + rápida do q a criptografia assimétrica e é bem adequado para conjuntos de dados maiores. A criptografia assimétrica não é otimizado para criptografar mensagens longas, mas pode ser muito útil para descriptografar uma chave pequena. A combinação destas duas técnicas pode ajudá-lo a transmitir grandes quantidades de dados de forma criptografada.
exemplo de transmissão de msgs entre Bob e Alice 1. Alice e Bob geram, cada um, seu próprio par de chaves assimétricas. 2. Eles enviam um ao outro sua chave pública e mantém sua chave privada em segredo. 3. Cada um gera uma chave simétrica e as criptogravam com a chave pública da outra pessoa (para possa ser descriptografada pela chave privada do outro). 4. Eles enviam a sua chave simétrica criptografada entre si e descriptografam com a sua própria chave privada. 5. Para enviar uma mensagem confidencial, eles usam a chave simétrica da outra pessoa para criptografar sua mensagem. 6. A pessoa que recebe descodifica a msg com sua própria chave simétrica. Como você pode ver, a criptografia assimétrica é usada para criptografar uma chave simétrica. Depois a chave é transmitida com segurança, Bob e Alice podem usá-las para enviar mensagens maiores um ao outro.
Initialization Vector - IV Após a utilização de uma chave, outro conceito importante na criptografia é o vetor de inicialização (initialization vector - IV). Um IV é usado para adicionar um pouco de aleatoriedade para a criptografia de dados. Se criptografar o mesmo texto sempre fornecerá os mesmos resultados, esta poderia ser utilizada por um potencial atacante para quebrar a criptografia. O IV garante os mesmos resultados de dados em uma mensagem criptografada diferente a cada vez.
Show full summary Hide full summary

Similar

Porova teórica C# mod l
Cursos Professor Jonatã
Linguagem C#
Alex Araujo Furado
Prova teorica C# mo ll
Cursos Professor Jonatã
Entity framework - code first
José Fernandes
Flashcard Módulo 1 - XAMARIN LATINO AMERICA
Marcone Barbosa
Entity framework
José Fernandes
C# and ASP.NET
Kalebi Fiorentini
Linguagens de programação
Rodrigo Barbosa7452
Conceitos do ASP.NET CORE (Incompleto)
José Fernandes Rezende Neto
Dates and times .NET
Felipe Couto Viola
Fluxo Game UC 8
Lucas Coluzzo