mirror of
https://gitee.com/willfree/min-vpn-client_v2.git
synced 2026-10-04 19:42:00 +08:00
完善了新设备登录(补充了身份字段的解析)
This commit is contained in:
1 parent
aa66f72290
commit
356b14bfdc
7 files changed
+48
-8
No files matched your search
Binary file not shown.
@@ -22,6 +22,7 @@ import com.pkusz.min_vpn_client.model.OriginalRequest.OriginalRegisterRequest;
|
||||
import com.pkusz.min_vpn_client.utils.AccountValidatorRegexUtil;
|
||||
import com.pkusz.min_vpn_client.utils.Base64Util;
|
||||
import com.pkusz.min_vpn_client.utils.DigestUtilKt;
|
||||
import com.pkusz.min_vpn_client.utils.IdentityEncryptedUtil;
|
||||
import com.pkusz.min_vpn_client.utils.KeyManager;
|
||||
import com.white.countdownbutton.CountDownButton;
|
||||
|
||||
@@ -217,10 +218,12 @@ public class RegisterActivity extends MINVpnBaseActivity<RegisterActivityPresent
|
||||
String pubKey=new String(KeyManager.INSTANCE.getKeyChain().getCurrentIdentity().getPubkey()
|
||||
.getBytes(), StandardCharsets.UTF_8);
|
||||
System.out.println("mis register pubkey: "+pubKey);
|
||||
String PrikeyEncrypted;
|
||||
String PrikeyEncrypted; // 先按方案对身份信息进行加密,后做Base64编码
|
||||
try {
|
||||
PrikeyEncrypted= Base64Helper.Base64BasicEncode(
|
||||
KeyManager.INSTANCE.getKeyChain().exportSafeBag("").getValue());
|
||||
IdentityEncryptedUtil.encryptedIdentity(username,password,
|
||||
KeyManager.INSTANCE.getKeyChain().exportSafeBag("").getValue())
|
||||
);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return;
|
||||
|
||||
@@ -344,8 +344,8 @@ public enum MINVpnSettingAPI {
|
||||
|
||||
// MIS通信地址
|
||||
public String getMisIpAddress(){
|
||||
return EncryptedSharedPreferenceUtil.get(context,
|
||||
SP_LOCAL_SETTING_MIS_IP_ADDRESS_TCP,"1.1.1.1");
|
||||
return EncryptedSharedPreferenceUtil.get(context, // gdcni17
|
||||
SP_LOCAL_SETTING_MIS_IP_ADDRESS_TCP,"121.15.171.89");
|
||||
}
|
||||
|
||||
public void updateMisIpAddress(String misIP){
|
||||
|
||||
@@ -7,6 +7,7 @@ package com.pkusz.min_vpn_client.model;
|
||||
* @Copyright: MIN-Group;国家重大科技基础设施——未来网络北大实验室;深圳市信息论与未来网络重点实验室
|
||||
*/
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.pkusz.min_vpn_client.model.OriginalRequest.OriginalRegisterRequest;
|
||||
import com.pkusz.min_vpn_client.utils.KeyManager;
|
||||
|
||||
@@ -19,6 +20,7 @@ import MISConnection.Model.MISGetValidIdentityRequest;
|
||||
import MISConnection.Model.MISRegisterRequest;
|
||||
import MISConnection.Model.MISResetPasswordRequest;
|
||||
import VMSConnection.TCPNet.Message.NetworkResponse;
|
||||
import VMSConnection.Utils.Base64Helper;
|
||||
|
||||
public enum MISRequestAPI {
|
||||
INSTANCE;
|
||||
@@ -143,10 +145,18 @@ public enum MISRequestAPI {
|
||||
}
|
||||
System.out.println("应答码: " + networkResponse.get().Code);
|
||||
|
||||
//todo: 这里应当继续解析data字段中的身份或私钥字段,然后将之返回
|
||||
// todo: 这里应当继续解析data字段中的身份或私钥字段,然后将之返回
|
||||
// todo: 注意,需要进行base64解码
|
||||
// 解析data字段
|
||||
String resdata=new String(networkResponse.get().Data);
|
||||
System.out.println("应答信息: "+resdata);
|
||||
// 取出加密身份(经过了base64编码,请参考RegisterActivity)
|
||||
JSONObject jsonObject=JSONObject.parseObject(resdata);
|
||||
String resIdentity=jsonObject.getString("PrikeyEncrypted");
|
||||
// base64解码
|
||||
byte[] encryptedIdentity= Base64Helper.Base64BasicDecode(resIdentity);
|
||||
|
||||
return networkResponse.get().Data;
|
||||
return encryptedIdentity;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.pkusz.min_vpn_client.utils;
|
||||
/*
|
||||
* @Author: Wang Feng
|
||||
* @Description:
|
||||
* @Version: 1.0.0
|
||||
* @Date: 10:35 2021/11/3
|
||||
* @Copyright: MIN-Group;国家重大科技基础设施——未来网络北大实验室;深圳市信息论与未来网络重点实验室
|
||||
*/
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
public class TestIdentityEncrypted {
|
||||
@Test
|
||||
public void testEncryptAndDecrypt(){
|
||||
byte[] encryptedIdentity=IdentityEncryptedUtil.encryptedIdentity(
|
||||
"wefree","1234","ABCDEFGIdentity".getBytes());
|
||||
System.out.println("加密结果: "+Arrays.toString(encryptedIdentity));
|
||||
byte[] rawIdentity=IdentityEncryptedUtil.decryptedIdentity(
|
||||
"wefree","1234",encryptedIdentity);
|
||||
System.out.println("原身份: "+ Arrays.toString(rawIdentity));
|
||||
System.out.println("原身份: "+ new String(rawIdentity));
|
||||
}
|
||||
}
|
||||
@@ -44,5 +44,7 @@ public class TestSM4 {
|
||||
public void md5(){
|
||||
String password =DigestUtilKt.encodeToMD5("Xiaowei199876!");
|
||||
System.out.println(password);
|
||||
password =DigestUtilKt.encodeToMD5("free@1898");
|
||||
System.out.println(password);
|
||||
}
|
||||
}
|
||||
@@ -7,8 +7,8 @@ package com.pkusz.min_vpn_client.utils;
|
||||
* @Copyright: MIN-Group;国家重大科技基础设施——未来网络北大实验室;深圳市信息论与未来网络重点实验室
|
||||
*/
|
||||
|
||||
import com.pkusz.min_vpn_client.model.MINVpnSettingAPI;
|
||||
import com.pkusz.min_vpn_client.services.MINVpnExternalConnection;
|
||||
//import com.pkusz.min_vpn_client.model.MINVpnSettingAPI;
|
||||
//import com.pkusz.min_vpn_client.services.MINVpnExternalConnection;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
|
||||
Reference in new issue
Block a user