t3486784401 发表于 2021-3-23 21:52:09

【分享】分享一个把 A4 纸当光盘的软件 Paperbak

光盘本质是 有坑/没坑 的反射组合来保存二进制数据,类似只要有一系列状态阵列,就可以存储一定量的数据,例如二维码。

今天分享一个拿 A4 纸当光盘用的软件:Paperbak.
原工程是开源的,老外真是很闲: http://ollydbg.de/Paperbak/

原理是:RAW数据保存成二维黑白点阵,再用打印机打印到纸上保存;读取时通过扫描仪+软件识别,反向恢复数据。
实测现有打印机的精度下(300dpi),一张 A4 大约可以存储 500KB 的 RAW 数据。

软件支持冗余恢复,有一定的纠错功能。原始打印的 BMP 输出样子如下:



我给加了个噪音、色移模拟物理折旧,实测部分 bit 检测到损坏,但最终结果成功恢复:





最后附上源码和EXE程序:



----------------------------------------------------------------------------------------------------------

以上,分享个 Paperbak 软件拿 A4 纸当光盘用,配合打印机、扫描仪即可实现纸质存储二进制数据。
建议数据源直接用压缩包格式,尺寸小巧带校验,必要还可上加密。

最后祝大家打印愉快!

my_avr 发表于 2021-3-23 21:56:35

有点意思啊

ljmddnok 发表于 2021-3-23 22:11:22

这个是不是有点读笔的意思

饭桶 发表于 2021-3-23 22:22:26

来几张音乐听听啊

cne53102 发表于 2021-3-23 23:03:44

喔!这可真是好东西!
把A4纸换成不锈钢片或大理石就可以非常可靠的存储了!
可以拿PCB的钢网干这个{:lol:}

vtte 发表于 2021-3-23 23:08:32

那么问题来了,一部小姐姐需要多少张纸?

t3486784401 发表于 2021-3-23 23:27:26

cne53102 发表于 2021-3-23 23:03
喔!这可真是好东西!
把A4纸换成不锈钢片或大理石就可以非常可靠的存储了!
可以拿PCB的钢网干这个 ...

钢网的思路很不错,有机会搞几片玩玩

t3486784401 发表于 2021-3-23 23:28:15

vtte 发表于 2021-3-23 23:08
那么问题来了,一部小姐姐需要多少张纸?

500KB / A4,中等尺寸的 rmvb 小姐姐需要 1K * A4 量级

foxcase 发表于 2021-3-24 03:29:35

这技术实用

shawn_bu 发表于 2021-3-24 04:14:01

这个配上激光打印机可以存储很多年啊,碳粉应该不会变淡。 喷墨打印机打印出来的年数多了是不是会变淡

t3486784401 发表于 2021-3-24 04:21:52

shawn_bu 发表于 2021-3-24 04:14
这个配上激光打印机可以存储很多年啊,碳粉应该不会变淡。 喷墨打印机打印出来的年数多了是不是会变淡 ...

大家都起这么早么

lovejp1981 发表于 2021-3-24 04:45:05

t3486784401 发表于 2021-3-23 23:28
500KB / A4,中等尺寸的 rmvb 小姐姐需要 1K * A4 量级

还需要一卷卫生纸

shawn_bu 发表于 2021-3-24 05:33:53

t3486784401 发表于 2021-3-24 04:21
大家都起这么早么

早起干活,顺便刷刷论坛。哈哈

wt3333 发表于 2021-3-24 08:19:33

这个好啊    申报个国家课题吧

happymav 发表于 2021-3-24 08:24:40

看到了好多年前穿孔计算机的身影,哈哈哈

cc2666 发表于 2021-3-24 08:30:42

有意思!         

cantonguy 发表于 2021-3-24 08:35:26

倒不如用二维码打印进去。。

armok. 发表于 2021-3-24 08:41:01

楼主一出手就是精华,打赏!

