著录项信息
专利名称 | 一种基于android平台的有效且抗抵赖的摔倒救助方法及系统 |
申请号 | CN201510027920.7 | 申请日期 | 2015-01-20 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2015-05-13 | 公开/公告号 | CN104618467A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L29/08 | IPC分类号 | H;0;4;L;2;9;/;0;8;;;H;0;4;L;2;9;/;0;6;;;G;0;6;F;3;/;0;1查看分类表>
|
申请人 | 西安电子科技大学 | 申请人地址 | 陕西省西安市太白南路2号西安电子科技大学
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 西安电子科技大学 | 当前权利人 | 西安电子科技大学 |
发明人 | 曹进;牛犇;李晖;李凤华;王子龙;王莹娟;崔永林 |
代理机构 | 北京科亿知识产权代理事务所(普通合伙) | 代理人 | 汤东凤 |
摘要
本发明公开了一种基于android平台的有效且抗抵赖的摔倒救助方法及系统。用户使用身份信息进行注册;用户终端通过自适应学习得出摔倒特征数据;实时监测用户是否摔倒;发现用户摔倒,将带有签名的救助包广播给附近的用户并且向亲人发送求救信息;附近用户收到求救信息后可以主动进行救助,也可以选择成为作证者。本发明具有抗抵赖、用户隐私保护、抗重放、抗密钥泄漏攻击等安全性特点;旨在为主动帮助者提供真实可靠的救助证据,免除拔刀相助却反遭诬赖的后顾之忧,适用人群不限于老年人,可为各年龄用户提供便捷可靠的保健帮助。能够实时检测人体摔倒事件,第一时间进行自动的智能求助和救助处理,并为主动救助者提供抗抵赖的救助证据。
1.一种基于android平台的有效且抗抵赖的摔倒救助方法,其特征在于,该基于android平台的有效且抗抵赖的摔倒救助方法步骤如下:
步骤一,用户终端将用户的身份信息发送至服务器请求注册;
步骤二,用户终端通过自适应学习过程采集一定时间内用户正常活动的运动特征数据;并对采集到的用户运动特征数据进行处理,得出用于判断用户摔倒的特征数据;
步骤三,用户终端在后台自动地监测用户的实时运动特征数据,并根据由自适应学习得到的摔倒特征数据来判断用户是否摔倒;
步骤四,当检测到用户摔倒后,用户终端进行报警,同时生成救助包;
步骤五,在求助者附近的用户收到求助者所广播的救助包后,验证救助包的签名Sig;
步骤六,收到救助包的用户选择主动提供帮助;
步骤七,收到救助包的用户选择成为作证者,则向服务器发送求助者的救助包和作证申请;服务器收到该信息后,对其进行保存,留待以后作证使用;
用户终端将用户的身份信息发送至服务器请求注册;服务器收到注册请求后,对用户的身份信息进行验证;验证通过,则为用户生成用户账号UID、用于用户与服务器之间进行通信的对称密钥KA以及用于签名的非对称密钥(PKA,SKA),并发送给用户终端,否则丢弃;
当检测到用户摔倒后,用户终端进行报警,同时生成救助包;30秒内用户手动取消求助,则本次处理中止;否则,用户终端开启自动求助功能;首先,将生成的救助包上传至服务器,留作证据;然后,向周围的临近用户广播救助包,并向亲人发送求助信息;所述的救助包内容包括但不限于摔倒用户姓名name、电话号码tel、身份证号码id、发生摔倒的地理位置坐标loc、时间戳time、请求帮助信息req、经对称密钥KA加密过的摔倒用户病历和救助方法rec以及使用用户的私钥SKA对上述信息的签名Sig。
2.权利要求1所述的基于android平台的有效且抗抵赖的摔倒救助方法,其特征在于,在求助者附近的用户收到求助者所广播的救助包后,验证救助包的签名Sig;验证不通过,则处理结束;否则,用户终端处理用户后续的操作;收到救助包的用户选择主动救助,或提供作证,或忽略该救助包。
3.权利要求1所述的基于android平台的有效且抗抵赖的摔倒救助方法,其特征在于,收到救助包的用户选择主动提供帮助,则进行如下操作:
用户终端向服务器发送主动救助信息,所述的主动救助信息包括但不限于包括求助者的救助包和帮助者的账号UID,并请求主动救助;
服务器收到主动救助者的请求后,首先对主动救助者的身份进行验证,若验证不通过,则中止请求处理;否则进行后续处理,即向提供帮助者发送求助者的对称密钥KA,并保存提供帮助者的主动救助信息;提供帮助者收到KA后,解密求助者的病例和救助方法;
救助者前往求助者的摔倒现场实施救助。
4.权利要求1所述的基于android平台的有效且抗抵赖的摔倒救助方法,其特征在于,自适应学习过程如下:
步骤一,用户终端将自动收集用户在一段时间内的日常运动,静止、行走、跑步、锻炼、坐下、摔倒的特征数据,特征数据包括但不限于包括加速度、倾角、竖直方向位移、对应的时间;收集到足够的数据后,用户终端对所述的特征数据进行分析,并提供给摔倒检测算法的五个阈值,包括:跌落过程的最长持续时间FALL_PERIOD,触地瞬间的最长持续时间BUFFER_PERIOD,最低点合加速度值的最大上限MIN_UP_BOUND,最高点合加速度值的最低下限MAX_LOW_BOUND,以及初始状态合加速度偏离重力加速度GRAVITY的最大范围STATIC_RANGE;
步骤二,用户终端通过统计合加速度的最小值,得到最低点合加速度值的最大上限MIN_UP_BOUND;通过统计合加速度的最大值,得到最高点合加速度值的最低下限MAX_LOW_BOUND;通过统计合加速度在重力加速度GRAVITY周围的小范围波动情况,得到初始状态合加速度偏离重力加速度GRAVITY的最大范围STATIC_RANGE;通过统计连续的合加速度极小值和极大值之间的时间间隔,得到触地瞬间的最长持续时间BUFFER_PERIOD;通过统计满足初始状态的点和下一个单调递减到的极小值之间的时间间隔,得到跌落过程的最长持续时间FALL_PERIOD。
5.权利要求1所述的基于android平台的有效且抗抵赖的摔倒救助方法,其特征在于:
根据合加速度检测摔倒,当检测到摔倒特征时,判断用户发生了摔倒;
根据合加速度检测摔倒:根据合加速度判断摔倒需要找到三个关键的点,开始摔倒时刻的点A0、跌落过程结束时刻的点A1、触地瞬间结束时刻的点A2;以上三点满足:从A0到A1的跌落过程,合加速度单调递减且A1为最小值;从A1到A2的触地瞬间,合加速度单调递增且A2为最大值;算法流程述如下:
步骤一,初始化,设定当前检测状态为寻找起始点;
步骤二,由当前加速度传感器accelerometer返回的加速度值,计算合加速度值a;
步骤三,根据当前的检测状态,判断合加速度值a和当前寻找点的匹配度;a满足当前寻找点的加速度特征,则判断为找到当前寻找点,更新检测状态为寻找下一点,直至找到最高点;a不满足当前寻找点的特征,则对检测状态进行适当的回退;
步骤四,当检测到最高点时,摔倒检测成功,返回摔倒标志。
6.一种基于android平台的有效且抗抵赖的摔倒救助系统,其特征在于,该基于android平台的有效且抗抵赖的摔倒救助系统包括:服务器模块和智能终端模块;
服务器模块,用于对新用户进行注册并生成对称密钥和基于身份的公私钥对、为用户的救助包提供存档功能、为用户提供主动救助需要的被救助者私钥、以及对其他的用户请求进行处理,包括第一密码服务单元和用户请求处理单元;
第一密码服务单元,用于为用户生成密钥、为相关服务提供加密解密和签名验签的功能;密码服务单元接收并完成用户请求处理单元发送的密码业务请求,密码业务请求包括但不限于用户密钥的产生、查询、注销及更新操作,并对产生的密钥进行安全存储;
用户请求处理单元,用于对用户的各种请求进行处理,包括用户注册、救助包存档、救助申请、作证和更改密钥;
智能终端模块,用于对用户的个性化运动特征进行采集、监测用户运动特征并进行摔倒判断、生成带有签名的救助包、对信息进行编解码并与服务器模块和其他智能终端进行通信,其包括个性化设置与自适应学习单元、摔倒检测单元、第二密码服务单元、智能求助单元和救助/作证单元;
个性化设置与自适应学习单元,用于对智能终端模块进行个性化的初始化设置,与服务器模块通信进行新用户注册并为用户生成系统账号、非对称密钥对和对称密钥;通过采集用户日常生活中的运动特征来获得判断摔倒的特征数据;包括三部分:个人信息设置、注册及初始化、自适应学习;
摔倒检测单元,用于对用户的运动特征进行检测,根据用户在运动过程中合加速度的变化来判断用户是否摔倒;当检测到用户摔倒后,立即开启声音报警系统,在30秒内,用户未手动停止报警,则开启智能求助;
第二密码服务单元,用于负责管理服务器模块为用户生成的对称密钥和基于身份的公私钥对,对密钥的整个生命周期进行管理,并且进行加密解密服务和签名验签服务;
智能求助单元,用于自动生成原始的求助信息,然后调用密码服务单元的签名功能对原始求助信息使用用户的私钥进行签名,生成救助包,进行广播求助,最后,向亲人手机号码发送远程求助信息;
救助/作证单元,用于当移动终端开启蓝牙或者处于无线局域网中时,接收到其他用户广播的救助包;接收到救助包之后,提醒用户收到救助包,用户根据自身意愿选择是否主动提供救助,选择主动救助将成为救助者,选择作证将成为作证者。
一种基于android平台的有效且抗抵赖的摔倒救助方法及\n系统\n技术领域\n[0001] 本发明涉及基于android手机系统的移动互联网领域,尤其涉及一种基于android平台的有效且抗抵赖的摔倒救助方法及系统。\n背景技术\n[0002] 在我国人口老龄化不断加剧的大趋势下,对老年人进行及时高效的摔倒救助具有很高的经济价值和社会意义。然而由于一些历史案例的不良影响,国内目前普遍存在着老人摔倒在地而无人敢扶的社会现象,关于“老人摔倒扶不扶”的舆论争议不绝于耳,国家卫生部也发布了相关的技术指南,但这些仅仅是从道德和方法角度的指引,急需提出基于科技手段的切实可行的摔倒救助方案。\n[0003] 目前国内外已经存在很多种摔倒检测方法,概括起来大致可以分为三类:视频检测、身体周边环境设备检测和可穿戴设备检测方法。其中,基于视频的摔倒检测一般使用在居家环境中,对使用场景的依赖性很高,不具有普遍适用性;基于身体周边环境设备的摔倒检测基本都使用了压力传感器,但是只能在有相应压力传感器和判断电路设备的场所进行摔倒检测,普遍适用性也比较低;基于可穿戴设备的摔倒检测具有很大的优势,可随身携带,随时随地进行摔倒检测,对环境的依赖性低,普遍适用性强。因此,比较适合大范围应用。然而,其也有不足之处,相比于前两种方法,对人体的干预性较强,必须固定于人体某些部位,在相对位置发生改变的时候,可能导致测量结果不准确。此外,现有方法并没有考虑到摔倒者被救之后抵赖自己被救助,并诬陷救助者为伤害者的情况,因此需要提出一种抗抵赖的摔倒安全救助方案。\n发明内容\n[0004] 本发明目的在于能够实时检测人体摔倒事件,在人体摔倒的第一时间进行自动的智能求助和救助处理,并为主动救助者提供抗抵赖的救助证据;从而能 够保证摔倒者在第一时间被救助,将损失降到最低点;还能够有效地减少无人敢扶的现象,保障救助者的利益不受到侵害。\n[0005] 实现本发明目的技术方案是:基于android平台的有效且抗抵赖的摔倒救助方法,该基于android平台的有效且抗抵赖的摔倒救助方法步骤如下:\n[0006] 步骤一,用户终端将用户的身份信息发送至服务器请求注册;\n[0007] 步骤二,用户终端通过自适应学习过程采集一定时间内用户正常活动的运动特征数据;并对采集到的用户运动特征数据进行处理,得出用于判断用户摔倒的特征数据;\n[0008] 步骤三,用户终端在后台自动地监测用户的实时运动特征数据,并根据由自适应学习得到的摔倒特征数据来判断用户是否摔倒;\n[0009] 步骤四,当检测到用户摔倒后,用户终端进行报警,同时生成救助包;\n[0010] 步骤五,在求助者附近的用户收到求助者所广播的求救包后,验证求助包的签名Sig;\n[0011] 步骤六,收到广播信息的用户选择主动提供帮助;\n[0012] 步骤七,收到求助包的用户选择成为作证者,则向服务器发送求助者的求救包和作证申请;服务器收到该信息后,对其进行保存,留待以后作证使用。\n[0013] 进一步,用户终端将用户的身份信息发送至服务器请求注册;服务器收到注册请求后,对用户的身份信息进行验证;验证通过,则为用户生成用户账号UID、用于用户与服务器之间进行通信的对称密钥KA以及用于签名的非对称密钥(PKA,SKA),并发送给用户终端,否则丢弃。\n[0014] 进一步,当检测到用户摔倒后,用户终端进行报警,同时生成救助包;30秒内用户手动取消求助,则本次处理中止;否则,用户终端开启自动求助功能;首先,将生成的求救包上传至服务器,留作证据;然后,向周围的临近用户广播求救包,并向亲人发送求救信息;所述的求救包内容包括但不限于摔倒用户姓名name、电话号码tel、身份证号码id、发生摔倒的地理位置坐标loc、时间戳time、请求帮助信息req、经对称密钥加密过的摔倒用户病历和救助方法rec 以及使用用户的私钥SKA对上述信息的签名Sig。\n[0015] 进一步,在求助者附近的用户收到求助者所广播的求救包后,验证求助包的签名Sig;验证不通过,则处理结束;否则,用户终端处理用户后续的操作;收到求救信息的用户选择主动救助,或提供作证,或忽略该信息。\n[0016] 进一步,收到广播信息的用户选择主动提供帮助,则进行如下操作:\n[0017] 用户终端向服务器发送主动救助信息,所述的主动救助信息包括但不限于包括求助者的救助包和帮助者的账号UID,并请求主动救助;\n[0018] 服务器收到主动救助者的请求后,首先对主动救助者的身份进行验证,若验证不通过,则中止请求处理;否则进行后续处理,即向提供帮助者发送求助者的对称密钥KA,并保存提供帮助者的主动救助信息;提供帮助者收到KA后,解密求助者的病例和救助方法;\n[0019] 救助者前往求救者的摔倒现场实施救助。\n[0020] 进一步,自适应学习过程如下:\n[0021] 步骤一,用户终端将自动收集用户在一段时间内的日常运动,静止、行走、跑步、锻炼、坐下、摔倒的特征数据,特征数据包括但不限于包括加速度、倾角、竖直方向位移、对应的时间;收集到足够的数据后,用户终端对所述的特征数据进行分析,并提供给摔倒检测算法的五个阈值:包括跌落过程的最长持续时间FALL_PERIOD,触地瞬间的最长持续时间BUFFER_PERIOD,最低点合加速度值的最大上限MIN_UP_BOUND,最高点合加速度值的最低下限MAX_LOW_BOUND,以及初始状态合加速度偏离GRAVITY的最大范围STATIC_RANGE;\n[0022] 步骤二,用户终端通过统计合加速度的最小值,得到最低点合加速度值的最大上限MIN_UP_BOUND;通过统计合加速度的最大值,得到最高点合加速度值的最低下限MAX_LOW_BOUND;通过统计合加速度在重力加速度GRAVITY周围的小范围波动情况,得到初始状态合加速度偏离GRAVITY的最大范围STATIC_RANGE;通过统计连续的合加速度极小值和极大值之间的 时间间隔,得到触地瞬间的最长持续时间BUFFER_PERIOD;通过统计满足初始状态的点和下一个单调递减到的极小值之间的时间间隔,得到跌落过程的最长持续时间FALL_PERIOD。\n[0023] 进一步,根据合加速度检测摔倒,当检测到摔倒特征时,判断用户发生了摔倒;\n[0024] 根据合加速度检测摔倒:根据合加速度判断摔倒需要找到三个关键的点,开始摔倒时刻的点A0、跌落过程结束时刻的点A1、触地瞬间结束时刻的点A2;以上三点满足:从A0到A1的跌落过程,合加速度单调递减且A1为最小值;从A1到A2的触地瞬间,合加速度单调递增且A2为最大值;算法流程述如下:\n[0025] 步骤一,初始化,设定当前检测状态为寻找起始点;\n[0026] 步骤二,由当前加速度传感器accelerometer返回的加速度值,计算合加速度值a;\n[0027] 步骤三,根据当前的检测状态,判断合加速度值a和当前寻找点的匹配度;a满足当前寻找点的加速度特征,则判断为找到当前寻找点,更新检测状态为寻找下一点,直至找到最高点;a不满足当前寻找点的特征,则对检测状态进行适当的回退;\n[0028] 步骤四,当检测到最高点时,摔倒检测成功,返回摔倒标志。\n[0029] 本发明的目的在于提供一种基于android平台的有效且抗抵赖的摔倒救助系统,该基于android平台的有效且抗抵赖的摔倒救助系统包括:服务器模块和智能终端模块;\n[0030] 服务器模块,用于对新用户进行注册并生成对称密钥和基于身份的公私钥对、为用户的求助信息提供存档功能、为用户提供主动救助需要的被救助者私钥、以及对其他的用户请求进行处理,包括密码服务单元和用户请求处理单元;\n[0031] 密码服务单元,用于为用户生成密钥、为相关服务提供加密解密和签名验签的功能;密码服务单元接收并完成用户请求处理单元发送的密码业务请求,密码业务请求包括但不限于用户密钥的产生、查询、注销及更新操作,并对产 生的密钥进行安全存储;\n[0032] 用户请求处理单元,用于对用户的各种请求进行处理,包括用户注册、求助包存档、救助申请、作证和更改密钥;\n[0033] 智能终端模块,用于对用户的个性化运动特征进行采集、监测用户运动特征并进行摔倒判断、生成带有签名的求助信息、对信息进行编解码并与服务器和其他智能终端进行通信,其包括个性化设置与自适应学习单元、摔倒检测单元、密码服务单元、智能求助单元和救助/作证单元;\n[0034] 个性化设置与自适应学习单元,用于对智能终端模块进行个性化的初始化设置,与服务器通信进行新用户注册并为用户生成系统账号、非对称密钥对和对称密钥;通过采集用户日常生活中的运动特征来获得判断摔倒的特征数据;包括三部分:个人信息设置、注册及初始化、自适应学习;\n[0035] 摔倒检测单元,用于对用户的运动特征进行检测,根据用户在运动过程中合加速度的变化来判断用户是否摔倒;当检测到用户摔倒后,立即开启声音报警系统,在30秒内,用户未手动停止报警,则开启智能求助;\n[0036] 密码服务单元,用于负责管理服务器为用户生成的对称密钥和基于身份的公私钥对,对密钥的整个生命周期进行管理,并且进行加密解密服务和签名验签服务;\n[0037] 智能求助单元,用于自动生成原始的求助信息,然后调用密码服务单元的签名功能对原始求助信息使用用户的私钥进行签名,生成广播求助包,进行广播求助,最后,向亲人手机号码发送远程求助信息;\n[0038] 救助/作证单元,用于当移动终端开启蓝牙或者处于无线局域网中时,接收到其他用户广播的求救信息;接收到求救信息之后,提醒用户收到求救信息,用户根据自身意愿选择是否主动提供救助,选择主动救助将成为救助者,选择作证将成为作证者。\n[0039] 本发明由此出发,研究与设计了一种基于android平台的有效且抗抵赖的摔倒救助方法及系统,软件的主要功能是实时检测人体摔倒事件,在人体摔倒的 第一时间进行自动的智能求助和救助处理,并为主动救助者提供抗抵赖的救助证据。具有如下优点:\n[0040] (1)通过系统的自适应学习能够得到有效的判断摔倒的门限值;因为这个门限值是通过分析用户的运动特征而得到的,所以门限值因人而异,这样就能更能准确地判断用户跌倒与否;\n[0041] (2)提出了自主的摔倒检测算法;该算法由根据合加速度检测摔倒。当合加速度大于由自适应学习得到的门限值时,判断为摔倒。\n[0042] (3)当检测到用户摔倒时,系统会自动开启蓝牙或者通过无线局域网向周围用户广播求助包,使摔倒者得到第一时间的救助,从而将损失降为最低;\n[0043] (4)该发明具有高效的抗抵赖性:在广播求助过程中,摔倒用户将带签名的求助信息通过蓝牙或者局域网广播给附近的用户,该签名具有高效的抗抵赖性;并且若用户选择成为作证者后,会将其接收到的求助信息发送给服务器,可用于日后提供作证依据,这样就进一步保证了主动救助者的利益不受侵害;\n[0044] (5)在进行救助时,救助者会收到摔倒者的病例与相关的救助方法,这样就能够更有效的对摔倒者进行救助,从而减小损失。\n附图说明\n[0045] 图1是实施例一的完整工作流程图。\n具体实施方式\n[0046] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。\n[0047] 下面将结合附图及实施例对本发明的技术方案进行更详细的说明。\n[0048] 需要说明的是,如果不冲突,本发明的各个特征可以相互结合,均在本发明的保护范围内;另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。\n[0049] 实施例一、本发明所提出的一种基于android平台的有效且抗抵赖的摔倒救助方法,如图1所示,包括如下七个步骤:\n[0050] (1)用户终端将用户的身份信息发送至服务器请求注册;服务器收到注册请求后,对用户的身份信息进行验证,如果验证通过,则为用户生成用户账号UID、用于用户与服务器之间进行通信的对称密钥KA以及用于签名的非对称密钥(PKA,SKA),并发送给用户终端,否则丢弃;\n[0051] (2)用户终端通过自适应学习过程采集一段时间内用户正常活动的运动特征;并对采集到的用户运动特征数据进行处理,得出用于判断用户摔倒的特征数据;\n[0052] (3)用户终端在后台自动地监测用户的实时运动特征数据,并根据由自适应学习得到的摔倒特征数据来判断用户是否摔倒;\n[0053] (4)当检测到用户摔倒后,用户终端进行报警,同时生成救助包;若30秒内用户手动取消求助,则本次处理中止;否则,用户终端开启自动求助功能;首先,将生成的求救包上传至服务器,留作证据;然后,向周围的临近用户广播求救包并向亲人发送求救信息;所述的求救包内容包括但不限于包括摔倒用户姓名name、电话号码tel、身份证号码id、发生摔倒的地理位置坐标loc、时间戳time、请求帮助信息req、经对称密钥加密过的摔倒用户病历和救助方法rec以及使用用户的私钥SKA对上述信息的签名Sig;\n[0054] (5)在求助者附近的用户收到求助者所广播的求救包后,验证求助包的签名Sig,若验证不通过,则处理结束;否则,用户终端处理用户后续的操作;收到求救信息的用户可以选择主动救助,或提供作证,或忽略该信息;\n[0055] (6)如果收到广播信息的用户选择主动提供帮助,则进行如下操作:\n[0056] 1)用户终端向服务器发送主动救助信息,所述的主动救助信息包括但不限于包括求助者的救助包和帮助者的账号UID,并请求主动救助;\n[0057] 2)服务器收到帮助者的请求后,向提供帮助者发送求助者的对称密钥KA,并保存提供帮助者的主动救助信息;提供帮助者收到KA后,解密求助者 的病例和救助方法;\n[0058] 3)救助者前往求救者的摔倒现场实施救助;\n[0059] (7)若收到求助包的用户选择成为作证者,则向服务器发送求助者的求救包和作证申请;服务器收到该信息后,对其进行保存,留待以后作证使用。\n[0060] 本实施例中,步骤(1)所述的用户身份信息包括但不限于包括姓名name、电话号码tel、身份证号码id、用户口令pwdA、亲人号码、病例record和急救方法;其中姓名、电话号码、身份证号码信息将被用于生成基于身份的数字签名。\n[0061] 本实施例中,步骤(2)所述的自适应学习如下:初次使用时,用户终端将自动收集用户在一段时间内的日常运动,如静止、行走、跑步、锻炼、坐下、摔倒等的特征数据,还有加速度、倾角、竖直方向位移、对应的时间等;收集到足够的数据后,用户终端自动对这些数据进行分析,得到判决摔倒的门限值,作为以后的摔倒判断依据;用户也可以在使用过程中,根据摔倒检测准确度,开启自适应学习功能,重新进行学习;\n[0062] 本实施例中,自适应学习提供给摔倒检测算法的是五个阈值:跌落过程的最长持续时间FALL_PERIOD,触地瞬间的最长持续时间BUFFER_PERIOD,最低点合加速度值的最大上限MIN_UP_BOUND,最高点合加速度值的最低下限MAX_LOW_BOUND,以及初始状态合加速度偏离GRAVITY的最大范围STATIC_RANGE;用户终端通过统计合加速度的最小值,可以得到最低点合加速度值的最大上限MIN_UP_BOUND;通过统计合加速度的最大值,可以得到最高点合加速度值的最低下限MAX_LOW_BOUND;通过统计合加速度在重力加速度GRAVITY周围的小范围波动情况,可以得到初始状态合加速度偏离GRAVITY的最大范围STATIC_RANGE;通过统计连续的合加速度极小值和极大值之间的时间间隔,可以得到触地瞬间的最长持续时间BUFFER_PERIOD;通过统计满足初始状态的点和其下一个单调递减到的极小值之间的时间间隔,可以得到跌落过程的最长持续时间FALL_PERIOD;\n[0063] 本实施例中,步骤(3)所使用的摔倒检测算法如下:\n[0064] 把跌倒过程定义为两个连续的过程:跌倒过程与触地瞬间;\n[0065] 定义跌落过程:人体受到外界环境因素或内在因素影响而发生摔倒时,从静止状态或一般运动状态到摔倒落地瞬间之前的过程;该过程的特征为:用户因不自主跌落而产生失重现象;\n[0066] 定义触地瞬间:人体摔倒过程中,跌落过程结束时人体与地面碰撞的瞬间;该过程的特征为:短时间内身体与地面的剧烈撞击导致合加速度瞬间反向并达到一个极大值;\n[0067] 根据以上分析,可以利用跌落过程和触地瞬间这两段连续的过程中表现出来的鲜明特征来作为摔倒的判断依据;此外,由于用户在做剧烈运动时,也可能产生具有同样特征的数据,所以引入用户身高作为判断摔倒的另一个依据;在本实施例中,一般认为当检测到合加速度的摔倒特征,且用户随身携带的智能终端设备在竖直方向的位移超过身高的一半时,才判断为发生了摔倒;所以,判断用户摔倒的依据为:\n[0068] i.在短时间内连续检测到了跌落过程和摔倒瞬间的加速度特征;\n[0069] 根据合加速度检测摔倒:此算法需要找到三个关键的点,开始摔倒时刻的点A0:该点用两个值来描述:加速度值a0和当前时刻t0;并且a0在起始点加速度范围[GRAVITY-STATIC_RANGE,GRAVITY+STATIC_RANGE]内;\n[0070] 跌落过程结束时刻的点A1:该点用两个值来描述:加度值a1和当前时刻t1;并且a1不大于最低点加速度上界MIN_UP_BOUND,t1-t0不大于跌落过程时长上限FALL_PERIOD;\n[0071] 触地瞬间结束时刻的点A2:该点用两个值来描述:加速度值a2和当前时刻t2;并且a2不小于最高点加速度下界MAX_LOW_BOUND,t2-t1不小于触地瞬间时长上限BUFFER_PERIOD;\n[0072] 以上三点满足:从A0到A1的跌落过程,合加速度单调递减且A1为最小值; 从A1到A2的触地瞬间,合加速度单调递增且A2为最大值;其算法流程述如下:\n[0073] a)初始化,设定当前检测状态为寻找起始点;\n[0074] b)根据当前加速度传感器accelerometer返回的加速度值,计算合加速度值a;\n[0075] c)根据当前的检测状态,判断合加速度值a和当前寻找点的匹配度;若a满足当前寻找点的加速度特征,则判断找到当前寻找点,更新检测状态为寻找下一点,直至找到最高点;若a不满足当前寻找点的特征,则对检测状态进行适当的回退;\n[0076] d)当检测到最高点时,摔倒检测成功,返回摔倒标志。\n[0077] 本实施例中,步骤(6)所述的救助者申请救助的流程所示,流程如下:\n[0078] (1)向服务器发送救助申请,申请消息的内容包括求救者A的系统账号UIDA和附加内容req;为了防止消息重放,救助者B的系统生成一个随机数r,计算gr;为了和服务器之间进行相互认证,使用救助者B的对称密钥对消息计算密钥相关的消息认证码,计算mac1=HMAC(KB,UIDB||UIDA||req||gr),最终将消息UIDB||UIDA||req||gr||mac1发送给服务器;\n[0079] (2)服务器接收到B的救助申请UIDB’||UIDA’||req’||gr’||mac1’后,首先根据救助者B的系统账号UIDB’查找到救助者的对称密钥KB,然后计算HMAC(UIDB’||UIDA’||req’||gr’),并验证是否与mac1'相等;若验证通过,则B为所声称的合法用户,执行第(3)步;否则,中止响应处理;\n[0080] (3)服务器根据UIDA’从数据库中查找求助者A的对称密钥KA,并生成应答附加消息res;然后,生成随机数s并计算gs和grs;为了避免救助者的申请消息被窃听而导致的密钥泄漏,为救助者B生成新的密钥KB,作为应答消息的一部分,并使用grs加密应答消息,生成Ers s rs\n(g ,KA||KB’||res);接着计算mac2=HMAC(KB,g ||E(g ,KA||KB’||res));最终将应答消息gs||E(grs,KA||KB’||res)||mac2发送给救助者。\n[0081] (4)救助者B收到服务器的应答消息gs’||E(grs,KA||KB’||res)’||mac2’后,首 先计算HMAC(KB,gs’||E(grs,KA||KB’||res)’)验证消息的完整性,若验证通过,则进入第(5)步。\n[0082] (5)救助者通过计算gs’r,使用其解密E(grs,KA||KB’||res)’,得到KA和KB’,并将其对称密钥更新为KB’。\n[0083] (6)救助者使用KA解密求助者A的病例和救助方法,进行帮助;\n[0084] 如果收到求助信息的用户选择成为作证者,则向服务器发送作证申请和求助者A的求救包;服务器收到该信息后,对其进行保存;留待以后作证使用;\n[0085] 实施例二、一种基于android平台的有效且抗抵赖的摔倒救助系统,包括两大模块:服务器模块与智能终端模块;\n[0086] 其中,服务器模块包括两个单元:\n[0087] 密码服务单元:主要用于为用户生成密钥、为相关服务提供加密解密和签名验签的功能;密码服务单元接收并完成用户请求处理单元发送的密码业务请求,该业务请求包括但不限于用户密钥的产生、查询、注销及更新操作,并对产生的密钥进行安全存储;\n[0088] 用户请求处理单元:对用户的各种请求进行处理,包括但不限于:用户注册、求助包存档、救助申请、作证和更改密钥。\n[0089] 其中,智能终端模块包括五个单元:\n[0090] 个性化设置与自适应学习单元:对智能终端模块进行个性化的初始化设置,与服务器通信进行新用户注册并为用户生成系统账号、非对称密钥对和对称密钥,通过采集用户日常生活中的运动特征来获得判断摔倒的特征数据。该单元包括三部分:个人信息设置、注册及初始化、自适应学习;\n[0091] 摔倒检测单元:对用户的运动特征进行检测,根据用户在运动过程中合加速度的变化来判断用户是否摔倒;当检测到用户摔倒后,立即开启声音报警系统,若在30秒内,用户未手动停止报警,则开启智能求助;\n[0092] 密码服务单元:负责管理服务器为用户生成的对称密钥和基于身份的公私 钥对,对密钥的整个生命周期进行管理,并且进行加密解密服务和签名验签服务;\n[0093] 智能求助单元:自动生原始的求助信息,然后调用密码服务单元的签名功能对原始求助信息使用用户的私钥进行签名,生成广播求助包,进行广播求助,最后,向亲人手机号码发送远程求助信息;\n[0094] 救助/作证单元:当移动终端开启蓝牙功能或者处于无线局域网中时,可以接收到其他用户广播的求救信息。接收到求救信息之后,提醒用户收到求救信息,用户根据自身意愿选择是否主动提供救助,选择主动救助将成为救助者,选择作证将成为作证者;\n[0095] 最后:本发明的效果可通过以下分析进一步说明:\n[0096] 本发明的安全性分析如下:\n[0097] (1)抗抵赖性\n[0098] 在该方案中,只有经服务器认证过的具有合法真实身份的摔倒者拥有和其身份信息相匹配的私钥,因此只有真实身份相对应的主体才能够产生正确的签名,故签名具有不可否认性,即摔倒者不能抵赖其所生成的数字签名。\n[0099] (2)隐私保护性\n[0100] 当用户摔倒时,其病例和急救方法以密文的信息广播给临近用户,只有本系统中的合法用户能够通过服务器获取摔倒者的对称密钥,解密并访问到用户的病例和急救方法;此外,在系统中每个用户都有一个系统账号作为假名,可有效保护用户的隐私。\n[0101] (3)相互认证与密钥协商\n[0102] 申请救助者B和服务器之间的相互认证通过HMAC算法来实现,其中HMAC的密钥为B的对称密钥KB,该密钥仅为用户B和服务器所知,可以用来认证双方的身份;密钥协商基于DH(Diffie-Hellman)[i]密钥交换协议,可归于CDH问题。B选择秘密的随机数r并计算gr,服务器选择秘密的随机数s并计算gs,仅B和服务器能够计算并使用会话密钥grs,攻击者猜测会话密钥的难度 相当于求解CDH问题的难度,并且对整条消息附加了HAMC消息认证码,保证了会话密钥的不可篡改性。\n[0103] (4)抗中间人攻击\n[0104] 由于HMAC的计算过程中使用了用户B的对称密钥,该密钥只有用户B和服务器知道,所以中间人尝试发送假的服务器消息给用户B将不能成功。\n[0105] (5)抗消息重放\n[0106] 当攻击者窃听到申请救助者B的申请消息,并在之后尝试进行重放攻击时,服务器可以根据消息包中的随机数来判断该包是否是最新的数据包;并且,由于申请救助包中的随机数在每次用户B与服务器的相互认证过程中,都会被重新选择,故重放攻击对本方案无效。\n[0107] (6)抗密钥泄漏攻击\n[0108] 假如攻击者在B发送申请救助消息的过程中窃听到该消息,并使用某种手段猜测到了B的对称密钥KB,然后尝试使用B的对称密钥解密服务器发送给B的消息。此时,由于B和服务器在相互认证和密钥协商阶段已经协商了临时的会话密钥grs,并且服务器为B生成了新的对称密钥KB’,攻击者所持有的旧密钥KB将失效。此外,对于密钥意外泄露的情况,用户可以手动向服务器申请更换新的密钥。因此,本方案抗密钥泄漏攻击。\n[0109] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
法律信息
- 2018-12-14
- 2015-06-10
实质审查的生效
IPC(主分类): H04L 29/08
专利申请号: 201510027920.7
申请日: 2015.01.20
- 2015-05-13
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2012-09-26
|
2012-05-11
| | |
2
| |
2014-02-05
|
2013-11-18
| | |
3
| |
2014-03-26
|
2013-12-05
| | |
4
| |
2014-08-06
|
2014-05-20
| | |
5
| |
2013-05-08
|
2011-10-27
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |