4
4
*/
5
5
package com .alipay .global .api .request .ams .risk .tee .encryptutil ;
6
6
7
+ import com .alipay .global .api .base64 .Base64Provider ;
7
8
import com .alipay .global .api .model .ams .UserName ;
8
9
import com .alipay .global .api .model .risk .Order ;
9
10
import com .alipay .global .api .model .risk .PaymentDetail ;
13
14
import com .alipay .global .api .request .ams .risk .tee .enums .EncryptKeyEnum ;
14
15
import com .alipay .global .api .request .ams .risk .tee .enums .ErrorCodeEnum ;
15
16
import com .alipay .global .api .request .ams .risk .tee .exception .CryptoException ;
16
- import javax . xml . bind . DatatypeConverter ;
17
+
17
18
import java .nio .charset .Charset ;
18
19
import java .util .List ;
19
20
@@ -34,7 +35,7 @@ public static void encrypt(String dataKeyBase64, AlipayRequest<?> request, List<
34
35
}
35
36
RiskDecideRequest riskDecideRequest = (RiskDecideRequest ) request ;
36
37
AESCrypto crypto = AESCrypto .getInstance ();
37
- doEncrypt (DatatypeConverter . parseBase64Binary (dataKeyBase64 ), riskDecideRequest , encryptKeyList , crypto );
38
+ doEncrypt (Base64Provider . getBase64Encryptor (). decode (dataKeyBase64 ), riskDecideRequest , encryptKeyList , crypto );
38
39
}
39
40
40
41
/**
@@ -61,23 +62,23 @@ private static void doEncrypt(byte[] data_key, RiskDecideRequest request, List<E
61
62
continue ;
62
63
}
63
64
encrypt = crypto .encrypt (data_key , buyerEmail .getBytes (utf8Charset ));
64
- request .getBuyer ().setBuyerEmail (DatatypeConverter . printBase64Binary (encrypt ));
65
+ request .getBuyer ().setBuyerEmail (Base64Provider . getBase64Encryptor (). encodeToString (encrypt ));
65
66
break ;
66
67
case BUYER_PHONE_NO :
67
68
String buyerPhoneNo = request .getBuyer ().getBuyerPhoneNo ();
68
69
if (buyerPhoneNo == null || buyerPhoneNo .isEmpty ()) {
69
70
continue ;
70
71
}
71
72
encrypt = crypto .encrypt (data_key , buyerPhoneNo .getBytes (utf8Charset ));
72
- request .getBuyer ().setBuyerPhoneNo (DatatypeConverter . printBase64Binary (encrypt ));
73
+ request .getBuyer ().setBuyerPhoneNo (Base64Provider . getBase64Encryptor (). encodeToString (encrypt ));
73
74
break ;
74
75
case BUYER_REGISTRATION_TIME :
75
76
String buyerRegistrationTime = request .getBuyer ().getBuyerRegistrationTime ();
76
77
if (buyerRegistrationTime == null || buyerRegistrationTime .isEmpty ()) {
77
78
continue ;
78
79
}
79
80
encrypt = crypto .encrypt (data_key , buyerRegistrationTime .getBytes (utf8Charset ));
80
- request .getBuyer ().setBuyerRegistrationTime (DatatypeConverter . printBase64Binary (encrypt ));
81
+ request .getBuyer ().setBuyerRegistrationTime (Base64Provider . getBase64Encryptor (). encodeToString (encrypt ));
81
82
break ;
82
83
case CARDHOLDER_NAME :
83
84
for (PaymentDetail paymentDetail : paymentDetails ) {
@@ -91,7 +92,7 @@ private static void doEncrypt(byte[] data_key, RiskDecideRequest request, List<E
91
92
continue ;
92
93
}
93
94
encrypt = crypto .encrypt (data_key , address1 .getBytes (utf8Charset ));
94
- order .getShipping ().getShippingAddress ().setAddress1 (DatatypeConverter . printBase64Binary (encrypt ));
95
+ order .getShipping ().getShippingAddress ().setAddress1 (Base64Provider . getBase64Encryptor (). encodeToString (encrypt ));
95
96
}
96
97
break ;
97
98
case SHIPPING_ADDRESS2 :
@@ -101,7 +102,7 @@ private static void doEncrypt(byte[] data_key, RiskDecideRequest request, List<E
101
102
continue ;
102
103
}
103
104
encrypt = crypto .encrypt (data_key , address2 .getBytes (utf8Charset ));
104
- order .getShipping ().getShippingAddress ().setAddress2 (DatatypeConverter . printBase64Binary (encrypt ));
105
+ order .getShipping ().getShippingAddress ().setAddress2 (Base64Provider . getBase64Encryptor (). encodeToString (encrypt ));
105
106
}
106
107
break ;
107
108
case SHIPPING_NAME :
@@ -116,7 +117,7 @@ private static void doEncrypt(byte[] data_key, RiskDecideRequest request, List<E
116
117
continue ;
117
118
}
118
119
encrypt = crypto .encrypt (data_key , email .getBytes (utf8Charset ));
119
- order .getShipping ().setShipToEmail (DatatypeConverter . printBase64Binary (encrypt ));
120
+ order .getShipping ().setShipToEmail (Base64Provider . getBase64Encryptor (). encodeToString (encrypt ));
120
121
}
121
122
break ;
122
123
case SHIPPING_PHONE_NO :
@@ -126,7 +127,7 @@ private static void doEncrypt(byte[] data_key, RiskDecideRequest request, List<E
126
127
continue ;
127
128
}
128
129
encrypt = crypto .encrypt (data_key , phoneNo .getBytes (utf8Charset ));
129
- order .getShipping ().setShippingPhoneNo (DatatypeConverter . printBase64Binary (encrypt ));
130
+ order .getShipping ().setShippingPhoneNo (Base64Provider . getBase64Encryptor (). encodeToString (encrypt ));
130
131
}
131
132
break ;
132
133
default :
@@ -147,19 +148,19 @@ private static void encryptName(byte[] data_key, UserName userName, AESCrypto cr
147
148
return ;
148
149
}
149
150
if (userName .getFirstName () != null && !userName .getFirstName ().isEmpty ()) {
150
- userName .setFirstName (DatatypeConverter . printBase64Binary (
151
+ userName .setFirstName (Base64Provider . getBase64Encryptor (). encodeToString (
151
152
crypto .encrypt (data_key , userName .getFirstName ().getBytes (utf8Charset ))));
152
153
}
153
154
if (userName .getMiddleName () != null && !userName .getMiddleName ().isEmpty ()) {
154
- userName .setMiddleName (DatatypeConverter . printBase64Binary (
155
+ userName .setMiddleName (Base64Provider . getBase64Encryptor (). encodeToString (
155
156
crypto .encrypt (data_key , userName .getMiddleName ().getBytes (utf8Charset ))));
156
157
}
157
158
if (userName .getLastName () != null && !userName .getLastName ().isEmpty ()) {
158
- userName .setLastName (DatatypeConverter . printBase64Binary (
159
+ userName .setLastName (Base64Provider . getBase64Encryptor (). encodeToString (
159
160
crypto .encrypt (data_key , userName .getLastName ().getBytes (utf8Charset ))));
160
161
}
161
162
if (userName .getFullName () != null && !userName .getFullName ().isEmpty ()) {
162
- userName .setFullName (DatatypeConverter . printBase64Binary (
163
+ userName .setFullName (Base64Provider . getBase64Encryptor (). encodeToString (
163
164
crypto .encrypt (data_key , userName .getFullName ().getBytes (utf8Charset ))));
164
165
}
165
166
}
0 commit comments