epwwm 发表于 2021-3-24 08:51:24

这个很有意思{:lol:}

lb0857 发表于 2021-3-24 09:03:29

这是商业剑帝私藏货啊{:lol:}{:lol:}{:lol:}{:lol:}

shiva_shiva 发表于 2021-3-24 09:13:13

想法不错!

Dogdays 发表于 2021-3-24 09:19:16

我擦,这个作为加密软件来用简直不要太爽

boycn 发表于 2021-3-24 09:42:13

好东西啊

xyz543 发表于 2021-3-24 09:42:32

楼主这个应用搞得不错,记得 IBM 约在 1998 年当时就发表了,可用纸来做储存的媒介,且比当时一片约 640MB 同面积的光盘资料储存量还要来得高些。

kv2004 发表于 2021-3-24 11:09:13

试了一下,打印了一个51’120字节的文件,才占了一张A4纸的十分之一左右,然后用它推荐的600dpi扫描出来,和原文件完全一样。

duxingkei 发表于 2021-3-24 11:23:35

好东西,就是值不够用啊
突然想起,把数据藏到图片里面的方案。

dreampet 发表于 2021-3-24 11:28:24

做成钢网,用来存数字货币的冷钱包简直不要太完美。

t3486784401 发表于 2021-3-24 13:31:34

cantonguy 发表于 2021-3-24 08:35
倒不如用二维码打印进去。。

二维码最长也就几 KB 的容量,而且无法自动分页。小规模文本还行,上 RAW 数据就费劲了。

t3486784401 发表于 2021-3-24 13:31:50

armok. 发表于 2021-3-24 08:41
楼主一出手就是精华,打赏!

感谢站长!

t3486784401 发表于 2021-3-24 13:35:39

kv2004 发表于 2021-3-24 11:09
试了一下,打印了一个51’120字节的文件,才占了一张A4纸的十分之一左右,然后用它推荐的600dpi扫描出来, ...

看样子是切实可用的,我手头没扫描设备,只能模拟下折旧。

如果印成一本册子,容量还是很可观:10页双面 = 10MB

t3486784401 发表于 2021-3-24 13:37:55

xyz543 发表于 2021-3-24 09:42
楼主这个应用搞得不错,记得 IBM 约在 1998 年当时就发表了,可用纸来做储存的媒介,且比当时一片约 640MB...

这个也是分享老外的成果,思路比较新奇;

如果是在以前磁带盛行的年代,恐怕是要改装随身听了。

t3486784401 发表于 2021-3-24 13:42:07

Dogdays 发表于 2021-3-24 09:19
我擦,这个作为加密软件来用简直不要太爽

在小众时期,基本等同于加密;用的多了只能算个准明文。

不过数据源有 RAR 这样好的加密软件,数据安全不用愁。

powermeter 发表于 2021-3-24 13:43:46

厉害啊,各种矿币在也不怕丢失钥匙文件了。钢网打印出来永久保存。

zkf0100007 发表于 2021-3-24 14:49:35

好东西,多谢分享

epwwm 发表于 2021-3-24 15:08:46

试了下,存成bmp文件还好,但用默认参数激光打印出来,再扫描,精度下降很多,点已模糊了,软件没办法分辨,有什么技巧没有?

xsh2005105326 发表于 2021-3-24 15:20:34

t3486784401 发表于 2021-3-23 23:28
500KB / A4,中等尺寸的 rmvb 小姐姐需要 1K * A4 量级

折了下纸,16层大概2mm,1000张得有125mm厚度了

18161319737 发表于 2021-3-24 16:01:29

powermeter 发表于 2021-3-24 13:43
厉害啊,各种矿币在也不怕丢失钥匙文件了。钢网打印出来永久保存。

要用黄金

brother_yan 发表于 2021-3-24 16:06:55

这是我以前做的笔记:

当时我试了一下不好用,就放弃了

