demi的博客

如何成为一名黑客(网络安全从业者)——网络攻击技术篇之网络嗅探

上次我们了解了黑客是如何为一次攻击做准备,今天我们正式进入攻击阶段,一起来学习一下如何进行网络嗅探,以获取关于目标主机所在网络的具体状况,并学习如何防范网络嗅探。

1、网络嗅探的原理

网络攻击者如果能够通过网络嗅探工具获得目标计算机网络传输的数据包,就可以通过对数据包按照协议进行还原和分析,从而获取目标计算机传输的大量信息。因此,网络嗅探技术是一种威胁性极大的非主动类信息获取攻击技术。

对目标计算机的网络进行嗅探可以通过Sniffer类工具(即网络嗅探器)来完成。利用这种工具,可以监视网络的状态、数据流动情况以及网络上传输的信息。如果信息以明文的形式在网络上传输时,便可以使用网络监听的方式来进行数据包的嗅探和获取。将网络嗅探设备或网络嗅探主机的网络接口设置为监听模式,便可以将网上传输的信息截获。攻击者常常利用网络嗅探技术截获网络中传输的用户远程登录的用户名和口令。网络管理员也常利用网络嗅探工具抓取网络中传输的各类数据,从而深入分析网络性能和故障,包括计算机之间的异常通信、不同网络协议的通信流量、每个数据包的源地址和目的地址等。从网络嗅探工具获取的数据包中,可以分析出非常详细的信息。

机器学习项目失败的9个原因,你中招了吗?

本文总结了数据科学项目失败的最常见原因,希望能够帮助你避免陷阱。

1. 问错了问题

如果你问了错问题,你将会得到错误的答案。比如金融业中的欺诈识别问题,这个问题最初可能是“这个特定的交易是否存在欺诈”。为了确定这一问题,你将需要一个包含欺诈和非欺诈交易示例的数据集。这个数据集可以在一组专门负责侦测欺诈行为的专家(SME)的帮助下生成。但是,由于专家们依据的是过去对欺诈行为的认识进行的标记,用该数据集训练的模型只会捕获符合旧模式欺诈,而对于新兴的欺诈方式,这一模型将无法识别。如果将问题改为“这个交易是否反常”,它只需寻找不符合“正常”签名的交易,依靠人类进一步分析预测的欺诈交易以验证模型结果即可。但这种方法的副作用是,它很可能会比以前的模型产生更多的误报。

2. 试图用它来解决错误的问题

我们经常会忽视一个问题:我们费尽心思解决了一个问题,但是解决后是否能实现我们的目的。比如,你想出了用人工智能开发出一个将人的全身照传上网站就能根据提醒量身定做一套合身的衣服的项目。完成这个项目我们需要完成以下任务:

Android 音视频开发(一) : 通过三种方式绘制图片

想要逐步入门音视频开发,就需要一步步的去学习整理,并积累。本文是音视频开发积累的第一篇。 对应的要学习的内容是:在 Android 平台绘制一张图片,使用至少 3 种不同的 API,ImageView,SurfaceView,自定义 View。

1. ImageView 绘制图片

这个想必做过Android开发的都知道如何去绘制了。很简单:

Bitmap bitmap = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory().getPath() + File.separator + "11.jpg");
imageView.setImageBitmap(bitmap);

很轻松,在界面上看到了我们绘制的图片。

2. SurfaceView 绘制图片

这个比 ImageView 绘制图片稍微复杂一点点:

解开三个误区,LoRa已从事实上成为主流物联网制式

近日,物联网产业又爆出猛料。LoRa 联盟(LoRa Alliance)和腾讯日前共同宣布,腾讯已在最高层面加入LoRa联盟,这将进一步加快LoRaWAN技术的采用。这是继阿里巴巴、中国联通与Semtech合作以及Google加入LoRa联盟之后LoRa领域迎来的又一重要事件。继阿里巴巴之后,腾讯宣布加入LoRa联盟,无疑对于LoRa技术在中国加速发展提供了巨大的驱动力。

伴随着物联网产业的快速发展,阿里巴巴、Google、腾讯等巨头的站台,国内外大量LoRa应用的商用,让LoRa已经从事实上已经成为了主流物联网络制式之一。

本文就通过解读LoRa制式的三个误区,让你了解一个更加真实的LoRa网络和应用场景。

误区一:物联网存在统一标准吗?

多年以来,业界已经习惯于人联网的标准化与统一化,顺其自然地将这种“非此即彼”的“人联网”选择理念沿用于物联网LPWAN市场。其实LoRa与NB-IoT、e-MTC都属于LPWAN网络,拥有互补的技术能力以及应用场景。从技术本身出发,下图是NB-IoT与LoRa的技术对比。

浅谈虚拟现实

我最近对VR很感兴趣所以我看了很多这方面的资料,虽然我不是这方面的专家,只是一个爱好者,但我谈谈虚拟现实。

首先,什么是VR?

虚拟现实(Virtual Reality,简称VR),是由美国VPL公司创建人拉尼尔(Jaron Lanier)在20世纪80年代初提出的。其具体内涵是:总合利用计算机图形系统和各种现实及控制等接口设备,在计算机上生成的、可交互的三维环境中提供沉浸感觉的技术。其中,计算机生成的、可交互的三维环境成为虚拟环境(即Virtual Environment,简称VE)。

