CN111742313A - 用于隐私保留上下文认证的系统、装置及方法 - Google Patents

用于隐私保留上下文认证的系统、装置及方法 Download PDF

Info

Publication number
CN111742313A
CN111742313A CN201980013551.2A CN201980013551A CN111742313A CN 111742313 A CN111742313 A CN 111742313A CN 201980013551 A CN201980013551 A CN 201980013551A CN 111742313 A CN111742313 A CN 111742313A
Authority
CN
China
Prior art keywords
user
context data
data
sets
anonymized
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201980013551.2A
Other languages
English (en)
Other versions
CN111742313B (zh
Inventor
P·麦纳里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wansi Co ltd
Original Assignee
Wansi Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wansi Co ltd filed Critical Wansi Co ltd
Publication of CN111742313A publication Critical patent/CN111742313A/zh
Application granted granted Critical
Publication of CN111742313B publication Critical patent/CN111742313B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/316User authentication by observing the pattern of computer usage, e.g. typical user behaviour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/00502
    • H04W12/00503
    • H04W12/00504
    • H04W12/00508

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Bioethics (AREA)
  • Medical Informatics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Social Psychology (AREA)
  • Power Engineering (AREA)
  • Databases & Information Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

公开了用于基于上下文数据以隐私保留方式对用户进行认证的方法和系统。

Description

用于隐私保留上下文认证的系统、装置及方法
发明领域
本发明涉及保护用户与基于计算机的应用的交互,诸如保护通过计算机网络对计算机和应用以及远程事务的远程访问。更具体而言,本发明涉及基于上下文数据来对用户进行认证、同时保留用户的隐私。
发明背景
随着对计算机系统和应用的远程访问的普及性增长,通过公共网络(诸如因特网)远程访问的事务的数目和种类已急剧增加。这种普及性已强调对安全性的需求;具体而言:如何确保正在远程访问(远程)应用的人是他们所声称的人,如何确保正在远程进行的事务是由合法个人发起的,以及如何确保事务数据在远程应用处被接收到之前未被改动。
在一些情形中,用户可能正在使用例如可与该用户相关联的客户端计算设备来访问远程应用并与其交互。客户端计算设备可包括用户的可与该用户相关联的个人计算设备,诸如用户的智能手表、智能眼镜、智能电话、平板或个人计算机(PC)。客户端计算设备可通过网络(诸如因特网)连接到可主存远程应用的远程服务器计算机。用户可例如使用客户端计算设备来登录远程应用、和/或访问由远程应用管理的信息(例如,通过读取、提交或改变此类信息)、和/或向远程应用提交事务请求和/或批准由远程应用提议的或提交给远程应用的事务。在下文中,客户端计算设备还可被称为个人客户端计算设备、访问设备、或简称为客户端设备。
为了保护用户对远程应用的访问或者为了保护用户与远程应用的交互,远程应用可依赖于认证系统来对该远程应用的用户进行认证。为了对特定用户进行认证,可以使用各种技术。例如,对用户进行认证的一种方式是使用户向认证系统传达秘密,诸如用户和认证系统两者都知道的密码或PIN(个人标识号)。对用户进行认证的另一种方式是使认证系统获得对用户的生物特定特性的测量并将该测量与该用户的该生物特定特性的参考模板进行比较。对用户进行认证的又一种方式是使认证系统接收已由认证设备(诸如智能卡、强认证令牌或具有认证app的智能电话)生成的动态凭证并验证其有效性,其中该认证设备与该用户相关联并且用对于该用户而言唯一性的秘密值进行个性化,籍此动态凭证可由认证设备使用以该秘密值进行参数化的密码算法来生成,例如通过将该秘密值与动态变量的值(诸如举例而言时间值、可由认证系统生成或提供的挑战、事务数据、和/或可由认证设备维持并自动更新的计数器的值)以密码方式进行组合来生成。
上面提及的认证方法的共同之处在于,它们一般往往要求(在某种程度上)在对正被认证的用户的认证过程中的积极参与和协作,例如通过要求用户提供密码或传达动态凭证,或将身体部位(如手指)呈现给生物测定传感器(如指纹传感器)以实现生物测定测量。虽然在一些情况下用户的这种积极参与和协作可能不会有问题,但在其他情况下,要求用户在认证过程中承担积极作用可能被认为对于用户而言太繁琐或太不方便。
对用户进行认证而不要求该用户在认证过程中承担积极和自觉作用的替换方式是使认证系统获得与正被认证的用户相关联的一系列上下文数据,并且分析该上下文数据并确定所获得的上下文数据与正被认证的用户声称的人相一致的程度。
上下文数据可包括处于或接近认证时刻的数据,但还可包括认证时刻之前的数据。上下文数据可包括时间(例如某些用户动作的时间,诸如登录或访问尝试的时间)、与用户正在使用的访问设备自身有关的数据(其在下文中可被称为设备数据)、与用户(或者作为代理,用户的访问设备)正处于或已处于的环境有关的数据(其在下文中可被称为位置数据)、或与用户正在进行行动或表现或近期已经进行行动或表现的方式有关的行为数据(其在下文中可被称为行为数据)。各种上下文数据可与处于、接近或远早于认证时刻的时间相关联。
位置数据的示例可包括用户(或用户的访问设备)所在的物理位置的(地理)坐标,如可由用户的访问设备的卫星导航(诸如GPS(全球定位系统)或伽利略定位系统)传感器给出的。位置数据的示例还可包括与用户的访问设备附近的(诸)无线局域网(例如Wi-Fi)接入点、蓝牙设备、或移动电话或移动数据网络和/或网络基站有关的信息,用户的访问设备知晓附近的这些设备和/或正在使用这些设备、或连接到这些设备、或正在与这些设备进行通信。位置数据的其他示例可包括与用户(或用户的访问设备)所在位置的环境的物理特性有关的数据,诸如温度、大气压力、当地重力加速度、声级、照明强度、放射性强度等等。这些位置数据中的至少一些可例如由可被包括在用户的访问设备中、附连至用户的访问设备或者用户的访问设备可访问的(本地)传感器捕获。
设备数据的示例可包括访问设备的IMEI(国际移动装备身份)和IMSI(国际移动订户身份),与访问设备的设备型号或类型和版本的硬件和/或软件配置有关的数据,运行在访问设备上的操作系统的类型和版本,安装和/或运行在访问设备上的任何应用或app的名称或类型和版本。
行为数据的示例可例如包括用户近期(例如前一天或上周)已使用的app或应用,用户已使用这些app或应用的绝对或相对时间量,以及用户何时使用了哪一app或应用(app使用模式);以及用户已作出了哪些电话呼叫,这些电话呼叫持续了多久,以及用户何时作出这些电话呼叫(电话呼叫模式)。
在本描述的上下文中,术语‘上下文数据’不指代生物测定数据。生物测定数据(诸如用户的指纹、虹膜图案或手掌图案)往往独立于用户所处的上下文(在时间和/或空间上)并且因此在本描述的上下文中不被认为是上下文数据。
包括对本文的本发明的背景的讨论是为了解释本发明的上下文。这不应被认为是承认上面讨论的任何材料在本申请的优先权日已被出版、已知或作为公知常识的一部分。
发明的公开
技术问题
依赖于上下文数据的认证系统可能出现的问题在于,许多用户可能感到,与他们相关的并由认证系统使用的至少一些上下文数据从隐私角度而言可能是敏感的,并且出于该原因,许多用户可能不情愿或者甚至不愿意允许这种认证系统访问并使用该数据,因为害怕他们的隐私可能会受到侵犯。例如,许多用户可能不愿意允许认证系统具有关于他们的行踪或关于他们已访问的(其他)应用或网站的知识。
需要一种不损害被认证用户的隐私的、基于个人上下文数据来对该用户进行认证的解决方案。
技术方案
前述问题的一种解决方案是在本描述其余部分中描述的本发明。
发明人已认识到,出于认证目的可以对上下文数据进行,并不真正取决于实际上下文数据值自身而是取决于上下文数据集合中的模式的大量分析,而在许多情形中隐私问题与实际上下文数据值自身相关。
对上下文数据的隐私保留变换
发明人已进一步认识到,如果在分析上下文数据之前以使得变换在实践中是单向或不可逆的(即,从计算角度而言容易进行变换(即,从原始数据计算经变换数据),但难以取消或逆转该变换(即,从对应的经变换数据计算原始数据))、但变换保留上下文数据值之间的某些模式或关系的方式来对上下文数据进行变换,则仍然可以实现有意义的认证分析而不需要向分析实体传达隐私敏感数据。在下文中,对上下文数据元素的单向的、但保留某些信息模式或关系的这种变换在本描述的其余部分可以被称为对上下文数据元素的匿名化。
恒等关系保留变换
发明人已进一步认识到,在许多情形中,要保留的关系可以是特定的上下文数据值是否与另一特定的上下文数据值相同的关系。在下文中这种关系可以被称为恒等关系(identity relation)。即,如果匿名化变换将恰好相同的两个值变换成相同的变换值,并且该匿名化变换将恰好不同的两个值变换成两个不同的变换值,则该匿名化变换保留恒等关系。这种变换可以被称为恒等关系保留变换或(简称为)恒等保留变换。在一些实施例中,由恒等保留变换保留的恒等关系是两个数据值在措辞的狭义上是否真正相同的关系。在其他实施例中,恒等保留变换保留正被变换的数据值之间的等价关系,其中等价关系将可能数据值集合划分成等价类集合,以使得两个数据值的‘恒等’在一定程度的广义上应被理解为在等价关系下相等,即,属于相同等价类。
在一些实施例中,可能并非总是以绝对确定性保证匿名化变换将恰好不同(或不相等)的两个值变换成两个不同(或不相等)的变换值,而是两个不同(或不相等)值被变换成相同(或相等)变换值的概率可能是非常小的。如果任何特定的一对随机不同(或不相等)值通过匿名化变换被变换成相同(或相等)经变换值的概率小于某个阈值概率、并且该匿名化变换将恰好相同(或相等)的两个值变换成相同(或相等)变换值,则该变换可仍然被称为恒等保留变换。在一些实施例中,该概率阈值可以小于1/1,000,000。在其他实施例中,该概率阈值可以小于1/1,000,000,000。在一些实施例中,该概率阈值的值可以因变于变换参数,并且该参数的值可以被选择成使得该概率阈值小于特定的所选值。
在一些实施例中,对上下文数据元素值的恒等保留变换可包括向该上下文数据元素值应用单向函数。在一些实施例中,单向函数可以使用盐(salt)(如本申请其余地方更详细描述的)来参数化。盐值对于给定用户可以是固定的,但可以在一组不同用户之中变化。在一些实施例中,盐值可以是仅对执行该单向函数的代理或组件为已知的秘密。在一些实施例中,单向函数可包括或可包含密码散列函数,诸如举例而言MD5(消息摘要5)或标准化散列函数的SHA(安全散列算法)族的成员,例如SHA-3(安全散列算法3)。在一些实施例中,单向函数可包括键控散列算法,诸如举例而言HMAC(基于散列的消息认证码)。在一些实施例中,在键控散列算法中使用的密钥可以是盐。在其他实施例中,可以使用基于加密块密码的恒等关系保留变换。在一些实施例中,单向函数可包括或者可包含密码加密解密函数(cryptographic encryption-decryption function),诸如举例而言AES(高级加密标准)加密解密算法。例如,在一些实施例中,上下文数据元素值可以用加密算法来加密。在一些实施例中,对加密算法参数化的密钥可以是固定值。在一些实施例中,密钥的值可以是盐(如本描述中其他地方更详细解释的)。在一些实施例中,密钥可从上下文数据元素值推导出。在一些实施例中,密钥可从上下文数据元素值推导出,并且使用该密钥来参数化的加密算法可对固定值(诸如举例而言,盐值,其可以是秘密)操作。
相似度保留变换
发明人还认识到,在许多其他情形中,要保留的关系可以是任何特定的上下文数据值与任何其它特定的上下文数据值(根据某种可计算量度)的相似程度。在下文中,这种关系可以被称为相似度关系。在一些实施例中,相似度量度可以被表达为离散或连续的数值。在一些实施例中,相似度量度可以被表达为布尔值。在一些实施例中,相似度量度的所有可能值的集合可以是有序集合。在一些实施例中,相似度量度的所有可能值的集合可以是部分有序集合。在另外其他实施例中,在相似度量度的各个可能值之间可能未定义顺序。
在各个实施例中,可以按不同方式来计算相似度量度。在一些实施例中,对于不同的上下文数据元素可以按不同方式来计算相似度量度。例如,对于标量上下文数据元素,相似度量度可使用相同上下文数据元素的两个值之间的绝对或相对差(有符号或无符号)来计算。对于可被表示为向量的上下文数据元素,相同上下文数据元素的两个值(即,向量)之间的相似度量度可以使用这两个值的某种距离函数来计算。在一些实施例中,距离函数可以是欧几里德距离。在其他实施例中,距离函数可以是p阶Minkowski距离(p-范数距离)。在另外其他实施例中,可以使用其他距离函数,诸如Canberra距离、Chebyshev(或chessboard(棋盘))距离。对于可以被表示为相等长度的符号(例如,比特)串的上下文数据元素,可使用汉明距离。对于其他上下文数据元素,可使用其他距离函数,诸如举例而言字符串的编辑距离(例如,Levenstein距离)、或Lee距离。例如,对于物理地理位置,可使用角距离(例如,如从地心观察的)。
在一些实施例中,用于上下文数据元素的原始值的相似度量度可按与用于对应经变换(经匿名化)上下文数据元素值的相似度量度不同的方式来计算。在一些实施例中,第一相似度量度可被用于上下文数据元素的原始值,并且该第一相似度量度可以与可被用于对应经变换(经匿名化)上下文数据元素值的第二相似度量度不同,但匿名化变换可保留相对的相似度,以使得原始值之间的较高(较低)相似度(如由第一相似度量度所表达的)转换成对应经匿名化值之间同样的较高(较低)相似度(如由第二相似度量度所表达的)。这种变换可被称为相似度保留变换。
在一些实施例中,要通过匿名化变换来变换的上下文数据元素值可以是第一度量空间的元素,并且这些上下文数据元素值的第一相似度量度可以是在该第一度量空间上定义的(第一)度量,并且匿名化变换将原始上下文数据元素值变换成的变换值可以是第二度量空间的元素,并且这些上下文数据元素的第二相似度量度可以是在该第二度量空间上定义的(第二)度量。在一些实施例中,第一和/或第二度量可包括本描述中其他地方更详细讨论的距离或相似度量度中的任一者。在一些实施例中,匿名化变换可包括从第一度量空间到第二度量空间的连续函数。
在一些实施例中,(针对给定用户)将任何第一对上下文数据元素值变换成第一对经变换值并将任何第二对上下文数据元素值变换成第二对经变换值的相似度保留匿名化变换可具有按如下方式来变换上下文数据值的属性:
如果根据第一相似度量度第一对上下文数据元素值相比第二对上下文数据元素值更相似,则根据第二相似度量度对应的第一对经变换值同样相比第二对上下文数据元素值更相似,并且
如果根据第一相似度量度第一对上下文数据元素值相比第二对上下文数据元素值没有那么相似,则根据第二相似度量度对应的第一对经变换值同样相比第二对上下文数据元素值没有那么相似。
在精度裕度内保留相似度
在一些实施例中,相似度保留匿名化变换可保留上下文数据元素的两个不同值之间的相似度,而不管这两个值之差可能是多么小。这种变换保留两个数据值是否完全等同的关系。因此,这种变换原则上也可被用作恒等保留匿名化变换。在其他实施例中,相似度保留匿名化变换可仅在某一精度裕度内保留上下文数据元素的两个不同值之间的相似度。即,在一些实施例中,相似度保留匿名化变换的上面提及的属性可能仅在进行比较的各值之间的相似度差异大于(在绝对意义上或在关于值的幅度的相对意义上)某一阈值的情形中才会得到满足或保证。例如,在一些实施例中,第一对上下文数据元素值相对于第二对上下文数据元素的相对相似度在第一对的相似度与第二对的相似度之差大于某一阈值的情况下可以通过匿名化变换保留,而在该差小于该阈值的情况下可能不一定被保留。在一些实施例中,该阈值可以因变于进行比较的上下文数据元素值的幅度。例如,在一些实施例中,该阈值可被表达为进行比较的最大上下文数据元素值的幅度的固定百分比。
概率性与确定性相似度保留
在一些实施例中,相似度保留匿名化变换可仅以某一概率而非绝对确定性来保留上下文数据元素的两个不同值之间的相似度。即,在一些实施例中,相似度保留匿名化变换的上面提及的属性对于随机用户和/或对于该相似度保留匿名化变换所关注的上下文数据元素的随机值可能仅以某一概率得到满足。在一些实施例中,相似度保留匿名化变换的底层机制可能自身是完全确定性的,但该机制对于某些特定值和/或用户可能不保留上面提及的属性,籍此其可能取决于该机制的第一参数(诸如盐)的特定值,确切地针对那些特定值和/或用户可能无法在某一精度裕度内保留相似度,例如在该第一参数的值可能在各个用户之间不同的情形中。在这些实施例中的一些实施例中,该第一参数的值对于分析由匿名化变换产生的经变换上下文数据元素值的分析组件可能是未知的,以使得分析组件不能确定这可能是针对哪些特定用户和/或上下文数据元素的情形,并且仅能给出这对于任何随机用户和/或随机上下文数据元素值可能发生的统计概率。如果这对于随机用户和/或随机上下文数据元素值发生的统计概率足够小,则相似度保留匿名化变换可被认为是在概率性意义上的相似度保留匿名化变换,即,它可被称为概率性相似度保留匿名化变换。在一些实施例中,上面提及的统计概率(对于随机用户和上下文数据值的随机集合、或者对于第一参数的随机值不保留相似度的统计概率)可以低于例如1%或0.1%或0.01%的百分比。在一些实施例中,该统计概率可以因变于概率性相似度保留匿名化变换的第二参数的值,其中在一些实施例中该第二参数可例如对于所有用户或对于一批用户具有相同值。例如,在一些实施例中,该统计概率可以因变于概率性相似度保留匿名化变换所使用的算法中的迭代次数或者它可以因变于经变换值的大小。在一些实施例中,该第二参数的值可被选择成在一方面相似度保留的高概率与另一方面例如针对用于执行匿名化变换的处理功率和/或用于从匿名化组件向分析组件传达经变换值的数据通信带宽的低需求之间达成最优折衷。
在一些实施例中,这种概率性相似度保留匿名化变换可以例如从分析经变换值的分析组件的角度被建模为确定性相似度保留匿名化变换,其中(随机)噪声在匿名化变换之前已被添加到上下文数据元素值和/或将在匿名化变换之后被添加到经变换值。
相似度保留匿名化变换与模糊变换之间的差异
可构想到,在尝试提供一定水平的隐私保护时,收集和处理隐私敏感数据的一些认证系统可以‘模糊’某些隐私敏感数据值。即,此类认证系统可以牺牲所收集的数据值的一些精度,从而引入关于在该模糊之前的精确原始值是何值的不确定性并且因而在一定程度上减少隐私问题。对所收集数据值的这种模糊可例如通过仅保留数据值的最高有效数字(或丢弃数据值的最低有效数字)来完成。这可例如通过将数据值舍入或截短至一定的精度水平来完成。例如,收集并使用用户的智能电话位置的GPS坐标的认证系统可舍入或截短所收集的GPS坐标以使得它们保留不大于5千米的精度。然而,对于这种简单的模糊系统,在隐私方面的增益(模糊化数据值的精度与原始数据值的精度相比的损失)基本上等于在分析模糊化数据值时可用于分析组件的精度方面的损失。换言之,在这种简单的模糊系统中,分析精度换得相等量度的隐私。出于该原因,这种简单的模糊操作不是如将在本描述中理解的相似度保留匿名化变换这一术语的示例。在一些实施例中,相似度保留匿名化变换是以如下方式将来自域空间的值投影到像空间中的值的变换:给定像空间中的值,不能以小于预定隐私阈值的不确定性裕度来计算域空间中的原始值,不过其中相似度保留匿名化允许在与域空间中低于所述预定隐私阈值的距离或差异相对应的精度水平下确定像空间中的值的邻近度或相似度(即,超过所述预定隐私阈值的相似度)。在一些实施例中,相似度保留匿名化变换是以如下方式将来自域空间的值投影到像空间中的值的变换:给定像空间中的值,不能以超过预定隐私阈值的精度裕度来计算域空间中的原始值,不过其中相似度保留匿名化允许在与域空间中不超过所述预定隐私阈值的相似度相对应的精度水平下确定像空间中的值的邻近度或相似度。
如本描述中所使用的术语相似度保留匿名化变换是指特定原始数据值在变换之后在隐私方面的增益远远高于在可用于分析的精度方面的损失的相似度保留变换。对隐私方面的增益的量度可以是相对于被变换成给定经变换值的数据元素的实际原始值的不确定性的(平均)增加。这可以被估计为原本将得到相同给定经变换值的所有原始数据值集合的(平均)熵。类似地,对分析精度方面的损失的量度可以是经变换值的相似度的精度与原始数据值的相似度的精度之间的比率。隐私的增益与分析精度的损失的比率一般因变于所选的相似度保留匿名化变换。该比率可被称为所选的相似度保留匿名化变换的隐私增强因子。在一些实施例中,该隐私增强因子因变于相似度保留匿名化变换的参数。在一些实施例中,隐私增强因子是至少10。在其他实施例中,隐私增强因子是至少1000。在另外其他实施例中,隐私增强因子是至少1,000,000。
上下文数据的不同类别
在一些实施例中,被认为是隐私敏感的一些上下文数据可以与不被认为是隐私敏感的其他上下文数据相区分,并且可以不同地处理。
可计算和不可计算上下文数据
可以由一些实施例作出的不同种类的上下文数据之间的另一区别是可计算与不可计算上下文数据之间的区别。
可计算上下文数据是其中数据值之间的相似度在对该数据的分析(即,两个值在何种程度上相似)中起作用的数据。例如,在一些实施例中,‘地理位置’可以是上下文数据元素,并且对地理位置数据值的分析可以计及或可以基于对应于一个数据值的地理位置与对应于另一数据值的地理位置之间的距离。例如,分析可以从为特定用户收集的、指示离与近期已为相同用户记录的大量地理位置数据值相对应的地理位置非常近的地理位置的新数据值得出某些结论,而如果该新数据值指示离与在过去已为该相同用户记录的地理位置数据值相对应的任何地理位置非常远的地理位置,则该分析可得出截然不同的结论。
不可计算上下文数据是其中数据值之间的某种相似度(而不是数据值是否相同(或根据某种等价关系相等))在对该数据的分析中不起作用、而是分析基于给定数据值与另一数据值是否相同(或根据某种等价关系相等)的数据。例如,在一些实施例中,上下文数据可包括用户的智能电话近期与之配对的蓝牙设备的名称,并且分析可计及该名称的当前值是否与过去近期为相同用户记录的名称值相同或者反之该名称的当前值是否与过去为该用户记录的任何名称都不同;然而,该分析可能不会将任何值归因于当前名称值与过去记录的任何名称值可能相似或可能不相似的程度(根据某种标准)。
可计算上下文数据的示例
可计算上下文数据元素可包括例如:时间、位置、位置精度、温度、大气压力、当地重力加速度、声级、照明强度、放射性强度、Wi-Fi RSSI(收到信号强度指示符)、Wi-Fi RCPI(收到信道功率指示符)、移动网络RSSI、各种app的使用历时(例如,针对前十个最频繁使用的app中的每一者)、传出/传入呼叫(例如过去20个呼叫)的历时、(接收和/或传送的)Wi-Fi数据量、通过电话网络(接收或传送)的数据量等等。
不可计算上下文数据的示例
不可计算上下文数据元素可包括例如:Wi-Fi路由器MAC(媒体接入控制)地址、Wi-Fi SSID(服务集标识符)、Wi-Fi IP地址、Wi-Fi网络ID、Wi-Fi路由器IP地址、Wi-Fi路由器DNS-1、Wi-Fi路由器DNS-2、SIM状态、移动网络数据状态、移动网络数据类型、移动网络运营商名称、移动网络MCC(移动国家码)和MNC(移动网络码)、移动网络LAC(位置区域码)、移动网络蜂窝小区ID、SIM(订户身份模块)序列号、IMEI(国际移动装备身份)、IMSI(国际移动订户身份)、电话类型(GSM-全球移动通信系统/CDMA-码分多址)、经Wi-Fi配置的名称列表、经Wi-Fi配置的BSSID列表、蓝牙状态、蓝牙名称、蓝牙MAC、蓝牙配对设备名称、蓝牙配对设备地址、蓝牙配对设备状态、蓝牙配对设备类型、蓝牙配对设备类、设备名称、设备型号、设备品牌、设备制造商、设备序列号、设备OS(操作系统)名称、设备OS版本、安装在设备上的app列表、使用最多的app列表、传出或传入呼叫的列表(号码或姓名)等等。
对不同类别的上下文数据的不同匿名化处理
在本发明的一些实施例中,上下文数据被编群成三个类别:不是隐私敏感的上下文数据;不可计算隐私敏感上下文数据;以及可计算隐私敏感上下文数据。在一些实施例中,至少一些不是隐私敏感的上下文数据可以不进行匿名化,即,它们不使用隐私保留变换来变换。在一些实施例中,至少一些隐私敏感上下文数据可以通过匿名化变换来匿名化以保留隐私。在一些实施例中,至少一些不可计算隐私敏感上下文数据可通过恒等保留匿名化变换来变换,即,不可计算隐私敏感上下文数据元素值可使用仅保留特定的不可计算隐私敏感上下文数据元素值与该不可计算隐私敏感上下文数据元素值的另一特定值是否相同的关系的匿名化变换来变换。在一些实施例中,至少一些可计算隐私敏感上下文数据可通过相似度保留匿名化变换来变换,即,可计算隐私敏感上下文数据元素值可使用保留特定的可计算隐私敏感上下文数据元素值与该可计算隐私敏感上下文数据元素的另一特定值相似到何种程度的关系的匿名化变换来变换。
通过使用单向函数来匿名化上下文数据元素值
在一些实施例中,对上下文数据元素的隐私保留匿名化变换可包括或可包含对上下文数据元素的值应用单向函数,其中单向函数是容易对每个输入进行计算、但给定随机输入的像(即,应用该函数的结果)难以逆转的数学函数。例如,在一些实施例中,保留匿名化变换可包括密码散列函数,诸如举例而言SHA-1。使用包括或包含单向函数的隐私保留匿名化变换的优点在于,在仅给出上下文数据元素的经变换值的情况下获得其原始值可能是困难的或在计算上不可行的,这保护这些原始上下文数据元素值的隐私,同时保留相同的两个数据值的恒等关系。
在隐私保留变换中对盐的使用
在一些实施例中,单向函数可具有附加输入或者可使用附加数据元素来参数化。该附加数据元素可具有高熵。该附加输入或数据元素可充当用于防御字典式攻击的密码盐。在下文中充当密码盐的这种附加输入或数据元素可被简称为盐。例如,在一些实施例中,匿名化变换可包括或可包含被应用于这种盐和要被变换的上下文数据元素值的组合的密码散列函数。在一些实施例中,单向函数可包括或可包含使用充当盐的密钥来参数化的密码加密解密函数(例如,块密码,诸如AES)。在一些实施例中,盐的值可在初始化阶段期间在访问设备上被初始化并且可存储(例如,存储在访问设备上)以供将来在多个后续认证会话中使用。
使盐对匿名化组件保密
在一些实施例中,盐可以按该盐的值对于第三方不可预测的方式来生成。例如,在一些实施例中,盐可使用伪随机或真随机发生器的输出来生成。在一些实施例中,盐可以是保密的值。在一些实施例中,盐值可仅对匿名化组件(即,执行匿名化变换的组件或设备(其可以例如是用户的访问设备或者可被包括在用户的访问设备中))为已知,并且盐值可能甚至不与认证系统的其他组件共享。例如,在一些实施例中,匿名化组件可包括用户的访问设备或者可被包括在用户的访问设备中,并且盐值可仅对访问设备为已知并且可能甚至不与认证系统的不驻留在访问设备上的其他组件共享。例如,在一些实施例中,盐可以(优选地由匿名化组件自身或在其上)生成为秘密值,并且可由匿名化组件以安全方式存储。在一些实施例中,盐可由访问设备上的认证组件生成并且仅可由该认证组件访问。在一些实施例中,访问设备上的认证组件不与任何其它组件共享该秘密盐,甚至不与认证客户端组件是其一部分的认证系统的其他组件(诸如认证服务器)共享。在一些实施例中,秘密盐不与被适配或配置成分析经变换上下文数据元素值并且可被包括在认证服务器中的认证组件共享。
个性化盐值
在一些实施例中,盐可以是对于每个用户或对于每个访问设备可以不同的值。在一些实施例中,可以按使得盐对于每个用户或对于每个访问设备而言是唯一性的方式来生成和初始化盐。在一些实施例中,可以按使得两个不同用户或两个不同访问设备的盐具有相同值的概率可忽略不计的方式来生成盐。例如,在一些实施例中,可使用伪随机或真随机发生器来生成盐,其中该随机发生器的输出值可具有高熵。在一些实施例中,相同的盐可被用于变换相同访问设备上的所有上下文数据元素。在一些实施例中,上下文数据元素可按类别编群,并且对于每个不同类别可使用一不同的盐值。在一些实施例中,对于每个不同的上下文数据元素可使用一不同的盐值。
经加盐的单向变换函数的优点
使用秘密盐值对单向变换函数加盐可增加变换函数的可能输出的熵,从而使得逆转变换函数的暴力攻击不可行(即使在实践中可能输入值范围在一些情形中可能相当有限)。使盐值对甚至认证系统(系统的负责匿名化变换的组件除外)保密可确保即使在除了处理尚未被匿名化的裸数据的一个或多个组件之外的任何认证系统组件破坏的情形中经匿名化数据的隐私也保持完整。个性化盐值(即,针对不同用户和/或不同访问设备使用不同盐值)可具有破坏原本可能存在于任何特定用户的某些数据元素的经匿名化值与另一用户的相同数据元素的经匿名化值之间的任何相关的效果,并且由此会使通过以下操作来取回特定第一用户的某些数据元素的原始未经匿名化值的尝试受阻:将该特定第一用户的特定数据元素的这些经匿名化值与另一第二用户的相同数据元素的经匿名化值进行比较,其中与该第二用户的经匿名化值相对应的原始未经匿名化值是已知的。
在一些实施例中,用于变换上下文数据元素值的函数或算法被分开地应用于不同上下文数据元素集合中的每一者,以使得对一个上下文数据元素的值的变换结果不因变于(即,独立于)另一上下文数据元素的值。在一些实施例中,不同的变换函数或算法可被应用于不同类型的上下文数据元素或被应用于不同上下文数据元素的值。
对不可计算上下文数据的隐私保留变换
在一些实施例中,被应用于至少一个不可计算上下文数据元素的值的隐私保留变换可以是恒等关系保留匿名化变换。在一些实施例中,对不可计算上下文数据操作的所有匿名化变换可以是恒等关系保留匿名化变换。在一些实施例中,对不可计算上下文数据进行操作的至少一个或全部匿名化变换可被加盐。在一些实施例中,对不可计算上下文数据进行操作的至少一个或全部恒等关系保留匿名化变换可被加盐。
对可计算上下文数据的隐私保留变换
在一些实施例中,被应用于至少一个可计算上下文数据元素的值的隐私保留变换可以是相似度保留匿名化变换。在一些实施例中,对可计算上下文数据进行操作的所有匿名化变换可以是相似度保留匿名化变换。在一些实施例中,对可计算上下文数据进行操作的至少一个或全部匿名化变换可被加盐。在一些实施例中,对可计算上下文数据进行操作的至少一个或全部相似度保留匿名化变换可被加盐。
在本发明的一个方面,提供了一种用于以隐私保留方式来使用与用户相关的上下文数据的方法。在一些实施例中,该方法可用于保护用户与基于远程可访问的计算机的应用的交互,例如作为用于对该基于远程可访问计算机的应用的用户进行认证或用于保护由该用户向该基于远程可访问计算机的应用提交的事务请求或该基于远程可访问计算机的应用的事务请求的机制的一部分。在一些实施例中,该方法可包括本描述中其他地方描述的任何方法。在一些实施例中,该方法可与本描述中其他地方描述的任何系统联用。
在第1组实施例中,该方法可包括以下步骤:收集一个或多个上下文数据集合;匿名化所收集的一个或多个上下文数据集合;将经匿名化上下文数据集合传递给认证服务器;在该认证服务器处分析所接收到的经匿名化上下文数据集合以对该用户进行认证;其中该一个或多个上下文数据集合至少包括:一个或多个可计算上下文数据元素的值,或者一个或多个不可计算上下文数据元素的值;其中匿名化所收集的一个或多个上下文数据集合的步骤至少包括:使用相似度保留匿名化变换来变换所述可计算上下文数据元素中的至少一者的第一值,或使用恒等关系保留匿名化变换来变换所述不可计算上下文数据元素中的至少一者的第二值。在一些实施例中,所收集的一个或多个上下文数据集合可包括与单个特定用户相关的上下文数据集合。在一些实施例中,该一个或多个上下文数据集合可在不同的时刻被收集(并且收集上下文数据集合的时间自身可以是所收集的上下文数据集合中的数据元素之一)。在一些实施例中,分析所接收到的经匿名化上下文数据集合的步骤可包括:使用一些所接收到的经匿名化上下文数据集合、例如使用某种机器学习算法来学习或训练模型。在一些实施例中,分析所接收到的经匿名化上下文数据集合的步骤可包括:使用一些所接收到的经匿名化上下文数据集合来更新模型。在一些实施例中,分析所接收到的经匿名化上下文数据集合的步骤可包括:将模型与一个或多个所接收到的经匿名化上下文数据集合进行比较,例如以估计已为其收集该模型与之相比较的该一个或多个所接收到的经匿名化上下文数据集合的当前用户是(仍然是)与已为其收集已被用于训练和/或更新模型的所接收到的经匿名化上下文数据集合的用户相同的用户的可能性。
在第2组实施例中,该方法可包括第1组实施例中的任何方法,其中,至少一些经匿名化上下文数据的值可以因变于在匿名化之前所收集的上下文数据的原始值以及盐值。在一些实施例中,相同的盐值可被用于匿名化与相同特定用户以及由该特定用户使用的相同个人客户端计算设备相关的多个或全部所收集的上下文数据集合。
在第3组实施例中,该方法可包括第2组实施例中的任何方法,其中,至少所述相似度保留匿名化变换或所述恒等关系保留匿名化变换可由因变于所述盐值的参数来参数化。
在第4组实施例中,该方法可包括第2组或第3组实施例中的任何方法,其中,所述匿名化所收集的一个或多个上下文数据集合可由匿名化组件执行,并且其中,所述盐值仅对所述匿名化组件为已知。在一些实施例中,匿名化组件可(部分地或完全地)被包括在用户所使用的个人客户端计算设备中,例如作为在所述个人客户端计算设备上运行的软件应用的一部分。
在第5组实施例中,该方法可包括第2组至第4组实施例中任一组中的任何方法,其中,该方法可进一步包括:使用随机发生器或伪随机发生器来生成盐值。
在第6组实施例中,该方法可包括第2组至第5组实施例中任一组中的任何方法,其中,该方法可包括:在初始化阶段期间生成所述盐值并将所生成的盐值存储在可例如被包括在用户所使用的个人客户端计算设备中的非易失性存储器中。
在第7组实施例中,该方法可包括第2组至第6组实施例中任一组中的任何方法,其中,所述匿名化所收集的一个或多个上下文数据集合可在与所述用户相关联的个人客户端计算设备上执行,其中所述盐值可包括已为与所述用户相关联的所述个人客户端计算设备生成的特定值,并且其中,该特定值可以不同于为与其他用户相关联的其他个人客户端计算设备生成的盐值。
在第8组实施例中,该方法可包括任何前述各组实施例中的任何方法,其中,匿名化所收集的一个或多个上下文数据集合的步骤包括:使用相似度保留匿名化变换来变换所述可计算上下文数据元素中的至少一者的第一值。在一些实施例中,所述分析所接收到的经匿名化上下文数据以对用户进行认证可包括:利用可由所述相似度保留匿名化变换保留的各个所接收到的经匿名化上下文数据集合之间的相似度。在一些实施例中,所述分析所接收到的经匿名化上下文数据以对用户进行认证可包括:利用可由所述相似度保留匿名化变换保留的一个或多个经匿名化上下文数据集合中的一个或多个上下文数据元素的各个收到值之间的相似度。在一些实施例中,‘利用相似度’可包括:评估收到值与对应的预期值或参考值或变换的像空间中的其他收到值之间的邻近度或相似度,并使用该相似度作为对用户进行认证时的元素,例如通过使用该相似度来确定或生成认证分数,诸如反映所接收到的经匿名化上下文数据与所学习的用户数据模型的匹配程度的分数。在一些实施例中,对应的预期值或参考值可例如是较早收到的值,或者可以从较早收到的值计算出,例如被计算为数个较早收到值的均值或被计算为较早收到值的聚类的代表值。
在第9组实施例中,该方法可包括任何前述各组实施例中的任何方法,其中,所述相似度可包括对距离的量度。
在第10组实施例中,该方法可包括任何前述各组实施例中的任何方法,其中,所述相似度保留匿名化变换可包括对例如基于用户所使用的个人客户端计算设备的位置的基于位置的数据元素的位置敏感散列变换。
在第11组实施例中,该方法可包括第10组实施例中的任何方法,其中,所述相似度保留匿名化变换可包括数据无关位置敏感散列变换。
在第12组实施例中,该方法可包括第10组至第11组实施例中任一组中的任何方法,其中,所述相似度保留匿名化变换包括超比特位置敏感散列变换。
在第13组实施例中,该方法可包括任何前述各组实施例中的方法,其中,所述相似度保留匿名化变换可在概率性意义上保留所述相似度。
在第14组实施例中,该方法可包括第1组至第9组实施例中任一组中的任何方法,其中,所述相似度保留匿名化变换可在确定性意义上保留所述相似度。
在第15组实施例中,该方法可包括任何前述各组实施例中的任何方法,其中,匿名化所收集的一个或多个上下文数据集合的步骤包括:使用恒等关系保留匿名化变换来对所述不可计算上下文数据元素中的至少一者的第二值进行所述变换。
在第16组实施例中,该方法可包括第15组实施例中的任何方法,其中,所述分析所接收到的经匿名化上下文数据以对用户进行认证可包括:利用第一收到的经匿名化上下文数据集合中的第一上下文数据元素的第一收到值与第二(先前)收到的经匿名化上下文数据集合中的第二上下文数据元素的第二收到值之间的恒等(或等价)。在一些实施例中,利用恒等(或等价)可包括:评估收到值是否与对应的预期值或参考值或变换的像空间中的其他收到值相同(或相等),并使用该评估的结果作为对用户进行认证时的元素,例如通过使用该评估的结果来确定或生成认证分数,诸如反映所接收到的经匿名化上下文数据与所学习的用户数据模型的匹配程度的分数。在一些实施例中,对应的预期值或参考值可例如是较早收到的值。
在第17组实施例中,该方法可包括任何前述各组实施例中的任何方法,其中,所述恒等关系保留匿名化变换可包括应用密码散列算法。
在第18组实施例中,该方法可包括任何前述各组实施例中的任何方法,其中,该方法可以进一步包括以下步骤:使用至少一些所述经匿名化的所收集的一个或多个上下文数据集合来学习(或训练)用于所述用户的一个或多个用户模型。在本描述的其余部分,术语用户模型、用户数据模型或用户认证数据模型可以可互换地使用。
在第19组实施例中,该方法可包括第18组实施例中的任何方法,其中,使用至少一些所述经匿名化的所收集的一个或多个上下文数据集合来学习用于所述用户的一个或多个用户模型的所述步骤包括:向所述经匿名化的所收集的一个或多个上下文数据集合中的所述至少一些经匿名化的所收集的一个或多个上下文数据集合应用机器学习算法。
在第20组实施例中,该方法可包括第18组或第19组实施例中的任何方法,其中,分析所接收到的经匿名化上下文数据集合以对用户进行认证的步骤可包括:将至少一些所接收到的经匿名化上下文数据集合与所学习的一个或多个用户模型进行比较。
在第21组实施例中,该方法可包括第20组实施例中的任何方法,其中,该方法可进一步包括:生成反映所述至少一些所接收到的经匿名化上下文数据集合与所学习的一个或多个用户模型的匹配程度的分数。
在第22组实施例中,该方法可包括第19组至第21组实施例中任一组中的任何方法,其中,所述机器学习算法可包括不受监督式机器学习算法。
在第23组实施例中,该方法可包括第19组至第22组实施例中任一组中的任何方法,其中,所述机器学习算法可包括聚类算法。
在第24组实施例中,该方法可包括第23组实施例中的任何方法,其中,所述机器学习算法可包括K均值算法。
在第25组实施例中,该方法可包括第18组至第24组实施例中任一组中的任何方法,其中,该方法可进一步包括:更新所学习的一个或多个用户模型。在一些实施例中,所述更新所学习的一个或多个用户模型可包括:使用所收集的一个或多个上下文数据集合中的至少一者。
在第26组实施例中,该方法可包括第25组实施例中的任何方法,其中,对所学习的一个或多个用户模型的所述更新是按规则的区间来执行的。
在第27组实施例中,该方法可包括第25组或第26组实施例中的任何方法,其中,对所学习的一个或多个用户模型的所述更新使用自从对所学习的一个或多个用户模型的所述更新的前一次发生以来已经接收到的至少一些经匿名化上下文数据集合。
在第28组实施例中,该方法可包括任何前述各组实施例中的任何方法,其中,收集一个或多个上下文数据集合、匿名化所收集的一个或多个上下文数据集合、以及将经匿名化上下文数据集合传递给认证服务器的步骤可在与所述用户相关联的个人客户端计算设备处执行,其中所述个人客户端计算设备可在物理上不同于所述认证服务器。
在第29组实施例中,该方法可包括第28组实施例中的任何方法,其中,收集一个或多个上下文数据集合以及匿名化所收集的一个或多个上下文数据集合的步骤是由在所述个人客户端计算设备上运行的软件应用来执行的。在一些实施例中,所述软件应用可包括第4组实施例中的匿名化组件。
在本发明的另一方面,提供了一种用于以隐私保留方式来使用与用户相关的上下文数据的系统。在一些实施例中,该系统可被适配成:保护用户与基于远程可访问计算机的应用的交互,例如作为用于对基于该远程可访问计算机的应用的用户进行认证或用于保护由用户提交的事务请求或者该基于远程可访问计算机的应用的事务请求的机制的一部分。在一些实施例中,该系统可包括本描述中其他地方描述的任何系统。在一些实施例中,该系统可被适配成执行本描述中其他地方描述的任何方法。
在第1组实施例中,该系统可包括:收集组件,其被适配成:收集一个或多个上下文数据集合;匿名化组件,其被适配成:匿名化由收集组件收集的该一个或多个上下文数据集合;认证服务器,其被适配成:分析经匿名化的一个或多个上下文数据集合;其中,由收集组件收集的该一个或多个上下文数据集合至少包括:一个或多个可计算上下文数据元素的值,或者一个或多个不可计算上下文数据元素的值;其中,匿名化组件匿名化所收集的一个或多个上下文数据集合包括该匿名化组件至少进行以下操作:使用相似度保留匿名化变换来变换所述可计算上下文数据元素中的至少一者的第一值,或使用恒等关系保留匿名化变换来变换所述不可计算上下文数据元素中的至少一者的第二值。
在第2组实施例中,该系统可包括系统的第1组实施例中的任何系统,其中,收集组件可被包括在与用户相关联并由用户使用的个人客户端计算设备中,例如作为在所述个人客户端计算设备上运行的软件应用的一部分。
在第3组实施例中,该系统可包括系统的第2组实施例中的任何系统,其中,收集组件可被适配成:从被包括在所述个人客户端计算设备中的一个或多个硬件传感器接收所述一个或多个上下文数据集合中的至少一些上下文数据元素的值。
在第4组实施例中,该系统可包括系统的第2组或第3组实施例中的任何系统,其中,收集组件可被适配成:从所述个人客户端计算设备的操作系统接收所述一个或多个上下文数据集合中的至少一些上下文数据元素的值。
在第5组实施例中,该系统可包括系统的第2组至第4组实施例中任一者中的任何系统,其中,匿名化组件也可被包括在个人客户端计算设备中,例如作为在所述个人客户端计算设备上运行的软件应用的一部分。
在第6组实施例中,该系统可包括系统的第2组至第5组实施例中任一者中的任何系统,其中,至少收集组件被包括于在所述个人客户端计算设备上运行的软件客户端应用中。
在第7组实施例中,该系统可包括系统的第6组实施例中的任何系统,其中,所述匿名化组件也被包括在所述软件客户端应用中。
在第8组实施例中,该系统可包括系统的第2组至第7组实施例中任一者中的任何系统,其中,个人客户端计算设备可在物理上不同于认证服务器,并且其中,认证服务器可被适配成:通过链接个人客户端计算设备和认证服务器的数据通信网络来接收所述经匿名化的一个或多个上下文数据集合。在一些实施例中,所述数据通信网络可包括计算机网络,诸如因特网和/或移动数据通信网。
在第9组实施例中,该系统可包括系统的第1组至第8组实施例中任一者中的任何系统,其中,至少一些经匿名化上下文数据的值可以一方面因变于在匿名化之前所收集的上下文数据的原始值并且另一方面因变于盐值。
在第10组实施例中,该系统可包括系统的第9组实施例中的任何系统,其中,至少所述相似度保留匿名化变换或所述恒等关系保留匿名化变换可由因变于所述盐值的参数来参数化。
在第11组实施例中,该系统可包括系统的第9组或第10组实施例中的任何系统,其中,所述盐值可仅对所述匿名化组件为已知。
在第12组实施例中,该系统可包括系统的第9组至第11组实施例中的任何系统,其中,盐值可使用随机发生器或伪随机发生器来生成。
在第13组实施例中,该系统可包括系统的第9组至第12组实施例中的任何系统,其中,所述盐值可在初始化期间被生成并被存储在非易失性存储器中,例如被存储在个人客户端计算设备的非易失性存储器中。
在第14组实施例中,该系统可包括系统的第9组至第13组实施例中任一组中的任何系统,其中,所述匿名化组件可被包括在与所述用户相关联并由所述用户使用的个人客户端计算设备中,其中所述盐值可包括已为与所述用户相关联的所述个人客户端计算设备生成的、并且可以不同于为与其他用户相关联的其他个人客户端计算设备生成的盐值的特定值。
在第15组实施例中,该系统可包括系统的第1组至第14组实施例中的任何系统,其中,由所述匿名化组件对所收集的一个或多个上下文数据集合的所述匿名化包括:使用相似度保留匿名化变换来对所述可计算上下文数据元素中的至少一者的第一值进行所述变换。在一些实施例中,由所述认证服务器对经匿名化上下文数据的所述分析以对用户进行认证可包括:利用由所述相似度保留匿名化变换保留的各个所接收到的经匿名化上下文数据集合之间的相似度。在一些实施例中,由所述认证服务器对经匿名化上下文数据的所述分析以对用户进行认证可包括:利用可由所述相似度保留匿名化变换保留的一个或多个经匿名化上下文数据集合中的一个或多个上下文数据元素的各个收到值之间的相似度。
在第16组实施例中,该系统可包括系统的第1组至第15组实施例中的任何系统,其中,所述相似度可包括对距离的量度。
在第17组实施例中,该系统可包括系统的第1组至第16组实施例中的任何系统,其中,所述相似度保留匿名化变换可包括位置敏感散列变换。
在第18组实施例中,该系统可包括系统的第17组实施例中的任何系统,其中,所述相似度保留匿名化变换可包括数据无关位置敏感散列变换。
在第19组实施例中,该系统可包括系统的第17组或第18组实施例中的任何系统,其中,所述相似度保留匿名化可变换包括超比特位置敏感散列变换。
在第20组实施例中,该系统可包括系统的第1组至第19组实施例中的任何系统,其中,所述相似度保留匿名化变换可在概率性意义上保留所述相似度。
在第21组实施例中,该系统可包括系统权利要求的第1组至第16组实施例中的任何系统,其中,所述相似度保留匿名化变换可在确定性意义上保留所述相似度。
在第22组实施例中,该系统可包括系统的第1组至第21组实施例中的任何系统,其中,由所述匿名化组件对所收集的一个或多个上下文数据集合的所述匿名化包括:使用恒等保留匿名化变换来对所述不可计算上下文数据元素中的至少一者的第二值进行所述变换。
在第23组实施例中,该系统可包括系统的第22组实施例中的任何系统,其中,由所述认证服务器对所接收到的经匿名化上下文数据的所述分析以对用户进行认证包括:利用第一收到的经匿名化上下文数据集合中的第一上下文数据元素的第一收到值与第二(先前)收到的经匿名化上下文数据集合中的第二上下文数据元素的第二收到值之间的恒等。
在第24组实施例中,该系统可包括系统的第1组至第23组实施例中的任何系统,其中,所述恒等关系保留匿名化变换可包括应用密码散列算法。在一些实施例中,密码散列算法可使用盐值(诸如第9组实施例中的盐值)来参数化。
在第25组实施例中,该系统可包括系统的第1组至第24组实施例中的任何系统,该系统可进一步包括用户模型学习组件,其被适配成:通过使用至少一些所述经匿名化的所收集的一个或多上下文数据集合来学习或训练用于所述用户的一个或多个用户模型。在一些实施例中,用户模型学习组件可被包括在认证服务器中。在一些实施例中,用户模型学习组件可以是在认证服务器上运行的软件模块。
在第26组实施例中,该系统可包括系统的第25组实施例中的任何系统,其中,所述用户模型学习组件可被适配成:通过向至少一些所述经匿名化的所收集的一个或多个上下文数据集合应用机器学习算法来学习用于所述用户的一个或多个用户模型。
在第27组实施例中,该系统可包括系统的第25组或第26组实施例中的任何系统,其中,由所述认证服务器对所接收到的经匿名化上下文数据集合的所述分析以对用户进行认证可包括:将至少一些所接收到的经匿名化上下文数据集合与所学习的一个或多个用户模型进行比较。
在第28组实施例中,该系统可包括系统的第27组实施例中的任何系统,其中,认证服务器可被进一步适配成:生成反映所述至少一些所接收到的经匿名化上下文数据集合与所学习的一个或多个用户模型的匹配程度的分数。
在第29组实施例中,该系统可包括系统的第26组至第28组实施例中的任何系统,其中,所述机器学习算法可包括不受监督式机器学习算法。
在第30组实施例中,该系统可包括系统的第26组至第29组实施例中的任何系统,其中,所述机器学习算法可包括聚类算法。
在第31组实施例中,该系统可包括系统的第30组实施例中的任何系统,其中,所述机器学习算法可包括K均值算法。
在第32组实施例中,该系统可包括第25组至第31组实施例中的任何系统,其中,所述用户模型学习组件可被进一步适配成:更新所学习的一个或多个用户模型。
在第33组实施例中,该系统可包括系统的第32组实施例中的任何系统,其中,所述用户模型学习组件可按规则的区间来执行对所学习的一个或多个用户模型的所述更新。
在第34组实施例中,该系统可包括系统权利要求的第32组或第33组实施例中的任何系统,其中,所述用户模型学习组件可被进一步适配成:使用自从对所学习的一个或多个用户模型的所述更新的前一次发生以来已经接收的至少一些经匿名化上下文数据集合来更新所学习的一个或多个用户模型。
在以下段落中提供这些各个实施例的更多细节。
附图简述
在如附图中所示的本发明的实施例的下述更具体描述中,本发明的前述和其他特征和优势将更加清楚。
图1示意性地解说了根据本发明的一方面的示例性系统。
图2示意性地解说了根据本发明的一方面的示例性系统。
图3示意性地解说了如在根据本发明的一方面的系统的一个实施例中使用的大地纬度与地心纬度之间的关系。
图4示意性地解说了在根据本发明的一方面的系统的一个实施例中用户的访问设备的坐标系与世界坐标系的对准。
详细描述
下面讨论本发明的一些实现。虽然对特定实现进行了讨论,但应理解,这仅是出于解说目的来进行的。本领域技术人员将认识到,可以使用其他组件和配置而不会偏离本发明的精神和范围。提供各种特定细节以实现对本发明的透彻理解。然而,本领域技术人员将理解,可以在没有这些特定细节的情况下实践本发明。在其他实例中,未详细地描述公知的方法、规程、组件和电路,以免混淆本发明。对所描述实施例的各种修改对于本领域技术人员将是显而易见的,并且以下详细描述的各实施例的一般原理可被应用于其他实施例。
图2示意性地解说了根据本发明的一方面的示例性系统。
在一个实施例中,根据本发明的系统(200)可包括以下组件:
一个或多个远程应用服务器计算机(210)。该一个或多个远程应用服务器计算机(210)可主存可由多个用户(290)中的一个或多个用户远程访问的一个或多个远程应用。该一个或多个远程应用可包括例如本描述中其他地方描述的任何远程应用。远程应用服务器计算机(210)可例如包括web服务器。该一个或多个远程应用可在一个或多个应用提供商的控制下。
多个个人客户端计算设备(230)可允许该多个用户(290)中的一个或多个用户远程访问该一个或多个远程应用并且因此还可被称为访问设备。个人客户端计算设备还可被称为客户端计算设备。个人客户端计算设备或客户端计算设备或访问设备(230)可例如包括智能电话、PC(个人计算机)、膝上型或平板计算机,但还可以包括智能手表、智能腕带、智能钥匙链、一副智能眼镜、或另一类型的个人可穿戴计算设备。客户端计算设备或访问设备(230)可与特定用户、或与少量用户(例如,同一家庭的成员)相关联。客户端计算设备或访问设备(230)可具有将对访问设备的使用预留给特定的单个用户或一小组的特定用户的机制。例如,访问设备可包括在本地认证该访问设备的一个或多个已知用户的本地认证机制,例如,通过要求用户输入密码并验证所提供的密码或者通过要求用户呈现生物特性并验证所呈现的生物特性。
个人客户端计算设备(230)可包括用于处理数字数据的一个或多个数字数据处理组件,诸如举例而言微处理器或CPU(中央处理单元);用于存储要由数字数据处理组件执行的数据或指令(例如,软件,诸如操作系统,如Apple iOS或Android操作系统,或者诸如各种移动应用或app)的一个或多个存储器组件,诸如举例而言RAM(随机存取存储器)存储器或硬盘。在一些实施例中,客户端计算设备(230)可进一步包括用户输入接口(诸如触摸屏或小键盘)和/或用户输出接口(诸如显示器和/或扬声器)。
在一些实施例中,个人客户端计算设备(230)可包括被适配成收集上下文数据的上下文数据收集组件。上下文数据收集组件可包括数个硬件传感器,诸如用于提供位置数据的位置传感器(诸如GPS传感器)、用于提供温度测量的温度传感器、用于提供压力测量的压力传感器、用于提供磁场测量的磁力计传感器、用于提供加速度测量的加速度计、用于提供声音测量的话筒等等。上下文数据收集组件可进一步包括例如由被包括在个人客户端计算设备中的该一个或多个数据处理组件执行的上下文数据收集软件。上下文数据收集组件可被适配成:例如在特定实例处搜集由硬件传感器或由个人客户端计算设备(230)的操作系统提供的上下文数据以组装成所收集的上下文数据集合。
个人客户端计算设备可进一步包括上下文数据匿名化组件,其被适配成:根据本描述中其他地方更详细描述的任何匿名化方法来匿名化所收集的上下文数据。例如,在一些实施例中,上下文数据匿名化组件可包括可由被包括在个人客户端计算设备中的该一个或多个数据处理组件执行的上下文数据匿名化软件。
上下文数据收集组件和/或上下文数据匿名化组件可包含或可包括一个或多个恰适编程的数字数据处理器或微控制器、或专用电子硬件组件,诸如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA)。上下文数据收集组件和上下文数据匿名化组件可在相同硬件平台或不同硬件平台上实现。
个人客户端计算设备(230)可进一步包括用于与例如远程应用服务器(210)或认证服务器(220)交换数据(诸如所收集的且经匿名化的上下文数据)的数据通信接口,诸如无线数据通信接口(诸如举例而言Wi-Fi接口或蓝牙接口)。
计算机网络(250)连接该一个或多个应用服务器计算机(210)和该多个个人客户端计算设备或访问设备(230)。在一些实施例中,计算机网络(210)可包括因特网。在一些实施例中,计算机网络(210)可包括公共电话网络。在一些实施例中,计算机网络(210)可包括无线电话网络。
一个或多个认证服务器(220)。在一些实施例中,该一个或多个认证服务器(220)中的每一者可连接到该一个或多个应用服务器(210)中的至少一者并且可被配置成:分析已经直接地或间接地通过该一个或多个应用服务器中主存远程应用的一个应用服务器从与该远程应用进行交互的一个用户(290)相关联的一个个人客户端计算设备(230)接收的经匿名化上下文数据。在一些实施例中,每个应用服务器(210)可连接到该一个或多个认证服务器(220)中的至少一者并且可被配置成:将由应用服务器(210)所主存的远程应用从与可能正在(或可能尝试)与该远程应用进行交互的用户(290)相关联的个人客户端计算设备接收的经匿名化上下文数据转发给所连接的一个或多个认证服务器(220)中的至少一者。在直接地或间接地通过远程应用接收到由用户的个人客户端计算设备收集的上下文数据之际,认证服务器可处理接收到的上下文数据例如以对用户进行认证。在典型的实施例中,由用户的个人客户端计算设备收集并由认证服务器接收的上下文数据在所收集的上下文数据被(直接或间接)传送给认证服务器之前可能已由用户的个人客户端计算设备匿名化。在一些实施例中,一些或全部接收到的上下文数据在它们已被认证服务器接收之后由认证服务器匿名化。对上下文数据的匿名化可根据本描述中其他地方更详细描述的任何匿名化方法来发生。
在分析接收到的上下文数据之后,认证服务器(220)可向远程应用服务器通知分析的结果并且远程应用可使用该结果来采取恰适的动作。例如,认证服务器(220)可向远程应用返回信号以指示对用户的认证是否成功。如果该信号指示认证成功,则远程应用例如在决定是否要向用户准予访问或者是否要执行用户所请求的某个操作(诸如执行由用户提交的事务)时可使用该信息来采取恰适动作。
远程应用服务器和/或认证服务器可包括一个或多个服务器计算机或被包括在该一个或多个服务器计算机中,该一个或多个服务器计算机进而可包括:用于处理数字数据的一个或多个数字数据处理组件,诸如举例而言微处理器或CPU(中央处理单元);用于存储要由数字数据处理组件执行的数据或指令(例如,软件)的一个或多个存储器组件,例如RAM(随机存取存储器)存储器或硬盘;用于将远程应用服务器连接到计算机网络(250)(例如因特网)的网络接口组件(如以太网接口)。在一些实施例中,远程应用服务器和认证服务器可被包括在两个不同的物理计算机中。在其他实施例中,远程应用服务器和认证服务器可被包括在同一物理计算机中。在一些实施例中,远程应用服务器可包括认证服务器。
以下段落描述本发明的特定实施例集合。该特定实施例集合可包括可使用标记‘ConSec’来引述的认证系统。
上下文感知认证系统应当优选地对授权用户不可见,但需要收集关于用户的许多隐私信息。因此,这种系统可以被视为侵入用户的隐私。特别是关于用户的GPS位置坐标可能存在隐私问题。已执行了调查以研究用户对位置数据的行为。从这些调查中作出了数个观察结果。首先,发现大量用户拒绝给予智能电话app访问其位置数据的权限。其次,一些用户可能愿意准予app在这些用户正在积极地使用该app时访问位置,但在app处于后台的情况下可能不愿这么做。最后,未给予访问位置数据的权限的一些用户指出他们担心他们的位置数据是否会保持安全以及他们的位置数据是否会与其他方共享。
来自一些用户的相关问题是如果他们的位置数据被存储在服务器上并且该服务器被破坏则这些位置数据会发生什么。一种直观的解决方案是在用户的电话上在本地处理所有隐私敏感数据而不将任何隐私敏感数据传递给任何服务器,但并不是所有智能电话具有运行可被用于处理上下文数据以用于认证目的的计算密集型算法的处理能力,并且即使它们的确具有所需要的处理能力,这对用户的智能电话的电池寿命也可能具有非常不利的影响。此外,发明人还从数据收集实验中观察到,一般而言用户不会热衷于给予收集并记录原始位置数据的权限而不管这些数据被有效存储在何处。
此处所描述的一些实施例包括上下文感知认证系统,其通过使用地点敏感散列技术、用不可逆变换将位置数据变换成位置散列来保护位置数据的机密性。这种位置散列仅揭示位置相关数据的向量之间的相对相似度量度而不会揭示实际位置或者甚至位置之间的实际距离,而同时仍然允许作出不同对的此类位置相关数据向量之间的相对相似度的可靠比较。即,位置散列的值不给出关于各位置之间以米计的实际距离的任何信息,它们也不给出关于个体位置的任何信息。因此,用户不必担心位置数据的机密性,这是因为从可被存储在日志中以供认证系统将来使用的位置散列不可能知道实际位置。由于位置数据的机密性得到很好的保护,因此可以更容易说服用户提供总是允许收集位置数据的静态设置。使用这种对位置数据的基于位置散列的变换的主要优点在于,经散列数据的可计算性(在比较不同的经散列数据值之间的相似度方面)被保留,并且因此机器学习算法可以被应用于以此方式变换的数据以基于位置来学习并后续使用认证数据模型。
ConSec认证系统的实施例的属性
ConSec认证系统的实施例的一些属性可包括如下:
位置机密性:在ConSec认证系统中,用户的位置数据的机密性可通过使用LSH(地点敏感散列)算法(进一步参见对LSH算法的更详细描述)对用户的位置数据进行散列来得到保护。位置数据可包括纬度、经度、气压高度、噪声级、以及地球的磁场强度和倾角。经变换的数据可被称为位置散列。为了获得最大隐私,对位置数据的变换还可以使用随机盐来加盐。LSH参数可以随机生成。
经散列数据的可计算性:ConSec认证系统为了将可计算位置数据变换成位置散列所使用的变换还保留了经变换位置数据的可计算性以被用于基于位置相关数据的用户认证数据模型中。ConSec认证系统被适配成:成功地使用位置散列以使用机器学习算法来学习用户认证数据模型。
细粒度的认证:ConSec认证系统可提供基于高精度位置的认证,例如通过在上下文数据中包括气压高度,这是因为该值取决于用户所在的建筑物中的楼层水平。ConSec认证系统可使用来自可被包括在用户的智能电话中的压力传感器的数据来计算气压高度。
对抗欺骗的稳健性:ConSec认证系统对抗欺骗是稳健的。ConSec认证系统所使用的上下文位置数据可包括表示特定位置处的用户上下文的众多信息,诸如纬度、经度、气压高度、噪声级、Wi-Fi信息、蓝牙信息和移动网络信息。因此,欺骗ConSec位置上下文数据是困难的,这是因为将必须提供与用户的上下文数据的正常模式同样匹配的多个数据元素的相干值集合。
图1a和1b示意性地解说了根据本发明的一方面的系统的特定实施例集合。
ConSec认证系统的实施例的一般架构
图1(a)示出了ConSec上下文感知认证系统的框图,包括在用户的智能电话(或访问设备)上运行的app(被称为ConSec-App)并且该app可包括用于收集上下文数据的收集组件,以及在认证服务器上运行的ConSec认证应用(被称为ConSec-Auth)。ConSec-Auth可被适配成:从在登记阶段期间收集的上下文数据学习用户认证数据模型。
图1(b)示出了包括登记阶段和认证阶段的ConSec-Auth应用的框图。在登记阶段(其可以例如持续约4周)期间,可以为特定用户收集登记上下文数据。这些登记上下文数据可例如由ConSec-Auth应用用于学习该特定用户的用户认证数据模型。所学习的用户认证数据模型随后可例如由ConSec-Auth应用在认证阶段中用于对该用户进行认证。
对于典型用户,上下文数据往往根据用户在其日常生活中(在空间和时间上)的移动性模式而围绕该用户或多或少频繁访问的某些位置(诸如家庭、工作、购物中心等等)形成聚类。因此,为了充分捕捉用户的移动性模式,需要在足够长的时间段内(例如在数周内)收集上下文数据。因此,在一些实施例中,在约4周的时间段内收集的上下文数据可被用于登记。在一些实施例中,可按规则的区间(例如,每10分钟)在登记阶段期间收集用户的上下文数据。
在一些实施例中,所收集的用户的登记上下文数据可通过以下操作被匿名化:借助于隐私保留匿名化变换来变换所收集的登记上下文数据的隐私敏感数据元素的值。在一些实施例中,至少一些不可计算的所收集登记上下文数据可使用恒等保留匿名化变换(诸如本描述中其他地方描述的任何恒等保留匿名化变换)被匿名化。在一些实施例中,该恒等保留匿名化变换可被加盐。在一些实施例中,该恒等保留匿名化变换可包括密码散列函数。在一些实施例中,至少一些可计算的所收集登记上下文数据可使用相似度保留匿名化变换(诸如本描述中其他地方描述的任何相似度保留匿名化变换)被匿名化。在一些实施例中,该相似度保留匿名化变换可被加盐。在一些实施例中,该相似度保留匿名化变换可包括位置敏感散列(LSH)算法。在一些实施例中,该相似度保留匿名化变换可包括概率性相似度保留匿名化变换,诸如举例而言下面更详细讨论的超比特LSH(SB-LSH)算法。
生成盐
用于对匿名化变换加盐的盐值可分开地针对每个用户或针对每个用户智能电话或访问设备来生成。在一些实施例中,可例如使用真随机发生器或伪随机发生器来随机地生成这些盐值。在一些实施例中,盐值可在用户的访问设备或智能电话外部生成并且被提供给用户的访问设备或智能电话以供存储(例如,存储在用户的访问设备或智能电话的非易失性存储器中)并由用户的访问设备或智能电话上的认证系统的各组件使用。这可具有如下优点:如果用户具有多个访问设备或者用新的访问设备替代一访问设备,则例如在所生成的盐值也存储在访问设备外部并且可以被另一(附加的或新的)访问设备访问或者提供给该另一访问设备的情况下,可以维持由经加盐的匿名化变换来变换的上下文数据的变换值的连续性。在其他实施例中,盐值可由被包括在用户的访问设备或智能电话中的组件(例如,ConSec-App的组件)在内部生成并被永久地存储在用户的访问设备或智能电话中以供用户的访问设备或智能电话上的认证系统的各组件的后续使用,其中这些盐值完全不会离开用户的访问设备或智能电话。这可具有如下优点:保证盐值的保密性和机密性可以容易得多。在一些实施例中,盐值例如在登记阶段开始之前或开始时在初始化阶段期间生成一次,并且随后可被永久地存储在用户的访问设备或智能电话中以供用户的访问设备或智能电话上的认证系统的各组件例如在登记和认证阶段期间的后续使用。在一些实施例中,例如,在现有盐值被认为已受损害的情形中,特定用户的访问设备或智能电话上的盐值可被重新初始化。
在登记阶段的结尾,ConSec认证系统可例如通过使用机器学习算法来从经匿名化的所收集的登记上下文数据学习用户认证数据模型。为了学习用户认证数据模型,ConSec认证系统可以为经匿名化的所收集的登记上下文数据的每个集合或快照计算特征向量(其中所收集的用户上下文数据的集合或快照将该用户的已在特定时刻收集的上下文数据编群)。在一些实施例中,所计算的特征向量可包括三个特征子向量:从(经匿名化)位置上下文数据计算的第一特征子向量,从(经匿名化)设备上下文数据计算的第二特征子向量,以及从(经匿名化)行为上下文数据计算的第三特征子向量。可例如通过将所计算的特征向量馈送给机器学习算法来从所计算的特征向量学习用户认证数据模型。
如下文将进一步更详细描述的,位置上下文数据可包括例如由用户的智能电话中的GPS传感器提供的数据,或与对于用户的智能电话可见的Wi-Fi接入点、蓝牙设备和电话网络有关的数据。设备上下文数据可包括例如表示以下各项的数据:IMEI、IMSI、设备型号名称、以及安装在电话中的应用。行为上下文数据可包括例如表示以下各项的数据:用户所使用的app、app使用历时、电话呼叫模式以及电话呼叫历时。
一旦已学习或生成用户认证数据模型,ConSec认证系统就可使用这些所学习的用户认证数据模型以在认证阶段期间对用户进行认证。在一些实施例中,ConSec认证系统的组件(例如ConSec-App)可以在认证阶段期间收集该用户的近期上下文数据的一个或多个集合或快照。所收集的近期上下文数据的这一个或多个集合可例如由ConSec-App匿名化。对所收集的近期上下文数据的该一个或多个集合的该匿名化可例如以与上面提及的登记上下文数据相同的方式完成。经匿名化的所收集的近期上下文数据的该一个或多个集合可例如由用户的智能电话或访问设备传送给认证服务器(例如ConSec-Auth应用),其可以将接收到的经匿名化的近期上下文数据与用户认证数据模型进行匹配。
为了匹配上下文数据,可以与在学习阶段期间完全相同的方式来计算特征向量,并且所计算的特征向量可与所学习的用户认证数据模型相匹配。在一些实施例中,可例如在经匿名化的所收集的近期上下文数据被传递给认证服务器之后由认证服务器来计算特征向量。在其他实施例中,可例如在所述传递之前例如作为匿名化过程的一部分而在用户的智能电话或访问设备上计算特征向量。
在一些实施例中,匹配操作的结果可包括或者可表示所计算特征向量与所学习的用户认证数据模型的匹配程度(根据某种标准)。在一些实施例中,匹配操作的结果可以用认证分数来表示。认证分数可被视为用户的智能电话或访问设备的当前用户的确与合法登记用户相同的概率或可能性量度。例如,在一些实施例中,所计算特征向量与所学习的用户认证数据模型之间的不良匹配可被解读为低认证分数(即,用户的智能电话或访问设备的当前用户的确与合法登记用户相同的低概率或低可能性),而良好匹配可被解读为高认证分数(即,用户的智能电话或访问设备的当前用户的确与合法登记用户相同的高概率或高可能性)。匹配操作的结果(诸如认证分数)可被远程可访问应用用来采取恰适动作,例如通过在决策过程中使用该结果例如来决定是否登录该用户、或者是否给予或继续给予用户对某些资源的访问、或者是否接受或执行可由用户提交或请求的某些事务。
上下文数据
以下段落提供对可以为特定用户收集的不同类型的上下文数据的简要描述。各种上下文数据元素可被编群成三种类别:位置数据、设备信息和行为信息。
位置数据
位置数据是与用户的位置相关的上下文数据。位置相关的上下文数据可包括可计算位置数据和不可计算位置数据。
可计算位置数据
在一些实施例中,可计算位置数据可包含纬度、经度、水平精度、气压高度、声音和磁指纹。以下给出关于这些各种可计算位置数据元素的更多细节。
通过创建位置散列来匿名化可计算位置数据
在一些实施例中,可计算位置数据可通过以下操作被匿名化:借助于相似度保留匿名化变换来变换可计算位置数据。在一些实施例中,该相似度保留匿名化变换可包括对可计算位置集合应用散列算法(如LSH散列算法)以产生所谓的位置散列,如以下一些段落中更详细解释的。
地理位置
地理位置可由三维向量表示,其中X、Y和Z坐标可以用例如ECEF(地心地固)坐标系来指示地球上的地理位置。三维地理位置向量可以从可例如由被包括在用户智能电话中的位置传感器(诸如GPS传感器)给出的用户(或取而代之用户的智能电话)的纬度和经度信息计算如下。
在一些实施例中,地理纬度(φ)和经度(λ)值可被变换成例如地心地固(ECEF)笛卡尔坐标系中的X、Y和Z值。WGS84(世界大地坐标系84)地球模型可被用于将地球表面建模为椭球体。以下公式可被用于将纬度(θ)和经度(φ)值变换到ECEF坐标系中:
Figure BDA0002633356090000331
其中h是高度(如可由用户的访问设备的GPS传感器提供的),并且其中主垂线(N)中的曲率半径由下式定义:
Figure BDA0002633356090000332
在这些等式中,可从WGS84获得第一偏心率的平方(e2)、半长轴(a)和半短轴(b):e2=6.69437999014×10-3,a=6378137m并且b=6356752.3142m。
由GPS传感器记录的纬度和经度值是地理坐标或大地坐标。大地纬度由赤道平面与椭球体法线之间的角度确定(如图3中所示的由线段PI与地球的长轴形成的角度:大地纬度(θ)和地心纬度(θs))。因此,地球表面上的纬度值在不同地点与长轴相交并且不是直接可比的。为了能够比较两个纬度值,大地纬度值可相对于地心转换(由点P与线段PO相对于长轴形成并穿过地心的角度)。WGS84椭球体模型可被用于将地球表面建模为椭球体。因此,可使用ECEF坐标系以使得纬度值可以被用于计算。
在其他实施例中,其他方法可被用于将GPS坐标变换成3维(优选地标准正交)坐标系中的向量,该3维坐标系可以优选地是固定的或随地球共同移动。
地理位置数据的替换源可以基于移动网络基站的三角测量(例如,在用户的智能电话到具有已知位置的数个移动网络基站的距离的量度可供使用的情况下)。
水平位置精度
在一些实施例中,用户位置的水平精度可以从位置传感器获得。
气压高度
气压高度可以从由可被包括在用户的智能电话或访问设备中的压力传感器提供的气压测量推导出。气压可提供关于用户位置的有价值上下文信息,这是因为它可被用作用户位置的海平面以上高度的指示。不同于GPS高度,这种气压高度具有在建筑物内部也可以进行测量的优点。来自压力传感器的数据可被用于计算气压高度,这是由于大气压力随着高度降低。气压高度H可以从由压力传感器提供的所测得压力(p)以及参考压力(p0))和温度(T0)使用以下公式计算:
Figure BDA0002633356090000341
参考压力(p0)和温度(T0)可从在线气象站(优选地最接近用户的智能电话或访问设备的实际位置的气象站)查询。例如,在一个实施例中,可使用来自OpenWeatherMap气象站(https://openweathermap.org/)的数据。查询参考压力(p0)和温度(T0)的频度可以在各个实施例之间变化。例如,在一些实施例中,可以每天查询这些值固定次数(例如,四次)。在其他实施例中,每次推导出新的气压高度值时就可以查询这些值。在一些实施例中,气压高度值H仅在可以查询参考压力(p0)和温度(T0)的情况下进行更新。
噪声/声音
背景噪声的平均幅度可以被用作上下文数据。音频数据可以从被包括在用户的智能电话中的话筒读取,并且最大幅度可被记录为背景噪声的幅度。噪声信息提供关于用户位置的信息。一些位置具有特定的平均噪声特性。例如,办公室很可能具有与超市不同的噪声特性。
磁指纹
用户位置的磁指纹可使用来自可被包括在用户的智能电话中的磁力计传感器和加速度传感器的数据来计算。地球的磁场强度和磁倾角可被收集为上下文数据。这些数据在地球表面上是唯一性的并且因此提供关于用户位置的有价值信息。
磁场强度:磁场的强度在地球表面上变化。它在两极最强并且在赤道最弱。幅度从x、y和z方向上的磁场计算:
Figure BDA0002633356090000351
磁倾角:磁倾角是磁场线与地球表面相交的角度。该角度的范围从赤道的0度到两极的90度。
为了从磁场传感器数据正确地计算磁倾角,传感器坐标需要相关于世界坐标系(即,重力坐标空间)对准。当在图4的左侧所示的默认取向上握持设备时,磁场传感器的三个轴与设备坐标对准。加速度计数据可被用于计算设备取向和相对于世界坐标的数据变换矩阵。加速度计数据测量当设备(相对于地球)不在加速或移动时由于地球的重力引起的力。因此,需要使用在没有设备加速度情况下的加速度计数据来计算设备取向。当用户的访问设备(相对于地球)不在加速时,加速度计数据的幅度
Figure BDA0002633356090000352
具有约g=9.8m/sec2的值。具有接近该值的幅度的加速度计数据样本很可能对应于设备相对于地球不在加速的情况并且可被用于计算设备取向。可以计算将加速度数据向量变换成使得它仅在z方向上具有加速度分量并且在x和y方向上加速度为零的矩阵
Figure BDA0002633356090000353
所测得的磁场向量
Figure BDA0002633356090000354
随后可被变换如下:
Figure BDA0002633356090000355
磁倾角随后可从经变换磁场向量的水平幅度和z分量计算:
Figure BDA0002633356090000356
Wi-Fi信息
与用户的智能电话或访问设备的Wi-Fi环境相关的各种数据元素(如下面提到的)可被收集为上下文数据。
-Wi-Fi路由器名称:移动设备连接到的Wi-Fi路由器的名称。
-Wi-Fi路由器MAC:移动设备连接到的Wi-Fi路由器的MAC地址。
-Wi-Fi收到信号强度(RSSI):移动设备连接到的Wi-Fi路由器的收到信号强度。
-Wi-Fi路由器IP:移动设备连接到的Wi-Fi路由器的IP地址。
-Wi-Fi网络ID:移动设备连接到的Wi-Fi路由器的网络ID。
-Wi-Fi DNS1:移动设备连接到的Wi-Fi路由器中的主DNS(域名系统)设置。
-Wi-Fi DNS2:移动设备连接到的Wi-Fi路由器中的副DNS设置。
-被扫描Wi-Fi名称列表:可用的Wi-Fi名称列表。
-被扫描Wi-Fi MAC(媒体接入控制)列表:可用的Wi-Fi MAC列表。
-被扫描Wi-Fi的收到信号强度列表:存在的Wi-Fi网络的收到信号强度的列表。
电话网络信息
-移动网络类型:移动网络类型,例如2G、3G、4G、LTE。
-移动网络信号强度:收到信号强度。
-移动网络运营商名称:移动网络运营商的名称。
-移动网络MCC和MNC:移动运营商MCC(移动国家码)和MNC(移动网络码)。
-移动网络LAC:当前位置的移动运营商的LAC(位置区域码)。
-移动网络蜂窝小区ID:来自移动运营商的当前位置的移动网络蜂窝小区id。移动运营商可通过若干六边形GSM蜂窝小区划分城市。BTS(基传输站)站向移动电话提供无线电链路。每个GSM蜂窝小区具有被指派给它的唯一性id。
蓝牙信息
-蓝牙配对设备名称列表:可用的蓝牙设备名称列表。
-蓝牙配对设备MAC列表:可用的蓝牙设备MAC地址列表。
时间
一般而言,可预期用户的上下文数据具有时间相关模式。例如,用户的上下文数据中可能存在某些周期性相关。这些时间相关模式可通过在分析上下文数据时将时间包括作为上下文数据元素来检测。为了促成这种分析,可以在上下文数据中包括一个或多个时间值模一个或多个典型周期。平均用户上下文数据可在其上示出模式的典型周期可以例如是:一年(用户可能具有多年来可能重现的季节性相关习惯:诸如在一年中或多或少相同时段的海外假期)、一月、一周(例如,在工作周中各天的用户上下文数据集合可能明显区别于周末的上下文数据集合)、或一天(用户可能例如在一天的时间中相当规律地在早晨起床、休息、吃晚餐、从办公室驾车回家、睡觉等等)。
-时间戳日期索引:上下文数据的时间戳的工作日索引。例如,0=周一,并且6=周日(即,以轮转的日期为单位的时间模7天))。
-以秒计的时间戳:自同一天的午夜以来以秒计的时间(即,以秒计的时间模24小时)。
设备信息
-SIM序列号:SIM卡的19位序列号。
-IMEI:移动硬件的IMEI(国际移动装备身份)号。
-IMSI:移动号码的IMSI(国际移动订户身份)。移动网络运营商使用该信息来标识SIM用户。
-电话类型:电话的类型:GSM或CDMA。
-经Wi-Fi配置的名称:预配置的Wi-Fi名称列表。
-经Wi-Fi配置的MAC:预配置的Wi-Fi MAC列表。
-蓝牙名称:蓝牙名称。
-蓝牙MAC:蓝牙MAC地址。
-蓝牙配对设备:配对的蓝牙设备名称列表。
-蓝牙配对设备MAC:配对的蓝牙设备MAC列表。
-系统安装的app:安装在电话镜像中的app。
-设备名称:移动设备的制造商设备名称。
-设备型号:来自制造商的移动设备的型号名称。
-设备产品:来自制造商的整体产品的名称。
-设备品牌:移动设备的品牌名称。
-设备板:移动设备中使用的底层母板或处理器板的名称。
-设备制造商:移动硬件的制造商。
-设备序列号:移动设备序列号。
-设备硬件配置:表示设备的配置的字符串。该字符串可包括:存在于用户的智能电话或访问设备中的传感器的名称(例如,加速度计、磁力计等等)、以英寸和像素计的屏幕大小、以及安全性配置(用户是否启用PIN或密码)。
行为信息
-用户安装的app:用户在用户的智能电话上安装的app列表。
-App使用名称:用户所使用的app的名称列表。可以收集过去24小时、12小时、6小时、以及3小时和1小时中使用的app的名称。
-App使用总历时:可以收集用户所使用的app的使用历时。可收集在过去24小时、12小时、6小时、以及3小时和1小时中使用的app的使用历时。
-传出号码:用户在过去24小时、12小时、6小时、以及3小时和1小时中呼叫的传出号码以及联系人列表中的对应姓名的列表。
-传出历时:用户在过去24小时、12小时、6小时、以及3小时和1小时中作出的传出电话呼叫的总历时。
-传入号码:用户在过去24小时、12小时、6小时、以及3小时和1小时中接收的传入号码以及联系人列表中的对应姓名的列表。
-传入历时:用户在过去24小时、12小时、6小时、以及3小时和1小时中接收的传入呼叫的总历时。
-Wi-Fi数据传送量:用户在过去24小时、12小时、6小时、以及3小时和1小时中通过Wi-Fi传送的数据量。
-Wi-Fi数据接收量:用户在过去24小时、12小时、6小时、以及3小时和1小时中通过Wi-Fi接收的数据量。
-移动数据传送量:用户在过去24小时、12小时、6小时、以及3小时和1小时中通过移动网络传送的数据量。
-移动数据接收量:用户在过去24小时、12小时、6小时、以及3小时和1小时中通过移动网络接收的数据量。
-电话解锁次数:用户的智能电话在过去24小时、12小时、6小时、以及3小时和1小时中已被用户解锁的次数。
增强上下文数据的隐私
上下文数据可例如通过使用一种类型的散列算法变换至少一些上下文数据来被匿名化,以增强用户的隐私。上下文数据可包含可计算数据(例如,纬度、经度、气压高度等等)和不可计算数据(例如,Wi-Fi名称、Wi-Fi MAC地址等等)的混合。保留经变换数据的可计算性(例如,以便能够以有意义的方式比较不同值)对于可计算数据可能是重要的,以使得认证系统可以能够分析经变换上下文数据以例如使用机器学习算法来学习认证数据模型。出于此原因,使用相似度保留匿名化变换来匿名化至少一些可计算数据元素值可能是有利的。
以下段落描述了可以如何匿名化可计算和不可计算上下文数据。
可计算数据
相似度保留匿名化变换(诸如地点敏感散列(LSH)算法)可被用于对(全部或一些)可计算上下文数据值(例如位置上下文数据)进行变换或散列。通过向位置数据应用地点敏感散列(LSH)算法得到的经变换数据值可被称为位置散列。由于位置数据(例如,地理位置)携带关于用户的隐私敏感信息,因此位置数据可被变换成位置散列以增强隐私。一些可计算上下文数据(诸如接收和传送的数据量、app使用历时和呼叫历时)在一些实施例中可被认为不包含隐私敏感信息,并且因此在一些实施例中不要求对这些数据的特定变换,即,这些数据在此类实施例中可被纳入经匿名化数据而无需进行散列(或另外以不可逆的方式进行变换)。位置散列可从包括地理位置、气压高度、噪声级、磁场强度和磁倾角的位置数据计算。
LSH算法可以被宽泛地编群成两个主要类别:数据无关算法和数据相关算法。第一类别中的LSH算法(数据无关LSH算法)随机地并且独立于数据生成LSH函数参数,而第二类别中的算法(数据相关LSH算法)从数据学习LSH函数参数。在一些实施例中,可使用来自第一类别的超比特LSH(SB-LSH)算法(参见J.Ji、J.Li、S.Yan、B.Zhang、和Q.Tian,“Super-bitlocality-sensitive hashing”,发表于Advances in Neural Information ProcessingSystem,2012,pp.108–116)。它具有以下优点。LSH函数参数可以针对每个用户随机地生成并且因此提供经计算的位置散列值的很大随机性。如果LSH函数参数针对特定用户受损害,则可以为该用户生成新的LSH函数参数集并且认证系统也可以重新初始化。最后,第一类别中的方法(数据无关LSH算法)在计算上更加高效并且更适合于在计算方面受限的设备(例如智能电话),而第二类别中的方法(数据相关LSH算法)需要复杂的机器学习算法来学习LSH参数。
在初始化阶段(其例如可在登记阶段开始之前或开始时发生)期间,可确定SB-LSH算法的一些参数的初始化值。])这些参数值可包括维度Dsalt(D)的盐向量的Dsalt分量si的值,以及一组K个LSH向量vi:[v1,v2,.....,vK](其也可以被称为LSH函数)的值。K(指示LSH向量数目的正整数)和Dsalt(指示盐向量的分量数目的正整数)是SB-LSH算法的必须选择其值的参数。K个LSH向量vi的维度Dlshv可被选择为等于要被变换的原始数据向量的维度Doldv与盐向量的维度Dsalt的总和,即,Dlshv=Doldv+Dsalt。这些参数的值(即,盐向量的值和K个LSH向量或LSH函数的值)可以使用可(例如,由真随机发生器或伪随机发生器)随机生成的值每个用户初始化一次(并且随后永久地存储)。初始化值的这种生成在一些实施例中可以在用户的访问设备或智能电话上发生。在一些实施例中,K个LSH向量vi的值可以从正态分布N(0,1)采样,并且K个LSH向量vi可使用例如Gram-Schmidt过程进一步正交化(在最多Dlshv个向量的群中)。
在初始化阶段之后,例如在登记阶段期间或在认证阶段期间,位置数据集合可通过使用如下SB-LSH算法将位置数据集合变换成位置散列来被匿名化。
在一些实施例中,原始位置数据向量可通过将所收集的一组各个位置数据元素的值组合在单个向量中来生成。例如,在一些实施例中,原始位置数据向量可包括3维地理位置向量、以及1维气压高度、噪声级、磁场强度和磁倾角值。随后,经加盐的位置数据向量可通过使用上面提到的盐向量对原始位置数据向量进行扩展来生成。该加盐有助于整个变换所达成的匿名化效果。通过构造,经加盐的位置数据向量的维度等于K个LSH向量vi中的每一者的维度(参见上面关于生成LSH向量的描述)。在上面给出的7维原始位置数据向量的示例并在3维盐向量的情况下,经加盐的位置数据向量和K个LSH向量vi两者都将是10维的。
经加盐的位置数据向量(x)随后可被投影到K个LSH向量vi中的每一者上以计算位置散列。经加盐的位置数据向量(x)在K个LSH向量vi中的每一者上的投影可以被计算为1比特值
Figure BDA0002633356090000412
其中sgn(.)被定义为:
sgn(z)=0,z≥0
=1,z<0
通过级联K个1比特
Figure BDA0002633356090000413
值,这得到以下K比特位置散列值:
Figure BDA0002633356090000414
SB-LSH算法具有两个不同原始位置数据向量之间的角距离可以从对应位置散列值之间的汉明距离计算出的属性。可以示出,两个位置向量a和b的位置散列值之间的汉明距离的预期值与这两个位置向量之间的真实角距离θ成比例:
Figure BDA0002633356090000411
其中C=K/π是常数。因此,原始位置向量之间的角距离可以从对应的位置散列计算(或在概率性意义上估计)。即,基于SB-LSH算法对位置数据值的匿名化变换是(概率性)相似度保留匿名化变换的示例。
K个随机生成的LSH向量或函数被用于计算位置散列。可能出现关于参数K的优选值的问题。该值取决于安全性强度以及在从对应的位置散列值计算不同原始位置数据向量之间的距离时需要的精度。在两种情形中,都期望大的K值。另一方面,大的K值增加了需要传送并存储在服务器上的数据量。优选在计算距离时给出合理误差并且从安全性角度而言也不太小的K值。执行实验以用统计方式测试对于不同K值从位置散列计算距离时的最大误差。大量不同位置值(即,纬度和经度)被随机地生成。在一方面从实际位置值计算的真实角距离与另一方面从对应位置散列值获得的角距离之间计算均方误差(mse)。从该实验可以观察到,在K=4000情况下可以达成约500米的距离精度。此外,在K=4000情况下的散列长度从安全性角度而言合理地较高。可以进一步观察到,对于大于4000的K值,均方误差下降得更加缓慢。因此,在一些实施例中,可以选择值K=4000。在一些实施例中,可以选择大于2000且小于8000的K值。在其他实施例中,可选择大于3000且小于6000的K值。
不可计算数据
不可计算数据可使用恒等保留匿名化变换来变换。恒等保留匿名化变换可例如使用密码散列算法来进行散列。恒等保留匿名化变换可例如包括向要被变换的数据应用键控散列算法。例如,在一些实施例中,HMAC-SHA256(散列消息认证码-安全散列算法256)算法可被用于如下计算经变换数据值:
散列=HMAC(数据,秘密密钥+数据名称)
“秘密密钥”可具有128比特的长度并且它可包括盐或可从盐推导出。该盐可能已例如在初始化阶段期间生成,该初始化阶段可在登记阶段开始之前或开始时发生。可能已为每个用户随机地生成这种盐并且可由ConSec App永久地存储在用户的智能电话上。这种盐的生成可能已在用户的智能电话上发生。“数据名称”是正在进行散列的上下文数据元素的名称,并且“数据”是正在进行散列的该上下文数据元素的值。例如,对于上面提到的设备名称上下文数据元素,数据名称是如可在ConSec App的实施例的源代码中定义的“Device_Name”。
学习认证数据模型
以下段落给出关于可以如何从经匿名化上下文数据学习特定用户的用户认证数据模型的更多细节。学习用户认证数据模型可包括以下两个步骤:第一特征提取步骤、以及第二步骤,在第二步骤中可应用机器学习算法以计算推断模型或用户认证数据模型。
特征提取步骤
特征向量是从上下文数据的每个快照计算出的。从位置、设备和行为上下文数据计算出的特征子向量可被级联以形成特征向量。表1、表2和表3分别列出了位置、设备和行为上下文数据的各个上下文数据元素及其特征类型。在一些实施例中,特征向量可通过将特征向量分量确定为因变于上下文数据快照中的各个数据元素的一个或多个值的数值来计算。可使用用于确定不同特征向量分量的数值的不同方法,例如这取决于用于确定相应特征向量分量的数值的一个或多个上下文数据元素的类型。此类方法的一些示例在以下段落中讨论。
余弦距离:在一些实施例中,位置散列数据自身不被用于计算。可预处理位置散列数据以计算与该位置散列数据相关联的特征向量分量。可相对于数个参考位置散列计算数个余弦距离相似度值以计算特征向量。被选择为参考位置散列的位置散列的数目可以与来自训练/登记数据的位置数据的维度相同。参考位置散列可在登记阶段期间例如使用在登记阶段期间获得的位置散列计算一次,例如通过对在登记阶段期间获得的位置散列应用聚类算法来计算。来自训练样本的位置散列的模式被用作参考。例如,最频繁出现的位置散列可被用作参考位置散列。
值(V):用“V”指示的特征类型直接使用来自上下文数据元素的值。
求和值(SV):用SV指示的特征类型是通过对数据元素的值集合进行求和来计算的。
对于不可计算数据,可创建字典以将不可计算数据值映射到数值以实现计算。在此类字典中,数值可与字典中的每个不可计算数据值条目相关联。不可计算数据的不同特征类型为:
字典值(DV):使用字典中的数值。
均值字典值(MDV):对于包括不可计算数据值列表的上下文数据,特征值可通过计算字典中与列表中的不可计算数据值相关联的数值的均值来计算。
独热编码(OHE):独热编码特征可被用于对不可计算数据进行编码。它还可被称为1-of-K(one-of-K)方案。输出将是每一列对应于一个特征的一个可能值的稀疏矩阵。每一列可对应于在登记阶段期间已遇到的值。例如,为了计算“被扫描Wi-Fi名称列表”数据元素的OHE特征值,OHE模型配备有存在于登记数据中的Wi-Fi名称。如果出现4个不同的可能Wi-Fi名称,则特征输出将具有4列,其中每个名称一列。表1中给出了一些示例特征。
表1:OHE特征
VascoGuest VascoMobile VascoTest VascoWLAN
[‘VascoGuest’,‘VascoTest’] 1 0 1 0
[‘VascoMobile’] 0 1 0 0
类似地对于具有值ON或OFF的“Wi-Fi状态”,特征值为:
ON OFF
ON 1 0
OFF 0 1
表2:位置特征
上下文数据 特征类型
位置散列 余弦距离
Wi-Fi状态 值(on/off)
Wi-Fi路由器MAC DV
Wi-Fi名称 DV
Wi-Fi指派IP DV
Wi-Fi网络ID DV
Wi-Fi RSSI
Wi-Fi频率 DV
Wi-Fi路由器IP DV
Wi-Fi DNS1 DV
Wi-Fi DNS2 DV
Wi-Fi名称列表 MDV
Wi-Fi MAC列表 MDV
SIM状态 OHE
网络数据状态 OHE
网络数据类型 DV
网络RSSI
网络运营商名称 DV
网络MCC和MNC DV
网络LAC DV
网络蜂窝小区ID DV
连接的蓝牙设备列表 MDV
日期索引 值(0=周一…6=周日)
时间 值(自午夜以来以秒计的时间)
表3:设备特征
Figure BDA0002633356090000451
表4:行为特征
Figure BDA0002633356090000452
Figure BDA0002633356090000461
一旦特征向量已被计算,它们就可被标准化为零均值和单位方差。这可具有各个特征向量分量都可有相同权重的优点。
学习用户认证数据模型
在各个实施例中,用于学习用户认证数据模型的机器学习算法可例如从机器学习算法的不受监督式(聚类)和受监督式(分类器)类别中选择。从聚类类别中选择的算法可包括K均值和自组织映射(SOM)。从分类器类别中选择的算法可包括SVM、随机森林(RF)和多层感知神经网络(MLP)。可使用来自scikit学习软件包的SVM、RF和MLP算法的实现。可执行网格搜索以使用这些算法的恰适设置。分类器类别中的算法还需要负训练样本集合。在一些实施例中,来自数个(例如,四个)随机选择用户的上下文数据可被用作负样本。
对于聚类算法,需要指定K均值的聚类数目和SOM的神经元数目。聚类和神经元的大小还可从来自位置散列的直方图的信息计算。例如,可计算位置散列的累积直方图。给出大于0.8的累积直方图的位置散列的箱(bin)数可被选择为聚类大小或神经元数目。对于这两种算法,聚类的最大数目还可被限制于25。
用户认证
一旦用户认证数据模型已被计算,ConSec就准备好进行认证。为了对用户进行认证,可在用户的智能电话上收集上下文数据的快照或集合、进行匿名化并发送给认证服务器。随后,可完全如之前在学习期间那样计算并标准化对应的特征向量(f)。特征向量随后可与可能已在登记阶段期间获得(并且可能自此之后已被更新一次或多次)的认证数据模型进行比较。可从特征向量与认证数据模型的匹配程度计算认证分数。
对于聚类办法,相对于数据模型的最小欧几里得距离(d)可被计算为特征向量与构成认证数据模型的聚类的匹配程度(其中uk可表示聚类k的中心):
Figure BDA0002633356090000471
认证分数可被计算为:
分数=1-d
如果特征向量已被归一化,则认证分数被定界(在[0,1]之间)。
对于分类器办法,由算法提供的“predict_proba”函数可被用于确定认证分数的值。这基本上计算相对于决策边界的距离。
更新所学习的用户认证数据模型
上下文数据可包括静态信息和非静态信息两者。非静态信息可以随时间变化并且因此按或多或少规则的时间间隔来更新用户认证数据模型可能是有利的。例如,某些位置处的Wi-Fi路由器列表可以随时间变化,其中一些Wi-Fi路由器可以消失并且新的Wi-Fi路由器可以出现。因此,用户认证数据模型可能必须按规则的间隔进行更新。在一些实施例中,一周的间隔可以被选择为默认的更新时间间隔。在该间隔中收集的上下文数据可被用于计算经更新的用户认证数据模型。在一些实施例中,如果以较高精度预测了一周中的上下文数据,则在该间隔中收集的上下文数据可被用于计算经更新的用户认证数据模型。在一些实施例中,在计算经更新的用户认证数据模型的时刻之前的时间间隔中收集的一些或全部上下文数据可被用于计算经更新的用户认证数据模型。在一些实施例中,该时间间隔的长度可以是固定的,例如,一天、两天、一周、两周、一个月等等。在一些实施例中,该时间间隔可与当前更新和前一次更新之间的时间间隔重合。在一些实施例中,如果满足某种条件,则在计算经更新的用户认证数据模型的时刻之前的时间间隔中收集的一些或全部上下文数据可被用于计算经更新的用户认证数据模型。例如,在一些实施例中,如果在该时间间隔中的平均认证分数已超过某一第一阈值,则可使用在该时间间隔中收集的上下文数据。在一些实施例中,使用对应认证分数已超过某一第二阈值的那些上下文数据集合。在一些实施例中,如果已成功提供了额外的认证因子(诸如静态或动态密码、或生物特性),则仍然可使用未超过所述第二阈值的上下文数据集合。在一些实施例中,只有在计算经更新的用户认证数据模型的时刻之前已收集、并且满足某些条件或标准的上下文数据集合可被用于计算经更新的模型。这些条件或标准可计及诸如以下各项的元素:这些上下文数据集合已被收集的时间或时间段,对应于这些上下文数据集合的认证分数,或附加认证元素,诸如与这些上下文数据集合一起提供的附加认证凭证。在一些实施例中,被用于计算经更新模型的不同上下文数据集合可被给予不同的权重。这些权重可以因变于诸如前述元素之类的元素。例如,在一些实施例中,较新的上下文数据集合可被给予高于较旧上下文数据集合的权重。
一些ConSec认证系统关于隐私保留的优点
在一些实施例中,不可计算上下文数据可使用密码散列算法来匿名化。由于密码散列算法是不可逆的,因此这种匿名化过程确保上下文数据的隐私。在一些实施例中,匿名化变换还可使用秘密的因用户而异的随机密钥来防御字典攻击。在存在该密钥的情况下,使跨不同用户的上下文数据相关也是不可能的,这强有力地增强用户的隐私。
可计算数据(特别是用户位置的位置数据(诸如GPS位置)、高度、声级/噪声级、以及磁指纹)可通过应用LSH散列算法来匿名化。可出现两个问题。首先,是否可能逆转位置散列以找到原始GPS位置坐标?其次,如果用户频繁访问的一些实际位置已知,则是否可能找到与位置散列相对应的位置?例如,借助于三角测量技术,其中可以假定夜晚和白天的位置散列很可能分别对应于家庭和办公室位置,并且其中实际的家庭和办公室位置可以从例如社交和职业网站上公开可获得的信息获得。出于以下原因,不可能从位置散列找到GPS位置。位置散列仅以相对方式揭示各位置之间的角距离,而不会公开地球表面上的实际地理位置。因此,实际地理位置是未知的。由位置散列揭示的各位置之间的角距离不能被用于计算各位置之间的大致地理距离,这是因为位置散列之间的角距离变化可以与来自地理表面坐标变化一样很好地归因于高度或声级变化。因此,使用如上所述的三角测量技术不能取回与位置散列相对应的地理位置。为了获得最大隐私,用户智能电话上的ConSec-App可在电话上安全地保持LSH参数和盐数据而不会将它们发布给认证服务器。每个用户的智能电话上的ConSec app可以随机地生成其LSH参数和盐的(统计)唯一性值,以使得跨不同用户的信息不相关。因此,位置数据的隐私也使用位置散列非常强有力地得以增强。
在一些实施例中,隐私敏感上下文认证数据可由用户的个人客户端计算设备收集并发送给服务器以供分析以用于除了对用户进行认证之外的其他目的。例如,在一些实施例中,上下文数据可由健康应用、或保险应用或健身应用收集。例如,在一些实施例中,应用可收集位置数据和/或加速度数据以找出关于用户的身体移动的更多信息。此外,在这些非认证上下文中,某些数据可被用户视为隐私敏感数据,并且匿名化至少一些所收集的上下文数据可能是有利的。在一些实施例中,与本描述中在认证上下文中描述的相同或相似方法也可被用于匿名化出于非认证目的而收集的上下文数据。在其他实施例中,其他匿名化方法可被用于匿名化出于非认证目的而收集的上下文数据。
在一些实施例中,可使用详细的位置数据例如以分析用户的身体移动,例如以找出用户的每日步行或跑步距离,或者更一般地,找出用户例如在每日基础上可能付出多少体力。在一些实施例中,用户的个人客户端计算设备可收集例如详细的位置数据(诸如GPS坐标)和加速度数据。在一些实施例中,所收集的位置数据可被认为是隐私敏感的,并且可由用户的个人客户端计算设备在转发给应用服务器以供进一步处理之前匿名化。在一些实施例中,所测得的位置坐标可根据等距或全等几何变换来变换,例如通过旋转或镜像已参考其来表达位置坐标的笛卡尔坐标系。在一些实施例中,坐标系的原点保持固定(即,变换不包括平移)。
在一些实施例中,定义全等几何变换的参数可被确定或推导为因变于盐,该盐是秘密的并且仅对用户的个人客户端计算设备为已知并且可能已被随机生成。结果,不知道变换参数的第三方不可能逆转该变换以从位置的经变换坐标取回原始位置。然而,如果第三方知道或猜出一些原始位置和对应的经变换坐标,则该第三方可能能够求解未知的变换参数。在一些实施例中,第三方成功求解(或以其他方式取回)变换参数值的影响可通过有规律地更新这些参数以使第三方无法从旧的参数值计算出新的参数值来最小化。例如,在一些实施例中,可有规律地生成新的盐值,并且变换参数被重新确定为因变于经更新的盐值。在一些实施例中,该更新可例如在每日基础上完成。在一些实施例中,当应用注意到用户已休息达最小时间段(诸如举例而言,半小时)时,可完成该更新,其中应用可从用户休息的位置和/或加速度数据检测例如在该最小时间量内用户是否保持在相同位置和/或是否还没有高于某一阈值的加速度测量。在一些实施例中,如果应用例如基于所收集的位置和/或加速度数据检测到用户正在移动或已移动(其中用户的移动使得应用可假定在没有某种机动交通工具的协助下该用户不能执行该移动),则可完成该更新。例如,如果应用检测到用户正在以例如大于100km/小时的速度移动(例如,达超过最小时间段(例如一分钟)),则应用可进行该更新。
可能已描述了数个实现。然而,将理解可进行各种修改。例如,一个或多个实现的元素可被组合、删除、修改、或补充以形成进一步的实现。相应地,其他实现在所附权利要求的范围内。另外,虽然可能已经关于若干实现中的仅一个实现公开了本发明的特定特征,但可将此类特征与其它实现的一个或多个其它特征组合,如对于任何给定或特定应用可能是期望或有利的。虽然上面已描述了本发明的各个实施例,但应当理解,它们只是作为示例而非限制来呈现的。特别地,出于描述所要求保护的主题内容的目的,当前不可能描述组件或方法体系的每种可构想的组合,但是本领域普通技术人员可以认识到,本发明的许多进一步组合和置换是可能的。由此,本发明的广度和范围不应受限于上述示例性实施例中的任何一者;确切而言,本发明的至少一个实施例的范围仅根据所附权利要求及其等效方案来限定。

