持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第3天,点击查看活动详情
从事互联网开发的都知道,数据安全的重要性。无论是对企业,还是个人,都是应该值得被重视的。在互联网时代,数据就是财富,这句话一点也不夸张。你是否经常听到xx公司的数据库被程序员删除数据,而导致企业的巨额损失?
对于数据安全,主要在于保护隐私数据。通常通过数据加密的手段来保证数据安全,比如对称加密和非对称加密。对称加密如AES,非对称加密如RSA。
我是通过RSA加密保护最重要的隐私数据的。即通过公钥对隐私的内容文本进行加密,然后通过私钥进行解密。
imToken的助记词是由12个单词组成的,我把这12个单词通过RSA加密,然后得到加密后的助记词内容和私钥,公钥直接销毁。也就是说,我拿着加密后的内容和私钥。每一种保存在3个以上的地方,比如网盘、电脑、手机、U盘等。我备份这12个单词的时候,由于疏忽,把其中一个单词打错了。然后我恢复imToken使用的时候,这12个单词是恢复了,但是有一个单词是错的。最终就导致我无法恢复里面的数据。于是我就去找到了BIP-0039助记词协议github.com/bitcoin/bip… 。然后被我一个一个试,最终给试出来了。好在imToken错误的单词会给我报错,我就找这2048个单词里面长得比较像的单词,逐一尝试。 我这是有11个正确的单词且位置正确,竟然被我给暴力破解了。那么,你一个单词都不知道,你真的能碰巧试出别人的助记词吗?我们来看看这个几率有多大,2048的12次方换算成2的指数看一下,大概是2的120次方种可能性,然后用1去除,这个可能性是非常小的几乎不可能。即便是你试出了一个符合规则的,肯定也是没有人正在使用的。
总结一下,对于安全要求比较高的数据,我会采用分片和多备份的方式解决,这也是后台分布式常用的。以后你对于数据安全是否有专业的保护措施了呢?