时间从来不语,却回答了很多问题


post @ 2021-06-29

加了个tkinter模块,本来打算做课设,还是失败了……

串口通信serial模块,python自带

Serial_One下载

阅读此文


post @ 2021-06-23

在局域网内或者二者互有公网ip时可用….只能聊天

python唠嗑程序下载

使用方法

点击‘start.bat’启动程序

将会弹出两个窗口,一个为发送信息窗口,一个为接收信息窗口。

在接收信息窗口中,将会显示本机IP,并要求输入接收端口。
设置一个接收端口(需未被占用)

在发送信息窗口中,将要求用户输入对方IP地址。
对方提前告知IP地址后,设置对方IP地址,并要求用户输入对方接收端口。
设置对方接收端口号后,即可开始发送信息。

阅读此文


post @ 2021-06-19

flare 5.30

作为一个网页,在脚本里对输入进行处理并与flag编码结果比对,如下:

1
2
3
4
5
6
7
8
9
10
11
<script type="text/javascript">
document.getElementById("prompt").onclick = function () {
var flag = document.getElementById("flag").value;
var rotFlag = flag.replace(/[a-zA-Z]/g, function(c){return String.fromCharCode((c <= "Z" ? 90 : 122) >= (c = c.charCodeAt(0) + 13) ? c : c - 26);});
if ("PyvragFvqrYbtvafNerRnfl@syner-ba.pbz" == rotFlag) {
alert("Correct flag!");
} else {
alert("Incorrect flag, rot again");
}
}
</script>

重点之一是flag.replace的第一个参数:正则表达式。不难看出是提取出大小写字母。对于非大小写字母则不进行处理。

处理过程是:

1
String.fromCharCode((c <= "Z" ? 90 : 122) >= (c = c.charCodeAt(0) + 13) ? c : c - 26);

了解js特定的语法后,编写脚本:

阅读此文


yafu 用于自动整数因式分解,在 RSA 中,当 p、q 的取值差异过大或过于相近的时候,使用 yafu 可以快速的把 n 值分解出 p、q 值,原理是使用 Fermat 方法与 Pollard rho 方法等。

如果 p 与 q 相差较大(小),使用 yafu 可以很快分解出来。如果 n 较大,且经过几轮分解都没有得出结果,对于 ctf 题目来说,应该有其他解法。

安装

yafu 基本覆盖全平台。反正功能一样,选择最简便安装方法–Windows 下安装。

打开下载地址,下载后解压即可使用。解压后有两个版本,根据自己系统位数选择(下文使用 x64 版本)。

使用

  1. 使用 cmd 进入到 yafu 所在目录下,或将目录加入到系统环境 PATH 变量,或打开目录文件夹后 shift + 右键 选择在此处打开 powershell 。
  2. 假如要分解因数 6 ,输入命令:.\yafu-x64.exe "factor(6)"
  3. 如果因数过长,将 因数 用文本文件存放在 yafu 目录下,例如:data.txt 。文件最后一行一定要换行,否则 eof; done processing batchfile。运行命令:.\yafu-x64.exe "factor(@)" -batchfile data.txt
阅读此文


三次实验报告:

Download

用74LS138译码器设计全加器电路:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY decoder3_8 IS
PORT (i:in std_logic_vector(2 downto 0);
y:out std_logic_vector(7 downto 0));
END decoder3_8;

ARCHITECTURE func OF decoder3_8 IS
begin
process(i)
begin
y<="11111111";
case i is
when "000"=>y(0)<='0';
when "001"=>y(1)<='0';
when "010"=>y(2)<='0';
when "011"=>y(3)<='0';
when "100"=>y(4)<='0';
when "101"=>y(5)<='0';
when "110"=>y(6)<='0';
when "111"=>y(7)<='0';
when others=>y<="11111111";
end case;
end process;
end architecture;
1
2
3
4
5
6
7
8
9
10
11
12
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY nand_2 IS
PORT (a,b,c,d:in std_logic;
out_y:out std_logic);
end nand_2;

architecture Dataflow of nand_2 IS
begin
out_y<=(not a or not b or not c or not d);
end Dataflow;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY fulladder IS
PORT (a,b,ci:IN STD_LOGIC;
s,co:OUT STD_LOGIC);
END fulladder;

ARCHITECTURE Structural OF fulladder IS
COMPONENT decoder3_8
PORT(i:in std_logic_vector(2 downto 0);
y:out std_logic_vector(7 downto 0));
END COMPONENT;

COMPONENT nand_2
PORT (a,b,c,d:in std_logic;
out_y:out std_logic);
END COMPONENT;
SIGNAL zl,xl,cl,vl,bl,nl,ml:STD_LOGIC;

BEGIN
U1:decoder3_8 PORT MAP (i(0)=>a,i(1)=>b,i(2)=>ci,
y(1)=>zl,y(2)=>xl,y(4)=>cl,y(7)=>vl,y(3)=>bl,y(5)=>nl,y(6)=>ml);
U2:nand_2 PORT MAP(a=>zl,b=>xl,c=>cl,d=>vl,
out_y=>s);
U3:nand_2 PORT MAP(a=>bl,b=>nl,c=>ml,d=>vl,
out_y=>co);
END Structural;
阅读此文


post @ 2021-05-18
阅读此文


post @ 2021-05-07

npp.7.9.5.Installer下载

编译运行C命令:

cmd /k gcc $(CURRENT_DIRECTORY)\$(FILE_NAME) -o $(CURRENT_DIRECTORY)\$(NAME_PART).exe & $(CURRENT_DIRECTORY)\$(NAME_PART).exe & PAUSE & EXIT

阅读此文


post @ 2021-03-26

UPX

下载解压后是可执行文件

拖入IDA,只有两个函数,查看伪代码出现错误

拖入侦壳工具,提示UPX壳

阅读此文


post @ 2021-03-26

Python 3 基本数据类型

Python中的变量不需要声明。每个变量必须赋值后才会被创建和使用。

在Python中,变量就是变量而没有类型,我们所指的“类型”是指变量在内存中所指的对象的类型。

(变量名) = (变量要赋的值)

1
2
3
4
5
6
7
8
9
#!/usr/bin/python3

counter = 100 # 整型变量
miles = 1000.0 # 浮点型变量
name = "runoob" # 字符串

print (counter)
print (miles)
print (name)

结果:

1
2
3
100
1000.0
runoob
阅读此文


post @ 2021-03-23

注释

Python中单行注释以 # 开头,实例如下:

1
2
3
4
#!/usr/bin/python3

# 第一个注释
print ("Hello, Python!") # 第二个注释

多行注释可以用多个 # 号,还有 ‘’’ 和 **”””**:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/python3

# 第一个注释
# 第二个注释

'''
第三注释
第四注释
'''

"""
第五注释
第六注释
"""

行与缩进

python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。

阅读此文
⬆︎TOP