Re: [PATCH v0] Add SHA-3 hash algorithm

From: Jeff Garzik
Date: Wed Oct 03 2012 - 02:53:28 EST


On 10/03/2012 02:06 AM, David Miller wrote:
From: Jeff Garzik <jeff@xxxxxxxxxx>
Date: Wed, 3 Oct 2012 01:45:42 -0400

1) tcrypt setup blatantly wrong. What is the best setup here? Define a
separate entry for each digest length? Is there some special string
descriptor format that is desired, like "sha3-256" or "sha3(256)"?

Good question. The base name should probably be something without
dashes. Maybe "sha3_256", but yeah "sha3256" would look rediculous.

Well, the more basic question was... what to do when the digest length is easily variable, vis a vis kernel hash APIs?

Keccak message digest size may fall anywhere within the range 8 bits - 1600 bits at runtime. You choose the digest size when you init the context. In contrast, the kernel interface appears to require a hardcoded size, chosen at driver compile time.

My patch picks sizes found in common use, consistent with existing kernel practice. However, it is valid for another Keccak user to produce a 1600 bit hash, or a 1592 bit hash, or a 1584 bit hash, etc., etc.

Maybe my patch is the best we can do in the current kernel, if dynamic digest size is not currently possible. Register "sha3_224", "sha3_256", ... as you describe, and wait for actual users to appear with unsupported digest sizes.

Jeff



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/