BUUCTF---达芬奇的密码
题目
达芬奇隐藏在蒙娜丽莎中的数字列:1 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
记录在达芬奇窗台口的神秘数字串:36968853882116725547342176952286
解题
查询题解得知与斐波那契数列有关
题目给出两个串,数字列应该就是与顺序有关,数字串就是flag打乱后的
如何纠正flag正确就是需要看数字列的顺序
给出斐波那契数列正确的顺序
1 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
1 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
c="36968853882116725547342176952286"
第0位的1就在斐波那契数列第0位,所以3的位置不变,还在第0位。
第1位的233的位置在斐波那契数列第12位,所以6应该移到第12位。
我们需要从数字列中挨个取出数字,查询其在斐波那契数列中的位置,将密文c对应位置的数字,移到相应的位置即可。
使用python脚本解密
def fib_loop_for(n): #斐波那契数列
a, b = 0, 1
for _ in range(n):
a, b = b, a + b
return a
key="1 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".split(" ")
dic=[]
c="36968853882116725547342176952286"
m="*"*32
m=list(m)
for i in range(1,33):
print(fib_loop_for(i),end=" ")
dic.append(fib_loop_for(i))
print(dic)#正确的字典序
for i in range(32):
index = dic.index(int(key[i])) #找出key中的index
print(i,index,c[i])
m[index]=c[i] #交换顺序
print("".join(m))
#7*995588256861228614165223347687
#flag:37995588256861228614165223347687
BUUCTF---达芬奇的密码的更多相关文章
- buu 达芬奇 && ROT
一.达芬奇 百度了下电影简介,发现了斐波那契数列,同时发现密文是由斐波那契数列移动而来的,有点像base64变种 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 ...
- 达芬奇18.1.2安装包下载+软件详细破解安装教程(Win&Mac)
DaVinci Resolve v18.1.2是一款在同一个软件工具中,将剪辑.调色.视觉特效.动态图形和音频后期制作融于一身的解决方案!它采用美观新颖的界面设计,易学易用,能让新手用户快速上手操作, ...
- 达芬奇TI DVSDK之视频数据流过程分析
作者:openwince@gmail.com 博客:http://www.cnblogs.com/tinz 本文的copyright归openwince@gmail.com所有,使用GPL发布, ...
- 基于TI Davinci架构的多核/双核开发高速扫盲(以OMAP L138为例),dm8168多核开发參考以及达芬奇系列资料user guide整理
基于TI Davinci架构的双核嵌入式应用处理器OMAPL138开发入门 原文转自http://blog.csdn.net/wangpengqi/article/details/8115614 感谢 ...
- 【DSP开发】德州仪器达芬奇五年之路七宗罪,嵌入式处理器架构之争决战2012
芯片是产业链上游重要的一个环节,一颗小小的芯片具有极高的技术含量和价值,半导体行业每年都会有一个各大厂商营业额的排名,除去2009年,常年盘踞在前三名位置的分别是英特尔,三星半导体和德州仪器,英特尔凭 ...
- TI DaVinci(达芬奇)入门
(转载来自 德州仪器半导体技术(上海)有限公司 通用DSP 技术应用工程师 崔晶 德州仪器(TI)的第一颗达芬奇(DaVinci)芯片(处理器)DM6446已经问世快三年了.继DM644x之后,TI又 ...
- 达芬奇架构NPU
达芬奇架构NPU 达芬奇架构的核心优势是什么?如何更好地赋能麒麟990? 达芬奇架构,是华为自研的面向AI计算特征的全新计算架构,具备高算力.高能效.灵活可裁剪的特性,是实现万物智能的重要基础.具体来 ...
- Mac 达芬奇【Davinci Resolve】 无法添加媒体
参考 : https://zhidao.baidu.com/question/182613491787331404.html 打开软件,点击默认的未命名项目: 点击左上角图中箭头位置: 选中系统-&g ...
- 爬虫必看,每日JS逆向之爱奇艺密码加密,今天你练了吗?
友情提示:优先在公众号更新,在博客园更新较慢,有兴趣的关注一下知识图谱与大数据公众号,本次目标是抠出爱奇艺passwd加密JS代码,如果你看到了这一篇,说明你对JS逆向感兴趣,如果是初学者,那不妨再看 ...
- Android数据库安全解决方案,使用SQLCipher进行加解密
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/11952409 我们都知道,Android系统内置了SQLite数据库,并且提供了一 ...
随机推荐
- centos 安装python3后yum报错
问题 centos 安装python3后,并且把/usr/bin/python 软链接到python3后,yum命令报错 原因: yum命令依赖于python2,导致报错 解决方法: 修改 /usr/ ...
- MySQL-进阶篇
一.连接查询 图解示意图 1.建表语句 部门和员工关系表: CREATE TABLE `tb_dept` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT ...
- biancheng-JSTL标签库
JSP 标签是一组与 HTML 标签相似,但又比 HTML 标签强大的功能标签.JSTL 用来简化 JSP 开发,可以使我们不用嵌入 Java 代码就能够开发出复杂的 JSP 页面.JSTL 包含 5 ...
- C#/.NET/.NET Core技术前沿周刊 | 第 21 期(2025年1.6-1.12)
前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录.追踪C#/.NET/.NET Core领域.生态的每周最新.最实用.最有价值的技术文章.社区动态.优质项目和学习资源等. ...
- 部署简单的单节点k8s
1.Kubernetes简介 Kubernetes,简称K8s,是用8代替名字中间的8个字符"ubernete"而成的缩写.Kubernetes是Google开源的一个容器编排引擎 ...
- 阿里oos使用
阿里oss控制台安装 wget http://gosspublic.alicdn.com/ossutil/1.6.17/ossutil64 chmod 755 ossutil64 添加环境变量 cp ...
- LangChain基础篇 (06)
LangChain 核心模块 Agent(构建复杂应用的代理系统) ReAct: Reasoning + Acting ReAct Prompt 由 few-shot task-solving tra ...
- ASP.NET Core 6 基础入门系列(1) ASP.NET Core 6.0 简介
系列目录 [已更新最新开发文章,点击查看详细] 预备知识1: C#5.C#6.C#7.C#8.C#9.C#10 预备知识2: .NET 对比 .NET Framework 预备知识3: ...
- ABB喷涂机器人IRB5400维修保养
为最大限度地保证ABB机器人正常运行,ABB机器人普遍需要在运行6000小时后进行一次保养,特别是针对在恶劣工况与长时间在负载极限或运行极限下工作的ABB机器人,则需要每年进行一次全面ABB机器人保养 ...
- QT5笔记:11. Qt类库的模块
基础模块:提供了Qt的最基本的功能 附加模块:实现了一些特定功能的提供了附加价值的模块 增值模块:商业版才有的模块,单独发布的提供额外附加价值的模块或工具 技术预览模块:一些处于开发阶段,但是可以作为 ...