Whats new? | Login | Parceiros
Cadastre-se | Atendimento | RSS
+ .net:
artigos   |   vídeos   |    cursos   |    mais

Criptografia utilizando MD5 para aplicativos J2ME

Esta é uma dica de implementação da funcionalidade de criptografia MD5. Como não existe uma lib nativa para J2ME, utilizaremos uma classe disponível na web que realiza os mesmos processos do Método de Hash. A lib pode ser encontrada com exemplos e código fonte abertos em Móbile PitStop(http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html).

DAMáZIO PEREIRA TEXEIRA
Graduado em Sistemas de Informação pela UNIPAC. Pós-Graduado em Redes de Telecomunicações e Mestrando em Engenharia de Software pela UFMG. Analista de Sistemas da Digicade Tecnologia, desenvolvendo softwares de informação geográfica.


Ver space do autor


Estatísticas:
Visualizações:
3651
Favoritado:
 1 vez(es)

Serviços:



Esta é uma dica de implementação da funcionalidade de criptografia MD5. Como não existe uma lib nativa para J2ME, utilizaremos uma classe disponível na web que realiza os mesmos processos do Método de Hash. A lib pode ser encontrada com exemplos e código fonte abertos em Móbile PitStop.

 

 

/*

 * MD5Hash.java

 *

 * Created on 11 de Agosto de 2007, 14:13

 */

 

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

import com.twmacinta.util.MD5;

 

/**

 *

 * @author  damazio

 * @version

 */

public class MD5Hash extends MIDlet  implements CommandListener {

   

    private Display display;

    private Form FormTeste;

    private TextField textField1;

    private TextField textField2;

    private Command comandoDeSaida;

    private Command comandoConverte;

   

   

    public void startApp() {

          display.setCurrent(FormTeste);       

    }

   

    public void pauseApp() {

    }

   

    public void destroyApp(boolean unconditional) {

            display.setCurrent(null);

 

            // notificando o encerramento do aplicativo ao gerenciador do dispositivo

            notifyDestroyed();       

    }

   

    public MD5Hash() {

          display = Display.getDisplay(this);

          // quando iniciado o aplicativo, o construtor é invocado

          // neste ponto montamos o formulario criando 2 objetos de texto

          // a opção ANY diz que aceita qualquer caracter digitado

          textField1 = new TextField("Texto 1", null, 120, TextField.ANY);

          textField2 = new TextField("Texto 2", null, 120, TextField.ANY);

         

          // criando um objeto do tipo formulário. Este objeto é essencial para exibir os outros objetos texto

          FormTeste = new Form("Formulário Teste");

         

          // adicionando os objetos texto ao formulário

          FormTeste.append(textField1);

          FormTeste.append(textField2);

         

          // criando o comando de sair e converter. O comando converter irá invocar o conversor

          comandoDeSaida = new Command("Sair", Command.EXIT,1);

          comandoConverte = new Command("Converter", Command.OK,1);

         

          // adicionando os comando de sair e atualizar ao formulario

          FormTeste.addCommand(comandoConverte);

          FormTeste.addCommand(comandoDeSaida);

 

          // setando os comandos para serem reconhecidos ao manipular o teclado

          // é preciso que a assinatura da classe implemente o CommandListener

          FormTeste.setCommandListener(this);          

    }

   

    public void commandAction(Command comando, Displayable s)

    {

        // Caso algum comando seja acionado, verifica-se se foi o comando de saída

        if (comando == comandoDeSaida)

        {

            // invocando o método que encerra o aplicativo

            destroyApp(false);

        }

        if (comando == comandoConverte)

        {

            Conversor();

        }

     }   

   

    public void Conversor() {

        //converter o texto em bytes 

        byte plain[] = textField1.getString().getBytes();

 

        // criar um objeto MD5Hash passando a sequencia de bytes resultante do texto digitado

        MD5 md5 = new MD5(plain);

 

        // pegando o resultado hash gerado

        byte[] result = md5.doFinal();

 

        // convertendo o conjunto de bytes em hexadecimal e aplicando ao objeto texto do display

       textField2.setString(md5.toHex(result));

       

    }

}





Participe! Inclua um comentário
[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar ;-)



 
 

[Este post ainda não foi associado a uma sequência]


[Fechar]
Este post está disponível para assinantes da WebMobile ou para quem possui Créditos DevMedia.

  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 0,00 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ -1,00 (assinante) ou R$ -1,00 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ -1,00
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
DevMedia Group   www.devmedia.com.br   |   www.javafree.org   |   www.mrbool.com
2010 - Todos os Direitos Reservados a DevMedia Group - (21) 3382-5038