android 对称加密和非对称加密,Android开发加密之对称与非对称加密算法使用案例.pdf...
Android开发加密之对称与非对称加密算法使用案例
消息摘要
md5:登录注册, sha1
对称加密
1.des:Data Encryption Standard,数据加密标准
2.aes:Advanced Encryption Standard ,更高级的方式
对称加密特点:加密速度快,只有一把钥匙,钥匙泄露文件就暴露
非对称加密
加密算法:RSA
特点:
o 秘钥对:私钥和公钥,秘钥对不是指定的,系统生成的
o 私钥自己保留,公钥可以给别人
o 公钥加密、使用解密
o 私钥加密、公钥解密
o 公钥互换:两个组织或者两个人互换公钥
o 数字签名:验证所属关系 (验证私钥在哪里,举例:比如使用支付宝支付,
支付宝它会有我们的公钥)
public class MainActivity extends AppCompatActivity {
private TextView tvResult;
private String data;
private String key;
private boolean isDes;
private boolean isAes;
private boolean isRas;
private String desEncrypt;
private String aesEncrypt;
private String privateKey;
private String publicKey;
private byte[] encryptByPrivateKey;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.content_main);
initView();
data "我的QQ 密码:123456";
key ;
initKeyPair();
}
private void initKeyPair() {
try {
//初始化秘钥对:公钥和私钥
Map keyPair RSACrypt.genKeyPair();
privateKey RSACrypt.getPrivateKey(keyPair);
publicKey RSACrypt.getPublicKey(keyPair);
Log.e("result","privateKey "+privateKey);
Log.e("result","publicKey "+publicKey);
} catch (Exception e) {
e.printStackTrace();
}
}
public void des(View v) {
try {
if (!isDes) {//加密
desEncrypt Des.encrypt(data, key);
tvResult.setText("DES 加密:" + desEncrypt);
} else {//解密
String desDecrypt Des.decrypt(desEncrypt, key);
tvResult.setText("DES 解密:" + desDecrypt);
}
isDes !isDes;
} catch (Exception e) {
e.printStackTrace();
}
}
public void aes(View v) {
if
android 对称加密和非对称加密,Android开发加密之对称与非对称加密算法使用案例.pdf...相关推荐
- 【Android 安全】DEX 加密 ( Java 工具开发 | 加密解密算法 API | 编译代理 Application 依赖库 | 解压依赖库 aar 文件 )
文章目录 一.加密解密算法 API 二.编译代理 Application 依赖库 三.解压代理 Application 依赖库 aar 文件 参考博客 : [Android 安全]DEX 加密 ( 常 ...
- Android采用AES+RSA的加密机制对http请求进行加密
前言 最近维护公司APP应用的登录模块,由于测试人员用Fiddler抓包工具抓取到了公司关于登录时候的明文登录信息.虽然使用的是HTTPS的方式进行http请求的,但还是被Fiddler抓到了明文内容 ...
- nb-iot链路层加密_Google为低端Android手机和IoT设备创建了更快的加密
nb-iot链路层加密 Google谷歌 Low-resource Android phones and IoT devices don't have the processing power to ...
- IOS 逆向开发(一)密码学 非对称加密RSA
IOS 逆向开发(一)密码学 RSA 1. 密码学发展简介 2. 非对称加密RSA产生过程 3. RSA 数学原理 3.1 离散对数问题 3.1.1 原根 3.2 欧拉函数Φ 3.3 欧拉定理 3.4 ...
- Android 在 NDK 层使用 OpenSSL 进行 RSA 加密
前言 需求:需要在NDK层对一个Java层的字符串进行RSA加密,然后对加密的结果进行Base64返回到Java层 方案:选择使用OpenSSL来实现. 编译libssl.a和libcrypto.a静 ...
- Android 屏幕防偷窥,Android 8.1将发布:启用TLS加密防偷窥
[中关村在线新闻资讯]10月25日消息,谷歌已经面向开发者放出了Android 8.1的相关预览版本,预计Android 8.1系统距离正式发布也不会太远.现在又有消息称,Android 8.1要启用 ...
- Linux加密和安全篇(一)gpg、对称和非对称加密、哈希算法
对于linux运维工作者而言,加密技术已经很早就用于数据的存储和数据之间的交换.我们可以会为了防止你的网站.服务器或者系统,我们会使用一些手段来防止一些恶意的攻击或者访问.一下就对linux的安全和加 ...
- 【Android取证篇】华为手机助手备份加密的版本
[Android取证篇]华为手机助手备份加密的版本 在华为手机助手9.1.0.307及之后的版本,备份时会"强制加密",无法选择不加密备份.-[suy] 华为手机助手v9.1. ...
- Android 10.0取消系统默认的全盘加密(fstab分区加密)
1.概述 在原生的android 系统中,默认的是全盘加密,但是后来google 把该选项的权限放给了各手机厂家,各手机厂家可以根据自己的要求是否要默认加密手机,如果手机加密了(即显示手机已加密)用户 ...
最新文章
- 学习Python遇到的热门问题整理
- 总奖金300万的AI Challenger 2018进入第二阶段,决赛在即!
- 使用七牛云和PicGo搭建图床
- 7z压缩文档的powershell示例
- 2020下半场:10本书教会你学习、思考和生活
- 用html+css+js实现一个无限级树形控件
- 软件_mongo占用磁盘空间过大
- python2.0 s12 day4
- 详解:IDEA不能自动加载import问题
- linux yum安装python3_在Linux - Centos上安装Python3(上)
- 静态对象和非静态对象的区别
- android 仿QQ相册
- java工商银行项目_工商银行聚合支付,java开发实现
- 如何取消笔记本Fn键
- 设计师悲剧:你一天内要完成100张海报
- 计算机英语测试,计算机专业英语测试
- Git分布式版本管理工具
- 透视HTTP协议(一) —— HTTP是什么
- 花园多层住宅设计CAD施工图教程分享
- js的event loop/js内存泄漏
热门文章
- 企业是否应该实现对客户需求的快速响应_如何做好企业服务?
- 无显示器u盘安装centos_最新版 CentOS 8.1.1911 安装教程及常见问题图文详解
- mysql 5.7 insert_MySQL5.7 支持一个表有多个INSERT/DELETE/UPDATE触发器
- oracle中or会使索引,为何查询条件中多了 OR 选项,索引就走全扫描?
- Flutter快速构建集美观与⾼性能于⼀体的APP
- 真机x86 android分辨率,Android-x86入门之--启动参数设置
- React后台管理系统-登录页面
- 浅谈HTML5中canvas中的beginPath()和closePath()的重要性
- npm dev run 报错
- 进程间的通信----管道