个人认为 base64 仅是一种编码方式,不算是加密算法

2019-07-05 14:00:26 +08:00
 hoyixi
看到 V 站上不少在加密相关的回帖里,以为用 base64 编个码,就算加密了.

是个人顺手就解码了(当然,超级计算机小白,连 base64 编码特征也看不出来或者压根不知道这回事,倒是不知道解码),这算哪门子加密?

base64 编码本身出现的意义是把二进制数据编码为文本,方便网络传输~

不少人 base64 编码 email 或者 WX 等联系方式,那是骗爬虫的,爬虫是根据文本特征提取文本的,base64 只不过隐藏了 email 地址等的文本结构特征。 然而照样可以抓 base64 编码,然后解码判断提取。


所以,base64 不是万能的,别为了 base64 而 base64,也别以为 base64 包打天下。
23477 次点击
所在节点    程序员
201 条回复
niubee1
2019-07-05 15:22:06 +08:00
由此贴可见为什么网络漏洞层出不穷。。。。。。
danmu17
2019-07-05 15:22:17 +08:00
@across 你搞错重点了,你想的这个问题的实质是现代汉语导致的,毕竟现代汉语是一个诞生不到 100 年而且仅仅依靠几个留学生从日语 /英语里拼凑出来之后又被割裂到两岸三地外加一个新加波的四种语言。
base64 是 binary-to-text encoding,
MD5 message-digest algorithm 是 hash function,
RSA (Rivest – Shamir – Adleman) 是 the first public-key cryptosystems
Aresxue
2019-07-05 15:22:37 +08:00
看你怎么定义加密。Base64 从一开始就不是为了加密信息的。。。
limuyan44
2019-07-05 15:23:50 +08:00
我感觉很多人似乎连密码学基础都没有就在谈论这个问题,争论这个其实没有多大意义,现代密码学为了保证中间人攻击的难度更多的是通过计算复杂度来保证明文安全,谈论这个问题本身就没有意义,公认的加密算法其实你也知道解密算法的比如 rsa 难道你不知道解密的算法吗?何况部分的 rsa 加密算法已经被破解了,如果以后超级计算机计算能力提高这种情况还与 base64 有区别吗?
nvkou
2019-07-05 15:24:09 +08:00
广泛应用的霍夫曼编码算不算?
base128 算不算? 算。你不说这是 base128,谁知道啊?
rekulas
2019-07-05 15:24:13 +08:00
base64 认为是编码或加密都不算错,说加密是因为它确实符合加密的概念,说编码是因为加密方法太简单了人人皆知而且没有密钥拿到即可解密,举个简单的例子,把 base64 乱序并改进范围成 base9999,即使没有密钥你也很难解密,反之采用 aes256+固定密钥作为一个新的加密算法 aes222,即使 aes 是高强度加密,但算法人人都知道(同 base64)的话那就成编码了,所以我认为加密与编码不是唯一不变的
tabris17
2019-07-05 15:24:19 +08:00
ROT13 都算加密,凭啥 BASE64 不算
jaylee77
2019-07-05 15:24:51 +08:00
senghoo
2019-07-05 15:26:13 +08:00
知道 base64 的原理的都知道,其实 email 做 base64 后发出来也是不靠谱的。是有固定特征的。
从反垃圾邮件的角度考虑的话,当前可能没有爬虫能处理。不代表以后没爬虫能处理。

比如说 gmail 邮箱 base64 后,后缀是固定的以下几个之一。对于爬虫来说只是稍微增加了难度而已

AZ21haWwuY29tCg==
QGdtYWlsLmNvbQo=
BnbWFpbC5jb20K
linvaux
2019-07-05 15:27:21 +08:00
它从来都不是加密算法🌚
jaylee77
2019-07-05 15:27:54 +08:00
@hoyixi

比如我知道 V 站的人喜欢 base64 留 email, 抓一下解码(解不了拉倒,不试了)匹配好了,多一步解码罢了。

=====
你是不是没搞清楚大家为什么留 vx 或者 email 喜欢用 base64 编码? 人家是为了防止被社工啊,不知道你在这扯什么东西
liukanshan
2019-07-05 15:29:36 +08:00
完全不理解这贴意义何在 如果是科普 可以做一些高深的东西吗?
wednesdayco
2019-07-05 15:35:47 +08:00
Base64 是算法
Base64 是加密
但是 Base64 不是加密算法
across
2019-07-05 15:39:23 +08:00
@danmu17
???
我的意思就是纠结语义没意思啊。针对论坛的问题是加密方案问题。

Base64 和 ASCII 一样,按理论意义可以说是加密,但现实中因为编码机制是公开的,实际应用就没有加密意义。凯撒移位也是加密,按理论也有个密钥,但是这个应用也是靠算法来保密的。

现在社会应用的加密,RSA、ASE 等等,都是公开算法,但里面设计包含关键密钥来保证私密性吧?更先进的加密算法我就不知道了。
iblessyou
2019-07-05 15:39:55 +08:00
怎么感觉楼主也是了解不太清楚。

维基百科解释:
加密(英语:Encryption )是将明文信息改变为难以读取的密文内容,使之不可读的过程。只有拥有解密方法的对象,经由解密过程,才能将密文还原为正常可读的内容。

从这个角度来说,两个学生用英语传信,来防止不会英文的家长看到也算加密。
我也一直把 base64 当加密用,朋友圈之类发一下,可以屏蔽到需要令人讨厌的亲戚朋友。
而同事一眼就看出是什么,随手复制就解读了。效果很好。
而别的高级的加密方式,我发了可能就没有人能懂了。
程序员之间用 base64 当加密交流很正常啊,可以屏蔽好多行外人和小白。

你把图片转 BASE64 当编码用他就是编码, 你当加密用他就是加密。
就这还斗的一帖子的火气
caviare
2019-07-05 15:49:00 +08:00
我觉得大家 v2 用 base64 发 email wx qq 是一种约定成俗 大家习惯了 前辈们这么发 新进来的看到了 自然而然就也会用 base64 发 也没人发个帖子说 base64 是加密 base64 牛啤 你发个这个帖子 是想打谁的脸 还是单纯的像引战呢?
hundan
2019-07-05 15:49:54 +08:00
月经贴
joyhub2140
2019-07-05 15:58:46 +08:00
不用 base64 默认的码表,采取自定义的码表,并且不公开,还是可以用来加密的。
dalieba
2019-07-05 15:59:53 +08:00
GnuPGP 来了解一下
hiplon
2019-07-05 16:01:19 +08:00
前排

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/580295

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX