Criptografia Flashcards

1
Q

Conceito de criptografia

A

É uma ciência que tem como objetivo embaralhar e ofuscar as informações

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

criptoanálise

A

Ciência de quebrar códigos e decifrar mensagens. Então o simples fato de você buscar quebrar o código e não somente interpretar a informação já é uma forma de ataque

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Criptologia

A

Ciência que agrega a criptografia e a criptoanálise.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Cifra

A

Método de codificação de mensagens com vista à sua ocultação.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Métodos de cifragem

A
  • Substituição
    -Transposição
  • Esteganografia
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Método Substituição

A

A substituição é um método de codificação que busca alterar um caractere, símbolo ou dado em algum outro. É o método mais simples e fácil de executar. Porém, tende a ser o mais fácil de ser quebrado.
O principal exemplo desse método é a CIFRA DE CÉSAR, utilizado ainda no período do Império Romano. A sua rotina era definida de tal modo que cada letra da mensagem original era substituída pelo correspondente a três letras depois no alfabeto. Trata-se de um método conhecido como Cifra Monoalfabética.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Método da técnica de transposição

A

Já a transposição foca no simples embaralhamento das letras segundo alguma rotina. Veremos mais à frente que os algoritmos de criptografia geralmente utilizam esse recurso dividindo a mensagem original em blocos de tamanhos iguais. Um exemplo simples seria transpor cada sílaba de cada palavra (bloco) para esquerda, mantendo a rotação de cada bloco

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Métodos de decifragem

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Método de Esteganografia

A

Por último, temos a esteganografia que tem como objetivo esconder uma mensagem dentro de outra. Tipicamente, busca-se enviar uma mensagem de texto embutido no código de uma imagem. Não há muito mais o que falar por aqui, pois as bancas, quando cobra, vem com essa visão simplista e objetiva.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Ferramentas de criptografia

A

-bitlocker
- Veracypt
- Diskcryptor
- GNUpg
Apple disk image

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Cifragem de bloco

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Electronic Code Book - ECB

A

Método mais simples
Independencia dos blocos com a mesma chave
Técnica não randômica com a fragmentação da msg original

O ECB utilizada como tamanho padrão 64 bits por bloco. Não é considerado um mecanismo seguro devido à repetição dos dados e resultado de cifragem idêntico. Assim, blocos de entrada iguais, produzem blocos cifrados iguais, não escondendo, portanto, algum padrão dos dados. Por isso, é conhecido por ter transmissão segura de valores únicos.
Como vantagem podemos citar o fato de que o erro de um bit causará prejuízo apenas no bloco o qual ele pertence, devido à independência dos blocos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Cifragem de bloco - CBC

A

É o método mais utilizado.

Utiliza a operação XOR devidamente representada na imagem a seguir pelo círculo em volta do sinal de “+”.

A cifragem de cada bloco depende da cifragem de todos os blocos anteriores.

Percebam que o bloco cifrado é utilizado para “embaralhar” os blocos subsequentes.

Depende que os blocos cheguem de forma sequencial para que não haja problema na decifração,

perdendo no aspecto de desempenho quando comparado ao ECB.

Além disso, um erro em qualquer bit ou bloco, gera prejuízo em todos os blocos subsequentes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Cipher FeedBack block - CFB

A

Suporta qualquer tamanho de entrada, independentemente do bloco. Por esse motivo, se torna útil para aplicações que dependem de transmissão imediata.

Percebam que o bloco cifrado é utilizado para “embaralhar” os blocos subsequentes. Depende que os blocos cheguem de forma sequencial para que não haja problema na decifração, perdendo no aspecto de desempenho quando comparado ao ECB. Além disso, um erro em qualquer bit ou bloco, gera prejuízo em todos os blocos subsequentes.

A diferença básica para o CBC é o ponto de junção entre o texto cifrado anterior e o novo texto.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

OFB (Output Feedback block)

A

Destaco ainda a existência do modo OFB (Output Feedback), que segue o mesmo princípio do CFB, com a diferença de que a realimentação é feita pela saída do algoritmo e não das parcelas de texto cifrado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

