
PaperBack – How to store data on a single A4/Letter sheet - jguegant
http://ollydbg.de/Paperbak/#1
======
malanj
Example of PaperBack's output:
[https://a248.e.akamai.net/f/574/7105/8d/www.extremetech.com/...](https://a248.e.akamai.net/f/574/7105/8d/www.extremetech.com/wp-
content/uploads/2012/08/extremetech-page-paperback-gif.gif)

~~~
omribahumi
I wonder, why so many alignments (or, why such small blocks)? Is this the most
efficient size?

~~~
chiph
Probably to give the scanning software a way to re-sync and correct for skew,
etc.

------
fsiefken
With HCCB (High Capacity Color Barcode) of which an implementation is
Microsoft Tag you can get 1.5 MB with 600dpi color on a A4. If you add the
best compression techniques (cmix v7) depending on the source material you
could get 8 times as much english text, easily fitting the pearls or religion:
Tenach, New Testament, Quran, Mahabarata, The Dhamapada, the Atthakavagga and
the Parayanavagga, Rhinoceros and Lotus Sutra, The Book of the Dead and the
Sri Guru Granth Sahib and explanatory texts and commentary on one single A4.

Or you could get 4 minutes of stereo music, Opus@40Kbps or half an hour of
speech Opus@6Kbps - (Vinyl LP seems to be more efficient and simpler for
that).

Or the best 25 classical pieces in MIDI, for example Beethoven Symphony #5 in
C minor is a 322 KB midi file (compressed 60 KB). With compressed ABC or Alda
notation you could even fit 10 times as much. Or you can just read the ABC and
automatically 'hear' the music in your head (is there a similar notation for
human movement or dance i wonder...).

Even so perhaps a better and more cost effective system is microfilm, here an
example of the bible printed on a 2 inch film:
[http://www.amazon.com/Microform-Bible-Much-Like-
First/dp/B00...](http://www.amazon.com/Microform-Bible-Much-Like-
First/dp/B00FXHBBOO) \- you don't need a computer, just a lensing system. It
has one downside, the blind cannot use this unless you'd make an OCR to TTS or
braille display converter on top of it.

