系统架构设计师-信息安全技术(2)
目录
一、安全架构概述
1、信息安全所面临的威胁
二、安全模型
1、安全模型的分类
2、BLP模型
3、Biba 模型
4、Chinese Wall模型
三、信息安全整体架构设计
1、WPDRRC模型
2、各模型的安全防范功能
四、网络安全体系架构设计
1、开放系统互联安全体系结构
2、安全服务与安全机制的对应关系
3、认证框架
4、访问控制框架
5、机密性框架
6、完整性框架
7、抗抵赖框架
五、区块链技术
1、区块链的特点
2、去中心化
3、哈希加密/放篡改
4、共识算法(博弈论)/ 全民记账
一、安全架构概述
1、信息安全所面临的威胁

被动型攻击:收集信息为主,破坏机密性。

主动型攻击:主动攻击的类别主要有:中断(破坏可用性),篡改(破坏完整性),伪造(破坏真实性)。一般破坏完整性。
二、安全模型
1、安全模型的分类

2、BLP模型
Bell-LaPadula模型是符合军事安全策略的计算机安全模型,简称BLP模型。
BLP模型安全规则如下:下读上写(权限高向权限低读,权限低向权限高写)
(1)简单安全规则:安全级别低的主体不能读安全级别高的客体。
(2)星属性安全规则:安全级别高的主体不能往低级别的客体写。
(3)强星属性安全规则:不允许对另一级别进行读写。
(4)自主安全规则:使用访问控制矩阵来定义说明自由存取控制。

3、Biba 模型
Biba模型主要用于防止非授权修改信息,以保护系统的信息完整性。该模型同BLP模型类似,采用主体、客体、完整性级别描述安全策略要求。Biba模型能够防止数据从低完整性级别留向高完整性级别。
其安全规则如下:下写上读(权限高的向权限低的写,权限低的向权限高的读)
(1)星完整性规则:表示完整性级别低的主体不能对完整性级别高的客体写数据。
(2)简单完整性规则:表示完整性级别高的主体不能从完整性级别低的客体读取数据。
(3)调用属性规则:表示一个完整性级别低的主体不能从级别高的客体调用程序或服务。
4、Chinese Wall模型
Chinese Wall模型的安全策略的基础是客户访问的信息不会与当前他们可支配的信息产生冲突。
其访问客体控制的安全规则如下:
(1)与主体曾经访问过的信息属于同一公司数据集合的信息,即墙内信息可以访问。
(2)属于一个完全不同的利益冲突组的可以访问。
(3)主体能够对一个客体进行写的前提是主体未对任何属于其他公司数据集进行过访问。
定理1:一个主体一旦访问过一个客体,则该主体只能访问位于同一公司数据集的客体或在不同利益组的客体。
定理2:在一个利益冲突组中,一个主体最多只能访问一个公司数据集。
三、信息安全整体架构设计
1、WPDRRC模型
WPDRRC模型包括6个环节和3大要素。
6各环节包括:预警、保护、检测、响应、恢复和反击。模型蕴含的网络安全能力主要是预警能力、保护能力、检测能力、响应能力、恢复能力和反击能力。
3大要素包括人员、策略和技术。
2、各模型的安全防范功能

PPDR也称作P2DR,其中的第一个P代表的是策略,在表格中未显示。
四、网络安全体系架构设计
1、开放系统互联安全体系结构
GB/T 9387.2 - 1995给出了基于OSI参考模型的7层协议之上的信息安全体系结构。

2、安全服务与安全机制的对应关系

3、认证框架
鉴别的基本目的是防止其他实体占用和独立操作被鉴别实体的的身份。
鉴别的方式如下:
(1)已知的:例如:口令、密码、验证码等。
(2)拥有的:例如:门禁卡、IC卡、银行卡等。
(3)不改变的特性:例如:人脸识别、指纹识别等。
(4)相信可靠的3方建立的鉴别:例如:第三方鉴别机构。
鉴别信息的类型包括交换鉴别信息、申请鉴别信息和验证鉴别信息。

(5)环境:例如:IP地址等。
4、访问控制框架
访问控制决定开发系统环境中允许使用哪些资源,在什么地方适合阻止为授权访问的过程。
基本访问控制功能示意图:
AEF: 访问控制实施功能。
ADF:访问控制判决功能,做出访问控制判决。

5、机密性框架
机密性服务的目的是确保信息仅仅是对被授权者可用。
机密性机制:
(1)通过禁止访问提供机密性。
(2)通过加密提供机密性。
6、完整性框架
完整性框架的目的是通过阻止威胁或探测威胁,保护可能遭到不同方式危害的数据完整性和数据相关属性完整性。
完整性机制的类型:
(1)阻止对媒体访问的机制。
(2)用以探测对数据或数据项序列的非授权修改的机制。
7、抗抵赖框架
抗抵赖服务包括证据的生成、验证和记录,以及在解决纠纷时随即进行的证据恢复和再次验证。
抗抵赖由4个独立的阶段组成:

