首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Coding
V2EX  ›  问与答

[疑惑] 为什么 v 站没有人推行 gpg 反而推行 base64 进行编码

  •  1
     
  •   nnnToTnnn · 140 天前 · 3632 次点击
    这是一个创建于 140 天前的主题,其中的信息可能已经有所发展或是发生改变。

    gpg 可以签名并且加密,而 base64 只能进行编码,为什么 v 站的人不用 gpg

    50 回复  |  直到 2019-07-30 22:02:14 +08:00
        1
    nnnToTnnn   140 天前
    gpg 为什么没有在 v 站流行起来
        2
    springmarker   140 天前
    一个“明文”,一个密文
        3
    Maboroshii   140 天前
    主要是麻烦 ,发一个消息还要带共钥吗
        4
    nnnToTnnn   140 天前
    @springmarker 其实 gpg 只要给一个名称,也可以索引到公钥进行解密,这样就安全多了,主要是增加爬虫的成本
        5
    rrfeng   140 天前 via Android   ♥ 1
    会解 base64 的人 80%(包括大部分随便网上搜一下解的)
    会用 gpg 的估计不超过 10%
        6
    zcjfesky   140 天前 via Android
    因为大家不是真的想加密
        7
    springmarker   140 天前
    @nnnToTnnn #4 我发个内容还得签个公私钥?我解个内容还得找个支持公钥解密的 web 站?
        8
    jdhao   140 天前 via Android
    对,并不是想加密,就是防止直接被爬虫爬了
        9
    nnnToTnnn   140 天前
    @springmarker 安装好了后,直接就可以鼠标复制文字,右键解密即可,但是需要导入对应的公钥,可以通过公钥服务器进行索引
        10
    jadec0der   140 天前
    base64 是反爬虫的,并不需要加密
        11
    niubee1   140 天前
    真正 Geek 的做法是在自己的机器上部署个反向 ping 服务, 发布一个连接, 点开输入邮箱, 反向 ping 服务收到对方邮箱后,再自己的邮箱发过去, 这样子算是真正的“非诚勿扰”了,base64 只是那些掩耳盗铃的玩笑话而已
        12
    nnnToTnnn   140 天前
    @jdhao 其实 base64,特征也很好识别,对于爬虫来说其实没有太大的成本,但是 gpg 就不一样了,成本就有点高了,不同的加密内容对应的公钥不一样,甚至发布公钥的方式也不样,这样成本就很高了
        13
    springmarker   140 天前
    @nnnToTnnn #9 问题就在这啊,我还得找个软件解密,我在手机上没有怎么办,base64 这么多 web 站支持。再说加密的数据不是二进制数据吗?页面上该怎么显示呢?
        14
    killerv   140 天前   ♥ 3
    @niubee1 你不理解别人用 base64 的目的,这么做只是为了不让自己的邮箱被搜索引擎抓到,免得在 Google、百度上输入邮箱就能搜到你的个人信息。并不是为了给人造成困扰
        15
    agagega   140 天前 via iPhone
    gpg 加密了咋公开让所有人都看到…
        16
    glaucus   140 天前
    应用场景不同而已了
        17
    nnnToTnnn   140 天前
    @agagega 带上用户名,上传私钥到 gpg 服务器,id 和用户名进行索引
        18
    maichael   140 天前
    就像楼上所说的,用 base64 不是为了加密,某种程度上来说,只是做混淆,防止爬虫直接爬下来使用。
        19
    niubee1   140 天前
    @killerv 我写个转抓 v 站的爬虫,b64 解开就是了, 你能挡住?反而更好识别了
        20
    killerv   140 天前
    @niubee1 你的爬虫无所谓啊,你的这个行为不是我 encode 的目的。我要防的是搜索引擎,在搜索引擎搜索我的邮箱搜不到相关信息就行。
        21
    icy37785   140 天前 via iPhone   ♥ 1
    本来就不想加密呀,你要先理解用途,你觉得 base64 特征明显,殊不知用 base64 就是因为它特征明显,我不写任何上下文,别人也能理解为发的是什么,怎么能看到内容,这才是最大的优点。
    你认为特征明显爬虫还是好爬就是真的想多了,你写写爬虫就知道了,并没有你想象中那么好爬,大量的没有上下文的,base64,肉眼能看懂,爬虫可就为难了,爬起来麻烦了不止一个量级,这样就已经够了,大多数的数据价值不值得让爬虫多做这么一句麻烦一个量级的操作。
        22
    liukangxu   140 天前   ♥ 1
    题主应该不清楚 GPG 能做什么、不能做什么
        23
    ryd994   140 天前 via Android   ♥ 1
    @nnnToTnnn 私钥公开,公钥可以从私钥计算出来,这还有什么意义呢?
    你有两个选项:
    1. 请每个想看的人贴出自己的公钥,你加密后再把密文回复给他
    2. 公开或半公开( base64 )明文,公开公钥,以私钥签名,证明是你发的。但这除了能一定程度上验证身份之外没有任何意义。

    gpg 的信任链是靠口口相传来建立的,在不特定的公开场合根本没法用。说加密的话,只要你无法验证接收者的身份,那加密和混淆没有本质区别,因为可以中间人攻击。说签名的也是如此。
        24
    Tink   140 天前 via iPhone
    主要是需要有公钥啊
        25
    binbinyouliiii   140 天前   ♥ 1
    我想知道二进制数据怎么贴出来,或者是或孤陋寡闻,楼主可以试试发个对比测试的样例,让我们试试啊
        26
    z0ne   140 天前
    没被害妄想症的感觉都 OK
    (我想多交朋友,微商也无所谓,说不定还能给做微商的合作开发一套微商商城,哈哈)

    小程序开发,目前打算开发一套 SaaS 系统,后边再扩展到电商,有兴趣欢迎聊聊。
    微信:Hack_Fish
        27
    love   140 天前 via Android
    这两个都哪跟哪不是同一个用处,base64 又不是用在加密的地方,只是用在需要明文字符的地方。
        28
    TMDlw   140 天前
    @niubee1 #11 如果你发个求助帖或者求职帖,留下一个解密难度稍微麻烦一点的加密联系方式,看有几个人联系你
        29
    EmotionV   140 天前   ♥ 3
    让我想起了之前留 md5 的哥们
        30
    motown   140 天前 via Android
    楼主请问 0x41E7044E1DBA2E89 这个联系人邮箱是什么
        31
    baicheng10   140 天前
    上面已经说了,本来就不是为了加密……
        32
    rogwan   140 天前 via Android
    @nnnToTnnn base64 两次,爬虫就蒙了,总不能还多重逆向吧
        33
    panda1001   140 天前 via Android
    @binbinyouliiii 二进制数据于是又 base64
        34
    wlh233   140 天前
    @binbinyouliiii base64 就是为了用可打印字符来表示二进制数据
        35
    azh7138m   140 天前
    @binbinyouliiii base64 encode (笑
        36
    deorth   140 天前
    trade-off
        37
    jugelizi   140 天前
    需求->技术
    not
    技术->需求
        38
    msg7086   139 天前
    先问问自己,为什么要签名和加密。
    签名没有线下背书,没有卯月。加密……加密干嘛?

    说 base64 很好识别,那意思是 gpg 不好识别?你怕不是要笑死我。
        39
    anguiao   139 天前 via Android
    不想被搜索引擎索引而已,根本不需要加密
        40
    yzwduck   139 天前
    “其实 gpg 只要给一个名称,也可以索引到公钥进行解密” 在说出这种话前,最好先动手实验一下这的想法是否可行。一旦说出来后,对于你来说可能无所谓;如果用过 gpg 或学过密码学的人的话,这绝对是一生抹不掉的污点。
    还有,麻烦帮忙找一个接收私钥的 gpg 服务器给大家看看。
        41
    Catal9527   139 天前 via iPhone
    不想被爬虫抓+1
        42
    Osk   139 天前
    需要在隐私和易用间取个平衡呀。其实非要用也行啊:

    使用 webencrypt [.] org/openpgpjs/ 等类似的网站,A 生成一对 key (估计没人会上传自己的 key 哈),然后把他的 gpg public key 回复在帖子里,B 使用这个 public key 来加密后回复。


    至于用私钥加密,告诉大家公钥,那为啥我不使用 base64 呢,这不和 base64 一样吗。。。


    but,这里有个最大的问题:gpg public key 和加密后的 message 都是文本内容,但感觉会触发 v 站的蜜汁关键字过滤系统,然后发不出来。。。/降权警告,滑稽 /
        43
    nnnToTnnn   139 天前
    @yzwduck
    @ryd994
    @Osk

    其方式如下,首先公布自己的 KEY,可以在公钥服务器,或者任何一个 HTTP 里面进行公布,也有现成的服务器 sks-keyservers 等等

    交互的原理如下

    A B 两人都上传公钥到服务器

    A 发表帖子: 这里有个 XXX 项目,如果大家有兴趣留下自己的联系方式。我的公钥在 xxx 地方

    B 看到帖子: 索引到 A 的公钥然后进行 encode('msg'),发布到 v2ex, 我的 wechat .... , 我的公钥在 xxx 地方

    A 看到帖子: 拿到消息解密,然后拿到 B 的公钥进行 encode('msg'),然后进行回复消息


    在私钥不泄露的情况下,发布的消息只有双方能看到。
        44
    nnnToTnnn   139 天前
    @yzwduck 其实我说的大概是这个意思,不严格,不好意思
        45
    wly19960911   139 天前
    为的是防止搜索引擎爬到 , 是搜索引擎, 并不是特定的爬虫. 你要的是让人能看懂,机器处理又麻烦的东西而已. 只要人看得懂的东西机器也能解析(只要不是抽象的图像).
        46
    nnnToTnnn   139 天前
    @Osk 私钥加密,就成为了 base64 了, =.= 理论上不会触发吧。。。
        47
    ryd994   139 天前 via Android
    @nnnToTnnn 就你会用 gpg ?
    这不就是我说的询问每个人都公钥,然后单独回复密文?
    问题是完全可以中间人,你怎么知道公钥服务器上的那个密钥就是真的?如果是在这里贴指纹的话,你无非是在利用 V2EX 的 HTTPS 来保证而已

    你不妨试试看,看有几个人会看你的内容?

    反正我是不看,即使我会用 gpg 而且私钥存于硬件智能卡

    闲的蛋疼
        48
    ryd994   139 天前 via Android
    要这样遮遮掩掩何必发论坛,暗网上自个玩好了
        49
    darmau   139 天前
    @niubee1 假的 geek 用域名邮箱,临时添加一个地址,用完废除。
        50
    olaloong   139 天前 via Android
    发出来是给人看的,真想加密 AES/DES 密码密文一起发出来就是了,解密也方便。又不需要防篡改,用 GPG 图个啥?麻烦
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2643 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 29ms · UTC 14:07 · PVG 22:07 · LAX 06:07 · JFK 09:07
    ♥ Do have faith in what you're doing.