第8~9章 信息安全与保护 信息系统的搭建实例-浙江高中信息技术知识点

2024-10-09
| 6页
| 67人阅读
| 8人下载
教辅
宁波诸事皆成教育科技有限公司
进店逛逛

资源信息

学段 高中
学科 信息技术
教材版本 -
年级 高三
章节 -
类型 学案-知识清单
知识点 -
使用场景 高考复习
学年 2024-2025
地区(省份) 浙江省
地区(市) -
地区(区县) -
文件格式 PDF
文件大小 308 KB
发布时间 2024-10-09
更新时间 2024-10-09
作者 宁波诸事皆成教育科技有限公司
品牌系列 -
审核时间 2024-10-09
下载链接 https://m.zxxk.com/soft/47832714.html
价格 2.00储值(1储值=1元)
来源 学科网

内容正文:

31 第八章 信息安全与保护 1. 个人信息可以分为个人敏感信息和个人一般信息。 2. 个人信息泄露是指不愿意让外界了解的个人信息被外界知晓 3. 个人信息泄露的渠道:1.个人信息注册时无意泄露,2.网上交流时被恶意窃 取 4. 开发者设计开发的计算机软件,在开发完成之日起就受到法律的保护。 5. 个人信息的保护:1.国家立法、2.行业自律、3.个人信息安全意识 6. 密码通常是指按特定编码规则编成,用于对通信双方的数据信息进行从明文 到密文变换的符号。 7. 密码系统包括明文、密文、密钥和密码算法四个方面 8. 简单加密算法:1.置换密码、2.换位密码、3.简单异或 9. 凯撒密码是一种简单的置换密码 10. 加密算法与解密算法相同称之为对称加密,不同称之为非对称 11. 身份认证是用户在进入系统或访问受限数据资源时,系统对用户身份的鉴别 过程。 12. 身份认证方法:1.用户名+口令的认证技术,2.依靠生物特征识别的认证技 术,3.USBKey 认证技术 13. 访问控制一般是指系统对用户身份及其所属的预先定义的策略组,用于限制 其使用数据资源的手段。 14. 身份认证要解决的问题是用户是否有权限进入系统使用数据资源,而访问控 制要解决的问题是用户对数据操作的权限 15. 访问控制三要素:主体、客体、控制策略 16. 计算机病毒是指人为编制的具有破坏计算机功能或者毁坏数据,影响计算机 系统的使用,并能自我复制的一组计算机指令或程序代码。它具有传染性、寄生 性、隐蔽性、潜伏性、破坏性和可触发性等特征。 17. 手机病毒具有计算机病毒的特征,是一种手机程序。通过发送短信、微信、 彩信及无线上网的方式进行传播。 18. 病毒防治:1.安装并开启防火墙,2.安装应用系统补丁,3.安装防毒软件, 4.经常对系统和重要的数据进行备份。 19. 针对手机病毒,应该做到:1.收到乱码信息后,及时删除,2.不接受陌生请 求,3.保证下载内容的安全性。4.不随意连接公共场所的 WI-FI 20. 漏洞是指一个系统存在的弱点或缺陷,漏洞可能来自应用软件或操作系统, 由于设计时的缺陷或编码时的错误而产生的。 21. 后门是漏洞的一种。 22. 漏洞的防护:1.使用防火墙。2.经常使用安全检测与扫描工具来发现安全漏 洞及薄弱环节,3.使用有效的控制手段抓住入侵者 23. 黑客一般是指热衷于计算机技术或解决难题,突破限制的高手。 24. 防火墙一般是由硬件或软件组合而成的复杂系统,也可以只是软件系统,如 Windows 系统自带的防火墙。防火墙是在外部网络或内部网络之间、公共网络与 专用网络之间构造的一道安全保护屏障,用来在两个网络之间实施存取控制策略。 25. 防火墙按技术分类,主要分为地址转换防火墙、数据包过滤防火墙等;按形 态分类主要分为硬件防火墙、软件防火墙 32 第九章 信息系统的搭建实例 1.信息系统搭建的前期准备。 (1) 需求分析:包括目标期待、功能需求、性能需求、环境资源需求、用户界 面需求、可拓展性需求。 (2)可行性分析:主要从技术、经济、社会意义等方面分析系统的可行性。 (3)开发模式选择:搭建系统一般可选择 B/S 或 C/S 两种模式中的一种 (4)概要设计:包括模块设计、系统物理配置和数据库管理系统选择。 (5)详细设计:包括输入设计、输出设计、人机界面设计、数据库设计、代码 设计和安全设计。 2.信息系统的搭建主要包括硬件搭建和软件模块选择或编写两方面。硬件是信息 系统建立的基础,它的技术指标决定了信息系统的运行速度、可靠性、适用范围、 可维护性等; 3. 信息系统的硬件主要包括:服务器、网络设备、传感设备、智能终端等。 4. IoT 模块主要有 4个针脚,分别为 Vcc(供电)、Gnd(接地)、Tx 和 Rx(数 据传输接口) 5. 信息系统的软件开发一般 包括数据管理设计(数据采集、数据传输、数据存 储、数据呈现)、服务器端程序、客户端程序几个部分,自行开发应用程序。 6. 数据管理设计主要负责与具体数据管理系统衔接,包括数据采集、传输、存 储、呈现等方面,为系统中需要长久存储的数据对象提供数据存储的方案 7. 客户端以 HTTP 的协议,通过 GET 或者 POST 的形式提交数据。GET 请求是将 参数直接展示在 URL 中,例如 http://www.baidu.com/input?id=1,POST 请求并 不将参数直接展示在 URL 中,例如 http://www.baidu.com/input 8. JSON 是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,易 于阅读和编写,同时也易于机器解析和生成。 9. SQL 语句即非结构化查询语句。常见格式如下: 假设需要创建如下数据表(图 4.1): 图 4.1 格式名 样例 说明 create table students(name txt,area text,id int) create table 数据表名(字段名1 数据 类型,.............) 创建数据表 Insert into students(name,area ,id)values(“Lisi“, “hangzhou“,18) Insert into 数据表名(字段 名)values(字段值) 插入数据 Delete from students where id=1 Delete from 数据表名 where 条件 根据条件删除 33 Update students set name=”王五” where id =1 Update 数据表名 set 需要修改的内容 where 条件 根据条件修改 Select * from students where id=1 Select * from 数据表名 where 条件 根据条件查询 所有字段数据 Select name from students where id=1 Select 需要显示的字段名 from 数据 表名 where 条件 根据条件查询 某个字段数据 10. 系统测试的目的是把测试结果与系统的需求相比较,发现所开发的系统与用 户需求不符或矛盾的地方,及时加以修正。信息系统测试包括软件测试、硬件测 试和网络测试。 【正确性证明技术目前还处于初级阶段,但对未来的软件可能产生深远影响】 软件测试 测试方法 说明 备注 正确性证明 只能发现程序错 误,但不能证明程 序无错 纸面推算、不关注 格式是否正确 静态测试 主要对程序的编 程格式和结构等 方面进行评估 只关注格式是否 正确 动态测试 运行被测的程序, 输入相应的测试 数据,检查实际输 出结果和预期结 果是否相符 只关注代码是否 能正常运行 硬件测试 初验测试、系统测 试 / 网络测试 初验测试、系统测 试 / 11. 信息系统的文档,是系统建设过程的原始资料,是系统出现故障后维护人员 的指南。 12. 信息系统的文档类型繁多,分类方法也有很多种。 ①按信息系统的阶段不同,可以分为:系统规划阶段的文档,如系统设计任务书 和项目开发计划等;系统分析阶段的文档,如系统分析说明书等;系统设计阶段 的文档,如系统设计说明书等;系统实施阶段的文档,如程序设计报告、系统测 试报告和开发总结报告等;系统运行与维护阶段的文档,如用户手册、操作手册 与维护修改建议书等。②按文档不同的服务目的,可以将信息系统的文档分为三 类:用户文档、开发文档与管理文档。用户文档主要是为用户服务的,开发文档 主要是为开发人员服务的,管理文档主要是为项目管理人员服务的。 34 (一)Flask 代码详解 (1)Flask 代码解析 # coding= UTF-8(陶小波编写) import sqlite3 #导入 SQLite3 模块 import datetime #导入时间模块 from flask import Flask,render_template,request DATABASE='data/data.db' #数据库文件地址,data.db 是当前数据库的文件名【1】 app=Flask(_name_) @app.route("/") #路由函数,格式:@app.route(路径,methods=["post","get"]),methods 参数不写默认为 GET 请求 def hello(): #视图函数,与路由函数成对出现 db=sqlite3.connect(DATABASE) #链接数据库【2】 cur =db.cursor() #获取数据库游标【3】 cur.execute("SELECT * FROM sensorlog WHERE sensorid =1") #【4】执行数据库语句, from 后面是数据表名称,当前数据表名称为 sensorlog data = cur.fetchall()#获取数据库返回结果 (查询数据调用该方法)【5】 cur.close() #关闭数据库游标【6】 db.close() #关闭数据库链接【7】 templ =data[len(data)-1] #len(data)==0:表示没有到查询数据 temp=temp1[2] return render_template('vews.html', data=data,temp=temp) #跳转到网页,传入两个参数,第一个参数为需要跳转的页面路径,后面的参数为向页面传 的参数 #Adding data @app.route("/input",methods=["POST", "GET"]) def add_data(): if request.method =='POST': #request.method:获取请求方法 sensorid =int(request.form.get('id")) #flask 获取 post 请求发送的参数的方法:request.form.get(参数名) sensorvalue = float(request.form.get('val')) else: sensorid = int(request.args.get('id')) #flask 获取 get 请求发送的参数的方法:request.args.get(参数名) sensorvalue = float(request.args.get('val')) nowtime = datetime.datetime.now() nowtime = nowtime.strftime(%Y-%m-%d %H:%M:%S') db=sqlite3.connect(DATABASE) #链接数据库 cur= db.cursor()#获取数据库游标 cur.execute("INSERT INTO sensorlog(sensorid,sensorvalue,updatetime)VALUES(%d,%f,'%s')" %(sensorid,sensorvalu e,nowtime)) #执行数据库语句 db.commit()#提交数据 (增删改数据调用该方法) 35 cur.execute("SELECT* FROM sensorlist where sensorid=%d"% sensorid) rv =cur.fetchall() #执行数据库语句 cur.close()#关闭数据库游标 db.close() #关闭数据库链接 maxrv =rv[0][2] minrv =rv[0][3] if sensorvalue> maxrv or sensorvalue< minrv: return'0' else: return'1' if_name__=="_main__": app.run(host="0.0.0.0",port=8080,debug=True) #启动函数,host 为服务器 IP 地址,port 为端口号,debug 参数为 True 即打开调试模式, False 表示关闭调试模式 debug=True 的时候 系统更不安全 (2)html 代码 <body> <meta http-equiv="refresh"content="60"> </body> <style> <!--样式代码--> #center{ MARGIN-RIGHT:auto;MARGIN-LEFT:auto;background:#eff7ff;width:600px; height:500px;vertical-align:left;overflow-y:scroll; overflow-x;scroll} </style> <title>室内环境实时监测系统</title> <!--网页标题--> <hl align="center">室内环境实时监测系统</h1> <h2 align="center">当前室内温度:{{temp}}</h2> <h2 align="center"><a href="/">刷新</a>历史数据列表:</h2><div id="center" style="border:2px solid #96c2f1"> 温度记录时间<br> <!--此处的 data 即本篇(1)处中代码 { render_template('vews.html, data=data,temp=temp)} 中的 data--> {% for i in data[:-1]%} {{i[2]}} {{i[3]}}<br> <!--输出结果需要在结果前套{{}}--> {% endfor %} </div> (3)Micro:bit 访问 Url,micro:bit 程序代码实现。micro:bit 先通过串口配置 Wi-Fi 模块,然后采集温度传感器数值,拼接为一个 URL 地址,如 http://192.168.0.101:8080/input?id=1&val=22.5。每隔 5 秒钟访问这个 URL 一次,若返回为 0,则让蜂鸣器发出声音 from microbit import *import Obloq #Lm35 接在 pinO IP="192.168.0.101" #IP 地址 PORT="8080" #端口号 SSID="jf" #Wifi 名 36 PASSWORD="pkq88888"#Wifi 密码 uart.init(baudrate=115200,bits=8,parity=None,stop=1,tx=pin1,rx=pin2) #通过串口链接,tx 链在 pin1,rx 链接在 pin2【教科书上有误,此处勘正】 while Obloq.connectWifi(SSID,PASSWORD,10000)!= True: #链接 wifi,10 秒内没有链接成功,就提示失败 display.show(".") #显示... display.scroll(Obloq.ifconfig())Obloq.httpSet(IP,PORT) #循环滚动链接信息 while True: errno,resp=Obloq.get("input?id=1&val="+str(pinO.read_analog()),10000) #以 get 请求形式请求 URL,10 秒内没有链接成功,就提示失败 if errno == 200: #200 表示请求成功 display.scroll(resp) else: display.scroll(str(erno)) sleep(1000*5) #暂停 5 秒 (4) flask 中从数据库中获取数据返回的结果为【二维数组】 例如有数据表 ua id name pwd 1 ZhangSan 123456 2 LiSi 123123 代码 ...................以上代码省略................... cur.execute("SELECT* FROM ua") rv =cur.fetchall() ...................以下代码省略................... rv 的结果为:[[1,”ZhangSan”,”123456”],[2,”LiSi”,”123123”]] (5) Get 请求和 Post 请求区别 GET 请求:会将参数连在 URL 中 例如: http://127.0.0.1:8081/login?id=1&pwd=abcAbc123 也就说 URL 中带?的就是 GET 请求 对应的路由函数 @app.route("/login" methods=["get"]) Post 请求:不会将参数连在 URL 中(将参数放在 form 表单中提交,此代码略) 例 如: http://127.0.0.1:8081/login 对应的路由函数 @app.route("/login" methods=["post"]) 在 flask @app.route 中 methods 函数默认值为 get,即@app.route("/login") 就是 get

资源预览图

第8~9章 信息安全与保护 信息系统的搭建实例-浙江高中信息技术知识点
1
第8~9章 信息安全与保护 信息系统的搭建实例-浙江高中信息技术知识点
2
第8~9章 信息安全与保护 信息系统的搭建实例-浙江高中信息技术知识点
3
所属专辑
相关资源
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。