@@technologyclub6870 I'm using it to solve a CTF challenge.. we have to decode a QR code that has solid color polygons on top CTF in Computer Security (en.wikipedia.org/w/index.php?title=Capture_the_flag)
I don't ever comment on videos. But I have to thank you for this. This was awesome. I can imagine the time it took to create all of these graphics, and want to thank you for your efforts. This is exactly the kind of thing I love to find online.
@@leskerwint2607 because maybe there are people who find this useful and the guy who made the video used it's time for helping that people and making it easy to understand.
I just saw a short program about the Japanese guy who developed the QR code but they didn't say anything about how it worked. Your use of an Excel spreadsheet was pure genius and actually made it understandable. Now I want to read the Wikipedia article to learn more details. Thanks for producing this video. It was both entertaining and informative.
Dude I've been looking everywhere on youtube a video explaining how QR codes work, and they all say "How a QR code WORKS" but all they do is explain what they are and how to download an app to install it (aka bullshit title). Now that I've watched your video I can see why there are no videos explaining this shit, it's so complicated. Thank you so much for uploading this, I can see it's hard even for you to explain it. Also I'm subscribing.
I'm not sure why you stopped putting up videos, but this here is an absolute work of art! Thank you so much for giving us such a thorough video! Well done and hope to see more from you in the future.
Nice video. However it is much simpler and faster to find the characters in the ASCII table if you convert the block pattern direct to the octal values (i.e. no adding up is needed!). For example, your lower case "s" at 18m48s is the bit pattern 01_110_011 where I have separated the pattern into the 2 and 2/3 octal characters with underscores. With a few minutes practice you can just read that off as the octal number 163. Now look over to your ASCII table and there you see the octal number 163 next to the lower case "s". No sums required! There are only 7 octal patterns to remember and you can then translate any number of bits to octal or just do the mental adding up of the 4 plus 2 plus 1 bit values for each character in your head.
One way to make it easier is to start the “unmasking” in the length corner. That way you can know how long the text is and you don’t have to unmask the whole thing.
hey. I woke up with the obsessive idea to reverse engineer/decode a QR code. I couldn't thank you more for making this video, such a great amount of work, and purely explained. thank you very much
Thank you so much for this tutorial. I'd been searching for this info the whole day until I got to you and not only did you make black dots understandable, but I was laughing the entire time. Keep them coming! :)
5:34 I'm pretty sure that's wrong, the lines start from the top, where the first row is an even row. Check the wikipedia example image with the wikipedia url, where you can see that in the middle top section, the top line is inverted.
It's a method of data storage. If you could see what sectors look like magnetically on your hdd it also has a strange appearance. Computers aren't great with image recognition so we store data as simple for them as possible. What looks easy for us is tough for a computer and what is simple for a computer is tough for us. We aren't the same. Nothing to do with religion we just need a way to talk to them quickly. Our interface with machines is a huge limiting factor we are always trying to make it easier. We have a bandwidth limitation that is done by either scanning things or slowly punching stuff in with our fingers. Nowadays talking sometimes. It's all just way to store and talk to a machine it's nothing to worry about you are educating yourself on them though and that's good hopefully the fear of them has relaxed a bit and you understand more of how they work and what they do. It's just a piece of paper or sticker with the ability to help communicate with your computer to make lives easier. You are doing right though by investigating and learning about them.
Thank you for taking the time to explain this to mere mortals. I never dreamed one could actually decode these things "by hand" as you say. The explanation of what QR codes contain makes them less annoying somehow and I would never have the patience to read the Wikipedia page on the subject. Please stop and smell the roses (or do something else outside) to treat yourself!
+Matt Tycho Alright, looking for some references, here's what I've found: en.wikiversity.org/wiki/Reed%E2%80%93Solomon_codes_for_coders downloads.bbc.co.uk/rd/pubs/whp/whp-pdf-files/WHP031.pdf I'll look into these later to see if it's something I can understand and possibly make a video from.
There's one error in this video. When you apply the masking, the purple fixed patterns weren't skipped over. They were merely ignored. In other words, for this specific qr code, the grey lines should start from the first line (0th line), and then the third, the fifth (skipped cuz it's fixed pattern), and seventh and so forth.
A bit (or 2 or 3 ...) complex for a tech illiterate like me, but I do know a bit about QR codes or know what one looks like and often wondered how they work. This well explained video on a complex technical topic gave me the sort of general idea of how they encode their information. That is all I wanted as a curious lay person. Thank you.
Thanks for doing these videos! These are great. The Wikipedia articles never seemed enough to make these encodings clear to me. Could you do one on Micro QR or Mini QR? I've seen codes which only have one targeting square in one corner. How do those work?
I don't think you're supposed to ignore that row of timing patterns when you damasking the code. On my own attempt that has caused all the boxes above it to be the inversion of what they should be, also the example on wiki implies that its the first layer that is inverted.
I've seen a few vids about this, but this was by far and a way the best of those videos. Thank you. Just made one completely by scratch from this, and then compared it to one made online by qrstuff website. and they are similar! though theirs seemed slightly different at first, so i now realized why, I had my ascii wrong for one of the bytes. Thanks mate!
fwiw you can decode letters without looking up the ascii chart. Ascii capital letters are (64 + letter's place in the alphabet), ascii lowercase are (64 + 32 + letter's place in the alphabet). For example 98 is ascii for "b" because 98 = 64 + 32 + 2, and b is the second letter of the alphabet
Ok I understand the part when you were removing the black squares into white but I got lost on how you got the numbers to each square so you can add up to find the letter.
It's about Finder patterns and timing patterns and orientation patterns. Then, byte tile shapes and layout pattern, and masks. Then there's error correction! Error control coding. BCH codes for bit error correction (format information only), Reed Solomon codes for symbol error correction.
The first little bit, as you called it, is actually an encoding nibble, as it is half a byte. Along the same lines, two bytes is equal to a sandwich. Programmers are hungry people, so you will find a lot of hardware and software named after food.
I always thought a QR code had some internet magic in it and that something had to be activated for it to be read. Never realized it's basically just information written in another language.
This is a little late to ask, but how do custom QR codes work where they put an image in the middle of the QR code or use a circular shape? Are they just adding random dots around the outside to fit the shape or is that actual data? And are they just covering up the error correction information in the middle of the QR code which doesn't impact the functionality or just are they changing how the QR code data flows?
For QR codes with an image in the middle, it's possible thanks to a high level of error correction. Indeed, with the highest level you can technically recover as much as 30% of the code. So the image covers some data but leaves enough information to still have a readable QR code. For circular QR codes, I haven't personally encountered any before you asked but yes, it's probably just gibberish added to the outside, which makes these technically no longer QR codes since the ISO standards states that a 4-module wide area should be left empty all around the symbol. As for QR codes with non-square tiles (circles, rounded square, etc.), that's not an issue because the reader samples color in the middle of each cell, so as long as the center is more or less black, it all good. (Note that an inverted QR code - that is white squares on a black background - is also readable)
Are you sure the mask line skipped under the timing or not? Some pictures on the internet say it is. I'm fairly sure you applied the pattern incorrectly and just didn't get to the incorrect part by chance.
I understood the whole thing, but if I paint my own Code, it doesn`t look the same way, the generator does it in the right corner (just where I know, how to write letters in)
why cant we decode the QR code found in the crop circle w/the alien head alongside the huge QR code in the farmers field? There's a msg in the QR code of that crop circle.
Can you gimme me some mariquana, miss crazy lady? (Asks like a 7 year old) Can i buy some mariquana from you, *waves a 100 dollar bill past your nose* (adult) Can i get your number sweet heart, ide like to ask you out for a cup of coffee (me)
Do you want to know why i laughed insanely to you're comments? It's because you a ugly broom that types words like a 3rd grader and as you're an adult you oddy seem to forget punctuation, checking of spelling words properly, your lack of after punctuations example: good day, sir. With a period in each end of a sentence or paragraph. So I considered laughing to be appropriate and reusable due to you're New Yorker instincts, personality and wit.
Thanks for the detailed explanation. I will of course use an app to create qr codes, but i always wondered how it worked and now i learnt. By the way, how many did you spend to create that excel file? :)
This is genius. Both your great video/explanation AND the elegant, amazing invention and logic of the QR code itself! Thank you sir. Nice work!:) danke from Germany!
Life and death situation Person: DOES ANYONE KNOW HOW TO READ A QR CODE??? Other Person: If only I had my phone. Everybody that watched this video: MY TIME TO SHINE!!!!!! I knew that watching 20:10 minutes of understanding how to decode a QR code by hand would come in handy.
Huh, it's pretty simple once you get down to it. What an awfully convoluted way to encode a simple word, sheesh. Thanks for the gr8 explanation. It's too bad EBCDIC fell out of favor. When will you do a video on manually decoding an intelligent mail barcode. I looked at the USPS C or C++ code but got lost in the pointers somewhere.
When you're that one guy that is watching this for fun, and not for any work related reasons.
Who dafaq needs this for work 😂
im doing this for writing F*ck you
I have run out of things to do during quarantine lmao
@@technologyclub6870 I'm using it to solve a CTF challenge.. we have to decode a QR code that has solid color polygons on top
CTF in Computer Security (en.wikipedia.org/w/index.php?title=Capture_the_flag)
@@ndanilo wow that seems interesting
I don't ever comment on videos. But I have to thank you for this. This was awesome. I can imagine the time it took to create all of these graphics, and want to thank you for your efforts. This is exactly the kind of thing I love to find online.
Upvote :D
Why?
@@leskerwint2607 because maybe there are people who find this useful and the guy who made the video used it's time for helping that people and making it easy to understand.
a
Someone make a vacation QR puzzle book.
Would be terribly hard but fun. (For the real nerds)
What? A puzzle book where you debug by hand and see what the code is?
yeah
the solution of the code of course is
_You are aboslutely no-life_
Mistory Minecraft It's funny you say that because you play minecraft.
Oh, but it is not no-life.
Responding to this comment actually is...
Mistory Minecraft I would totally do that. Also I have no life.
I just saw a short program about the Japanese guy who developed the QR code but they didn't say anything about how it worked. Your use of an Excel spreadsheet was pure genius and actually made it understandable. Now I want to read the Wikipedia article to learn more details. Thanks for producing this video. It was both entertaining and informative.
This guy is AMAZING! He takes something VERY complex, and makes it understandable. Thank you so much.
Dude I've been looking everywhere on youtube a video explaining how QR codes work, and they all say "How a QR code WORKS" but all they do is explain what they are and how to download an app to install it (aka bullshit title). Now that I've watched your video I can see why there are no videos explaining this shit, it's so complicated. Thank you so much for uploading this, I can see it's hard even for you to explain it. Also I'm subscribing.
lmao u dont know how to search properly thats why,
I'm not sure why you stopped putting up videos, but this here is an absolute work of art! Thank you so much for giving us such a thorough video! Well done and hope to see more from you in the future.
This is probably something that a human can not even fully learn, no matter how much practice he takes on it.
Nice video. However it is much simpler and faster to find the characters in the ASCII table if you convert the block pattern direct to the octal values (i.e. no adding up is needed!). For example, your lower case "s" at 18m48s is the bit pattern 01_110_011 where I have separated the pattern into the 2 and 2/3 octal characters with underscores. With a few minutes practice you can just read that off as the octal number 163. Now look over to your ASCII table and there you see the octal number 163 next to the lower case "s". No sums required! There are only 7 octal patterns to remember and you can then translate any number of bits to octal or just do the mental adding up of the 4 plus 2 plus 1 bit values for each character in your head.
Good idea!
Great idea but also , NERD!
I know I am never gonna do this but it was nice to see someone explained it very well which was mystery for me for few years
One way to make it easier is to start the “unmasking” in the length corner. That way you can know how long the text is and you don’t have to unmask the whole thing.
This is what true content looks like. THANK YOU. Perfectly done.
hey. I woke up with the obsessive idea to reverse engineer/decode a QR code. I couldn't thank you more for making this video, such a great amount of work, and purely explained. thank you very much
Thanks Kermit!! Things like this are severely under appreciated! Almost like going back to the beginning days of coding.
I just implemented a barcode API in an app! Then I was curious about how exactly it works! And here I'm right now!
human read qr code: 20 minutes
scanner read qr code: *beep*
This is the crazy man’s sudoku😂
Thank you so much for this tutorial. I'd been searching for this info the whole day until I got to you and not only did you make black dots understandable, but I was laughing the entire time. Keep them coming! :)
I miss old UA-cam, when actual content like this was made
still such an awesome video even in 2024 thank u bro
It’s 4 AM and I’m learning to read QR codes by hand
Who knew Kermit the Frog knew about QR codes!! ... ;) Thanks for the info, great vid.
haha
rude
@@weltmeister but funny nonetheless XD
Dab
Could make an entire kid's show out of "Muppets teaching"
This is the best video explaining qr code I have seen so far. Thank you.
I like how you keep saying "don't be scared". Great video. thanks.
you upload the spredsheet?
trying to make an algorythm that generates a QR code from a text, thanks
Now no one can Rick Roll me now
Can I download that sheet somewhere?
Hi, Hank Green just sent me here. Its actually really interesting video. Thank you
I started a thread about that above.
That's not a thread fucktard.
Ddday14 Have nice day. :)
6:35 The 4th grey line from the bottom in the right most QR code is missing 1 grey dot.
True! The middle one of the three white squares should be grey :P
5:34 I'm pretty sure that's wrong, the lines start from the top, where the first row is an even row. Check the wikipedia example image with the wikipedia url, where you can see that in the middle top section, the top line is inverted.
After having seen how to decode a MIDI file, this seems easier to me now
Hey man I got a puzzle for you. Can you help me solve it?
@@casa8017 yeah you are 4 years late
Yes
Thank you for your efforts, you just made me a little bit more smarter.
More smarter? Quick, get thee to a grammar video!
@@johnnations5932 AHAHAHAHAHAHAH
I was randomly thinking about this in the shower. You never known when this knowledge might prove useful....
My mind exploded
How come the 'Robomatics' QR code at 0:01 is totally different from the one at 15:44 ? Confuses me enormously.
0:22 "QR codes are actually a beast of a code" or if flipped it is actually "the code of the Beast...!"
Know what you're dealing with!
Shut the fuck up not everything is made by satan
It's a method of data storage. If you could see what sectors look like magnetically on your hdd it also has a strange appearance. Computers aren't great with image recognition so we store data as simple for them as possible. What looks easy for us is tough for a computer and what is simple for a computer is tough for us. We aren't the same. Nothing to do with religion we just need a way to talk to them quickly. Our interface with machines is a huge limiting factor we are always trying to make it easier. We have a bandwidth limitation that is done by either scanning things or slowly punching stuff in with our fingers. Nowadays talking sometimes.
It's all just way to store and talk to a machine it's nothing to worry about you are educating yourself on them though and that's good hopefully the fear of them has relaxed a bit and you understand more of how they work and what they do. It's just a piece of paper or sticker with the ability to help communicate with your computer to make lives easier. You are doing right though by investigating and learning about them.
In the future: A QR code inside of a QR that's inside of many more QR codes!
Thank you for taking the time to explain this to mere mortals. I never dreamed one could actually decode these things "by hand" as you say. The explanation of what QR codes contain makes them less annoying somehow and I would never have the patience to read the Wikipedia page on the subject. Please stop and smell the roses (or do something else outside) to treat yourself!
Any chance for a video about the error correction sections?
+Matt Tycho I'll take a look into them but no promises. Those are some heavy math.
+Matt Tycho Alright, looking for some references, here's what I've found:
en.wikiversity.org/wiki/Reed%E2%80%93Solomon_codes_for_coders
downloads.bbc.co.uk/rd/pubs/whp/whp-pdf-files/WHP031.pdf
I'll look into these later to see if it's something I can understand and possibly make a video from.
@@Pillazo man, you are a champion.
One hell of a hassle! You're a trooper. Masking patterns seem unnecessary to me, but the rest of the code makes more sense now. Thanks!
There's one error in this video. When you apply the masking, the purple fixed patterns weren't skipped over. They were merely ignored. In other words, for this specific qr code, the grey lines should start from the first line (0th line), and then the third, the fifth (skipped cuz it's fixed pattern), and seventh and so forth.
Hey man I got a puzzle. Can you help me solve it?
Isn't it the 7th line that is fixed not the 5th?
A bit (or 2 or 3 ...) complex for a tech illiterate like me, but I do know a bit about QR codes or know what one looks like and often wondered how they work. This well explained video on a complex technical topic gave me the sort of general idea of how they encode their information. That is all I wanted as a curious lay person. Thank you.
watching this 10yrs later, AMAZING
This is phenomenally well explained, even if it is waaaaay more complicated than it looks
Incredibly detailed video. Deserves a medal:)
r/ModusOperandi sent me here. Incredibly interesting stuff.
Qr coeds for otakus
Thanks for doing these videos! These are great. The Wikipedia articles never seemed enough to make these encodings clear to me.
Could you do one on Micro QR or Mini QR? I've seen codes which only have one targeting square in one corner. How do those work?
Finally, I can play The Talos Principle without needing a phone.
After I watched your video I feel overflow in my head. You are very good decoder person. I like this clip video very much.
Great video after I learn it I can figure out rickrolls or unexpected jump scares
I don't think you're supposed to ignore that row of timing patterns when you damasking the code. On my own attempt that has caused all the boxes above it to be the inversion of what they should be, also the example on wiki implies that its the first layer that is inverted.
I have a similar problem, what is this row of timing patterns you're talking about please ?
Today I was thinking I wanna learn to read qr code and well now I'm here
When the 20 minute tutorial doesn't even touch error correction, you know you're in some deep shit
This is god level , definitely subscribing you. I am watching this video after 10 years since it was created but it is still relevent.
Another wonderful application of an ASCII table. I'll have to pass this along to my intro to programming students. Thank you so much. :D
I've seen a few vids about this, but this was by far and a way the best of those videos. Thank you. Just made one completely by scratch from this, and then compared it to one made online by qrstuff website. and they are similar! though theirs seemed slightly different at first, so i now realized why, I had my ascii wrong for one of the bytes. Thanks mate!
Do you know what a motor is? Manual vs automatic? Winter tires?
5:50 Didn't get that part. My native language isn't english, so I didn't get it.
arnt, there subtitles
what a golden nugget of a video this is. fanx!
10:10 I like the noise you made there. I think I'm gonna sample it to use as an instrument for electronic music :)
10:11
fwiw you can decode letters without looking up the ascii chart. Ascii capital letters are (64 + letter's place in the alphabet), ascii lowercase are (64 + 32 + letter's place in the alphabet). For example 98 is ascii for "b" because 98 = 64 + 32 + 2, and b is the second letter of the alphabet
Ok I understand the part when you were removing the black squares into white but I got lost on how you got the numbers to each square so you can add up to find the letter.
Adam Rodriguez Just fill every 8x2 box with the first eight powers of 2 in descending order, following the arrow patterns as seen in the video
Great,now I can decode a rick roll qr code, because people nowadays use qr code instead of links
It's about Finder patterns and timing patterns and orientation patterns. Then, byte tile shapes and layout pattern, and masks. Then there's error correction! Error control coding. BCH codes for bit error correction (format information only), Reed Solomon codes for symbol error correction.
damn, 11 years ago ??
The first little bit, as you called it, is actually an encoding nibble, as it is half a byte. Along the same lines, two bytes is equal to a sandwich. Programmers are hungry people, so you will find a lot of hardware and software named after food.
what is the yellow thing for?
You're not kidding about the error correction. The maths... oh my fudge, so beyond me.
i'm just wondering where is the 'data' come from . thanx
I always thought a QR code had some internet magic in it and that something had to be activated for it to be read. Never realized it's basically just information written in another language.
Thank you for the great video. What program did you use to create your QR code in the first place?
This is a little late to ask, but how do custom QR codes work where they put an image in the middle of the QR code or use a circular shape? Are they just adding random dots around the outside to fit the shape or is that actual data?
And are they just covering up the error correction information in the middle of the QR code which doesn't impact the functionality or just are they changing how the QR code data flows?
For QR codes with an image in the middle, it's possible thanks to a high level of error correction. Indeed, with the highest level you can technically recover as much as 30% of the code. So the image covers some data but leaves enough information to still have a readable QR code.
For circular QR codes, I haven't personally encountered any before you asked but yes, it's probably just gibberish added to the outside, which makes these technically no longer QR codes since the ISO standards states that a 4-module wide area should be left empty all around the symbol. As for QR codes with non-square tiles (circles, rounded square, etc.), that's not an issue because the reader samples color in the middle of each cell, so as long as the center is more or less black, it all good. (Note that an inverted QR code - that is white squares on a black background - is also readable)
Fantastic... You made the horrifying QR code look easy... amazing video.
Are you able to decode the ancient maya statue with the QR code face? What is it?
Why is the end block for the wiki QR not four blank spaces?
considering QR codes are making a comeback (for some reason) this guide might prove itself handy
Awesome explanation, do you happen to have the excel sheet available online as well?
do you know how to make a dynamic qr?
34 People didnt understand
Great Video. Thx a lot
Man your video is 100x better than the wikipedia sh$t
Barney!!! Is that you!?!? It's me Homer Simpson!! Just kiding ... great video dude!!
Are you sure the mask line skipped under the timing or not? Some pictures on the internet say it is. I'm fairly sure you applied the pattern incorrectly and just didn't get to the incorrect part by chance.
I understood the whole thing, but if I paint my own Code, it doesn`t look the same way, the generator does it in the right corner (just where I know, how to write letters in)
why cant we decode the QR code found in the crop circle w/the alien head alongside the huge QR code in the farmers field? There's a msg in the QR code of that crop circle.
Did you know meth isn't healthy for you?
Vitunveijari U should know!
Can you gimme me some mariquana, miss crazy lady? (Asks like a 7 year old)
Can i buy some mariquana from you, *waves a 100 dollar bill past your nose* (adult)
Can i get your number sweet heart, ide like to ask you out for a cup of coffee (me)
stickfiguresmaster go fuk urself mr "chubby thighs"
Do you want to know why i laughed insanely to you're comments? It's because you a ugly broom that types words like a 3rd grader and as you're an adult you oddy seem to forget punctuation, checking of spelling words properly, your lack of after punctuations example: good day, sir. With a period in each end of a sentence or paragraph. So I considered laughing to be appropriate and reusable due to you're New Yorker instincts, personality and wit.
Thanks for the detailed explanation. I will of course use an app to create qr codes, but i always wondered how it worked and now i learnt.
By the way, how many did you spend to create that excel file? :)
This is genius. Both your great video/explanation AND the elegant, amazing invention and logic of the QR code itself! Thank you sir. Nice work!:) danke from Germany!
tell me how to get these variables
Dude, the Home lets you use a computer??
The grey lines with the black squares makes it look like bedrock.
One question: Can the 3 alignment squares be decoded?
The larger squares in the corners? No, those contain no data, those are just to help the barcode reader find the data.
Are you sure they can t be read?
Seriously you are amazing, you made it so simple.
You are a genius. That was fun and easy to understand
Life and death situation
Person: DOES ANYONE KNOW HOW TO READ A QR CODE???
Other Person: If only I had my phone.
Everybody that watched this video: MY TIME TO SHINE!!!!!! I knew that watching 20:10 minutes of understanding how to decode a QR code by hand would come in handy.
How did you put the QR code into the excel? is there a way to put it onto a google spreadsheet? i dont have excel.
Huh, it's pretty simple once you get down to it. What an awfully convoluted way to encode a simple word, sheesh. Thanks for the gr8 explanation. It's too bad EBCDIC fell out of favor. When will you do a video on manually decoding an intelligent mail barcode. I looked at the USPS C or C++ code but got lost in the pointers somewhere.
When did you unmask the message to get the ascii values?
i think the mask is placed oppositely here compared to the one shown in wikipedia.....could you explain that?
Hey man I got a qr/datamatrix code puzzle but I cant solve it. Can you help me with it?
Is the decoded version of a QR code scanable?
Why you would want to do that by hand ?