ISCC——AI

得到一个T4.pyc

回编译一下

得到下面代码


import base64def encrypt_and_compare(user_input, offset_str, target_base64):if len(user_input) != 24:return 'Please enter a string with a length of 24'encrypted = Nonefor i, char in enumerate(user_input):offset = int(offset_str[i])ascii_val = ord(char)if i % 2 == 0:new_ascii = ascii_val + offsetelse:new_ascii = ascii_val - offsetencrypted_char = chr(new_ascii ^ offset)encrypted.append(encrypted_char)encrypted_bytes = ''.join(encrypted).encode('utf-8')encrypted_base64 = base64.b64encode(encrypted_bytes).decode('utf-8')print('Encrypted result:{}'.format(encrypted_base64))if encrypted_base64 == target_base64:return 'Find key'return Noneoffset_str = '123456789012345678901234'
target_base64 = 'TWF/c1sse19GMW5gYVRoWWFrZ3lhd0B9'
user_input = input('Please enter a string with a length of 24:')
result = encrypt_and_compare(user_input, offset_str, target_base64)
print(result)

很简单逻辑,你解密出来就是第一段密码(这个我不想再写了,相信各位都会,不会私信我,嘿嘿)

第一段密码拿去解压缩出来

就有这些东西

这是一个处理png文件的模型

我让AI修改一下(我肯定是不会的)

import torch
from torch import nn
from torchvision import transforms
from PIL import Image
import os# 定义网络结构
class Net(nn.Module):def __init__(self):super(Net, self).__init__()self.fc1 = nn.Linear(28 * 28, 128)self.fc2 = nn.Linear(128, 64)self.fc3 = nn.Linear(64, 10)def forward(self, x):x = x.view(-1, 28 * 28)x = torch.relu(self.fc1(x))x = torch.relu(self.fc2(x))x = self.fc3(x)return x# 直接加载整个模型实例
model_instance = torch.load('D:/CTF/problem/iscc/AI/AI-23/confused_digit_recognition_model.pt', map_location='cpu')# 确保模型处于评估模式
model_instance.eval()# 定义图像预处理变换
transform = transforms.Compose([transforms.Grayscale(num_output_channels=1),transforms.Resize((28, 28)),transforms.ToTensor(),transforms.Normalize((0.5,), (0.5,))
])# 图像文件所在目录
image_folder = "D:\\CTF\\problem\\iscc\\AI\\AI-23\\"# 遍历编号从1到24的图像文件并进行预测
for i in range(1, 25):# 构建完整的图像路径image_path = os.path.join(image_folder, f"{i}.png")try:# 加载并预处理图像image = Image.open(image_path)image = transform(image)image = image.unsqueeze(0)# 模型预测with torch.no_grad():outputs = model_instance(image)_, predicted = torch.max(outputs.data, 1)# 打印预测结果print( predicted.item(),end='')except IOError as e:print(f"Error opening {image_path}: {e}")except Exception as e:print(f"An error occurred during prediction for {image_path}: {e}")

得到第二段密码

这就是对照表的内容啦

然后写个脚本就OK

def toint(a):b=ord(a)-ord('0')return b
a='384362683985682257091427'
for i in range(24):enc=toint(a[i])if(enc==0):print('@nd',end='')elif(enc==1):print('a!',end='')elif (enc == 2):print('_',end='')elif (enc == 3):print('F',end='')elif (enc == 4):print('SSS',end='')elif (enc == 5):print('W@',end='')elif (enc == 6):print('K',end='')elif (enc == 7):print('1',end='')elif (enc == 8):print('C',end='')elif (enc == 9):print('d',end='')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/15875.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

axios的配置项及含义

