<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Compact MD5 class library for J2ME / JavaME app</title>
	<atom:link href="http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/feed" rel="self" type="application/rss+xml" />
	<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html</link>
	<description>Mobile Phone, PDA and JavaME (J2ME) Programming Blog</description>
	<lastBuildDate>Wed, 28 Jul 2010 16:19:51 -0700</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: aazd</title>
		<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/comment-page-1#comment-14699</link>
		<dc:creator>aazd</dc:creator>
		<pubDate>Mon, 22 Jun 2009 18:38:44 +0000</pubDate>
		<guid isPermaLink="false">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html#comment-14699</guid>
		<description>is there any class like this for rsa? i found it easier to use than bouncy castle</description>
		<content:encoded><![CDATA[<p>is there any class like this for rsa? i found it easier to use than bouncy castle</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Herry</title>
		<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/comment-page-1#comment-14599</link>
		<dc:creator>Herry</dc:creator>
		<pubDate>Fri, 06 Mar 2009 03:45:22 +0000</pubDate>
		<guid isPermaLink="false">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html#comment-14599</guid>
		<description>Can you send the &quot;MD5 class&quot; and &quot;MD5test.zip&quot;
for me??</description>
		<content:encoded><![CDATA[<p>Can you send the &#8220;MD5 class&#8221; and &#8220;MD5test.zip&#8221;<br />
for me??</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: developer</title>
		<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/comment-page-1#comment-9266</link>
		<dc:creator>developer</dc:creator>
		<pubDate>Thu, 12 Jun 2008 15:37:20 +0000</pubDate>
		<guid isPermaLink="false">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html#comment-9266</guid>
		<description>Hi.
I dont know why, but i cant open your example file with netbeans, can you give me any tip how to do it?
thanks</description>
		<content:encoded><![CDATA[<p>Hi.<br />
I dont know why, but i cant open your example file with netbeans, can you give me any tip how to do it?<br />
thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mypapit</title>
		<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/comment-page-1#comment-7320</link>
		<dc:creator>mypapit</dc:creator>
		<pubDate>Sat, 29 Dec 2007 16:54:18 +0000</pubDate>
		<guid isPermaLink="false">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html#comment-7320</guid>
		<description>depends on how do you validate it against</description>
		<content:encoded><![CDATA[<p>depends on how do you validate it against</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dd</title>
		<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/comment-page-1#comment-7307</link>
		<dc:creator>dd</dc:creator>
		<pubDate>Sat, 29 Dec 2007 12:22:41 +0000</pubDate>
		<guid isPermaLink="false">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html#comment-7307</guid>
		<description>not working propertly ;(

echo &quot;o&quot; &#124; md5sum
e73af36376314c7c0022cb1d204f76b3
is different to this program</description>
		<content:encoded><![CDATA[<p>not working propertly ;(</p>
<p>echo &#8220;o&#8221; | md5sum<br />
e73af36376314c7c0022cb1d204f76b3<br />
is different to this program</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dd</title>
		<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/comment-page-1#comment-7262</link>
		<dc:creator>dd</dc:creator>
		<pubDate>Fri, 28 Dec 2007 19:45:44 +0000</pubDate>
		<guid isPermaLink="false">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html#comment-7262</guid>
		<description>http://mobile.mypapit.net/j/MD5test.zip
not exist ;(

please send me this code. 
ZnJvbmRhMUB0bGVuLnBs</description>
		<content:encoded><![CDATA[<p><a href="http://mobile.mypapit.net/j/MD5test.zip" rel="nofollow">http://mobile.mypapit.net/j/MD5test.zip</a><br />
not exist ;(</p>
<p>please send me this code.<br />
ZnJvbmRhMUB0bGVuLnBs</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: voyager</title>
		<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/comment-page-1#comment-4554</link>
		<dc:creator>voyager</dc:creator>
		<pubDate>Thu, 15 Nov 2007 22:06:00 +0000</pubDate>
		<guid isPermaLink="false">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html#comment-4554</guid>
		<description>just searching for MD5 in J2ME and found Timothy W Macinta library and then this site with a good example of how to use it.

great!!
thank you!!!!!!!!!!!!!!</description>
		<content:encoded><![CDATA[<p>just searching for MD5 in J2ME and found Timothy W Macinta library and then this site with a good example of how to use it.</p>
<p>great!!<br />
thank you!!!!!!!!!!!!!!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Devmedia - WebMobile - Criptografia utilizando MD5 para aplicativos J2ME</title>
		<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/comment-page-1#comment-1956</link>
		<dc:creator>Devmedia - WebMobile - Criptografia utilizando MD5 para aplicativos J2ME</dc:creator>
		<pubDate>Sun, 16 Sep 2007 22:53:32 +0000</pubDate>
		<guid isPermaLink="false">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html#comment-1956</guid>
		<description>&lt;!--%kramer-ref-pre%--&gt;[...] 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. &#160; &#160; /* &#160;* MD5Hash.java &#160;* &#160;* Created on 11 de Agosto de 2007, 14:13 &#160;*/ &#160; import javax.microedition.midlet.*; import javax.microedition.lcdui.*; import com.twmacinta.util.MD5; &#160; /** &#160;* &#160;* @author&#160; damazio &#160;* @version &#160;*/ public class MD5Hash extends MIDlet&#160; implements CommandListener { &#160;&#160;&#160;  &#160;&#160;&#160; private Display display; &#160;&#160;&#160; private Form FormTeste; &#160;&#160;&#160; private TextField textField1; &#160;&#160;&#160; private TextField textField2; &#160;&#160;&#160; private Command comandoDeSaida; &#160;&#160;&#160; private Command comandoConverte; &#160;&#160;&#160;  &#160;&#160;&#160;  &#160;&#160;&#160; public void startApp() { &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; display.setCurrent(FormTeste);&#160;&#160;&#160;&#160;&#160;&#160;&#160;  &#160;&#160;&#160; } &#160;&#160;&#160;  &#160;&#160;&#160; public void pauseApp() { &#160;&#160;&#160; } &#160;&#160;&#160;  &#160;&#160;&#160; public void destroyApp(boolean unconditional) { &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; display.setCurrent(null); &#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // notificando o encerramento do aplicativo ao gerenciador do dispositivo &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; notifyDestroyed();&#160;&#160;&#160;&#160;&#160;&#160;&#160;  &#160;&#160;&#160; } &#160;&#160;&#160;  &#160;&#160;&#160; public MD5Hash() { &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; display = Display.getDisplay(this); &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // quando iniciado o aplicativo, o construtor é invocado &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // neste ponto montamos o formulario criando 2 objetos de texto &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // a opção ANY diz que aceita qualquer caracter digitado &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; textField1 = new TextField(&quot;Texto 1&quot;, null, 120, TextField.ANY); &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; textField2 = new TextField(&quot;Texto 2&quot;, null, 120, TextField.ANY); &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;  &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // criando um objeto do tipo formulário. Este objeto é essencial para exibir os outros objetos texto &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; FormTeste = new Form(&quot;Formulário Teste&quot;); &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;  &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // adicionando os objetos texto ao formulário &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; FormTeste.append(textField1); &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; FormTeste.append(textField2); &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;  &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // criando o comando de sair e converter. O comando converter irá invocar o conversor &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; comandoDeSaida = new Command(&quot;Sair&quot;, Command.EXIT,1); &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; comandoConverte = new Command(&quot;Converter&quot;, Command.OK,1); &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;  &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // adicionando os comando de sair e atualizar ao formulario &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; FormTeste.addCommand(comandoConverte); &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; FormTeste.addCommand(comandoDeSaida); &#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // setando os comandos para serem reconhecidos ao manipular o teclado &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // é preciso que a assinatura da classe implemente o CommandListener &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; FormTeste.setCommandListener(this);&#160;&#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160; &#160;&#160;&#160; } &#160;&#160;&#160;  &#160;&#160;&#160; public void commandAction(Command comando, Displayable s) &#160;&#160;&#160; { &#160;&#160;&#160;&#160;&#160;&#160;&#160; // Caso algum comando seja acionado, verifica-se se foi o comando de saída &#160;&#160;&#160;&#160;&#160;&#160;&#160; if (comando == comandoDeSaida) &#160;&#160;&#160;&#160;&#160;&#160;&#160; { &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // invocando o método que encerra o aplicativo &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; destroyApp(false); &#160;&#160;&#160;&#160;&#160;&#160;&#160; } &#160;&#160;&#160;&#160;&#160;&#160;&#160; if (comando == comandoConverte) &#160;&#160;&#160;&#160;&#160;&#160;&#160; { &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Conversor(); &#160;&#160;&#160;&#160;&#160;&#160;&#160; } &#160;&#160;&#160;&#160; }&#160;&#160;&#160;  &#160;&#160;&#160;  &#160;&#160;&#160; public void Conversor() { &#160;&#160;&#160;&#160;&#160;&#160;&#160; //converter o texto em bytes&#160;  &#160;&#160;&#160;&#160;&#160;&#160;&#160; byte plain[] = textField1.getString().getBytes();  &#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160; // criar um objeto MD5Hash passando a sequencia de bytes resultante do texto digitado &#160;&#160;&#160;&#160;&#160;&#160;&#160; MD5 md5 = new MD5(plain);  &#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160; // pegando o resultado hash gerado  &#160;&#160;&#160;&#160;&#160;&#160;&#160; byte[] result = md5.doFinal();  &#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160; // convertendo o conjunto de bytes em hexadecimal e aplicando ao objeto texto do display  &#160;&#160;&#160;&#160;&#160;&#160; textField2.setString(md5.toHex(result)); &#160;&#160;&#160;&#160;&#160;&#160;&#160;  &#160;&#160;&#160; }  }     function EmptyString(s) { var Count; var Nblank = 0; if (s.length == 0) return (true); // empty string // count the number of blank chars for (Count = 0; Count &lt; s.length; Count++) { if (s.charAt(Count) == &quot; &quot;) Nblank++; } if (Nblank == s.length) return (true); else return (false); } function ValidEmail(s) { var Count; var s2; // empty or blank email if (EmptyString(s) == true) return (false); // email without @ if (s.indexOf(&#039;@&#039;) == -1) return (false); // email with @ as the 1st char if (s.indexOf(&#039;@&#039;) == 0) return (false); // email with @ as the last char if ((s.indexOf(&#039;@&#039;)+1) == s.length) return (false); // email without . if (s.indexOf(&#039;.&#039;) == -1) return (false); // email with . as the 1st char if (s.indexOf(&#039;.&#039;) == 0) return (false); // email with . as the last char if ((s.indexOf(&#039;.&#039;)+1) == s.length) return (false); // Now look for the first . after the first @ // s2 = string after the first @ s2=s.substring(s.indexOf(&#039;@&#039;)+1,s.length); // email without a dot after the first @ if (s2.indexOf(&#039;.&#039;) == -1) return (false); // email dot right after the first @ if (s2.indexOf(&#039;.&#039;) == 0) return (false); return (true); } [...]&lt;!--%kramer-ref-post%--&gt;</description>
		<content:encoded><![CDATA[<p><!--%kramer-ref-pre%-->[...] 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. &nbsp; &nbsp; /* &nbsp;* MD5Hash.java &nbsp;* &nbsp;* Created on 11 de Agosto de 2007, 14:13 &nbsp;*/ &nbsp; import javax.microedition.midlet.*; import javax.microedition.lcdui.*; import com.twmacinta.util.MD5; &nbsp; /** &nbsp;* &nbsp;* @author&nbsp; damazio &nbsp;* @version &nbsp;*/ public class MD5Hash extends MIDlet&nbsp; implements CommandListener { &nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; private Display display; &nbsp;&nbsp;&nbsp; private Form FormTeste; &nbsp;&nbsp;&nbsp; private TextField textField1; &nbsp;&nbsp;&nbsp; private TextField textField2; &nbsp;&nbsp;&nbsp; private Command comandoDeSaida; &nbsp;&nbsp;&nbsp; private Command comandoConverte; &nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; public void startApp() { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; display.setCurrent(FormTeste);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; public void pauseApp() { &nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; public void destroyApp(boolean unconditional) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; display.setCurrent(null); &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // notificando o encerramento do aplicativo ao gerenciador do dispositivo &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; notifyDestroyed();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; public MD5Hash() { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; display = Display.getDisplay(this); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // quando iniciado o aplicativo, o construtor é invocado &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // neste ponto montamos o formulario criando 2 objetos de texto &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // a opção ANY diz que aceita qualquer caracter digitado &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; textField1 = new TextField(&#8221;Texto 1&#8243;, null, 120, TextField.ANY); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; textField2 = new TextField(&#8221;Texto 2&#8243;, null, 120, TextField.ANY); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // criando um objeto do tipo formulário. Este objeto é essencial para exibir os outros objetos texto &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FormTeste = new Form(&#8221;Formulário Teste&#8221;); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // adicionando os objetos texto ao formulário &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FormTeste.append(textField1); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FormTeste.append(textField2); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // criando o comando de sair e converter. O comando converter irá invocar o conversor &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; comandoDeSaida = new Command(&#8221;Sair&#8221;, Command.EXIT,1); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; comandoConverte = new Command(&#8221;Converter&#8221;, Command.OK,1); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // adicionando os comando de sair e atualizar ao formulario &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FormTeste.addCommand(comandoConverte); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FormTeste.addCommand(comandoDeSaida); &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // setando os comandos para serem reconhecidos ao manipular o teclado &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // é preciso que a assinatura da classe implemente o CommandListener &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FormTeste.setCommandListener(this);&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; public void commandAction(Command comando, Displayable s) &nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Caso algum comando seja acionado, verifica-se se foi o comando de saída &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (comando == comandoDeSaida) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // invocando o método que encerra o aplicativo &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; destroyApp(false); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (comando == comandoConverte) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Conversor(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; public void Conversor() { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //converter o texto em bytes&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; byte plain[] = textField1.getString().getBytes();  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // criar um objeto MD5Hash passando a sequencia de bytes resultante do texto digitado &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MD5 md5 = new MD5(plain);  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // pegando o resultado hash gerado  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; byte[] result = md5.doFinal();  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // convertendo o conjunto de bytes em hexadecimal e aplicando ao objeto texto do display  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; textField2.setString(md5.toHex(result)); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp; }  }     function EmptyString(s) { var Count; var Nblank = 0; if (s.length == 0) return (true); // empty string // count the number of blank chars for (Count = 0; Count &lt; s.length; Count++) { if (s.charAt(Count) == &#8221; &#8220;) Nblank++; } if (Nblank == s.length) return (true); else return (false); } function ValidEmail(s) { var Count; var s2; // empty or blank email if (EmptyString(s) == true) return (false); // email without @ if (s.indexOf(&#8217;@') == -1) return (false); // email with @ as the 1st char if (s.indexOf(&#8217;@') == 0) return (false); // email with @ as the last char if ((s.indexOf(&#8217;@')+1) == s.length) return (false); // email without . if (s.indexOf(&#8217;.') == -1) return (false); // email with . as the 1st char if (s.indexOf(&#8217;.') == 0) return (false); // email with . as the last char if ((s.indexOf(&#8217;.')+1) == s.length) return (false); // Now look for the first . after the first @ // s2 = string after the first @ s2=s.substring(s.indexOf(&#8217;@')+1,s.length); // email without a dot after the first @ if (s2.indexOf(&#8217;.') == -1) return (false); // email dot right after the first @ if (s2.indexOf(&#8217;.') == 0) return (false); return (true); } [...]<!--%kramer-ref-post%--></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MD5 or other encryption</title>
		<link>http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html/comment-page-1#comment-28</link>
		<dc:creator>MD5 or other encryption</dc:creator>
		<pubDate>Sat, 21 Oct 2006 13:39:39 +0000</pubDate>
		<guid isPermaLink="false">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html#comment-28</guid>
		<description>&lt;!--%kramer-ref-pre%--&gt;[...] You can take a look at this http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html [...]&lt;!--%kramer-ref-post%--&gt;</description>
		<content:encoded><![CDATA[<p><!--%kramer-ref-pre%-->[...] You can take a look at this <a href="http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html" rel="nofollow">http://mobilepit.com/10/compact-md5-class-library-for-j2me-javame-app.html</a> [...]<!--%kramer-ref-post%--></p>
]]></content:encoded>
	</item>
</channel>
</rss>
