Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在加密一个字符串说“hello hr u”使用加密算法并将加密的字符串作为b�*-ت5Tr���6=
b�*-ت5Tr���6=
这个字符串我们不能作为短信发送 所以我想通过将其转换为 7 位来转换为支持短信的格式。 在接收端,我们必须转换回 8 位并解密。 我怎样才能做到这一点?
注意:我已经使用 Base64 转换为支持短信的格式,但长度正在增加。所以我无法发送更多字符
我假设您的问题类似于:
如何在不增加消息大小的情况下将二进制数据作为有效的 SMS 文本传输?
答案是——你不能——至少不能 100% 确定。
您的加密算法可能会创建一些byte[]字节数组(
byte[]
我看到的唯一选择是尝试在加密之前或之后压缩信息 - 取决于您选择的压缩算法 - 然后Base64对其进行编码。这会给你一个更好的机会来限制大小 - 但没有确定性。(除非你找到一种压缩算法,它承诺对每个输入压缩超过 33%。
另一种方法是将消息跨越两条 SMS 消息 - 假设您被允许这样做。