Blowfish 块大小 64 位 - 当输入不是 64 位的倍数时该怎么办

发布于 2024-11-15 21:57:13 字数 132 浏览 6 评论 0原文

我正在创建一个应用程序来使用 Blowfish 加密未知长度的字符串。输入可以是任意长度,因此不一定是 8 字节的倍数。

处理这种情况的标准方法是什么?也许用 0 填充字符串的末尾?大概还有更优雅的方式吗?

提前致谢。

I'm creating an application to encrypt a string of unknown length with Blowfish. The input can be of any length, and will therefore not necessarily be a multiple of 8 bytes.

What is the standard method for dealing with this situation? Perhaps fill in the end of the string with 0s? Presumably there's a more elegant way?

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

牛↙奶布丁 2024-11-22 21:57:13

有相当多的填充机制(维基百科)可供您选择。这些算法从简单地在末尾附加零到可以验证和/或删除的填充机制有所不同。

或者,您可以使用 OFB 操作模式(维基百科)进行转换将分组密码转换为流密码,并消除填充的要求。

There are quite a number of padding mechanisms (wikipedia) that you can choose from. The algorithms vary from simply appending zeros to the end to a padding mechanism that can be validated and/or removed.

Alternatively, you can use the OFB mode of operation (wikipedia) to convert a block cipher into a stream cipher, and get rid of the requirement for padding.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文