安卓逆向_25 --- 密码学 之 《Java加密与解密的艺术》

 

《Java加密与解密的艺术》中文 PDF版 :https://www.jb51.net/books/65048.html

 

 

1. 密码学应用

 

:https://www.bilibili.com/video/BV1oA411J7Lb?p=1

密码学应用

密码学的基本概念,对称密码,公钥密码,Hash算法,数字认证算法,数字签名

密码学

密码学

 

 

2. Java 常用加密算法

 

可以 Hook Java 层加密和解密算法的 API,打印 key、解密结果 等等。。。

可以在 java 的 jar 包里面查看对应的 API

:https://www.bilibili.com/video/BV1oA411J7Lb?p=2

 

 

3. base64 编码算法

 

base64编码原理:https://www.baidu.com/s?wd=base64编码原理

一文彻底看懂Base64原理(并使用java实现):http://baijiahao.baidu.com/s?id=1644892102150918183

:https://www.bilibili.com/video/BV1oA411J7Lb?p=3

sun.misc.BASE64Decoder.jar 下载:https://pan.baidu.com/s/1hYMJpyRwUNGKpea0Es7OgA 提取码: 76ze

使用 jadx-gui 打开 jar 文件如图所示:

发现有些解析不出来,所以可以使用 Jeb 进行解析

 

Base64 的 C 代码示例

base64 C++ 示例代码:

 

 

4. 消息摘要算法 --- 验证数据完整性

 

:https://www.bilibili.com/video/BV1oA411J7Lb?p=4

 

 

4.1 MD 算法

 

模型分析

openssl 的 MD5算法 C++ 源码:

java 代码实现

 

 

4.2 SHA 算法 ( Hash

 

模型分析

C 代码实现:

C++ 代码实现

java 代码实现

 

 

4.3 MAC 算法

 

模型分析

 

 

4.4 其他消息摘要算法

 

 

 

4.5 循环冗余校验算法 --- CRC

 

 

 

5. 对称加密算法

 

对称加密算法 --- DES DESede三重DES):https://www.bilibili.com/video/BV1oA411J7Lb?p=5

模型分析

 

DES.java

 

DESede.java ( 三重 DES )

 

DESCBC.java

 

descbc 算法 C++ 版

 

DESedeCBC.java

 

AES

对称加密算法 --- AES:https://www.bilibili.com/video/BV1oA411J7Lb?p=6

 

AES.java

aescbc.cpp

 

PBE --- 基于口令加密

对称加密算法 --- PBE:https://www.bilibili.com/video/BV1oA411J7Lb?p=7

模型分析

PBE.java

 

对称加密小结

 

 

6. 非对称加密算法

 

DH --- 秘钥交换算法

 

RSA

非对称加密算法 --- RSA:https://www.bilibili.com/video/BV1oA411J7Lb?p=8

模型分析

RSA.java

RSA算法.cpp

 

小结

 

 

7. 数字签名算法 --- 带秘钥的消息摘要算法

 

数字签名算法:https://www.bilibili.com/video/BV1oA411J7Lb?p=9

模型分析

 

经典的数字签名算法 --- RSA

RSA.java

 

数字签名标准算法 --- DSA

DSA.java

 

椭圆曲线数字签名算法 --- ECDSA

 

 

8. 数字证书

 

 

模型分析

 

 

 

证书管理

 

 

 

小结

 

 

9. 安全协议

 

 

模型分析

 

验证证书

 

产生秘钥

 

加密交互

 

 

单项认证和双向认证

 

 

应用举例

 

 

小结

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/495265.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 NetDataContractSerializer 共享类型

在上一章节《WCF可序列化方式》 提到了NetDataContractSerializer 适用于客户端与服务端共享类型信息,支持支持类型不变性。 但并没有提供现成的特性,所以无法使用对数据契约进行标记的方式来达到使用NetDataContractSerializer的目的,必须通…

深度丨一文读懂智能制造的主线——智能生产(工厂/车间数字化)

来源: 亿欧摘要: 发展智能制造对于中国制造业乃至中国经济的重要性不言而喻,先进制造业作为深耕制造业领域的专业媒体,长期关注智能制造发展,助力中国制造转型升级,努力做“中国制造2025”的推动者。近年来…

最好用的十六进制编辑器 010 Editor

最好用的十六进制编辑器010 Editor https://blog.csdn.net/qq_38482805/article/details/89309120 新版010Edit注册机&去除网络验证:https://bbs.pediy.com/thread-249724.htm 010Editor脚本语法入门:https://www.jianshu.com/p/ba60ebd8f916 宇宙…

Object to XML

摘要:本节主要介绍如何把Object对象转换为XML 引言:最近工作中因为工作需要,需要把两个系统之间的传递的报文修改一下(现在系统之间一般都是通过发送xml字符串传数据吧),最开始用的Jdom来实现的&#xff0c…

Science:发现重写创伤记忆的神经元

来源:生物谷摘要:对创伤经历的回忆会导致精神健康问题,如创伤后应激障碍(PTSD),这会破坏一个人的生活。对创伤经历的回忆会导致精神健康问题,如创伤后应激障碍(PTSD)&…

安卓逆向_23 --- Hook 框架 Cydia Substrate( Hook Java层 和 so层)

From:Android Hook 框架 Cydia_substrate 详解:https://www.cnblogs.com/lkislam/p/4859957.html 通过 cydia substrate 对 framework API进行注入:https://www.jianshu.com/p/cc49b30c5b5b Android 逆向之旅 --- Native层的Hook神器Cydia …

