左晓为主开发手持机充值管理机
zuoxiao
2023-12-04 1057af10a464e70d10b8a90315d0ecec6a7cb205
app/src/main/java/com/dayu/recharge/tools/BaseNFCHelper.java
@@ -20,7 +20,7 @@
 */
public class BaseNFCHelper {
    /**
     * 默认密码(白卡密码)
     * 默认密码(白卡密码)ffffffffffff
     */
    public byte[] defauleKey;
@@ -28,14 +28,16 @@
     * 公司密码
     */
    public byte[] companyKey;
    //密码a区
    String companyKeyA;
    //密码B区
    String companyKeyB;
    public BaseNFCHelper() {
        // 解密字符串
        try {
            //初始密码
            byte[] encryptedBytes = Base64.decode("orDiGzvueQqPpU+VQ3NEzQ==", Base64.DEFAULT);
            Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
            byte[] encodedKey = {-117, -104, -100, 84, 111, -102, -29, -21, 72, -82, -105, 123, 77, 79, 17, -55, -102, -28, 50, 23, 67, 98, 0, -96, -10, -48, -60, 81, 113, 80, -32, -26};
@@ -43,16 +45,19 @@
            byte[] decryptedBytes = cipher.doFinal(encryptedBytes);
            String decryptedText = new String(decryptedBytes, StandardCharsets.UTF_8);
            defauleKey = HexUtil.hexToByteArray(decryptedText);
            byte[] encryptedBytes2 = Base64.decode("aYC9feYEOFOQHuzflLIXSw==", Base64.DEFAULT);
            //初始密码
//             byte[] encryptedBytes2 = Base64.decode("aYC9feYEOFOQHuzflLIXSw==", Base64.DEFAULT);
            byte[] encryptedBytes2 = Base64.decode("qeg4DUWf0ni9JfRWtD2krA==", Base64.DEFAULT);
            byte[] decryptedBytes2 = cipher.doFinal(encryptedBytes2);
            companyKeyA = new String(decryptedBytes2, StandardCharsets.UTF_8);
            companyKey = HexUtil.hexToByteArray(companyKeyA);
            //修改后的密码
            byte[] encryptedBytes3 = Base64.decode("n+SSZFb4DHsreVav/Z5ftg==", Base64.DEFAULT);
            byte[] decryptedBytes3 = cipher.doFinal(encryptedBytes3);
            companyKeyB = new String(decryptedBytes3, StandardCharsets.UTF_8);
        } catch (NoSuchAlgorithmException e) {
            throw new RuntimeException(e);
        } catch (NoSuchPaddingException e) {