From: Roedy Green on
On Wed, 24 Mar 2010 16:15:07 +0000, rossum <rossum48(a)coldmail.com>
wrote, quoted or indirectly quoted someone who said :

>There are
>1001 free implementations of Base64 out there.

see http://mindprod.com/jgloss/base64.html for some of them.

I wrote one myself.

I have not run across any comparison of their speed or quality.
--
Roedy Green Canadian Mind Products
http://mindprod.com

Responsible Development is the style of development I aspire to now. It can be summarized by answering the question, �How would I develop if it were my money?� I�m amazed how many theoretical arguments evaporate when faced with this question.
~ Kent Beck (born: 1961 age: 49) , evangelist for extreme programming.
From: Thomas Pornin on
According to Roedy Green <see_website(a)mindprod.com.invalid>:
> I have written a very light weight encryption package that uses
> public/private key encryption that does not require JCE, so works on
> old JDKs too. see http://mindprod.com/products.html#TRANSPORTER

You do realize, though, that you use RSA with non-standard padding
schemes, and that both your encryption and signature schemes are
actually weak ?

Why not use standard PKCS#1 (old-style "v1.5") padding ? This would
be much more secure, and hardly more complex to implement.

Also, you appear to encrypt messages by blocks with RSA, with ECB
chaining, aka "no chaining at all". This combines the weaknesses of
ill-used symmetric ciphers with the slowness and waste of space of RSA.
If you used a symmetric encryption with RC4, with a random secret key
which is then ecrypted with RSA, then you would have something much
stronger, faster, with more compact messages, and it would not use more
code.


--Thomas Pornin
From: Arne Vajhøj on
On 24-03-2010 14:09, Lew wrote:
> Roedy Green wrote:
>> I have written a very light weight [sic] encryption package that uses
>> public/private key encryption that does not require JCE, so works on
>> old JDKs too. see<http://mindprod.com/products.html#TRANSPORTER>
>
> They'd have to be pretty darned old! JCE came in with Java 1.4, over
> eight years and two obsolescent Java versions ago.

JCE was available as a separate download for 1.3.1, so no JCE means
10 years old.

Arne

From: Roedy Green on
On 24 Mar 2010 22:08:40 GMT, Thomas Pornin <pornin(a)bolet.org> wrote,
quoted or indirectly quoted someone who said :

>
>Also, you appear to encrypt messages by blocks with RSA, with ECB
>chaining, aka "no chaining at all". This combines the weaknesses of
>ill-used symmetric ciphers with the slowness and waste of space of RSA.
>If you used a symmetric encryption with RC4, with a random secret key
>which is then ecrypted with RSA, then you would have something much
>stronger, faster, with more compact messages, and it would not use more
>code.

I did this a long time ago to get an understanding of how
public/private key encryption worked probably before JCE came out or
at least before it was bundled. I intended it for short messages,
such as a credit card number so I was not too worried about speed or
fluffiness.

That is why I did not use a more complex hybrid of RSA and symmetric
ciphers. Key generation is very slow. For short messages, my scheme is
thus faster since it does not need to generate a session key.

Someone might use the Transporter today because they can control all
the code. JCE is a large, complex black box you are just supposed to
trust. How do you know JCE does not contain deliberate trap doors put
there at the insistence of the Homeland security people?

Your knowledge is considerably better than mine. I would have to
research a fair bit to even understand what you are asking me to do. I
have so many projects in my queue just now, I would not get to that
one for years. If you would like to fix it, I would be happy to
publish it.


--
Roedy Green Canadian Mind Products
http://mindprod.com

Don�t worry about people stealing an idea; if it�s original, you�ll have to shove it down their throats.
~ Howard Aiken (born: 1900-03-08 died: 1973-03-14 at age: 73)
From: Mike Amling on
Roedy Green wrote:
> On 24 Mar 2010 22:08:40 GMT, Thomas Pornin <pornin(a)bolet.org> wrote,
> quoted or indirectly quoted someone who said :
>
>> Also, you appear to encrypt messages by blocks with RSA, with ECB
>> chaining, aka "no chaining at all". This combines the weaknesses of
>> ill-used symmetric ciphers with the slowness and waste of space of RSA.
>> If you used a symmetric encryption with RC4, with a random secret key
>> which is then ecrypted with RSA, then you would have something much
>> stronger, faster, with more compact messages, and it would not use more
>> code.
>
> I did this a long time ago to get an understanding of how
> public/private key encryption worked probably before JCE came out or
> at least before it was bundled. I intended it for short messages,
> such as a credit card number so I was not too worried about speed or
> fluffiness.
> ...
> Your knowledge is considerably better than mine. I would have to
> research a fair bit to even understand what you are asking me to do. I
> have so many projects in my queue just now, I would not get to that
> one for years. If you would like to fix it, I would be happy to
> publish it.

Thomas Pornin is right. I would go further, and suggest using AES and
one of the good modes. And ECC has some advantages over RSA, one of
which is that once the parameters are set up, generating public/private
key pairs is must faster.
Just telling people "see
http://mindprod.com/products.html#TRANSPORTER" with no caveats about its
weaknesses only encourages bad security.
I also wrote open-source encryption code in Java. I dare say it's
more sophisticated than yours. But I don't publicize it to people who
may not be able to appreciate the conditions under which it can be used
securely.

--Mike Amling
First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4
Prev: [ANN] RefleX 0.4.0 released
Next: Exception questions