五、区块链技术
【区块链】不等于【比特币】,比特币底层采用了区块链技术。比特币交易在我国定性为【非法应用】。
1、区块链的特点
(1)去中心化:由于使用分布式核算和存储,不存在中心化的硬件或管理机构,任意节点的权利和义务都是均等的,系统中的数据块由整个系统中具有维护功能的节点来共同维护。
(2)开放性:系统是开放的,如:区块链上的【交易信息是公开的】,不过【账户信息是高度加密的】。
(3)自治性:区块链采用基于协商一致的规范和协议(比如一套公开透明的算法),使得整个系统中的所有节点能够在信任的环境自由安全的交换数据,使得对 “人” 的信任改成对机器的信任,任何人为的干预不起作用。
(4)安全性(信息不可篡改):数据在多个节点存储了多份,篡改数据得改掉51%节点的数据,这太难。同时还有其他安全机制,如:比特币的每笔交易,都由付款人用私钥签名,证明确实是他同意向某人付款,其他人无法伪造。
(5)匿名性(去信任):由于节点之间的交换遵循固定算法,其数据交互是无需信任的(区块链中的程序规则会自行判断活动是否有效),因此交易对手无需通过公开身份的方式让对方对自己产生信任,对信用的累积非常有帮助。
2、去中心化
区块链是一个分布式账本,一种特殊的分布式数据库。

(1)链表在多个节点存储,没有中心节点 ,数据不一致时,以 “少数服从多数” 原则执行。
(2)所以要篡改成功,除非篡改51%的节点
3、哈希加密/放篡改

