有一次,微信群里组织比赛,需要提交个人信息,比如联系方式和身份证号码等。为了保护隐私,我决定使用 Base64 编码,将信息私发给群主。起初,我以为这种方式可以有效防止敏感信息泄露。但很快我意识到一个问题——群主可能将这段 Base64 字符串复制到任意一个解码网站,解码网站知道了我的个人信息。
这不禁让我思考,使用 Base64 来保护隐私,真的靠谱吗? 传递重要信息时,你会加密吗?
1
kenneth104 67 天前
为啥靠谱?
|
2
kenneth104 67 天前
隐私不都是密钥签名,有啥 Base64 的事?
|
3
lancelock 67 天前 4
谁跟你说 base64 可以保护隐私的
|
4
wwalkingg 67 天前 1
Base64 从来都不是为了保护隐私
|
5
darkengine 67 天前
。。。反正群主都能看到你的信息,为啥不直接发啊
|
6
x86 67 天前
你私聊发不就行了
|
7
tcper 67 天前 47
想起 V2EX 上有个人发求职,把 email md5 之后贴出来了
md5 确实能保护隐私了 |
8
LanhuaMa 67 天前 2
这不禁让我思考,使用鱼缸来喝水,真的卫生吗?补充电解质的时候,你会用水杯吗?
|
9
User2023 67 天前 via iPhone
加个 aes 密钥,大部分解密是本地 js ,不排除有在线的
|
10
kenneth104 67 天前
看到新人 op 还关注安全。。为啥会有这种离天下大谱的想法?
|
11
gandli OP 哈哈哈
|
12
darkings90 67 天前
防君子不防小人
|
13
kera0a 67 天前 via iPhone 9
不是用来保护隐私的,是用来防搜索引擎爬虫的
|
14
344457769 67 天前 4
在帖子中使用 Base64 编码的目的是不让搜索引擎的爬虫直接抓取到原始的联系方式,以避免接收和帖子无关的骚扰信息。
在微信里私聊发送 Base64 编码后的隐私数据没有任何意义,反而增加了双方编解码的工作量。对方大概率还是要以明文形式保存你的数据的,如果出现了隐私泄露,更大可能是对方保管数据时出现了问题而不是在你们沟通的过程中出现了问题。 |
15
PPPaul 67 天前 1
编码算法又不是加密算法
|
17
hafuhafu 67 天前
感觉你这个场景这么做,多少有点幽默了...
你发的对象本来就要知道你的信息,而你又是私发,只是多了一个莫名其妙的你编码和群主解码步骤,图啥。 为什么 V2 上面留联系方式会 base64 一下:为了不让搜索引擎直接收录联系方式,一搜就出来。 |
19
binxin 67 天前
用 b64 难道不是用来防范搜索引擎这个渠道泄漏么。。。。
|
20
potatowish 67 天前 via iPhone 3
这不禁让我思考,我付钱的时候真的安全吗?收钱的人可能会直接拿走我的钱, 这不禁让我思考,付钱时,你会先放到保险箱再给他吗?
|
21
pota 67 天前
公开论坛发 base64 只是为了不让简单的搜索可以搜到。私发图啥
|
22
liuchenx 67 天前
编码和加密是两个东西吧
|
23
b821025551b 67 天前 15
Base64 只是一种编码方式,叫 encode ,用于标准化传输;
md5 是一种特征值算法,叫 hash ,用户校验传输后的数据; 而加密,叫 encrypt ,实现算法有 AES 、DES 这些,这个才是真正用于加密的。 这三种东西用途完全不一样,不要混淆。 |
24
ddczl 67 天前
Base64 只是编码,不是加密,也不是保护隐私用的
|
25
issakchill 67 天前
|
26
BeautifulSoap 67 天前 7
虽然 lz 本身对于 base64 理解有误,但上面 20 多层楼,没一个人抓到了 lz 提问的重点,这不禁让我怀疑,楼上各位真的都是帖子都不看就直接评论的主吗?还是各位代码写多了,连基本的阅读理解都做不到了?
很明显 lz 最担心的核心问题是 “群主可能将这段 Base64 字符串复制到任意一个解码网站,解码网站知道了我的个人信息”。这是个非常实际的问题,也是很多公司明令禁止做的事情:把敏感信息复制到搜到的各种在线编解码网站、在线加密解密网站上进行操作。这些网站虽然方便,但的确有偷偷收集用户提供的信息导致信息泄露的风险 不解决 lz 的这个问题,上面说的用 aes 加密之类也是没用的,因为你用 aes 加密,发给对方后,对方搜了个在线 aes 解密的网站,然后密钥和密文一输,一样白搭 对于这种情况,我假设群主是对编程和命令行一无所知的小白,唯一解法就是 lz 自己写个编解码小工具或者找个开源工具,发给群主,让群主用这个别去网上搜 |
27
kyuuseiryuu 67 天前
5YW25a6e77yM55Sf5rS75Lit5pyJ5LiA5Lqb5Lq65piv6L275b6u5pm66Zqc77yM5Y+q5LiN6L+H5Zug5Li655Sf5rS75Y+v5Lul6Ieq55CG6ICM5rKh5pyJ6KKr5Lq65Y+R546w44CC
|
28
gandli OP @BeautifulSoap 不知道大家怎么快捷的解码 base64 ,如果复制到解码网站,就增加了信息泄露风险。但是,你这个就更加复杂了,难道用阅后即焚、非对称来加解密?
|
29
FireKey 67 天前 2
微信私发用 base64,你防的是微信?你微信钱包没绑身份证吗
|
31
tomatocici2333 67 天前
|
32
kyuuseiryuu 67 天前
你不发给群主 base64 编码的信息,群主就不会拿信息去危险网站解密,那网站是不是就拿不到你的信息了?
|
33
zsc8917zsc 67 天前
@gandli #28 自己部署一个解码网站呗,纯前端解码不涉及信息采集
|
34
InDom 67 天前
@BeautifulSoap #26 你看, 私聊发 base64 反而增加的泄露风险, 真不如直接发明文.
|
35
Link99 67 天前
如果不知道你内容的用途 理论上还是安全的
比如你的账户是 abc123 密码是 123456 编码后发给群主 群主到我的网站上解密 我就算偷偷存了 也不知道这个有什么用 在我眼里和乱码没什么区别 但比较明显的内容就需要注意了 比如手机号 邮箱 身份证号 说起这个 一键部署解码网站算不算一个比较大的需求 |
36
BeautifulSoap 67 天前
@gandli 麻烦就对了,如果你想要方便,那就选择一个信任的 base64 编解码网站,完全信任它,然后让群主只用这个网站编解码。或者干脆自建一个编解码网站 or 写个单文件的 html 也行。又要安全,又要方便,没那么好的事情
|
37
Rickkkkkkk 67 天前
看起来你没用过搜索引擎搜自己的 QQ 邮箱 姓名
|
38
renmu 67 天前 via Android
所以你不需要 base64 ,纯属多此一举
|
40
ixcode 67 天前
“这不禁让我思考” 我觉得你在侮辱思考这个词,编码、加密、哈希、签名这些基本概念都搞不清楚,就先别思考了
|
41
twig 67 天前 via iPhone
Base64 毫无加密功能。
现在任何一个语言都自带 base64 编码、解码的包。实际生产中的用途是前端用 base64 编码之后,可以把图片直接放到 JSON 里,传给 Rest API 。 |
42
hxysnail 67 天前
我一直好奇回帖 base64 有啥用,原来是防搜索引擎
|
43
twig 67 天前 via iPhone
Base64 也防不了爬虫。解码 base64 成本为 0 。爬虫看到 base64 ,爬都爬到了,为什么不解开看看?
|
44
MoonLin 67 天前
先明白自己防范对象是谁才能选择正确的方式,你私聊发 base64 是为了防谁?
|
46
twig 67 天前 via iPhone
@hxysnail 不是。一开始是电子邮件协议传递信息的时候把二进制换成文本,这样可以在不更改协议的前提下,直接传复杂文本或二进制文件,兼容当时很多只支持 ASCII 的邮件传递系统。
|
47
andforce 67 天前
笑死我了,你是不是看 V 站很多人都发 Base64 的联系方式?
|
48
mikewang 67 天前 via iPhone
base64 只能防低级的爬虫
你应该让赛方创建一对公私钥,公布公钥,然后所有人用这个公钥加密发过去。只有持有私钥的人才能解密。 |
49
finab 67 天前
@twig
也不是那么容易,爬虫咋知道一个字符串是 base64 ,除了后面可能有两个 ==,难道要把爬到的内容都 base64 解码一下嘛 其实验证也很简单,你用搜索引擎搜一个内容时,有搜到用 base64 编码后的结果么,没有的话就证明 base64 防搜索是一个有效的措施 |
50
cdlnls 67 天前 via Android 1
举个例子,假如我知道你的微信号,这个时候你在 v 站明文留下了你的微信号。
我在 google 上搜索你的微信号,这个时候大概率就能找到你这个账号留下了微信号,然后我就能知道你的 v 站账号,以及你的所有发言。 然后顺藤摸瓜找到你泄露的其他信息,最终把信息关联起来,可能定位的你的各种信息。 如果你用 base64 编码,就可以在一定程度上让你已经泄露的信息分散开,让信息关联的门槛变高一点。 这也是为什么用小号,留小号邮箱,不同网站应用使用不用用户名邮箱的原因之一。 |
51
dule 67 天前
谁说 Base64 能保护隐私,论坛里发是为了不被搜索引擎等检索到关键信息,而且发的大多也是能够公开的联系信息
|
52
drymonfidelia 67 天前
@finab 对内容 base64 解码的资源消耗可以忽略不计。尤其是针对 V2EX 的爬虫,base64 就是告诉爬虫这里是联系方式或者其它敏感信息,快来爬。所以我觉得大部分 v 友只在意形式主义安全,完全没起到作用
|
53
finab 67 天前
@drymonfidelia
那测试一下好了,等一段时间,你分别用下面两个字符串 google 搜一下,看哪个能被搜索到 1. ZHJ5MTIzbW9uZmlkZWxpYQo 2. dry123monfidelia |
54
finab 67 天前
ZHJ5MTIzbW9uZmlkZWxpYQo 需要你发到另外一个帖子
关键词都是 dry123monfidelia |
55
www5070504 67 天前
哥们 base64 不是加密
|
56
czkm1320 67 天前 6
@tcper #7 https://www.v2ex.com/t/937283#reply375 经典永不过时
|
57
drymonfidelia 67 天前
@finab google 搜明文不会搜到 base64 编码后的信息正常,我的意思是在 v 站用 base64 编码就是在告诉营销机器人这里是联系方式,快来收集,这样针对 v 站开发隐私爬虫是比别的网站容易的,别的网站还要用 NLP 之类的方法才能稍微精准一点识别简中互联网上留联系方式的方式 加薇 +v vx 什么的,完全精准识别淘宝都搞不定,v 站不一样,只要分词判断符合 base64 规则后都尝试 base64 decode 一下就能精准收集了
|
60
hartlee 67 天前
base 是躲避爬虫的。。。。
|
62
twig 67 天前
@finab 「你用搜索引擎搜一个内容时,有搜到用 base64 编码后的结果么,没有的话就证明 base64 防搜索是一个有效的措施」
这句话逻辑其实有问题。Web 上的东西发出来的主要动机是给人看。Base64 不是直接给人看的。所以直接这么发的人本来就少。 |
63
xz410236056 67 天前 1
我感觉 V2EX 很多人并不清楚,加密、编码、摘要的区别
|
66
LING97 67 天前
base64 是防止有些论坛禁止发私人联系方式或者怕爬虫爬到个人信息,谁说这是加密方式的。。。
|
67
proxytoworld 67 天前
用 base64 编码,用来保护信息泄露,有点幽默了...
|
68
proxytoworld 67 天前
base64 用 cyberchef 本地的
|
69
wupher 67 天前
你应该用 AES256 ,甚至公钥密钥加密。
|
70
layxy 67 天前
base64 和明文没什么区别,更别提保护隐私了,他都不属于加解密范畴
|
73
datafeng 67 天前
现在计算机专业都差不到这种程度了吗?连最基本的概念都搞不清?
|
74
miaotaizi 67 天前
把 base64 编码 的前三位, 挪到后面, 解密的时候再放回去算不算加密?
|
75
goodryb 67 天前
好比你报手机号码,正常是阿拉伯数字, 你用英文就是另一种表达方式,正常人都知道 1 就是 one ,one 就是 1 ,你说这样能保护隐私吗
|
76
zbowen66 67 天前
谁告诉你 base64 是保护隐私的?
|
78
zbowen66 67 天前
命令行、浏览器控制台、Raycast 之类的软件、甚至浏览器扩展、油猴脚本到处都能解码 base64 ,而你选择了最危险的在线解码
|
79
qiuhang 67 天前
你没遇到过有人拿你的 qq 号一搜,搜到了你早年在贴吧发的杀马特言论的情况吗? base64 转码防的是这种情况。
|
81
BadFox 67 天前 1
考虑一个行为或者资产的安全性是需要从 CIA 三性以及目的上考虑的。你认为自己考虑到了在当前情景中整体保密性的需求,但实际上仅仅是略微加强了传递过程中的保密性。而考虑到你使用的应该是商用的 IM 工具或是邮件等合理的私发传输渠道,以及 base64 是易于破解的编码方式,所以结果是.......你做的是无用功。
而你的后半段,那更是有一点幽默。当你的信息资产传递到了群主手中,ta 就成为了信息的所有者以及管理者。信息的主体不再是你,你如何去考虑不在自己手中的信息/数据资产的 CIA 三性以及是否不被滥用?这不是嘲笑,这是个切实的问题,国家的答案是合规压力,企业的答案是保密协议,而个体的答案是用脚投票施加压力。 回到你最后的两个问题,1 、Base64 不是加密方式,是编码方式,在你描述的场景中用来保护隐私是一种完全不靠谱的方式。但是在 V2 的场景,大家为了避免爬虫抓取明文联系方式使用 base64 编码,这是非常靠谱的手段。 2 、传递重要信息时,我们必然会加密。有些加密是由浏览器或服务器的机制进行,例如 SSL 。有一些加密是由个人进行,例如压缩包密码。所有的手段都是为了在不破坏信息的可用性与完整性的前提下增加其保密性。 |
82
DOLLOR 67 天前
大家在 v2 上发 base64 后的信息,主要是防止敏感信息被搜索引擎收录后,搜索框直接输入就能检索出来。
这可能有一点初级的防社工效果,但可不是为了“保护隐私”,base64 也不是什么“加密算法”。 你在群里聊天,这些聊天信息本来就不会被搜索引擎收录,搞什么 base64 都是徒劳。相反别人拿你的 base64 去来历不明的网站解码,搞不好反而会被这些网站盗取。 |
83
dog82 67 天前
程序员的恶趣味
|
85
i0error 67 天前
骗金币的 :P
|
87
iamwin 67 天前
base64 更多只是防止编码出错
|
88
kw8023cn 67 天前
你应该先问一个问题:Base64 的作用是什么?
然后就不会有这个帖子了 |
89
kw8023cn 67 天前
还是忍不住想问一句:你是程序员吗?
|
91
guo4224 67 天前
base64 是明文
|
92
chouvel 67 天前
比方说:别人想搜一个手机号,知道了这一个规则后,它直接用 64 编码这个手机号到搜索引擎搜索。但是我认为可以加一些大家都知道的符号来进行抵御,例如 19501010101,我把它改成 195 ,0101 ,0101 在进行编码,就增强了别人搜索到的难度,而且传递了信息。不知道这在书本里面叫什么,社会工程学?
|
94
GodD6366 67 天前
无异于脱裤子放屁
|
95
mangoDB 67 天前
我觉得你对 Base64 理解有误,导致你提交个人信息给对方时做了“匪夷所思”的操作。你需要 GnuPG 来保护你的隐私。
|
96
daquandiao2 67 天前
@czkm1320 为啥这个帖子我点开之后 403 了,其他的都是好的
|
98
FrankAdler 67 天前
> 不知道大家怎么快捷的解码 base64 ,如果复制到解码网站,就增加了信息泄露风险。但是,你这个就更加复杂了,难道用阅后即焚、非对称来加解密?
我做了个小工具,直接发链接,不过貌似只有我自己在用: https://b64s.uk/.1R0npwEfMW0hMR6Qd93i3hzioOqjH5og20aiH8cRIlbSIR1N3OqhLc5TYh |
99
vvhy 67 天前
@finab #72
3 位 ASCII 对应 4 位 base64 ,"wx: finab1 ."base64 后包含"nab1"的 base64 ,还是有被搜到的可能性 这样加盐更保险一点:"f!i@n#a$b%1" |
100
yvkino 67 天前
不安全,应该用 md5
|