HackThisSite realistic 6

本文介绍了一位工程师如何通过分析加密的密文,发现加密规律并成功解密的过程。该加密算法涉及到ASCII码和密码的结合,通过字符加密后的数字和与ASCII码的关系,以及密码本的ASCII码值,最终确定了密码并解密了邮件。解密方法包括分析密文模式、建立字典、找到最频繁出现的字符作为密码,并使用该密码解密全部密文。

这次任务是关于密文的破译

ToxiCo_Watch 这个家伙发现了 ToxiCo 化学工厂向附近的河流里排放化学废料,这个工厂的CEO 给生态督查主任 Samuel Smith 发了一个加密的邮件,这个邮件估计是有什么猫腻,然而这个加密算法涉及到了这个家伙知识的盲区,所以希望大家能帮忙破解发给他。

密文分析

这个是加密后的密文
由上图可以简单的得出这个是有字符 ‘.’ 和三位数组成的密文,其中还附上了加密算法.

看看这个加密

这个是加密表单,待加密的文字和加密密码

试着加密一个字符 ‘a’ 并且不带密码

第一加密
加密后发现这个密文是有三个两位数组成的,并且每个数前缀了一个 ‘.’,然后试着多加密几次看看是不是还是这个结果。
第二次加密
当我点了很多次之后,我发现每次加密的结果都不一样,因此我记录下几次加密的结果,来分析一下。

  1. 第一次结果 .59.48.-10
  2. 第二次结果 .33.47.17
  3. 第三次结果 .8.54.35
    观察一下这几次的结果,感觉发现了什么,我们把每次的结果以’.’ 分割求个和
/*
59 + 48 + (-10) = 97
33 + 47 + 17 = 97
8 + 54 + 35 = 97
哎,每次加密后求和的结果相等,都是 97,这里如果有经验的同学
能立马想到这个不就是ASCII码么。
a: 97, b: 98, c: 99
不带密码加密 b
16 + 5 + 77 = 98
不带密码加密 c
30 + 52 + 17 = 99
哎,这下就发现了这个秘密了
1. 每个字符加密后会得到由三个数字组成的一个密文
2. 每次生成的密文都是不同的,但将这个三个数字求和会得到这个字符的ascii码的值 
*/

但是啊,我们发现邮件密文是三位数字,而我们测试的字符加密后都是两位数字,这次我们带密码加密试试。

试着加密一个字符 ‘a’ 并且带密码 123456
/*
哎,这次加密结果就有感觉了,还是求和试试
.111.123.172 sum = 406
.163.138.105 sum = 406
啧,这个结果就不对了,为什么不是 ascii码值了呢。远远的超过了,想想看,既然不带密码加密
后求和是ascii值带了密码就不对了,咋搞!猜测一下这个密码本与ascii码值有关,那么密码是不
是也经过了ascii码值得处理呢。
密码中每个字符对应ascii码中的值 1:49,2:50,3:51,4:52,5:53,6:54, 什么都别管先加起来看
看 49+50+51+52+53+54 = 309, 哎发现了没有 309 + 97 = 406。哎!是不是找到了。
我换了不同的密码又测了几次,结果都是由密码字符和密文字符的ascii码值求和的结果。
*/

经过了一系列分析得出以下结论:

  1. 密码本 ASCII码表
  2. 密文由三个数字带 . 组成;
  3. 密码字符和密文字符的ascii码值求和值等于密文求和值。

啧!结论有了,那么直接撸代码吧,用自己熟悉的语言 C语言 开撸。
本人撸代码注释都是尽量用英文注释(不喜勿喷)。

代码的思路

将邮件密文复制到本地,通过文件读写来解析密文。

  1. 将密文一个字符一个字符的解析,每组密文求和结果放到链表中;
  2. 以26个小写字母为字典【因为邮件是英文,所以以26个小写字母为字典,其实也可以直接以生态督查主任的名字 Samuel Smith 为字典(这种方式我还没试过,大家可以试一下,破解密文就是靠合理猜测)】,与密文求和值相减的得到的值出现频率最高的那个就是密码了;
  3. 将密文求和的值和得到的密码值相减得到最后的解密结果。

解密后的邮件

#include<stdio.h>
#include <stdlib.h>
#include <ctype.h>
#define DIGITS 3 /* each of them have three digits */
#define GROUPS 3 /* each of a set of three */
#define DOT '.' /* each of them start with a dot */

typedef struct node* ptr_node;
struct node {
   
   
    int data;
    int frequency;
    ptr_node next;
};
typedef ptr_node list;

ptr_node malloc_space();
void free_spaces(list lst);
void print_list(list lst);
void list_append(list lst, int data);
int get_password(list lst);
void decrypt(list lst, int passwd);

int main
### MajicMIX Realistic 资源及相关内容 #### majicMIX realistic 的特点与适用场景 majicMIX realistic 是一款专注于写实风格的 Stable Diffusion 大模型,由国内开发者 Merjic 制作并发布于 CivitAI 平台。此模型以其高度逼真的光影表现力而闻名,尤其擅长处理人物细节和环境光效[^2]。对于偏好亚洲面孔或者希望获得更自然的画面效果的用户来说,这是一个理想的选择。 #### 参数配置建议 为了更好地利用 majicMIX realistic 模型生成高质量图像,可以参考以下参数设置: - **采样器(Sampler)**:推荐使用 DPM++ SDE Karras 或者 Euler a 等高效稳定的算法来提升渲染质量。 - **步数(Steps)**:通常设定在 20 至 30 步之间能够平衡速度与精度。 - **比例(CFG Scale)**:一般设为 4~7 左右即可满足大多数需求。 - **种子(Seed)**:随机选取数值用于控制每次输出的一致性和多样性。 - **剪辑跳过(Clip Skip)**:减少到 2 可增强背景复杂性的呈现[^3]。 以下是基于上述指导原则构建的一个具体实例命令: ```plaintext A beautiful young woman wearing traditional Chinese clothing standing under cherry blossoms at dusk, Best quality, masterpiece, ultra high res, photorealistic:1.5, dynamic pose, detailed face features, long flowing hair, soft natural lighting, warm tones --v 7 --s 28 --q 2 ``` 这段文字描述结合了文化元素与中国风服饰特色,并通过调整关键词权重进一步优化视觉体验。 #### 获取途径与其他支持材料 目前 majicMIX realistic v7 版本可以直接从官方平台 CivitAI 下载获取,其文件名为 `majicmixRealistic_v7.safetensors` ,大小约为 1.99 GB 。除了基础包外,还有配套 LoRA 插件可供扩展功能,比如增加特定主题滤镜或是改善局部特征描绘等问题。 另外值得注意的是,在实际应用过程中如果遇到某些特殊部位如手部不够精细等情况,则可以通过引入额外训练数据集来进行微调;而对于整体构图存在不足之处则考虑采用组合多张草稿拼接方式完成最终作品创作过程。 ---
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值