axios 是一个基于 Promise 的 HTTP 客户端,用于浏览器和 Node.js。它有许多配置项可以自定义 HTTP 请求。以下列举 axios 中的五个常用配置项及其含义,并提供示例代码: 1. method 含义:指定请求方法(例如 GET, POST,…

基于 Windows 的记事本简单功能开发及部署发布--迭代2.1

基于上篇文章基于 Windows 的记事本简单功能开发及部署发布--迭代2.0-CSDN博客 更新完成以下功能点: 1.更新字体到json文件中,下次打开应用能够继续生效。

Unity开发——XLua热更新之Hotfix配置(包含xlua获取与导入)

一、Git上获取xlua 最新的xlua包,下载地址链接:https://github.com/Tencent/xLua 二、Unity添加xlua 解压xlua压缩包后,将xlua里的Assets里的文件直接复制进Unity的Assets文件夹下。 成功导入后,unity工具栏会出现xlua选项。 …

到底该用英文括号还是中文括号?

这篇博客写的还挺详细的,不错。

TCP/IP协议族

基于这张图片的一篇blog TCP/IP模型通常被分为四个层次:应用层、传输层、网络层和网络接口层。在这个模型中,不同的网络协议负责完成不同的任务,以确保数据可以在网络中高效、可靠地传输。以下是对这张图中每个协议的解释: 应用层…

Tensorflow2.0笔记 - AutoEncoder做FashionMnist数据集训练

本笔记记录自编码器做FashionMnist数据集训练,关于autoencoder的原理,请自行百度。 import os import time import tensorflow as tf from tensorflow import keras from tensorflow.keras import datasets, layers, optimizers, Sequential, metrics, …

Nature子刊 | 首个 双语脑机接口设备能解码西班牙语和英语单词

大脑植入装置首次帮助一名无法用语言表达的双语人士用两种语言进行交流。与大脑植入体相连的AI系统可以实时解码该人试图用西班牙语或英语表达的意思。 这项研究结果发表在5月20日的《Nature Biomedical Engineering》杂志上,让人们深入了解了我们的大脑是如何处理语…

使用printf的两种方法,解决printf不能使用的问题

使用printf的两种方法,解决printf不能使用的问题 一、微库法 我们使用printf前要加上重定向fputc //重定义fputc函数 int fputc(int ch, FILE *f) { while((USART1->SR&0X40)0);//循环发送,直到发送完毕 USART1->DR (uint8_t) ch; return…

结构型设计模式之装饰模式

文章目录 概述装饰模式原理代码案例小结 概述 装饰模式(decorator pattern) 的原始定义是:动态的给一个对象添加一些额外的职责. 就扩展功能而言,装饰器模式提供了一种比使用子类更加灵活的替代方案。 装饰模式原理 装饰模式中的角色: 抽象构件角色 …

高精度定位平板主要应用在哪些领域

高精度定位平板是一种集成了高精度定位技术和强大计算能力的设备,能够提供亚米级甚至厘米级的定位精度。其应用领域广泛,涵盖测绘、精准农业、工程建设、地理信息系统(GIS)、公共安全等多个方面。这种设备凭借其高精度和耐用性&am…

设置MySQL like查询时不区分大小写

背景介绍 MySQL like查看结果出现了区分大小写的情况,实际需求是查询的时候不去区分大小写! 原因 MySQL的LIKE查询默认情况下是不区分大小写的。如果LIKE查询是区分大小写的,是因为列使用了区分大小写的字符集或校对规则。 解决办法 在l…

2024年上半年系统架构设计师真题(部分考场回忆版)

一、综合知识 1.常见的ADL语言,四个中选三个 2.EAI的四个层次从低到高依次是 3.反规范化设计属于数据设计的那个阶段 A.需求分析 B.概念设计 C.逻辑设计 D.物理设计 4.嵌入式往往具有实时特征,其典型架构 5.交换机位于OSI七层模型的那一层 6.常见…

肮脏至极的处事技巧,看懂少走十年弯路

处世技巧,也是肮脏至极的处事技巧,看懂少走十年弯路。有用的!!! 1、手机响5秒再接。 2、永远提前15分钟。 3、坐领导的车,不要玩手机,只坐在副驾驶,不坐后排。 4、朋友给你介绍了…

深入探讨 Java 8 集合操作:全面解析 Stream API 的强大功能

深入探讨 Java 8 集合操作:全面解析 Stream API 的强大功能 Java 8 引入的 Stream API 使得集合操作更加简洁和高效。本文通过详细示例,展示如何利用 Stream API 进行各种集合操作,包括遍历、转换、过滤、排序、分组、去重等。 1. 遍历集合…

Spring MVC+mybatis项目入门:旅游网(四)用户注册——mybatis的配置与使用以及Spring MVC重定向

个人博客:Spring MVCmybatis项目入门:旅游网(四)用户注册2-持久化 | iwtss blog 先看这个! 这是18年的文章,回收站里恢复的,现阶段看基本是没有参考意义的,技术老旧脱离时代(2024年…

使用STM32F103标准库实现自定义键盘

使用STM32F103标准库实现自定义键盘 在嵌入式系统中,自定义键盘的实现是一个经典的项目,能够帮助我们深入理解GPIO配置、按键扫描和中断处理等知识。本文将详细介绍如何使用STM32F103标准库来实现一个简单的自定义键盘。 1. 准备工作 1.1 硬件准备 S…

springboot相关知识集锦----1

一、springboot是什么? springboot是一个用于构建基于spring框架的独立应用程序的框架。它采用自动配置的原则,以减少开发人员在搭建应用方面的时间和精力。同时提升系统的可维护性和可扩展性。 二、springboot的优点 约定优于配置 版本锁定&#xf…

嵌入式0基础开始学习 ⅠC语言(9)小结补充

这一章呢,来讲一些之前没讲到过的一些点 1.作用域 什么是作用域? 一个东西(对象)起作用的范围。 变量的作用域 函数的作用域 类型的作用域 一个c语言工…

C#【进阶】特殊语法

特殊语法、值和引用类型 特殊语法 文章目录 特殊语法1、var隐式类型2、设置对象初始值3、设置集合初始值4、匿名类型5、可空类型6、空合并操作符7、内插字符串8、单句逻辑简略写法 值和引用类型1、判断值和引用类型2、语句块3、变量的生命周期4、结构体中的值和引用5、类中的值…

Hive 常用指标分析

常用指标分析 用户留存率路径分析7日品牌复购率7天内连续三天登录每分钟在线人数 1. 用户留存率 在使用 Hive 统计用户留存率时,我们通常会涉及到两个主要日期:用户注册日期和用户在后续某天的活跃日期。留存率通常是指用户在注册后的某一天仍然活跃的…