Um MVP para criptografia e descriptografia de informações sensiveis rapidamente utilizando Java, RSA e 3DES.
src/main/java
├── application # Controla todas as entradas e saidas de dados recebidas pela aplicação através de uma classe FACADE.
├── infrastructure # Mantém todas configurações relacionadas ao tamanho máximo do output gerado na criptografia e criação das Keys.
├── service # Mantém as nossas implementações e regras relacionadas a criptografia e descriptografia.
Gradle >= 8.4 && Java >= 17 instalado && a IDE de sua preferência.
não é necessario nenhum servidor Web, você pode testar a aplicação utilizando a classe LocalTest.java
Implementação das features de criptografia e descriptografia, documentação de apoio.
Inclusão da classe LocalTest para facilitação de testes e debugs, criação da documentação.
Refatoração da CI, melhorias de código e configuração para publicação do artefato no nexus.
Ajuste em documentação e testes unitarios
Ajuste em construtor da classe CryptographyFacade e inclusão de testes unitarios
- Aplicações Gradle, adicione o seguinte código ao seu arquivo build.gradle em repositories:
maven {
url 'http://localhost:8081/repository/maven-releases/'
allowInsecureProtocol = true
}
- Aplicações Gradle, adicione o seguinte código ao seu arquivo build.gradle em dependencies:
implementation 'com.xpe.projetoaplicado:crypto-library:1.0.0'
- Aplicações Maven, adicione o seguinte código ao seu arquivo pom.xml em repositories:
<repository>
<id>nexus-repository</id>
<url>http://localhost:8081/repository/maven-releases/</url>
</repository>
- Aplicações Maven, adicione o seguinte código ao seu arquivo pom.xml em dependencies:
<dependency>
<groupId>com.xpe.projetoaplicado</groupId>
<artifactId>crypto-library</artifactId>
<version>1.0.0</version>
</dependency>
- Para criptografar informações, faça a chamada da classe CryptographyFacade e utilize o método encrypt:
CryptographyFacade cryptographyFacade = new CryptographyFacade();
String encryptedText = cryptographyFacade.encrypt("your data");
- Para descriptografar informações, faça a chamada da classe CryptographyFacade e utilize o método decrypt informando o resultado obtido anteriormente ao realizar a criptografia.
CryptographyFacade cryptographyFacade = new CryptographyFacade();
String decryptedText = cryptographyFacade.decrypt("encryptedText");
- Este erro ocorreu pois a criptografia falhou por algum erro interno, é aconselhavel que realize novamente a criptografia para obter o resultado correto.
- Este erro pode ter ocorrido devido algum bug em nossa biblioteca, fique de olho nas Releases para utilizar sempre a versão mas estavel.