CTR (Counter)

A

Um outro modo existente, é o CTR (Counter). O modelo é mais simplista em que cada bloco de texto em claro é submetido a um XOR com um contador criptográfico. O referido contador é incrementado para cada bloco subsequente para não ser o mesmo aplicado todas as vezes. Mais uma vez, é comparado ao OFB, porém, a realimentação é o contador e não a saída do algoritmo.
Uma vez que a realimentação não depende do algoritmo, tem-se um modo muito mais rápido em termos de desempenho.

15
Q

Cifragem de Fluxo – Stream Cipher

A

Diferentemente da cifra de bloco, a cifra de fluxo não necessita aguardar o processamento de toda a mensagem para se aplicar o algoritmo.

Como o próprio nome nos remete, a ideia é ser algo mais dinâmico e ágil de tal forma que, à medida que os dados vão chegando, vai se aplicando o algoritmo de forma contínua.

Podemos perceber claramente que este é um modelo amplamente difundido em cenário de transmissão de mídias, onde há um streaming de dados a serem criptografados.

O parâmetro para se aplicar a técnica pode ser bit a bit, byte a byte ou até em intervalos de tempo específicos.

16
Q

Apenas Texto Cifrado – CypherText-Only

A

Apenas Texto Cifrado – CypherText-Only: Nesse contexto, há conhecimento apenas do algoritmo de criptografia utilizado e do próprio texto cifrado;

17
Q

Texto Claro Conhecido – Known-plaintext

A

Texto Claro Conhecido – Known-plaintext: Além dos itens acima, o atacante tem a informação dos pares de texto claro de entrada e seu respectivo texto cifrado de saída;

18
Q

Texto Claro Escolhido – Choosen-Plaintext

A

Texto Claro Escolhido – Choosen-Plaintext: Agora o atacante não se restringe apenas a saber o par de entrada e saída, mas ele é capaz de manipular a entrada e avaliar a sua respectiva saída;

19
Q

Texto Cifrado Escolhido – Choosen-CypherText

A

Texto Cifrado Escolhido – Choosen-CypherText: Agora o atacante é capaz de fazer o caminho reverso, onde a partir de um texto cifrado escolhido, ele é capaz de verificar qual o texto em claro correspondendo;

20
Q

Texto Escolhido – Choosen-Text

A

Texto Escolhido – Choosen-Text – Há plena capacidade de manipulação dos textos de entrada e saída, e vice-versa;

21
Q

Métodos de decifragem

A

Recuperação direta
Pré computado
força bruta
dicionário
probabilístico

22
Q

Método de recuperação direta

A

Pessoal, como o próprio nome já diz, o intuito desse método é conseguir obter a senha de maneira direta, ou seja, a partir de algum ponto de armazenamento ou a chave utilizada como referência para armazenar o dado criptografado.

Então busca-se ter a ciência de algoritmos frágeis em sua implementação, regras de armazenamento simples com repositório conhecido, chaves padrões utilizadas para guardar as senhas criptografadas.

Um exemplo seria acessar, por exemplo, um repositório comum de alguma ferramenta utilizada para criação de sites. Nesse caso, o repositório é conhecido e armazena as senhas em texto claro. Ou seja, se for possível acessar o repositório, é possível obter a senha.

(Vazamento de dados)

23
Q

Método Pré-Computado

A

Neste método, busca-se criar uma lista, bem extensa por sinal (aumentando a chance de quebra), que correlaciona, para um determinado algoritmo, os textos em claro e os resultados gerados. Por isso o termo “pré-computado”.

Desse modo, a partir de um determinado resultado, é possível realizar pesquisa na tabela e verificar qual o texto em claro correspondente àquele texto criptografado.

Importante destacar que, quando maior o tamanho das chaves utilizadas, mais custoso é a criação e armazenamento da tabela pré-computadas. Assim, sistemas mais antigos, por utilizarem chaves com quantidade de bits baixa, ficam muito suscetíveis a esse tipo de ataque.

