首页

android 加密解密示例源码

java

2020-6-27

package com.example.datatest;

import java.security.KeyPair;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EdgeEffect;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import android.renderscript.Element.DataKind;
import android.support.v4.app.NavUtils;

public class MainActivity extends Activity implements OnClickListener {
	private KeyPair mKeyPair;
	private String mRsaData;
	private String dsaData;
	private String mData;
	private String mDsaData;
	private String desData;
	private KeyPair mDasKeyPair;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		initLayout();
	}

	private void initLayout() {
		// TODO Auto-generated method stub
		Button button1 = (Button) findViewById(R.id.button1);
		Button button2 = (Button) findViewById(R.id.button2);
		Button button3 = (Button) findViewById(R.id.button3);
		Button button4 = (Button) findViewById(R.id.button4);
		Button button5 = (Button) findViewById(R.id.button5);
		Button button6 = (Button) findViewById(R.id.button6);
		Button button7 = (Button) findViewById(R.id.button7);
		Button button8 = (Button) findViewById(R.id.button8);
		Button button9 = (Button) findViewById(R.id.button9);
		Button button10 = (Button) findViewById(R.id.button10);
		Button button11 = (Button) findViewById(R.id.button11);
		Button button12 = (Button) findViewById(R.id.button12);
		button1.setOnClickListener(this);
		button2.setOnClickListener(this);
		button3.setOnClickListener(this);
		button4.setOnClickListener(this);
		button5.setOnClickListener(this);
		button6.setOnClickListener(this);
		button7.setOnClickListener(this);
		button8.setOnClickListener(this);
		button9.setOnClickListener(this);
		button10.setOnClickListener(this);
		button11.setOnClickListener(this);
		button12.setOnClickListener(this);

	}

	@Override
	public void onClick(View v) {
		// TODO Auto-generated method stub
		switch (v.getId()) {
		case R.id.button1:
			test1();
			break;
		case R.id.button2:
			test2();
			break;
		case R.id.button3:
			test3();
			break;
		case R.id.button4:
			test4();
			break;
		case R.id.button5:
			test5();
			break;
		case R.id.button6:
			test6();
			break;
		case R.id.button7:
			test7();
			break;
		case R.id.button8:
			test8();
			break;
		case R.id.button9:
			test9();
			break;
		case R.id.button10:
			test10();
			break;
		case R.id.button11:
			test11();
			break;
		case R.id.button12:
			test12();
			break;

		default:
			break;
		}
	}

	private void test12() {
		// TODO Auto-generated method stub
		EditText editText12 = (EditText) findViewById(R.id.editText12);
		String key = editText12.getEditableText().toString();
		EditText editText13 = (EditText) findViewById(R.id.editText13);
		if (key.length() != 8) {
			Toast.makeText(this, "钥匙必须是八位字符", Toast.LENGTH_SHORT).show();
		} else {
			String data = DataUtil.decryptDESStr(desData, key);
			if (data == null) {
				editText13.setText("钥匙不正确");
				Toast.makeText(this, "钥匙不正确", Toast.LENGTH_SHORT).show();
			} else {
				editText13.setText(data);
			}
		}
	}

	private void test11() {
		// TODO Auto-generated method stub
		EditText editText11 = (EditText) findViewById(R.id.editText11);
		String key = editText11.getEditableText().toString();
		EditText editText10 = (EditText) findViewById(R.id.editText10);
		String data = editText10.getEditableText().toString();
		if (key.length() != 8) {
			Toast.makeText(this, "钥匙必须是八位字符", Toast.LENGTH_SHORT).show();
		} else {
			desData = DataUtil.encryptDESStr(data, key);
			editText10.setText(desData);
		}
	}

	private void test10() {
		// TODO Auto-generated method stub
		if (mData != null && mDsaData != null) {
			if (DataUtil.verificationPublicKeyDSA(mData,
					mDasKeyPair.getPublic(), mDsaData)) {
				Toast.makeText(this, "这是你写的东西", Toast.LENGTH_SHORT).show();
			} else {
				Toast.makeText(this, "这不是你写的东西", Toast.LENGTH_SHORT).show();
			}
		}
	}

	private void test9() {
		// TODO Auto-generated method stub
		EditText editText8 = (EditText) findViewById(R.id.editText8);
		mData = editText8.getEditableText().toString();
		mDasKeyPair = DataUtil.getKeyCase("DSA", 512);
		mDsaData = DataUtil.signetPrivateKeyDSAStr(mData,
				mDasKeyPair.getPrivate());
		editText8.setText(mDsaData);
	}

	private void test8() {
		// TODO Auto-generated method stub
		EditText editText7 = (EditText) findViewById(R.id.editText7);
		String str = editText7.getEditableText().toString();
		editText7.setText(DataUtil.decryptPublicKeyStr(mRsaData,
				mKeyPair.getPublic(), "RSA"));
	}

	private void test7() {
		// TODO Auto-generated method stub
		EditText editText6 = (EditText) findViewById(R.id.editText6);
		String str = editText6.getEditableText().toString();
		mKeyPair = DataUtil.getKeyCase("RSA", 1024);
		mRsaData = DataUtil.encryptPrivateKeyStr(str, mKeyPair.getPrivate(),
				"RSA");
		editText6.setText(mRsaData);
	}

	private void test6() {
		// TODO Auto-generated method stub
		EditText editText5 = (EditText) findViewById(R.id.editText5);
		String str = editText5.getEditableText().toString();
		String key = "eoeandroid";
		editText5.setText(DataUtil.getEncryptHMACMD5(str, key));
	}

	private void test5() {
		// TODO Auto-generated method stub
		EditText editText4 = (EditText) findViewById(R.id.editText4);
		String str = editText4.getEditableText().toString();
		editText4.setText(DataUtil.encryptDataReversible(str));
	}

	private void test4() {
		// TODO Auto-generated method stub
		EditText editText3 = (EditText) findViewById(R.id.editText3);
		String str = editText3.getEditableText().toString();
		editText3.setText(DataUtil.encyptData2SHA(str));
	}

	private void test3() {
		// TODO Auto-generated method stub
		EditText editText2 = (EditText) findViewById(R.id.editText2);
		String str = editText2.getEditableText().toString();
		editText2.setText(DataUtil.encryptData2MD5(str));
	}

	private void test2() {
		// TODO Auto-generated method stub
		EditText editText1 = (EditText) findViewById(R.id.editText1);
		String str = editText1.getEditableText().toString();
		int len = Integer.valueOf(str);
		TextView textView4 = (TextView) findViewById(R.id.textView4);
		textView4.setText(DataUtil.generateStr(len,
				DataUtil.LOWER_CHINA_NUMBER_CHAR));
	}

	private void test1() {
		// TODO Auto-generated method stub
		TextView textView1 = (TextView) findViewById(R.id.textView1);
		textView1.setText(DataUtil.getOnlyStr());
	}

}

