- 1. Como a Cifra de Cesar Funciona?
- 2. O Usuário
- 3. O Projeto
- 4. Interface
- 5. Objetivos de aprendizagem
- 6. Checklist
Cifrar significa codificar. A cifra de César é um dos primeiros tipos de criptografias conhecidas na história. A cifra de César é uma das técnicas mais simples de cifrar uma mensagem. É um tipo de cifra por substituição, em que cada letra do texto original é substituida por outra que se encontra há um número fixo de posições (deslocamento) mais a frente do mesmo alfabeto.
Cada dia mais a preocupação com o meio-ambiente aumenta e o ecossistema marinho é importante para sobrevivência da humanidade na Terra. Os oceanos produzem metade do nosso oxigênio, reduzem as condições climáticas, absorvem grande quantidade de gás carbônico e fornecem alimentos a milhões de pessoas.
Mas não é só a poluição e contaminação que influenciam negativamente nesse ecossistema, a pesca sem controle, o turismo desordenado, casas e hoteis sendo construidos em lugares irregulares, tudo resultado de uma educação ambiental defasada, também são prejudiciais.
Para essa preservação acontecer existem organizações não governamentais que estão dispostas a realizar esse trabalho. Como muitas vezes essas ONGs lutam contra governos e empresas poderosas elas necessitam um canal seguro para se comunicar, essa aplicação foi criada para esse fim.
A aplicação permite cifrar e decifrar letras maíusculas, minusculas, símbolos, espaços a partir do texto e do offset, positivo ou negativo, inserido pelo usuário.
O usuário pode escolher entre cifrar ou decifrar uma mensagem, inserir a mensagem que será cifrada/decifrada, inserir o offset ou chave de deslocamento e receber a mensagem cifrada/decifrada
Construir uma aplicação web que interaja com o usuário através do navegador e a lógica para essa interação com HMTL, CSS e JavaScript.
Essa seção é para te ajudar a ter um controle do que você precisa completar.
- [✔]
README.md
adicionar informação sobre o processo e decisões do desenho. - [✔]
README.md
explicar claramente quem são os usuários e as suas relações com o produto. - [✔]
README.md
explicar claramente como o produto soluciona os problemas/necessidades dos usuários. - [✔] Usar VanillaJS.
- [✔] Não usar
this
. - [✔] Implementar
cipher.encode
. - [✔] Implementar
cipher.decode
. - [✔] Passar o linter com a configuração definida.
- [✔] Passar as provas unitárias.
- [✔] Testes unitários cubrindo 70% dos statements, functions e lines, e no mínimo 50% das branches.
- [✔] Cifrar/decifrar minúsculas.
- [✔] Cifrar/decifrar outros caractéres (espações, pontuação,
ç
,á
, ...). - [✔] Permitir usar
offset
negativo.