From: kaixiang.xia Date: Mon, 14 Sep 2020 01:56:26 +0000 (+0800) Subject: 车载码内容增加随机数 X-Git-Tag: 1.0.26^2~8 X-Git-Url: https://source.supwisdom.com/gerrit/gitweb?a=commitdiff_plain;h=855ca67fa8351ca2f9d6483288f49354befde4db;p=epayment%2Ffood_payapi.git 车载码内容增加随机数 --- diff --git a/bus-qrcode/src/main/java/com/supwisdom/dlpay/busqrcode/BinUtil.java b/bus-qrcode/src/main/java/com/supwisdom/dlpay/busqrcode/BinUtil.java index ebb4f055..b04ecd43 100644 --- a/bus-qrcode/src/main/java/com/supwisdom/dlpay/busqrcode/BinUtil.java +++ b/bus-qrcode/src/main/java/com/supwisdom/dlpay/busqrcode/BinUtil.java @@ -58,10 +58,10 @@ public class BinUtil { } public static String encodeBase64(byte[] data) { - return Base64.encodeBase64String(data); + return new Base64(true).encodeAsString(data); } public static byte[] decodeBase64(String data) { - return Base64.decodeBase64(data); + return new Base64(true).decode(data); } } diff --git a/bus-qrcode/src/main/java/com/supwisdom/dlpay/busqrcode/QrCode.java b/bus-qrcode/src/main/java/com/supwisdom/dlpay/busqrcode/QrCode.java index 93f6b609..fdbbf727 100644 --- a/bus-qrcode/src/main/java/com/supwisdom/dlpay/busqrcode/QrCode.java +++ b/bus-qrcode/src/main/java/com/supwisdom/dlpay/busqrcode/QrCode.java @@ -209,11 +209,13 @@ public class QrCode { logger.info("======================================================="); } + final String randomStr = getRandomString(6); //随机数 final String totp = genTOTPWithSeed(qrBuilder.seed, 8); final String encDataPlain = new StringJoin(DELIMITER) .add(qrBuilder.uid) .add(qrBuilder.scope) - .add(totp).toString(); + .add(totp) + .add(randomStr).toString(); final byte[] encData = aesEncryptCFB(qrBuilder.rootKey, encDataPlain.getBytes(), qrBuilder.iv); final String code = encodeBase64(encData); @@ -247,7 +249,7 @@ public class QrCode { logger.info("Decode data : <" + encDataPlain + ">"); } String[] fields = encDataPlain.split(DELIMITER); - if (fields.length < 3) { + if (fields.length < 4) { throw new RuntimeException("qrcode plain text format error!"); } String uid = fields[0];