CTF-传统知识+古典密码 WP

题目:

小明某一天收到一封密信,信中写了几个不同的年份
          辛卯,癸巳,丙戌,辛未,庚辰,癸酉,己卯,癸巳。

          信的背面还写有“+甲子”,请解出这段密文。

key值:CTF{XXX}

 

解题思路:

看到有甲子,戊戌等,网上查找下天干地支的文档

六十年甲子(干支表)

1 2 3 4 5 6 7 8 9 10
甲子 乙丑 丙寅 丁卯 戊辰 己巳 庚午 辛未 壬申 癸酉
11 12 13 14 15 16 17 18 19 20
甲戌 乙亥 丙子 丁丑 戊寅 己卯 庚辰 辛巳 壬午 癸未
21 22 23 24 25 26 27 28 29 30
甲申 乙酉 丙戌 丁亥 戊子 己丑 庚寅 辛卯 壬辰 癸巳
31 32 33 34 35 36 37 38 39 40
甲午 乙未 丙申 丁酉 戊戌 己亥 庚子 辛丑 壬寅 癸卯
41 42 43 44 45 46 47 48 49 50
甲辰 乙巳 丙午 丁未 戊申 己酉 庚戌 辛亥 壬子 癸丑
51 52 53 54 55 56 57 58 59 60
甲寅 乙卯 丙辰 丁巳 戊午 己未 庚申 辛酉 壬戌 癸亥

 

再网上科普下古典密码

古典密码

古典密码编码方法归根结底主要有两种,即置换和代换。

把明文中的字母重新排列,字母本身不变,但其位置改变了,这样编成的密码称为置换密码。最简单的置换密码是把明文中的字母顺序倒过来,然后截成固定长度的字母组作为密文。

代换密码则是将明文中的字符替代成其他字符。

置换密码

列置换

加密:将明文按固定长m分组,即每行m个字母,在密钥控制下按某一顺序交换列,最后按列优先的顺序依次读出,即产生了密文。解密:逆过程。

周期置换 

很大程度上同列置换,只不过加、解密时,在列交换后是按行优先的顺序向下进行。

 按照上面的说法,我们来进行加密解密试验

明文:我爱北京天安门,天安门上太阳升。

加密:将明文按固定长m分组,即每行m个字母,在密钥控制下按某一顺序交换列,最后按列优先的顺序依次读出,即产生了密文。

这里设m=3

得到:   我   爱   北

              京   天   安

              门    ,  天

             安    门   上

              太   阳   升

               。

密钥:1  那就是左右变换列

            爱    北    我

            天    安    京

            ,    天    门

            门    上    安

            升    阳    太

                            。

           顺序读出密文:   爱北我天安京,天门门上安升阳太。

解密:  

密文:爱北我天安京,天门门上安升阳太。

按m=3分组

           爱    北     我

           天    安     京

            ,   天     门

            门   上     安

           升    阳    太

           。

按密钥=1 进行变换

           我    爱   北

           京    天    安

           门    ,    天

           安     门   上

           太     阳   升

           。

顺序读出明文:我爱北京天安门,天安门上太阳升。

 

回到这个题:

 辛卯,癸巳,丙戌,辛未,庚辰,癸酉,己卯,癸巳。

带入上面的数值    正面:  18,30,23,8,17,10,16,30

                             背面: +1 (+60)

正面共8个数字,按照4个一组,分两组测试

 28   30  23   8

  17  10  26  30

### CTF2025 渗透测试比赛详情 CTF(Capture The Flag)是一种流行的信息安全竞赛形式,旨在通过模拟真实世界中的攻击场景来提升参赛者的技能。对于希望参与CTF2025渗透测试比赛的人士来说,了解如何准备和加入这类活动至关重要。 #### 比赛信息查找 为了获取最新的CTF2025赛事安排和其他相关信息,建议访问专门的CTF平台网站,如XCTF社区[^1]。这些平台上会发布各类国内外的比赛列表及其具体的时间表。此外,也可以关注其他知名的CTF资源站点,例如ctfhub,这里同样提供了丰富的当前及即将举办的赛事资讯[^3]。 #### 报名流程 当确定要参加某项特定的CTF2025渗透测试比赛之后,需按照官方指南完成注册过程。这通常涉及填写必要的个人信息并提交给主办方审核。一旦收到确认邮件,则表示成功加入了该次竞赛行列。需要注意的是,不同类型的CTF有不同的规则设定: - **解题模式**:参与者可通过线上或线下网络参与到此类活动中去解答一系列信息安全难题。此模式下,成绩取决于解决问题的速度与准确性。 - **攻防对抗模式**:这是一种更为激烈的竞争形式,各队不仅要保护自己的服务器免受攻击,还要尝试入侵对手的服务以获得分数。 #### 准备工作 在正式踏入赛场之前,充分准备好是必不可少的一环。可以从以下几个方面着手: - 学习基础理论和技术知识点; - 实践操作练习,尤其是针对Web应用的安全评估技巧; - 阅读过往比赛后的Write-up文档,借鉴高手们的思维方式和解决方案策略。 #### 注意事项 在整个过程中务必严格遵守比赛规定,保持良好的竞技精神。严禁违反公平原则的行为,比如私自与其他队伍沟通协作或是故意干扰比赛环境稳定性的举动都将受到严厉处罚[^5]。 ```python # 示例Python脚本用于自动化收集公开可用的情报数据作为前期准备工作的一部分 import requests def gather_osint(target_domain): url = f"https://api.example.com/v1/domains/{target_domain}/information" response = requests.get(url) if response.status_code == 200: data = response.json() print(f"Gathered information about {target_domain}:") for key, value in data.items(): print(f"{key}: {value}") else: print("Failed to retrieve information.") if __name__ == "__main__": target = "example-target-domain.com" gather_osint(target) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值