diff --git a/payapi/src/main/java/com/supwisdom/dlpay/util/QrCodeTotpUtil.java b/payapi/src/main/java/com/supwisdom/dlpay/util/QrCodeTotpUtil.java
index fa51bb3..a26ef88 100644
--- a/payapi/src/main/java/com/supwisdom/dlpay/util/QrCodeTotpUtil.java
+++ b/payapi/src/main/java/com/supwisdom/dlpay/util/QrCodeTotpUtil.java
@@ -2,7 +2,7 @@
 
 public class QrCodeTotpUtil {
     public static String generateTOTP(String seed){
-        long X = 30;
+        long X = 10;
         long T0 = 0;
         String steps = "0";
         long time = System.currentTimeMillis() / 1000;
@@ -16,7 +16,7 @@
     }
 
     public static String generateTOTP(String seed,String returnDigits){
-        long X = 30;
+        long X = 10;
         long T0 = 0;
         String steps = "0";
         long time = System.currentTimeMillis() / 1000;
@@ -31,7 +31,7 @@
 
     public static boolean verifyCode(String totp, String secret, int offset) {
 
-        String second = "30";
+        String second = "10";
         long T0 = 0;
         String[] keys = new String[offset * 2 + 1];
         long time = System.currentTimeMillis() / 1000;
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/qrcode_srvice_impl.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/qrcode_srvice_impl.kt
index 9cc9393..6a90ea8 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/qrcode_srvice_impl.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/qrcode_srvice_impl.kt
@@ -60,7 +60,7 @@
         val qrcode = AesUtil.encryptCFB("$uid:$encdata", rootkey, iv, "AES/CFB/NoPadding")
 
         val key = MD5.encodeByMD5ToURLSafeBase64(qrcode)
-        redisTemplate.opsForValue().set(key,qrcode, Duration.ofMinutes(3))
+        redisTemplate.opsForValue().set(key,qrcode, Duration.ofMinutes(1))
         resp.retcode = 0
         resp.retmsg = key
         return resp
@@ -74,7 +74,7 @@
             val rootkey = systemUtilService.getBusinessValue("aes.cfb.rootkey")
             val iv = systemUtilService.getBusinessValue("aes.cfb.iv")
             val totpoffset = systemUtilService.getBusinessValue("aes.cfb.totp.offset")
-            var offset = 20
+            var offset = 3
             if (NumberUtils.isDigits(totpoffset)) {
                 offset = Integer.valueOf(totpoffset).toInt()
             }
