Re: VMPC Stream Cipher - ideas on potential weaknesses?

From: Bartosz Zoltak ()_at_vmpcfunction.com)
Date: 09/30/03


Date: Tue, 30 Sep 2003 10:58:18 +0200


Gregory G Rose wrote:

> Just for fun, I implemented VMPC and pushed 4
> terabytes of bytes and digraphs through our
> statistics program (that easily detects RC4
> biases). No significant results were detected.
>
> During that process, I actually understood what it
> was all about, and I'm impressed. Someone should
> do the sort of analysis you guys did with RC4, but
> I'm not at all sure that it will show anything.
> The big question remaining in my mind is whether
> it's possible for it to fall into short cycles; I
> don't *think* it is but it would appear to be a
> possibility.

It would be interesting to know about the possible short cycles. Do you have
anything particular in mind? One could easily show theoretically the Finney
states for RC4 but for VMPC, thanks to the s=P[s+P[n]] instead of s=s+P[n]
opeartion, situations like Finney states appear to be impossible.

Do you suspect one could show short cycles theoretically or you mean
test-finding them, like using the Floyd cycle finding algorithm?

I thought I could implement an attempt of cycle-finding when doing the
digraphs-on-given-positions tests (and possibly also trigraphs - frequencies
for three consecutive outputs) I could program it also to search for
repeated sequences in the genrated output, I only don't know how informative
it would be regarding the short-cycles-question.

My geuss is that the algorithm mixes the permutation well enough to avoid
occurrence of short cycles, but any test to support or abolish this guess
would be much more valuable.

> Conceptually, what he's done is to use a single
> permutation array to simulate two independent
> permutations.

In fact - a permutation (P[x]+1 mod 256), even tough trivially derived from
P[x], is a new permutation - it cannot be derived by simple
permutation-operations, like swapping of a few elements of P or composing P.

--
Bartosz Zoltak
http://www.vmpcfunction.com
QPbzoltak@vmpcfunction.com
without "QP"


Relevant Pages

  • Re: More help requested on permutation code.
    ... The sort assumes numerical permutation elements. ... sub permutation_multiply ... # Read in the cycles, ... my $class = shift; ...
    (comp.lang.perl.misc)
  • Re: ANNOUNCE: New "Leopard6" CSPRNG !
    ... and it always reports s]. ... also a permutation of 0..255. ... same set of cycles, except any cycles of even length in the internal ... Voila, the internal state. ...
    (sci.crypt)
  • Re: More help requested on permutation code.
    ... The sort assumes numerical permutation elements. ... # Read in the cycles, ... In Perl that is usually written as: ...
    (comp.lang.perl.misc)
  • Re: Permutation of maximum cycle
    ... assume you have a permutation of maximal period k=k. ... Wlog assume that p was chosen among all permutations of maximal order ... Consider any two such distinct cycles of periods k1, ...
    (sci.math)
  • More help requested on permutation code.
    ... The sort assumes numerical permutation elements. ... # Read in the cycles, ...
    (comp.lang.perl.misc)