耐磨损汉字私钥
2025-02-20 22:29
刘教链
2025-02-20 22:29
订阅此专栏
收藏此文章

小技巧:搜索教链历史文章,从下方公众号名片进入后,点击右上角放大镜图标,输入关键词或“指定发布时间”进行查询。


却还是要写一写,提醒自己,这一次要做的比上一次好一点点。有一点点进步,就可以了。


投资这事儿,要战胜的最大敌人,不是别人,而是自己,自己心中的魔。


隔夜 BTC 小幅向上修复,重新站上 97k。昨 2.19 教链内参《一氩一子磷一鹅》提到,教链琢磨出了一个用汉字编码 BTC 私钥的办法,克服英文符号书写和辨识困难(比如大写 C 和小写 c)、不耐磨损(比如 E 如果刻在石碑上磨损掉了底部就会被误认成 F)、对汉语使用者不友好等问题。


后来教链又迭代了几版设计,初步定稿的版本目前已经整理并开源到了 github(MIT 协议,自由、免费使用):


https://github.com/hmisty/base58ext-hanzi 


欢迎感兴趣的朋友试用。反馈建议请直接提交到 github 代码库的 Issues 里。


代码库里附带了一个 python 程序,可以用来把 BTC 私钥、地址(base58check 格式或 bech32 格式)转换成汉字编码,或者反向转换。如果你需要其他语言的版本,可以把源代码喂给 deepseek 让它帮你转换成其他编程语言。


举几个例子:


一、比特币压缩格式私钥,base58check 编码:


输入:KypbGTSbWygTSBeHsFz1g4yg5VqvcTNMJDFW54eXm8EJmVVC7336


输出:钾杨潘白镓钛硫白钨杨高钛硫硼鄂氢孙氟赵壹高肆杨高伍钒秦俞程钛氮镁金镝氟钨伍肆鄂氙毛捌铒金毛钒钒碳柒叁叁陆


二、比特币普通地址格式,base58check 编码:


输入:1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa


输出:壹氩壹赵磷壹鄂磷伍铅镓鄂冯伊贰镝镁磷钛冯钛锂伍硫锂毛俞柒镝伊俞冯氮安


三、比特币隔离见证地址,bech32 编码:


输入:bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq


输出:白程壹秦安任零孙任任任柒谢冯孔俞杨伍李陆肆叁李杨戴牛王玖任鄂伍玖高唐赵赵王冯伍毛戴秦


编码字符集是 base58check 扩充了 bech32 的 0 和小写 l,为了同时兼容隔离见证地址。因此 base58ext 字符集包含 60 个字符:


0123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz


对应的汉字则是:


零壹贰叁肆伍陆柒捌玖氩硼碳镝铒氟镓氢金钾锂镁氮磷铅氡硫钛铀钒钨氙钇锌安白程戴鄂冯高韩伊蒋孔李毛牛欧潘秦任孙唐乌俞王谢杨赵


它们的偏旁部首是:


雨士贝厶聿亻阝木扌王气石石钅钅气钅气金钅钅钅气石钅气石钅钅钅钅气钅钅宀白禾戈阝冫高韦亻艹子木毛牛欠氵禾亻子广丿人王讠木走


( 化学元素部首多为「钅」「气」「石」,而这几个部首均不在姓氏中出现,确保区分度 )


汉字结构上也选用了上下结构、左右结构等不同构型,以确保较高的区分度。


教链考虑的设计目的是要 1、耐磨损,容错性强;2、轻松译码。在 deepseek 的帮助下,经过反复尝试,最终确定使用财务大写汉字数字编码阿拉伯数字,使用元素周期表的元素汉字编码大写字母,使用百家姓汉字编码小写字母。


充分运用社会既有的、广泛具有的公共知识进行编码的好处是,即便不看编码表,一个受过教育的人,靠直觉也能够轻松分辨数字、化学元素(大写字母)和百家姓(小写字母),并能轻松目视译码,把耐磨损汉字私钥直接对译成原始的 base58check 私钥。


教链感受了一下:目视汉字私钥,如上面的“钾杨潘白镓钛硫……”,可以轻松直接写出“KypbGTS...”来。


而对于汉语使用者而言,抄写和识别汉字,比书写和辨认无规律的混合大小写的英文字符要更轻松一些,也避免了一些笔误(比如把大写 C 和小写 c 混淆,把大写 O 和小写 o 以及数字 0 混淆,把小写 g 和小写 q 混淆,把数字 1 和字母 l 混淆,等等)。