Claims (65)

1.一种用于保护用户与基于远程可访问计算机的应用的交互的方法,所述方法包括以下步骤:
-收集一个或多个上下文数据集合;
-匿名化所收集的一个或多个上下文数据集合;
-将经匿名化上下文数据集合传递给认证服务器;
-在所述认证服务器处分析所接收到的经匿名化上下文数据集合以对所述用户进行认证;
其中所述一个或多个上下文数据集合包括一个或多个可计算上下文数据元素的值;
其中匿名化所收集的一个或多个上下文数据集合的步骤包括:使用相似度保留匿名化变换来变换所述可计算上下文数据元素中的至少一者的第一值。
2.如权利要求1所述的方法,其特征在于,至少一些经匿名化上下文数据的值因变于在匿名化之前所收集的上下文数据的原始值以及盐值。
3.如权利要求2所述的方法,其特征在于,所述相似度保留匿名化变换是由因变于所述盐值的参数来参数化的。
4.如权利要求2或3所述的方法,其特征在于,所述匿名化所收集的一个或多个上下文数据集合是由匿名化组件执行的,并且其中,所述盐值仅对所述匿名化组件为已知。
5.如权利要求2至4中任一项所述的方法,其特征在于,进一步包括:使用随机发生器或伪随机发生器来生成所述盐值。
6.如权利要求2至5中任一项所述的方法,其特征在于,进一步包括:在初始化阶段期间生成所述盐值并将所生成的盐值存储在非易失性存储器中。
7.如权利要求2至6中任一项所述的方法,其特征在于,所述匿名化所收集的一个或多个上下文数据集合是在与所述用户相关联的个人客户端计算设备上执行的,其中所述盐值包括已经为与所述用户相关联的所述个人客户端计算设备生成的特定值,并且其中,所述特定值不同于为与其他用户相关联的其他个人客户端计算设备生成的盐值。
8.如前述权利要求中任一项所述的方法,其特征在于,所述分析所接收到的经匿名化上下文数据以对所述用户进行认证包括:利用由所述相似度保留匿名化变换保留的各个接收到的经匿名化上下文数据集合之间的相似度。
9.如前述权利要求中任一项所述的方法,其特征在于,所述相似度包括对距离的量度。
10.如前述权利要求中任一项所述的方法,其特征在于,所述相似度保留匿名化变换包括位置敏感散列变换。
11.如权利要求10所述的方法,其特征在于,所述相似度保留匿名化变换包括数据无关位置敏感散列变换。
12.如权利要求10或11所述的方法,其特征在于,所述相似度保留匿名化变换包括超比特位置敏感散列变换。
13.如前述权利要求中任一项所述的方法,其特征在于,所述相似度保留匿名化变换在概率性意义上保留所述相似度。
14.如权利要求1至9所述的方法,其特征在于,所述相似度保留匿名化变换在确定性意义上保留所述相似度。
15.如前述权利要求中任一项所述的方法,其特征在于,所述一个或多个上下文数据集合进一步包括一个或多个不可计算上下文数据元素的值,并且其中,匿名化所收集的一个或多个上下文数据集合的步骤进一步包括:使用恒等关系保留匿名化变换来对所述不可计算上下文数据元素中的至少一者的第二值进行所述变换。
16.如权利要求2至7中任一项所述的方法,其特征在于,所述一个或多个上下文数据集合进一步包括一个或多个不可计算上下文数据元素的值,并且其中,匿名化所收集的一个或多个上下文数据集合的步骤进一步包括:使用恒等关系保留匿名化变换来对所述不可计算上下文数据元素中的至少一者的第二值进行所述变换,并且其中,所述恒等关系保留匿名化变换是由因变于所述盐值的参数来参数化的。
17.如权利要求15或16所述的方法,其特征在于,所述分析所接收到的经匿名化上下文数据以对所述用户进行认证包括:利用第一收到的经匿名化上下文数据集合中的第一上下文数据元素的第一收到值与第二收到的经匿名化上下文数据集合中的第二上下文数据元素的第二收到值之间的恒等。
18.如权利要求15至17中任一项所述的方法,其特征在于,所述恒等关系保留匿名化变换包括应用密码散列算法。
19.如前述权利要求中任一项所述的方法,其特征在于,进一步包括以下步骤:使用至少一些所述经匿名化的所收集的一个或多个上下文数据集合来学习用于所述用户的一个或多个用户模型。
20.如权利要求19所述的方法,其特征在于,使用至少一些所述经匿名化的所收集的一个或多个上下文数据集合来学习用于所述用户的一个或多个用户模型的所述步骤包括:向所述经匿名化的所收集的一个或多个上下文数据集合中的所述至少一些经匿名化的所收集的一个或多个上下文数据集合应用机器学习算法。
21.如权利要求19或20所述的方法,其特征在于,分析所接收到的经匿名化上下文数据集合以对所述用户进行认证的步骤包括:将至少一些所接收到的经匿名化上下文数据集合与所学习的一个或多个用户模型进行比较。
22.如权利要求21所述的方法,其特征在于,进一步包括:生成反映所述至少一些所接收到的经匿名化上下文数据集合与所学习的一个或多个用户模型的匹配程度的分数。
23.如权利要求20至22中任一项所述的方法,其特征在于,所述机器学习算法包括不受监督式机器学习算法。
24.如权利要求20至23中任一项所述的方法,其特征在于,所述机器学习算法包括聚类算法。
25.如权利要求24所述的方法,其特征在于,所述机器学习算法包括K均值算法。
26.如权利要求19至25中任一项所述的方法,其特征在于,进一步包括:更新所学习的一个或多个用户模型。
27.如权利要求26所述的方法,其特征在于,所述更新所学习的一个或多个用户模型是按规则的间隔来执行的。
28.如权利要求26或27所述的方法,其特征在于,对所学习的一个或多个用户模型的所述更新使用自从对所学习的一个或多个用户模型的所述更新的前一次发生以来已经接收到的至少一些经匿名化上下文数据集合。
29.如前述权利要求中任一项所述的方法,其特征在于,收集一个或多个上下文数据集合、匿名化所收集的一个或多个上下文数据集合、以及将经匿名化上下文数据集合传递给认证服务器的步骤在与所述用户相关联的个人客户端计算设备处执行,其中所述个人客户端计算设备在物理上不同于所述认证服务器。
30.如权利要求29所述的方法,其特征在于,收集一个或多个上下文数据集合以及匿名化所收集的一个或多个上下文数据集合的步骤是由在所述个人客户端计算设备上运行的软件应用来执行的。
31.一种系统,包括:
-收集组件,其被适配成:收集一个或多个上下文数据集合;
-匿名化组件,其被适配成:匿名化由所述收集组件收集的所述一个或多个上下文数据集合;
-认证服务器,其被适配成:分析经匿名化的一个或多个上下文数据集合;
其中由所述收集组件收集的所述一个或多个上下文数据集合包括一个或多个可计算上下文数据元素的值;以及
其中所述匿名化组件被适配成通过以下操作来匿名化所收集的一个或多个上下文数据集合:使用相似度保留匿名化变换来变换所述可计算上下文数据元素中的至少一者的第一值。
32.如权利要求31所述的系统,其特征在于,所述收集组件被包括在与所述用户相关联的个人客户端计算设备中。
33.如权利要求32所述的系统,其特征在于,所述收集组件被适配成:从被包括在所述个人客户端计算设备中的一个或多个硬件传感器接收所述一个或多个上下文数据集合中的至少一些上下文数据元素的值。
34.如权利要求32或33所述的系统,其特征在于,所述收集组件被适配成:从所述个人客户端计算设备的操作系统接收所述一个或多个上下文数据集合中的至少一些上下文数据元素的值。
35.如权利要求32所述的系统,其特征在于,所述匿名化组件也被包括在所述个人客户端计算设备中。
36.如权利要求32至35中任一项所述的系统,其特征在于,至少所述收集组件被包括于在所述个人客户端计算设备上运行的软件客户端应用中。
37.如权利要求36所述的系统,其特征在于,所述匿名化组件也被包括在所述软件客户端应用中。
38.如权利要求32至37中任一项所述的系统,其特征在于,所述个人客户端计算设备在物理上不同于所述认证服务器,并且其中,所述认证服务器被适配成:通过链接所述个人客户端计算设备和所述认证服务器的数据通信网络来接收所述经匿名化的一个或多个上下文数据集合。
39.如权利要求31至38中任一项所述的系统,其特征在于,至少一些经匿名化上下文数据的值因变于在匿名化之前所收集的上下文数据的原始值以及盐值。
40.如权利要求39所述的系统,其特征在于,所述相似度保留匿名化变换是由因变于所述盐值的参数来参数化的。
41.如权利要求39或40所述的系统,其特征在于,所述盐值仅对所述匿名化组件为已知。
42.如权利要求39至41中任一项所述的系统,其特征在于,所述盐值是使用随机发生器或伪随机发生器来生成的。
43.如权利要求39至42中任一项所述的系统,其特征在于,所述盐值在初始化阶段期间被生成并被存储在非易失性存储器中。
44.如权利要求39至43中任一项所述的系统,其特征在于,所述匿名化组件被包括在与所述用户相关联的个人客户端计算设备中,其中所述盐值包括已经为与所述用户相关联的所述个人客户端计算设备生成的、并且不同于为与其他用户相关联的其他个人客户端计算设备生成的盐值的特定值。
45.如权利要求31至44中任一项所述的系统,其特征在于,所述认证服务器被适配成:通过利用由所述相似度保留匿名化变换保留的各个接收到的经匿名化上下文数据集合之间的相似度来分析经匿名化上下文数据以对所述用户进行认证。
46.如权利要求31至45中任一项所述的系统,其特征在于,所述相似度包括对距离的量度。
47.如权利要求31至46中任一项所述的系统,其特征在于,所述相似度保留匿名化变换包括位置敏感散列变换。
48.如权利要求47所述的系统,其特征在于,所述相似度保留匿名化变换包括数据无关位置敏感散列变换。
49.如权利要求47或48所述的系统,其特征在于,所述相似度保留匿名化变换包括超比特位置敏感散列变换。
50.如权利要求31至49中任一项所述的系统,其特征在于,所述相似度保留匿名化变换在概率性意义上保留所述相似度。
51.如权利要求31至46中任一项所述的系统,其特征在于,所述相似度保留匿名化变换在确定性意义上保留所述相似度。
52.如权利要求31至51中任一项所述的系统,其特征在于,由所述收集组件收集的所述一个或多个上下文数据集合进一步包括一个或多个不可计算上下文数据元素的值,并且其中,所述匿名化组件被进一步适配成通过以下操作来匿名化所收集的一个或多个上下文数据集合:使用恒等关系保留匿名化变换来变换所述不可计算上下文数据元素中的至少一者的第二值。
53.如权利要求39至44中任一项所述的系统,其特征在于,由所述收集组件收集的所述一个或多个上下文数据集合进一步包括一个或多个不可计算上下文数据元素的值,并且其中,所述匿名化组件被进一步适配成通过以下操作来匿名化所收集的一个或多个上下文数据集合:使用恒等关系保留匿名化变换来变换所述不可计算上下文数据元素中的至少一者的第二值,并且其中,所述恒等关系保留匿名化变换是由因变于所述盐值的参数来参数化的。
54.如权利要求52或53所述的系统,其特征在于,所述认证服务器被适配成:通过利用第一收到的经匿名化上下文数据集合中的第一上下文数据元素的第一收到值与第二收到的经匿名化上下文数据集合中的第二上下文数据元素的第二收到值之间的恒等来分析所接收到的经匿名化上下文数据以对所述用户进行认证。
55.如权利要求52至54中任一项所述的系统,其特征在于,所述恒等关系保留匿名化变换包括应用密码散列算法。
56.如权利要求31至55中任一项所述的系统,其特征在于,进一步包括用户模型学习组件,其被适配成:使用至少一些所述经匿名化的所收集的一个或多个上下文数据集合来学习用于所述用户的一个或多个用户模型。
57.如权利要求56所述的系统,其特征在于,所述用户模型学习组件使用至少一些所述经匿名化的所收集的一个或多个上下文数据集合、通过以下操作来学习用于所述用户的一个或多个用户模型:向至少一些所述经匿名化的所收集的一个或多个上下文数据集合应用机器学习算法。
58.如权利要求56或57所述的系统,其特征在于,所述认证服务器被适配成:通过将至少一些所接收到的经匿名化上下文数据集合与所学习的一个或多个用户模型进行比较来分析所接收到的经匿名化上下文数据集合以对所述用户进行认证。
59.如权利要求58所述的系统,其特征在于,所述认证服务器被进一步适配成:生成反映所述至少一些所接收到的经匿名化上下文数据集合与所学习的一个或多个用户模型的匹配程度的分数。
60.如权利要求57至59中任一项所述的系统,其特征在于,所述机器学习算法包括不受监督式机器学习算法。
61.如权利要求57至60中任一项所述的系统,其特征在于,所述机器学习算法包括聚类算法。
62.如权利要求61所述的系统,其特征在于,所述机器学习算法包括K均值算法。
63.如权利要求56至62中任一项所述的系统,其特征在于,所述用户模型学习组件被进一步适配成:更新所学习的一个或多个用户模型。
64.如权利要求63所述的系统,其特征在于,所述用户模型学习组件被进一步适配成:按规则的间隔来执行对所学习的一个或多个用户模型的所述更新。
65.如权利要求63或64所述的系统,其特征在于,所述用户模型学习组件被进一步适配成:使用自从对所学习的一个或多个用户模型的所述更新的前一次发生以来已经接收的至少一些经匿名化上下文数据集合来更新所学习的一个或多个用户模型。
CN201980013551.2A 2018-02-14 2019-02-14 用于隐私保留上下文认证的系统、装置及方法 Active CN111742313B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP18020061.0 2018-02-14
EP18020061 2018-02-14
EP18020083.4A EP3528150A1 (en) 2018-02-14 2018-02-27 A system, apparatus and method for privacy preserving contextual authentication
EP18020083.4 2018-02-27
PCT/EP2019/053750 WO2019158671A1 (en) 2018-02-14 2019-02-14 A system, apparatus and method for privacy preserving contextual authentication

