1© David Morgan 2009-2012Message digests*Message digests*David Morgan**a.k.aa.k.ahasheshashes© David Morgan 2009-2012What is a message digestWhat is a message digest a value (digest)derived from a body of data (message) by application of an algorithmic function applied on all of the data (all bits)digest = f ( message )2© David Morgan 2009-2012Message digest function examplesMessage digest function examples MD5 SHA1 RIPEMD-160digest = MD5 ( message )digest = SHA1 ( message )digest = RIPEMD-160 ( message )© David Morgan 2009-2012Digest function characteristicsDigest function characteristics digest length constant (per particular function) digest unique to message altogether different digests for slightly different messages irreversible, one-way, inverseless(note: MD5 and SHA1, used for illustration in following screenshots,are deprecated due to weaknesses found in recent years)3© David Morgan 2009-2012digest length constant digest length constant (per function)(per function)Familiar short textFamiliar long text32-byte MD5 digest length, for both40-byte SHA1 digest length, for both© David Morgan 2009-2012Slight input change Slight input change --> big output change> big output change“Authorized” occurs only oncechange only one bit in the whole file A=01000001C=01000011 digest changes radically revert file to its original identically digest reverts to its original identically4© David Morgan 2009-2012irreversible, oneirreversible, one--way, way, inverselessinverseless input grows without bound output remains a few bytes sufficient information cannot reside in scant input to reconstruct input© David Morgan 2009-2012Contrast with encryption algorithmsContrast with encryption algorithms has no key is not reversible output’s size does not scale to input’s is not for purpose of confidentiality5© David Morgan 2009-2012Digest lengthDigest length––variable among algorithmsvariable among
View Full Document