BUUCrypto

  • 1.达芬奇密码
  • 2.rot
  • 3.Unencode
  • 4.密码学的心声
  • 5.[GXYCTF2019]CheckIn
  • 6.这是什么
  • 7.[AFCTF2018]Morse
  • 8.[NCTF2019]Keyboard
  • 9.一张谍报
  • 10.[BJDCTF2020]这是base??

1.达芬奇密码

蒙娜丽莎中的数字列为打乱了的斐波拉契数列,找出顺序的斐波拉契数与乱序之间的映射,将其与下面的数36968853882116725547342176952286一 一对应,即可得到flag:{37995588256861228614165223347687}

a=[0,233,3,2584,1346269,144,5,196418,21,1597,610,377,10946,89,514229,987,8,55,6765,2178309,121393,317811,46368,4181,1,832040,2,28657,75025,34,13,17711]
b=[0,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025,121393,196418,317811,514229,832040,1346269,2178309]
c=[0 for i in range(len(a))]
for i in range(len(a)):for j in range(len(a)):if a[i]==b[j]:c[j]=i
s="36968853882116725547342176952286"
d=''
for i in range(len(s)):d+=s[c[i]]
print(d)

2.rot


Rot13 加密,用python脚本将每个数字减去13后,转ASCLL字符,得到:

FLAG IS flag{www_shiyanbar_com_is_very_good_????}
MD5:38e4c352809e150186920aac37190cbc
a = [83,89,78,84,45,86,96,45,115,121,110,116,136,132,132,132,108,128,117,118,134,110,123,111,110,127,108,112,124,122,108,118,128,108,131,114,127,134,108,116,124,124,113,108,76,76,76,76,138,23,90,81,66,71,64,69,114,65,112,64,66,63,69,61,70,114,62,66,61,62,69,67,70,63,61,110,110,112,64,68,62,70,61,112,111,112]
b = []
for i in a:i = i-13b.append(i)for j in b:print(chr(j),end='')

“flag{}”中有四个????,又给了md5,应该是flag又进行了md5加密,我们用脚本进行md5碰撞,将‘?’转为字符。

对于脚本后期补上吧,反正我没跑出来,直接抄的大佬wp上的flag{www_shiyanbar_com_is_very_good_@8Mu}大佬的wp

3.Unencode

用UUencode在线解密

得到flag{dsdasdsa99877LLLKK}

4.密码学的心声

得到这样一张图片:
埃塞克码 =ASCLL,提示八进制,尝试将每3个数为一组分隔开

s = '111 114 157 166 145 123 145 143 165 162 151 164 171 126 145 162 171 115 165 143 150'
tmp = [s.split(' ')[i] for i in range(len(s.split(' ')))]
cipher = ''
for i in tmp:cipher += chr(int(i,8))
flag = "flag{"+cipher+"}"
print(flag)

得到flag{ILoveSecurityVeryMuch}

5.[GXYCTF2019]CheckIn

题目是:
dikqTCpfRjA8fUBIMD5GNDkwMjNARkUwI0BFTg==

我以为是base64,可是解出来一串乱码:

v)*L*_F0<}@H0>F49023@FE0#@EN

拿着这串乱码去跑了一下Rot-n解密,因为rot加密和凯撒加密差不多,都是字符的位移。Rot 5/13/18/47

为rot -47加密:flag{Y0u_kNow_much_about_Rot}

6.这是什么

改后缀为txt,打开就能看到JSfuck编码,解码工具

得到flag{a0448fd730b62c13ca80200c4529daa2}

7.[AFCTF2018]Morse