Publications (2)

Publication Number Publication Date
CN111742313A true CN111742313A (zh) 2020-10-02
CN111742313B CN111742313B (zh) 2024-05-31

Family

ID=

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112699402A (zh) * 2020-12-28 2021-04-23 广西师范大学 基于联邦个性化随机森林的可穿戴设备活动预测方法
CN112906904A (zh) * 2021-02-03 2021-06-04 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN115643087A (zh) * 2022-10-24 2023-01-24 天津大学 一种基于编码特征与统计行为特征融合的dns隧道检测方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100250497A1 (en) * 2007-01-05 2010-09-30 Redlich Ron M Electromagnetic pulse (EMP) hardened information infrastructure with extractor, cloud dispersal, secure storage, content analysis and classification and method therefor
CN102612702A (zh) * 2009-12-18 2012-07-25 英特尔公司 使用奖励和用户控制的隐私向服务提供商提供上下文的技术
CN104603813A (zh) * 2012-06-11 2015-05-06 英特托拉斯技术公司 数据收集和分析的系统和方法
CN105101183A (zh) * 2014-05-07 2015-11-25 中国电信股份有限公司 对移动终端上隐私内容进行保护的方法和系统
CN105138664A (zh) * 2015-09-02 2015-12-09 中国地质大学(武汉) 一种隐私保护的大数据推荐方法及系统
US20160197729A1 (en) * 2015-01-05 2016-07-07 Advanced Micro Devices, Inc. Location aware cryptography
US20170147575A1 (en) * 2015-11-20 2017-05-25 Yahoo! Inc. Location-Based Recommendations Using Nearest Neighbors in a Locality Sensitive Hashing (LSH) Index
CN106953876A (zh) * 2017-04-27 2017-07-14 华南理工大学 一种基于语义上下文的位置隐私保护方法
CN106992991A (zh) * 2017-05-22 2017-07-28 湖南大学 一种VANET中动态可调的k‑匿名位置隐私保护方法
US20180012011A9 (en) * 2012-03-16 2018-01-11 Traitware, Inc. Authentication system
CN107592298A (zh) * 2017-08-11 2018-01-16 中国科学院大学 一种基于单服务器模型的序列比较算法安全外包方法、用户终端和服务器

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100250497A1 (en) * 2007-01-05 2010-09-30 Redlich Ron M Electromagnetic pulse (EMP) hardened information infrastructure with extractor, cloud dispersal, secure storage, content analysis and classification and method therefor
CN102612702A (zh) * 2009-12-18 2012-07-25 英特尔公司 使用奖励和用户控制的隐私向服务提供商提供上下文的技术
US20180012011A9 (en) * 2012-03-16 2018-01-11 Traitware, Inc. Authentication system
CN104603813A (zh) * 2012-06-11 2015-05-06 英特托拉斯技术公司 数据收集和分析的系统和方法
CN105101183A (zh) * 2014-05-07 2015-11-25 中国电信股份有限公司 对移动终端上隐私内容进行保护的方法和系统
US20160197729A1 (en) * 2015-01-05 2016-07-07 Advanced Micro Devices, Inc. Location aware cryptography
CN105138664A (zh) * 2015-09-02 2015-12-09 中国地质大学(武汉) 一种隐私保护的大数据推荐方法及系统
US20170147575A1 (en) * 2015-11-20 2017-05-25 Yahoo! Inc. Location-Based Recommendations Using Nearest Neighbors in a Locality Sensitive Hashing (LSH) Index
CN106953876A (zh) * 2017-04-27 2017-07-14 华南理工大学 一种基于语义上下文的位置隐私保护方法
CN106992991A (zh) * 2017-05-22 2017-07-28 湖南大学 一种VANET中动态可调的k‑匿名位置隐私保护方法
CN107592298A (zh) * 2017-08-11 2018-01-16 中国科学院大学 一种基于单服务器模型的序列比较算法安全外包方法、用户终端和服务器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TRAN KHANH DANG 等: "Cancellable fuzzy vault with periodic transformation for biometric template protection", 《IET BIOMETRICS》, vol. 5, no. 3, pages 229 - 235, XP055567121, DOI: 10.1049/iet-bmt.2015.0029 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112699402A (zh) * 2020-12-28 2021-04-23 广西师范大学 基于联邦个性化随机森林的可穿戴设备活动预测方法
CN112699402B (zh) * 2020-12-28 2022-06-17 广西师范大学 基于联邦个性化随机森林的可穿戴设备活动预测方法
CN112906904A (zh) * 2021-02-03 2021-06-04 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN112906904B (zh) * 2021-02-03 2024-03-26 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN115643087A (zh) * 2022-10-24 2023-01-24 天津大学 一种基于编码特征与统计行为特征融合的dns隧道检测方法
CN115643087B (zh) * 2022-10-24 2024-04-30 天津大学 一种基于编码特征与统计行为特征融合的dns隧道检测方法

