CTF&密码学与社会工程
了解密码学和社会工程攻击和网络情报,以及夺旗。
1,133个主题在此版块
-
- 0 篇回复
- 111 次查看
方法一 安装anaconda3,版本选择新的就行 打开anaconda prompt创建虚拟环境conda create -n pytorch_gpu python=3.9,pytorch_gpu是环境名称,可自行选取,python=3.9是选择的python版本,可自行选择,conda会自动下载选择的python版本 接下来去pytorch官网 https://pytorch.org/get-started/locally/ 直接选择最新的cuda安装,把conda命令复制到环境下执行即可 安装结束执行torch.cuda.available()返回true则成功 (这个方法最简单但可能会不行,我自己环境下是没问题的,尽管的我的显卡驱动版本不支持cuda的高版本,但是也可以,不行换第二个方法) 方法二 安装anaconda3,版本选择新的就行 打开anaconda prompt创建虚拟环境conda create -n pytorch_gpu python=3.9,pytorch_gpu是环境名称,可自行选取,python=3.9是选择的python版本,可自行选择,conda会自动下载选择的python版本 打开cmd按照下图输入查看显卡驱动版本 查看显卡驱动版本与cuda兼容版本 (链接:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html ) 选择合适的cuda版本,比如我这里驱动版本为457,那么可以选择任何比457小的cuda版本。(我…
HACK1949的最后回复, -
- 0 篇回复
- 110 次查看
教程:如何使用 Python 创建单页报告? 这篇小文章旨在指导您使用 Python 创建单页报告。它们是一种文件,旨在总结特定公司在一组质量指标中的表现。您可以轻松地通过电子邮件将它们作为自动化任务发送。 我将通过一个服装品牌的例子来说明如何利用这种小而有力的报告。该公司在巴西境内拥有众多商店。我们被要求向他们各自的经理提交一份关于商店销售业绩的单页报告。 已定义供应商一年中的每一天都需要追求以下统计数据: 收入超过 1000.00 雷亚尔 销售至少 4 种不同的产品 平均赚取超过 500.00 雷亚尔的机票 数据导入 加载有关品牌商店和销售数据的一般信息。 “stores_data”数据帧。 “销售”数据框 计算性能指标 如果您已经对 pandas 有一定程度的经验,您可以使用 通过...分组 命令。 报表构建 要构建的单页报告只不过是一个 HTML 可自定义的表格。它将被放置在要发送给经理的电子邮件文本中。 表格的最终外观及其电子邮件信息如下所示: 在前两段中,显示了经理的姓名和报告提及的日期;保持我们的交流尽可能自然是很重要的。 关于表格本身,我们只需要使用 Python 的格式化字符串的能力。请注意,“获得的价值”和“指标状态”列都可以根据商店在给定日期获得的数字进行自定义。 但在构建表结构之前,我们应该获取填充它的值。 现在我们已经完成了报表的数据提取过程,我们终于可以生成表格了。 如果您从未制作过 HTML 表格,则tag 代表一行,并且它的细胞之一。指标题的标签之一。 这里…
HACK1949的最后回复, -
- 0 篇回复
- 114 次查看
作业信息 |2020-2021-1信息安全专业导论|https://edu.cnblogs.com/campus/besti/2020-2021-1fois |2020-2021-1信息安全专业导论第三周作业|第三周作业(必学,选做) - 作业 - 2021-2022-1信息安全专业导论 - 班级博客 - 博客园 (cnblogs.com) 作业目标: 计算机科学概论第2章,第3章 并完成云班课测试 《看漫画学Python》第2,3章并完成云班课测试 教材学习内容总结 1、学习了二进制、八进制、十进制、十六进制的计算和转化,二进制与八进制采用“三合一”转化,即三位二进制数按权展开 为一位八进制数,二进制与十六进制数采用“四合一”转化法,即四位二进制数按权展开得到一位十六进制数。 例如:二进制→八进制 010=0+12^1+0=2 二进制→十六进制 0010=12^1=2 学习了数据表示方法 2 、看漫画学python内容生动有趣,让我以轻快的节奏学习了python的基础知识和关键词,以及python中的数据类型。 浏览计算机科学概论第二三章后,我明白了整数、复数、布尔、浮点等数字类型,明白了其运作规律,以及各种类 型如何相互转化。 教材学习中的问题和解决过程: 无 代码调试中的问题和解决过程: 问题1:在cmd中运行hello.py引用模块x=world.py后显示world无.py修饰的文件。 解决办法:原因未知,但将world.py文件重命名为world后能够成功运行。 问题2:cmd无法打开he…
HACK1949的最后回复, -
- 0 篇回复
- 143 次查看
精简版: 传值:被调函数局部变量改变不会影响主调函数局部变量 传址:被调函数局部变量改变会影响主调函数局部变量 Python参数传递方式:传递对象引用(传值和传址的混合方式),如果是数字,字符串,元组则传值;如果是列表,字典则传址; copy使用场景:列表或字典,且内部元素为数字,字符串或元组 deepcopy使用场景:列表或字典,且内部元素包含列表或字典 完整版: 1.传值和传址的区别 传值就是传入一个参数的值,传址就是传入一个参数的地址,也就是内存的地址(相当于指针)。他们的区别是如果函数里面对传入的参数重新赋值,函数外的全局变量是否相应改变,用传值传入的参数是不会改变的,用传址传入就会改变。 1 a=1 2 def f(b): 3 b=2 4 f(a) 5 print a 例如这段代码里面,首先声明a的值为1,把a作为参数传入到函数f里面,函数f里面对b重新赋值为2,如果是传值的形式传入a的话,a的值是不会变的,依然为1,如果以传址的形式(但是这个不是程序员能决定的)传入a,a就会变成2。这个就是传值和传址的区别。 2. Python中的传址和传值是怎样的呢? Python是不允许程序员选择采用传值还是传址的。Python参数传递采用的肯定是“传对象引用”的方式。实际上,这种方式相当于传值和传址的一种综合。 如果函数收到的是一个可变对象(比如字典或者列表)的引用,就能修改对象的原始值——相当于传址。如果函数收到的是一个不可变对象(比如数字、字符或者元组)的引用(其实也是对象地址!!!),就不…
HACK1949的最后回复, -
- 0 篇回复
- 102 次查看
实验1:SDN拓扑实践 一、实验目的 能够使用源码安装Mininet; 能够使用Mininet的可视化工具生成拓扑; 能够使用Mininet的命令行生成特定拓扑; 能够使用Mininet交互界面管理SDN拓扑; 能够使用Python脚本构建SDN拓扑。 二、实验环境 Ubuntu 20.04 Desktop amd64 三、实验要求 (一)基本要求 1.mininet运行截图 2.2的执行结果截图 a) 3台交换机,每个交换机连接1台主机,3台交换机连接成一条线。 b) 3台主机,每个主机都连接到同1台交换机上。 在2b)的基础上,在Mininet交互界面上新增1台主机并且连接到交换机上,再测试新拓扑的连通性。 3修改过的“学号.py”代码、Mininet运行结果 (二)进阶要求 032002109——fattree.py代码 执行结果截图 四、个人总结 本次实验的内容相对来说比较简单,过程也相对比较顺利,比起刚开始安装环境要顺利太多了。本次做的网络拓扑让我对于mininet更为熟悉,同时也对于python的妙用的理解更多,之前学python主要是为了学习深度学习,但是现在发现python在各方面的工作中都很好用。本次实验过程中,我遇到的困难不多,大体为以下两点: 在刚开始的时候一直打不开mininet可视化工具,是python的版本问题,后来根据某个博客的方法一试,反而出了更多的麻烦,后来找了很多篇博客才解决。 还有在基础要求的第三步新增主机到交换机后发现有一半的报文没接收而丢失,虽然这个实验没要…
HACK1949的最后回复, -
- 0 篇回复
- 104 次查看
python安装包 镜像网站 https://registry.npmmirror.com/binary.html?path=python/ 镜像包安装 pip install xxx -i https://pypi.tuna.tsinghua.edu.cn/simple 镜像安装:pip install jupyter -i https://pypi.tuna.tsinghua.edu.cn/simple pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple 更新pip version python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple 查看已安装组件:python -m pip list pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple jupyter notebook启动命令:jupyter notebook 启动成功 sublime安装 CTRL+B 运行 python pandas安装 pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib安装 pip install matplotlib -i https://pypi.tuna.tsinghua.e…
HACK1949的最后回复, -
- 0 篇回复
- 125 次查看
json的key只能是字符串,python的dict可以是任何可hash对象(hashtable type); json的key可以是有序、重复的;dict的key不可以重复。 json的value只能是字符串、浮点数、布尔值或者null,或者它们构成的数组或者对象。 json任意key存在默认值undefined,dict默认没有默认值; json访问方式可以是[],也可以是.,遍历方式分in、of;dict的value仅可以下标访问。 json的字符串强制双引号,dict字符串可以单引号、双引号; dict可以嵌套tuple,json里只有数组。 json:true、false、null python:True、False、None json中文必须是unicode编码,如"\u6211". json的类型是字符串,字典的类型是字典。
HACK1949的最后回复, -
- 0 篇回复
- 103 次查看
(一)基本要求 使用Mininet可视化工具,生成下图所示的拓扑,并保存拓扑文件名为学号.py。 使用Mininet的命令行生成如下拓扑: a) 3台交换机,每个交换机连接1台主机,3台交换机连接成一条线。 b) 3台主机,每个主机都连接到同1台交换机上。 在2 b)的基础上,在Mininet交互界面上新增1台主机并且连接到交换机上,再测试新拓扑的连通性。 编辑(一)中第1步保存的Python脚本,添加如下网络性能限制,生成拓扑: a) h1的cpu最高不超过50%; b) h1和s1之间的链路带宽为10,延迟为5ms,最大队列大小为1000,损耗率50。 (二)进阶要求 编写Python脚本,生成如下数据中心网络拓扑,要求: 编写.py拓扑文件,命名为“学号_fattree.py”; 必须通过Mininet的custom参数载入上述文件,不得直接使用miniedit.py生成的.py文件; 设备名称必须和下图一致; 使用Python的循环功能实现,不得在代码中手工直接添加设备和链路。 个人总结 实验中,我在实现部分实验要求时遇到一些困难。在“在2 b)的基础上,在Mininet交互界面上新增1台主机并且连接到交换机上,再测试新拓扑的连通性”这一题,我用pingall命令测试主机的连通性时,新增的主机无法与其他主机连通。在参考了其他同学的作业后,发现需要为交换机…
HACK1949的最后回复, -
- 0 篇回复
- 109 次查看
sever: import socket #导入socket模块 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) host = '127.0.0.1' #设置本地主机 port = 20000 #设置端口 sock.bind((host,port)) #绑定端口 sock.listen(6) #开始监听,等待客户连接;设置允许排队等待链接的数量 conn,addr = sock.accept() #建立客户连接 print("收到了一个客户端请求,链接地址:" + addr[0]) while True: data = conn.recv(1024).decode("utf-8") print("服务端收到了:"+data) if data == 'close': print("链接已关闭") break else: print("-----*****-----") conn.send("服务端已接收...".encode()) conn.close() client import socket #导入socket 模块 c = socket.socket() #创建socket对象 host = '127.0.0.1' #设置本地主机 por…
HACK1949的最后回复, -
- 0 篇回复
- 101 次查看
基本要求 1.使用Mininet可视化工具,生成下图所示的拓扑,并保存拓扑文件名为学号.py。 2.使用Mininet的命令行生成如下拓扑: 3台交换机,每个交换机连接1台主机,3台交换机连接成一条线。 3台主机,每个主机都连接到同1台交换机上。 3.在2 b)的基础上,在Mininet交互界面上新增1台主机并且连接到交换机上,再测试新拓扑的连通性。 4.编辑(一)中第1步保存的Python脚本,添加如下网络性能限制,生成拓扑: 进阶要求 个人总结 实验过程基本都跟着教程走,没遇到什么报错和问题,只有在进阶要求中由于不会python导致编程较慢。通过学习对网络拓扑结构有了更深的认识,也了解了点python的基础语法,收获蛮多
HACK1949的最后回复, -
- 0 篇回复
- 103 次查看
实例1 height = 1.65 print("你的身高:"+str(height)) weight = 45.5 print("你的体重:"+str(weight)) bmi=weight/(height*height) print("你的BMI指数为:"+str(bmi)) #判断身材是否合理 if bmi<18.5: print("你的体重过轻 ~@_@~") if bmi>=18.5 and bmi<24.5: print("正常范围,注意保持(-_-)") if bmi>=24.9 and bmi<29.9: print("你的体重过重 ~@_@~") if bmi>=29.9: print("肥胖 ^@_@^") 实例2 print( '''学编程,你不是一个人在战斗 | __\--__|_ II=======00000[/ ▲007 | _____\______|/-----. /___mingrisoft.com___| \◎◎◎◎◎◎◎◎◎○/ ~~~~~~~~~~~~~~~~~~''') 实例三 money_all=56.7+72.91…
HACK1949的最后回复, -
- 0 篇回复
- 102 次查看
方法keys():只返回键列表 方法values():只返回字典值列表 集合set():元素不重复 嵌套:字典列表; input()输入的是字符串; 使用标志或break中断while; continue的使用; 函数设置默认值时,必须先列出没有默认值的形参,再列出有默认值的形参; 函数对列表的处理是永久性的;使用切片传入列表副本; 任意数量形参必须放在非默认值形参的后面;*空元组,**空字典
HACK1949的最后回复, -
- 0 篇回复
- 98 次查看
当我把想往软件开发方向发展的想法告诉当时的老板的时候,记得他给我的回答是非常积极的。细解我记不清的,但是他说的几个要点我还记得。一是,我在AE岗位工作了很久了,他能够理解我对职业发展的需求。二是,公司原则上鼓励员工发展,并且有类似的政策允许员工短期尝试不同的岗位,期限一般是半年或者一年。但是自从有这个政策起,从来没有过实例,因此他也希望我能够成功给这个政策树立一个样本。并且,他不希望"teach swimming by throwing you into the water",所以他会找软件开发经理谈这件事。 这是一个好的开始,比我想象中的还要顺利。我有点期待,离开现在的岗位,有一整年的时间来体验做软件开发工程师了。又过了一些天,有回复了,软件开发经理也支持这件事。所以看起来剩下的只是,制定一个开始的日期,然后让我交接一些工作就可以开始了。但是,我想的也过于简单了,实际上这之后过了好些天,什么事情也没有发生。终于我忍不住找老板问这件事的进展。他说我可以“work shadow”,建议我自己和GUI开发组的马丁交流一下。 我们公司的产品是CAE软件,包括机械类的仿真软件和CFD仿真软件,因此产品开发部门也分了几个小组,机械和CFD分别有Solver开发组,然后有一个大家公用的GUI开发组。Martin是一个胖胖的老头,干了好多年模型前处理系统的开发,而且他也擅长声学仿真,我从前和他见过面,也打过不少交道,他是一个容易相处的人。我直接在Teams上给他发消息,邀请聊一下。该谈话比较重要的部分大体是这样的。 我:“我…
HACK1949的最后回复, -
- 0 篇回复
- 98 次查看
一、实验目的 能够使用源码安装Mininet; 能够使用Mininet的可视化工具生成拓扑; 能够使用Mininet的命令行生成特定拓扑; 能够使用Mininet交互界面管理SDN拓扑; 能够使用Python脚本构建SDN拓扑。 二、实验环境 Ubuntu 20.04 Desktop amd64 三、实验要求 (一)基本要求 1.使用Mininet可视化工具,生成下图所示的拓扑,并保存拓扑文件名为学号.py 2.使用Mininet的命令行生成如下拓扑: a) 3台交换机,每个交换机连接1台主机,3台交换机连接成一条线。 b) 3台主机,每个主机都连接到同1台交换机上。 3.在2 b)的基础上,在Mininet交互界面上新增1台主机并且连接到交换机上,再测试新拓扑的连通性。 4.编辑(一)中第1步保存的Python脚本,添加如下网络性能限制,生成拓扑: a) h1的cpu最高不超过50%; b) h1和s1之间的链路带宽为10,延迟为5ms,最大队列大小为1000,损耗率50。 (二)进阶要求 编写Python脚本,生成如下数据中心网络拓扑,要求: 编写.py拓扑文件,命名为“学号_fattree.py”; 必须通过Mininet的custom参数载入上述文件,不得直接使用miniedit.py生成的.py文件; 设备名称必须和下图一致; 使用Python的循环功能实现,不得在代码中手工直接添加设备和链路。 代码: 运行结果: 四、个人总结 本次实验难度对我来说中等难度…
HACK1949的最后回复, -
- 0 篇回复
- 110 次查看
实验要求 (一)基本要求 1.使用Mininet可视化工具,生成下图所示的拓扑,并保存拓扑文件名为学号.py。 2.使用Mininet的命令行生成如下拓扑: a) 3台交换机,每个交换机连接1台主机,3台交换机连接成一条线。 b) 3台主机,每个主机都连接到同1台交换机上。 3.在2 b)的基础上,在Mininet交互界面上新增1台主机并且连接到交换机上,再测试新拓扑的连通性。 4.编辑(一)中第1步保存的Python脚本,添加如下网络性能限制,生成拓扑: a) h1的cpu最高不超过50%; b) h1和s1之间的链路带宽为10,延迟为5ms,最大队列大小为1000,损耗率50。 进阶要求 032002408_fattree.py 个人总结 1.在实验第一步建立可视化拓扑时,在一切步骤完成后,run时:出现了“minient must run as root”的错误,最后明白了但当出现这种错误时,可以先执行“sudo su”,再执行以前的指令就行了 2.本次实验多我来说在python代码的部分有点困难,有些难懂,但其余的步骤按照实验指导书发指示一步步做下来,就不是太难了 3.本次实验让我明白了python的重要性(CIL模式下所使用的为python指令),督促了我今后应该更加的重视python,今后应该学习更多关于它的知识 4.本次实验还学会了在交互界面的SDN拓扑,如:增加主机,交换机,链路 5.在第一次遇见python文件时,它是只读文件,所以要更改权限,这时就要使用“sudo chmod …
HACK1949的最后回复, -
- 0 篇回复
- 308 次查看
1.异常处理信息 在 Python 中,把程序运行时产生错误的情况叫做异常。 1.1 基础简单回顾 异常类型: ''' 常见异常。 ''' AssertionError # 断言语句失败(assert 后的条件为假) NotImplementedError # 方法未实现,作为抽象的方法,不被重写则有异常; AttributeError # 访问的对象属性不存在 ImportError # 无法导入模块或者对象,主要是路径有误或名称错误,导入本地配置的时候使用 IndentationError # 代码没有正确对齐,主要是缩进错误 IndexError # 下标索引超出序列范围 IOError # 输入/输出异常,主要是无法打开文件 KeyError # 访问字典里不存在的键 NameError # 访问一个未声明的变量 OverflowError # 数值运算超出最大限制 SyntaxError # python语法错误 TabError # Tab和空格混用 TypeError # 不同类型数据之间的无效操作(传入对象类型与要求的不符合) ValueError # 传入无效的值,即使值的类型是正确的 ZeroDivisionError # 除法运算中除数0 或者 取模运算中模数为0 MemoryError # 内存溢出错误(对于Pytho…
HACK1949的最后回复, -
- 0 篇回复
- 102 次查看
https://zhuanlan.zhihu.com/p/508700685 import abc #利用abc模块实现抽象类 class shuiguo(metaclass=abc.ABCMeta): all_type='sg' @abc.abstractmethod #定义抽象方法,无需实现功能 def name(self): pass @abc.abstractmethod #定义抽象方法,无需实现功能 def func(self): pass class Apple(shuiguo): #子类继承抽象类,可是必须定义read和write方法 def name(self): print('我是苹果') def func(self): print('好吃') class Pear(shuiguo): #子类继承抽象类,可是必须定义read和write方法 def name(self): print('我是梨子') def func(self): print('yunfeizhike') apple =Apple() pear=Pear() apple.func() pear.name() print(pear.all_type) print(apple.all_type)
HACK1949的最后回复, -
- 0 篇回复
- 88 次查看
一、创建job 在Dashboard中新建job: 输入任务名: 下面可以选择其中的一种用来构建项目比如第一个自由风格的软件项目。 二、项目配置 当选择第一个自由风格构建项目后,构建项目分成下面几部分: General 源码管理 构建触发器 构建环境 构建 构建后操作 1、General 包含很多项目的基本信息,比如项目描述等,那么常用的如丢弃旧的构建就是随着构建项目的增多,可以适当的丢弃掉过时的构建,有两种策略: 保持构建的天数 保持构建的最大个数 2、源码管理 源码一般是从git仓库拉取,所以需要完成以下 创建凭证(如:gitlab的账号密码) 仓库地址 指定分支 jenkins服务器上安装git 如果没有凭证就添加一个全局的凭证,注意写上描述,后期可能有很多,以便于区分;对于指定分支,默认是master,修改为指定分支;另外就是jenkins服务器上需要安装git,因为是通过git clone的方式同步源码。 3、构建触发器 当第二步完成后我们可以进行手动构建,这样就会拉取代码,但是这样需要人工干预,那么如何实现自动化呢?此时需要构建触发器,也就是何时执行这个任务,它的方式也有很多: 触发远程构建 (例如,使用脚本) 其他工程构建后触发 定时构建 GitHub hook trigger for GITScm polling 轮询 SCM 比如采用定时构建,通过日程表的方式:分、时、日、月、周 # 每天的12点47分执行这个任务的构建 47 12 * * * 但是需要注意的是容器…
HACK1949的最后回复, -
- 0 篇回复
- 98 次查看
1. 输入与输出 例1: 2. 下标与切片 切片: 3. 字符串常用函数 例子1 例子2 例子3 例子4 例子5 例子6 例子7 例子8
HACK1949的最后回复, -
- 0 篇回复
- 104 次查看
YAML是专门用来写配置文件的语言,远比JSON格式方便。 YAML语言的设计目标,就是方便人类读写。 YAML是一种比XML和JSON更轻的文件格式,也更简单更强大,它可以通过缩进来表示结构,是不是听起来就和Python很搭? 顾名思义,用语言编写的文件就可以称之为YAML文件。PyYaml是Python的一个专门针对YAML文件操作的模块,使用起来非常简单。 1.yaml文件格式简介 基本规则: 大小写敏感 使用缩进表示层级关系 缩进时不允许使用Tab键,只允许使用空格。 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可 使用#表示注释 字符串可以不用引号标注 yaml 支持的数据结构有三种: 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary) 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list) 纯量(scalars):单个的、不可再分的值。字符串、布尔值、整数、浮点数、Null、时间、日期 1.1 对象 user: admin pwd: 123 job: - teacher - nurese #输出 {'user': 'admin', 'pwd': 123, 'job': ['teacher', 'nurese']} 1.2 数组序列 - admin1: 123456 - admin2: 111111 - admin3: 222222 #输出: [{'admin1': 1…
HACK1949的最后回复,