如何发送密码保护短信/短信

时间:2016-11-15 10:46:03

标签: android sms password-protection

我可以通过此代码在我的Android应用程序中发送短信

 SmsManager sm = SmsManager.getDefault();
 sm.sendTextMessage(edt_phoneNo, null, message, null, null);

但是我可以发送受密码保护的短信吗?有一个android接口来获取用户的密码来打开我的短信吗?

1 个答案:

答案 0 :(得分:1)

您可以通过多种方式加密邮件文本。例如,在this回答

DESKeySpec keySpec = new DESKeySpec("Your secret Key phrase".getBytes("UTF8"));
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
SecretKey key = keyFactory.generateSecret(keySpec);
sun.misc.BASE64Encoder base64encoder = new BASE64Encoder();
sun.misc.BASE64Decoder base64decoder = new BASE64Decoder();
.........

// ENCODE plainTextPassword String
byte[] cleartext = plainTextPassword.getBytes("UTF8");      

Cipher cipher = Cipher.getInstance("DES"); // cipher is not thread safe
cipher.init(Cipher.ENCRYPT_MODE, key);
String encryptedPwd = base64encoder.encode(cipher.doFinal(cleartext));
// now you can store it 
......

// DECODE encryptedPwd String
byte[] encrypedPwdBytes = base64decoder.decodeBuffer(encryptedPwd);

Cipher cipher = Cipher.getInstance("DES");// cipher is not thread safe
cipher.init(Cipher.DECRYPT_MODE, key);
byte[] plainTextPwdBytes = (cipher.doFinal(encrypedPwdBytes));