由于对于ASCII的编码解码有缺陷,且这种BCD实现并不规范,因此BCD标记为弃用

This commit is contained in:
Looly 2022-10-24 19:45:11 +08:00
parent c54b529153
commit 2142d6522a
5 changed files with 16 additions and 3 deletions

View File

@ -11,6 +11,7 @@
### 🐞Bug修复
* 【db 】 修复分页时order by截断问题issue#I5X6FM@Gitee
* 【core 】 修复Partition计算size除数为0报错问题pr#2677@Github
* 【core 】 由于对于ASCII的编码解码有缺陷且这种BCD实现并不规范因此BCD标记为弃用issue#I5XEC6@Gitee
-------------------------------------------------------------------------------------------------------------
# 5.8.9 (2022-10-22)

View File

@ -8,7 +8,9 @@ import cn.hutool.core.lang.Assert;
* see http://cuisuqiang.iteye.com/blog/1429956
* @author Looly
*
* @deprecated 由于对于ASCII的编码解码有缺陷且这种BCD实现并不规范因此会在6.0.0中移除
*/
@Deprecated
public class BCD {
/**

View File

@ -7,11 +7,11 @@ public class BCDTest {
@Test
public void bcdTest(){
String strForTest = "123456ABCDEF";
final String strForTest = "123456ABCDEF";
//转BCD
byte[] bcd = BCD.strToBcd(strForTest);
String str = BCD.bcdToStr(bcd);
final byte[] bcd = BCD.strToBcd(strForTest);
final String str = BCD.bcdToStr(bcd);
//解码BCD
Assert.assertEquals(strForTest, str);
}

View File

@ -103,7 +103,9 @@ public interface AsymmetricDecryptor {
* @param charset 加密前编码
* @return 解密后的密文
* @since 4.1.0
* @deprecated 由于对于ASCII的编码解码有缺陷且这种BCD实现并不规范因此会在6.0.0中移除
*/
@Deprecated
default byte[] decryptFromBcd(String data, KeyType keyType, Charset charset) {
Assert.notNull(data, "Bcd string must be not null!");
final byte[] dataBytes = BCD.ascToBcd(StrUtil.bytes(data, charset));
@ -118,7 +120,9 @@ public interface AsymmetricDecryptor {
* @param charset 加密前编码
* @return 解密后的密文
* @since 4.5.2
* @deprecated 由于对于ASCII的编码解码有缺陷且这种BCD实现并不规范因此会在6.0.0中移除
*/
@Deprecated
default String decryptStrFromBcd(String data, KeyType keyType, Charset charset) {
return StrUtil.str(decryptFromBcd(data, keyType, charset), charset);
}
@ -130,7 +134,9 @@ public interface AsymmetricDecryptor {
* @param keyType 密钥类型
* @return 解密后的密文
* @since 4.5.2
* @deprecated 由于对于ASCII的编码解码有缺陷且这种BCD实现并不规范因此会在6.0.0中移除
*/
@Deprecated
default String decryptStrFromBcd(String data, KeyType keyType) {
return decryptStrFromBcd(data, keyType, CharsetUtil.CHARSET_UTF_8);
}

View File

@ -185,7 +185,9 @@ public interface AsymmetricEncryptor {
* @param keyType 密钥类型
* @return 加密后的密文
* @since 4.1.0
* @deprecated 由于对于ASCII的编码解码有缺陷且这种BCD实现并不规范因此会在6.0.0中移除
*/
@Deprecated
default String encryptBcd(String data, KeyType keyType) {
return encryptBcd(data, keyType, CharsetUtil.CHARSET_UTF_8);
}
@ -198,7 +200,9 @@ public interface AsymmetricEncryptor {
* @param charset 加密前编码
* @return 加密后的密文
* @since 4.1.0
* @deprecated 由于对于ASCII的编码解码有缺陷且这种BCD实现并不规范因此会在6.0.0中移除
*/
@Deprecated
default String encryptBcd(String data, KeyType keyType, Charset charset) {
return BCD.bcdToStr(encrypt(data, charset, keyType));
}