一种保护数据的设备和系统的制作方法

文档序号:7871936阅读:181来源:国知局
专利名称:一种保护数据的设备和系统的制作方法
技术领域
本实用新型涉及数据安全技术领域,特别涉及一种保护数据的设备和系统。
背景技术
随着信息载体设备的普及,越来越多的自 动控制、信息处理系统采用嵌入式架构,个人、企业等社会组织对于信息载体设备的依赖程度也越来越高。嵌入式设备是一种常用的信息载体设备,嵌入式设备的普及一方面提高了社会的生产效率、便利了对生产的控制,另一方面也对系统中的各种信息记录提出了安全保护上的具体要求。近年来,很多的信息安全厂商在数据保护技术上的研究和开发主要局限于如何保护嵌入式设备的数据在网络中的安全,比如对网络中的数据库、本地文件等数据的保护。而作为信息存储和管理载体的嵌入式设备自身的数据安全(特别是设备的物理安全)却往往被忽视,导致数据泄漏的风险较高,难以实现真正的安全可靠。特别是对于嵌入式移动设备,一旦遗失或被恶意盗取后,设备中的数据极易泄露,导致企业核心数据的丢失、给企业技术和商业机密造成了损失。目前很多研发者和用户开始意识到数据的商业价值和在企业价值链中的意义,针对上述问题,提出了采用可信计算理论体系对信息载体设备进行保护。在硬件上,增加加密的硬件设备,如可信赖平台模块(Trusted Platform Module,TPM)芯片和USB_key等;在逻辑上,设置一个可信的安全根,该安全根可以视为安全系统中信任关系的“根”,安全系统中所有相互信任或授权的活动都以安全根为基础。现有的数据保护方案至少存在如下缺陷现有的可信计算理论体系解决方案,需要在计算平台上额外增设加密硬件设备,如TPM芯片或USB-key等,硬件成本过高,大多数的用户都难以接受;且现有安全保护体系的实施和部署的操作复杂,专业性过强,普通的IT管理人员通常难以独立完成系统的配置和维护,而一旦配置出现差错,可能会导致整个系统无法使用或者整个系统的安全性大大降低。

实用新型内容本实用新型提供了一种保护数据的设备和系统,以解决现有方案硬件成本过高,专业性过强的问题。为达到上述目的,本实用新型实施例采用了如下技术方案本实用新型实施例提供了一种保护数据的设备,所述设备包括初始化单元、引导控制单元、环境因子获取单元和加解密单元,其中,所述初始化单元在所述设备一次初始化过程中,通过环境因子获取单元根据安全环境下设备的环境信息获取环境因子,通过加解密单元利用安全环境下的环境因子对所述设备中的敏感数据进行加密;在确认加密成功后,所述初始化单元销毁所述环境因子;所述引导控制单元在每次启动所述设备时,通过环境因子获取单元根据当前环境下设备的环境信息获取环境因子,通过加解密单元利用当前环境下的环境因子对所述已加密的敏感数据进行解密;当解密成功时,所述引导控制单元允许访问所述设备中的数据,当解密失败时,所述弓I导控制单元拒绝访问所述设备中的数据。进一步的,所述设备还包括删除模块或者禁止启动模块,所述删除模块,在加解密单元解密失败时销毁所述敏感数据;所述禁止启动模块,在加解密单元解密失败时阻止所述设备启动安全环境下的操作系统。 进一步的,所述设备还包括报警通讯模块和/或允许启动模块,所述报警通讯模块,在加解密单元解密失败时,发送报警信息;所述允许启动模块,在加解密单元解密失败时,允许所述设备启动非安全环境下的操作系统,所述非安全环境下的操作系统对所述敏感数据是无法访问的。进一步的,所述报警通讯模块为短信卡、彩信卡或全球定位系统GPS芯片中的一种或多种。进一步的,所述保护数据的设备为嵌入式设备,所述敏感数据为内核和镜像文件数据。本实用新型实施例还提供了一种保护数据的系统,其特征在于,所述系统包括如上所述的保护数据的设备和与该保护数据的设备相连接的环境信息提取单元。进一步的,所述环境信息提取单元包括如下至少一种提取设备的温度环境信息的温度采集器、提取设备的湿度环境信息的湿度采集器、提取设备的光照环境信息的光照采集器、提取设备使用者的生物特征信息的生物特征采集器、提取设备的物理环境图像信息的图像采集器、提取设备的网络环境信息的网络探测服务器、提取设备与网络服务器双向身份认证信息的认证服务器。进一步的,所述系统还包括与所述保护数据的设备相连接的环境监控服务器,所述环境监控服务器,预先采集所述设备在安全环境下的身份信息,在每次启动所述设备之前,采集所述设备在当前环境下的身份信息,根据安全环境下所述设备的身份信息验证当前环境下所述设备的身份信息,并根据验证结果判断所述设备是否为合法设备,若是,允许所述设备接入安全环境,若否,禁止所述设备接入安全环境。本实用新型实施例的有益效果是本实用新型实施例通过在安全环境中提取安全环境因子并利用安全环境因子对设备中的非易失性敏感数据加密,从而能够将设备中的敏感数据与工作环境绑定,不同的工作环境将提取出不同的环境因子,因此一旦设备移出安全的工作环境,由于无法得到一致的环境因子而造成解密失败,进而通过拒绝访问设备中的数据降低数据泄露的风险。由于本方案无需增设额外的加密硬件设备,通过与环境绑定的加解密机制实现对设备中的非易失性敏感数据的保护,所以硬件成本较小,另外实施和部署本数据保护方案的操作也相对简单,专业性要求较低,降低了系统实施和部署的工作量及对人力资源的要求。

