Java大字符串压缩安全方法

Java大字符串压缩安全方法,java,web-services,Java,Web Services,对于大字符串大小~15k,java推荐的任何字符串压缩和解压缩技术都是安全实现的。 gzip格式在压缩期间提供垃圾字符,并且在HTTP soap请求中发送时会损坏。请告知。压缩文本时,文本不再响应ASCII、UTF或任何其他编码 压缩将创建一个新的字符和位(而不是字节)之间的转换表。一个字节可以表示少于一个字符、一个字符或多个字符 压缩的目标是用较少的比特数表示重复次数最多的字符 一旦“压缩”,字节可能会与控制字符重叠,这就是为什么它们作为文本传输很困难的原因 例如,当您没有其他选择,必须通过h

对于大字符串大小~15k,java推荐的任何字符串压缩和解压缩技术都是安全实现的。
gzip格式在压缩期间提供垃圾字符,并且在HTTP soap请求中发送时会损坏。请告知。

压缩文本时,文本不再响应ASCII、UTF或任何其他编码

压缩将创建一个新的字符和位(而不是字节)之间的转换表。一个字节可以表示少于一个字符、一个字符或多个字符

压缩的目标是用较少的比特数表示重复次数最多的字符

一旦“压缩”,字节可能会与控制字符重叠,这就是为什么它们作为文本传输很困难的原因

例如,当您没有其他选择,必须通过http发送二进制格式的内容时,您可以采用另一种方式,获取位并添加额外的位以将二进制数据带入ASCII范围,例如在Base64中进行编码

这就是为什么如果您首先通过压缩删除额外的位,然后再添加位来编码Base64,那么最好按原样发送原始文件


这就是我建议以二进制格式发送数据的原因,看看soap是否有其他方法发送二进制数据,这并不意味着恢复压缩过程。

如果压缩数据,则必须将其作为二进制数据发送。要求是当前字符串很大,必须将其压缩回字符串。是否可以使用Base64、utf-8、uft-16、ISO-8859-1编码方法&实现这一点的安全方法是什么?如前所述,是否只建议在java中将字符串转换为字节以进行压缩?如果必须使用soap,请查看是否可以在soap中发送二进制数据(解决方案不需要在Base64中编码数据,这并不准确,但会恢复压缩过程)。请注意,HTTP本身允许压缩内容编码。看,好的。从java编码最佳实践来看,如果字符串的大小必须从大到小以及不能显示相同文本的安全性(如银行卡详细信息),压缩(gzip或任何其他可用)或加密(aes、rsa等)技术是否更好?。哪一个是首选的,为什么?它们是两个不同的东西:压缩=用更少的数据传输相同的信息。加密=使没有解密密钥的人无法读取信息。对于安全性问题,我建议您在询问时澄清->我需要将字符串加密为字符串;它应该使用更小的结果字符串进行加密。你有什么想法?我想你找不到办法。严肃的加密算法还提供二进制数据。正如我之前所说,将二进制数据编码为字符串格式是通过添加位来完成的,这将导致更长的字符串。做点什么。Thnk您将如何手动完成类似的操作?感谢Juan的回复。我刚刚联系了你建议的关于加密与压缩的论坛,他们说压缩最适合缩小尺寸。您是否有任何压缩技术,在结果字符串中不提供垃圾字符。