Subject: [Cfrg] Asking comments: New Version Notification for draft-kiyomoto-kcipher2-00

From: "Wook Shin" <[email-masked]>
Date: Wed, 06 Apr 2011 10:55:24 +0900

Hello all,

We've submitted an Internet-Draft that explains KCipher-2,
an efficient and secure stream cipher.
URL: http://www.ietf.org/internet-drafts/draft-kiyomoto-kcipher2-00.txt

The KCipher-2 is developed by KDDI R&D Laboratories, Inc.,
Japan and now is being used for commercial applications such
as remote health care system and private image transmission.

All comments and advice are welcomed.

Best regards,

-- 
Wook Shin
Information Security Laboratory,
KDDI R&D Laboratories, Inc.

---

From: "Rose, Greg" <[email-masked]>
Date: Wed, 6 Apr 2011 04:47:08 +0000

Is there some sort of design document that explains the cipher, other than the draft? Like a conference paper or something?

Greg.

On 2011 Apr 5, at 18:55 , Wook Shin wrote:

> _______________________________________________
> Cfrg mailing list
> [email-masked]
> http://www.irtf.org/mailman/listinfo/cfrg

---

From: Jon Callas <[email-masked]>
Date: Wed, 6 Apr 2011 00:26:58 -0700

> Is there some sort of design document that explains the cipher, other than the draft? Like a conference paper or something?

I found:

Web site:
http://www.kddilabs.jp/english/kcipher2e/kcipher2e.htm

Latest paper:
http://www.kddilabs.jp/english/kcipher2e/draftpaper2.pdf

First paper:
http://www.ecrypt.eu.org/stream/papersdir/2007/029.pdf

Source code would be nice, too, though.

	Jon

---

From: "Wook Shin" <[email-masked]>
Date: Wed, 06 Apr 2011 16:44:23 +0900

Thank you Jon,

I will check if the ISO document, [ISO18033], which is referred
in the draft and our implementation of KCipher-2 can be sent around.

On Wed, 06 Apr 2011 16:26:58 +0900, Jon Callas <[email-masked]> wrote:

>> Is there some sort of design document that explains the cipher, other  
>> than the draft? Like a conference paper or something?
>
> I found:
>
> Web site:

---

From: "Wook Shin" <[email-masked]>
Date: Wed, 06 Apr 2011 17:15:43 +0900

I've attached the source code.
FYI, you might want to check the latest evaluation report of KCipher-2
at http://www.cryptrec.go.jp/estimation/techrep_id2010_2.pdf

Wook

---

From: "Jim Schaad" <[email-masked]>
Date: Wed, 6 Apr 2011 19:04:55 -0700

Just from a quick scan without actually reading the document you get my
standard first question.  Where are the test vectors and a partial example
so that I can validate that my code matches yours.   The normal answer I get
is --- oh it is in document  foobar, which normally requires that I make
some type of statement that I am unwilling to agree to and thus I want it in
this document.

I generally also don't believe in reading the code that you have sent out as
part of the question is whether the document is specific enough that
somebody will be able to pull it out of the archive later and implement it
as necessary.

Jim

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]] On Behalf Of
> Wook Shin
> Sent: Tuesday, April 05, 2011 6:55 PM
> To: [email-masked]
> Subject: [Cfrg] Asking comments: New Version Notification for draft-
> kiyomoto-kcipher2-00
> 
> Hello all,
> 
> We've submitted an Internet-Draft that explains KCipher-2, an efficient
and
> secure stream cipher.
> The KCipher-2 is developed by KDDI R&D Laboratories, Inc., Japan and now
is
> being used for commercial applications such as remote health care system
> and private image transmission.
>

---

From: "Wook Shin" <[email-masked]>
Date: Fri, 08 Apr 2011 13:49:03 +0900

Hello Jim,

> some type of statement that I am unwilling to agree to and thus I want  

Thank you so much for the comment. I've added some test vectors and
results which can be found in Appendix B of the new version of the draft,
URL: http://datatracker.ietf.org/doc/draft-kiyomoto-kcipher2/

> somebody will be able to pull it out of the archive later and implement  

I just wished the source would be like an extra appendix which might
provide some helpful insight for someone when she/he reads the draft.
I don't think the source code is the unique and the most efficient
implementation of KCipher-2, though, and that's why I tried to write
the algorithm of KCipher-2 in pseudo format in the draft. But, I also
aware that the algorithm description in the draft might not be clear
enough. I'd appreciate it if anyone teaches us any ambiguous or
unclear part in the draft.

Thank you,

Wook

---

From: Joachim Strömbergson <[email-masked]>
Date: Fri, 08 Apr 2011 08:39:02 +0200

Aloha!

On 2011:04:08 6:49, Wook Shin wrote:
> implementation of KCipher-2, though...

This is where soo many cipher designers go wrong. From an implementer
point of view having access to test vectors and a simple, functional
reference model which matches the algorithm description is almost
essential. Unfortunately test vectors is rare. And a good, reference
model is rarer still.

What you often get is an implementation which is unrolled or in other
ways reorganized for maximum speed, have variable names not matching the
written algorithm description, lacks comments is generally written in
badly coded C.

Yes, a version optimized for speed is good too, but that comes after
having the functionality down. And using single letter variable names,
bad intendation and lack of comments does not lead to faster
implementations.

So, please if possible, include the simplest, cleanest, well coded, well
documented albeit slowest implementation that is self contained (besides
stdint, stdio etc) do as little macros, typedefs etc as possible. And
compiles easily.

(Note: This is not a critique of kcipher2 but a general observation.)
- -- 
Med vänlig hälsning, Yours

Joachim Strömbergson - Alltid i harmonisk svängning.
========================================================================
Kryptoblog - IT-säkerhet på svenska
http://www.strombergson.com/kryptoblog
========================================================================

---

From: "Wook Shin" <[email-masked]>
Date: Tue, 12 Apr 2011 18:38:01 +0900

Hello Joachim,

> stdint, stdio etc) do as little macros, typedefs etc as possible. And

I really appreciate your comments. Due to my lack of experience in the
standardization process and the field of cryptography, I think I
misunderstood the purpose of the standardization and the use of test
vectors. Now I can see what Jim and Jon were looking for.

I will revise the draft and rewrite the codes, so that the procedures
in the implementation can be shown clearly.

Thank you again,

Wook

On Fri, 08 Apr 2011 15:39:02 +0900, Joachim Strömbergson  
<[email-masked]> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Aloha!
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.11 (Darwin)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iEYEARECAAYFAk2erYYACgkQZoPr8HT30QH+4ACePO0asRvreR9t5QXUVKRe53Bv
> 7P8An3/hTwwtsNqmeOxFifLLFTzR6Wte
> =yjke
> -----END PGP SIGNATURE-----