图I为本实用新型实施例提供的环境因子获取单元的工作方式示意图;图2为本实用新型实施例提供的保护数据的系统的工作方式示意图;[0029]图3为本实用新型实施例提供的与环境绑定的双系统设备启动的一种工作方式示意图;图4为本实用新型实施例提供的一种双系统操作机制示意图。
具体实施方式
为使本实用新型的目的、技术方案和优点更加清楚,下面将结合附图对本实用新型实施方式作进一步地详细描述。本实用新型实施例以一种保护数据的系统为例来说明本方案提供的数据保护机制。本实施例提供的保护数据的系统包括数据所在的设备,该设备包括初始化单元、引导控制单元、环境因子获取单元和加解密单元。所述初始化单元,在所述设备一次初始化过程中,通过环境因子获取单元根据安 全环境下设备的环境信息获取环境因子,通过加解密单元利用所述环境因子对所述设备中的敏感数据进行加密;在确认加密成功后,所述初始化单元销毁所述环境因子。所述引导控制单元,在每次启动所述设备时,通过环境因子获取单元根据当前环境下设备的环境信息获取环境因子,通过加解密单元利用当前环境下的环境因子对所述已加密的敏感数据进行解密;当解密成功时,所述引导控制单元允许访问所述设备中的数据,否则拒绝访问所述设备中的数据。上述安全环境可以为设备初次安装时的工作环境,或者,上述安全环境可以为设备在初次安装运行后根据实际需要所设定的工作环境。本实施例中以安全环境选定为设备初次安装时的工作环境为例进行说明。上述设备包括但不局限于各种嵌入式设备,如嵌入式存储设备、嵌入式手持终端(手机、掌上电脑Pad)、嵌入式工业控制计算机等。环境因子的提取上述环境因子的提取是指被保护的设备(如嵌入式设备)通过环境信息提取单元按照一定的逻辑与其工作环境(包括自然环境、设备物理环境、服务器及软件环境)进行交互,从环境信息中完成特征提取,最终生成一定长度的数据串作为环境因子的过程。所识别的环境因素不同,则环境信息提取单元与环境交互的方式也不同,可以采用的交互方式至少包括温度环境精确测量、光照强度测量、视频监控拍摄的物理环境的图像、生物特征的测量、网络环境的测量、数据的扫描、采用挑战-响应(Challenge/Response)认证机制与互联网络交互获取密钥等。这些因素的任意其一或者任意数量的组合相互作用最终形成系统对环境认知的环境因子。参见图1,环境因子获取单元110与用来提取环境信息的外部设备112至115进行交互,该外部设备112至115为环境信息提取单元。图像采集器112能够采集设备的物理环境的物理环境图像信息,所提取的环境信息包括该物理环境图像信息。温湿度采集设备113 (如温度采集器)能够对设备的温度环境进行测量得到温度环境信息,所提取的环境信息包括该温度环境信息。温湿度采集设备113 (如湿度采集器)还能够对设备的湿度环境进行测量得到湿度环境信息,所提取的环境信息包括该湿度环境信息。图像采集器112、温湿度采集设备113都可以通过直接的数据接口进行数据采集,然后通过数据的误差消除机制得到一个稳定可信的数值作为环境因子或参与生成环境因子。网络探测服务器114能够采集设备的网络环境的网络环境信息,所提取的环境信息包括该网络环境信息。网络探测服务器114由集成在嵌入式设备内部的功能子模块实现或者由设置在嵌入式设备外部的设备实现。采集的网络环境信息主要包括网络的拓扑结构、网络中的各种服务器或特定主机的指纹信息(FingerPrint),如媒体接入控制(MAC)地址信息等,将这些信息抽象后生成环境因子或参与生成环境因子。认证服务器115与设备进行双向身份认证,在认证 通过后,认证服务器生成一个作为双向身份认证信息的数据块,将该数据块发送至设备,则所提取的环境信息包括该数据块。例如,认证服务器115与嵌入式设备直接可以通过挑战-响应的非对称加密方法进行通道双向的认证,同时让认证服务器和嵌入式设备确认对方的身份,然后在该非对称加密数据通道中,由认证服务器向嵌入式设备颁发一个数据块,将该数据块作为环境因子或参与生成环境因子。其中,挑战-响应认证机制是一种身份认证的方式,该方式下每次认证时认证服务器端都给客户端发送一个不同的"挑战"字串,客户端收到这个"挑战"字串后,做出相应的"应答",以实现双方身份的确认。进一步的,除了对上述环境因素的测量之外,本系统还可以利用光照采集器对设备的光照环境进行测量得到光照强度信息,所提取的环境信息包括该光照强度信息;或者,利用生物特征采集器采集设备使用者的生物特征信息(如指纹、虹膜等),所提取的环境信息包括该生物特征信息等。环境因子获取单元110直接将提取到的一种或多种环境信息作为所获取到的环境因子,或者,环境因子获取单元利用提取到的一种或多种环境信息生成环境因子,如环境因子获取单元对一种或多种环境信息进行特征提取,并按照预定算法生成一定长度的数据串,将该数据串作为环境因子。生成的方式例如可以是通过对环境信息中环境变量具体数据进行特征提取,屏蔽微观可变因素后形成特征字串,将所有参与运算的各个环境变量数据对应的特征字串进行杂凑运算,最终得到环境因子,或者,也可以是通过对特征字串的取模运算等方法最终得到环境因子。环境因子获取单元110将该环境因子传递至加解密单元120,加解密单元120将环境因子作为加密或解密非易失性敏感数据的密钥。初始化单元上述初始化单元主要完成设备初次安装时对环境信息的确认和环境信息的提取,形成环境因子,并通过这个“环境因子”作为初始化密钥对系统非易失性存储介质上的敏感数据进行加密。该非易失性敏感数据为访问设备在安全环境下的数据所必须的唯一性数据,例如,上述非易失性敏感数据可以为启动设备在安全环境下的操作系统所必须的唯一性数据。对嵌入式设备时,所选取的非易失性敏感数据为内核和镜像文件数据(Ramdisk内存盘中的数据)。而对设备中非易失性存储介质上的其他数据,在操作系统层面,采用环境因子按照预共享密钥的方式实现加密处理,完成可信性的传递。初始化单元在逻辑上可以处在系统的应用层,在系统初次启动的时候工作,并分别操作环境因子获取单元和加解密单元完成系统的初次运行配置,配置过程并不生成一个可保存的配置文件或数据,而是通过提取环境数据特征的结果得到环境因子,将环境因子作为密钥直接加密需要保护的系统内核和镜像文件,加密成功后,不保存该环境因子。该初始化的结果不可以直接提取和逆向分析。本实施例中初始化单元具有一种自毁功能,在确认加密成功后,销毁所述安全环境因子,删除设备中存储的未加密的所述非易失性敏感数据并禁止加密功能。在系统的存储介质上对初始化单元所占用的数据存储空间进行数据擦除操作。擦除的方法包括全零填充、全I填充、随机数填充等。自毁过程的最后阶段将对引导控制单元配置文件进行修改,去掉与初始化单元相关的信息,并重新启动设备。引导控制单元引导控制单元主要完成系统启动前的环境确认,在嵌入式设备的操作系统内核引导之前执行环境确认动作,避免设备在没有安全保护体系的环境中启动(如设备移出指定 的运行环境)。所以引导控制单元可以通过调用上述相同的环境因子获取单元实现环境因子的生成。同样,产生的输出结果(环境因子)仅仅是一次性使用的解密密钥,并不会在系统中进行保存。首先环境因子获取单元根据获取到的环境信息提取一个环境因子,用以解密存储在设备非易失性存储介质上的操作系统内核及其对应的镜像文件(Ramdisk)。如果设备的工作环境发生变化,将无法生成正确的环境因子,也就无法对存储在非易失性存储介质上的数据进行明文的提取操作。在同样的环境下环境因子获取单元所提取的环境因子应完全一致,且环境因子只在系统加载或启动时产生作用,一旦系统完成加载或启动,它将不存在于系统的任何一个易失或非易失性存储介质之中。参见图2,显示了本实用新型实施例提供的保护数据的系统的工作方式示意图。本实施例中以需要保护的设备为嵌入式设备,安全环境为设备的初次安装环境的场景为例进行说明。在初始化过程中,提取环境信息并生成环境因子,在初始化过程中利用环境因子生成密文的内核和镜像文件。因此,初始化过程必须是一次性的,并且是不可逆的,初始化单元在系统第一次加电的时候完成操作,操作过后必须进行自毁,以确保初始化过程的不可逆性。系统初次启动时,引导控制单元可以根据系统的配置文件检查系统是否第一次启动,若是,执行步骤210。210 :启动系统的初始化单元200。初始化单元200调用环境因子获取单元100进行环境信息的采集,生成环境因子,并将环境因子输入至加解密单元201。步骤213 :加解密单元201对非易失性存储介质300上的内核文件、镜像文件进行加密处理。本实施例中采用按位对称算法对设备中所选取的非易失性敏感数据进行加密。由于是按位操作,原始数据经过加密处理后其长度不发生任何变化,所以对原来的文件长度并没有任何的影响,保证了操作系统的稳定性,提高了设备的兼容性。加解密单元201完成加密操作之后会对已经加密的内核文件和镜像文件进行校验,校验完成,确认加密成功后,通知初始化单元100进入下一步动作215。步骤215 :初始化单元200进行自毁操作。[0066]自毁操作具体可以是,将初始化单元原有的数据存储空间进行数据擦除操作。删除数据的方法包括全零填充、全I填充、随机数填充等。自毁过程的最后阶段是将对引导控制单元配置文件进行修改,去掉初始化单元的相关信息,至此完成设备初始化过程。图2中虚线所示的步骤为设备初始化时所需执行的步骤。完成系统的初始化之后,再次加电启动设备,执行图3中实线所示的步骤。步骤216 :引导控制单元进入正常的启动过程,完成BIOS加载后直接调用环境因子获取单元100。步骤217 :环境因子获取单元100生成当前环境下的环境因子,输入至加解密单元201。步骤218 :加解密单元201利用当前环境下的环境因子对密文的内核和镜像文件进行解密加载,当解密成功时,允许访问设备中的数据,当解密失败时,拒绝访问设备中的数据。本实施例中当设备脱离安全环境启动后,可以采用多种相关操作,如利用报警通讯模块发送报警信息,报警信息可以为GPS信息、短信、彩信等多种信息,并可以通过各种网络通讯方式将报警信息传输出去;利用删除模块销毁所述敏感数据以禁止访问设备中的数据;或者,利用禁止启动模块,阻止所述设备启动安全环境下的操作系统,以拒绝访问所述设备中的数据;以及,利用允许启动模块,在加解密单元解密失败时,允许所述设备启动非安全环境下的操作系统,所述非安全环境下的操作系统对所述敏感数据是无法访问的。本实用新型实施例中,还提供了一种根据环境因素选择不同操作系统的进行启动的双系统设备。即在系统中设置至少两种操作系统,将其中一种操作系统与环境因子绑定,而另一种操作系统不与环境绑定的操作系统,可以根据需要,在不同操作系统中进行灵活切换。参见图3,在采用环境因子对设备中的非易失性敏感数据加密后,本实用新型实施例双系统设备启动的一种工作流程主要包括步骤41 :设备加电后,主引导程序(Master Boot Record, MBR)运行。步骤42 :主引导程序启动引导控制单元。主引导程序将引导控制单元的数据从非易失性存储介质中加载到内存并开始执行。步骤43 :引导控制单元将根据系统配置文件确定是否需要执行环境判定过程,若否,执行步骤44,若是,执行步骤45。步骤44:在不需要执行环境判定过程时,启动不与环境绑定的的第一操作系统(表示为0S1)。该第一操作系统不需要访问已加密的非易失性敏感数据,即该第一操作系统的启动和运行不需要上述已加密的非易失性敏感数据。步骤45 :在需要执行环境判定过程时,启动环境因子获取单元。环境因子获取单元会根据获取到的环境信息产生环境因子。步骤46 :加解密单元根据环境因子执行对密文的内核文件和镜像文件的解密操作,当确认解密成功后,执行步骤49,加载解密后的内核文件和镜像文件,启动与环境因素相绑定的操作系统0S2。当解密失败后,执行步骤47。[0083]步骤47 :判断是否需要报警操作,若是,执行步骤48。必要时,还可以破坏上述的非易失性敏感数据,保证设备不会在与环境绑定的操作系统下启动,以拒绝访问所述设备在该操作系统下的数据。步骤48 :启动报警通讯模块,发送报警信息。所述报警通讯模块可以为短信卡、彩信卡或全球定位系统GPS芯片中的一种或多种。本实施例提供的一种双系统操作机制还可以如图4所示。在初始化过程中,由初始化单元200在设备所支持的两种操作系统中选取一种操作系统与环境因素绑定,如将操作系统0S2与环境相绑定。当再次启动设备时,引导控制单元直接经环境确认过程判断设备是否工作在安全·的环境中,若是,启动安全环境下的操作系统(0S2),若否,贝U启动另一个未与环境相绑定的操作系统(OSl)。进一步的,本实施例还提供了一种环境与设备双向认证的机制,以保证系统具有更高的安全性。一方面利用环境因子将设备与环境绑定,要求设备在安全的环境中启动,另一方面,环境也可以对工作于其中的设备身份进行识别,仅允许合法身份的设备工作在该环境下。这时,本系统还包括环境监控服务器,该环境监控服务器预先采集合法设备在安全环境下的身份信息并保存。在每次启动当前设备之前,该环境监控服务器采集设备在当前环境下的身份信息,根据安全环境下所述设备的身份信息判断当前设备是否为合法设备,若是,允许所述设备接入安全环境,若否,禁止所述设备接入安全环境。该环境监控服务器可由单独的服务器设备实现,也可以集成在嵌入式设备中实现。上述处理方式不仅仅要求被保护的嵌入式设备通过一定的方式确认自己处在安全环境之中,也允许被定义的安全环境通过一定的方法(双向认证、设备视频监控)等方式确保存在于环境中的设备都是经过环境许可的设备,而不是被任意植入或者侵入的其他设备或逻辑单元。环境监控服务器和嵌入式设备之间可以采用公钥基础设施(Public KeyInfrastructure,PKI)认证机制。PKI机制是一种遵循既定标准的密钥管理技术,是一种能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理体系。环境监控服务器和嵌入式设备双方相互认证对方的证书是否有效,如果一方认证失败,那么即可认为嵌入式设备不是合法的安全设备,不进行允许该嵌入式设备的运行。本方案中上述的初始化单元、引导控制单元、环境因子获取单元和加解密单元和报警通讯模块等都可以硬件设备的方式实现,本方案只是采用了“单元” “模块”作为硬件设备的命名方式,以涵盖能够用以实现这些单元和模块的多种硬件设备,例如,本方案中的加解密单元可以为由加解密芯片实现,如宏思HS32U1系统级加密芯片,本方案中的报警通讯模块采用GPS报警方式时可以由SiRF III GPS芯片实现,采用短信报警方式时可以采用WAVEC0M的型号为M 1206B的短信卡实现。由上所述,本实用新型实施例通过在安全环境中提取安全环境因子并利用安全环境因子对设备中的非易失性敏感数据加密,从而能够将设备中的敏感数据与工作环境绑定,不同的工作环境将提取出不同的环境因子,因此一旦设备移出安全的工作环境,由于无法得到一致的环境因子而造成解密失败,进而通过拒绝访问设备中的数据降低数据泄露的风险。由于本方案无需增设额外的加密硬件设备,通过与环境绑定的加解密机制实现对设备中的非易失性敏感数据的保护,所以硬件成本较小,另外实施和部署本数据保护方案的操作也相对简单,专业性要求较低,降低了系统实施和部署的工作量及对人力资源的要求。以上所述仅为本实用新型的较佳实施例而已,并非用于限定本实用新型的保护范围。凡在本实用新型的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本实用新型的保护范围内。·
权利要求1.一种保护数据的设备,其特征在于,所述设备包括初始化单元、引导控制单元、环境因子获取单元和加解密单元,其中, 所述初始化单元在所述设备一次初始化过程中,通过环境因子获取单元根据安全环境下设备的环境信息获取环境因子,通过加解密单元利用安全环境下的环境因子对所述设备中的敏感数据进行加密;在确认加密成功后,所述初始化单元销毁所述环境因子; 所述引导控制单元在每次启动所述设备时,通过环境因子获取单元根据当前环境下设备的环境信息获取环境因子,通过加解密单元利用当前环境下的环境因子对所述已加密的敏感数据进行解密;当解密成功时,所述引导控制单元允许访问所述设备中的数据,当解密失败时,所述引导控制单元拒绝访问所述设备中的数据。
2.根据权利要求I所述的设备,其特征在于,所述设备还包括删除模块或者禁止启动模块, 所述删除模块,在加解密单元解密失败时销毁所述敏感数据; 所述禁止启动模块,在加解密单元解密失败时阻止所述设备启动安全环境下的操作系统。
3.根据权利要求I所述的设备,其特征在于,所述设备还包括报警通讯模块和/或允许启动模块, 所述报警通讯模块,在加解密单元解密失败时,发送报警信息; 所述允许启动模块,在加解密单元解密失败时,允许所述设备启动非安全环境下的操作系统,所述非安全环境下的操作系统对所述敏感数据是无法访问的。
4.根据权利要求3所述的设备,其特征在于, 所述报警通讯模块为短信卡、彩信卡或全球定位系统GPS芯片中的一种或多种。
5.根据权利要求I所述的设备,其特征在于, 所述保护数据的设备为嵌入式设备。
6.一种保护数据的系统,其特征在于,所述系统包括如权利要求I至5任一项所述的保护数据的设备和与该保护数据的设备相连接的环境信息提取单元。
7.根据权利要求6所述的系统,其特征在于,所述环境信息提取单元包括如下至少一种 提取设备的温度环境信息的温度采集器、提取设备的湿度环境信息的湿度采集器、提取设备的光照环境信息的光照采集器、提取设备使用者的生物特征信息的生物特征采集器、提取设备的物理环境图像信息的图像采集器、提取设备的网络环境信息的网络探测服务器、提取设备与网络服务器双向身份认证信息的认证服务器。
8.根据权利要求6或7所述的系统,其特征在于,所述系统还包括与所述保护数据的设备相连接的环境监控服务器。
专利摘要本实用新型公开了一种保护数据的设备和系统。本实用新型实施例提供了一种保护数据的设备,其中,初始化单元在设备一次初始化过程中,通过环境因子获取单元根据安全环境下设备的环境信息获取环境因子,通过加解密单元利用安全环境下的环境因子对设备中的敏感数据进行加密;在确认加密成功后,初始化单元销毁该环境因子;引导控制单元在每次启动设备时,通过环境因子获取单元根据当前环境下设备的环境信息获取环境因子,通过加解密单元利用当前环境下的环境因子对已加密的敏感数据进行解密;解密成功时,引导控制单元允许访问设备中的数据,解密失败时,引导控制单元拒绝访问设备中的数据。本方案所需的硬件成本较小且能够大大降低数据泄露的风险。
文档编号H04L29/06GK202795383SQ20122002579
公开日2013年3月13日 申请日期2012年1月19日 优先权日2012年1月19日
发明者姜斌斌 申请人:歌尔声学股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1