发展VR的必然性

随着社会经济的发展,计算机已经成为社会生活中不可缺少的重要组成部分,友好的人机接口技术很早已成为人们关心的一个重要课题,因为一个比较差的人机交互接口很可能将使一个功能很强的产品变得不可接受。计算机刚出现时的巨无霸机器到现在的书本一样的大小,从计算机的外设到计算机的触屏这些无一不说明了人们对人机交互的注重。而VR的人机交互性远超现在的产品的人机交互性。随着人们的生活水平的提高,人们将不断追求物质的极致享受,而VR是的出现和发展是必然的和必须的。

机器学习中的相似性度量

在做分类时常常需要估算不同样本之间的相似性度量(Similarity Measurement),这时通常采用的方法就是计算样本间的“距离”(Distance)。采用什么样的方法计算距离是很讲究,甚至关系到分类的正确与否。

本文的目的就是对常用的相似性度量作一个总结。

1. 欧氏距离(Euclidean Distance)

欧氏距离是最易于理解的一种距离计算方法,源自欧氏空间中两点间的距离公式。

(1)二维平面上两点a(x1,y1)与b(x2,y2)间的欧氏距离:

关于Cocos2d-x中的scheduleUpdate和update方法的使用

一、如果要让某类实例对象要连续执行某些语句(比如让每个Block实例从运行框最右边移动到最左边)

要在Block类中增加一些东西

1. 先在其.cpp文件的init()函数中执行scheduleUpdate()方法。

2. 然后在.h中声明一个虚拟的函数update,并在.cpp文件中定义update,当init中执行scheduleUpdate()时,会不断地调用update函数,里面的语句也不断地被执行,直到执行unscheduleUpdate()时停止调用update()函数,unscheduleUpdate()语句一般放在update函数中,当满足某个条件时就执行。

二、如果要不断地创建某个类的实例对象(比如不断地创建新的Block在最右边),可以用到嵌套的update方法

要在GameController类中增加一些东西

1. 先在HelloWorld类的.cpp文件的init()函数中执行scheduleUpdate()方法。

总结 | 八类软件开发方法!

在上个世纪60年代中期爆发了众所周知的软件危机。为了克服这一危机,在1968、1969年连续召开的两次著名的NATO会议上提出了软件工程这一术语,并在以后不断发展、完善。与此同时,软件研究人员也在不断探索新的软件开发方法。至今已形成了八类软件开发方法。

Parnas方法

最早的软件开发方法是由D.Parnas在1972年提出的。由于当时软件在可维护性和可靠性方面存在着严重问题,因此Parnas提出的方法是针对这两个问题的。首先,Parnas提出了信息隐蔽原则:在概要设计时列出将来可能发生变化的因素,并在模块划分时将这些因素放到个别模块的内部。这样,在将来由于这些因素变化而需修改软件时,只需修改这些个别的模块,其它模块不受影响。信息隐蔽技术不仅提高了软件的可维护性,而且也避免了错误的蔓延,改善了软件的可靠性。现在信息隐蔽原则已成为软件工程学中的一条重要原则。

OpenGL学习——颜色的选择

OpenGL支持两种颜色模式:一种是RGBA,一种是颜色索引模式。

无论哪种颜色模式,计算机都必须为每一个像素保存一些数据。不同的是,RGBA模式中,数据直接就代表了颜色;而颜色索引模式中,数据代表的是一个索引,要得到真正的颜色,还必须去查索引表。

1. RGBA颜色

RGBA模式中,每一个像素会保存以下数据:R值(红色分量)、G值(绿色分量)、B值(蓝色分量)和A值(alpha分量)。其中红、绿、蓝三种颜色相组合,就可以得到我们所需要的各种颜色,而alpha不直接影响颜色,它将留待以后介绍。

在RGBA模式下选择颜色是十分简单的事情,只需要一个函数就可以搞定。

glColor*系列函数可以用于设置颜色,其中三个参数的版本可以指定R、G、B的值,而A值采用默认;四个参数的版本可以分别指定R、G、B、A的值。例如:

void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);

扒一扒自动驾驶车辆激光雷达的部件功能

据外媒报道,自动驾驶车辆配置的多款摄像头,旨在用该设备探查道路上的障碍物并绘制车辆周边环境。在各类传感器中,在功能方面,激光雷达传感器与人眼最为接近,其光探测和测距系统(detection and ranging system)与雷达类似,但其采用了光波替代了无线电波(radio waves)。

激光雷达系统利用激光脉冲信号“照亮(illuminate)”目标区域,并计算反射信号返回接收器的用时。该类系统由光源、光电探测器、数据处理电子器件及运动控制设备。

自动驾驶车辆大体采用了两类激光雷达设备,其分类依据为扫描车辆周边环境时所采用的方式,其中:1、3D闪光式激光雷达(3D flash LiDAR)由宽视角源及广视角光学件构成,旨在聚焦探查设备一次曝光(one exposure)上的所有反射光。2、扫描式激光雷达系统可向各个方向发射激光,逐个探查回响(echoes)以便绘制车辆周边环境。