4、共识算法(博弈论)/ 全民记账
一般有:PoW(工作量证明)、PoS(权益证明)、DPoS(股份授权证明机制)
比特币采用了PoW(工作量证明):
争夺记账权 = 挖矿
计算出来的账单节点哈希值前13个字符为0,则符合规则,得到记账权。有一个节点计算出结果,则广播消息告知其他节点,其他节点更新数据。
计算困难,但验证却很容易,例如:
218903 = 哪两个质数的乘积?
457 * 479
相关文章:
系统架构设计师-信息安全技术(2)
目录 一、安全架构概述 1、信息安全所面临的威胁 二、安全模型 1、安全模型的分类 2、BLP模型 3、Biba 模型 4、Chinese Wall模型 三、信息安全整体架构设计 1、WPDRRC模型 2、各模型的安全防范功能 四、网络安全体系架构设计 1、开放系统互联安全体系结构 2、安全服务与安…...
STM32F4X-GPIO输入功能使用
STM32F4 GPIO输入模式配置 上一节讲GPIO的时候说到了将GPIO设置成输出模式,并通过将GPIO的电平拉高拉低控制LED灯的例程。GPIO除了用作输出功能之外,还可以用作输入功能。最常用的就是检测按键的输入电平。 硬件设计 本章的硬件是基于正点原子的探索者…...
Jenkins-CICD-python/Java包升级与回退
Jenkins- CICD流水线 python/Java代码升级与回退 1、执行思路 1.1、代码升级 jenkins上点击 upgrade和 代码版本号 --${tag} jenkins 推送 代码 和 执行脚本 到目标服务器/opt目录下 执行命令 sh run.sh 代码名称 版本号 upgrade 版本号 来自jenkins的 构建参数中的 标签…...
模糊测试面面观 | 模糊测试工具知多少
自1988年威斯康星大学的Barton Miller首次提出模糊测试这一概念以来,模糊测试领域经历了持续长久发展。模糊测试作为一种软件测试方法,旨在通过向程序输入模糊、随机、异常的数据,探测和发现潜在的漏洞和错误。这种方法备受安全研究人员的青睐…...
esp8266+电压检测模块检测电池电压
该模块5v时输出1v,因esp8266 ADC引脚(A0)支持电压范围是0v-1v,所以该方案仅支持0-5v电压检测 接线: - 接 esp8266GND 可不接 S 接 ADC esp8266 为 A0 VCC 被检测直流电 GND 被检测直流电- #include <Wire.h>const int adcPin A0; // …...
MongoDB增删改查操作
数据库操作: 在MongoDB中,文档集合存在数据库中。 要选择使用的数据库,请在mongo shell程序中发出 use <db> 语句 // 查看有哪些数据库 show dbs;// 如果数据库不存在,则创建并切换到该数据库,存在则直接切换到…...
Python | Package | Python的三种包安装方式(pip/whl/tar.gz)
文章目录 PIP 安装与卸载Source 安装与卸载Whell 安装与卸载 PIP 安装与卸载 pip install xxx pip install xxxversion_numberpip install captcha pip install captcha0.4# XXX/anaconda3/envs/py373/lib/python3.7/site-packages pip uninstall captchaSource 安装与卸载 p…...
1. 微信小程序开发环境搭建
下载 微信的小程序开发需要使用到微信开发者工具,通过https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html可以下载 下载完成后 安装...
Redis五大基本数据类型及其使用场景
文章目录 **一 什么是NoSQL?****二 redis是什么?****三 redis五大基本类型**1 String(字符串)**应用场景** 2 List(列表)**应用场景** 3 Set(集合)4 sorted set(有序集合…...
优于立方复杂度的 Rust 中矩阵乘法
优于立方复杂度的 Rust 中矩阵乘法 迈克克维特 跟随 发表于 更好的编程 6 分钟阅读 7月 <> 143 中途:三次矩阵乘法 一、说明 几年前,我在 C 年编写了 Strassen 矩阵乘法算法的实现,最近在 Rust 中重新实现了它,因为我继续…...
CentOS gcc介绍及快速升级
1.gcc介绍 GCC(GNU Compiler Collection)是一个开源的编译器套件,由 GNU(GNUs Not Unix!的递归缩写) 项目开发和维护。它是一个功能强大且广泛使用的编译器,支持多种编程语言,包括 C、C、Objective-C、Fortran、Ada 和…...
IO多路复用中select的TCP服务器模型和poll服务模型
select的TCP服务器模型 服务器端 #include <head.h> #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> #include <unistd.h> #include <sys/select.h> #include <sys/time.h>#define PORT 6666 //1024~4…...
AI工程师招募;60+开发者AI工具清单;如何用AI工具读懂插件源码;开发者出海解读;斯坦福LLM课程 | ShowMeAI日报
👀日报&周刊合集 | 🎡生产力工具与行业应用大全 | 🧡 点赞关注评论拜托啦! 🤖 一则AI工程师招募信息:新领域需要新技能 Vision Flow (目的涌现) 是一家基于 AGI 原生技术的创业公司,是全球探…...
Mysql 使用JSON_SEARCH函数 判断多表查询时,某个拼接字段是否包含另外一个字段
场景 两个表管理查询 关联字段为A表id, B表的ids A表id是正常的整数, B的ids是id拼接成的字符类型, 格式是111,222,333这样的. A: B: id ids11 11,22,3322 33,44,5533 …...
C++头文件
C头文件 一般头文件特殊头文件windows.hbits/stdc.h 一般头文件 C头文件是一种包含预定义函数、类和变量声明的文件。它们通常用于在源代码文件中引入外部库或模块的功能。 头文件的作用是提供程序所需的声明信息,以便在源代码文件中使用这些声明。当你在源代码文…...
无脑入门pytorch系列(四)—— scatter_
本系列教程适用于没有任何pytorch的同学(简单的python语法还是要的),从代码的表层出发挖掘代码的深层含义,理解具体的意思和内涵。pytorch的很多函数看着非常简单,但是其中包含了很多内容,不了解其中的意思…...
【Spring源码】Spring扩展点及顺序
Spring扩展点及顺序 01-调用BeanFactoryPostProcessor的构造器 02-调用了BeanFactoryPostProcessor的postProcessBeanFactory 03-调用了BeanPostProcessor构造器 04-调用InstantiationAwareBeanPostProcessor构造方法 05-调用了InstantiationAwareBeanPostProcessor接口的Befo…...
广州华锐互动:3D数字孪生开发编辑器助力企业高效开发数字孪生应用
3D数字孪生开发编辑器是一种新兴的技术,它可以帮助企业更好地管理和维护其物联网设备。这些工具可以帮助企业实现对设备的实时监控、故障排除和优化,从而提高生产效率和降低成本。 数字孪生系统是一种将物理世界与数字世界相结合的技术,它可以…...
【脚踢数据结构】图(纯享版)
(꒪ꇴ꒪ ),Hello我是祐言QAQ我的博客主页:C/C语言,Linux基础,ARM开发板,软件配置等领域博主🌍快上🚘,一起学习,让我们成为一个强大的攻城狮!送给自己和读者的…...
[leetcode] 707 设计链表
707. 设L计链表 中等 902 相关企业 你可以选择使用单链表或者双链表,设计并实现自己的链表。 单链表中的节点应该具备两个属性:val 和 next 。val 是当前节点的值,next 是指向下一个节点的指针/引用。 如果是双向链表,则还需…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)
骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...
【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error
在前端开发中,JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作(如 Promise、async/await 等),开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝(r…...
抽象类和接口(全)
一、抽象类 1.概念:如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法,包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中,⼀个类如果被 abs…...
