什么是网络信息安全?(非常详细)零基础入门到精通,收藏这一篇就够了

451 篇文章 26 订阅
359 篇文章 4 订阅

01

网络安全概述

安全性威胁

计算机网络通讯过程中,主要有两种威胁。

•主动攻击

•被动攻击

具体攻击的位置如下图。

从汽车电子的角度举个例子,大部分的软件工程师,应该都干过下面两件事。

•被动攻击

大家都做过的,“对标,抄袭” 买来对标的车,找个一分二的线,不知道从哪弄来的dbc, 来采别人家的报文,看看别人的交互逻辑大概是什么样的。虽不耻为伍,但也做过。

•主动攻击

用CANoe 插在一分二的线上,也同时发送某个报文。

安全的计算机网络

随着汽车电子的发展,以太网接入汽车电子, OTA的广泛推广。信息安全,汽车电子计算机安全变得越来越重要。鄙人信息被盗了不值钱,要是车子被控制了,可是要嘎了的事情。

所以安全的网络应当包含以下几点

•机密性

机密性(或私密性)就是只有信息的发送方和接收方才能懂得所发送信息的内容,而信息的截获者则看不懂所截获的信息。

•端点鉴别

安全的计算机网络必须能够鉴别信息的发送方和接收方的真实身份。也就是说 PC 端插一个CANoe, PC 端接一根网线,不应该能和车子通讯上。否则是件很危险的事情。

•信息的完整性

即使能够确认发送方的身份是真实的,并且所发送的信息都是经过加密的,我们依然不能认为网络是安全的。还必须确认所收到的信息都是完整的,也就是估息的内容没有被人篡改过。保证信息的完整性在应对主动攻击时也是必不可少的。信息的完整性和机密性是两个不同的概念。

说话别说一半,否则要被打的。就像控制端 发送扭矩控制 100Nm, 状态位是Valid. 接收端只能说到100Nm. 这显然是不会被执行的。

•运行的安全性

现在的汽车软件,ECU,对网络的依赖越来越密切,即使没有被攻击,或者窃取有效数据,也需要保证运行时的安全性,安全的运行环境,相对稳定的工作环境。这里就需要访问控制。访问控制包含外设的,内存的,网络接口的,等等。

访问控制(access control)对计算机系统的安全性非常重要。必须对访问网络的权限加以控制,并规定每个用户的访问权限。由于网络是个非常复杂的系统,其访问控制机制比操作系统的访问控制机制更复杂(尽管网络的访问控制机制是建立在操作系统的访问控制机制之上的),尤其在安全要求更商的多级安全(multi level security)情况下更是如此。

数据加密模型

有了上面的实际问题,我们就需要考虑对策了。

一般的数据加密模型如下图 所示。用户 发送明文 X, 但通过加密算法 运算后,就得出密文Y

•A:发送方ECU

•K:密钥,可以理解为一个字符串,或者是数据流等等

•X:未经加密的数据

•Y:加密之后的数据

随着信息安全的发展,这里的k 可能是不同的,公钥,私钥等等。

再此过程中,截取者可以去截取,获取,篡改等操作。如果按照上面的模型,截取者只需要加密算法E,解密算法D 以及密钥就可以进行操作。解密过程

02

两类密码体制

对称密钥密码体制

所谓对称密钥密码体制,即加密密钥与解密密钥都使用相同密钥的密码体制。如下图,其实就是上图。

DES 的机密性仅取决于对密钥的保密,而算法是公开的。

DES 之后, 一种新的加密标准即高级加密标准 AES

autosar 也有一堆。但是从本质上来说,就是OEM 合 tier 1 有 key, 算法是公开的。所以都可以抽象成下面公式。

公钥密码体制(非对称加密) RSA

公钥密码体制使用不同的加密密钥与解密密钥。这种加密体制又称为非对称密钥密码体制。

公钥密码体制的产生主要有两个方面的原因,一是由于对称密钥密码体制的密钥分配问题,二是由于对数字签名的需求。

在公钥密码体制中,加密密钥 PK (Publ ic Key,即公钥)是向公众公开的,而解密密SK (Secre t Key,即私钥或密钥)则是需要保密的。加密算法 和解密算法 也都是公升的。

