signature=a7ab3f52fd3143e911ffec68c5ce32d7,2019年强网杯crypto部分题解

news/2025/2/13 2:54:26/

一 、random study

这个题目中共给出了三个challenge。

1. challenge 1

服务器将python中的random模块的种子设置为int(time()),然后生成随机数让我们猜,只要我们猜对一次就可以通关了。

题目中给了200次机会,应该是考虑到服务器与我们机器的时间不同步的问题(可能相差几秒)。我这里假定服务器时间与本地时间相差不超过10秒,然后对这20种情况进行枚举就好了。相应代码如下:

2.challenge 2

服务器自己调用了一个Java程序生成了三个随机数,然后将前两个告诉我们,让我们猜第三个。

用Java Decompiler对提供的Java程序进行反编译得到源码如下:

public class Main {

public static void main(String[] paramArrayOfString) {

Random random = new Random();

System.out.println(random.nextInt());

System.out.println(random.nextInt());

System.out.println(random.nextInt());

}

}

可以看出这个Java程序是使用了Random类的nextInt函数来生成随机数的。百度一下这个类,可以查到官方文档。从官方文档中可以知道:

Random的nextInt函数就是直接调用next(32)并将得到的值返回。

next(int n)会通过以下方式更新内部存储的seed值,并返回下一个随机数。

//seed乘一个数&#


http://www.ppmy.cn/news/387893.html

相关文章

用matlab语言编写 e dx,matlab,如何用差分法求dy/dx

问题描述: matlab,如何用差分法求dy/dx 用差分法(可以是向后差分法,也可以是向前差分法,或是中心差分法)来求dy/dx?有好的答案的话追加50分!原始数据如下,第一列是X,第二列是Y. 0.1000E+01 0.8379E+01 0.2000E+01 0.1319E+02 0.3000E+01 0.1749E+02 0.4000E+01 0.2224E+02 0.…

TransE算法原理与代码解析(2021-06-22)

TransE算法原理与案例 jiayalu 2019-09-04 17:42:53 4596 收藏 37 分类专栏: 算法模型 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.n…

【UE 从零开始制作坦克】1-控制坦克视角

UE版本:4.26 效果 步骤 1. 在虚幻商城中下载如下资产导入到工程中 导入成功后可以在工程中看到如下文件夹 2. 接下来开始制作一下控制坦克视角的逻辑 首先在项目设置中添加轴映射 新建一个蓝图,父类为“WheelVehicle(轮式载具)” 这里就命名为“TankZ…

企业微信H5在微信开发者工具中调试:

1. 给开发者添加企业微信管理员 2. 开发者--网页登录企业微信官网,找到"我的企业"下"微信插件",勾选"开发者工具"。 3. 顺利进行开发吧

微信聊天代码汇总

今天给大家带来的是微信一些不错的代码汇总: 1.发送 ຂ້ອຍຮັກເຈົ້າ (翻译:我爱你) 2.发送 Mm tě rd (翻译:我喜欢你) 3.发送 Voc meu beb (翻译:你是我的宝…

微信小程序三级分类

今天,在做一个电商小程序的分类页面,要实现三级分类。首先,先上图。 要完成这样一个功能,前端的界面就不说了,具体说说怎么实现的吧,说复杂也挺复杂的,说简单只要会了思路就不难了。其实思路就…

微信小程序文件大小限制

项目场景: 今天接着学习微信小程序,因为导入到项目的图片稍微多了一点,导致微信小程序无法编译,弹出以下错误。 经查找原因后才发现,原来微信小程序对每个小程序有大小限制,最多2M,进行分包后最…

微信昵称如何设置特效

今天教大家一种超好玩的方法,给自己微信昵称设置一个特效昵称。 可以在我们昵称的位置,直接展现网络信号的标识。 无论是现在正在用的 4G,5G,还是 2G,3G都可以随意添加展示。 设置好之后还蛮好看的! 下面…