5. 网络层安全IPSec 5.1 IPSec协议 (1)前面使用Outlook进行数字签名和数字加密是应用层实现的安全.安全套接字实现的安全是在应用层和传输层之间插入了一层来实现数据通信安全.而IPSec是网络层实现的安全.不需要应用程序的支持,只要配置通信双方的安全规则,传输层的数据传输单元就会被加密后封装到网络层,实现数据通信安全.IPSec工作在OSI模型的网络层. (2)IPSec主要的两个协议 ①鉴别首部(Authentication Header, AH)协议:提供源点鉴别和数据完…
6. 访问控制列表ACL 6.1 标准访问控制列表 (1)标准ACL ①标准ACL是基于IP数据包的源IP地址作为转发或是拒绝的条件.即,所有的条件都是基于源IP地址的. ②基本不允许或拒绝整个协议组.它不区分IP流量类型.如Telnet.UDP等服务. (2)实战:只允许部分计算机访问Internet ①目标: 在Router0上定义标准ACL,只允许市场部(PC7例外)和财务部的计算机能够访问Internet.而服务器组中的计算机拒绝访问Internet ②在Router0的S3/0接口的出…
4. 安全套接字层 4.1 安全套接字层(SSL)和传输层安全(TLS) (1)SSL/TLS提供的安全服务 ①SSL服务器鉴别,允许用户证实服务器的身份.支持SSL的客户端通过验证来自服务器的证书,来鉴别服务器的真实身份,并获取服务器的公钥. ②SSL客户鉴别,允许服务器证实客户身份.这个信息对服务器很重要的.例如,当银行把有关财务的保密信息发送给客户时,就必须检验接收者的身份. ③加密的SSL会话,客户和服务器交互的所有数据都在发送方加密,在接收方解密.第三方无法窃听.同时SSL具有校验机制…
第10章,计算字段. P64 select concat (vend_name,'(',vend_country,')') from vendors order by vend_name; # 拼接,vend_name(vend_country) # P65 使用别名 select concat(RTrim(vend_name),'(',RTrim(vend_country),'),') as vend_titile from vendors order by vend_name;  #拼接ve…
Linux就这个范儿 第10章 生死与共的兄弟 就说Linux系统的开机.必须经过加载BIOS.读取MBR.Boot Loader.加载内核.启动init进程并确定运行等级.执行初始化脚本.启动内核模块.执行对应运行等级的初始化脚本.个性化设置.进入登录状态这十个步骤.怎么样?服气吧!如果觉得还不够直观,那么看一下图10.1 Linux系统启动流程吧. LVS的IPVS模块也是采用动态加载的方式 图10.1 Linux系统启动流程那关机是不是会省点事儿呢?不是!Linux的关机会涉及4个命令和4…
第8章,BOM BOM的核心对象是window,具有双重角色,既是js访问浏览器的一个接口,又是ECMAScript规定的Global对象.因此,在全局作用域中声明的函数.变量都会变成window对象的属性和方法. 例: var age = 20; function sayAge(){ alert(this.age); } alert(window.age); window.sayAge(); 定义全局变量与在window对象上直接定义属性区别:全局变量不能通过delete操作符删除,而直接在w…
第10章     RL-TCPnet网络协议栈移植(FreeRTOS) 本章教程为大家讲解RL-TCPnet网络协议栈的FreeRTOS操作系统移植方式,学习了第6章讲解的底层驱动接口函数之后,移植就比较容易了,主要是添加库文件.配置文件和驱动文件即可.另外,RL-TCPnet移植到FreeRTOS要重新配置RL-TCPnet的接口函数,以此来支持RL-TCPnet多任务运行.使用RTX无需重新配置,因为默认情况下就是采用RTX的API函数配置的. 本章教程含STM32F407开发板和STM32…
第10章 | 充电时刻 本章主要介绍模块及其工作机制 ------ 模块 >>> import math >>> math.sin(0) 0.0 模块是程序 一个简单的模块 #hello.py print ("Hello,World!") >>> import hello Traceback (most recent call last): File "<pyshell#56>", line 1, i…
第8章: 主要介绍了软件需求的类型.利益相关者,获取用户需求分析的常用方法与步骤.竞争性需求分析的框架NABCD,四象限方法以及项目计划和估计的技术. 1.软件需求:人们为了解决现实社会和生活中的各种问题而有求于软件 2.而作为软件团队,准确而全面地找到这些需求主要的步骤为: (1)获取和引导需 (3)验证需求 (2)分析和定义需求 (4)在软件产品的生命周期中管理需求 3.用户对软件的需求又分为:对产品功能性的需求:对产品开发过程的需求:非功能性需求:以及综合需求.所以软件团队和客户代表在需求…
第10章 LSP:Liskov替换原则    Liskov替换原则:子类型(subtype)必须能够替换掉它们的基类型(base type). 10.1 违反LSP的情形 10.1.1 简单例子 对LSP的违反导致了OCP的违反: struct Point { double x, y;} public enum ShapeType { square, circle }; public class Shape { private ShapeType type; public Shape(Shape…