t3486784401 发表于 2021-3-24 16:31:34

xsh2005105326 发表于 2021-3-24 15:20
折了下纸,16层大概2mm,1000张得有125mm厚度了

双面打印的话厚度减半,不过需要不透字才行

t3486784401 发表于 2021-3-24 16:32:17

brother_yan 发表于 2021-3-24 16:06
这是我以前做的笔记:

当时我试了一下不好用,就放弃了

我测试挺好用的,不知是哪里设置不一样

yjamdfhqjs 发表于 2021-3-24 21:21:51

就是二维码的意思吧 哈哈

cnxh 发表于 2021-3-25 02:34:09

shawn_bu 发表于 2021-3-24 04:14
这个配上激光打印机可以存储很多年啊,碳粉应该不会变淡。 喷墨打印机打印出来的年数多了是不是会变淡 ...

用那种不要墨盒和碳粉的,直接激光碳化的

t3486784401 发表于 2021-3-25 02:50:10

cnxh 发表于 2021-3-25 02:34
用那种不要墨盒和碳粉的,直接激光碳化的

现在可有这种打印机? 找了找似乎只有某大三学生的专利

cnxh 发表于 2021-3-25 02:53:27

t3486784401 发表于 2021-3-25 02:50
现在可有这种打印机? 找了找似乎只有某大三学生的专利

有,新闻看到

hecat 发表于 2021-3-25 08:40:19

t3486784401 发表于 2021-3-24 13:37
这个也是分享老外的成果,思路比较新奇;

如果是在以前磁带盛行的年代,恐怕是要改装随身听了。 ...

其实通用的随身听,并不适合用来存储数据,因为卡带是家常便饭,一旦卡带,很可能整盘数据都毁了。

t3486784401 发表于 2021-3-25 08:48:44

hecat 发表于 2021-3-25 08:40
其实通用的随身听,并不适合用来存储数据,因为卡带是家常便饭,一旦卡带,很可能整盘数据都毁了。 ...

不要把带子卡断啊,磁带卷回去照样用。

hecat 发表于 2021-3-25 09:09:04

卡带引起的磁带变形长度,通常都在cm级别。
卡带处,磁带凹凸不平,与磁头接触不好,会引起信号损失。
这损失,对音乐来说,就是一个短暂的闷音,忍忍就过了。
但对数据来说,很可能无法恢复。

当年玩中华学习机(Apple IIe兼容机)的时候,就用磁带存储过程序,失败的概率很大。

当然,现在看来,有很多可以改进的地方。

t3486784401 发表于 2021-3-25 09:20:31

hecat 发表于 2021-3-25 09:09
卡带引起的磁带变形长度,通常都在cm级别。
卡带处,磁带凹凸不平,与磁头接触不好,会引起信号损失。
这损 ...

真要搞的话,应该用类似曼彻斯特码,避免把太多信息调制到频率上。
实际的播放机转速不均、偏快偏慢都有这个需求。

还有区段的损坏,并不一定会毁掉整个文件,例如:
1L 位的软件默认 1:5 的冗余恢复,每 5个连续区段(256x256点)可以完全损坏 1个,仍能正常恢复。

qingyin2009 发表于 2021-3-25 11:31:50

彩打的话,是不是可以提高数据容量

zwjiang8212 发表于 2021-3-25 13:11:35

存储数据的二维码?

shawn_bu 发表于 2021-3-25 14:09:25

cnxh 发表于 2021-3-25 02:34
用那种不要墨盒和碳粉的,直接激光碳化的

这个软件要实现高容量存储答应的ppi精度要求比较高,我试了喷墨打印机600ppi就失败了,只能300ppi还能恢复数据。

avr_sz 发表于 2021-3-25 16:40:11

谢谢分享, 还有这样做的。

考虑把账号密码转成这种图形的jpg文件,别人看不懂

fulitun 发表于 2021-3-25 17:15:18