之所以叫做耐磨损私钥,是因为汉字作为象形字,其信息量和全息度远高于英文字符和阿拉伯数字,这就使得当我们把汉字私钥写在纸上、刻在铁板上或者刻在石头上的时候,在长期保存经受环境腐蚀的情况下,汉字的方块字在部分被涂抹、磨损、毁坏的情况下,仍然有更大的辨识度,更有可能复原。


而在汉字字形的挑选上,教链也下了一番心思。这方面的细节,此处不再赘述,可以打开上面的 github 开源仓库查看说明文档。


最后说一下,编码成汉字私钥不是为了加密,防止破译,恰恰相反,耐磨损汉字私钥的编码设计是为了尽可能简单、直观地译码而设计的。


这项工作是冷钱包保存比特币策略的延续。关于使用冷钱包,也就是使用私钥保管 BTC,请参考教链此前写的《如何使用私钥保管比特币》《小科普:私钥、地址、助记词》《哪里能买到冷钱包?答案你肯定想不到》《脑钱包》等文章。


本文介绍的工作,则是在我们创建了私钥之后,尝试解决更安全抄写、保管和防意外的问题。


比如上面的私钥:


钾杨潘白镓钛硫白钨杨高钛硫硼鄂氢孙氟赵壹高肆杨高伍钒秦俞程钛氮镁金镝氟钨伍肆鄂氙毛捌铒金毛钒钒碳柒叁叁陆


长度是 52 个汉字(压缩格式私钥的长度是 52 个字符)。


在此基础上,就可以进一步设计私钥管理的策略。比如可能是这样的:


1. 生成:采用脑钱包生成私钥。脑钱包的口令由掌财人记忆在脑子里。


2. 备份:把私钥拆分成 19 个字、7 个字、7 个字、19 个字四个部分,分别做如下处理:


头部 19 个字:抄写在一个本子上,锁在家中保险柜里


钾杨潘白镓

钛硫白钨杨高钛

硫硼鄂氢孙氟赵

( 五言句、五言句、七言句 )


肩部 7 个字:刻写在令牌上,老公随身携带


壹高肆杨高伍钒

( 七言句 )


腰部 7 个字:刻写在令牌上,老婆随身携带


秦俞程钛氮镁金

( 七言句 )


尾部 19 个字:抄写在另一个本子上,由可以负责抚养孩子至成人并把本子传承给孩子的老人代为保管


镝氟钨伍肆

鄂氙毛捌铒金毛

钒钒碳柒叁叁陆

( 五言句、五言句、七言句)


如果口令不慎忘记,或者掌财人意外死亡,那么亲人可以通过收集私钥碎片还原私钥。


持有碎片的亲人之间将通过博弈进行利益分配。


任何一个本子或者令牌丢失或失窃,捡拾者或窃贼都无法恢复出私钥。


如果任何一个本子被毁,比如火灾等,或者任一令牌丢失,都可以通过掌财人使用脑钱包口令重新恢复。


当然这只是一个应用场景的设想和示例。


欢迎就此展开进一步的思索和探讨。


* * *

2.19内参:一氩一子磷一鹅

阅读更多内参,请加入刘教链的 VIP 会员:

* * *

延伸阅读更多刘教链精彩文章:

真的假的?Bitcoin Core 不支持导入私钥了? 2024.6.23

自己手搓一个比特币私钥地址生成器,不到百行代码,不依赖第三方库! 2024.6.14

软件泄露你私钥的 5+N 种方法 2023.8.28

警惕私钥缺陷,牛奶悲伤漏洞已造成近 30 枚 BTC 被盗 2023.8.15

BIP-38: 口令保护的私钥 2023.6.20

私钥争夺战 2023.6.17

江城子·非你私钥非你币 2023.6.10

教链内参 2025 年 1 月合订本

教链内参 2024 年 12 月暨全年合订本

( 公众号:刘教。加入会员:公众号回复"会员"或"VIP")

( 免责声明:本文内容均不构成任何投资建议。加密货币为极高风险品种,有随时归零的风险,请谨慎参与,自我负责。)

喜欢本文就请点赞转发支持哦

👇👇👇














































































【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

刘教链
数据请求中
查看更多

推荐专栏

数据请求中
在 App 打开