Great video! Btw, in the beginning you said that whatever bit length your input has, the padded message length would be the next 512 multiple. That is actually not fully true. That would only be true if the length of the input is smaller or equal to n*512 - 65 (if equal then k = 0). so if e.g. the input length is 960, the padded message will not be 1024 bits long, bc we would then have negative solution for k. But we cannot have a negative solution for k, so that’s why we would need to go with 1536.
Thank you so much for this video, for going through the trouble of understanding how it works and breaking it down into something meaningful! Having the example is SUPER helpful. Exactly what I was looking for.
Oh my dear god, thanks for going through this insanity :D You're making it so much better than having to go through the whole paper itself. Same goes for Chaum's video! And I do enjoy the music and the humor! :)
Thanks very much for the video!! I had to pause several times but I now understand better the algorithm. I also like that you show screenshots of the standard, it is a gentle introduction. I have some suggestions: - Use namespaced fonts. This avoid the misalignment of 10:34 - Do you make the animations using Manim? In this case would be great that you share the source code :)
Thanks for making this video. It was nice to see all the steps actually laid out and what a crazy series of mathematical knots the algorithm ties the input data up in. (Also, for future videos, it would be worth normalizing audio volume up, mastering up, or running some different compression).
Not to be "that guy" but in your initial values for RedBlockBlue, you have different values for the two capital Bs. Do you remember if you used the values as shown for your calculations or were the correct values used?
Great explanation. The easiest to understand from what Ive seen on RU-vid so far. But I dont quite get how the looping works... Are all the iterations added to eachother at the end?
What will happen if the text we are trying to hash is 504 bits long? You don't have 64 bits to represent the length of the text in binary to be able to add to the end of the binary for it to be 512 bits in length. Your hash will instead be 568 bits long.
Thanks for the explainations. However the music is very distracting. If I want to listen to music while learning I would just have a video in the background.
If you do the bitwise addition of Sigma0 shown at 07:24 then the result I found is 00000011100011111110100110110000. Would you please explain if there is sth wrong ?
Yep, you're correct. I believe I used the correct sum going forward though so the error doesn't carry forward through the rest of the steps. Good spot.
7:24 when making addition modulo 2 for sigma0: Is the result shown correct? ("00000001 10001111 11101001 00000101") In my calculation it should be ("00000011 10001111 11101001 10110000")
Why wouldn't you say modulo to 32nd? How would modulo prevent it from being greater than 32 bits? That is the only reason for the modulo portion, correct?
3:59 we still doing stuff allways same. we can reverse. we not even need calculate those if it allwats start 2 then 3 then 5. we allways have those "hashes"
Yes, as a hashing function is many-to-one relationship, and involves a finite number of outputs given an infinite domain - if you are interested in this more, you might want to read up on hashing functions, hash maps and most importantly, how a function deals with "collisions" - which are what you outlined, hashes that are the same but given different outputs. :)
what if some one uses the final hash and applies these all same operation in a reverse manner and get to the initial input?? (i know doing these operation in reverse will require hell lot of brains but this might be possible ?)
10:18 well using prime number those are allways same and function ch result same thing or is efg change every step. hope fully. make no sende otherwise LOL
Do you mean: Given a 256 bit output, find the input? No this is not possible, SHA256 (as with all cryptographic hash functions) is a 'one-way' function' meaning its impossible to invert (go google those terms and look at wiki if you're unfamiliar). To convince yourself this is true just look at the inner workings of the algorithm: it's composed of several 'mini' one-way functions such as bit-wise addition mod 2 (i.e. we pass the bits through an XOR gate) if the output is 1 then the input is either 01 or 10.. we can't even invert this function! Same goes for 'shift' function in the video, SHIFT3(11011100) = 00011011... those first 3 bits of the input could be anything and still give same output (b/c they're set to zero regardless) so we cannot invert this mini function either
@@redblockblue thank you for the response. I had a challenge to find a string that returns something with the substring b00da when passed through the Sha256. I'm no criptographer, I had to brute force it
Yep, although that may sound dodgy it’s not an issue, the algorithm is completely described in detail and any ‘random’ numbers are generated in a natural way (fractional part of sqrt(2), etc.) and not just ‘hey, use *this* ‘random’ number. They have planted back doors into publicly used algorithms before though, watch the vid in description from computerphile
Question: at 7.23, how can you perform an xor on three inputs? There are only two bits available. I tried doing an xor function on the first two 32 byte numbers and then that output and the final input, and it still did not yield a correct answer??
When it says (t-15) or (t-7) t is the loop from 16-63. t is going through the loop, when solving w16, t is 16 so w16 -15 = w1, if its w38 for example then its w38-15 = w23 if u get it?
If the n is number of blocks youre talking about then you have more than one block, follow the same steps just in the final when youre adding h0 = h0 +a Then you take h0 from the previous block and use the new a from the next block
I didn't skip anything, I gave example of going through entire loop once and then you repeat.. why would I make the video longer by going through same loop again?
5:31 real messy LOL bcoz you explain it wrong. could just say ROR 7 times and make animation it roll 7 and not high light this and this if all they shift LOL now 18 ROR is easy. then 3 is easy but zero 3 after thats like without carry AND this is first time when math backward become cracking part we not know what those 3 bits was when they erased LOL so we need do 10 diff all plausable combo but from this point not matter LOL. what comes next i not yet reverse think lol