Wireshark使用教程
介绍与说明大学上计算机网络的时候就学习了TCP的三次握手协议,当时我学的时候就觉得这些东西好虚啊,看不见摸不着,学的费心费力,结果却差强人意。最近因为要做TCP/IP的课设,老师要求要用wireshark,然后就接触到了这款开源软件Wireshark。通过了解知道这是一款非常流行的网络封包分析软件,功能十分强大,可以截取各种网络封包,显示网络封包的详细信息。有了wireshark就能截获这些网络数据包,可以清晰的看到数据包中的每一个字段。更能加深我们对网络协议的理解。(所以在这插一句话哦: 理论指导实践,实践加深理论)在过去,网络封包分析软件是非常昂贵的,或是专门属于盈利用的软件。wireshark的出现改变了这一切。在GNUGPL通用许可证的保障范围底下,使用者可以以免费的途径取得软件与其源代码,并拥有针对其源代码修改及客制化的权利。
Ethereal(wireshark的前身)是全世界最广泛的网络封包分析软件之一。为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发送封包。wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wi ...
时序图与类图
时序图:是什么它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。时序图是一个二维图,横轴表示对象,纵轴表示时间,消息在各对象之间横向传递,依照时间顺序纵向排列。
作用是什么1、展示对象之间交互的顺序。将交互行为建模为消息传递,通过描述消息是如何在对象间发送和接收的来动态展示对象之间的交互;
2、相对于其他UML图,时序图更强调交互的时间顺序;
3、可以直观的描述并发进程。
组成有哪些
角色(Actors)
对象(Object)
生命线(Lifetime)
消息(Message)
激活(Focus of Control)
组合片段
角色:通常指“人”,也可以是组织、机器、系统等等“抽象的人”,和用例图一样,用小人图表示
对象:就是与上述“人”对应的“物”了,包括所有产品、服务、设备等等抽象的物体
生命线:在时序图中表示为从对象图标向下延伸的一条虚线,表示对象存在的时间。
消息:消息一般分为
同步消息(Synchronous Message)
异步消息(Asynchronous Message)
返回消息(Return Message)
自关联消息:表示方法的自身调用或 ...
Java基础教程
一句话目标对于一些比较复杂或者第一眼看上去不太好理解的概念,我信奉的观念就是,用一句话把它解释清楚,而且是用很通俗的语言,当然了,如果你已经能够很好的理解了,还是建议用不是那么正式但又不是很通俗的语言解释。所以我接下来我会用一句话这个标签来解释这些难懂的概念。
C/C++与Java编译运行过程对比:数据溢出:byte是一个字节的数据类型,所以它的表示范围是-128~127当我们此范围之外的数赋值给byte类型变量时,会发生数据溢出,溢出的方式就是比127大的数要接着顺时针转,假如是128,比127大1,那就是移动一个数变成-128假如是129,比127大2,那就是移动两个数变成-127,这样以此类推;比-128小的数要接着逆时针,假如是-129,比-128小1,那就移动一个数变成127,假如是-130,比-128小2,那就是移动两个数变成126,其他数据类型也以此类推。
类与对象编程语言的几个发展阶段面向机器语言 ——》面向过程语言——》面向对象语言(二进制、汇编)——》C语言 ——》Java语言
在面向过程编程中我们是以“方法”为主体的而面向对象编程汇总 ...
什么是AOP(通俗易懂)
怎么通俗怎么来,什么是AOP 思想 呢?举个例子:就是有三个方法A,B,C,这三个逼都想找女朋友,那就来一个getGril()方法吧,然后在A,B,C中都调用一遍getGirl方法,这样A,B,C都顺利找到了女朋友。接着来了一位好兄弟D,他说凭什么要在我的方法内部调用getGirl呢?D坦露:我确实是想找女朋友的,我也确实是想调用她,可是我这方法体实在没有地方盛getGirl()了,何况爷的方法内部那都是主要业务,能不能跟getGril()方法说一声,在她那边记录一下,跟她说让她看着点,在我的方法内部中当我的rich()方法执行完了,就帮我调用一下getGirl()。getGirl()听完想了想觉得也合理,就在自己的“登记表”中标注了一下,大致意思就是在D执行完rich()方法后就帮他调用自己(大意就是等D有钱了就找女朋友,悲)。
我突然觉得解决问题的关键或许是:换个角度,换个立场。为什么这么说呢?你看我们以前调用方法那都是什么,都是在方法中写入要调用的方法名,就像上面举得例子一样,要在自己的方法体中调用getGirl方法,这样就让我们自己方法的内部显得很冗杂。打个比方:在没有用AOP ...
学习RPA+AI中遇到的python问题
如何获取百度API情感分析的token值和URL值?要调用百度API,就要获得权限,利用获取到的API Key 和Secret Key去获取Access Token获取地址:
1https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=API key&client_secret=Secret Key&
将对应位置进行修改:分别修改client_id=和client_secret=后面的值为自己的API Key 和Secret Key然后得到一个字符串页面:
12token = '24.6b3916470ce4b09e2c043c2337e8b98d.2592000.1638413715.282335-25083336' url = 'https://aip.baidubce.com/rpc/2.0/nlp/v1/sentiment_classify?charset=UTF-8&access_token={ ...
如何使用python做中文情感分析
这里我给大家推荐一个现成的轮子,百度提供的情感倾向分析API(搜索“百度AI开放平台”即可)。文章开始的集体情感变化曲线就是用这个实现的。
使用的方法也很简单,在官网注册之后,可以得到每月免费使用的10W次权限。python可以直接下载百度情感分析的调用模块。 安装方法:
1pip install baidu-aip
使用方法:创建一个python文件写入如下代码
12345678from aip import AipNlp""" 你的 APPID AK SK """APP_ID = '你的 App ID'API_KEY = '你的 Api Key'SECRET_KEY = '你的 Secret Key'client = AipNlp(APP_ID, API_KEY, SECRET_KEY)
这里的APP ID和APP KEY以及Secret Key要用自己的,先在百度智能云要先注册或者登陆一下,然后创建的应用例如:
接着写入:
12345text="非常 ...
公开密钥密码体制(C语言实现RSA加密算法)
公开密钥密码体制:公开密钥密码体制的产生主要是因为两个方面的原因,一是由于常规密钥密码体制的密钥分配问题,另一种是由于对和数字签名的需求。
传统的加密方法是加密、解密使用同样的密钥,由发送者和接收者分别保存,在加密和解密时使用,采用这种方法的主要问题是密钥的生成、注入、存储、管理、分发等很复杂,特别是随着用户的增加,密钥的需求量成倍增加。在网络通信中,大量密钥的分配是一个难以解决的问题。
1976年美国斯坦福大学的两名学者迪菲和赫尔曼提出了公开密钥密码体制的概念。所谓的公开密钥密码体制就是使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。在公开密钥密码体制中,公开密钥PK是公开信息,而秘密密钥SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然秘密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。该技术采用”非对称式加密方法,也就是两个不同的密钥来对信息加密和解密。
举个例子吧,单看概念属实看不懂首先我有两把钥匙,公钥和私钥。我可以把我的公钥给任何一个想给我写信的人,他们写完信之后用我的公钥加密,发给我,然后我用自己的私钥解 ...
RPA+AI+Uibot使用基础和实践项目
前言参加RPA+AI比赛,UIBOT的一些案例。
基础:基础说白了就是掌握那些命令的使用场景,以及部分c语言的基础,这些比较简单,我就不多介绍了。不懂的可以上官网,在这儿贴一个Uibot官方的教程网站:官网
使用&拼接两个字符串变量遍历数组的功能,输出内容要改为value
实战项目微信群发机器人
[“女朋友”,“胖头鱼”,
“爱你爱你”],[“圆圆”,“圆圆”,“你好呀”],[“张儿子”,“我dia”,“祝你快乐,测试,勿回”]]二维数组 啊,就是数组里面有数组
[“女朋友”,“胖头鱼”,“爱你爱你”],女朋友就是value[0][0][15:40:02]流程块1.task 第8行:[“圆圆”,“圆圆”,“你好呀”][15:40:02]流程块1.task 第8行:[“张儿子”,“我dia”,“祝你快乐,测试,勿回”]value[0]是一列,就是所有子数组的第一个元素突然发现跟c语言的数组还不一样,对于这个软件,排在第一位的是value[0],第二列的是value[1]
批量填写表单
汇总信息填入数组和字典要用变量赋值,对其进行变量名和值得赋值,数组用[ ]括起来,字典用{ }括 ...
动态分区存储管理(操作系统课设)
动态分区存储管理因为代码使用C++写的,虽然自己之前自学过C++,代码看起来还是有一点困难,这篇博客就是我的课程设计,本次课程设计利用VS和MFC构造图形化界面更加直观。
1 设计任务1.1 设计目的
●加深理解动态分区分配存储管理的过程;● 建立描述内存分配状况的数据结构;● 建立描述进程的数据结构;● 使用两种方式产生进程:(a)自动产生, (b)手工输入;● 在屏幕上显示内存的分配状况、每个进程的执行情况;● 建立分区的分配与回收算法,支持紧凑算法;● 时间的流逝可用下面几种方法模拟:(a) 按键盘,每按一次可认为过一个时间单位;(b) 响应WM_TIMER;● 将一批进程的执行情况存入磁盘文件,以后可以读出并重放;
●实现动态分区分配算法:首次适应算法循环首次适应算法最佳适应算法最坏适应算法;●加深对碎片处理方法——内存回收算法,以及紧凑算法的理解,认识其作用,并予以实现。1.2 设计内容(1)动态分区分配是根据进程的实际需要,动态地为之分配内存空间。在实现动态分区存储管理时,将涉及到分区中所用的数据结构、分区分配算法和分 ...