安卓逆向

    科技2022-07-14  139

     

    《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. 安全协议

     

     

    模型分析

     

    验证证书

     

    产生秘钥

     

    加密交互

     

     

    单项认证和双向认证

     

     

    应用举例

     

     

    小结

     

     

     

     

     

    Processed: 0.020, SQL: 8