公钥密码体制的加密和解密过程有如下特点:

(I) 密钥对产生器产生出接收者 的一对密钥:加密密钥 PKB 和解密密钥 SKB 。发送者所用的加密密钥 PKB 就是接收者 的公钥,它向公众公开。而 所用的解密密钥 SKB是接收者 的私钥,对其他人都保密。

(2) 发送者 的公钥 PKB 通过 运算对明文 加密,得出密文 Y, 发送给B

B用自己的私钥 SKa 通过 运算进行解密,恢复出明文,即

这里的公钥和私钥虽然是成对的,但是必须要做到向上不计算的原则。就是Pk 无法计算出 Sk.

否则,白扯。

上述的加密,解密过程如下图

请注意,任何加密方法的安全性取决千密钥的长度,以及攻破密文所需的计算量,而不是简单地取决于加密的体制(公钥密码体制或传统加密体制)。我们还要指出,公钥密码体制并没有使传统密码体制被弃用,因为目前公钥加密算法的开销较大,在可见的将来还不会放弃传统加密方法。

所以很多汽车上面的MCU, SOC 都有独立的加密芯片,比如我们常常提到的HSM。

没干过 就不能干吗?

03

鉴别

报文鉴别

鉴别和加密是不相同的概念。鉴别的内容有二。

•一是要鉴别发信者

即验证通信的对方的确是自己所要通信的对象,而不是其他的智充者。这就是实体鉴别。实体可以是发信的人,也可以是一个进程(客户或服务器)。因此这也常称为端点鉴别。

二是要鉴别报文的完整性

即对方所传送的报文没有被他人篡改过。至千报文是否需要加密,则是与“鉴别“性质不同的问题。有的报文需要加密(这要另找措施),但许多报文并不需要加密。

but how? 请继续往下看

用数字签名进行鉴别(原理)

我们知道,书信或文件可根据亲笔签名或印程来鉴别其真实性。但在计货机网络中传送的报文,则可使用数字签名进行鉴别。下面就介绍数字签名的原理。

这里有一个最根本的原则就是,接收方需要通过大家都认可的方式来计算出,收到的数据出自于“我:发送方”。

这里就用到了上面说到的非对称加密的方法进行签名。

为了进行数字签名, 用其私钥 心对报文 进行 运算。运算本来叫作解密运算。可是,还没有加密怎么就进行解密呢?其头 运算只是把报文变换为某种不可读的密文(因此有时也说成 用其私钥对报文加密,但这样说不准确)。在图中我们使用 “D 运算'而不是“解密运算“,就是为了避免产生这种误解。把经过 运算得到的密文传送给 为了核实签名,用 的公钥进行 运算,还原出明文 。诸注意,任何人用 的公钥 心进行 运算后都可以得出 发送的明文。可见图 中所示的通信方式并非为了保密,而是为了进行签名和核实签名,即确认此明文的确是 发送的。

不知道说的恰当不恰当,就是PK 可以进行解SK进行D运算的数据。因为SK 只有发送方有,所以档PK进行E计算,算出来的东西,是谁的,就是谁的。

除非私钥K 被别人知道了,但是我们假设是私钥 都是只有自己知道的。所以一定程度上做到了数字签名的另外一个功能:不可否认,不能抵赖。

但是这虽然进行了签名,但是还没有加密。任何人拿到了PK 都可以读取原来的明文数据,进行攻击,盗取。

所以我们还需要对数据进行加密。

如果用下图所示的方法,就可同时实现保密通信和数字签名。图中 SKA SKB别为 的私钥,而 PKA 和 PKB 分别为 的公钥。

虽然在理论上是正确的,但很难用于现实生活中。因此这一节的小标题后边有“原理”二字。这是因为要对报文(可能很长的报文)先后要进行两次 运算和两次 运算,这种运算量太大,要花费非常多的计算机 CPU 时间,在很多情况下是无法令人接受的。因此目前对网络上传送的大狱报文,普遍都使用开销小得多的对称密钥加密。要实现数字签名当然必须使用公钥密码,但一定要设法减小公钥密码算法的升销。这就要使用后而几个小节所讨论的密码散列函数和报文鉴别码。

