|
|
Line 1: |
Line 1: |
| In [[cryptography]], '''MDC-2 (Modification Detection Code 2, sometimes called Meyer-Schilling)''' is a [[cryptographic hash function]]. MDC-2 is a [[One-way compression function|hash function based on a block cipher]] with a proof of security in the ideal-cipher model.<ref>{{cite conference
| | Jayson Berryhill is [http://cpacs.org/index.php?document_srl=90091&mid=board_zTGg26 love psychic readings] how I'm called and my spouse doesn't like it at all. Since I was 18 I've been operating as a bookkeeper but quickly my wife and I will start our personal company. love psychic ([http://www.article-galaxy.com/profile.php?a=143251 simply click the next document]) Her family members life in Ohio. What me and my family members love is performing ballet but I've been using on new issues recently.<br><br>Also visit my page are psychics real ([http://myoceancounty.net/groups/apply-these-guidelines-when-gardening-and-grow/ http://myoceancounty.net]) |
| | first = John
| |
| | last = Steinberger
| |
| | title = The Collision Intractability of MDC-2 in the Ideal-Cipher Model
| |
| | booktitle = Advances in Cryptology - EUROCRYPT 2007
| |
| | pages = 34–51
| |
| | publisher = Springer-Verlag
| |
| | date = June 23, 2007
| |
| | url = http://eprint.iacr.org/2006/294
| |
| | doi = 10.1007/978-3-540-72540-4_3
| |
| | accessdate = January 31, 2008}}</ref> The length of the output hash depends on the underlying block cipher used.
| |
| | |
| == Algorithm ==
| |
| For a given message <math>M</math> to hash and a given block cipher encryption function <math>E</math>, the MDC-2 algorithm proceed as followed. Let <math>n</math> be the block length, <math>A_1, B_1</math> two different constants of size <math>n</math>. If <math>M = M_1||..|M_m</math> where each <math>M_i</math> has size <math>n</math>, then the hash <math>V_m||W_m</math> of the message is given by:
| |
| *for <math>i = 1</math> to <math>m</math>:
| |
| **<math>V_i = M_i \oplus E(M_i,A_i)</math>
| |
| **<math>W_i = M_i \oplus E(M_i,B_i)</math>
| |
| **<math>V_i^L || V_i^R = V_i</math>
| |
| **<math>W_i^L || W_i^R = W_i</math>
| |
| **<math>A_{i+1} = V_i^R||W_i^L</math>
| |
| **<math>B_{i+1} = W_i^R||V_i^L</math>
| |
| *return <math>A_{m+1}||B_{m+1}</math>
| |
| | |
| ==MDC-2DES hashes==
| |
| When MDC-2 uses the [[Data Encryption Standard|DES]] block cipher, the 128-bit (16-byte) MDC-2 hashes are typically represented as 32-digit [[hexadecimal]] numbers. The following demonstrates a 43-byte [[ASCII]] input and the corresponding MDC-2 hash:
| |
| | |
| MDC2("The quick brown fox jumps over the lazy dog")
| |
| = 000ed54e093d61679aefbeae05bfe33a
| |
| | |
| Even a small change in the message will (with probability) result in a completely different hash, e.g. changing <tt>d</tt> to <tt>c</tt>:
| |
| | |
| MDC2("The quick brown fox jumps over the lazy cog")
| |
| = 775f59f8e51aec29c57ac6ab850d58e8
| |
| | |
| The hash of the zero-length string is:
| |
| | |
| MDC2("")
| |
| = 52525252525252522525252525252525
| |
| | |
| ==Patent issues==
| |
| | |
| MDC-2 was covered by {{US patent|4908861}}, issued on March 13, 1990 but filed by [[IBM]] on August 28, 1987.<br />
| |
| For this reason, support for MDC-2 has been disabled in [[OpenSSL]] on most [[Linux]] distributions and is not implemented by many other cryptographic libraries.
| |
| | |
| But the maximum lifespan of 20 years from filing date means that the {{US patent|4908861}} could not have lasted beyond August 28, 2007 ; in fact it has expired in 2002,<ref>{{Cite document
| |
| | title = USPTO - Patent Maintenance Fees
| |
| | publisher = United States Patent Office
| |
| | date = March 13, 2002
| |
| | url = https://ramps.uspto.gov/eram/getMaintFeesInfo.do?patentNum=4908861&applicationNum=07090633
| |
| | accessdate = 2008-01-31
| |
| | postscript = <!--None--> }} (Click on "Bibliographic data".)</ref> because IBM has not paid the renewal fee. The same goes for the Canadian patent. There is no patent for Europe.<br />This means that MDC2 can be freely used.
| |
| | |
| == See also ==
| |
| * [[One-way compression function]]
| |
| | |
| ==Notes==
| |
| <references/>
| |
| {{Cryptography navbox | hash}}
| |
| | |
| [[Category:Cryptographic hash functions]]
| |
| | |
| | |
| {{crypto-stub}}
| |
Jayson Berryhill is love psychic readings how I'm called and my spouse doesn't like it at all. Since I was 18 I've been operating as a bookkeeper but quickly my wife and I will start our personal company. love psychic (simply click the next document) Her family members life in Ohio. What me and my family members love is performing ballet but I've been using on new issues recently.
Also visit my page are psychics real (http://myoceancounty.net)