Sistema de Criptografia desenvolvido em Java para estudo, experimentação e implementação de conceitos de segurança da informação.
CriptKey é um projeto de criptografia desenvolvido em Java com foco no aprendizado de programação, manipulação de caracteres, estruturas de dados, algoritmos e conceitos relacionados à transformação de informações.
O projeto foi criado como um ambiente de estudo para desenvolver e testar algoritmos de criptografia e codificação utilizando recursos nativos da linguagem Java.
Nota: O CriptKey é um projeto educacional. Não deve ser considerado, em seu estado atual, uma implementação criptográfica adequada para proteger informações sensíveis em ambientes de produção.
Substitua o caminho abaixo pelo seu GIF de demonstração.
CriptKey v1.0.0 — Initial Release
Esta é a primeira versão oficial do CriptKey.
A versão 1.0.0 representa a primeira release do projeto, contendo a implementação inicial do sistema de criptografia e sua estrutura base em Java.
| Informação | Valor |
|---|---|
| Projeto | CriptKey |
| Versão | 1.0.0 |
| Release | Initial Release |
| Linguagem | Java |
| JDK | 21.0.11 |
| Licença | MIT |
| Plataforma principal | Windows |
| Linux | Suportado |
- Java JDK 21.0.11
- IntelliJ IDEA ou Visual Studio Code
- Git
- Terminal/PowerShell
- Sistema operacional Windows
- Linux: compatibilidade
O projeto utiliza Java 21, uma versão LTS do Java SE.
Antes de executar o projeto, certifique-se de possuir:
Java JDK 21.0.11
Verifique sua instalação:
java --versionO resultado esperado deve indicar uma versão Java 21.
Verifique:
git --versionVocê pode utilizar uma das seguintes opções:
IntelliJ IDEA
Visual Studio Code
Outras no seu Gosto ☕🖖😃
A IDE deve estar instalada e configurada para utilizar o JDK 21.
Clone o repositório:
git clone https://github.com/0xKxbyte/Sistema-Criptografia-Java.gitEntre no diretório:
cd Sistema-Criptografia-JavaAbra o projeto no IntelliJ IDEA ou Visual Studio Code.
Abra o projeto e localize a classe principal:
src/
└── Main.java
Execute a classe Main.
Caso o projeto esteja estruturado para compilação direta:
javac src/Main.javaDepois:
java -cp src MainA estrutura exata de execução pode mudar conforme a organização futura do projeto.
Sistema-Criptografia-Java/
│
├── .gitignore
├── README.md
│
├── assets/
│ └── criptkey-demo.gif
│
└── src/
└── Main.java
A pasta assets/ é destinada aos recursos visuais do projeto.
O arquivo:
assets/criptkey-demo.gif
é o único espaço reservado para a demonstração animada do CriptKey.
O projeto trabalha com a transformação de caracteres em valores numéricos.
Por exemplo, utilizando a posição de cada letra no alfabeto:
A → 1
B → 2
C → 3
D → 4
...
Z → 26
Uma entrada como:
mamaco
pode ser transformada em:
13 1 13 1 3 15
O objetivo inicial é compreender como uma informação pode ser percorrida, analisada e transformada por meio de algoritmos.
Entrada
│
▼
Texto fornecido pelo usuário
│
▼
Leitura dos caracteres
│
▼
Análise do alfabeto
│
▼
Conversão dos caracteres
│
▼
Resultado criptográfico
O CriptKey foi desenvolvido com os seguintes objetivos:
- Praticar Java.
- Trabalhar com arrays.
- Trabalhar com
chareString. - Utilizar estruturas de repetição.
- Utilizar estruturas condicionais.
- Trabalhar com
ListeArrayList. - Desenvolver algoritmos próprios.
- Estudar transformação de dados.
- Compreender conceitos básicos de criptografia.
- Evoluir posteriormente para algoritmos criptográficos mais robustos.
- Praticar Git e GitHub.
- Desenvolver organização de projetos Java.
- Entrada de texto
- Manipulação de caracteres
- Array de caracteres
- Busca no alfabeto
- Conversão de caracteres
- Estruturas de repetição
- Estruturas condicionais
- Integração inicial com Git
- Separar responsabilidades em classes
- Criar camada de criptografia
- Criar camada de descriptografia
- Melhorar tratamento de entrada
- Implementar validações
- Criar testes automatizados
- Melhorar arquitetura do projeto
- Implementar algoritmos adicionais
- Comparar diferentes métodos
- Trabalhar com chaves
- Estudar hashing
- Estudar criptografia simétrica
- Estudar criptografia assimétrica
- Estudar gerenciamento de chaves
- Interface de usuário
- Sistema de configuração
- Logs
- Testes de segurança
- Documentação técnica
- Melhorias de performance
- Empacotamento da aplicação
O CriptKey possui finalidade educacional e experimental.
Implementações próprias de criptografia não devem ser utilizadas para proteger senhas, dados financeiros, informações pessoais ou outros dados sensíveis sem uma análise de segurança adequada.
Para aplicações reais, recomenda-se utilizar algoritmos e bibliotecas criptográficas amplamente auditados e estabelecidos.
| Sistema | Status |
|---|---|
| Windows | Suportado |
| Linux | Suportado |
| macOS | Suportado |
A compatibilidade está diretamente relacionada à instalação e configuração correta do Java JDK 21 e das ferramentas utilizadas.
O projeto utiliza Git para controle de versão.
Fluxo básico:
git pull
git add .
git commit -m "Descrição da alteração"
git pushEste projeto é distribuído sob a Licença MIT.
A Licença MIT permite uso, cópia, modificação, distribuição e sublicenciamento do software, desde que o aviso de copyright e o texto da licença sejam mantidos.
Para consultar os termos completos:
CriptKey
Sistema de Criptografia em Java.
Desenvolvido com foco em aprendizado, experimentação, algoritmos e evolução contínua.
