“二八”妙龄写密码,看谁聪明“爱死他”
2022/4/29 23:42:51
本文主要是介绍“二八”妙龄写密码,看谁聪明“爱死他”,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
题目背景
“二八”妙龄写密码,看谁聪明“爱死他”。
密文:766C7273626F76706A5E6F715F7271766C72706D626B71716C6C71666A62
解密过程
“二八”对应十六进制,“爱死他”对应ASCII,所以尝试输出每两位十六进制的数对应的ASCII的字符:
int dst[30]; void decode(char *s) { int i; //每两位十六进制字符转成十进制数存到dst数组中 int temp1, temp2; for(i = 0;i < 60;i+=2) { temp1 = s[i] > 58 ? (s[i] - 55) : (s[i] - 48); temp2 = s[i+1] > 58 ? (s[i+1] - 55) : (s[i+1] - 48); dst[i/2] = temp1*16 + temp2; } for(i = 0;i < 30;i++) printf("%c",dst[i]); printf("\n"); }
而输出是:vlrsbovpj^oq_rqvlrpmbkqqllqfjb
所以尝试加上偏移量:
int dst[30]; void decode(char *s) { int i,bias; //每两位十六进制字符转成十进制数存到dst数组中 int temp1, temp2; for(i = 0;i < 60;i+=2) { temp1 = s[i] > 58 ? (s[i] - 55) : (s[i] - 48); temp2 = s[i+1] > 58 ? (s[i+1] - 55) : (s[i+1] - 48); dst[i/2] = temp1*16 + temp2; } //加上偏移量 for(bias = -127; bias < 128; bias++) { for(i = 0;i < 30;i++) printf("%c",dst[i] + bias); printf("\n"); } }
输出结果:
从挑选出最像明文的字符串:youverysmartbutyouspenttootime
解密完成
这篇关于“二八”妙龄写密码,看谁聪明“爱死他”的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-04-2203-为啥大模型LLM还没能完全替代你?
- 2024-04-2101-大语言模型发展
- 2024-04-17基于SpringWeb MultipartFile文件上传、下载功能
- 2024-04-14个人开发者,Spring Boot 项目如何部署
- 2024-04-14RAG应用开发实战02-相似性检索的关键 - Embedding
- 2024-04-14出海软件草根逆袭打法是什么?
- 2024-04-13鸿蒙原生应用再新丁!企查查 碧蓝航线 入局鸿蒙
- 2024-04-11RAG应用开发实战(01)-RAG应用框架和解析器
- 2024-04-10DevOps已死?2024年的DevOps将如何发展
- 2024-04-10码农必看:常见源代码混淆技术详解