文章目录

  • 大佬请喝咖啡
    • 反编译
      • 解释\u:
    • z3解码
  • A_game
    • 数独题:
      • 这里判断行数据是1~9:
      • 这里判断列数据是1~9:
      • 9*9数独阵分为9个3*3方阵,每个方阵数据1~9
      • 进行异或magic
      • 脚本
        • 在线数独求解器

大佬请喝咖啡

反编译

解释\u:

就是一个数字编码,只不过它是两个字节,所以需要使用Unicode编码,ascii码只有一字节,没办法大于256(官方是128),所以这里的话,只需要把\u换成0x,即可和字符进行相乘

z3解码

from z3 import *
s=Solver()
charArray=[Int('a1[' + str(i) + ']') for i in range(9)]
for i in range(9):s.add(charArray[0] *4778 + charArray[1] * 3659 + charArray[2] * 9011 + charArray[3] * 5734 + charArray[4] * 4076 + charArray[5] * 6812 + charArray[6] * 8341 + charArray[7] * 6765 + charArray[8] * 7435 == 5711942)s.add(charArray[0] * 4449+ charArray[1] * 5454 + charArray[2] * 4459 + charArray[3] * 5800 + charArray[4] * 6685 + charArray[5] * 6120 + charArray[6] * 7357 + charArray[7] * 3561 + charArray[8] * 5199 == 4885863)s.add(charArray[0] * 3188 + charArray[1] * 6278 + charArray[2] * 9411 + charArray[3] * 5760 + charArray[4] * 9909 + charArray[5] * 7618 + charArray[6] * 7184 + charArray[7] * 4791 + charArray[8] * 0x21ee == 6387690)s.add(charArray[0] * 0x227b + charArray[1] * 0x1cfb + charArray[2] * 0x1b79 + charArray[3] * 0x245a + charArray[4] * 0x1c84 + charArray[5] * 0x168e + charArray[6] * 0x19bc + charArray[7] * 0x15a5 + charArray[8] * 0x1214 == 6077067)s.add(charArray[0] * 0x164b + charArray[1] * 0x16a1 + charArray[2] * 0x11ed + charArray[3] * 0x1a17 + charArray[4] * 0xf84 + charArray[5] * 0x16f4 + charArray[6] * 0x1a0c + charArray[7] * 0x173f + charArray[8] * 0x2561 == 5492294)s.add(charArray[0] * 0x25d5 + charArray[1] * 0x1cca + charArray[2] * 0x1228 + charArray[3] * 0x1c3e + charArray[4] * 0x258e + charArray[5] * 0x26fb + charArray[6] * 0x2075 + charArray[7] *0x259f + charArray[8] * 0x2438 == 7562511)s.add(charArray[0] * 0x1b2b + charArray[1] * 0x2177 + charArray[2] * 0x1f0d + charArray[3] * 0x21fb + charArray[4] * 0xcd4 + charArray[5] * 0x19f7 + charArray[6] * 0x0c67 + charArray[7] * 0x213a + charArray[8] * 0x1998 == 5970432)s.add(charArray[0] * 0x10e3 + charArray[1] * 0x1262 + charArray[2] * 0x1f91 + charArray[3] * 0x1edc + charArray[4] * 0x12fe + charArray[5] * 0x2548 + charArray[6] * 0x145b + charArray[7] * 0x1d13 + charArray[8] * 0x162c == 5834523)s.add(charArray[0] * 0x0bce + charArray[1] * 0x2327 + charArray[2] * 0x13c2 + charArray[3] * 0x11b1 + charArray[4] * 0xf64 + charArray[5] * 0x10b7 + charArray[6] * 0x11fe + charArray[7] * 0xd64 + charArray[8] * 0x22b9 == 4681110)
if s.check()==sat:print()
print(s.model())
moectf{EXcalibur}

A_game

数独题:

输入的东西进行数独阵填充:

