Pitch: Minha contribuição para esse mundo: Segurança ponta a ponta de verdade (Pelo menos em trocas de mensagem de texto)
Porquê estou publicando isso?
Olá meu nome é Augusto e atualmente vejo pouca divulgação científica entre os devs aqui na minha região e também muitos trabalhos de conclusão de curso sendo feito com temas irrelevantes somente para a obtenção do diploma, então venho apresentar um pouco do meu TCC para vocês para que assim, talvez, eu possa estar ajudando vocês e vocês me ajudando…
O problema 🧑💻
A segurança e privacidade do usuário na internet é um tópico cada vez mais importante nos dias atuais, tendo até tópicos e issues sendo criado nesse projeto…
Justamente pelo grande aumento do uso de computadores com internet e muitos serviços sendo disponibilizados online, como exemplo os comunicadores instantâneos: whatsapp, telegram, messenger…
Porém com o aumento do uso de internet também tem aumentado o número de computadores infectados por malwares, tendo um estudo da Kingsoft de 2016 mostrando que em média 2-5 milhões de computadores são infectados por dia.
Atualmente sabemos que esses comunicadores instantâneos utilizam criptografia entre um dispositivo e outro, porém não podem garantir que o dispositivo que recebeu ou enviou a mensagem já não esteja infectado por um malware…
Podendo esse malware saber a mensagem que o usuário vai enviar antes mesmo dele pressionar ENTER com a utilização de um keylogger ou até mesmo gravando a tela do usuário com “screenlogger”.
A Proposta 🗿🍷👉 ⌨️ 👉 🤖 👉 💻
Minha proposta busca uma solução para o problema citado acima, podemos com a utilização de um arduino conectado ao computador criar um middleware entre um teclado externo e o computador para realizar a criptografia de mensagens que precisam realmente ser seguras e privadas...
O arduino receberia a entrada de dados do usuário através do teclado e realizaria a criptografia da mensagem antes mesmo que ela fosse realmente digitada no computador, podendo ele visualizar e alterar a mensagem original através de um display também conectado ao arduino.
Mas e a outra ponta?
A outra ponta que receberia essa mensagem também teria que ter um mesmo dispositivo, porém no caso de quem recebe a mensagem existiria um programa em que você cola a mensagem recebida e envia para o arduino para que o mesmo realize a descriptografia da mensagem e mostre a mensagem original também através do display.
Desenvolvimento da solução
Versão 1
Já existe uma versão 1 funcional do projeto que está usando:
- Arduino UNO,
- Display lcd IC2
- Cabo otg
- Criptografia rot47
- Linguagem Python e Arduino
Essa versão do projeto era a minha POC e usei somente esses componentes e a linguagem Python e Arduino e ela "resolveu" o problema com dos keylogger e screenlogger.
Que você pode acessar e conferir aqui: Repositório no Gitub, Não esquece de me seguir e deixar a star no repo para apoiar
Versão 2
Atualmente estou desenvolvendo a versão 2 e de apresentação para o meu tcc utilizando:
- Arduino UNO
- USB host shield
- Display lcd IC2
- Criptografia AES
- linguagem Python e Arduino
Utilizando o USB host shield quero trazer mais praticidade e com a AES uma criptografia de uso real (Mesmo sabendo de sua defasagem atual)
Que você pode também pode acessar e conferir aqui: Repositório no Gitub, novamente não esquece de me seguir e deixar a star no repo para apoiar
Demostração
Já de antemão desculpem a qualidade mas segue um vídeo demonstração da POC no youtube
Vídeo demonstração no youtube