针打就是盲文{:lol:}

hxl_led 发表于 2021-3-25 17:31:10

我的HP1530打印机,300ppi 打印,但无论怎样试,数据也恢复不了

t3486784401 发表于 2021-3-25 18:58:52

hxl_led 发表于 2021-3-25 17:31
我的HP1530打印机,300ppi 打印,但无论怎样试,数据也恢复不了

扫描设备出来的效果如何?别说拿手机拍啊

另外界面有个 Block 页,可以看到哪里的数据块损坏了

t3486784401 发表于 2021-3-25 18:59:56

avr_sz 发表于 2021-3-25 16:40
谢谢分享, 还有这样做的。

考虑把账号密码转成这种图形的jpg文件,别人看不懂 ...

说 jpg 文件你是认真的么,这种有损压缩分分钟干坏像素。

至少得是 PNG/GIF 的

t3486784401 发表于 2021-3-25 19:00:47

shawn_bu 发表于 2021-3-25 14:09
这个软件要实现高容量存储答应的ppi精度要求比较高,我试了喷墨打印机600ppi就失败了,只能300ppi还能恢 ...

似乎对扫描仪要求更高,600ppi 打印的话,需要 900-1200ppi 的扫描仪才行

hameyou 发表于 2021-3-25 19:27:46

不错,A4 纸当光盘的软件,收藏了!

hecat 发表于 2021-3-25 22:02:47

我家的是一体机,实测扫描仪只能达到300dpi的有效分辨率。

这里用XP的计算器执行文件做实验,先用7z压缩后,得到压缩包36.0 KB (36,877 字节)。
PaperBack选项里选100dpi,点100%,不压缩,打印成PDF,再把PDF打印到纸上,然后扫描回来。

PDF文件:


扫描件:



hecat 发表于 2021-3-25 22:05:06

本帖最后由 hecat 于 2021-3-25 22:17 编辑

好耍{:lol:}            
   
上面的jpg,保存下来,另存为BMP就可以用PaperBak还原成calc.7z

本来想上传png的,文件太大,受论坛上传规则限制,上传不了。然后转jpg,再转回bmp,PaperBak仍然可以正常恢复。

ywd518 发表于 2021-3-25 22:31:50

不错,有空打印试试

t3486784401 发表于 2021-3-25 23:14:56

hecat 发表于 2021-3-25 22:05
好耍            
   
上面的jpg,保存下来,另存为BMP就可以用PaperBak还原成calc.7z


别说你这张扫图了,我把 jpg 下下来转成 bmp 格式,然后手动找几个 Block 数据块打上码。
按照默认 1:5 冗余度,确保打码间距大于 5个相邻 block 距离。

样子大致如下:



扫描结果显示有 5 个 Bad Block,形态整好对应骑兵的几个块。但是依旧正确恢复了最后的 7z 文件:



附上已骑兵的 bmp 文件压缩包,大家可以试试是否能正确恢复:



yangyi 发表于 2021-3-26 09:59:53

这个好玩。不过打印机也要好,碳粉不能淡。

armok. 发表于 2022-1-8 10:13:47

好东西!

一张A4纸可以500K, 双面就是1兆了。

wxws 发表于 2022-1-8 16:28:25

有比特币的 终于可以打印了

qwe2231695 发表于 2022-1-8 16:43:14

stm32的量产bin文件都在128K以下,这样每个产品的 "量产程序.bin" 都可以用A4纸锁到保险箱里面保存

ycwjl728 发表于 2022-1-8 20:21:56

这个牛逼啊!Mark

tgdiy 发表于 2022-1-8 21:02:30

好软件,其实也想搞一个类似的,就不重复造轮子了

jackrich 发表于 2022-1-14 09:37:10

A4纸还能这么玩,厉害!
页: [1]
查看完整版本: 【分享】分享一个把 A4 纸当光盘的软件 Paperbak