Idea for a slow block cipher with adjustable block length

From: Antti Louko (alo_at_iki.fi.invalid)
Date: 03/30/05

  • Next message: Pawel Jakub Dawidek: "Re: Disk/Partition level encryption."
    Date: 31 Mar 2005 00:57:15 +0300
    
    

    A friend asked my advice with the following problem:

    There is a need for a reversible mapping function eg. block cipher.
    In this appliacation the mappings are done infrequently, so the speed
    is not an issue. Instead, it would be nice to have an implementation
    in pure Perl or Python. And relatively time consuming algorithm might
    be a bonus in this case. Key length should be adjustable as well.

    Does the following idea have serious problems in your opionion?

    Construct a Feistel structure where left and right part are of equal
    length (as normally) and half of the length of the block. Lets have
    about 20 rounds to be safe. The function F might be truncated SHA-1
    of round number, key string and right half. SHA-1 makes the cipher
    quite slow but it doesn't harm in this case.

    If you think that SHA-1 is overkill, what would be a suitable
    alternative?

    I think this could be used to implement usable mappings with
    relatively short block lengths (24 bits). After all, this cipher is
    not intended to be used in any other mode that pure ECB.


  • Next message: Pawel Jakub Dawidek: "Re: Disk/Partition level encryption."