MultiversX Tracker is Live!

Question about the SHA-1 Collision

Bitcoin Reddit

More / Bitcoin Reddit 168 Views

Hi. I'm using Jimmy Song's book and there is something I do not understand. I am working through the SHA-1 collision in the end of chapter 6 on Script:

Here is the ScriptPubKey:

6E - 2DUP

87 - EQUAL

91 - NOT

69 - VERIFY

A7 - SHA1

7C - SWAP

A7 - SHA1

87 - EQUAL

I'll assume that there are two values there that we can call x and y. The top of the stack is at the end of the list.

x, y

2DUP(x,y) = (x, y, y, y)

EQUAL(x, y, y, y) = (x, y, 1)

NOT(x, y, 1) = (x, y, 0)

VERIFY(x, y, 0) -> FAIL!

SHA1(x, y) = (x, SHA1[y])

SWAP(x, SHA1[y]) = (SHA1[y], x)

SHA1(SHA1[y], x) = (SHA1[y], SHA1[x])

EQUAL(SHA1[y], SHA1[x]) -> Will be true if you find the collision.

I do not understand what the four commands are doing at the beginning.

EDIT: I made a mistake on 2DUP.

x, y

2DUP(x,y) = (x, y, x, y)

EQUAL(x, y, y, y) = (x, y, 0) #Check that the two values are unequal

NOT(x, y, 1) = (x, y, 1)

VERIFY(x, y, 1) -> PASS!, will fail if they are equal.

SHA1(x, y) = (x, SHA1[y])

SWAP(x, SHA1[y]) = (SHA1[y], x)

SHA1(SHA1[y], x) = (SHA1[y], SHA1[x])

EQUAL(SHA1[y], SHA1[x]) -> Will be true if you find the collision.


Get BONUS $200 for FREE!

You can get bonuses upto $100 FREE BONUS when you:
πŸ’° Install these recommended apps:
πŸ’² SocialGood - 100% Crypto Back on Everyday Shopping
πŸ’² xPortal - The DeFi For The Next Billion
πŸ’² CryptoTab Browser - Lightweight, fast, and ready to mine!
πŸ’° Register on these recommended exchanges:
🟑 Binance🟑 Bitfinex🟑 Bitmart🟑 Bittrex🟑 Bitget
🟑 CoinEx🟑 Crypto.com🟑 Gate.io🟑 Huobi🟑 Kucoin.



Comments