【问题标题】:Is possible to encode WebSocket messages?是否可以对 WebSocket 消息进行编码?
【发布时间】:2016-08-30 23:14:34
【问题描述】:

是否可以编码或混淆或其他东西,我通过 websockets 发送什么?示例消息:

var msg = {
    type: "message",
    data: {
        message: "Hello world!"
    }
}

我需要将此消息发送为不可读,并且在服务器端我需要将其解码回可读版本。 我想从 chrome 控制台网络选项卡 (WS) 中阻止它。

【问题讨论】:

    标签: javascript node.js websocket


    【解决方案1】:

    数据是在用户端生成的,所以你无法真正对他隐藏数据。

    但是您可以在发送之前对其进行编码,以便将其隐藏在 chrome 控制台中,如下所示:

    var msg = {
    type: "message",
    data: {
        message: btoa("Hello world!")
    }
    

    在服务器端你只需要:

    atob(message);
    

    也看here

    请记住:有动力的用户可以在编码发生之前抓取数据,甚至可以在之后自己制作 atob()。没有 100% 的方法来阻止它,它是客户端数据。

    如果你想让他的生活更艰难,你可以尝试使用带有 RSA 的加密库,但同样,他可以在加密开始之前捕获它。

    【讨论】:

    • 在发送到服务器之前对数据进行编码的一般目的不是对客户端隐藏它,而是对包传输中的所有其他人(即:Internet Access Provider)隐藏它。但正如你所说,他必须 btoa() 消息
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-30
    • 2011-12-16
    • 1970-01-01
    • 2015-12-10
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多