数据结构C语言实现—队列操作

1 #include <stdio.h> 2 #include <stdlib.h> 3 4 typedef int elemType; 5 /************************************************************************/ 6 /* 以下是关于队列链接存储操作的6种算法 */ 7 /********************************************…

高校人工智能热的“冷”思考

来源&#xff1a;中国科学报高校在开设相关专业时&#xff0c;应该组织教授委员会、学术委员会&#xff0c;结合国家的人才政策、产业发展对人才的需求、国内外其他高校同类专业人才培养的情况&#xff0c;就本校开设这方面的专业有无现实条件&#xff0c;怎样进行师资建设、课…

转载:实用 FRIDA 进阶 --- objection :内存漫游、hook anywhere、抓包

转载&#xff1a;实用FRIDA进阶&#xff1a;内存漫游、hook anywhere、抓包&#xff1a;https://www.anquanke.com/post/id/197657 Frida Hook Android 常用方法&#xff1a;https://blog.csdn.net/zhy025907/article/details/89512096 实用FRIDA进阶&#xff1a;脱壳、自动化…

谷歌李飞飞:我们依旧站在人工智能研究的起点

来源&#xff1a;机器人大讲堂摘要&#xff1a;8 年来&#xff0c;在 ImageNet 数据集的训练下&#xff0c;人工智能对于图像识别的准确度整整提高了 10 倍&#xff0c;甚至超越了人类视觉本身。但李飞飞认为&#xff0c;我们对于人工智能的研究仍在起点上。说起人工智能&#…

Android Intent 用法总结

From&#xff1a;https://www.jianshu.com/p/67d99a82509b Android 中提供了 Intent 机制来协助应用间的交互与通讯&#xff0c;Intent 负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述&#xff0c;Android 则根据此 Intent 的描述&#xff0c;负责找到对应的组件…

teamlab与redmine试用对比报告

系统介绍 l TeamLab 是一个免费开源的商业协作和项目管理的平台。TeamLab 主要功能包括&#xff1a;项目管理、里程碑管理、任务、报表、事件、博客、论坛、书签、Wiki、即时消息等等。 l Redmine 是一个开源的、基于Web的项目管理和缺陷跟踪工具。它用日历和甘特图辅助项目及…

FRIDA - API使用篇:rpc、Process、Module、Memory 使用方法及示例

官方 API (JavaScript API)&#xff1a;https://frida.re/docs/javascript-api/ From&#xff1a; ( FRIDA-API使用篇 )&#xff1a;https://www.anquanke.com/post/id/195215 前言 在这篇文章中来对其官方的一些非常常用的 API 进行学习。所谓工欲善其事&#xff0c;必先利其…

Entity Framework 实体关系总结(转)

通过 Entiy Framework实践系列文章&#xff0c;理了理 Entity Framework 的实体关系。 为什么要写文章来理清这些关系&#xff1f;“血”的教训啊&#xff0c;刚开始使用 Entity Framework 的时候&#xff0c;由于没有静下心来认真理清关系&#xff0c;走了一些"痛不欲生&…

技术架构分析:攻克Dota2的OpenAI-Five

来源&#xff1a;CreateAMind摘要&#xff1a;OpenAI昨日发布研究成果&#xff0c;宣布Dota2 5v5在限定条件下&#xff08;英雄阵容固定&#xff0c;部分道具和功能禁用&#xff09;战胜人类半职业选手。本文主要对其模型技术架构做一些分析总结。一、 模型输入与输出模型的输入…

Redis基础-Redis概念及常见命令

1.nosql数据库 NoSQL数据库是一种提供了非关系型数据存储的数据库系统&#xff0c;与传统的关系型数据库&#xff08;如SQL数据库&#xff09;不同。NoSQL数据库的特点是灵活性高&#xff0c;能够处理结构化、半结构化或非结构化数据。它们通常用于大数据和实时Web应用。NoSQL数…

Java 高级特性 --- 反射

From&#xff1a;Java 高级特性 --- 反射&#xff1a;https://www.jianshu.com/p/9be58ee20dee From&#xff1a;Java 基础之 --- 反射&#xff08;非常重要&#xff09;&#xff1a;https://blog.csdn.net/sinat_38259539/article/details/71799078 From&#xff1a;Java 高级…

G20国家科技竞争力大盘点,中国科研创新表现突出,人工智能变道超车

来源&#xff1a;科睿唯安中国科学院文献情报中心和科睿唯安6月25日在北京联合发布了《G20国家科技竞争格局之辩》系列报告&#xff0c;报告分为总体篇及人工智能专题篇&#xff08;下文有重点介绍&#xff09;&#xff0c;聚焦G20国家的科研产出规模、学术影响力、领域分布、国…

为什么要用非关系数据库?

随着互联网web2.0网站的兴起&#xff0c;非关系型的数据库现在成了一个极其热门的新领域&#xff0c;非关系数据库产品的发展非常迅速。而传统的关系数据库在应付 web2.0网站&#xff0c;特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心&#xff0c;暴露了…

Java中泛型 Class<T>、T与Class<?>、 Object类和Class类、 object.getClass() 和 Object.class

From&#xff1a;Java中泛型 Class<T>、T 与 Class<?>、 Object类 和 Class类、 object.getClass() 和 Object.class &#xff1a;https://www.cnblogs.com/zhaoyanhaoBlog/p/9362267.html Class<T>和 Class<?>类型 有什么区别&#xff1a;https://…