吾爱2023新年红包题第四题

这篇具有很好参考价值的文章主要介绍了吾爱2023新年红包题第四题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

吾爱论坛2023年春节红包安卓题,随便玩一玩;

https://www.52pojie.cn/thread-1738015-1-1.html
吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言
第四题:https://www.52pojie.cn/home.php?mod=task&do=view&id=23

首先我们下载后,打开apk看下界面提示情况;

吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言

看界面是用到了, 你的吾爱uid 以及计算出来的flag 进行效验;

吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言

先定位到方法,我们又看到,用到了MD5加密和 base64;
吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言
还是先看方法逻辑吧:

吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言
obj也就是第一个输入框的内容,那不就是uid吗

  String obj = StringsKt.trim((CharSequence) editText.getText().toString()).toString();

后面这个就是第二个输入框,flag

StringsKt.trim((CharSequence) editText2.getText().toString()).toString())

进入a.m25B方法:

吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言
uid -> str ->encode ->c.cipher(mD5Utils.MD5(base64Utils.encodeToString(bytes)), 5)

flag -> str2 -> substring

显然这个方法是 返回一个 bool类型结果,那就是 true | false;

又看到最后确实是比对这两个值:

吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言
分析其逻辑,我们只要知道,c.cipher(mD5Utils.MD5(base64Utils.encodeToString(bytes)), 5)

就是比对的结果;

分析运算逻辑:

将 uid + “Wuaipojie2023” 进行 encode 方法运算:

    public static String encode(String str) {
        int length = str.length();
        char[] cArr = new char[length];
        int i = length - 1;
        while (i >= 0) {
            int i2 = i - 1;
            cArr[i] = (char) (str.charAt(i) ^ '5');
            if (i2 < 0) {
                break;
            }
            i = i2 - 1;
            cArr[i2] = (char) (str.charAt(i2) ^ '2');
        }
        return new String(cArr);
    }

后转bytes进行base64编码;
====这里的base64也都是标准的,无魔改,无改码表;

然后将base64之后进行md5加密,加密后得出32位值,再用 cipher 做运算;

public final String cipher(String str, int i) {
        Intrinsics.checkNotNullParameter(str, "str");
        StringBuilder sb = new StringBuilder();
        int length = str.length();
        for (int i2 = 0; i2 < length; i2++) {
            if (Intrinsics.compare((int) str.charAt(i2), 65) >= 0 && Intrinsics.compare((int) str.charAt(i2), 90) <= 0) {
                sb.append(cipher(str.charAt(i2), i));
            } else if (Intrinsics.compare((int) str.charAt(i2), 97) < 0 || Intrinsics.compare((int) str.charAt(i2), 122) > 0) {
                sb.append(str.charAt(i2));
            } else {
                sb.append(cipher(str.charAt(i2), i));
            }
        }
        String sb2 = sb.toString();
        Intrinsics.checkNotNullExpressionValue(sb2, "sb.toString()");
        return sb2;
    }

运算之后:

吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言

那就是 cipher之后:h8203kj86395hf8677jgj599ki82g0i9;

吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言

那么格式就是 flag{cipher之后的值了} ;

吾爱2023新年红包题第四题,CTF及小游戏工具,java,数据结构,开发语言文章来源地址https://www.toymoban.com/news/detail-520991.html

到了这里,关于吾爱2023新年红包题第四题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 软件设计师_算法——下午题(第四题)

    解析:分析题干:queen[i]表示第i个皇后的位置,表示 第i个皇后放置在第i行的第queen[i]列 ; (1): queen[i]==queen[j] ;这里的需求是检查已摆放的皇后是否在同一列或者是同一斜线上,||后面的abs(queen[i]-queen[j]==(j-i))查看已摆放的皇后是否在同一斜线上,代码的意思是,第i个皇

    2024年02月08日
    浏览(54)
  • CCF-CSP 30次 第四题【电力网络】

    20分,六重循环看不懂 计算机软件能力认证考试系统

    2024年02月09日
    浏览(45)
  • 【ccf-csp题解】第四次csp认证-第四题-网络延时-树的直径

    本题所求的实际上是树的直径,即树中的任意两个结点之间的最大距离 采用的方法是dfs 从根节点开始遍历,对于每一个被dfs的结点m,返回此结点m到所有叶子结点的距离最大的那个即d1,同时在dfs过程当中记录结点m到所有叶子结点的距离第二大的那个,即d2 那么最终答案就是

    2024年02月09日
    浏览(43)
  • 【代码随想录-Leetcode第四题:150. 逆波兰表达式求值】

    给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。 请你计算该表达式。返回一个表示表达式值的整数。 注意: 有效的算符为 ‘+’、‘-’、‘*’ 和 ‘/’ 。 每个操作数(运算对象)都可以是一个整数或者另一个表达式。 两个整数之间的除法总

    2024年02月13日
    浏览(44)
  • 云计算赛题第四套

    可支持在线解决相关问题,各种文档以及软件包,供测试,有意者私 某企业根据自身业务需求,实施数字化转型,规划和建设数字化平台,平台聚焦“DevOps开发运维一体化”和“数据驱动产品开发”,拟采用开源OpenStack搭建企业内部私有云平台,开源Kubernetes搭建云原生服务平台

    2024年04月22日
    浏览(27)
  • leetcode数据库题第四弹

    https://leetcode.cn/problems/biggest-single-number/ 简单的聚合,用group 加 having 轻松完成一拖三 CSDN 文盲老顾的博客,https://blog.csdn.net/superwfei https://leetcode.cn/problems/not-boring-movies/ 嗯,oracle 居然不支持 % 运算求余 https://leetcode.cn/problems/exchange-seats/ 这个题目有问题,在力扣官方修正之前,

    2024年02月08日
    浏览(73)
  • 2023-07-15力扣今日四题

    链接: 1377. T 秒后青蛙的位置 题意: 一个n节点无向树,遍号1到n,青蛙从 顶点1 开始**(第0秒在顶点1)** 每过一秒: 青蛙 等概率 跳到 该节点的子节点 ,如果该节点没有子节点则原地不动 只跳子节点或者留在原地,即题目中的 不跳回访问过的节点 解: n才100,数据贼小,

    2024年02月16日
    浏览(39)
  • 刷题第四十二天 123. 买卖股票的最佳时机Ⅲ 188. 买卖股票的最佳时机Ⅳ

    和前一题的限制在于只能买卖两次,所以dp数组多定义一个状态,分别表示第一次持有 第一次不持有和第二次持有 第二次不持有,然后进行更新。 注意初始化的时候 第一次持有和第二次持有都需要默认0-prices[0] 和前一题的差别就是可以多次买卖,所以定义一个三维数组,表

    2024年02月05日
    浏览(47)
  • 2023前端面试题第二弹(真实,一般人我还不给看)

    为什么要初始化css? 避免浏览器差异,解决兼容问题 网格布局 display: grid; grid-template-columns: 1fr 1fr 1fr less的优点 可以兼容,可以嵌套,循环,运算,定义变量和继承样式(extend) computed和watch的区别;computed和methods的区别 computed和watch: computed是计算缓存,需要return,第一次

    2023年04月08日
    浏览(35)
  • 2023国赛数学建模A题第一问解题思路 - 定日镜场的优化设计

    A 题 定日镜场的优化设计 构建以新能源为主体的新型电力系统, 是我国实现“碳达峰”“碳中和”目标的一项重要 措施。塔式太阳能光热发电是一种低碳环保的新型清洁能源技术[1]。 定日镜是塔式太阳能光热发电站(以下简称塔式电站)收集太阳能的基本组件,其底座由 纵向

    2024年02月09日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包