Or as described in the book Mindhacker you could use Dutton
Speedwords/Briefscript word abbreviations preferrable tailored to Esperanto to
double the text on the microfilm or on your handwritten A4.
[https://github.com/leonardoce/bumot](https://github.com/leonardoce/bumot)

~~~
mentos
I imagine someone in a post apocalyptic world carrying around a single sheet
like this without anyway to replay it but taking solace in knowing it exists
somewhere in there.

~~~
fsiefken
Ha, yes i don't think an android phone or e-reader will last very long in a
post-apocalyptic world. For a surprisingly slight trade-off in capacity one
could opt to carry around a A4 sized microfiche (or 4 stacked microfiches)
with 500 pages on it with 10K ascii a page (multi columned) which results in 5
MB uncompressed text. You can add a braille grade 2 or briefscript type
compression (which is readable) and get 1-2 extra MB of data, contrast that to
all the trouble of getting the 8 MB of data on the same 600dpi surface through
multi-colored 2D codes and compression. In this case you just need a good
portable magnifying lense. It uses even less power then an e-reader.
[http://www.rootschat.com/forum/index.php?topic=58324.0](http://www.rootschat.com/forum/index.php?topic=58324.0)

------
apricot
This brings back memories.

In the late eighties, I wrote a program similar to this one for archiving one
Apple II floppy disk on a sheet of paper.

One floppy disk is 140 kilobytes (35 tracks of 16 sectors containing 256 bytes
each), so a sheet of paper with a 7-inch by 10-inch printed area needs a data
density of just 2 kilobytes per square inch to fit a floppy disk, which comes
out to a linear resolution of 128 dots per inch. This was (barely) within the
specs of my dot matrix printer.

I was a teenager at the time so I had no clue about error correcting codes and
the like, it was a straight bit-to-pixel mapping.

At the time, this was a write-only medium, as I did not have access to a
scanner. No matter, I used it to archive my most important data disks,
figuring that after a few years, technology would have improved enough to
allow easy scanning. I eventually lost the sheets of paper, but the floppy
disks themselves were robust enough to last until 1994, at which time I wrote
a program to send them to my PC through a null-modem connection.

------
pkaye
Reminds me of this
[https://en.wikipedia.org/wiki/Cauzin_Softstrip](https://en.wikipedia.org/wiki/Cauzin_Softstrip).

Magazines would print out their source code and you could scan it in. Of
course I had no money to buy such an expensive machine so was relegated to
mind numbing typing and the inevitable typos that came with it.

~~~
asciimo
I was just going to post this! [http://ecx.images-
amazon.com/images/I/51QCW5ehtSL._SS500_.jp...](http://ecx.images-
amazon.com/images/I/51QCW5ehtSL._SS500_.jpg)

------
ant6n
So I'd like this on medium that's a bit more permanent than paper, but with
similar information density per kg, and similar re-creatability without having
any of the original tools available. I'd like to store data for say 100
thousand years.

~~~
chronomex
Tyvek, perhaps? I'm not sure how long-term it would stick around, but it
wouldn't decay as fast as paper in an unprotected environment.

~~~
Adaptive
Not 100,000 years, but if you're looking for something that will last longer
than paper, I recommend... paper. __Rag __paper. 100% rag, acid free copier
/laser paper should be available at most office supply stores.

I'd be more worried about toner de-lamination than paper deterioration in that
case.

~~~
kabdib
Paper's pretty good. Not sure it's 100K years good, but you're definitely
better with paper than almost anything else in the modern world. People
underestimate paper.

It's vulnerable to moisture, mold and insects, though.

If you can solve problems with breakage, very little is going to compete with
glass or ceramic. So, something it's hard to apply breaking force to: Maybe
etch glass balls, add some impurities for visibility, then re-coat with more
glass for protection. A handful of beads will survive nearly anything.

~~~
ant6n
In a glass bead you could set up with the data and like a lens, i.e. the data
is small and when you shine light through it it projects the information at a
wall. On the other hand spheres may have the problem that they roll away; and
you always need another medium (like a box) to keep them together.

------
epistasis
>a) The key used for (en|de)cryption in version 1.00 provides at most an
effective key strength of less than 50 bits (and likely far less, perhaps on
the order of 15-25 bits, depending on password quality) instead of the
expected 256 bits. Version 1.10 derives the encryption key from the password
via key stretching, significantly improving key strength. This change causes a
small delay in the encryption step.

>b) PaperBack version 1.0 implements ECB mode symmetric encryption. This mode
is subject to a watermark attack and leaks information about the encrypted
data. Version 1.00 changes the encryption mode to CBC, which mitigates this
attack.

These are classic newb mistakes, and great reasons to not trust any encryption
on any product unless it has been vetted by others.

------
marbu
This reminds me of
[http://ronja.twibright.com/optar/](http://ronja.twibright.com/optar/)

~~~
pronoiac
Note, Paperback has over twice the density of Optar.

Not that I'm complaining. I bookmarked both because I think they're nifty,
despite "media abuse" being the best tag I could think of.

~~~
fluidcruft
Note: it's extremely easy to increase the density of optar (by editing two
constants in the source). optar is configured for 200dpi by default (based on
real-world testing).

------
sowbug
The name of the project is unfortunate, as it makes it very difficult to
search the web for related projects such as Linux or OS X ports.

~~~
semi-extrinsic
Many projects fall in this trap. I use Awesome as my window manager, and the
Awesome theming library is called Beautiful. Now try googling "awesome
beautiful wallpaper"...

~~~
xpinguin
UPD: [http://i.imgur.com/TVLZgqw.png](http://i.imgur.com/TVLZgqw.png)

I don't know, how google did it, but the first result for exactly the query of
yours is:
[http://awesome.naquadah.org/wiki/Beautiful](http://awesome.naquadah.org/wiki/Beautiful)

What surprises me, is that it works in firefox private mode, where neither of
search customizations should work, in theory (fresh clean cookies and local
storage, isn't it?). However, yeah, I do indeed google awesome-related stuff
from time to time.

UPD #2: it works from different browser and different IP either. So it seems
that you example is not relevant anymore :)

~~~
digi_owl
If you search for, and click on, a lot of tech/linux related stuff, Google
likely bubbled you such that those kinds of results come out on top.

------
GnarfGnarf
I converted the code to compile with Visual Studio and ran it. PaperBack was
able to input a text file, create a "BMP", and read it back in. The
destination file was the same as the source.

However the BMP files that PaperBack generates are not recognized and cannot
be read by other programs. PaperBack can't read BMP files created by other
applications.

I didn't try scanning the printed page directly with PaperBack. I used a
separate computer to scan the page and create a BMP.

------
Jerry2
What does the output look like? There's no example of it on that page...

------
chrispeel
TRivia: If the printer can also output white ink, and the the encoding
algorithm knows any dirt on the paper, then the capacity of the paper is the
same even if the paper is dirty.
[http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=105665...](http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=1056659&url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F18%2F22732%2F01056659)

------
fake44637
This inspired me prototype out a system which would use QR codes and use a
smartphone camera for recovery, rather than a flatbed scanner.

Here's a demo PNG file which contains 48 QR codes (6x8) at V23 level with L
correction (~7% recovery). That's 1091 bytes per code, or just over 51KB per
page when printed at 300 dpi. This level of density seems to be very reliable
using ambient lighting and an iPhone 5c.

I was also able to read a QR code which was 66% of that size, but it required
turning on the iPhone's flash in order to be reliably read. That level of
density would allow fitting 9x12 codes on a single page at 300 dpi, which
would yield 115KB of data per page.

(At first I tried using 600 dpi, but at 1 dot per pixel the codes were totally
unreadable by a cell phone. The above 115KB/page density is the equivalent of
4 dots per pixel at 600 dpi. The good news is this means the system doesn't
require a 600 dpi printer. In fact, at 1 dot per pixel, the 51KB/page density
is equivalent to 100dpi, and the 115KB/page density is equivalent to 150dpi).

~~~
fake44637
Oops, forgot to link to the 51KB/page PNG file:
[https://raw.githubusercontent.com/cellularmitosis/QR_playgro...](https://raw.githubusercontent.com/cellularmitosis/QR_playground/master/51KB_300dpi.png)

------
ekianjo
This is a revolution for transporting confidential information through customs
:) If it's not electronic they won't even bother checking it!

~~~
semi-extrinsic
No, sorry, it's not. That's already trivial: Take a microSD card with your
info. Put it together with a couple of tablespoons of oatmeal into a tightly
and well wrapped plastic package. Swallow it. Travel. Arrive. Poop. Voila.

Also, if you bring big stacks of paper it will often be inspected, since a
common way of smuggling currency is putting hundred-dollar bills between the
pages of books.

~~~
mkup
I guess it's better to upload TrueCrypt container somewhere in the cloud and
transfer just password/URL. Password/URL may be derived from the first letters
of each sentence in the U.S. Constitution or other similar public source of
static random data.

~~~
eru
Why not public key cryptography?

~~~
marcosdumay
Because you can't carry a key.

~~~
eru
All the keys that are exchanged can be exchanged in plain text.

------
deutronium
In a slightly similar vein, there was a device that stored data on VHS
cassettes as black and white blobs -
[https://web.archive.org/web/19970110151745/http://www.danmer...](https://web.archive.org/web/19970110151745/http://www.danmere.com/backer.html#info)

~~~
pronoiac
It could up to 3 gigabytes per VHS tape! Wow!

Someone else in the thread posted a link to screenshots of a Linux port:
[https://news.ycombinator.com/item?id=10246531](https://news.ycombinator.com/item?id=10246531)

------
blup
Couldn't you store more data in a color image? Just curious.

~~~
ivanca
Probably, Microsoft did something like that (and failed to gain popularity)
[http://tag.microsoft.com/what-is-
tag/home.aspx](http://tag.microsoft.com/what-is-tag/home.aspx)

~~~
digi_owl
I seem to recall it was used to print some HDCP keys on t-shirts.

------
rahimnathwani
This reminds me of the Danmere Backer:
[http://linbacker.sourceforge.net/screenshots.html](http://linbacker.sourceforge.net/screenshots.html)

------
fsiefken
It would be nice to see a detailed comparison regarding alphanumeric
efficiency, licenses and mobile readers, error correction, no error correction
between the options below as Voiceye claims uncompressed 3M per A4, which is
twice the efficiency of Paperback or QR codes. The mobile app is usable and
supports midi encoding as well, but to make Voiceye codes you have to buy 500$
software. Are they using a form of compression?

* QR version 40 (177x177) tiled

* Voiceye

* Paperback without compression

* Grade 1 braille

* Grade 2 braille

* Morse code

* Optar

Braille would be suitable for people who are deaf and blind as well.

------
mholt
Has anyone actually used this? I'm intrigued by the idea and wonder if this is
a viable backup option; and if so, are there more modern, maintained, and
cross-platform open source solutions that do this?

~~~
CuttlefishXXX
tar and split combined with a QR encoder would solve the problem just fine.

~~~
kalleboo
I'm pretty sure systemd has this feature in there somewhere

------
Wayin
To back up my drive took 2216 meters of paper, writing front and back.

------
novaleaf
Just don't use an inkjet (at least, with the normal cheap ink), any excess
humidity will make the ink run, ruining your archive.

------
jaxb
there's also
[http://www.jabberwocky.com/software/paperkey/](http://www.jabberwocky.com/software/paperkey/),
for backing up private gpg keys on paper (text only).

------
ajot77
Has anybody encoded midi with voiceye or know how to do it?

------
curiousjorge
this has some pretty powerful applications for example for politics or mass
dissemination of paper based digital files for the public to quickly consume.

Imagine, if students could start posting free textbook pdf files just by
handing out a piece of paper which you could scan, or maybe with a phone one
day, and instantly receive the file.

Why not QR code? QR code needs connectivity while this solution would just
require you to get your hands on the paper.

~~~
robotkilla
Maybe I'm just slow tonight but I don't see the usefulness in the applications
you're describing.

>for politics or mass dissemination of paper based digital files for the
public to quickly consume

> Imagine, if students could start posting free textbook pdf files just by
> handing out a piece of paper which you could scan, or maybe with a phone one
> day, and instantly receive the file.

With both of those, how is this more efficient or easier to pass around than a
cheap micro sd card, or just emailing a pdf?

~~~
aw3c2
Standing outside with a stack of paper, being able to give them to passers-by,
staying anonymous and free of network surveillance.

~~~
njharman
Always doubt your anonymity. Many color laser printers output hidden, self
identifying serial codes.

~~~
sago
I did not know this, do you have a source?

~~~
robotkilla
[http://www.instructables.com/id/Yellow-Dots-of-Mystery-Is-
Yo...](http://www.instructables.com/id/Yellow-Dots-of-Mystery-Is-Your-Printer-
Spying-on-/)

[http://www.pcworld.com/article/118664/article.html](http://www.pcworld.com/article/118664/article.html)

[https://en.wikipedia.org/wiki/Printer_steganography](https://en.wikipedia.org/wiki/Printer_steganography)

[http://seeingyellow.com/](http://seeingyellow.com/)

~~~
sago
Fascinating, thanks for the links!