Há de se mencionar também que há serviços online que já disponibilizam aplicativos e bases pré-computadas para diversos tipos de algoritmos de criptografia e funções HASH, e, em muitos casos, tais bases são comercializadas, até porque o maior custo é de construção da base… posteriormente, basta realizar a comparação.

Para os novos algoritmos, com chaves maiores, usa-se o conceito de bases parciais. Ou seja, não há garantia de que o objeto será quebrado, uma vez que poderá não constar no rol da tabela. Isso acontece justamente porque para se criar uma tabela com todas as possibilidades possíveis dadas o tamanho da chave se torna inviável.

24
Q

Método da Força Bruta

A

De maneira descontraída, podemos dizer que a “ignorância” é o ponto forte desse método. Aqui, busca-se, a partir de um grande poder computacional, processar todas as possibilidades de senhas para determinado ambiente ou algoritmos.

Matematicamente, é um método infalível, pois, justamente por exaurir as possibilidades, em algum momento será encontrada a chave almejada.

Entretanto, no mundo prático, o negócio não é tão simples. Processas as informações e testar possibilidades demanda tempo, e o tanto de tempo depende do poder de processamento disponível para realizar a quebra.

Por esse motivo, a relação (tamanho da chave e tempo) para quebra é um fator crítico. Assim, o método em questão se torna extremamente eficiente para senhas curtas.

25
Q

Método de Dicionário

A

Sem dúvida, no contexto atual, é uma das técnicas mais utilizadas. O procedimento a ser realizado é muito semelhante com o método da Força Bruta. Entretanto, a invés de se testar todas as possibilidades possíveis dentro de uma quantidade limitada de caracteres, testa-se as senhas conforme uma lista pré-definida de “possíveis senhas” para o contexto em análise.

Desse modo, busca-se construir um dicionário que contemple senhas muito utilizadas por usuários como: 123456, 12345seis, senha, password, entre outros…

A grande vantagem do dicionário é que este pode ser construído a partir de diversas bases, inclusive a partir da integração destas. Uma ferramenta amplamente utilizada é o “John, the ripper”.

Entretanto, uma forma de se otimizar ainda mais o ataque, é utilizar dicionários personalizados para determinado ambiente ou vítima.

Assim, a partir da simples obtenção de dados pessoas, dados biográficos, engenharia social, entre outros, pode-se inserir possíveis senhas que contemplem datas específicas, nomes de parentes, combinações de datas e iniciais de nomes, entre muitos outros.

Para aumentar ainda mais a probabilidade de acerto, é interessante gerar variações dos textos criados na base, substituindo letras por números (como é o caso do “S” pelo “5”), além de inserir caracteres especiais e variações de letras maiúsculas e minúsculas.

Pode-se também se valer da inversão de letras ou sílabas, sempre na perspectiva de que o usuário tentará tornar uma senha comum para ele, em algo um pouco mais difícil de ser obtido indevidamente.

26
Q

Método Probabilístico

A

Este método pode ser derivado em duas subespécies, quais sejam: probabilidade condicional e gramática especializada.

A primeira contempla gerar vocábulos a partir de um idioma específico. Um exemplo clássico é o fato de que letras “h” têm a probabilidade de serem antecedidas por “c” ou “l”, formando “ch” ou “lh” do que qualquer outra letra. Portanto, os algoritmos estatísticos buscam correlacionar esses aspectos para obter resultados satisfatórios.

Teoricamente falando, tais probabilidades condicionais, considerando suas frequências de ocorrência, são conhecidas como cadeias de MARKOV.

No segundo caso, a gramática especializada, busca-se criar um padrão de comportamento das senhas geradas para determinada gramática. Assim, a partir de um dicionário bem-sucedido, pode-se extrapolar o perfil das senhas, como, por exemplo, a utilização de 5 letras, 3 números e 1 caractere especial.

A partir de tal conclusão, busca-se gerar novas senhas que terão maior probabilidade de ocorrência, sem deixar de lado o fator personalizado já mencionado no método do dicionário.