Olá bem-vindos a mais uma aula no nosso sistema criptos Hoje vamos falar de introdução a criptoanálise O que vem a ser criptoanálise criptoanálise é a ciência que abrange os princípios métodos e Meios pra gente poder chegar a decriptação de um criptograma Então como a gente fazer Para decriptografia os possíveis objetivos decifrar um programa específico se o oponente estiver então interessado somente naquela mensagem específica decifrar a chave se o oponente estiver interessado em decifrar várias mensagens né porque assim a gente tem a possibilidade de est eh decifrando diferentes criptogramas que usam a mesma chave óbvio que
pra gente poder trabalhar com a criptoanálise a força do algoritmo de criptografia tem muito muita relação com isso então a criptografia convencional se baseia no pressuposto posto que seja impraticável decifrar uma mensagem conhecendo somente o criptograma e o algoritmo então a força está no algoritmo então só o fato de conhecer esse algoritmo e o texto cifrado não nos dá garantia de que eu consiga descobrir qual é o texto original Ah para isso a gente tem então o tempo médio de busca com relação ao tamanho da chave e ao número de Chaves que a gente a
gente tem em cada algoritmo então uma vez que o tamanho da minha chave é de 32 eh bits aí a gente tem o número da chave de 2 elevado a 32 que vai me dar 4,3 x 10 a 9 o tempo requerido então de um cripto Por microssegundo que dá uma relação aí de 35,8 minutos para poder para eu conseguir descifrar então quebrar essa chave já pro um tempo requerido aí de 10 elevado a sexta criptografias por microssegundo a gente teria 2,5 milissegundos O que é algo muito rápido já com 56 a gente aumenta isso
para algumas horas ou para alguns anos se o tempo requerido de processamento né for maior menor e para 128 a gente já teria aí Alguns anos né então vários anos pra gente conseguir quebrar essa chave baseado no tempo médio de busca exaustiva por uma chave pra gente poder quebrar essa chave encontrar essa chave se a gente tivesse 60 26 caracteres aí permutados a gente teria aí 26 fatorial que nos daria um tempo requerido aí de anos também para que a gente pudesse e quebrar essa chave o custo computacional para essa quebra né a gente tendo
aí eh o tamanho das chaves em bits né então 40 56 64 até 128 a gente tem que esse custo obviamente é maior à medida que eu tenho um número maior e de Chaves então se eu tiver um um custo se eu investir mais né para Chaves menores eu levo menos tempo para conseguir quebrar para Chaves maiores também eu levo menos tempo mas mesmo assim são anos né pra gente poder conseguir decifrar E essas chaves essa foi uma uma estimativa feita pelo Bruce Schneider lá em 19 96 mas que continua válida porque o que ele
diz é que o poder computacional dobra cada 1,5 anos e que o tempo de duração de universo é de 10 e e elevado a 10 né então aqui eu tenho 10 e elevado a 14 10 e elevado a 19 então isso aqui nos dá né um um que eu consigo ter então aí algumas Chaves mesmo que eu eleve e que eu Invista mais para quebrar eu tenho então aqui Chaves com 128 bits uma chave de 128 bits eu levaria o tempo de duração de do universo aí para poder quebrá-la né então é interessante que esse
custo computacional essa essa relação do custo computacional ainda é válida hoje né e tem bastante relação e é interessante ver essa relação custo tamanho de chave bom então se a gente olhar pela criptoanálise aí sempre é possível decifrar uma mensagem né É claro que olhando essa tabela a gente vê que é possível só é uma questão de tempo né então sempre é possível a gente decifrar uma mensagem só eh basta a gente tentar todas as chaves possíveis e é uma questão de tempo mas pode demorar mais do que o tempo de duração de universo como
a gente viu Chaves de 128 bits por exemplo e isso é algo que a gente não quer né a gente quer que isso termine antes que o universo acabe Então se a gente pensar no oponente né Eh no nosso oponente Então ele pode explorar vulnerabilidades do algoritmo então ele necessita de conhecimentos de criptoanálise para fazer isso ele pode estar à procura de pares mensagem criptograma Então ele pode tentar realizar ataques com força bruta ele pode gerar livro O código né Eh ele pode tentar obter a chave no momento em que ela é repassada paraa entidade
parceira né Principalmente em casos de algoritmos simétricos ele pode possuir um enorme poder computacional o que vai permitir que ele faça isso muito rapidamente exemplo aí né então suponha um sistema onde as informações sejam criptografadas por um algoritmo qualquer o usuário mantém em um determinado diretório os seguintes arquivos Arc 1 crypt Arc 2 script Arc 3 script e arc1 TXT o arquivo arc1 TXT não possui mensagem confidencial portanto está aberto pergunta Existe algum problema nesse caso né Desse arquivo um eh TXT estar aberto né claro que existe né então Eh existe porque é possível em
conhecendo eh o arquivo cifrado um e tendo o arquivo texto um é possível eu conseguir ver a relação entre o texto cifrado e o texto plano e conseguir então buscar meios de decifrar qual algoritmo foi utilizado e qual a chave então existe a possibilidade de um oponente decifrar um criptograma C ou descobrir a chave k se houver vulnerabilidade do algoritmo Então os algoritmos de criptografia e decriptografia forem vulneráveis o poder computacional então ele poder possui um menor poder computacional uma vez que ele tem isso ele consegue fazer isso muito rapidamente e o acesso à chave
então conseguir acessar o valor da chave nesses casos ele tem acesso a alguns elementos o que facilitem muito a criptoanálise né Essa criptoanálise como a gente diz ela é eh depende da força da criptografia Então ela pode ser incondicionalmente segura né então não importa quanto do criptograma esteja disponível não é possível inferir A mensagem original então isso acontece só quando a gente tem One Time pad né que são incondicionalmente Seguros lembre lembrem que o onetime pad é aquela aquele tipo de chave onde a gente usa uma única vez e joga fora e ela nunca mais
é utilizada Então se ela nunca mais for utilizada não tem como eu saber e comparar mais de um texto né com aquele algoritmo com aquela chave eh e pode ser computacionalmente inviável Ou seja eu tenho uma criptografia forte que é essa enp essa criptografia que a gente efetivamente usa então o custo para para quebra da chave né ou dessa criptografia deve ser muito maior do que o valor da informação é Claro porque senão não vale a pena né Eh e a demora da quebra deve ser muito maior que o tempo de vida útil da informação
então levar em conta a evolução do Poder computacional então se a a a demora para quebra for maior que o tempo de vida útil da informação não tem problema porque quando ele quebrar a informação ela já não tem mais validade quais são os tipos de ataque então que a gente teria né E que são de conhecimento dos cripto de cripto analistas né então o ataque somente texto cifrado então o conhecimento que o criptoanalista precisa é do algoritmo e do texto cifrado uma vez que ele tem o algoritmo de criptografia o texto cifrado ele consegue inferir
Quais qual é o algoritmo né de texto plano texto plano conhecido então ele precisa do algoritmo de criptografia texto cifrado e um ou mais pares de texto plano e cifrado né com isso ele também consegue fazer eh eh inferir informações aí a respeito texto cifrado escolhido então o algoritmo de criptografia mais o texto cifrado mas a escolha de um texto cifrado porque aí ele pode então nesse texto especificar caracteres para que ele possa vir a inferir da mesma forma texto plano escolhido então o algoritmo de criptografia o texto cifrado e o texto plano escolhido e
texto escolhido simplesmente Então eu tenho o algoritmo de criptografia o texto cifrado a escolha do texto plano e a escolha do texto cifrado então o conhecimento do criptoanalista passa a ser eh mais fácil então o tipo de de ataque somente criptograma então o criptograma possui como informação para decifrar eh o criptoanalista aliás possui como informação para decifrar um criptograma somente o próprio criptograma Então ele pode também ter conhecimento da ocorrência de um determinado padrão da mensagem então por exemplo arquivos post scpt sempre iniciam com porcent eh exclamação PS então lembre-se que o al itmo é
sempre conhecido então a gente conhece o algoritmo de criptografia e eu tenho conhecimento do texto cifrado do criptograma né mensagem conhecida o criptoanalista possui pares de mensagem e criptograma então a mensagem em texto plano e o criptograma mensagem escolhido o criptoanalista possui pares de mensagem criptograma porém foi o próprio criptoanalista Quem criou as mensagens então Possivelmente com determinados padrões aaa BBB zzz né essas mensagens escolhidas foram submetidas ao elemento que faz a criptografia utilizando a chave k que não é de seu conhecimento gerando assim o correspondente criptograma Então a partir daí ele tem não só
a mensagem escolhida mas também o criptograma texto texto cifrado escolhido né o criptoanalista possui pares mensagens criptograma porém neste caso criptoanalista foi quem criou o criptograma Possivelmente com determinados padrões também esse criptograma escolhido foi submetido ao decriptar utilizando a chave k que não é do conhecimento dele gerando assim a correspondente mensagem permitindo então que ele possa também fazer essa análise e mensagem e criptograma escolhido então o criptoanalista possui dois pares mensagem criptograma um par mensagem criptograma cujo texto plano foi criado criado foi submetido ao encriptador gerando criptograma associado e um par mensagem criptograma cujo criptograma
foi submetido ao decador gerando então a mensagem associada com isso ele tem criptograma e texto plano E aí eh fica fácil também para ele seria uma vez que o algoritmo de criptografia é conhecido óbvio que a gente sabe que os principais algoritmos são esses né a gente pode ver com um pouco mais de detalhe o des o tripl des o Idea né O rindel que é o AES né nós e o RC nós olhamos né Eh alguns dos algoritmos aí eh interessantes né pra gente e com isso a gente eh fecha a ideia de que
conhecendo o alor rito criptográfico de criptografia né que normalmente é conhecido né a gente tem ideia quanto mais conhecimento a gente tem a respeito das informações né Eh de dos tipos de arquivos que a gente tá usando Como é o formato desses arquivos Qual é o meio né pelo qual eu consigo identificar esses elementos e conhecendo o texto cifrado ou conhecendo o texto plano fica muito fácil pro criptoanalista decifrar ou descobrir qual é o padrão existente Quais são os padrões existentes E então tentar inferir ou decifrar a chave ou a própria forma aí de de
criptografar ou de como é que o texto é cifrada essa foi uma breve introdução à criptoanálise Esse é um um tema bastante extenso e que demanda uma série de de de conhecimentos aí a ideia era passar para vocês eh O que vem a ser né a criptoanálise ou seja essa ciência que estuda né meios de decifrar eh os os que criptogramas né E espero que tenha sido interessante existem exercícios aí que vão ficar para vocês fazerem e até mais