得到一张很明确的摩斯电码表,Morse在线解码工具
得到一串字符:
61666374667B317327745F73305F333435797D
数字为0-9,字母未超过F,一串16进制数,将这串16进制数转文本得到:16进制转文本
afctf{1s't_s0_345y}

8.[NCTF2019]Keyboard


得到这些字符,先观察一波,首先题目说的很明确了Keyboard(键盘),发现上面的字母都在键盘的同一行,并且与上面的数字一一对应。如q对应1,w - 2 , e -3.

分析第一个字符ooo, o在键盘上对应的是9,有3个o,表示第9个格子的第三个字母,也就是y。同理yyy,就是指字母o

cipher="ooo yyy ii w uuu ee uuuu yyy uuuu y w uuu i i rr w i i rr rrr uuuu rrr uuuu t ii uuuu i w u rrr ee www ee yyy eee www w tt ee"
base=" qwertyuiop"
a=[" "," ","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"]
for part in cipher.split(" "):s=base.index(part[0])count=len(part)print(a[s][count-1],end="")

得到flag{youaresosmartthatthisisjustapieceofcake
}

9.一张谍报

原理我暂时没弄懂,后期补上。
利用python3大佬写的脚本就能解出:

str1 = "今天上午,朝歌区梆子公司决定,在每天三更天不亮免费在各大小区门口设卡为全城提供二次震耳欲聋的敲更提醒,呼吁大家早睡早起,不要因为贪睡断送大好人生,时代的符号是前进。为此,全区老人都蹲在该公司东边树丛合力抵制,不给公司人员放行,场面混乱。李罗鹰住进朝歌区五十年了,人称老鹰头,几年孙子李虎南刚从东北当猎户回来,每月还寄回来几块鼹鼠干。李罗鹰当年遇到的老婆是朝歌一枝花,所以李南虎是长得非常秀气的一个汉子。李罗鹰表示:无论梆子公司做的对错,反正不能打扰他孙子睡觉,子曰:‘睡觉乃人之常情’。梆子公司这是连菩萨睡觉都不放过啊。李南虎表示:梆子公司智商捉急,小心居民猴急跳墙!这三伏天都不给睡觉,这不扯淡么!到了中午人群仍未离散,更有人提议要烧掉这个公司,公司高层似乎恨不得找个洞钻进去。直到治安人员出现才疏散人群归家,但是李南虎仍旧表示爷爷年纪大了,睡不好对身体不好。"
str2 = "喵天上午,汪歌区哞叽公司决定,在每天八哇天不全免费在各大小区门脑设卡为全城提供双次震耳欲聋的敲哇提醒,呼吁大家早睡早起,不要因为贪睡断送大好人生,时代的编号是前进。为此,全区眠人都足在该公司流边草丛合力抵制,不给公司人员放行,场面混乱。李罗鸟住进汪歌区五十年了,人称眠鸟顶,几年孙叽李熬值刚从流北当屁户回来,每月还寄回来几块报信干。李罗鸟当年遇到的眠婆是汪歌一枝花,所以李值熬是长得非常秀气的一个汉叽。李罗鸟表示:无论哞叽公司做的对错,反正不能打扰他孙叽睡觉,叽叶:‘睡觉乃人之常情’。哞叽公司这是连衣服睡觉都不放过啊。李值熬表示:哞叽公司智商捉急,小心居民猴急跳墙!这八伏天都不给睡觉,这不扯淡么!到了中午人群仍未离散,哇有人提议要烧掉这个公司,公司高层似乎恨不得找个洞钻进去。直到治安人员出现才疏散人群归家,但是李值熬仍旧表示爷爷年纪大了,睡不好对身体不好。"
str3 = "喵汪哞叽双哇顶,眠鸟足屁流脑,八哇报信断流脑全叽,眠鸟进北脑上草,八枝遇孙叽,孙叽对熬编叶:值天衣服放鸟捉猴顶。鸟对:北汪罗汉伏熬乱天门。合编放行,卡编扯呼。人离烧草,报信归洞,孙叽找爷爷。"
res = ""
for i in range(len(strs3)):for j in range(len(strs2)):if strs3[i] == strs2[j]:res += strs1[j]break
print(res)

运行脚本得到:
今朝梆子二更头,老鹰蹲猎东口,三更鼹鼠断东口亮子,老鹰进北口上树,三枝遇孙子,孙子对虎符曰:南天菩萨放鹰捉猴头。鹰对:北朝罗汉伏虎乱天门。合符放行,卡符扯呼。人离烧树,鼹鼠归洞,孙子找爷爷。

flag为{南天菩萨放鹰捉猴头}

10.[BJDCTF2020]这是base??

这里给了一个关于base64的dict字典,查一下base64的标准字典:

应该是一个替换加密,上脚本:

import base64
dict={0: 'J', 1: 'K', 2: 'L', 3: 'M', 4: 'N', 5: 'O', 6: 'x', 7: 'y', 8: 'U', 9: 'V', 10: 'z', 11: 'A', 12: 'B', 13: 'C', 14: 'D', 15: 'E', 16: 'F', 17: 'G', 18: 'H', 19: '7', 20: '8', 21: '9', 22: 'P', 23: 'Q', 24: 'I', 25: 'a', 26: 'b', 27: 'c', 28: 'd', 29: 'e', 30: 'f', 31: 'g', 32: 'h',33: 'i', 34: 'j', 35: 'k', 36: 'l', 37: 'm', 38: 'W', 39: 'X', 40: 'Y', 41: 'Z', 42: '0', 43: '1', 44: '2', 45: '3', 46: '4', 47: '5', 48: '6', 49: 'R', 50: 'S', 51: 'T', 52: 'n', 53: 'o', 54: 'p', 55: 'q', 56: 'r', 57: 's', 58: 't', 59: 'u', 60: 'v', 61: 'w', 62: '+', 63: '/', 64: '='}
base64_list = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P','Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f','g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v','w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/']
cipher='FlZNfnF6Qol6e9w17WwQQoGYBQCgIkGTa9w3IQKw'
res=''
for i in range(len(cipher)):for j in range(64):if(dict[j]==cipher[i]):res+=base64_list[j]
flag=base64.b64decode(res)
print(flag)

得到:
QkpEe0QwX1kwdV9rTm9XX1RoMXNfYjRzZV9tYXB9
b’BJD{D0_Y0u_kNoW_Th1s_b4se_map}’

每天10道Crypto Day1相关推荐

  1. 每天10道Crypto Day 2

    BUUCrypto 1. yxx 2.[BJDCTF2020]signin 3.[MRCTF2020]天干地支+甲子 4.浪里淘沙 5.[MRCTF2020]vigenere 6.[MRCTF2020 ...

  2. C语言必须会写的10道经典题(小白必看!)

    对于初学C语言的小白们来说,提高进步最快的方式无疑是刷题,反复刷反复思考优化,这里给大家列出几道C语言入门经典好题,对于小白们锻炼思维很不错,下面就一起来看看吧~ 文章目录 前言 1.写代码将三个整数 ...

  3. 10道海量数据处理的面试题

    说明:本文分为俩部分,第一部分为10道海量数据处理的面试题,第二部分为10个海量数据处理的方法总结. 出处:http://blog.csdn.net/v_JULY_v. 第一部分.十道海量数据处理面试 ...

  4. 10道棘手的Java面试题,看看你能答对几个?

    昨晚看了几个老外分享的面试题,还挺有意思的.下面我们分两期来一起看看都是些怎么样的问题难到了老外?如果是你,是否可以都答对呢? 如果您对原文感兴趣,也可以通过这个链接查看:https://levelu ...

  5. 10道C++输出易错笔试题收集(敢进来挑战吗?)

    下面这些题目都是我之前准备笔试面试过程中积累的,大部分都是知名公司的笔试题,C++基础薄弱的很容易栽进去.我从中选了10道简单的题,C++初学者可以进来挑战下,C++大牛也可以作为娱乐玩下(比如下面的 ...

  6. 10道C++输出易错笔试题收集

    10道C++输出易错笔试题收集 下面这些题目都是我之前准备笔试面试过程中积累的,大部分都是知名公司的笔试题,C++基础薄弱的很容易栽进去.我从中选了10道简单的题,C++初学者可以进来挑战下,C++大 ...

  7. 计算机思维测试题,10道有趣的小学生思维测试题,和孩子一起来测一测吧!文末附答案解析...

    最近有个家长朋友私信小星: 我们家大宝马上大宝要开学了,我真的是又开心又害怕! 想想终于送去学校可以省心了,但是又回忆起每天辅导作业的崩溃,我真的是不知如何是好-- 想必不少家长朋友有这样的困扰,还有 ...

  8. 十以内的加减java编写程序_Java实现随机出题,10道10以内加减法计算代码实例

    本文实例为大家分享了Java实现随机出题,10道10以内加减法计算l的具体代码,供大家参考,具体内容如下 package com.swift; import java.awt.Toolkit; imp ...

  9. c语言超长编程程序,全国青少年软件编程等级考试C语言经典程序题10道五

    全国青少年软件编程等级考试C语言经典程序题10道五 [程序41] 题目:学习static定义静态变量的用法 1.程序分析: 2.程序源代码: #include "stdio.h" ...

最新文章

  1. VS2015占内存大吗?_手机是6GB运行内存,何为后台却显示3G内存?
  2. python如何输入和输出_输入和输出
  3. 直击3.15 安防行业如何维护消费者权益
  4. python代码技巧_让你python代码更快的3个小技巧
  5. Python 基础知识 D7
  6. micropython和python区别-选择C/C++还是选择MicroPython来开发?(第0章-第三节)
  7. Js中apply和Math.max()函数的问题及区别
  8. 小米安装linux驱动怎么安装教程,小米手机驱动程序怎么安装教程【图文版】
  9. c语言小游戏 flybird Easyx编程 项目源码讲解
  10. 霍树棠《忆真妃》又名《剑阁闻铃》
  11. 市场供需简单模型分析
  12. 【NKOJ-4234】三角分形
  13. opencv 裁剪 java_OpenCV3 Java图像裁剪(Trimming Rect)
  14. jzoj 3957 鸡腿の花园
  15. 【PostgreSQL逻辑复制数据同步到kafka】
  16. Android中BottomSheetDialog使用方法(底部弹出的Dialog)
  17. php邮件群发系统日发5000,最新qq邮件群发日发10000封邮件
  18. Java 如何把gb2312编码转化为汉字(互转)
  19. 学习周报20200216 | 学习计划安排整理
  20. 面阵相机行业研究分析报告

热门文章

  1. AdaptivePose: 人体姿态估计新思路,将人体部位表示为自适应点
  2. 森宇文化全授权代理《彩虹护卫队》亮相戛纳开启动漫全产业链布局
  3. 国产数据库《人大金仓v8》适配过程问题解决记录
  4. 虫儿飞,虫儿飞,你在思念谁
  5. Java内功设计模式 part2
  6. 北风:美团饿了么外卖返利cps项目是什么做的?(实操)
  7. Android 修改特殊字体样式
  8. 齐治堡垒机前台远程命令执行漏洞(CNVD-2019-20835)分析
  9. 菜鸡的2020年腾讯实习笔试
  10. python筛选包含特定值的行_使用pandas筛选出指定列值所对应的行