Feistel Cipher - Computerphile

  Рет қаралды 244,593

Computerphile

Computerphile

4 жыл бұрын

One of the most elegant solutions for cryptography. Dr Mike Pound explains one of his most favourite ciphers.
/ computerphile
/ computer_phile
This video was filmed and edited by Sean Riley.
Computer Science at the University of Nottingham: bit.ly/nottscomputer
Computerphile is a sister project to Brady Haran's Numberphile. More at www.bradyharan.com

Пікірлер: 290
@willful759
@willful759 4 жыл бұрын
mike: "even if f is not reversable, that still decrypts it" me: WHAT!? mike: what?
@martanvanderstraaten8448
@martanvanderstraaten8448 4 жыл бұрын
ivan pineda i mean that is because of the bitwise addition (xor). It actually makes quite a lot of sense.
@therealquade
@therealquade 4 жыл бұрын
@@martanvanderstraaten8448 how is bitwise xor going to find coprime factors?! that's madness
@martanvanderstraaten8448
@martanvanderstraaten8448 4 жыл бұрын
therealquade that’s not how it works. It would add the hash bitwise to the thing you’d want to encrypt. If you then calculate the hash again and add it bitwise again (x-or) you added the same thing bitwise. Bitwise Adding is mod 2, so adding something 2x is adding something 2 mod 2 = 0 times. That’s why F can be anything.
@YourMJK
@YourMJK 4 жыл бұрын
therealquade Did you watch the video? The reason is because a ⊕ b ⊕ b = a (since XOR is associative and b ⊕ b = 0)
@therealquade
@therealquade 4 жыл бұрын
@@martanvanderstraaten8448 if I have 2 different 1 way hash functions, which rely on prime numbers and common factors for N-Root, because exponents are faster to calculate than roots, How is, in any system, Running that hash function twice, Ever going to reverse itself? The XOR's are going to be reversed, but the hash functions won't be.
@charaniy7786
@charaniy7786 4 жыл бұрын
Dr. Mike Pound, the man who can make anyone fall in love with Computer Science. Agree?
@Diggnuts
@Diggnuts 4 жыл бұрын
Actually, this made me extremely appreciative of the sociopolitical constructs in the late 16th century historical context of agriculture in central Europe.... Dunnu why, but it did!
@damientownsend269
@damientownsend269 4 жыл бұрын
Don’t pull that “agree” bs please.
@ilovepudding7873
@ilovepudding7873 4 жыл бұрын
Damien Townsend agree
@damientownsend269
@damientownsend269 4 жыл бұрын
ilovepudding 🤬🤪😖🤮
@ctx4241
@ctx4241 3 жыл бұрын
Have I had this guy on uni, I might have masters right now. Instead, we were learning f@cking wordpress 😱.
@lawrencedoliveiro9104
@lawrencedoliveiro9104 4 жыл бұрын
2:56 The key lies in observing that each half of the original data block does not go *through* the F-block to get to the next stage. The only use of the output of the F-blocks is to xor with data blocks. And xor is reversible: xoring with the same bitstream twice gives you back the original bitstream. That’s why the same sequence of bit-mashing works for both encryption and decryption. It really is that simple.
@profdaveb6384
@profdaveb6384 4 жыл бұрын
Thank you!
@thesvodnik
@thesvodnik 4 жыл бұрын
Wow, now it makes sense from a theoretical standpoint as well. Great explanation.
@q_5ta871
@q_5ta871 Жыл бұрын
Absoulotly lovly thx for sharing
@darshanex
@darshanex 4 жыл бұрын
Hi there, non native English speaker here - love this channel - one small suggestion if you can please provide English subtitles that would be awesome thank you!
@Jamie-st6of
@Jamie-st6of 4 жыл бұрын
As a native English speaker, I need subtitles as well! It's honestly unacceptable for such a large channel to have no subtitles.
@MaxDiscere
@MaxDiscere 4 жыл бұрын
As a non-native speaker I understand everything. It's just a little accent just get better at english then you'll understand it with ease
@darshanex
@darshanex 4 жыл бұрын
@@MaxDiscere Yes I get that, but it's the content that featured in the videos have some words that you have to listen twice to understand sometimes.
@lorddraagon
@lorddraagon 4 жыл бұрын
As an Alien, I need subtitles as well !
@caw25sha
@caw25sha 4 жыл бұрын
@@Jamie-st6of Subtitles are automatically generated by KZfaq. Can uploaders choose whether or not to have them?
@desmondbrown5508
@desmondbrown5508 4 жыл бұрын
This is a very cool algorithm. I absolutely love Mike's response to the fact it reverses one-way hashes at 2:54 - 3:07.
@ehtuanK
@ehtuanK 4 жыл бұрын
It doesn't reverse them, it eliminates them via xor. There's a difference, but for some reason many people in the comments don't seam to get it.
@ZT1ST
@ZT1ST 3 жыл бұрын
@@ehtuanK The thing that surprises people is that the cipher is reversable, even if the hashes themselves are one-way.
@truppelito
@truppelito 4 жыл бұрын
Video was too short for such an interesting concept!
@adamspihlman9665
@adamspihlman9665 4 жыл бұрын
I want someone to talk about me the way Dr. Pound talks about Feistel Ciphers
@ilovepudding7873
@ilovepudding7873 4 жыл бұрын
Dont we all
@jonathanblackwell42
@jonathanblackwell42 4 жыл бұрын
If you heard a boom...that was my head exploding.
@fllthdcrb
@fllthdcrb 4 жыл бұрын
IIUC, it doesn't even have to be a single function; you could even use totally different functions for the "rounds", and it would still be reversible. In fact, the same function with different keys can already be seen as different functions from the point of view of the Feistel network.
@Arwahanoth
@Arwahanoth 4 жыл бұрын
All you need to do is reverse the order of applied functions like the part of the key (k1-F1, k2- F2) => cipher => (k2-F2, k1-F1) right ?
@fllthdcrb
@fllthdcrb 4 жыл бұрын
@@Arwahanoth Exactly. Not sure how useful it would be, but it should be possible, at least. Heck, even the key is optional. Not that you'd want to leave _that_ out; otherwise, it's no longer a proper cipher, just an obfuscation function, but again, it can be done.
@BulletHellspawn
@BulletHellspawn 4 жыл бұрын
Love this dude
@KanaalMTS
@KanaalMTS 4 жыл бұрын
Man love is real
@jensdanielandersen
@jensdanielandersen 4 жыл бұрын
I just started learning about the Feistel Cipher structure this week in my bachelor security program for college and was a bit confused reading about it in my textbook. After watching this, it makes a lot more sense. Thanks again Mike, you are a great teacher.
@totlyepic
@totlyepic 4 жыл бұрын
Always excited for a Mike Pound video. Always excited for a crypto video. You've given me a happy morning.
@quibster
@quibster 4 жыл бұрын
can't unsee 'rofl' in R⊕F(L
@santizdr
@santizdr 6 ай бұрын
The one and only video that explains Feistel Networks in a simple but understandable way. Thnx so much
@ThisIsAli_Off
@ThisIsAli_Off 7 ай бұрын
This is the first in my life that my exam preparation for uni leads me to a channel that I already used to watch in my free time and that genuinely excites me. First time I want to "learn" something instead of memorize how it works for the sake of the exam. Damn.. I am shocked
@danhorus
@danhorus 4 жыл бұрын
A short video so rich with information. I really enjoyed learning about this.
@anonymousvevo8697
@anonymousvevo8697 Жыл бұрын
i can listen to this guy talking all day long, amazing video never gets old thanks
@srividyakrishnakumar6895
@srividyakrishnakumar6895 3 жыл бұрын
That was such a wonderful video! It's always so fun and interesting watching Dr. Mike Pound's videos. @Computerphile, would love it if you could organize all the crypto videos into a playlist.
@helloarigato
@helloarigato 4 жыл бұрын
Love Dr. Pound! I would happily watch a video of him reading the Mr. Wimpy menu.
@zarmmraz5267
@zarmmraz5267 3 жыл бұрын
you just saved my cyber security lectures. dude I love you
@preferredimage
@preferredimage 4 жыл бұрын
1:08 "It's a structure" :)
@riccardoorlando2262
@riccardoorlando2262 4 жыл бұрын
Handwaving when explaining scientific concepts is mandatory. They won't give you a PhD if you can't handwave in a sufficiently cryptic yet empathetic manner.
@thenasadude6878
@thenasadude6878 4 жыл бұрын
They HAND you your Ph. D. after all
@XBrainstoneX
@XBrainstoneX 4 жыл бұрын
Another cool thing about this IMO is the reason why XOR is reversible: On a single bit, the XOR function is the same as addition mod 2. Therefore, taking XOR of two bitstrings can be seen as addition in the vector space (F_2)^n. This is the reason why the XOR function is associative, commutative and that x XOR x = 0 for all bitstrings x. And that is also why Mike uses the plus symbol for XOR in his drawing.
@misterhat5823
@misterhat5823 4 жыл бұрын
I've always seen XOR as selective bit inversion. That makes it very easy to see why it's reversible.
@TheSam1902
@TheSam1902 4 жыл бұрын
As always, videos featuring Dr Mike Pound are super duper interesting ! Thank you for your time :)
@55cancri_e76
@55cancri_e76 2 жыл бұрын
wow thank you so much it is really amazing how you explain it in a very simple way. Currently Im taking Applied Cryptography in the University it is my third year and I was struggling with this topic but NOW it's my favourite. Thanks again
@robertsedgewick1266
@robertsedgewick1266 3 жыл бұрын
Brilliant work as usual - you always manage to simplify these complex security concepts!
@treyquattro
@treyquattro 4 жыл бұрын
Mike Pound is one of those things in cryptography where you just think, "Wow, he's very clever". It's not often I click like before watching a video, but when I do it's for Dr. Mike
@HeinusHoratius
@HeinusHoratius 4 жыл бұрын
@MichaelKingsfordGray Yes. And what of it? We're proud Pound-groupies! 😂
@bhishmaacharya7535
@bhishmaacharya7535 4 жыл бұрын
This channel shares amazing contents. One thing I can't take from their video is sound of pen against paper.
@FormulaXFD
@FormulaXFD 4 жыл бұрын
I always love this stuff.Thanks for making these!
@ForTheNerds
@ForTheNerds 4 жыл бұрын
More and more I'm getting into ciphers to begin with was for cybersecurity research but now its mostly because it's so damn interesting. Love this, thank you. Very clever.
@gabrielamorim8316
@gabrielamorim8316 3 жыл бұрын
Thanks for the help. Passed my coursework because of this video =)
@Demki
@Demki 4 жыл бұрын
Maybe it's because I've been dealing with group theory a lot lately, but another way to see this, is if we denote applying a single round as r and swapping left and right as s, and using juxtaposition for function composition, we first prove that srsr=id (=the identity function, this is proven directly from the properties of xor), so srs=r^(-1). Now noticing that s=s^(-1) we have that the mapping g(x)=sxs is a group homomorphism. Now we actually have different rounds, so lets denote them r1,r2... and so on, and indeed srk...r2r1 sr1r2...rk=g(rk...r2r1) r1...rk=g(rk)...g(r2)g(r1) r1r2...rk=rk^(-1)...r2^(-1)r1^(-1) r1r2...rk=id
@lawrencedoliveiro9104
@lawrencedoliveiro9104 4 жыл бұрын
OK, here’s a fun thought: how would you generalize this idea to a base other than 2? For example, base-26, using the letters of the (uppercase, unaccented) English alphabet? The obvious answer is to do arithmetic modulo 26, assigning numerical values like A = 0 ... Z = 25. The symmetry of xor would no longer apply, so you would need separate encryption and decryption blocks: the encryption blocks would use addition in place of xor, while the decryption ones would subtract.
@Demonslay335
@Demonslay335 4 жыл бұрын
This is so much easier to understand than just reading thru the wiki page, thanks! Been studying a lot of block cipher internals and never quite grasped this simple concept before for some reason - until now.
@issam2901
@issam2901 4 жыл бұрын
Writing with a highlighter like a maniac 😂😂😂
@Furiends
@Furiends 4 жыл бұрын
The crossing x-ors ensure that information can be reversed via what ever algorithm is used in between.
@parthvasoya3562
@parthvasoya3562 3 жыл бұрын
man what an awesome explanation
@LVusaAPI
@LVusaAPI Жыл бұрын
Brilliant job 👍
@biswajeetbehera2912
@biswajeetbehera2912 Жыл бұрын
One of the best explanations on the topic feistel ciphers.....😇
@georgelza
@georgelza 4 жыл бұрын
Love his presentations... makes very complex subjects so easy to follow
@leonhardeuler9839
@leonhardeuler9839 4 жыл бұрын
Yet another cryptography topic explained flawlessly by Mike.
@treyquattro
@treyquattro 4 жыл бұрын
add a thumb for yourself, Leonhard
@TheMasonX23
@TheMasonX23 4 жыл бұрын
Amazing video as always! Dr Mike Pound never disappoints (ay-oh) with his enthusiasm for computer science, and the Feistel Cipher is incredible in how it "magically" reverses things. Dr Brailsford really explained XOR well in another video, for anyone lost in the dark.
@Andrew90046zero
@Andrew90046zero 4 жыл бұрын
3:04 kinda random, but that was the best sounding "mind blown" sound I've ever heard.
@rgbplaza5945
@rgbplaza5945 4 жыл бұрын
I loved it too - I've come back just to hear it again
@JMezzy02
@JMezzy02 2 жыл бұрын
Super helpful. Thank you!
@mheermance
@mheermance 4 жыл бұрын
Wow, that is amazing.
@DaveWhoa
@DaveWhoa 4 жыл бұрын
why do you still have printing paper with spool-holes
@carlosmspk
@carlosmspk 4 жыл бұрын
If we did an extra round, would we still need to switch in the end?
@mohammedhafiz8039
@mohammedhafiz8039 4 жыл бұрын
awesome !! I love that
@aliyildirim6134
@aliyildirim6134 2 жыл бұрын
Mike brought you here I know, love Mike.
@BytebroUK
@BytebroUK 4 жыл бұрын
Could we maybe do another vid of this; about cryptanalysis of Feistel networks? Maybe specifically DES and AES256, and see how that pans out :) ? There are some really interesting papers out there.
@Czeckie
@Czeckie 4 жыл бұрын
there really should be a computerphile playlist with all the crypto stuff
@malikkashifsaeed1938
@malikkashifsaeed1938 2 жыл бұрын
who is the man behind the camera? he listens to the lec very carefully and asks valid and authentic questions.
@dingo_prod
@dingo_prod 4 жыл бұрын
A link for an Xor explaination video??
@olamarvin
@olamarvin 4 жыл бұрын
The Pound function: A video with Dr Mike Pound is posted -> I click it.
@dylankrejci9965
@dylankrejci9965 5 ай бұрын
Be careful tho - that function isn't CPA secure!
@helloarigato
@helloarigato 4 жыл бұрын
I love this
@gaborm4767
@gaborm4767 3 жыл бұрын
Can you please make a video about DES? I would like to understand how is 6to4 bit substitution reversible. Thanks.
@ABDULKARIMHOMAIDI
@ABDULKARIMHOMAIDI 8 ай бұрын
Thanks Man !!
@flagpoleeip
@flagpoleeip 4 жыл бұрын
Where do you get that paper?
@RawPeds
@RawPeds 4 жыл бұрын
So if I have a hash function and I put it into a Feistel Cipher I can get back the original message?
@anorld80
@anorld80 2 жыл бұрын
What are we doing in this Function, F(Rn-1,Kn) are we ANDing or XORing R with key before we XOR function result with Ln-1
@sebastianzander87
@sebastianzander87 4 жыл бұрын
Does the output size of the F function matter and does its output size has to equal the size of the input blocks? I am asking because of the XOR operation. I don't know if or how you can xor a larger left block with a (possibly) smaller F-processed right block. Say we use "SHA-256" and we receive 256 bits from the F function; would we then loop over the left block in 256 bit increments and perform the XOR and optionally pad the left block input so it is a multiple of 256 bits? Or do you have to have a block size smaller than or equal to the 256 bits in my example? I have not tried it myself but I sure am going to try it soon in C or Python.
@romajimamulo
@romajimamulo 4 жыл бұрын
This method only works if they're all the same size, unfortunately he didn't get into how to handle them being different sizes
@misterhat5823
@misterhat5823 4 жыл бұрын
@@romajimamulo Why wouldn't it work. You can pad or truncate the output of F. F can be anything. Even F=0 works. (Not very secure, but it works.)
@romajimamulo
@romajimamulo 4 жыл бұрын
@@misterhat5823 don't ask me, I don't know
@user-be1gi9xm8m
@user-be1gi9xm8m 4 жыл бұрын
The video in excellent! One question. On DES cipher, there are 16 rounds, which means 16 keys for any round any 16 functions. Are the functions are different between rounds? (The question regards to DES and not to Feistel)
@stanrogers5613
@stanrogers5613 3 жыл бұрын
No, in DES, the function (an XOR with a rotation of a subkey, then a sub-block substitution box of the output of that, followed by a permutation of the entire block) is the same for each round. The only difference between rounds would be the initial expansion of the data block from 32 bits to 48 bits on encryption (prior to round 1), and the collapse back to 32 bits from 48 bits on decryption (after round 16).
@zackmack7145
@zackmack7145 3 жыл бұрын
why the final operation in a Feistel cipher is an additional swap operation? can someone explain for me quick
@karimabdulahi502
@karimabdulahi502 4 жыл бұрын
How did you know we had a lecture about this this week?
@abdelrhmanahmed1378
@abdelrhmanahmed1378 3 жыл бұрын
Round func can be anything right?Iike just simple ceaser cipher?
@venkoshop4124
@venkoshop4124 Жыл бұрын
3:04 that "boof" sound is soooooooooooo satisfyinggggggg
@caw25sha
@caw25sha 4 жыл бұрын
Is the verb of XOR xorcise?
@heisenmountainb6854
@heisenmountainb6854 4 жыл бұрын
did you get any of that?
@Synthetica9
@Synthetica9 4 жыл бұрын
I just had a lecture about this (by one of the inventors of AES) today, what are the odds?
@maryjohansson5542
@maryjohansson5542 10 ай бұрын
Horst Feistel was my dear Uncle. A great man!
@stevewilsonraj
@stevewilsonraj Жыл бұрын
thanks a lot !!!
@AboveEmAllProduction
@AboveEmAllProduction 4 жыл бұрын
I see Mike i upvote
@LifelessNerd
@LifelessNerd 4 жыл бұрын
MIKEEEEEEEEE
@devotee9606
@devotee9606 4 жыл бұрын
Hay Mike Can you please explain the code of this cipher by showing us real example.
@homomorphic
@homomorphic 4 жыл бұрын
Thanks for covering feistel networks. I would have expected it to be one of the first things that this channel ever covered, but better late than never 😃
@Venistro
@Venistro 4 жыл бұрын
How is it reversable, even if f is for example a not reversable hash function?
@misterhat5823
@misterhat5823 4 жыл бұрын
Because F can be anything. Go back through the analysis with F=0 as a function. It still works just fine.
@rishavtiwari2017
@rishavtiwari2017 Жыл бұрын
Can you please make a video on ROUND FUNCTION? It would be great if you do it
@pdrg
@pdrg 4 жыл бұрын
Damn that's clever
@abidhossain8074
@abidhossain8074 4 жыл бұрын
mike: "even if f is not reversible, that still decrypts it" me: what? mike: what?
@jonasgastecker8732
@jonasgastecker8732 4 жыл бұрын
this is madness
@gregwochlik9233
@gregwochlik9233 4 жыл бұрын
Very nicely explained. I have worked with DES cryptography earlier in my career.
@Ko_Zilek
@Ko_Zilek 4 жыл бұрын
Could the Feistel Cipher the be divided more than just half; Say Left Middle Right. Or First 1/4 . . . Fourth 1/4. Or Etc. Would, could it still work? Like I am thinking it could, if it's structured the same way, like. For Left Middle Right; First layer would have the middle and right have a function done, then both Middle and Right are both xored with Left, Left is moved to the Right side Middle to the Left side Right to the Middle etc. Hmmm... I have no idea. This is hard to visualize in text lol. Seems like it should work?
@Tsudico
@Tsudico 4 жыл бұрын
I think it might make the cypher more complex, but might be possible. One thing you might be able to do is use a feistel cipher as the functions in the larger feistel cipher, so do it recursively.
@jaaval
@jaaval 4 жыл бұрын
As long as each step retains what goes in to the round functions then it is reversible in theory. if you want the same network to reverse it you have to think about which block goes where very carefully so that correct blocks get xorred.
@deathtotruthers1
@deathtotruthers1 4 жыл бұрын
Could someone explain the role of XOR here? My understanding is that XOR returns true if two inputs are different, and false otherwise. How does it work in this cypher? Wouldn't L ⊕ F(R, k1) just return true? Am I missing how XOR is being used in this context?
@stanrogers5613
@stanrogers5613 3 жыл бұрын
The XOR is bitwise, not a logical XOR of the "truthiness" of the entire value.
@Stierguy1
@Stierguy1 4 жыл бұрын
neat involution
@catcatcatcatcatcatcatcatcatca
@catcatcatcatcatcatcatcatcatca 4 жыл бұрын
How does XOR-function work? you should add video about it as a card. Or then my cards aren't working, in which case adding it to the description or in comments would be nice.
@ITR
@ITR 4 жыл бұрын
Xor takes each bit and compares it to another, if they are not the same, it outputs the bit 1, otherwise 0. So the truth table is something like: 0 xor 0 => 0 0 xor 1 => 1 1 xor 0 => 1 1 xor 1 => 0
@furrane
@furrane 4 жыл бұрын
You can remember xor stand for "exclusive or" mean one or the other, but not both. That's how I do it.
@alimanski7941
@alimanski7941 4 жыл бұрын
@@ITR You have it the other way around: if they are *not* the same, it outputs True (or 1), otherwise False (0)
@ITR
@ITR 4 жыл бұрын
@@alimanski7941 Thanks, forgot the not, fixed now.
@DavidvanDeijk
@DavidvanDeijk 4 жыл бұрын
"or but not both"
@crystalspeed7214
@crystalspeed7214 4 жыл бұрын
I kinda wish he did a example with letters and functions cause while this is cool as a high schooler this kinda broke my brain
@mikerope5785
@mikerope5785 Жыл бұрын
The safest encryption keys are not stored on a computer for the purposes of encryption, but blend in to a normal life. And are mutually agreed upon in person. They are never written to disk or on non-edible paper.
@annagiordano8709
@annagiordano8709 3 жыл бұрын
why if we use only one round the feistel network is not secure?
@ishanlamsal7504
@ishanlamsal7504 2 жыл бұрын
i have been trying for 3 days to understand this for exam, and here I go after 3 days and 8 mins I finally understand. Thank you so much
@LemonChieff
@LemonChieff 4 жыл бұрын
Ok I'm not even gonna begin to pretend I understood most of this but. Would it be correct to assume that a Feistel Cipher is a symmetric key algorithm? I mean since the encryption and decryption function use the same exact algorithm…
@aoe9857
@aoe9857 4 жыл бұрын
Yes it is, not because it uses the same algorithm, but because it uses the same key (or rather set of keys).
@LemonChieff
@LemonChieff 4 жыл бұрын
@@aoe9857 Bad semantics on my part. I said "algorithm" when what I really meant was "function" in this case "F". Which indeed isn't the same. Thank you for the clarification. :)
@fchurca
@fchurca 4 жыл бұрын
Not quite; it is if you use the same subkey for each stage, but if you use different subkeys you have to turn the order around, effectively having a different key for decription and encryption. Even if it's trivial to derive each one from the other, they are different keys. For example: You use a 32-bit key 0xDEADBEEF for encrypting 16-bit blocks, with two rounds. K1 would be 0xDEAD and K2 would be 0xBEEF. For decryption, you would use the same algorith but with 0xBEEF for K1 and 0xDEAD for K2. The decryption key would be 0xBEEFDEAD, different to the encryption key, so it would be an asymmetric key. It could be argued that the encryption and decryption keys can be derived from each other trivially, but the key is that they are different keys. This comment clearly not sponsored by PETA.
@LemonChieff
@LemonChieff 4 жыл бұрын
@@fchurca I… I really can't focus without my adhd meds but I'm sure this makes sense. " The decryption key would be 0xBEEFDEAD, different to the encryption key, so it would be an asymmetric key." I mean… That's not what I mean. If A encrypts "Hello" with that function F, B can only decrypt it using the same function F and if either A or B were to encrypt "Hello" the output of the encryption scheme would be the same, wouldn't it?
@g2g591
@g2g591 4 жыл бұрын
@@LemonChieff if the rounds had the exact same F and the exact same key then it would be symmetrical. I think.
@DavidAspden
@DavidAspden 4 жыл бұрын
Love the videos but can't help link Mike and James McAvoy in my head.
@liquathrushbane2003
@liquathrushbane2003 4 жыл бұрын
Top banana - Mike Pound !
@dannylarsen635
@dannylarsen635 4 жыл бұрын
so did you crack or create the zodiac cipher?
@hikaroto2791
@hikaroto2791 4 жыл бұрын
can you use cipher to reverse a ratchet?
@mrkrisey4841
@mrkrisey4841 2 жыл бұрын
I cant believe that you say that if "f" is not reversable, it still decrypts it. What if I used like SHA256, would it still work?
@Vogel42
@Vogel42 4 жыл бұрын
is the last step necessity ? RL -> LR
@theohenson7283
@theohenson7283 4 жыл бұрын
I assume it is needed so that the output can be reversed. If the last step wasn't there you couldn't decrypt by running it again.
@TheJayCZ
@TheJayCZ 4 жыл бұрын
Not necessarily, but then you'd need to flip a few things around in the decryption algorithm, hence breaking the symmetry.
@theohenson7283
@theohenson7283 4 жыл бұрын
@@TheJayCZ yeah that's what I meant. It is needed if you want to directly take the output and put it in the input to decrypt
@sharif47
@sharif47 4 жыл бұрын
We have DES on exam a few days later.
@zss123456789
@zss123456789 4 жыл бұрын
This probably sound silly since it is the first time I'm learning about Feistel Cipher, but I think there might be a problem. It looks like if you know the encryption function and key2 in this example (whichever one gets used first for decryption), you can already know what half of what the original message was without having key1.
@madhoyen
@madhoyen 4 жыл бұрын
This happened because he only did two rounds. Normally ones does many rounds of this, each with a different subkey, which would not expose it like this.
@misterhat5823
@misterhat5823 4 жыл бұрын
In addition to Markus said, the message would be split into blocks. So you'd know every other block (assuming just two passes) and that might not be very helpful. Especially if blocks are scrambled before being encrypted. Or if the block size was extremely small. Like one ASCII character. Knowing 4 bits of the 8 that make up one character would be useless.
@zyghom
@zyghom 4 жыл бұрын
is it then secure at all?
@Moppawife
@Moppawife 4 жыл бұрын
You would still need the keys, for every step
@misterhat5823
@misterhat5823 4 жыл бұрын
Depends on the function F. If F is F=0, it still works, but not all that secure. If F was say... An MD5 hash of a key and the input, it would look like noise and be more secure.
@StefanReich
@StefanReich 4 жыл бұрын
Yeah that is cool
@karlfimm
@karlfimm 4 жыл бұрын
Excellent. I found some source code for Fiestel Network based encryption 20 years ago and used it when I needed some 'light' encryption ever since, but never knew the underlying structure. Thanks.
Chacha Cipher - Computerphile
13:45
Computerphile
Рет қаралды 174 М.
Elliptic Curve Back Door - Computerphile
12:24
Computerphile
Рет қаралды 510 М.
Iron Chin ✅ Isaih made this look too easy
00:13
Power Slap
Рет қаралды 36 МЛН
Schoolboy - Часть 2
00:12
⚡️КАН АНДРЕЙ⚡️
Рет қаралды 3,1 МЛН
路飞太过分了,自己游泳。#海贼王#路飞
00:28
路飞与唐舞桐
Рет қаралды 37 МЛН
AES Explained (Advanced Encryption Standard) - Computerphile
14:14
Computerphile
Рет қаралды 1,2 МЛН
DNS Cache Poisoning - Computerphile
11:04
Computerphile
Рет қаралды 301 М.
Feistel Cipher Structure
14:13
Neso Academy
Рет қаралды 129 М.
The Mystery of the Copiale Cipher
10:23
hochelaga
Рет қаралды 625 М.
SHA: Secure Hashing Algorithm - Computerphile
10:21
Computerphile
Рет қаралды 1,2 МЛН
Cracking Enigma in 2021 - Computerphile
21:20
Computerphile
Рет қаралды 2,4 МЛН
The moment we stopped understanding AI [AlexNet]
17:38
Welch Labs
Рет қаралды 844 М.
Breaking RSA - Computerphile
14:50
Computerphile
Рет қаралды 356 М.
Modes of Operation - Computerphile
14:16
Computerphile
Рет қаралды 220 М.
Coding Adventure: Boids
8:35
Sebastian Lague
Рет қаралды 1,5 МЛН
Iron Chin ✅ Isaih made this look too easy
00:13
Power Slap
Рет қаралды 36 МЛН