我是否需要为加密字符串指定内容类型?

时间:2016-03-16 18:05:13

标签: encryption content-type

我的脚本返回一个加密的字符串,但默认情况下,它是text / html内容类型。我应该将内容类型指定为text / plain吗?

我知道它不会伤害任何东西,但加密字符串的正确内容类型是什么?

已更新:字符串已使用mcrypt_encrypt加密。不关心这些数据的安全性。

1 个答案:

答案 0 :(得分:3)

"字节流"的正确内容类型是application / octet-stream。最常见的是,加密数据只是一个字节流。"也就是说,根据确切的格式,许多其他内容类型可能是合适的。例如,如果您使用的是OpenPGP format,它会定义使用的特定格式类型,包括application / pgp-encrypted和application / pgp-signature作为multipart / encrypted消息的一部分。您可以在MIME框架中自由发明自己的规范。

但如果你没有更好的申请,并且不想发明任何东西,那么正确的后备是application / octet-stream,这意味着"这里是字节;请在没有解释的情况下传递给他们。"

不清楚你的意思是"一个加密的字符串,"但如果你的意思是你已经将这些字节编码为UTF-8或ASCII(例如使用Base64),那么如果你不想表达关于数据的更多信息,那么text / plain是可以接受的。 text / plain确实表明它是人类可读的,但你至少表达它的可显示性(它不包括控制字符或其他非printables),所以&# 39;这不是不合理的。 text / html在这里没有任何意义,因为你不打算将它解释为HTML。

application / octet-stream和text / plain之间在实践中的主要区别在于浏览器和类似浏览器的东西将倾向于下载并保存application / octet-steam,并且倾向于显示text / plain。您更喜欢哪种行为可以推动您的选择。