密码散列函数

密码散列函数主要有以下四个特性

1.输入的数据可以是长度不唯一的,但是输出是固定长度,且短的(短 有时候是优势)。

2.结果可能是多对一的,就是因为结果的长度是固定的,只能说结果有很多种可能,但是输入的可能性更多,所以总会有不同的输入算出来相同的输出,但是无伤大雅,2的128次方,不是那么容易对上的。

可以正向计算,无法反算回来。属于一种单向函数

1.输出的结果和输入的每一个bit都有关系,即 改动一个bit, 结果差距也会很大。

报文鉴别码进行报文鉴别

这里的主要原理就是把计算出来的报文鉴别码计算出来,并且拼接到报文最后。这样接收方就可以进行计算鉴别码,看看和收到的鉴别码是否一致。所以提问:这里鉴别的是什么“ 答:鉴别的是 数据的完整性。

其实这样计算会出一个问题,就是伪造数据的伪造者也可以用相同的手段。

所以这里我们可以采取接收方,与发送方共享一个私钥,这个私钥只有这两个方可以知道。所以我们可以读出以下过程。

注意这个MAC 不是计算机的MAC 地址的MAC, 而是:Message Authentication Code.

上面的过程一定程度上能知道数据没有被篡改,且是指定的发送方发来的。但是数据本身没有进行加密,还是防止不了窃取,只是防止了篡改。

下面我们基于前面的过程进行加密。

前面的过程提到的共享的一组私钥,在这里可能就不需要了,因为非对称加密已经有了私钥 公钥。可以得出下面过程。

总结一句话:A 用自己的私钥进行签名, B 用 A 的公钥进行鉴别” 不可抵赖,不可否认,数据一致。

实体鉴别

实体鉴别和报文鉴别不同。报文鉴别是对每一个收到的报文都要鉴别报文的发送者,而实体鉴别是在系统接入的全部待续时间内对和自已通信的对方实体只需验证一次。

最简单的实体鉴别过程如下图所示。向远端的 发送带有自己身份 (例如,的姓名)和口令的报文,并且使用双方约定好的共享对称密钥 KAB 进行加密。收到此报文后,用共享对称密钥 KAB 进行解密,从而鉴别了实体 的身份。

然而这种简单的鉴别方法具有明显的漏洞。例如,入侵者 可以从网络上截获 发给的报文, 井不需要破译这个报文(因为破译可能很费时间),而是直接把这个由 加密的报文发送给 B, 误认为 就是 A; 然后 就向伪装成 发送许多本来应当发给的报文。这就叫作重放攻击。甚至还可以截获 IP 地址,然后把IP 地址冒充为自己的 IP 地址(这叫作 IP 欺骗)。

为了解决上面的问题,需要使用到大量的不重复随机数,所以为什么好多主机厂的需求,对随机数的要求很大。也有不可预测的硬件随机数的需求(媳妇的情绪是真随机,不可预测,不去做加密,屈才了)。

在鉴别过程中不重数可以使 B 能够把重复的鉴别请求和新的鉴别请求区分开。

所以这样就可以避免掉重放的攻击。

但是下面作为中间人的攻击还是无法避免。

所以密钥管理也是个很重要,非常重要的事情。

04

系统安全:防火墙与入侵检测

防火墙(firewall) 作为一种访问控制技术,通过严格控制进出网络边界的分组,禁止任何不必要的通信,从而减少潜在入侵的发生,尽可能降低这类安全威胁所带来的安全风险。由于防火瑞不可能阻止所有入仗行为,作为系统防御的第二道防线,入侵检测系统 IDS (Intrusion Detection em)通过对进入网络的分组进行深度分析与检测发现疑似入侵行为的网络活动,井进行报警以便进一步采取相应措施。

它是一种位于内部网络与外部网络之间的网络安全系统。是一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。

汽车方面一般直接采用物理隔离。。。。

为了帮助大家更好的学习网络安全,我给大家准备了一份网络安全入门/进阶学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂这些资料!

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值