V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
angeni
V2EX  ›  程序员

请教下前端加密的安全问题

  •  
  •   angeni · 23 天前 · 430 次点击

    有一个 WebSocket 接口,因为是第一次做凭感觉写的。

    我在发送请求中加入了签名 算法最简单的 MD5 (内容+时间戳+盐)

    这样用一个比较短的过期时间防止重放,签名防止信息修改。

    因为对前端不熟悉有个顾虑就是虽然 nuxt3 编译出来的代码是不可读的,但是前端断点应该能调试到我的加密盐吧?

    我这样做安全吗?

    3 条回复
    flyPig9527
        1
    flyPig9527  
       23 天前
    一般来说没法直接断点看到你的加密盐,为了更安全一些还是用非对称加密吧,比如 RSA 吧
    FengMubai
        2
    FengMubai  
       23 天前
    如果是固定盐, 不安全. md5 也不行, 换 sha256

    你这种签名叫 HMAC, 需要 key 保密. 可以每次会话 (甚至是请求) 生成一个随机 key, 通过公钥加密发送给后端, 并用返回值确认

    更好的方法是用客户端生成的私钥 (不用每次都发送 key 了) 签名

    refer: https://developer.mozilla.org/zh-CN/docs/Web/API/SubtleCrypto/sign
    angeni
        3
    angeni  
    OP
       23 天前
    @FengMubai
    @flyPig9527
    谢谢,明白了~我去试试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   949 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 19:39 · PVG 03:39 · LAX 12:39 · JFK 15:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.