QRazyBox Help

Basic Example

In this example, we are going to recover the following QR code.

Of course, we cannot scan it normally, because it lost too much modules including Finder and Alignment pattern.
The first step is to reconstruct it with Painter manually (we cannot import it as image since its Finder and Alignment pattern are missing).

(Reconstructed QR code using Painter)

The next step is to set the Format Info Pattern. Because the known modules of format info pattern only located in top right corner, the easiest way to reconstruct it is to try the pattern one by one and check whether it's match or not.

(The most suitable pattern is ECC level M and Mask pattern 1)

Now we have reconstructed QR code in our Editor and the missing Finder along with Alignment pattern are recovered.

Still, we can't decode it using normal Decoder because it's too much damaged for Error level M to be corrected. So, we should recover more modules of this QR code.
The next step, analyze the QR code using Extract QR Information. Using that tool, give us the following result.

We got the decoded message, but it rather unreadable and seems broken. We can ignore that for a moment.
Pay attention to the Number of missing bytes. It said that our QR code have 39 bytes of its data missing. Meanwhile, to correcting Erasure with Reed-Solomon, the maximum number of missing bytes in ECC level M version 3 should be about 26.

Therefore, we should recover some modules until the missing bytes are dropped about 26 bytes or less. The next step, we will try recover padding bits using Padding Bits Recovery.

Luckily, our padding bits in this QR code was quite big and we successfully recovered almost half of the damaged parts.
This is our recovered QR code so far (still not decodable yet).

Checking again with Extract QR Information, we dropped number of missing bytes to 25 bytes (35.71%). Also, the final part of messsage become more readable than before (EVERYTHING from EVERYTHIMY).

QR code version 3 with ECC level M have 26 of the ECC symbol, and since our number of missing bytes is 25, we can apply Erasure correction to the current QR code (remember from previous section that we can correct Errors half of the ECC symbol and Erasures as many as the ECC symbol).
Using Reed-Solomon Decoder, we successfully recover the message.

And finally, we got the final message : "YOU CAN DO ANYTHING BUT NOT EVERYTHING".

*This example concept inspired from MMA CTF 2015 challenge and the solving concept from https://github.com/pwning/public-writeup/blob/master/mma2015/misc400-qr/writeup.md