【密文特征分析】加密类型判断

2023-11-22 05:36

本文主要是介绍【密文特征分析】加密类型判断,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、代码

import re
import sysimport requestsdef post_url(data):"""其实就是把「https://www.dcode.fr/cipher-identifier」网站的功能,改成接口形式之所以改成接口,是因为网站加载有些慢,很多不必要加载很是浪费时间:param data: 需要判断的密码字符串:return: 网站的返回分析数据"""session = requests.session()# 获取 Cookieurl = "https://www.dcode.fr/cipher-identifier"response = session.get(url)cookie = response.headers['Set-Cookie'].split(";")[0]# 带 Cookie 请求 api 接口url = "https://www.dcode.fr/api/"payload = f"tool=cipher-identifier&ciphertext={data}&clues="headers = {'Cookie': cookie,'Sec-Ch-Ua': '"Microsoft Edge";v="119", "Chromium";v="119", "Not?A_Brand";v="24"','Accept': 'application/json, text/javascript, */*; q=0.01','Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8','X-Requested-With': 'XMLHttpRequest','Sec-Ch-Ua-Mobile': '?0','User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) Chrome/119.0.0.0 Safari/537.36 Edg/119.0.0.0','Sec-Ch-Ua-Platform': '"macOS"','Origin': 'https://www.dcode.fr','Sec-Fetch-Site': 'same-origin','Sec-Fetch-Mode': 'cors','Sec-Fetch-Dest': 'empty','Referer': 'https://www.dcode.fr/cipher-identifier','Accept-Encoding': 'gzip, deflate','Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6'}response = session.post(url, headers=headers, data=payload).json()return response["results"]def clear_dict(cipher):""" 清理掉HTML标签 """new_dict = {}for key in cipher:new_dict[re.search('<a href=".*?">(.*?)</a>', key).group(1)] = cipher[key]return new_dictdef format_dict(dictionary):""" 字典输出格式化 """max_key_len = max(len(key) for key in dictionary.keys())max_value_len = max(len(value) for value in dictionary.values())for key, value in dictionary.items():key_spaces = ' ' * (max_key_len - len(key))value_spaces = ' ' * (max_value_len - len(value))print(key + key_spaces + ' : ' + value + value_spaces)if __name__ == '__main__':if len(sys.argv) == 2:cipher_dict = post_url(sys.argv[1])else:print("使用说明 : python3 cipher_identifier.py {密文}")exit(1)format_dict(clear_dict(cipher_dict))

2、使用说明

没有什么好说明的,就是 https://www.dcode.fr/cipher-identifier 网站接口,网站加载太慢了,所以我就把接口做成了Python脚本,方便使用,节省时间。

┌──(root㉿kali)-[~] (๑•̀ㅂ•́)و✧ 
└─# python3 cipher_identifier.py
Usage : python3 cipher_identifier.py {密文}
┌──(root㉿kali)-[~] (๑•̀ㅂ•́)و✧ 
└─# python3 cipher_identifier.py cf4c2232354952690368f1b3dfdfb24d
MD5                   : ■▪
Hexadecimal Data      : ■ 
MD4                   : ■ 
Hexadecimal (Base 16) : ▪ 
ASCII Code            : ▪ 
Base62 Encoding       : ▫ 
Base64 Coding         : ▫ 
XOR Cipher            : ▫ 
UUID                  : ▫ 
Huffman Coding        : ▫ 
LZW Compression       : ▫ 
Circular Bit Shift    : ▫ 
EBCDIC Encoding       : ▫ 
RC4 Cipher            : ▫ 
Substitution Cipher   : ▫ 
Shift Cipher          : ▫ 
Homophonic Cipher     : ▫ 
Turning Grille        :

这篇关于【密文特征分析】加密类型判断的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/407889

相关文章

Pydantic中Optional 和Union类型的使用

《Pydantic中Optional和Union类型的使用》本文主要介绍了Pydantic中Optional和Union类型的使用,这两者在处理可选字段和多类型字段时尤为重要,文中通过示例代码介绍的... 目录简介Optional 类型Union 类型Optional 和 Union 的组合总结简介Pyd

Oracle数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

Spring Boot 配置文件之类型、加载顺序与最佳实践记录

《SpringBoot配置文件之类型、加载顺序与最佳实践记录》SpringBoot的配置文件是灵活且强大的工具,通过合理的配置管理,可以让应用开发和部署更加高效,无论是简单的属性配置,还是复杂... 目录Spring Boot 配置文件详解一、Spring Boot 配置文件类型1.1 applicatio

SpringBoot3使用Jasypt实现加密配置文件

《SpringBoot3使用Jasypt实现加密配置文件》这篇文章主要为大家详细介绍了SpringBoot3如何使用Jasypt实现加密配置文件功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编... 目录一. 使用步骤1. 添加依赖2.配置加密密码3. 加密敏感信息4. 将加密信息存储到配置文件中5

SpringBoot整合jasypt实现重要数据加密

《SpringBoot整合jasypt实现重要数据加密》Jasypt是一个专注于简化Java加密操作的开源工具,:本文主要介绍详细介绍了如何使用jasypt实现重要数据加密,感兴趣的小伙伴可... 目录jasypt简介 jasypt的优点SpringBoot使用jasypt创建mapper接口配置文件加密

Python如何查看数据的类型

《Python如何查看数据的类型》:本文主要介绍Python如何查看数据的类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python查看数据的类型1. 使用 type()2. 使用 isinstance()3. 检查对象的 __class__ 属性4.

Python容器类型之列表/字典/元组/集合方式

《Python容器类型之列表/字典/元组/集合方式》:本文主要介绍Python容器类型之列表/字典/元组/集合方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 列表(List) - 有序可变序列1.1 基本特性1.2 核心操作1.3 应用场景2. 字典(D

Java实现MD5加密的四种方式

《Java实现MD5加密的四种方式》MD5是一种广泛使用的哈希算法,其输出结果是一个128位的二进制数,通常以32位十六进制数的形式表示,MD5的底层实现涉及多个复杂的步骤和算法,本文给大家介绍了Ja... 目录MD5介绍Java 中实现 MD5 加密方式方法一:使用 MessageDigest方法二:使用

Python如何在Word中生成多种不同类型的图表

《Python如何在Word中生成多种不同类型的图表》Word文档中插入图表不仅能直观呈现数据,还能提升文档的可读性和专业性,本文将介绍如何使用Python在Word文档中创建和自定义各种图表,需要的... 目录在Word中创建柱形图在Word中创建条形图在Word中创建折线图在Word中创建饼图在Word

SpringBoot接收JSON类型的参数方式

《SpringBoot接收JSON类型的参数方式》:本文主要介绍SpringBoot接收JSON类型的参数方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、jsON二、代码准备三、Apifox操作总结一、JSON在学习前端技术时,我们有讲到过JSON,而在