[Resolvido] Assinatura - chave privada e pública

4 respostas
Fabiolafas

Olá pessoal,

Estou fazendo um sistema simples de sockets, utilizando a comunicação entre cliente e servidor, estou usando a biblioteca BasicTextEncryptor para fazer a criptografia dos dados...
Mas agora preciso de uma assinatura, um codigo com sistema de chave privada e pública...
Alguém poderia me dar uma ajudinha?

Abaixo a parte de criptografia que estou utilizando...

Obrigada!!!!

public class ClienteC {

    public static void main(String argv[]) throws Exception {
        String sentence;
        
        String modifiedSentence;

        BufferedReader inFromUser = new BufferedReader(new InputStreamReader(System.in));

        Socket clientSocket = new Socket("localhost", 6789);

        DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());

        BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
        
        System.out.print("Digite o nome: ");

        sentence = inFromUser.readLine();
                
        //instanciamos a classe BasicTextEncryptor para Criptografar
        BasicTextEncryptor bte = new BasicTextEncryptor(); 
        //inserimos uma chave para que somente o servidor que obtê-la consiga visualzar a mensagem
        bte.setPassword("Pagani");
        //criamos uma String que recebe a senha criptografada
        String sentenceCript = bte.encrypt(sentence);

        outToServer.writeBytes(sentenceCript + '\n');

        modifiedSentence = inFromServer.readLine();
        
        System.out.println("FROM SERVER: " + modifiedSentence);

        clientSocket.close();

4 Respostas

ViniGodoy

http://www.javamex.com/tutorials/cryptography/rsa_encryption.shtml
http://www-users.york.ac.uk/~mal503/lore/pkencryption.htm

Dica: Não use esse tipo de criptografia para tudo, pois além de lento, aumenta muito o tamanho dos dados.
Use apenas para negociar a chave que você utilizará num algorítmo simétrico (e, preferencialmente, use algo melhor que um BasicTextEncriptor).

Fabiolafas

Ótimos exemplos, porém pelo que vi são para criptografar arquivos e preciso para criptografar dados já inseridos em um ArrayList.

Acredito que seja bem mais simples…

Obrigada!!!

ViniGodoy

É só modificar os exemplos para usar um DataInputStream/DataOuputStream ao invés de um FileInputStream/FileOutputStream.

A

uff…o post é antigo, mas isso já foi resolvido antes com “https”…
poderia ter usado um get/post

Criado 18 de fevereiro de 2012
Ultima resposta 19 de fev. de 2012
Respostas 4
Participantes 3