unsigned char box[] =
{0,   0,   5,   0,   0,   4,   3,   6,   0,0,   0,   0,   0,   5,   0,   0,   2,   4,0,   4,   9,   6,   7,   0,   0,   0,   0,1,   0,   6,   0,   2,   0,   0,   3,   0,9,   0,   0,   7,   0,   0,   1,   0,   8,0,   3,   0,   0,   0,   5,   0,   9,   0,2,   0,   0,   5,   0,   7,   0,   0,   9,7,   0,   4,   0,   0,   0,   8,   0,   00,   9,   0,   0,   4,   0,   0,   0,   6,
}

主要是三个函数:

这里判断行数据是1~9:

  for ( i = 0; i <= 8; ++i ){for ( j = 1; j <= 9; ++j ){for ( k = 0; ; ++k ){result = (unsigned int)(char)box[9 * i + k];// 这里判断行数据是1~9if ( j == (_DWORD)result )break;if ( k == 8 ){printf("Wrong!!!Try again!!!");system("pause");exit(0);}}}}

这里判断列数据是1~9:

 for ( i = 0; i <= 8; ++i ){for ( j = 1; j <= 9; ++j ){for ( k = 0; ; ++k ){result = (unsigned int)(char)box[9 * k + i];// 判断列数据是1~9if ( j == (_DWORD)result )break;if ( k == 8 ){printf("Wrong!!!Try again!!!");system("pause");exit(0);}}}}return result;
}

99数独阵分为9个33方阵,每个方阵数据1~9

 for ( i = 0; i <= 8; i += 3 ){for ( j = 0; j <= 8; j += 3 ){for ( k = 1; k <= 9; ++k ){v5 = 0;v4 = 0;while ( 1 ){result = (unsigned int)(char)box[9 * i + 9 * v5 + j + v4];// i代表行 j代表列if ( k == (_DWORD)result )break;if ( v5 == 2 && v4 == 2 ){printf("Wrong!!!Try again!!!");system("pause");exit(0);}if ( ++v4 == 3 ){++v5;v4 = 0;}}}}}

进行异或magic

脚本

在线数独求解器

本人所做第一道数独题

a=b'8291767138932581849755263447186268341129653538127'
magic =[107,2,102,112,68,105,126,110,67,74,120,74,109,96,86,0,81,89,80,67,80,81,109,116,2,85,80,82,110,111,121,64,93,75,30,25,28,116,3,84,7,76,82,106,96,80,88,64,88,]for i in range(len(a)):print(chr(a[i]^magic[i]),end='')
moectf{S0_As_I_prAy_Un1imited_B1ade_WOrks---E1m1ya_Shiro}

MoeCTF 2021Re部分------大佬请喝咖啡,A_game相关推荐

  1. 我花了18年时间才能和你坐在一起喝咖啡

    我的白领朋友们,如果我是一个初中没毕业就来沪打工的民工,你会和我坐在starbucks一起喝咖啡吗?不会,肯定不会. 比较我们的成长历程,你会发现为了一些在你看来垂手可得的东西,我却需要付出巨大的努力 ...

  2. 知识点滴 - 喝咖啡么

    咖啡优点缺点对比 咖啡在当今社会无处不在,现在是地球上消费最多的产品之一.由于这种饮料几乎是每一种现代文化的主食,我们都已经习惯了整天喝它.但是,仅仅因为某些东西是司空见惯的,并不意味着它是健康的.因 ...

  3. 喜欢喝咖啡的人注意了!

    很多年轻人是"咖啡控"或者"可乐控",每天不喝一杯就觉得少了什么.而这种瘾头很可能让你得一种老年病骨质疏松症.作为一种常见的疾病,原本多发于绝经后的女性和老年男 ...

  4. 星巴克和瑞幸背后,什么是中国人喝咖啡的「真相」?

    让咖啡回归饮料,让咖啡回归大众消费品的本质. 2020 年 9 月 3 日,随着一篇「消失 100 多天后,我回来了」的文章被多次转发,连咖啡重回公众视线.在获得新一轮投资之后,连咖啡放弃了外卖业务, ...

  5. 为什么以前那种到处喝咖啡创业的场景一去不复返了?

    我之前看过一篇文章,说的大概意思就是那些假装高逼格的创业公司都死了.而那些一边喝咖啡一边创业的人表面看起来确实是高大上,但精力并没有用在刀刃上,所以企业迟早会挂掉. 我之前就认识一个创业的人,这个人也 ...

  6. 为什么手机联系人里有permission_为什么有人在咖啡馆里不看手机不看电脑没有同伴,独自喝咖啡?...

    通常,你是因为什么原因,在咖啡馆停留?聊天?谈事?工作?学习? 如果你经常去咖啡馆,你也许不会发现,有这样一类人,他们一个人,坐在咖啡馆里,不看手机,不看电脑,没有同伴,只是静静地坐在那里,喝咖啡.他 ...

  7. 设计模式:模板方法模式(C++)【喝咖啡还是喝茶】

    模板方法模式介绍 我们在软件设计中经常会有一些步骤是一样的,只是实现不一样,这种情况我们就可以使用模板方法模式.何为模板,就是有固定的步骤,可以复用嘛.来看看模板方法模式:定义一个操作中的算法的骨架, ...

  8. 10年后重温《我奋斗了18年才和你坐在一起喝咖啡》

      很早之前就看过这篇文章,具体都忘了什么时候了,当时感触颇深!这篇文章是2007年左右由网友麦子发的,至今已有11年之久!然而这么多年过去了,情况到底有多好?似乎也没多大改变!穷人比以前好了,貌似有 ...

  9. 我奋斗了10年才能和你坐在一起喝咖啡

    我的白领朋友们,如果我是一个初中没毕业就来南京打工的民工,你会和我坐在"星巴克"一起喝咖啡吗?不会,肯定不会.比较我们的成长历程,你会发现,为了一些在你看来唾手可得的东西,我却需要 ...

最新文章

  1. Scala的特质(Trait)介绍
  2. 零基础可以学python吗-初学者必知:零基础学习Python真的能学会吗?
  3. 【联邦学习】联盟学习到底是什么?他们画了部漫画……
  4. 软件更新点的配置—SUP
  5. ubuntu修改mongodb的数据库储存位置
  6. 漫画算法:辗转相除法是什么鬼
  7. 【高级】小程序 - 腾讯云 - wafer - PHP - 数据库接口的应用和研究 - 02 - DB::select - 正确的接口写法 - 包括布尔判断
  8. 在raspbian上配置apache2/subversion/xdebug及mysql远程访问
  9. TokenInsight:反映区块链行业整体表现的 TI 指数较昨日同期上涨9.79%
  10. js拼的onclick调用方法需要注意的地方 之二
  11. linux的dlan脚本,Linux下的DLNA播放器源码
  12. prewitt算子实现
  13. 机器学习kaggle案例:沃尔玛招聘 - 商店销售预测
  14. 报错:org.springframework.cloud.gateway.support.NotFoundException: Unable to find instance for localhos
  15. 【网易】网易2018实习生招聘笔试题-测试开发实习生
  16. 小米路由器同一wifi局域网下,各主机无法ping连
  17. 吉首 - 超超的自闭意思(素筛+暴力)
  18. mysql未开启binlog恢复_mysql 开启binlog,并恢复数据操作
  19. 毕业论文发表在什么期刊
  20. 可视化编排为什么越来越流行

热门文章

  1. mysql 5.7.20主从配置_mysql-5.7.20源码安装 + 多实例 + 主从复制
  2. Python语言学习:python语言代码调试—异常处理之详细攻略
  3. 成功解决The NVIDIA driver on your system is too old (found version 9010). Please update your GPU driver
  4. C++:C++语言入门级基础知识考察点回顾之基本数据类型、流程控制
  5. Tool:微信使用技巧之手把手教你如何在电脑端同时登录多个微信账号之图文教程详细攻略
  6. 成功解决graphviz\backend.py, line 162, in pipe raise ExecutableNotFound(args) graphviz.backend.Executab
  7. TF版本升级问题集合:成功解决由于不同的TensorFlow版本之间某些函数的用法引起的错误
  8. ML之SVM:利用SVM算法对手写数字图片识别数据集(PCA降维处理)进行预测并评估模型(两种算法)性能
  9. ML之DT:利用DT(DTC)实现对iris(鸢尾花)数据集进行分类并可视化DT结构
  10. 成功解决Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2(二)