【问题标题】:Base64 for auth用于身份验证的 Base64
【发布时间】:2021-04-15 06:56:55
【问题描述】:

我需要构建一个 XMPP 客户端。服务器 PLAIN 机制进行身份验证。 (我认为使用 zlib 压缩)

我从其他使用 PLAIN 机制的 xmpp 系统捕获流量,并且文本似乎是 Base64 (id + token) ADc1Y2M2OWY0MzQwMTUwMjgyOWIwMWY2MDAyN2E0NDE2ADE1YTk0NzM3NTRiYjY2MGExMGYzYTA5MzA5NWQxMmY3 是客户端返回的内容。我把它放到一个 Base64 解码器中,它给了我这个:75cc69f43401502829b01f60027a441615a9473754bb660a10f3a093095d12f7

当我使用 Base64 编码器对其进行编码时,它给我的不是第一个 Base64 字符串 (NzVjYzY5ZjQzNDAxNTAyODI5YjAxZjYwMDI3YTQ0MTYxNWE5NDczNzU0YmI2NjBhMTBmM2EwOTMwOTVkMTJmNw)

谁能解释一下?我在谷歌上找不到任何东西。

编辑: https://xmpp.org/extensions/xep-0034.html#example-3

【问题讨论】:

  • 你对字符串使用相同的编码格式吗?
  • 你的解码结果不正确,实际上解码后的值包含两个不能显示为字符的二进制值(这里用�代替):�75cc69f43401502829b01f60027a4416�15a9473754bb660a10f3a093095d12f7。然后您编码的内容基于一个字符串,其中两个二进制值不存在,因此您基本上编码了一些不同的东西,当然得到了不同的结果。
  • @jps 我使用了base64decode.org 以及它的令牌和帐户ID
  • 请注意,在您链接的页面上,它显示:“对于编码的二进制文件(如图像、文档等),请使用此页面下方的文件上传表单。”就这样做吧。该页面的顶部用于解码为 text。但是,您的解码数据是 not 文本。它包含无法用文本表示的字节。
  • 或者更好的是,不要使用那个页面。自己解码。

标签: base64 xmpp zlib


【解决方案1】:

你解码的结果不正确,实际上是解码后的值 包含两个不能显示为字符的二进制值 (这里用 � 代替): �75cc69f43401502829b01f60027a4416�15a9473754bb660a10f3a093095d12f7. 然后您编码的内容基于一个字符串,其中两个二进制 值不存在,所以你基本上编码了一些不同的东西 当然得到了不同的结果。

来自jps

【讨论】:

  • 我想把它做成分析器
猜你喜欢
  • 1970-01-01
  • 2013-08-10
  • 2018-05-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多