- 博客(8)
- 收藏
- 关注
原创 CTF题目之丢失的MD5
它通过穷举ASCII码表中可打印字符的所有可能的三个字符组合,并将这些字符插入到一个预定义的字符串模板中。对于每个生成的字符串,脚本计算其MD5哈希值,并检查该哈希值是否包含特定的子串。如果找到一个哈希值包含所有给定的子串,脚本会将这个哈希值打印出来。在每次循环中,构建一个包含循环字符的字符串,按照 'TASC' + chr(i) + 'O3RJMV' + chr(j) + 'WDJKX' + chr(k) + 'ZM' 的格式。# 构建特定格式的字符串,插入循环变量 i, j, k 对应的字符。
2025-06-30 20:45:59
194
原创 CTF题目之变异凯撒
加密密文:afZ_r9VYfScOeO_UL^RWUc 格式:flag{ }码表链接:https://c.biancheng.net/c/ascii/而且又是变异凯撒那就很明显了,就是以此类推每个向后移的位数是前一个加1。# 将字符转换为对应的ASCII值,并增加偏移量k。# 然后将得到的ASCII值转换回字符并打印出来。根据题目名字可知已不是普通的凯撒,对照ASCll码表;发现规律,a移动5位,f移动6位,Z移动7位;# 处理下一个字符时,偏移量增加1。# 遍历待解密的字符串中的每个字符。
2025-06-30 20:44:15
130
原创 SSL的原理和应用
因此,验证服务器证书的时候,需要按照证书链,从服务器证书开始,依次验证每个证书的签名,直到根证书。用户应该注意检查SSL证书的有效性,包括证书的颁发机构,证书的有效期,以及证书的主题是否匹配网站的域名。在使用SSL/TLS的过程中,邮件客户端会验证服务器的证书,以确保服务器的身份。服务器Hello:服务器从客户端提供的版本和密码套件中选择最高的版本和最强的密码套件,然后发送一个“Server Hello”消息给客户端,包含选择的版本和密码套件,一个随机生成的服务器随机数,以及服务器的证书。
2025-06-30 20:32:19
532
原创 给定一个 n × m 的网格,每个格子中有一个整数值。我们从左上角 (0, 0) 开始,每次可以向右或向下移动到相邻的格子。目标是计算到达右下角 (n-1, m-1) 时路径上数字的最大累计值。
1.定义状态:2.状态转移方程:dp[i][j]=grid[i][j]+max(dp[i−1][j],dp[i][j−1],dp[i−1][j−1])dp[i][j]=grid[i][j]+max(dp[i−1][j],dp[i][j−1],dp[i−1][j−1])3.边界条件:4.最终答案:以下是一个完整的C语言程序,实现了上述动态规划算法:代码说明1.输入部分:2.动态规划数组初始化:3.填充 dp 数组:4.输出结果:5.内存管理:假设输入如下:输出: 最大累计值为: 12解释路径
2024-12-13 12:10:00
865
原创 跳跃游戏2
/ 如果已经可以到达最后位置,提前结束。// 如果数组长度小于等于1,返回0。if (i == currentEnd) { // 如果到达当前边界。// 当前跳跃的最远边界。// 能够到达的最远位置。
2024-12-10 21:12:46
129
原创 跳跃游戏1
/ 如果最大可达位置已达到或超过最后一个位置,返回true。// 如果当前索引超出最大可达位置,返回false。// 更新最大可达位置。printf("可以到达最后一个位置\n");printf("无法到达最后一个位置\n");
2024-12-10 21:12:10
455
原创 用c语言解决跳跃问题
printf("可以从第一个位置跳到最后一个位置。printf("无法从第一个位置跳到最后一个位置。printf("可以从第一个位置跳到最后一个位置。printf("无法从第一个位置跳到最后一个位置。// 如果最远可达位置已经超过或等于最后一个位置,提前返回。// 如果当前位置无法到达,返回 false。// 检查是否最终可以到达最后一个位置。// 更新最远可达位置。
2024-12-10 21:11:27
693
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人