智能家居行业调查报告范文
时间:2023-09-18 17:59:35
导语:如何才能写好一篇智能家居行业调查报告,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
关键词:智能家居;身份验证;数据加密;数字签名
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)17-0179-03
Abstract: Smart home as the current hot IOT applications, we are looking forward to it brings intelligent life. At the same time, it should be aware of its potential security risks. The main purpose of this paper is to research on the security scheme of smart home system. In the user authentication, using the double factor authentication mode based on the Device MAC and dynamic password, combined with digital signature technology, to prevent the intrusion of illegal users. After the authentication is passed, the system assigns permissions for each role. In the data transmission of different security levels, using different encryption schemes to protect the security of data communication in smart home system. In the home system, each security module of the program design, they are interrelated and mutually cooperate. Theoretically, this strategy to meet the needs of home security.
Key words: smart home; authentication; data encryption; digital signature
在这个信息化、数据化的互联网通信大时代,物联网正以各种形式出现在我们日常生活中的各个方面,正逐渐改变我们生活和工作方式[1]。物联网通俗点理解就是互联网基础上形成的物物相连的网络,是指通过在物体内嵌入感应芯片,采用RFID射频技术,无线传感技术,红外感应技术和跟踪定位技术,将这物体与互联网连接,实现对物体信息的实时采集、处理、传输和监控管理等功能。
智能家居作为物联网的一个重要应用,目前各大IT界巨头,家电大佬们纷纷涉足,展开了一场家居市场的争夺战,由此可见,智能家居的前景是十分可观的。智能家居实际上是以家居环境为基础,通过物物相连的无线传感网络来管理我们的衣食住行,实现人们家居生活的智能化、安全化和时尚化。我们可以想象:在未来的某一天,当你下班回到家里,随着智能门禁系统的安全开启,家里的灯光缓缓点亮,空调、热水器根据你的体温自动控温,背景音乐缓缓响起,一个控制器或者一部手机就可以操控家中所有的电器[2]。而当你在外工作时,你也可以打开手机或者电脑远程查看家居环境,操控家里的电器设备……这样的生活正是智能家居正在努力实现的方向。
当人们沉浸在对智能家居生活的美好设想中时,它所存在的安全隐患却给人们当头一棒。不久前,苹果公司固若金汤的IOS系统深陷XcodeGhost感染门事件后,这就不得不引发我们对智能家居系统的担忧。根据惠普的调查报告,十大著名的智能家居产品存在不同的250个安全隐患。令人震惊的是,在黑帽子安全大会上,黑客轻松的破解了Nest恒温器的安全防范,使恒温器变成了可以掌握家居一切动向的“监视器”。而英国早前就曝出了被攻击的家庭摄像头泄漏用户隐私数据的事件[3]。智能家居出现的这一系列的安全问题,引发人们思考:我们该怎样对待智能家居?或许智能家居的未来,亟待解决的是如何加强安全性这一课题。
1 智能家居系统架构的分析
目前,智能家居大多采用ZigBee无线传感网络实现家居与互联网连接,实现实时数据共享。ZigBee是普遍认为安全性能很好的低功耗协议,被定义为一种基于自动化控制的无线数传技术[4]。本系统的设计方案中,主要采用基于ZigBee无线传感网络来采集智能家居的环境信息,系统整体架构如图1所示。
整个智能家居系统主要由ZigBee无线传感网络、智能网关和远程终端控制平台三大部分组成。其中,ZigBee无线传感网络和智能网关是智能家居的硬件平台,所有家居数据的采集、处理和传输都由它们实现。ZigBee无线网络主要由协调器、路由器和终端节点组成,其中协调器是网络中的核心设备,负责整个无线传感网络的组建、配置、管理和维护;路由器负责数据包的转发,并执行最佳的路由策略;终端设备主要负责数据的采集和传输[5]。在家居的硬件平台中,智能网关是系统中最核心的设备,不仅负责控制ZigBee无线网络的正常工作,完成信息传输和指令控制;还要控制与Internet连接,实现与远程终端设备的数据实时传输、指令的接收与实现等操作。智能网关作为家居系统的核心部件,是实现ZigBee无线传感网络与互联网连接的中间桥梁。
2 智能家居的安全性模型分析
智能家居系统目前大多采用Linux、Android系统,由于其系统的开放性,存在很多难以预料的安全隐患。智能家居根据组网的方式不同,采用的设备、协议的标准不一,也会出现一些安全隐患。本文主要将系统划分成家居环境模块、数据模块和控制指令三个安全模块进行结构分析,如图2所示。
2.1家居环境的安全性
智能家居负责管控人们家居生活的各种电器和智能门禁系统,相当家庭智能化的大管家。目前智能家居行业缺乏一个统一的行业安全标准,大多数智能家居生产厂商的产品安全性能不够强,暴露出诸多的硬件设备的安全隐患。如果黑客或不法分子对设备硬件的漏洞遭进行攻击,获得了家居的控制权的话,后果是不堪设想的。家居的安防系统一旦被破解,智能家居相当于是“大门敞开”的,人们的生命财产都将受到严重的威胁,这是不容忽视的。
2.2 数据的安全性
数据是信息的一种表现形式。在任何通信系统的设计中,都必须强调数据的安全性。在智能家居通信中,采集和上传的数据是有关用户家居和用户身份的重要信息,因此,保障数据的安全性显得尤为重要。在整个智能家居系统中,数据的安全性包括用户的账户信息、隐私数据和普通数据这三个部分。
2.2.1 用户登录账户的安全性
用户的账户信息是识别用户身份的重要凭证,也是用户登录家居系统的一把关键“钥匙”。首先,在家居系统中,需要合法用户进行身份信息的注册,系统会依据用户的身份级别,给每个合法用户分配相应的系统操作权限。用户身份界别越高,获得的管理权限就越高。因此,在系统中,用户的账户信息是至关重要的。一旦高级别账户的密码信息泄露,对整个系统的危害是相当大的。因此,在智能家居系统中,必须要保证每一个用户的账户信息的安全,防止非法用户登录系统。
2.2.2 通信数据的安全性
在这个IT化的大时代,数据的安全或更胜于金钱,这是由数据的具体价值来决定的。在智能家居系统中,数据是用户信息的具体体现,由ZigBee模块收集上传的数据都是家居中的隐私数据,关系到家居信息或者用户的各种隐私信息,这也是黑客用尽手段想要窃取的“肥肉”。在通信过程中的数据需要进行适当的变换处理,让攻击者无法知晓其真实含义。
2.3 控制指令的安全性
在整个智能家居系统中,用户可以通过远程终端或者内网设备进行访问或者控制。在内网控制时,由于ZigBee网络本身的安全性,指令传输的安全有一定的保障。而在外网的远程终端进行指令控制时,由于Internet的开放性,就会遭受到诸多的攻击,因此,在指令传输过程中的安全亟待解决。
3 智能家居系统安全性方案设计
在智能家居系统中,将由外及内采取一系列的安全机制,确保整个通信过程的安全性。首先,在用户使用系统之前,终端设备登录环节需进行身份合法性的验证。在用户成功登录后,实行级别化“角色-权限”模式,即根据该用户的角色级别,为其开放对应的功能权限。在数据传输过程中,根据数据的隐私级别,采用不同的加密方式,确保重要数据的安全性。智能家居系统安全方案如图3所示。
3.1 身份验证环节
在用户设备登录系统之前,需要进行设备身份验证,在这个环节中,主要采用基于双因子认证模式,结合数字签名技术,防止非法用户的入侵。所谓双因子认证模式,即采用“设备MAC地址+动态口令”机制。整个身份验证的过程包括两部分:设备首次注册和设备登录验证。
3.1.1 设备首次注册
用户终端设备第一次登录智能家居系统之前,需要在智能网关上进行设备的首次注册,通过家居主人的许可,将设备的原始MAC设备编号存储在智能家居后台的数据库中,根据主人确认并设置的角色,为其分配相应的系统操作权限。同时,在用户终端设备上安装动态口令校验软件。
3.1.2 设备登录验证
当设备首次注册完成后,再次登录系统将会实行身份验证。用户设备验证时,智能网关和用户设备之间的信息传输均采用单向散列函数进行加密处理。单向散列函数的安全性在于其产生散列值的操作过程具有较强的单向性。并使用数字签名技术对账户信息进行签名,确保身份验证过程中登录信息的完整性和安全性。设备身份验证过程如图4所示。
(1)用户终端设备首先需要向智能网关发送身份验证的请求,智能网关收到请求后,做出响应,开放认证系统。
(2)用户将本设备的MAC编号使用MD5算法生成MAC摘要,并对数据的真实性进行签名,攻击方无法伪造,发送的信息也具备不可抵赖性。
(3)智能网关在接收到经过数字签名后MAC信息后,首先通过比对数据库用户设备MAC编号,在验证数字签名签名的真实性。如果验证通过,则生成本次验证登录的动态口令,采用MD5算法生成动态口令摘要,发送给用户终端设备。
(4)用户设备在收到动态口令摘要后,调用在设备注册时安装的口令校验软件,计算得到本次登录的动态口令,并发送给智能网关验证。
(5)智能网关设备验证动态口令,如果验证成功,则为该用户设备开放相应的角色权限,可以进行数据传输。
图4 用户设备身份验证过程图
3.2 数据加密环节
在智能家居系统中,对所有传输的数据进行级别划分,级别越高,采用的加密手段就越复杂。对于用户的账户登录信息这类数据,属于Ⅰ级加密数据,级别最高,使用MD5算法和AES加密技术进行处理,并进行数字签名,以保证数据在传输过程中的安全性、完整性和不可否认性。控制指令属于Ⅱ级数据,包括对系统做出的一系列的控制操作,必须保证使用该功能的是合法用户,因此采用MD5算法和数字签名保证控制指令的安全传输[6]。系统里隐私数据属于Ⅲ级数据,采用MD5算法和AES加密算法进行加密处理。最后,对于一些普通数据的传输,进行速度较快,加密效率高的AES算法进行处理。
在智能家居系统中,日志审查和分析模块具有很高的价值。日志可以记录系统的运行状态,各种系统的运行参数;记录用户终端设备登录、访问的系统的时间、IP地址和执行的一系列操作;记录当前系统响应和处理的用户请求的具体描述等。通过日志记录,可以定期进行的分析和审计[7],它的具体功能有如下几点:
(1)通过日志分析工具,管理员对日志记录进行安全分析对比,实现日志的审查,使管理员实时掌握系统的运行情况。
(2)系统管理员通过日志的审查,及时了解到当前系统的运行状态和安全状态,分析当前系统的安全级别,进行入侵检测,实现入侵危机的自动预警。
(3)如果系统遇到运行或安全故障,管理员通过对系统日志的故障分析,能够对故障进行高速定位,继而启动故障应急预案,及时恢复系统正常功能。
4 结论
本文在基于物联网的智能家居系统中,对整体的安全方案进行了分析与设计,采用了一系列的安全策略保障系统的安全性。各个安全模块之间相互联系,相互作用,共同实现系统的安全性。但本文仍有不足,有待在今后的研究工作中对各个安全模块更加细节化,并投入到实际环境中进行调试。
参考文献:
[1] 张维华.皇晓琳.物联网智能家居技术与标准化综述[J].信息技术与标准化, 2012(7):35-38.
[2] 沈杰,陈秋歌,刘会方.基于智能家居系统可靠性测试分析[J].电子技术,2015(4):147-148.
[3] 田丰庆.家居智能安全系统设计[D].南京:南京理工大学,2012.
[4] 王一棋,何丽莉,胡成全.基于ZigBee和Internet的无线智能家居网关系统[J].吉林大学学报,2015(53):302-306.
[5] 魏芳波.智能家居构架中关键技术的研究[J].电子制作, 2015(5):155-156.
篇2
关键词:嵌入式软件开发;C语言;课程改革
0.引言
C语言程序设计作为程序设计语言的入门基础课程,是各高校理工科专业中计算机程序设计类课程的普遍选择。作为一门理工科通识课程,其目的在于使学生通过对C语言中各种语言成分的学习,初步认识计算机程序设计及进行程序设计的过程,掌握基本的程序设计思想与方法。作为通识类课程,目前各院校通常将该门课程的教学安排在一年级,每周3-4学时(含实验),讲授内容主要包含C语言的数据类型与表达式、程序结构、函数、指针、链表、文件等。在教学实践中,我们发现,由于学时限制或学生接受程度等原因,常常需要对部分教学内容(如多级指针、文件操作、位操作等)进行削减,无形中降低了课程内容的深度与广度。作为通识类课程,这样的削减影响不太大。而对于信息类专业(计算机、电子、自动化等)而言,仅掌握通识教育中所讲授的部分是远远不够的。
嵌入式系统开发是信息类专业的一个主要发展方向。进入21世纪以来,融合先进的计算机技术、半导体技术、电子技术及各行业领域具体应用的嵌入式系统,已在工业控制、交通管理、信息家电、智能家居、环境监测、电子商务、机器人等领域得到了广泛应用。
一般说来,嵌入式系统是指以应用为中心,以计算机技术为基础,软硬件可剪裁,适用于心用领域,对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。由于在成本、功耗、体积等方面的限制,对嵌入式系统中的软件开发提出了更高的要求。嵌入式软件开发是在特定的硬件平台上进行,需要使用具有较强硬件操作能力的编程语言。由于C语言是具备了这一特质的高级语言,成为嵌入式系统开发的最佳选择。
调查显示,在信息类专业中,电子类本科专业教学计划与嵌入式系统教学要求相脱节,电子类本科学生的软件基础也较弱。在这样的背景下,对C语言程序设计课程进行相应改革,以适应嵌入式系统开发人才培养的需要是十分必要的。
1.嵌入式软件开发对C语言的需求
在适用于嵌入式系统开发的3类主要语言中,C语言占有超过70%的份额。开发嵌入式软件,除掌握C语言的基础知识和基本技能外,主要还存在以下几方面的要求:
1)指针。
指针作为C语言的主要特点,其使用十分灵活,因而也很难完全掌握。它可用于指向不同类型的普通变量、数组、字符串,甚至函数。在嵌入式软件开发中对各类不同指针(数组指针、指针数组、指向结构体的指针、多级指针)的使用十分普遍。因此,指针相关内容的教学必须足够深入。
2)位操作。
C语言有别于其他高级语言的一个特点是可直接对硬件进行操作。指针和位操作是这一特点得以实现的工具。通过6种位操作符,可直接对内存、寄存器或I/O端口的字节进行测试、置换或移位处理。熟练掌握位操作符的使用,是进行嵌入式软件开发必不可少的重要基础。在一些国内高校普遍选用的经典C语言教材(如文献[4])中,由于定位于普适教育,并未包含位操作部分的内容。
3)文件读写。
嵌入式系统中“一切皆文件”,系统的运行以文件读/写方式进行操作。理解文件系统的构成、掌握基本的文件操作方法也是进行嵌入式软件开发必须掌握的技能。
4)宏定义。
在嵌入式软件中使用宏定义,不仅可防止代码出错,提高可移植性、可读性,而且是产生内嵌代码的唯一方法,可用于替代函数调用,从而达到嵌入式系统性能要求。
以上4个方面的内容,在通识型的C语言课程中,由于课时和学生程度等原因,都不能进行针对性的特别训练。学生在进入嵌入式系统开发阶段后,显然会成为程序设计知识方面的短板。
2.课程改革思路
基于上一节的认识,我们对C语言程序设计课程的教学提出了下面的调整思路。
2.1课程设置
作为通识课程的C语言程序设计通常安排在一年级或二年级上学期完成。信息类专业的学生在大学三年级开始进入嵌入式系统开发相关课程时,不可避免地对已学过的C语言的知识会有一定程度的遗忘。
针对嵌入式系统开发的要求,考虑将C语言程序设计课程划分为2个阶段。第1阶段为c语言程序设计基础,每周3学时,可在大学一年级下学期或二年级上学期开设;第2阶段为嵌入式系统C语言程序设计,每周2学时,作为嵌入式系统开发方向的选修课,可在大学三年级上与其他嵌入式系统相关课程,如嵌入式系统、嵌入式操作系统一起开设。这样设置一方面满足了在低年级完成程序设计类通识课程的要求,使学生不必过早接触C语言中较为深入、复杂的部分;另一方面,通过将与嵌入式软件开发密切相关的知识适当推后,确保了嵌入式系统开发各门课程问的知识联系。
2.2教学内容的划分
由于将课程划分为基础部分和面向嵌入式系统开发的提高部分,则可将C语言的一般基础(基本语句、控制结构、数组、函数、指针、结构体)划人C语言程序设计基础课程中,通过这部分的学习使学生掌握C语言的基本理论知识并具备基本的编程技能,达到程序设计类课程的通识教育水平。
对于与嵌入式开发密切相关的知识,将在嵌入式系统C语言程序设计课程中讲授,主要包括:宏定义、位操作、文件操作和复杂指针运用。这部分内容的教学可围绕嵌入式软件开发实例展开,深入讲解各知识点的应用。通过嵌入式系统C语言程序设计课程的学习,学生应更深入地理解和领会C语言的精华思想,同时具备基于嵌入式平台进行软件开发的能力。
2.3实验内容
任何程序设计语言的学习都离不开大量的实践,实验是学习C语言的重要组成部分。根据前面对课程的划分,C语言程序设计基础课程中可开设的实验项目如表1所示。
实验1在学习了C语言的数据类型、运算符、表达式和输入/输出之后进行,目的在于使学生熟悉C语言的编译环境,逐步认识C语言语句的基本构成。实验2涵盖了程序的3种基本结构,便于学生统一认识关系、逻辑运算和程序结构。实验3-6分别对应于数组、函数、指针和结构体各章节的内容,重点掌握这些语言成分的定义及使用方法。实验7将综合运用本课程中的知识,完成一个较小的、具备一定功能的小型软件的开发。
嵌入式系统C语言程序设计课程的实验内容则围绕一个嵌入式软件开发实例展开,实例由任课教师选定。根据所选实例,实验内容可包含以下项目(如表2所示)。
实验1的目的在于使学生熟悉嵌入式系统的软件开发环境,主要介绍嵌入式Linux下的c语言编译工具。实验2-5则根据所选实例,选取特定的模块有针对性地进行文件操作、宏定义、位运算及复杂指针运用方面的练习。
2.4教学方法与手段的调整
毋庸讳言,由于种种因素的影响,当前各高校中普遍存在学风怠惰现象,相当一部分学生学习积极性较低下。如何提升学生对所学课程的兴趣,是每一名教师都要面对的问题。在多年的C语言程序设计课程教学过程中,我们接到学生的反馈意见最多的是“上课听得懂,下来不会自己编程”。究其原因,大概不外乎两种:一是学生尽管在课堂上听了课,课下并未及时回顾整理并主动思考;二是在理论课堂上一讲到底,学生要等到实验课时才真正动手体会讲过的知识,往往不能及时动手练习,进而影响消化吸收。针对第一种情况,我们采取了每一堂课以提问开始的方式,提问内容主要是对之前所学内容的回顾和脉络梳理,同时还留出了一定的课堂练习时间,这样能在一定程度上起到督促学生课下及时复习的作用,也便于教师及时了解学生的知识掌握情况。而对于第二种原因,可尝试采取将理论课堂搬至机房的方式,在完成一个知识点的讲授后布置即时练习,让学生能及时体验和理解。但当机房容量有限而班级较大时,并不适用,这样的情形如何处理?需要我们进一步思考。
- 上一篇:数字经济与实体经济融合
- 下一篇:社会经济调查