Also Published As

Publication number Publication date
US20190260730A1 (en) 2019-08-22
EP3752935A1 (en) 2020-12-23
US11886558B2 (en) 2024-01-30
EP3528150A1 (en) 2019-08-21
US20220086135A1 (en) 2022-03-17
US11184350B2 (en) 2021-11-23
WO2019158671A1 (en) 2019-08-22
EP3752935B1 (en) 2024-05-15

Similar Documents

Publication Publication Date Title
US11886558B2 (en) System, apparatus and method for privacy preserving contextual authentication
US10439820B2 (en) Method and apparatus for secure access to a mobile edge computing gateway device based on a subscriber location fingerprint
Narain et al. Inferring user routes and locations using zero-permission mobile sensors
US9305298B2 (en) System and method for location-based authentication
US11586714B2 (en) Verification request authentication machine
US20220100838A1 (en) Verification request authentication machine
EP3127016B1 (en) Provable geo-location
Ghinita Private queries and trajectory anonymization: a dual perspective on location privacy
US10080106B2 (en) System and method for processing personal identification information based on position information
US11751162B2 (en) Wi-Fi Z-axis positioning
Sazdar et al. Privacy preserving in indoor fingerprint localization and radio map expansion
US8800027B1 (en) Authentication using privacy protected personally identifiable information
US20210396619A1 (en) Location of interest altitude and determining calibration points
CN111742313B (zh) 用于隐私保留上下文认证的系统、装置及方法
Mainali et al. Privacy-enhancing context authentication from location-sensitive data
Wu et al. Location privacy with randomness consistency
US11329812B2 (en) Constrained key derivation in miscellaneous dimensions
US11387997B2 (en) Constrained key derivation in geographical space
US11784809B2 (en) Constrained key derivation in temporal space
CN113596015A (zh) 基于雾计算的群智感知中支持隐私保护的身份认证方法
Roy et al. Secure and Lightweight Authentication Protocol Using PUF for the IoT-based Wireless Sensor Network
US11438150B2 (en) Constrained key derivation in linear space
Mainali et al. Enhancing the Privacy and Computability of Location-Sensitive Data for Context Authentication
Troja et al. Privacy-Preserving Crowd-Sensing for Dynamic Spectrum Access With Malicious Workers
Wu et al. Cardinality Counting in" Alcatraz": A Privacy-aware Federated Learning Approach

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant