A way around the rotational issue

Haha! My roommate pointed out on Saturday that a bit-wise rotation is just like shifting a value X bits, and or-ing it with the same value shifted the opposite direction (word size)-X bits. For example: A = (A << 7) | (a >> 25) for a 32-bit variable. This means I can, in fact, perform […]

Wolf1 almost done, and Wolf2 proposed

I have been working on finishing the imlpementation of my first one-way hash algorithm, named Wolf1. Over the weekend, I devised a second algorithm, aptly named Wolf2, which will be debuting on my website at the same time Wolf1 appears. The general form for Wolf1 is as follows: Wolf1 is a 256-bit one-way hash algorithm, […]

More hashing stuff

Last night I went through Knuth’s books and converted some of the provided constants into hexadecimal values. I then snagged 32 32-bit numbers and have used them as the initial constants in my new hash algorithm. Wolf1 provides a 256-bit signature, after performing several cascading and avalanching activities on the blocks read in. These operations […]

First hashing follow-up

In speaking with one of my professors this afternoon, and in re-reading the one-way hash chapter in Bruce Schneier’s excellent book Applied Cryptography, I’ve discovered that the only reasonable way of writing my hashing algorithm is to stick to chunks that are register-sized, or at most the size of all of the available registers (4 […]

Some open questions about hashing

I have been working on several one-way hash algorithms over the past couple weeks. None of them have yet reached the stage of ‘wow this really looks cool’, but the most recent iteration has gotten me pretty close. Now I’m looking at how to implement it in software. The algorithm I designed can create any […]