【问题标题】:Base64 encode - decode issueBase64 编码 - 解码问题
【发布时间】:2016-02-01 17:22:13
【问题描述】:

我读到 Base64 是确定性算法,并产生独特的结果。考虑这两个编码的 base64 值:

KFNjcmlwdCBYU1MpIFVSTDogaHR0cDovL2xvY2FsaG9zdDo4MDgwL2h0bWxQYXJzZXIvLiB8IElEOiBUaGlzIGlzIElEMC4gfCBDbGFzczogVW5hdmFpbGFibGUuLiB8IFRleHQgQ29udGVudDogCgogICAgRGF0YTogPGlucHV0IG1heGxlbmd0aD0iOTk5OTkiIG5hbWU9ImRhdGEiIHR5cGU9InRleHQiPiA8YnI + CiAgICA8aW5wdXQgdmFsdWU9InN1Ym1pdCIgdHlwZT0ic3VibWl0Ij4KICAgIAogIDxpbnB1dCBvbmNsaWNrPSJqYXZhc2NyaXB0OmFsZXJ0KCdJbnB1dCBJRCBYU1MgLSBtb3VzZWNsaWNrJykiIGF1dG9mb2N1cz0iIj4gIAogICAgIAogICA8c2NyaXB0IGNsYXNzPSJmZmYiPmphdmFzY3JpcHQ6YWxlcnQoJ1NjcmlwdCBGT1JNIFhTUycpPC9zY3JpcHQ + P>

&

KFNjcmlwdCBYU1MpIFVSTDogaHR0cDovL2xvY2FsaG9zdDo4MDgwL2h0bWxQYXJzZXIvLiB8IElEOiBUaGlzIGlzIElEMC4gfCBDbGFzczogVW5hdmFpbGFibGUuLiB8IFRleHQgQ29udGVudDogDQoNCiAgICBEYXRhOiA8aW5wdXQgbWF4bGVuZ3RoPSI5OTk5OSIgbmFtZT0iZGF0YSIgdHlwZT0idGV4dCI + IDxicj4NCiAgICA8aW5wdXQgdmFsdWU9InN1Ym1pdCIgdHlwZT0ic3VibWl0Ij4NCiAgICANCiAgPGlucHV0IG9uY2xpY2s9ImphdmFzY3JpcHQ6YWxlcnQoJ0lucHV0IElEIFhTUyAtIG1vdXNlY2xpY2snKSIgYXV0b2ZvY3VzPSIiPiAgDQogICAgIA0KICAgPHNjcmlwdCBjbGFzcz0iZmZmIj5qYXZhc2NyaXB0OmFsZXJ0KCdTY3JpcHQgRk9STSBYU1MnKTwvc2NyaXB0Pg == P>

这些都给了我相同的解码输出。这怎么可能?我找不到这两个值的解码格式之间的任何明显差异。

是否与UTF 8、ASCII等编解码方案有关?

【问题讨论】:

    标签: encoding base64 decoding


    【解决方案1】:

    解码后的字符串是不同的——它们在行尾有不同的 CR/LF 序列:\n\n (0a0a) vs \r\n\r\n (0d0a0d0a)

    00000060  20 54 65 78 74 20 43 6f  6e 74 65 6e 74 3a 20 0a  | Text Content: .|
    00000070  0a 20 20 20 20 44 61 74  61 3a 20 3c 69 6e 70 75  |.    Data: <inpu|
    
    
    00000060  20 54 65 78 74 20 43 6f  6e 74 65 6e 74 3a 20 0d  | Text Content: .|
    00000070  0a 0d 0a 20 20 20 20 44  61 74 61 3a 20 3c 69 6e  |...    Data: <in|
    

    提示:使用hexdump -C &lt;file&gt; 获得这样的输出。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-03
      • 1970-01-01
      • 2012-01-12
      • 1970-01-01
      • 2011-09-22
      • 2016-04-01
      • 2015-07-21
      • 2010-12-29
      相关资源
      最近更新 更多