V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xhatt510
V2EX  ›  程序员

逆天!干了 3 年的同事用 base64 编码做 token 并且把密码也放了进去

  •  1
     
  •   xhatt510 · 2024-04-22 16:03:46 +08:00 · 30547 次点击
    这是一个创建于 504 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近做项目,他搞了用户登陆和状态保持。

    当时存的时候他跑过来问我密码要不要用 base64 加密存。
    我说这和明文没啥区别把,区别就是比明文多浪费1/3空间。不如直接加盐然后存 md5 。

    当我看到 token 的时候,我人直接傻了。

    这就是 token YWRtaW58cGFzczEyMzQ1NnwxNzEzNzcxNzg4

    我相信只要干过开发的人一眼就能认出来这是什么东西。 我本来以为这已经够逆天了。解码出来的内容才真的让人窒息。

    admin|pass123456|1713771788

    数据库的 user 表里面的用户名和密码也都是base64 编码存储的。

    我本以为这种最基本的常识问题,只可能在一个实习生身上发生,但是这个同事至少在这里干了 3 年了

    在他的知识库里 base64 编码=加密

    然后只有这种格式的才叫json。(用一对花括号包裹{}

    {
        "test": 1
    }
    

    这种不叫json,更别说其他的值类型的被叫json

    [
        "abc",
        "def"
    ]
    
    第 1 条附言  ·  2024-04-22 16:39:23 +08:00
    可能我描述有问题,我的意思是,这个同事只认为花括号的才是 json ,其他的所有都不是。
    第 2 条附言  ·  2024-04-24 14:42:40 +08:00
    看了大家这么多回复,我再来说个重磅的。
    很难相信把?我在的公司居然是一家专做安全的公司。
    205 条回复    2024-04-25 14:43:32 +08:00
    1  2  3  
    syyyyy
        201
    syyyyy  
       2024-04-24 22:58:38 +08:00
    想想有人把数据库的账号密码 ip 写在博客里直接发出来
    hesetiema
        202
    hesetiema  
       2024-04-25 01:26:35 +08:00
    1.前端通过后端返回的 RSA 公钥对前端生成的随机密钥进行 RSA 非对称加密,接着将要传递的数据 data 转换为字符串,接着将该字符串通过 SHA256 散列算法生成数据 data 的签名,然后通过随机密钥对要传递的数据(带有签名)进行 AES 对称加密,最后再将加密后的随机密钥、数据返回给后端。
    2.后端通过后端保留的 RSA 私钥解密,拿到随机密钥。再通过随机密钥进行 AES 解密,拿到前端实际传递的数据(带有签名),接着后端通过对带签名的数据再次进行 SHA256 验签,验签成功证明数据未被修改,拿到真正数据 data
    devwolf
        203
    devwolf  
       2024-04-25 08:28:08 +08:00
    。。。我这边现在呆在给政府做房地产项目的公司,复用的很多老项目一堆上古开发造就的安全问题,压根没时间处理,都在上面打补丁累加迭代
    Jack927
        204
    Jack927  
       2024-04-25 09:48:32 +08:00
    你要相信,世界之大,无奇不有。
    https://imgur.com/YPWrd5o
    Navee
        205
    Navee  
       2024-04-25 14:43:32 +08:00
    ![]( "又不是不能用")
    1  2  3  
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4924 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 03:57 · PVG 11:57 · LAX 20:57 · JFK 23:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.