资源下载此资源下载价格为3D币(VIP免费),请先
资源文件列表
各种加密算法/DataTest/.classpath , 364
各种加密算法/DataTest/.project , 844
各种加密算法/DataTest/.settings/org.eclipse.core.resources.prefs , 57
各种加密算法/DataTest/.settings/org.eclipse.jdt.core.prefs , 177
各种加密算法/DataTest/AndroidManifest.xml , 796
各种加密算法/DataTest/bin/AndroidManifest.xml , 796
各种加密算法/DataTest/bin/classes/com/example/datatest/BuildConfig.class , 349
各种加密算法/DataTest/bin/classes/com/example/datatest/DataUtil.class , 10938
各种加密算法/DataTest/bin/classes/com/example/datatest/MainActivity.class , 6430
各种加密算法/DataTest/bin/classes/com/example/datatest/R$attr.class , 346
各种加密算法/DataTest/bin/classes/com/example/datatest/R$dimen.class , 481
各种加密算法/DataTest/bin/classes/com/example/datatest/R$drawable.class , 453
各种加密算法/DataTest/bin/classes/com/example/datatest/R$id.class , 1371
各种加密算法/DataTest/bin/classes/com/example/datatest/R$layout.class , 409
各种加密算法/DataTest/bin/classes/com/example/datatest/R$menu.class , 403
各种加密算法/DataTest/bin/classes/com/example/datatest/R$string.class , 519
各种加密算法/DataTest/bin/classes/com/example/datatest/R$style.class , 401
各种加密算法/DataTest/bin/classes/com/example/datatest/R.class , 693
各种加密算法/DataTest/bin/classes/com/example/datatest/util/Base4JiamMi.class , 3293
各种加密算法/DataTest/bin/classes/com/example/datatest/util/DataAES.class , 3490
各种加密算法/DataTest/bin/classes/com/example/datatest/util/Md5Base64.class , 4252
各种加密算法/DataTest/bin/classes.dex , 414128
各种加密算法/DataTest/bin/DataTest.apk , 165794
各种加密算法/DataTest/bin/dexedLibs/android-support-v4-0c7f175cb2eda336578fec7f11a2351f.jar , 132500
各种加密算法/DataTest/bin/dexedLibs/android-support-v4-1cec2dd62fd4fe72bd3a41b3e16e4e36.jar , 132500
各种加密算法/DataTest/bin/jarlist.cache , 119
各种加密算法/DataTest/bin/res/drawable-hdpi/ic_action_search.png , 409
各种加密算法/DataTest/bin/res/drawable-hdpi/ic_launcher.png , 4129
各种加密算法/DataTest/bin/res/drawable-ldpi/ic_launcher.png , 1756
各种加密算法/DataTest/bin/res/drawable-mdpi/ic_action_search.png , 311
各种加密算法/DataTest/bin/res/drawable-mdpi/ic_launcher.png , 2654
各种加密算法/DataTest/bin/res/drawable-xhdpi/ic_action_search.png , 491
各种加密算法/DataTest/bin/res/drawable-xhdpi/ic_launcher.png , 5456
各种加密算法/DataTest/bin/resources.ap_ , 22579
各种加密算法/DataTest/gen/com/example/datatest/BuildConfig.java , 162
各种加密算法/DataTest/gen/com/example/datatest/R.java , 3014
各种加密算法/DataTest/hs_err_pid1416.log , 4822
各种加密算法/DataTest/hs_err_pid2172.log , 4824
各种加密算法/DataTest/hs_err_pid3048.log , 4819
各种加密算法/DataTest/hs_err_pid4308.log , 4824
各种加密算法/DataTest/hs_err_pid436.log , 4821
各种加密算法/DataTest/hs_err_pid5284.log , 4819
各种加密算法/DataTest/hs_err_pid6212.log , 4822
各种加密算法/DataTest/hs_err_pid6900.log , 4822
各种加密算法/DataTest/hs_err_pid6928.log , 4822
各种加密算法/DataTest/hs_err_pid6944.log , 4824
各种加密算法/DataTest/hs_err_pid6972.log , 4822
各种加密算法/DataTest/hs_err_pid7084.log , 4822
各种加密算法/DataTest/ic_launcher-web.png , 37099
各种加密算法/DataTest/libs/android-support-v4.jar , 337562
各种加密算法/DataTest/proguard-project.txt , 781
各种加密算法/DataTest/project.properties , 563
各种加密算法/DataTest/res/drawable-hdpi/ic_action_search.png , 3120
各种加密算法/DataTest/res/drawable-hdpi/ic_launcher.png , 3014
各种加密算法/DataTest/res/drawable-ldpi/ic_launcher.png , 1504
各种加密算法/DataTest/res/drawable-mdpi/ic_action_search.png , 3030
各种加密算法/DataTest/res/drawable-mdpi/ic_launcher.png , 1969
各种加密算法/DataTest/res/drawable-xhdpi/ic_action_search.png , 3199
各种加密算法/DataTest/res/drawable-xhdpi/ic_launcher.png , 4006
各种加密算法/DataTest/res/layout/activity_main.xml , 10104
各种加密算法/DataTest/res/menu/activity_main.xml , 240
各种加密算法/DataTest/res/values/dimens.xml , 166
各种加密算法/DataTest/res/values/strings.xml , 244
各种加密算法/DataTest/res/values/styles.xml , 89
各种加密算法/DataTest/res/values-large/dimens.xml , 167
各种加密算法/DataTest/res/values-v11/styles.xml , 94
各种加密算法/DataTest/res/values-v14/styles.xml , 108
各种加密算法/DataTest/src/com/example/datatest/DataUtil.java , 18761
各种加密算法/DataTest/src/com/example/datatest/MainActivity.java , 6748
各种加密算法/DataTest/src/com/example/datatest/util/Base4JiamMi.java , 3078
各种加密算法/DataTest/src/com/example/datatest/util/DataAES.java , 3242
各种加密算法/DataTest/src/com/example/datatest/util/Md5Base64.java , 4910
没有账号? 忘记密码?

社交账号快速登录