From 5fdd4458a3c9f99a3c951683d503f73a47ff976d Mon Sep 17 00:00:00 2001
From: lizhanwei <Dana_Lee1016@126.com>
Date: 星期五, 13 三月 2020 15:43:07 +0800
Subject: [PATCH] 解决RTK配置,传感器配置收到NDK_Start的时候发两次的问题;在ExamStatusOutWork里面发送rtf配置 传感器配置、考试状态;RTK配置增加数据库访问;电话使用sn,sn更新发送给服务在RTKConfigUpdateWorker;基本设置里删除电话显示;修改鉴权消息,使用服务器注册给的密码,用des加密时间,发鉴权消息给服务;Utils增加des加密和解密算法

---
 app/src/main/java/safeluck/drive/evaluation/util/Utils.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 57 insertions(+), 0 deletions(-)

diff --git a/app/src/main/java/safeluck/drive/evaluation/util/Utils.java b/app/src/main/java/safeluck/drive/evaluation/util/Utils.java
index 2daba11..5a06340 100644
--- a/app/src/main/java/safeluck/drive/evaluation/util/Utils.java
+++ b/app/src/main/java/safeluck/drive/evaluation/util/Utils.java
@@ -8,8 +8,14 @@
 import com.anyun.exam.lib.util.ByteUtil;
 import com.safeluck.aykj.utils.BytesUtils;
 
+import java.security.SecureRandom;
 import java.util.Calendar;
 import java.util.Random;
+
+import javax.crypto.Cipher;
+import javax.crypto.SecretKey;
+import javax.crypto.SecretKeyFactory;
+import javax.crypto.spec.DESKeySpec;
 
 /**
  * MyApplication2
@@ -214,4 +220,55 @@
         }
         return stringBuffer.toString();
     }
+
+
+    /**
+     * 鍔犲瘑
+     * @param datasource byte[]
+     * @param password String
+     * @return byte[]
+     */
+    public static  byte[] encrypt(byte[] datasource, String password) {
+        try{
+            SecureRandom random = new SecureRandom();
+            DESKeySpec desKey = new DESKeySpec(password.getBytes());
+            //鍒涘缓涓�涓瘑鍖欏伐鍘傦紝鐒跺悗鐢ㄥ畠鎶奃ESKeySpec杞崲鎴�
+            SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
+            SecretKey securekey = keyFactory.generateSecret(desKey);
+            //Cipher瀵硅薄瀹為檯瀹屾垚鍔犲瘑鎿嶄綔
+            Cipher cipher = Cipher.getInstance("DES");
+            //鐢ㄥ瘑鍖欏垵濮嬪寲Cipher瀵硅薄
+            cipher.init(Cipher.ENCRYPT_MODE, securekey, random);
+            //鐜板湪锛岃幏鍙栨暟鎹苟鍔犲瘑
+            //姝e紡鎵ц鍔犲瘑鎿嶄綔
+            return cipher.doFinal(datasource);
+        }catch(Throwable e){
+            e.printStackTrace();
+        }
+        return null;
+    }
+    /**
+     * 瑙e瘑
+     * @param src byte[]
+     * @param password String
+     * @return byte[]
+     * @throws Exception
+     */
+    public static byte[] decrypt(byte[] src, String password) throws Exception {
+        // DES绠楁硶瑕佹眰鏈変竴涓彲淇′换鐨勯殢鏈烘暟婧�
+        SecureRandom random = new SecureRandom();
+        // 鍒涘缓涓�涓狣ESKeySpec瀵硅薄
+        DESKeySpec desKey = new DESKeySpec(password.getBytes());
+        // 鍒涘缓涓�涓瘑鍖欏伐鍘�
+        SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
+        // 灏咲ESKeySpec瀵硅薄杞崲鎴怱ecretKey瀵硅薄
+        SecretKey securekey = keyFactory.generateSecret(desKey);
+        // Cipher瀵硅薄瀹為檯瀹屾垚瑙e瘑鎿嶄綔
+        Cipher cipher = Cipher.getInstance("DES");
+        // 鐢ㄥ瘑鍖欏垵濮嬪寲Cipher瀵硅薄
+        cipher.init(Cipher.DECRYPT_MODE, securekey, random);
+        // 鐪熸寮�濮嬭В瀵嗘搷浣�
+        return cipher.doFinal(src);
+    }
+
 }

--
Gitblit v1.8.0