Yegor Ivanovich Zolotarev: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>JeanneMish
 
en>Addbot
m Bot: Migrating 6 interwiki links, now provided by Wikidata on d:q181710 (Report Errors)
Line 1: Line 1:
== Supra Shoes Auckland grapadoras ==
In [[cryptography]], a '''one-way compression function''' is a function that transforms a fixed-length input into a fixed-length output.<ref>Handbook of Applied Cryptography by Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone. Fifth Printing (August 2001) page 328.</ref> The transformation is [[one-way function|"one-way"]], meaning that it is difficult given a particular output to compute inputs which compress to that output. One-way compression functions are not related to [[data compression]], which by definition is invertible.
   
[[Image:One-way compression.svg|thumb|200px|right|A one-way compression function]]


On January 31st, Manuel Antonio Castaeda sentenced Farabundo Mart to death. He was shot and killed on February 1st, 1932.. Department of Health and Human Services. National Center for Health Statistics."National Health Interview Survey." Hyattsville, MD, 1988. <br><br>FBI Releases Pictures of Suspects in Boston Marathon Bombing The FBI today released images of two suspects in the Boston Marathon bombing the bureau still cons. Top administration officials have arrived at the White House to go over the Boston Marathon bombings with President Obama. <br><br>"He said, 'You know, I put my trust into Coach [http://www.mia.org.nz/Connections/publish.asp Supra Shoes Auckland] Roof two years ago. He left, and that i built my trust back up with Coach Chizik and Coach VanGorder. They know how to captivate his audience. (But he dominates, which God showed in Helena's dream [see below] is really a pitfall.) The accounts of [http://www.sauvetage.qc.ca/Fonction/define.asp Cheap Nike Shox] miracles, and just what God has done in the lives of many people, are cleverly used to get the attention of the audience, to carry their attention, and then lead them towards buying a product, or book, or video. <br><br>Striking the mark is tough even in the very best of circumstances; with work, after school activities, help with homework and other personal demands the bulls eye [http://www.notmanpasture.com.au/modules/mod_footer/footer.php Abercrombie Australia] looks awfully small , so far away. Maybe you can relate. The ejector 38 also offers a secondary inlet (saturated or superheated vapor or two phase inlet) 42 and an outlet 44. A line 46 extends from the ejector outlet 44 to an inlet 50 of a separator 48. <br><br>Aqui usamos laser ____LarryIsReal: 10. Qu fobia tienes? : Araas, grapadoras, oscuridad y alturas. We stay open to our clients 24 hours a day, 7 days a week to the greatest extent possible. Stop by visits by potential or existing clients receive our immediate attention.. <br><br>So remember that.To be fair to the Times Co., virtually every newspaper company in the planet has played defense forever of the Great Recession by selling assets and cutting staff. However that caveat aside, many of the Times Co. For instance, If the average American citizen chose to donate 10% of their income to a cost effective charity, they could treat 7,100 people for neglected tropical diseases per year. When you consider just how much good you can do with this money, this is a tiny sacrifice. <br><br>I have come across that right now, more and more people are now being attracted to cams and the subject of pictures. However, as a photographer, you will have to first expend so much period deciding the model of video camera to buy along with moving via store to store just so you may buy [http://www.vegiegourmet.com.au/enewsletters/scripts/menu.php Polo Ralph Lauren Shirts] the least expensive camera of the brand you have decided to stay on.<ul>
One-way compression functions are for instance used in the [[Merkle–Damgård construction]] inside [[cryptographic hash function]]s.
 
  <li>[http://trustytenants.co/how-it-works?page=1963#comment-98185 http://trustytenants.co/how-it-works?page=1963#comment-98185]</li>
 
  <li>[http://www.aiyingfang.cn/bbs/showtopic-808415.aspx http://www.aiyingfang.cn/bbs/showtopic-808415.aspx]</li>
 
  <li>[http://albawabat.com/social/profile.php?user=fdqsxmja&v=comments http://albawabat.com/social/profile.php?user=fdqsxmja&v=comments]</li>
 
  <li>[http://www.9158tiaowuba.com/forum.php?mod=viewthread&tid=174424 http://www.9158tiaowuba.com/forum.php?mod=viewthread&tid=174424]</li>
 
  <li>[http://ldsbee.com/index.php?page=item&id=2450433 http://ldsbee.com/index.php?page=item&id=2450433]</li>
 
</ul>


== Nike Roshe Run Canada Back at LAX ==
One-way compression functions are often built from [[block cipher]]s.
Some methods to turn any normal block cipher into a one-way compression function are '''Davies–Meyer''', '''Matyas–Meyer–Oseas''', '''Miyaguchi–Preneel''' (single-block-length compression functions) and '''MDC-2/Meyer–Schilling''', '''MDC-4''', '''Hirose''' (double-block-length compression functions). These methods are described in detail further down. ([[MDC-2]] is also the name of a hash function patented by [[IBM]].)


Previously Founder CEO of a mobile/social gaming start up, Duel Network, plus an investment banker with Morgan Stanley for eleven years, heading the emerging internet/new media corporate finance team in Ny. Significant experience advising companies within the sector with public and private financing in addition to strategic m advice.. <br><br>I'm not always thinking about the short term. I'm thinking about after my career is over. Community marketing is a delicate balance and if done improperly may backfire could be perceived as spam. That's bad! It is a very important step how to employ this technology to its maximum and promote services and products as not to be misunderstood or written off as junk advertising. <br><br>The teacher reminder to English can sound ridiculous and perhaps even slightly racist under such circumstances. And after all, is it reasonable or even helpful to focus on complete utilization of English under such circumstances? Can the scholars first language be used productively at school? In fact, it can, and use from the learner L1 (first language) to learn L2 (second language) has long been accepted [http://www.cdchautrichelieu.com/forum/goodforum/info.asp Nike Roshe Run Canada] methodology. <br><br>Most loads expect a certain voltage and, for alternating current devices, a certain [http://www.notmanpasture.com.au/modules/mod_footer/footer.php Abercrombie And Fitch Melbourne] frequency and quantity [http://www.wetrocks.com.au/ckfinder/plugins/fileeditor/editor.php Jeremy Scott Adidas] of phases. The appliances found in your home, for example, will typically be single phase operating at 50 to 60 with a voltage between 110 and 260 volts (depending on national standards). <br><br>"When we first learned about the Grace Place capital campaign, we knew we would have liked to remember our parents in this way," said [http://www.notmanpasture.com.au/modules/mod_footer/footer.php Abercrombie And Fitch Australia] their daughter, Nancy (Pfouts) Rose, who lives in Ohio. "To me, Grace Place is the perfect place for us to remember them; a contented place where we can visit and stay connected.". <br><br>Back at LAX, Kim, Kyle, and on their way to France, killed time at the airport by talking about what Kim were when she was still being drunk all the time. Used to put wine into coffee cups! Kim exclaimed, holding a coffee cup. Young PhD, William Eddy Esq, Paul Mason MS CPC, Roger Melton MS, Valerie Porr MA, Robert Weiss LCSW, Melody Beattie, Nicole Dubowitz, and Randi Kreger. The PhD and PsyD really are a doctorate level degrees in psychology; the PhD is traditionally the greater academic, research oriented degree, as the PsyD degree develops skills associated with clinical practice. <br><br>I had been wondering if your web host is OK? Not that I complaining, but sluggish loading instances times will sometimes affect your placement in the search engines and could damage your quality score if marketing and advertising with Adwords. Anyway I am adding this RSS to my email and may look out for a lot more of your respective exciting content.<ul>
== Compression ==
 
  <li>[http://enseignement-lsf.com/spip.php?article64#forum17890327 http://enseignement-lsf.com/spip.php?article64#forum17890327]</li>
 
  <li>[http://test.0830bbs.com/forum.php?mod=viewthread&tid=901515 http://test.0830bbs.com/forum.php?mod=viewthread&tid=901515]</li>
 
  <li>[http://www.xmulhx.com/forum.php?mod=viewthread&tid=133387 http://www.xmulhx.com/forum.php?mod=viewthread&tid=133387]</li>
 
  <li>[http://www.wmcc.cc/tw/bbs/forum.php?mod=viewthread&tid=114398 http://www.wmcc.cc/tw/bbs/forum.php?mod=viewthread&tid=114398]</li>
 
  <li>[http://ilivewebsolutions.com/awus/DEV/index.php/forum/5-vendor-networking/146789-nike-roshe-run-women#146789 http://ilivewebsolutions.com/awus/DEV/index.php/forum/5-vendor-networking/146789-nike-roshe-run-women#146789]</li>
 
</ul>


== Nike Roshe Run Women  that matches there ==
A compression function mixes two fixed length inputs and produces a single fixed length output of the same size as one of the inputs. This can also be seen as that the compression function transforms one large fixed-length input into a shorter, fixed-length output.


"Luckily I think my mind finally went blank," said Parker, who threw the first pitch to former Texas star Ivan Rodriguez. "My mind's been racing for about three weeks and I finally just zoned out. Well, now is your answer. Awkward Stock Photos is really a Tumblr which gives these weird photos meaning. <br><br>He developed game plans with head coach Scott Linehan, and worked to develop the offense in general. Linehan chose to hand over play calling duties to Olson to ensure that [http://www.visitabruzzo.co.uk/mobile/inc/client.php Nike Roshe Run Women] he could manage games better, without needing to focus on one side of the ball. The Admin and members seem to be a close knit community and therefore are very active and useful to everyone. The site is beautiful, with offers being updated and added constantly. <br><br>Weblogs became a preferred medium at the turn of the 21st century. Today, there are millions of weblogs available online, with thousands of new blogs appearing for the first time each day. Residential program for teen moms and babies. Learn more about how you can help us foster change for the benefit of families and children [http://www.mia.org.nz/Connections/publish.asp Supra Shoes Nz] in your community. <br><br>The term "striptease" was first recorded in 1938, though "stripping", meaning of women removing clothing to sexually excite men, seems to go back at least 400 years. For example, in Thomas Otway's comedy The Soldier's Fortune [http://www.knowyourhome.com.au/emails/includes/datebase.php Nike Air Max] (1681) a personality says: "Be sure they be lewd, drunken, stripping whores".9 Its combination with music seems [http://www.mia.org.nz/Connections/publish.asp Supra Shoes] to be as old. <br><br>You determine more when you watch the movie about your character than when you are actually shooting it sometimes. You feel it when you're doing it and you get on with it, but when you actually view it put together you kind of go 'Oh yeah alright, that fits there, I can see why It seemed like at the time'.. <br><br>I started writing about my feelings, and readers responded by having an intensity I've never felt in almost any other journalistic form. For some months, the site was entirely about the war, a place where every possible argument about the conflict could be grappled with. <br><br>She had become the fifth president in its 52 year history on Monday, appointed following a six month search process. Dorsett joins the station from WTXL, replacing veteran anchor Heidi Godman. And, much more interesting to Assad's men, the West continued to support the Algerian regime with weapons and political encouragement throughout the 1990s while huffing and puffing about human rights. Algeria's oil and gas reserves proved more important than civilian deaths  just like the Damascus regime now hopes to trust the West's desire for via Syria gas and oil to tolerate further killings.<ul>
For instance, ''input A'' might be 128 bits, ''input B'' 128 bits and they are compressed together to a single output of 128 bits. This is the same thing as if one single 256-bit input is compressed together to a single output of 128 bits.
 
  <li>[http://www.414300.net/news/html/?505091.html http://www.414300.net/news/html/?505091.html]</li>
 
  <li>[http://www.tztea.com.cn/news/html/?191853.html http://www.tztea.com.cn/news/html/?191853.html]</li>
 
  <li>[http://www.ezlsw.com/news/html/?22378.html http://www.ezlsw.com/news/html/?22378.html]</li>
 
  <li>[http://jiuye91.com/news/html/?818341.html http://jiuye91.com/news/html/?818341.html]</li>
 
  <li>[http://anmey201010.w20485.fxdns.cn/news/html/?77086.html http://anmey201010.w20485.fxdns.cn/news/html/?77086.html]</li>
 
</ul>


== Louboutin Malaysia But now ==
Some compression functions have different size of the two inputs but the output usually is the same size as one of the inputs. For instance, ''input A'' might be 256 bits, ''input B'' 128 bits and they are compressed together to a single output of 128 bits. That is, a total of 384 input bits are compressed together to 128 output bits.


"Growth in economic activity paused in recent months, in large part because of weather related disruptions and other transitory factors," the Fed said following a two day meeting. Economy unexpectedly contracted in the fourth quarter as inventory investment slowed and government spending plunged. <br><br>But now, the town wants to end that. The Chippendales is going to be celebrity waiters for the dinner and will join country star , members of the Indianapolis Colts cheerleading squad, the Evansville Icemen Hockey team as well as their cheer squad (the Icicles), local singer [http://www.ajhco.com.sg/update/datebase.asp Louboutin Malaysia] Gina Moore and MayorLloyd Winnecke. <br><br>I wish to answer aurum79. I am not a Florida Fundamentalists,but I am part of the body of Christ. There is a Daily Pick 3 Numbers Lottery game, Jackpots, Contests plus much more. They constantly update their offers and provide an active administration. <br><br>The person could just tag Banana and it would be a link to the main part of the site. Or, it could be as specific as a 4WD SuperCrew 145 Harley Davidson, forest green, and go directly to that product page.. The first source of income in retirement for many retirees is going to be Social Security. Another income source could [http://www.ajhco.com.sg/update/datebase.asp Louboutin Singapore] be derived from an employer type of pension. <br><br>Kate spade outlet notwithstanding you should be natty before buying. You don't must expenditure [http://www.salife.com.au/megazine/plugins/search.asp Nike Roshe Run] tremendous aggregate of money for simply products favor this. Claims it had been so concerned about Charlie's well being, "Warner Bros. Had an airplane waiting" to take him to a rehab facility . <br><br>Mason will provide oversight and strategic guidance for Bright House Networks Round-the-clock local news channels Bay News 9 and News 13 in addition to Bright House Sports Network, Local when needed and InfoMas beginning Dec. 30.Bay News 9 and News 13 are among the country top rated 24 hour local news channels. <br><br>Since June 2007, when Facebook first allowed 3rd party developers to create applications, developers have debuted greater than 7,000 programs around the Facebook platform. Every day, developers introduce another 100 applications to the site. E mail was designed for ASCII text only. In order to include other file types such as images and programs in an e mail message, they have to be converted to a full binary format and "attached" towards the message. <br><br>But do you really want to pop an SSD into say for example, my [http://www.omsmobilya.com.tr/db/seting.asp Longchamp Fiyatları] work's Pentium 4 with HT systems? I wouldn't. But then the IT doesn't know what they're doing either. And analysis the competition number of every Keyword. The very best Important Step to get top search engine results positioning and get more traffic.<ul>
The mixing is done in such a way that full [[avalanche effect]] is achieved. That is, every output bit depends on every input bit.
 
  <li>[http://freshnhottrends.com/activity/p/373297/ http://freshnhottrends.com/activity/p/373297/]</li>
 
  <li>[http://www.m-shell.net/framehelper.aspx?g=posts&t=513720 http://www.m-shell.net/framehelper.aspx?g=posts&t=513720]</li>
 
  <li>[http://202.109.115.218:8080/read.php?tid=9094382 http://202.109.115.218:8080/read.php?tid=9094382]</li>
 
  <li>[http://ciarcr.org/spip.php?article310/ http://ciarcr.org/spip.php?article310/]</li>
 
  <li>[http://1.ts.cn/home.php?mod=space&uid=7786&do=blog&quickforward=1&id=6101457 http://1.ts.cn/home.php?mod=space&uid=7786&do=blog&quickforward=1&id=6101457]</li>
 
</ul>


== Longchamp Eşarp They were going to collect ==
== One-way ==
{{Main|one-way function}}


In these grey days of continued economic stagnation, there is a fun game you can play to battle the gloom. The game is called "Labour mess bingo". The "X rated" filter wouldn't catch "X rated" (no hyphen). But you may include as many words, phrases and variations of them as you need.. <br><br>There's 400,000 individuals. You are a lone person, but if that lone person and the other lone person and another lone person slowly begin to build momentum, it becomes colossal.. He took the checkered flag by 7.551 seconds in front of Jeff Burton. Matt Kenseth wound up third, Denny Hamlin was fourth and David Reutimann fifth. <br><br>LiveJournal top blog link targets were sites aiding the design of LiveJournal pages and groups discussing the management of LiveJournal. Perhaps the best [http://www.omsmobilya.com.tr/db/seting.asp Longchamp Eşarp] source of evidence, however, is always to interview individual social network users, as part of [http://www.soonhongseng.com/images/images_products/Thumbnail/header.asp Nike Cortez] a virtual ethnography (Hine, 2000) or similar qualitative approach, to find out their perceptions. <br><br>Stripping is usually associated with female performers; male strippers make up less than a third of the professional community.45 American style strip clubs are often structured as nightclubs or bars. High end establishments are commonly referred to as "gentlemen's clubs",46 filled with luxury features and services. <br><br>This place is the bomb for shawarma. I've had the shrimp and the salmon and those are ok but nothing special. If your child has a febrile seizure, call your child doctor immediately. He or she will want to examine your son or daughter in order to determine the cause of your child fever. <br><br>If this is a MUST, then you'll have to install more functionality into your [http://www.soonhongseng.com/images/images_products/Thumbnail/header.asp Nike Cortez Singapore] Excel program. Only people with the same installed ADD IN will be able to use your sheet.. Area remains big draw for those who wish, the elegant rural holiday attractions. Brittany and Normandy make the perfect choice for a family summer vacation [http://www.omsmobilya.com.tr/db/seting.asp Longchamp çanta] relaxing holiday in the countryside village. <br><br>The job went to Frank Beamer, who will soon complete his 26th season in the position. Why is Arians radar worthy?: Something an NFL owner need not worry about is how Arians would respond under pressure. We worked hard to become dependable causes of links to reliably interesting material. We learned to create effective link text, experimenting with the elements that would impel readers to click to another site. <br><br>They were going to collect, and i believe car was worth only 12000pds. Max. However, considering their costs as an airline partner, most hotel chains initiated their very own frequent stay programs. Today, although most hotels will have their own frequent stay programs, they continue to be partners with all the major airlines since it leads to increased sales..<ul>
A [[one-way function]] is a function that is easy to compute but hard to invert. A one-way compression function (also called hash function) should have the following properties:
 
 
  <li>[http://222.243.160.155/forum.php?mod=viewthread&tid=12878856 http://222.243.160.155/forum.php?mod=viewthread&tid=12878856]</li>
* Easy to compute: If you know an input it is easy to calculate the output.
 
* Preimage-resistance: If an attacker only knows the output it should be unfeasible to calculate an input i.e. given an output ''h'' it should be unfeasible to calculate an input ''m'' such that ''hash''(''m'')=''h''.
  <li>[http://metransparent.nfrance.com/~k1001/spip.php?article8359&lang=ar&id_forum=8701/ http://metransparent.nfrance.com/~k1001/spip.php?article8359&lang=ar&id_forum=8701/]</li>
* Second preimage-resistance: Given an input ''m1'' whose output is ''h'', it should be unfeasible to find another input ''m2'' that has the same output ''h'' i.e. ''hash''(''m1'')=''hash''(''m2'').
 
* [[Collision resistance|Collision-resistance:]] It should be hard to find any two different inputs that compress to the same output i.e. an attacker should not be able to find a pair of messages m1 ≠ m2 such that ''hash''(''m1'') = ''hash''(''m2''). Due to the [[Birthday problem|birthday paradox]] (see also [[birthday attack]]) there is a 50% chance a collision can be found in time of about 2<sup>n/2</sup> where n is the number of bits in the hash function's output. An attack on the hash function thus should not be able to find a collision with less than about 2<sup>n/2</sup> work.
  <li>[http://www.shaffaf.net/spip.php?article929&lang=ar&id_forum=27372/ http://www.shaffaf.net/spip.php?article929&lang=ar&id_forum=27372/]</li>
 
 
Ideally one would like the "unfeasibility" in preimage-resistance and second preimage-resistance to mean a work of about 2<sup>n</sup> where n is the number of bits in the hash function's output. Recent results indicate that in the case of second preimage-resistance this is more difficult than has been expected {{Cn|date=October 2013}}.
  <li>[http://www.middleeasttransparent.com/spip.php?article20221&lang=ar&id_forum=33585/ http://www.middleeasttransparent.com/spip.php?article20221&lang=ar&id_forum=33585/]</li>
 
 
== The Merkle–Damgård construction ==
  <li>[http://ldsbee.com/index.php?page=item&id=3993625 http://ldsbee.com/index.php?page=item&id=3993625]</li>
{{Main|Merkle–Damgård construction}}
 
[[Image:Merkle-Damgard hash big.svg|thumb|400px|right|The Merkle–Damgård hash construction. The boxes labeled [f] are a one-way compression function.]]
</ul>
 
A common use of one-way compression functions is in the Merkle–Damgård construction inside cryptographic hash functions.
 
A hash function must be able to process an arbitrary-length message into a fixed-length output. This can be achieved by breaking the input up into a series of equal-sized blocks, and operating on them in sequence using a one-way compression function. The compression function can either be specially designed for hashing or be built from a block cipher.
 
The last block processed should also be [[Padding (cryptography)|length padded]], this is crucial to the security of this construction. This construction is called the [[Merkle–Damgård construction]]. Most widely used hash functions, including [[SHA-1]] and [[MD5]], take this form.
 
When length padding (also called MD-strengthening) is applied attacks cannot find collisions faster than the birthday paradox (2<sup>n/2</sup>, n is the block size in bits) if the used f-function is collision-resistant.<ref name="damgard89">Ivan Damgård. A design principle for hash functions. In Gilles Brassard, editor, CRYPTO, volume 435 of LNCS, pages 416–427. Springer, 1989.</ref><ref name="merkle89">Ralph Merkle. One way hash functions and DES. In Gilles Brassard, editor, CRYPTO, volume 435 of LNCS, pages 428–446. Springer, 1989.</ref> Hence, the Merkle–Damgård hash construction reduces the problem of finding a proper hash function to finding a proper compression function.
 
A second preimage attack (given a message m1 an attacker finds another message m2 to satisfy hash(m1) = hash(m2) ) can be done according to Kelsey and Schneier <ref name="ks05">John Kelsey and Bruce Schneier. Second preimages on n-bit hash functions for much less than 2<sup>n</sup> work. In Ronald Cramer, editor, EUROCRYPT, volume 3494 of LNCS, pages 474–490. Springer, 2005.</ref> for a 2<sup>k</sup>-message-block message in time k x 2<sup>n/2+1</sup>+2<sup>n-k+1</sup>. Note that the complexity is above 2<sup>n/2</sup> but below 2<sup>n</sup> when messages are long and that when messages get shorter the complexity of the attack approaches 2<sup>n</sup>.
<br style="clear:both"/>
 
== Construction from block ciphers ==
[[Image:Block cipher.svg|thumb|200px|right|A typical modern block cipher]]
 
One-way compression functions are often built from block ciphers.
 
Block ciphers take (like one-way compression functions) two fixed size inputs (the [[Key (cryptography)|key]] and the [[plaintext]]) and return one single output (the [[ciphertext]]) which is the same size as the input plaintext.
 
However, modern block ciphers are only partially one-way. That is, given a plaintext and a ciphertext it is infeasible to find a key that encrypts the plaintext to the ciphertext. But, given a ciphertext and a key a matching plaintext can be found simply by using the block cipher's decryption function. Thus, to turn a block cipher into a one-way compression function some extra operations have to be added.
 
Some methods to turn any normal block cipher into a one-way compression function are Davies–Meyer, Matyas–Meyer–Oseas, Miyaguchi–Preneel (single-block-length compression functions) and MDC-2, MDC-4, Hirose (double-block-length compressions functions).
 
Single-block-length compression functions output the same number of bits as processed by the underlying block cipher. Consequently, double-block-length compression functions output twice the number of bits.
 
If a block cipher has a [[Block size (cryptography)|block size]] of say 128 bits single-block-length methods create a hash function that has the block size of 128 bits and produces a hash of 128 bits. Double-block-length methods make hashes with double the hash size compared to the block size of the block cipher used. So a 128-bit block cipher can be turned into a 256-bit hash function.
 
These methods are then used inside the Merkle-Damgård construction to build the actual hash function. These methods are described in detail further down. ([[MDC-2]] is also the name of a hash function patented by [[IBM]].)
 
Using a block cipher to build the one-way compression function for a hash function is usually somewhat slower than using a specially designed one-way compression function in the hash function. This is because all known secure constructions do the [[Key schedule|key scheduling]] for each block of the message. Black, Cochran and Shrimpton have shown that it is impossible to construct a one-way compression function that makes only one call to a block cipher with a fixed key.<ref>John Black, Martin Cochran, and Thomas Shrimpton. ''On the Impossibility of Highly-Efficient Blockcipher-Based Hash Functions.'' Advances in Cryptology -- EUROCRYPT '05, Aarhus, Denmark, 2005. The authors define a hash function "highly efficient if its compression function uses exactly one call to a block cipher whose key is fixed".</ref> In practice reasonable speeds are achieved provided the key scheduling of the selected block cipher is not a too heavy operation.
 
But, in some cases it is easier because a single implementation of a block cipher can be used for both block cipher and a hash function. It can also save [[machine code|code]] space in very tiny [[embedded system]]s like for instance [[smart card]]s or [[Electronic control unit|nodes in cars]] or other machines.
 
Therefore, the hash-rate or rate gives a glimpse of the efficiency of a hash function based on a certain compression function. The rate of an iterated hash function outlines the ratio between the number of block cipher operations and the output. More precisely, if n denotes the output bit-length of the block cipher the rate represents the ratio between the number of processed bits of input m, n output bits and the necessary block cipher operations s to produce these n output bits. Generally, the usage of less block cipher operations could result in a better overall performance of the entire hash function but it also leads to a smaller hash-value which could be undesirable. The rate is expressed in the formula <math>R_h=\frac{\left|m_i\right|}{s\cdot n}</math>.
 
The hash function can only be considered secure if at least the following conditions are met:
* The block cipher has no special properties that distinguish it from ideal ciphers, such as for example weak keys or keys that lead to identical or related encryptions (fixed points or key-collisions).
* The resulting hash size is big enough. According to the [[birthday attack]] a security level of 2<sup>80</sup> (generally assumed to be infeasible to compute today) is desirable thus the hash size should be at least 160 bits.
* The last block is properly length padded prior to the hashing. (See [[Merkle–Damgård construction]].) Length padding is normally implemented and handled internally in specialised hash functions like [[SHA-1]] etc.
 
The constructions presented below: Davies–Meyer, Matyas–Meyer–Oseas, Miyaguchi–Preneel and Hirose have been shown to be secure under the [[black-box]] analysis.<ref>John Black, Phillip Rogaway, and Tom Shrimpton. ''Black-Box Analysis of the Block-Cipher-Based Hash-Function Constructions from PGV.'' Advances in Cryptology - CRYPTO '02, Lecture Notes in Computer Science, vol. 2442, pp. 320-335, Springer, 2002. See the table on page 3, Davies–Meyer, Matyas–Meyer–Oseas and Miyaguchi–Preneel are numbered in the first column as hash functions 5, 1 and 3.</ref><ref name = "Hirose06">S. Hirose, ''[http://www.iacr.org/archive/fse2006/40470213/40470213.pdf Some Plausible Constructions of Double-Block-Length Hash Functions]''. In: Robshaw, M.J.B. (ed.) FSE 2006, LNCS, vol. 4047, pp. 210-225, Springer, Heidelberg 2006.</ref> The goal is to show that any attack that can be found is at most as efficient as the [[birthday attack]] under certain assumptions. The black-box model assumes that a block cipher is used that is randomly chosen from a set containing all appropriate block ciphers. In this model an attacker may freely encrypt and decrypt any blocks, but does not have access to an implementation of the block cipher. The encryption and decryption function are represented by oracles that receive a pair of either a plaintext and a key or a ciphertext and a key. The oracles then respond with a randomly chosen plaintext or ciphertext, if the pair was asked for the first time. They both share a table for these triplets, a pair from the query and corresponding response, and return the record, if a query was received for the second time. For the proof there is a collision finding algorithm that makes randomly chosen queries to the oracles. The algorithm returns 1, if two responses result in a collision involving the hash function that is built from a compression function applying this block cipher (0 else). The probability that the algorithm returns 1 is dependent on the number of queries which determine the security level.
 
== Davies–Meyer ==
[[Image:Davies-Meyer hash.svg|thumb|230px|right|The Davies–Meyer one-way compression function]]
 
The Davies–Meyer single-block-length compression function feeds each block of the message (m<sub>i</sub>) as the key to a block cipher. It feeds the previous hash value (H<sub>i-1</sub>) as the plaintext to be encrypted. The output ciphertext is then also [[exclusive-or|XORed]] (<math>\oplus</math>) with the previous hash value (H<sub>i-1</sub>) to produce the next hash value (H<sub>i</sub>). In the first round when there is no previous hash value it uses a constant pre-specified initial value (H<sub>0</sub>).
 
In [[mathematical notation]] Davies–Meyer can be described as:
 
:<math>H_i = E_{m_i}{(H_{i-1})} \oplus {H_{i-1}}.</math>
 
The scheme has the rate (k is the keysize):
 
:<math>R_{DM}=\frac{k}{1\cdot n}=\frac{k}{n}.</math>
 
If the block cipher uses for instance 256-bit keys then each message block (m<sub>i</sub>) is a 256-bit chunk of the message. If the same block cipher uses a block size of 128 bits then the input and output hash values in each round is 128 bits.
 
Variations of this method replace XOR with any other group operation, such as addition on 32-bit unsigned integers.
 
A notable property of the Davies–Meyer construction is that even if the underlying block cipher is totally secure, it is possible to compute [[Fixed point (mathematics)|fixed points]] for the construction : for any <math>m</math>, one can find a value of <math>h</math> such that <math>E_m(h) \oplus h = h</math> : one just has to set <math>h = E_m^{-1}(0)</math>.<ref>Handbook of Applied Cryptography by Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone. Fifth Printing (August 2001) page 375.</ref> This is a property that [[random function]]s certainly do not have. So far, no practical attack has been based on this property, but one should be aware of this "feature". The fixed-points can be used in a second preimage attack (given a message m1, attacker finds another message m2 to satisfy hash(m1) = hash(m2) ) of Kelsey and Schneier <ref name="ks05"/> for a 2<sup>k</sup>-message-block message in time 3 x 2<sup>n/2+1</sup>+2<sup>n-k+1</sup> . If the construction does not allow easy creation of fixed points (like Matyas–Meyer–Oseas or Miyaguchi–Preneel) then this attack can be done in k x 2<sup>n/2+1</sup>+2<sup>n-k+1</sup> time. Note that in both cases the complexity is above 2<sup>n/2</sup> but below 2<sup>n</sup> when messages are long and that when messages get shorter the complexity of the attack approaches 2<sup>n</sup>.
 
Most widely used hash functions, including [[MD5]], [[SHA-1]] and [[SHA-2]] use this construction.
 
The security of the Davies–Meyer construction in the Ideal Cipher Model was first proved by R. Winternitz.<ref>R. Winternitz. ''A secure one-way hash function built from DES.'' In Proceedings of the IEEE Symposium on Information Security and Privacy, p. 88-90. IEEE Press, 1984.</ref>
<br style="clear:both"/>
 
== Matyas–Meyer–Oseas ==
[[Image:Matyas-Meyer-Oseas hash.svg|thumb|230px|right|The Matyas–Meyer–Oseas one-way compression function]]
 
The Matyas–Meyer–Oseas single-block-length one-way compression function can be considered the dual (the opposite) of Davies–Meyer.
 
It feeds each block of the message (m<sub>i</sub>) as the plaintext to be encrypted. The output ciphertext is then also XORed (<math>\oplus</math>) with the same message block (m<sub>i</sub>) to produce the next hash value (H<sub>i</sub>). The previous hash value (H<sub>i-1</sub>) is fed as the key to the block cipher. In the first round when there is no previous hash value it uses a constant pre-specified initial value (H<sub>0</sub>).
 
If the block cipher has different block and key sizes the hash value (H<sub>i-1</sub>) will have the wrong size for use as the key. The cipher might also have other special requirements on the key. Then the hash value is first fed through the function g( ) to be converted/padded to fit as key for the cipher.
 
In mathematical notation Matyas–Meyer–Oseas can be described as:
 
:<math>H_i = E_{g(H_{i-1})}(m_i)\oplus m_i.</math>
 
The scheme has the rate:
 
:<math>R_{MMO}=\frac{n}{1\cdot n}=1.</math>
 
A second preimage attack (given a message m1 an attacker finds another message m2 to satisfy hash(m1) = hash(m2) ) can be done according to Kelsey and Schneier<ref name="ks05"/> for a 2<sup>k</sup>-message-block message in time k x 2<sup>n/2+1</sup>+2<sup>n-k+1</sup>. Note that the complexity is above 2<sup>n/2</sup> but below 2<sup>n</sup> when messages are long and that when messages get shorter the complexity of the attack approaches 2<sup>n</sup>.
 
== Miyaguchi–Preneel ==
[[Image:Miyaguchi-Preneel hash.svg|thumb|230px|right|The Miyaguchi–Preneel one-way compression function]]
 
The Miyaguchi–Preneel single-block-length one-way compression function is an extended variant of Matyas–Meyer–Oseas. It was independently proposed by [[Shoji Miyaguchi]] and [[Bart Preneel]].
 
It feeds each block of the message (m<sub>i</sub>) as the plaintext to be encrypted. The output ciphertext is then XORed (<math>\oplus</math>) with the same message block (m<sub>i</sub>) and then also XORed with the previous hash value (H<sub>i-1</sub>) to produce the next hash value (H<sub>i</sub>). The previous hash value (H<sub>i-1</sub>) is fed as the key to the block cipher. In the first round when there is no previous hash value it uses a constant pre-specified initial value (H<sub>0</sub>).
 
If the block cipher has different block and key sizes the hash value (H<sub>i-1</sub>) will have the wrong size for use as the key. The cipher might also have other special requirements on the key. Then the hash value is first fed through the function g( ) to be converted/padded to fit as key for the cipher.
 
In mathematical notation Miyaguchi–Preneel can be described as:
 
:<math>H_i = E_{g(H_{i-1})}(m_i)\oplus H_{i-1}\oplus m_i.</math>
 
The scheme has the rate:
 
:<math>R_{MP}=\frac{n}{1\cdot n}=1.</math>
 
The roles of m<sub>i</sub> and H<sub>i-1</sub> may be switched, so that H<sub>i-1</sub> is encrypted under the key m<sub>i</sub>. Thus making this method an extension of Davies–Meyer instead.
<br style="clear:both"/>
 
A second preimage attack (given a message m1 an attacker finds another message m2 to satisfy hash(m1) = hash(m2) ) can be done according to Kelsey and Schneier<ref name="ks05"/> for a 2<sup>k</sup>-message-block message in time k x 2<sup>n/2+1</sup>+2<sup>n-k+1</sup>. Note that the complexity is above 2<sup>n/2</sup> but below 2<sup>n</sup> when messages are long and that when messages get shorter the complexity of the attack approaches 2<sup>n</sup>.
 
== Hirose ==
[[Image:Hirose.png|thumb|230px|right|The Hirose double-block-length compression function]]
 
The Hirose<ref name="Hirose06"/> double-block-length one-way compression function consists of a block cipher plus a permutation p.&nbsp;It was proposed by Shoichi Hirose in 2006 and is based on a work<ref>M. Nandi, ''Towards optimal double-length hash functions'', In: Proceedings of the 6th International Conference on Cryptology in India (INDOCRYPT 2005), Lecture Notes in Computer Science 3797, pages 77–89, 2005.</ref> by [[Mridul Nandi]].
 
It uses a block cipher whose key length ''k'' is larger than the block length ''n'', and produces a hash of size 2''n''. For example, any of the [[Advanced Encryption Standard process|AES candidates]] with a 192- or 256-bit key (and 128-bit block).
 
Each round accepts a portion of the message ''m''<sub>''i''</sub> that is ''k''−''n'' bits long, and uses it to update two ''n''-bit state values ''G'' and ''H''.
 
First, ''m''<sub>''i''</sub> is concatenated with ''H''<sub>''i''−1</sub> to produce a key ''K''<sub>''i''</sub>. Then the two feedback values are updated according to:
* ''G''<sub>''i''</sub> = E<sub>''K''<sub>''i''</sub></sub>(G<sub>''i''−1</sub>) ⊕ G<sub>''i''−1</sub>
* ''H''<sub>''i''</sub> = E<sub>''K''<sub>''i''</sub></sub>(''p''(G<sub>''i''−1</sub>)) ⊕ ''p''(G<sub>''i''−1</sub>).
''p''(G<sub>''i''−1</sub>) is an arbitrary fixed-point-free permutation on an ''n''-bit value, typically defined as
* ''p''(''x'') = ''x'' ⊕ ''c''
for an arbitrary non-zero constant ''c''. (All-ones may be a convenient choice.)
 
Each encryption resembles the standard Davies–Meyer construction. The advantage of this scheme over other proposed double-block-length schemes is that both encryptions use the same key, and thus key scheduling effort may be shared.
 
The final output is ''H''<sub>''t''</sub>||''G''<sub>''t''</sub>. The scheme has the rate ''R''<sub>Hirose</sub> = (''k''−''n'')/2·''n'' relative to encrypting the message with the cipher.
 
Hirose also provides a proof in the Ideal Cipher Model.
 
== See also ==
* [[WHIRLPOOL]] - A cryptographic hash function built using the Miyaguchi–Preneel construction and a block cipher similar to [[Square (cipher)|Square]] and [[Advanced Encryption Standard|AES]].
* [[CBC-MAC]], [[One-key MAC|OMAC]] and [[PMAC (cryptography)|PMAC]] - Methods to turn block ciphers into [[message authentication code]]s (MACs).
 
== References ==
* ''[http://www.cacr.math.uwaterloo.ca/hac/ Handbook of Applied Cryptography]'' by Menezes, van Oorschot and Vanstone (2001), chapter 9.
<references/>
* ''[http://www.crypto.rub.de/its_seminar_ws0809.html Building Hash Functions from Block Ciphers, Their Security and Implementation Properties]'' by Timo Bartkewitz (2009).
 
{{Cryptography navbox|hash}}
 
{{DEFAULTSORT:One-Way Compression Function}}
[[Category:Cryptographic hash functions]]
[[Category:Cryptographic primitives]]

Revision as of 04:02, 1 March 2013

In cryptography, a one-way compression function is a function that transforms a fixed-length input into a fixed-length output.[1] The transformation is "one-way", meaning that it is difficult given a particular output to compute inputs which compress to that output. One-way compression functions are not related to data compression, which by definition is invertible.

A one-way compression function

One-way compression functions are for instance used in the Merkle–Damgård construction inside cryptographic hash functions.

One-way compression functions are often built from block ciphers. Some methods to turn any normal block cipher into a one-way compression function are Davies–Meyer, Matyas–Meyer–Oseas, Miyaguchi–Preneel (single-block-length compression functions) and MDC-2/Meyer–Schilling, MDC-4, Hirose (double-block-length compression functions). These methods are described in detail further down. (MDC-2 is also the name of a hash function patented by IBM.)

Compression

A compression function mixes two fixed length inputs and produces a single fixed length output of the same size as one of the inputs. This can also be seen as that the compression function transforms one large fixed-length input into a shorter, fixed-length output.

For instance, input A might be 128 bits, input B 128 bits and they are compressed together to a single output of 128 bits. This is the same thing as if one single 256-bit input is compressed together to a single output of 128 bits.

Some compression functions have different size of the two inputs but the output usually is the same size as one of the inputs. For instance, input A might be 256 bits, input B 128 bits and they are compressed together to a single output of 128 bits. That is, a total of 384 input bits are compressed together to 128 output bits.

The mixing is done in such a way that full avalanche effect is achieved. That is, every output bit depends on every input bit.

One-way

Mining Engineer (Excluding Oil ) Truman from Alma, loves to spend time knotting, largest property developers in singapore developers in singapore and stamp collecting. Recently had a family visit to Urnes Stave Church.

A one-way function is a function that is easy to compute but hard to invert. A one-way compression function (also called hash function) should have the following properties:

  • Easy to compute: If you know an input it is easy to calculate the output.
  • Preimage-resistance: If an attacker only knows the output it should be unfeasible to calculate an input i.e. given an output h it should be unfeasible to calculate an input m such that hash(m)=h.
  • Second preimage-resistance: Given an input m1 whose output is h, it should be unfeasible to find another input m2 that has the same output h i.e. hash(m1)=hash(m2).
  • Collision-resistance: It should be hard to find any two different inputs that compress to the same output i.e. an attacker should not be able to find a pair of messages m1 ≠ m2 such that hash(m1) = hash(m2). Due to the birthday paradox (see also birthday attack) there is a 50% chance a collision can be found in time of about 2n/2 where n is the number of bits in the hash function's output. An attack on the hash function thus should not be able to find a collision with less than about 2n/2 work.

Ideally one would like the "unfeasibility" in preimage-resistance and second preimage-resistance to mean a work of about 2n where n is the number of bits in the hash function's output. Recent results indicate that in the case of second preimage-resistance this is more difficult than has been expected Template:Cn.

The Merkle–Damgård construction

Mining Engineer (Excluding Oil ) Truman from Alma, loves to spend time knotting, largest property developers in singapore developers in singapore and stamp collecting. Recently had a family visit to Urnes Stave Church.

The Merkle–Damgård hash construction. The boxes labeled [f] are a one-way compression function.

A common use of one-way compression functions is in the Merkle–Damgård construction inside cryptographic hash functions.

A hash function must be able to process an arbitrary-length message into a fixed-length output. This can be achieved by breaking the input up into a series of equal-sized blocks, and operating on them in sequence using a one-way compression function. The compression function can either be specially designed for hashing or be built from a block cipher.

The last block processed should also be length padded, this is crucial to the security of this construction. This construction is called the Merkle–Damgård construction. Most widely used hash functions, including SHA-1 and MD5, take this form.

When length padding (also called MD-strengthening) is applied attacks cannot find collisions faster than the birthday paradox (2n/2, n is the block size in bits) if the used f-function is collision-resistant.[2][3] Hence, the Merkle–Damgård hash construction reduces the problem of finding a proper hash function to finding a proper compression function.

A second preimage attack (given a message m1 an attacker finds another message m2 to satisfy hash(m1) = hash(m2) ) can be done according to Kelsey and Schneier [4] for a 2k-message-block message in time k x 2n/2+1+2n-k+1. Note that the complexity is above 2n/2 but below 2n when messages are long and that when messages get shorter the complexity of the attack approaches 2n.

Construction from block ciphers

A typical modern block cipher

One-way compression functions are often built from block ciphers.

Block ciphers take (like one-way compression functions) two fixed size inputs (the key and the plaintext) and return one single output (the ciphertext) which is the same size as the input plaintext.

However, modern block ciphers are only partially one-way. That is, given a plaintext and a ciphertext it is infeasible to find a key that encrypts the plaintext to the ciphertext. But, given a ciphertext and a key a matching plaintext can be found simply by using the block cipher's decryption function. Thus, to turn a block cipher into a one-way compression function some extra operations have to be added.

Some methods to turn any normal block cipher into a one-way compression function are Davies–Meyer, Matyas–Meyer–Oseas, Miyaguchi–Preneel (single-block-length compression functions) and MDC-2, MDC-4, Hirose (double-block-length compressions functions).

Single-block-length compression functions output the same number of bits as processed by the underlying block cipher. Consequently, double-block-length compression functions output twice the number of bits.

If a block cipher has a block size of say 128 bits single-block-length methods create a hash function that has the block size of 128 bits and produces a hash of 128 bits. Double-block-length methods make hashes with double the hash size compared to the block size of the block cipher used. So a 128-bit block cipher can be turned into a 256-bit hash function.

These methods are then used inside the Merkle-Damgård construction to build the actual hash function. These methods are described in detail further down. (MDC-2 is also the name of a hash function patented by IBM.)

Using a block cipher to build the one-way compression function for a hash function is usually somewhat slower than using a specially designed one-way compression function in the hash function. This is because all known secure constructions do the key scheduling for each block of the message. Black, Cochran and Shrimpton have shown that it is impossible to construct a one-way compression function that makes only one call to a block cipher with a fixed key.[5] In practice reasonable speeds are achieved provided the key scheduling of the selected block cipher is not a too heavy operation.

But, in some cases it is easier because a single implementation of a block cipher can be used for both block cipher and a hash function. It can also save code space in very tiny embedded systems like for instance smart cards or nodes in cars or other machines.

Therefore, the hash-rate or rate gives a glimpse of the efficiency of a hash function based on a certain compression function. The rate of an iterated hash function outlines the ratio between the number of block cipher operations and the output. More precisely, if n denotes the output bit-length of the block cipher the rate represents the ratio between the number of processed bits of input m, n output bits and the necessary block cipher operations s to produce these n output bits. Generally, the usage of less block cipher operations could result in a better overall performance of the entire hash function but it also leads to a smaller hash-value which could be undesirable. The rate is expressed in the formula .

The hash function can only be considered secure if at least the following conditions are met:

  • The block cipher has no special properties that distinguish it from ideal ciphers, such as for example weak keys or keys that lead to identical or related encryptions (fixed points or key-collisions).
  • The resulting hash size is big enough. According to the birthday attack a security level of 280 (generally assumed to be infeasible to compute today) is desirable thus the hash size should be at least 160 bits.
  • The last block is properly length padded prior to the hashing. (See Merkle–Damgård construction.) Length padding is normally implemented and handled internally in specialised hash functions like SHA-1 etc.

The constructions presented below: Davies–Meyer, Matyas–Meyer–Oseas, Miyaguchi–Preneel and Hirose have been shown to be secure under the black-box analysis.[6][7] The goal is to show that any attack that can be found is at most as efficient as the birthday attack under certain assumptions. The black-box model assumes that a block cipher is used that is randomly chosen from a set containing all appropriate block ciphers. In this model an attacker may freely encrypt and decrypt any blocks, but does not have access to an implementation of the block cipher. The encryption and decryption function are represented by oracles that receive a pair of either a plaintext and a key or a ciphertext and a key. The oracles then respond with a randomly chosen plaintext or ciphertext, if the pair was asked for the first time. They both share a table for these triplets, a pair from the query and corresponding response, and return the record, if a query was received for the second time. For the proof there is a collision finding algorithm that makes randomly chosen queries to the oracles. The algorithm returns 1, if two responses result in a collision involving the hash function that is built from a compression function applying this block cipher (0 else). The probability that the algorithm returns 1 is dependent on the number of queries which determine the security level.

Davies–Meyer

The Davies–Meyer one-way compression function

The Davies–Meyer single-block-length compression function feeds each block of the message (mi) as the key to a block cipher. It feeds the previous hash value (Hi-1) as the plaintext to be encrypted. The output ciphertext is then also XORed () with the previous hash value (Hi-1) to produce the next hash value (Hi). In the first round when there is no previous hash value it uses a constant pre-specified initial value (H0).

In mathematical notation Davies–Meyer can be described as:

The scheme has the rate (k is the keysize):

If the block cipher uses for instance 256-bit keys then each message block (mi) is a 256-bit chunk of the message. If the same block cipher uses a block size of 128 bits then the input and output hash values in each round is 128 bits.

Variations of this method replace XOR with any other group operation, such as addition on 32-bit unsigned integers.

A notable property of the Davies–Meyer construction is that even if the underlying block cipher is totally secure, it is possible to compute fixed points for the construction : for any , one can find a value of such that  : one just has to set .[8] This is a property that random functions certainly do not have. So far, no practical attack has been based on this property, but one should be aware of this "feature". The fixed-points can be used in a second preimage attack (given a message m1, attacker finds another message m2 to satisfy hash(m1) = hash(m2) ) of Kelsey and Schneier [4] for a 2k-message-block message in time 3 x 2n/2+1+2n-k+1 . If the construction does not allow easy creation of fixed points (like Matyas–Meyer–Oseas or Miyaguchi–Preneel) then this attack can be done in k x 2n/2+1+2n-k+1 time. Note that in both cases the complexity is above 2n/2 but below 2n when messages are long and that when messages get shorter the complexity of the attack approaches 2n.

Most widely used hash functions, including MD5, SHA-1 and SHA-2 use this construction.

The security of the Davies–Meyer construction in the Ideal Cipher Model was first proved by R. Winternitz.[9]

Matyas–Meyer–Oseas

The Matyas–Meyer–Oseas one-way compression function

The Matyas–Meyer–Oseas single-block-length one-way compression function can be considered the dual (the opposite) of Davies–Meyer.

It feeds each block of the message (mi) as the plaintext to be encrypted. The output ciphertext is then also XORed () with the same message block (mi) to produce the next hash value (Hi). The previous hash value (Hi-1) is fed as the key to the block cipher. In the first round when there is no previous hash value it uses a constant pre-specified initial value (H0).

If the block cipher has different block and key sizes the hash value (Hi-1) will have the wrong size for use as the key. The cipher might also have other special requirements on the key. Then the hash value is first fed through the function g( ) to be converted/padded to fit as key for the cipher.

In mathematical notation Matyas–Meyer–Oseas can be described as:

The scheme has the rate:

A second preimage attack (given a message m1 an attacker finds another message m2 to satisfy hash(m1) = hash(m2) ) can be done according to Kelsey and Schneier[4] for a 2k-message-block message in time k x 2n/2+1+2n-k+1. Note that the complexity is above 2n/2 but below 2n when messages are long and that when messages get shorter the complexity of the attack approaches 2n.

Miyaguchi–Preneel

The Miyaguchi–Preneel one-way compression function

The Miyaguchi–Preneel single-block-length one-way compression function is an extended variant of Matyas–Meyer–Oseas. It was independently proposed by Shoji Miyaguchi and Bart Preneel.

It feeds each block of the message (mi) as the plaintext to be encrypted. The output ciphertext is then XORed () with the same message block (mi) and then also XORed with the previous hash value (Hi-1) to produce the next hash value (Hi). The previous hash value (Hi-1) is fed as the key to the block cipher. In the first round when there is no previous hash value it uses a constant pre-specified initial value (H0).

If the block cipher has different block and key sizes the hash value (Hi-1) will have the wrong size for use as the key. The cipher might also have other special requirements on the key. Then the hash value is first fed through the function g( ) to be converted/padded to fit as key for the cipher.

In mathematical notation Miyaguchi–Preneel can be described as:

The scheme has the rate:

The roles of mi and Hi-1 may be switched, so that Hi-1 is encrypted under the key mi. Thus making this method an extension of Davies–Meyer instead.

A second preimage attack (given a message m1 an attacker finds another message m2 to satisfy hash(m1) = hash(m2) ) can be done according to Kelsey and Schneier[4] for a 2k-message-block message in time k x 2n/2+1+2n-k+1. Note that the complexity is above 2n/2 but below 2n when messages are long and that when messages get shorter the complexity of the attack approaches 2n.

Hirose

The Hirose double-block-length compression function

The Hirose[7] double-block-length one-way compression function consists of a block cipher plus a permutation p. It was proposed by Shoichi Hirose in 2006 and is based on a work[10] by Mridul Nandi.

It uses a block cipher whose key length k is larger than the block length n, and produces a hash of size 2n. For example, any of the AES candidates with a 192- or 256-bit key (and 128-bit block).

Each round accepts a portion of the message mi that is kn bits long, and uses it to update two n-bit state values G and H.

First, mi is concatenated with Hi−1 to produce a key Ki. Then the two feedback values are updated according to:

  • Gi = EKi(Gi−1) ⊕ Gi−1
  • Hi = EKi(p(Gi−1)) ⊕ p(Gi−1).

p(Gi−1) is an arbitrary fixed-point-free permutation on an n-bit value, typically defined as

  • p(x) = xc

for an arbitrary non-zero constant c. (All-ones may be a convenient choice.)

Each encryption resembles the standard Davies–Meyer construction. The advantage of this scheme over other proposed double-block-length schemes is that both encryptions use the same key, and thus key scheduling effort may be shared.

The final output is Ht||Gt. The scheme has the rate RHirose = (kn)/2·n relative to encrypting the message with the cipher.

Hirose also provides a proof in the Ideal Cipher Model.

See also

References

  1. Handbook of Applied Cryptography by Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone. Fifth Printing (August 2001) page 328.
  2. Ivan Damgård. A design principle for hash functions. In Gilles Brassard, editor, CRYPTO, volume 435 of LNCS, pages 416–427. Springer, 1989.
  3. Ralph Merkle. One way hash functions and DES. In Gilles Brassard, editor, CRYPTO, volume 435 of LNCS, pages 428–446. Springer, 1989.
  4. 4.0 4.1 4.2 4.3 John Kelsey and Bruce Schneier. Second preimages on n-bit hash functions for much less than 2n work. In Ronald Cramer, editor, EUROCRYPT, volume 3494 of LNCS, pages 474–490. Springer, 2005.
  5. John Black, Martin Cochran, and Thomas Shrimpton. On the Impossibility of Highly-Efficient Blockcipher-Based Hash Functions. Advances in Cryptology -- EUROCRYPT '05, Aarhus, Denmark, 2005. The authors define a hash function "highly efficient if its compression function uses exactly one call to a block cipher whose key is fixed".
  6. John Black, Phillip Rogaway, and Tom Shrimpton. Black-Box Analysis of the Block-Cipher-Based Hash-Function Constructions from PGV. Advances in Cryptology - CRYPTO '02, Lecture Notes in Computer Science, vol. 2442, pp. 320-335, Springer, 2002. See the table on page 3, Davies–Meyer, Matyas–Meyer–Oseas and Miyaguchi–Preneel are numbered in the first column as hash functions 5, 1 and 3.
  7. 7.0 7.1 S. Hirose, Some Plausible Constructions of Double-Block-Length Hash Functions. In: Robshaw, M.J.B. (ed.) FSE 2006, LNCS, vol. 4047, pp. 210-225, Springer, Heidelberg 2006.
  8. Handbook of Applied Cryptography by Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone. Fifth Printing (August 2001) page 375.
  9. R. Winternitz. A secure one-way hash function built from DES. In Proceedings of the IEEE Symposium on Information Security and Privacy, p. 88-90. IEEE Press, 1984.
  10. M. Nandi, Towards optimal double-length hash functions, In: Proceedings of the 6th International Conference on Cryptology in India (INDOCRYPT 2005), Lecture Notes in Computer Science 3797, pages 77–89, 2005.

Template:Cryptography navbox