Whatcripto – Identificador e Decifrador de Cifras Criptográficas
O WhatCripto é uma ferramenta desenvolvida em Python cujo objetivo é descobrir e/ou decifrar vários tipos de cifras criptográficas que têm como base um “HashID”. Através dela, é possível decifrar Binários, Hexadecimal, Base64, Bacon, Caesar e Vigenère.
Para testar como funciona, vamos instalar esta ferramenta na distribuição Linux, Kali Linux.
1) No terminal, execute o comando:
git clone https://github.com/vandalvnl/whatcripto |
2) Em seguida, aceda à diretoria da ferramenta, e liste-a para confirmar que está tudo em conformidade.
cd whatcripto/ ls -l |
A cifra de César (Caesar cipher), também conhecida como cifra de troca, é uma das formas mais básicas e simples de criptografia. Essencialmente, cada letra é substituída por outra de acordo com a chave utilizada, podendo ser uma das 26 do abecedário. A chave utilizada é aquela que usamos para substituir a letra “A”, por exemplo, a palavra “PPLWARE” cifrada daria “MMITXOB” (shift up 3, ou seja, nesta caso andaríamos 3 posições para trás - podem experimentar aqui), cuja chave seria “E”. Esta criptografia é simétrica, ou seja, a chave utilizada para criptografar é a mesma para descriptografar.
3) Execute o Whatcripto e decifre algo encriptado pela cifra de César.
./whatcripto texto criptografado |
A cifragem Base64 utiliza caracteres US-ASCII (não acentuados). É comumente utilizado no envio de documentos binários (áudio, vídeo, etc.) por meios de transmissão que lidam apenas com texto, como por exemplo, anexos de um e-mail.
O conjunto de 64 caracteres é composto por letras maiúsculas (ABCDEFGHIJKLMNOPQRSTUVWXYZ), minúsculas (abcdefghijklmnopqrstuvwxyz), números (0123456789) e (+/). Eles são escolhidos de forma a não perturbarem os principais protocolos de serviço de mensagens como o SMTP (Simple Mail Transfer Protocol).
Esta codificação transforma grupos de 24 bits de dados (3x8=3 Bytes) em 4 carateres ASCII, 0-25 de A-Z, 26-51 de a-z, 52-61 de 0-9, 63 / e 64 +. A saída é representada por linhas até 76 caracteres. Caso exista um grupo com menos de 24 bits, adicionam-se bits 0 à direita. Além disso, os carateres de saída que não representam dados de entrada são representados por igual (=).
4) Decifre agora algo em Base64.
./whatcripto texto criptografado |
A cifra de Vigenère é idêntica à codificação César, com a diferença de que utiliza uma chave mais longa. A cifragem é realizada através de uma tabela com o abecedário escrito 26 vezes em linhas diferentes, e deslocado uma letra para a esquerda em relação ao anterior.
Olhe para a tabela como uma matriz. Cifre a palavra “PPLWARE” (procure as letras na vertical) com a chave “SAPOSAP” (na horizontal) e faça corresponder letra a letra.
- P P L W A R E - Vertical
- S A P O S A P - Horizontal
- H P A K S R T - Cifrado
5) Por último decifre algo baseado na cifra de Vigenère.
-k: Chave escolhida para a cifragem, que neste exemplo foi apenas a letra “P”
./whatcripto -k “chave” texto criptografado |
Existem muitas outras técnicas para cifrar e decifrar texto, estas foram talvez as mais simples e comuns. Conheça um pouco sobre a história da criptografia e também a diferença entre criptografia simétrica e assimétrica.
Este artigo tem mais de um ano
Bom artigo (para não fugir à regra).
O username do github é vandalvnl e não vandavnl. Continuação de bom trabalho.
Obrigado José. Já alterámos.
PP
Off tópico: considerariam um artigo sobre o Debian 9 , que foi lançado há poucas horas, e como um iniciante pode se beneficiar com ele? Abraço
Boas Roger
Estamos a tratar disso. Abr
PP
Explorem… https://www.cryptool.org/en/
Gostei do artigo, manda vir mais da area de segurança
Dá para Mac?
Apesar de não fazer o brute force ao texto cifrado, existe uma app para android que consegues encriptar e desencriptar em muitas mais cifras do que este SW.
Ora vejam aqui: https://play.google.com/store/apps/details?id=eisbehr.gcc
Uma pequena lista de capacidades:
ADFG(V)X (en-/decrypt)
ASCII Converter
Bacon (en-/decode)
Base16, 32, 64, 85 (en-/decode)
Brainfuck/Ook
Caesar (en-/decrypt)
Deadfish (en-/decrypt)
DNA
Enigma
– SHA-1
– SHA 160, 254, 384, 512
– SHA-3 224, 254, 384, 512
– Tiger
– Whirlpool
Kenny’s Code (en-/decrypt)
Morse Code Translator
RSA – En-/Decrypt
Tapir (en-/decrypt)
Vigenère (en-/decrypt)
Zuse Z22/CCIT2 (en-/decrypt)
Está bem abelha..
Isso qualquer site da net faz, se colocares um texto/expressão e cifrares lá, ele também decifra porque ao cifrar criou o par: plaintext – cifra; Se fores a um site A cifrar um texto, copiares o resultado cifrado para um site B e tentares decifrar, ficas a ver navios, a menos que seja alguma palavra básica que já tenham colocado lá anteriormente!
E se a seguir colocares nesse site B, o texto e mandares cifrar e de seguida pedires para decifrar o texto cifrado, ele já te dá a resposta, sabes porquê? Porque “aprendeu” guardou o mapa do que tu lá meteste, é assim que funcionam todos esses sites e aplicações, sabes porquê? Porque utilizam mecanismos de hash. Hash também é uma cifra mas é one way.
Tens o caso do md5, que também era…. hash one way; mas foram descobertas colisões e deixou de ser, ou seja neste momento com um texto cifrado consegues obter 4 ou 5 textos originais possíveis.. E esta agora, estás confuso?
Resumindo essa app não decifra nada, vai pesquisar na rainbow table se existe alguma correspondência, e em caso afirmativo mostra-te essa combinação.
É muito diferente.
Boas, vou colocar um problema.
Em 2015 comprei um software para adicionar pontos de interesse nos mapas de gps da BMW. Em tempo essas actualizações permitiram que muitos outros condutores, pudessem ter nos mapas dos seus carros alertas para os radares.
Este ano formatei o meu PC, e a chave de activação deixou de ser a mesma. Já enviei n mails para lá a pedir a nova chave e nada. Aliás no website deles (PIMP-MY-NAV) na secção purchase, diz que o software brevemente será colocado como freeware, mas o brevemente já vai há mais de meio ano ou mais…
Será que alguém me pode ajudar nisto?
Na altura a minha chave de registo para: D5114FE5D7A1F6868AE057B606AF7E0E08720A9F era: 562E52A640B92BEAB3DA476D0A58334C7BF8ECDC86BAF048E4CF94A2A2B438AA7B7538ACDA
EE09C08DBC33C499BB7FC2F8EC48B6A73782403391C776A684637764F6B5A798C14D631B5C50EE
090DC1ED3A78B361F341AE516CD512A337BD07E7A9BA4C4C8F78E989971781B22B4607CF23496
A72ABBF3D54329E4E346F161665.
Agora preciso para isto: C12D85BB02747BB3C41A1B4F4E60B92F04F53949
Peço a vossa atenção que eu não quero nenhum crack nem nenhuma forma de pirataria, caso contrário, nunca teria comprado no passado.
Obrigado.
Cifras criptográficas!? Faz-me lembrar a viúva do falecido cuja hepatite no fígado foi uma surpresa inesperada.
Zé, que tipo de cifras conheces? Ou quantas já agora.
Para começar a conversa, em bom Português, “encriptar” é meter numa cripta. Recentemente uns indígenas da informática acharam que “encriptar” é a tradução do Inglês “encrypt”, mas não é, nem nunca foi. A tradução de “encrypt” é “cifrar” e a de “decrypt” é “decifrar”.
Mas mesmo que se admita o anglicismo, uma “cifra criptográfica” é uma redundância. Assim como é redundante escrever “decifrador de cifras” ou “subir para cima” ou “sair para fora”. Um melhor título para o seu texto seria “Whatcripto – Identificador de Cifras e Decifrador”.
Infelizmente, às vezes adotam-se termos mesmo havendo boas traduções em Português.
Não disseste nada, mesmo nada. Primeiro porque não respondeste à minha questão que desmontou a tua crítica, porque desconhecias que existiam vários tipos de cifras, achavas que era uma redundância, mas estavas errado, mas é normal errar, o que não é normal é vir com certo paleio do tipo “Faz-me lembrar a viúva do falecido cuja hepatite no fígado foi uma surpresa inesperada.” enfim, se não sabias, dizias, que não á problemas, ninguém sabe tudo.
Agora vens de novo rezar outro terço mas agora com o encriptar. Por muito que se possa usar e como explica o FLiP este é um verbo que se aplica a título de um termo informático… mas nós preferimos usar cifrar, que existe nativamente na nossa língua materna. Portanto, não gastes o latim sobre algo que nem tu estás a perceber bem. Se algo quiseres saber, por exemplo quantos tipos de cifras existem, pergunta, visto que desconheces.