CN112689980A - 单设备多因素认证系统 - Google Patents
单设备多因素认证系统 Download PDFInfo
- Publication number
- CN112689980A CN112689980A CN201980039612.2A CN201980039612A CN112689980A CN 112689980 A CN112689980 A CN 112689980A CN 201980039612 A CN201980039612 A CN 201980039612A CN 112689980 A CN112689980 A CN 112689980A
- Authority
- CN
- China
- Prior art keywords
- user
- code
- access code
- index
- access
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 136
- 230000000007 visual effect Effects 0.000 claims abstract description 123
- 230000004044 response Effects 0.000 claims abstract description 19
- 238000004422 calculation algorithm Methods 0.000 claims description 27
- 230000001815 facial effect Effects 0.000 claims description 2
- 230000002207 retinal effect Effects 0.000 claims description 2
- 230000007246 mechanism Effects 0.000 abstract description 17
- 230000008569 process Effects 0.000 description 87
- 238000004891 communication Methods 0.000 description 45
- 238000013507 mapping Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 14
- 238000003491 array Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 10
- 238000007726 management method Methods 0.000 description 10
- 230000000873 masking effect Effects 0.000 description 10
- 230000004927 fusion Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 8
- 238000013475 authorization Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000001174 ascending effect Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 241001331845 Equus asinus x caballus Species 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000007499 fusion processing Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000003826 tablet Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 101150012579 ADSL gene Proteins 0.000 description 1
- 102100020775 Adenylosuccinate lyase Human genes 0.000 description 1
- 108700040193 Adenylosuccinate lyases Proteins 0.000 description 1
- 244000025254 Cannabis sativa Species 0.000 description 1
- 241000178041 Ceropegia media Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000000981 bystander Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 210000004326 gyrus cinguli Anatomy 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003340 mental effect Effects 0.000 description 1
- 230000036651 mood Effects 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 210000002442 prefrontal cortex Anatomy 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/36—User authentication by graphic or iconic representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6254—Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0861—Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/082—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Bioethics (AREA)
- Biomedical Technology (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
一种多因素认证系统支持各种密码输入机制(例如,字母数字、视觉、语音等),可用于对用户进行认证以访问多个应用程序/网站目的地。示例方法和系统包括实时密码生成器,该实时密码生成器为多个不同服务提供商(例如,包括用户认证的第三方应用程序、云服务、网站等)创建独立于因特网连接的唯一且复杂的密码,而无需在本地或网络存储器(例如密码库)中存储密码。响应于接收到登录请求,用户设备提示用户提供访问代码,并基于安全存储的标识符码生成目的地密钥。可以使用存储的标识符代码和访问代码来重新生成目的地密钥。相同的存储的标识符代码和接收的访问代码可用于为不同的应用程序或服务重新生成不同的目的地密钥。
Description
背景技术
1.技术领域
本文描述的各种实施方案涉及用户认证,并且更具体地涉及用于视觉访问代码的系统和方法。
2.相关技术
常规的媒体对象索引技术是有限的。例如,可根据树分级结构(例如,文件夹和子文件夹或者相册和子相册)来组织媒体对象库,其中每个节点对应于单独的标签。在树(例如,文件夹或相册)中的节点处的媒体对象的成员资格是手动维护的。因此,将媒体对象从一种类型的分类(例如,位置)重新分类成另一种类型(例如,事件)需要对库中的每个媒体对象进行重新分类。
基于关键字的分类(例如,文本标签)可更好地适于创建和维护动态相册或文件夹。然而,基于关键字的分类技术涉及手动输入添加每种可能的标签排列。因此,可能必须仅为单个位置(例如,自然、公园、树木、草地)添加多个标签。此外,一些标签趋于模糊(例如,“Paris”可为城市名或人名)。
基于直接属性的分类(例如,)允许用户创建基于与组成媒体对象相关联的直接属性的动态相册。例如,相册可包括来自某一时间段(例如,从2013年4月11日至2014年5月5日)的所有照片。然而,直接属性系统提供了较差的用户界面(UI),并且对基于直接属性进行的搜索施加了显著的限制。
有限的语义标签(例如,标签)基于有限的一组间接属性来提供媒体对象的动态分类。具体地,标签不区分可能关于媒体对象存在的不同类型的关系。例如,在照片中标记的人可出现在照片中、对照片的内容感兴趣、或者是照片的创建者。
全自动媒体对象索引技术通常是不准确的。例如,图像识别系统即使在标识媒体对象中描绘的通用对象(例如,鞋)时仅具有70%的成功率。这些系统还无法确定关于媒体对象的关系(例如,鞋的所有者、设计者和/或零售商)。相比之下,用于索引媒体对象的手动方法趋于冗长并且容易出错,同时提供很少用户激励。
需要的是用于索引可支持高级搜索和浏览能力的媒体对象的系统和方法。
发明内容
提供了用于使用视觉访问代码进行认证的系统和方法。根据各种实施方案,一种用于注册和认证用户的系统基于视觉访问代码。该方法包括:向用户呈现图像,接收第一图像的选择,从所述第一图像中包括的多个热点中接收至少第一热点集合的选择;以及至少部分地基于所述第一图像和所述第一热点集合的选择来生成视觉访问代码。
本发明概念的其他特征和优点应从以下描述中明显,以下描述通过本发明概念的示例性方面示出。
附图说明
通过参考附图描述示例性实施方案,本发明概念的上述和其他方面和特征将更加明显,在附图中:
图1是展示了网络环境的各种实施方案的网络图;
图2展示了根据各种实施方案的语义索引;
图3展示了根据各种实施方案的戳记用户界面;
图4是展示了根据各种实施方案的用于戳记的过程的流程图;
图5展示了根据各种实施方案的用于向戳记添加关联的过程;
图6展示了根据各种实施方案的对象选择器;
图7A展示了根据各种实施方案的关联选择器;
图7B展示了根据各种实施方案的单个和多个关联选择;
图8展示了根据各种实施方案的视觉界面;
图9展示了根据各种实施方案的视觉浏览菜单;
图10展示了根据各种实施方案的选择准则;
图11展示了根据各种实施方案的用于添加新的搜索选择器的过程;
图12展示了根据各种实施方案的分面(facet)导航界面;
图13展示了根据各种实施方案的分面显示部分;
图14展示了根据各种实施方案的分面表示;
图15展示了根据各种实施方案的有限离散索引;
图16展示了根据各种实施方案的简单派生索引;
图17展示了根据各种实施方案的模糊派生索引;
图18展示了根据各种实施方案的多模式控制开关;
图19A-C展示了根据各种实施方案的多模式UI;
图20展示了根据各种实施方案的数据访问计算;
图21展示了根据各种实施方案的用于实施访问控制的过程;
图22展示了根据各种实施方案的对访问控制规则状态的自动改变;
图23展示了根据各种实施方案的对访问控制规则状态的手动改变;
图24展示了根据各种实施方案的基于中央服务器的同步;
图25展示了根据各种实施方案的对等同步;
图26展示了根据各种实施方案的分层同步;
图27展示了根据各种实施方案的访问控制规则级联;
图28展示了根据各种实施方案的对等浏览会话;
图29展示了根据各种实施方案的用于发起对等浏览会话的过程;
图30展示了根据各种实施方案的用于配置视觉访问代码的过程;
图31展示了用于与视觉访问代码一起使用的示例性锁定码管理界面;
图32展示了根据示例性实施方案的用于配置视觉访问代码的示例性流程;
图33展示了根据各种实施方案的用于将用户标识符映射到照片选择映射的示例性过程;
图34展示了根据各种实施方案的示例性唯一用户十六进制摘要;
图35展示了根据示例性实施方案的用于分配视觉访问代码的示例性注册过程;
图36展示了根据示例性实施方案的用于用密码来对视觉访问代码进行编码的示例性过程;
图37展示了根据各种实施方案的示例性移动界面;
图38展示了根据示例性实施方案的输入视觉访问代码的示例性实现方式;
图39A-C展示了根据各种实施方案的网站上的虚拟输入方法的示例性实现方式;
图40展示了根据各种实施方案的图像融合过程;
图41展示了根据各种实施方案的热点位置移位的示例性实现方式;
图42是展示了根据各种实施方案的有线或无线系统的框图;
图43展示了根据各种实施方案的示例身份建立过程;
图44展示了根据各个实施方案的示例默认密钥生成器过程;
图45示出了根据各个实施方案的示例ghostPassword键盘界面;
图46示出了根据各种实施方案的示例性用户名输入过程;
图47示出了根据各种实施方案的示例性时刻定义界面;
图48示出了根据各个实施方案的示例性浏览器ghostPassword输入过程;
图49示出了根据各个实施方案的示例ghostPassword管理过程;
图50示出了根据各种实施方案的ghostPassword元素的示例流程。
具体实施方式
尽管描述某些实施方案,但是这些实施方案仅仅通过实例来呈现,并且不旨在限制保护范围。本文描述的方法和系统可以各种其他形式来体现。此外,在不脱离保护范围的情况下,可对本文描述的示例性方法和系统的形式进行各种省略、替换和改变。
图1是展示了根据各种实施方案的网络环境100的网络图。参考图1,用户设备110与媒体平台120通信。用户设备110可为能够通过有线或无线连接与媒体平台120通信或者使其与媒体平台通信的任何设备。例如,用户设备110可为有线或无线通信设备,包括例如但不限于智能手机、可穿戴设备、平板个人计算机(PC)、膝上型计算机、台式PC、个人娱乐系统以及嵌入式处理系统。
用户设备110可经由通信网络130与媒体平台120通信。在各种实施方案中,通信网络130表示一个或多个有线和/或无线连接。例如,通信网络130可包括例如但不限于有线和/或无线局域网(LAN)、有线和/或无线广域网(WAN)及其任何组合。
媒体平台120可与本地数据存储区125通信耦接。此外,媒体平台120还可与多个远程和/或第三方数据源通信,包括例如但不限于第一数据源140和第二数据源150。
关联模型
语义索引
在各种实施方案中,媒体平台120可将媒体对象与语义信息相关联,所述语义信息包括例如但不限于属性、关系和分类。语义信息可从一个或多个其他对象(即,包括其他媒体对象)继承,所述对象各自提供单独一组属性、关系和/或分类。
例如,一个媒体对象(例如,照片)可描绘微笑的比尔·盖茨。所述媒体对象可继承比尔·盖茨作为一个人的所有属性以及比尔·盖茨与其他人的关系(例如,年龄、企业家、影响者、亿万富翁、慈善家、父亲、有家室的人、技术人员、美国人等)。微笑意味着比尔·盖茨出现在照片中并且心情愉快。
约翰·史密斯可能对描绘比尔·盖茨的媒体对象(例如照片)的内容感兴趣。因此,所述媒体对象可进一步继承约翰·史密斯作为人的所有属性以及约翰·史密斯与其他人的关系,尽管约翰·史密斯未在照片中描绘。
作为另一个实例,媒体对象(例如,视频)可描绘在事故之后属于爱丽丝的车辆。所述媒体对象可继承爱丽丝的汽车的所有属性(例如,牌子、型号、年份、里程和维护记录),这可经由第三方来源(例如,)来确定。所述媒体对象可进一步继承关于爱丽丝的所有属性,包括例如但不限于爱丽丝的驾驶记录、专业活动和传记信息。此外,所述媒体对象还可继承关于特定事故的所有属性(例如,分类成轻微事故或重大事故)。
在各种实施方案中,媒体平台120可允许经由任何对应的语义信息来搜索媒体对象。例如,可通过搜索微笑的50岁男性的照片而找到描绘比尔·盖茨的媒体对象。类似地,可通过搜索由涉及事故的女性所拥有的汽车的视频而找到爱丽丝的车祸视频。
应当理解,媒体对象可为任何类型的计算机存储文件,包括例如但不限于文本和多媒体(例如,照片、视频)文件。
图2展示了根据各种实施方案的语义索引。参考图2,媒体对象(例如,车辆的照片)可与多个语义信息相关联,包括例如但不限于手动关联2和自动关联4。在各种实施方案中,媒体平台120可基于包括在媒体对象的元数据中的地理位置信息来生成和添加自动关联2。基于手动关联2和自动关联4,媒体对象可继承多个其他关系,包括例如但不限于所有权(例如,鲍勃·史密斯)和位置(例如,约旦中学停车场)。
自动关联模型
在各种实施方案中,可将自动关联添加到媒体对象。例如,可基于地理位置和/或时间戳来生成自动关联。还可基于当前事件(例如,定期集市、假日、私人生日等)和天气(例如,下雨、下雪、风暴)来生成自动关联并将其添加到媒体对象。在一些实施方案中,如果自动关联的确定性低于特定阈值,那么可将自动关联呈现给用户以便进行确认。
增强语义信息
在各种实施方案中,媒体平台120可将新的语义信息添加到媒体对象,这允许基于新的语义信息来搜索媒体对象。例如,如果鲍勃·史密斯退休,那么描绘鲍勃·史密斯的车辆的媒体对象可搜索为“由退休人员拥有的汽车的照片”。
可进一步基于已添加到具有与媒体对象的现有关联的对象的新的语义信息来搜索媒体对象。例如,如果鲍勃·史密斯的儿子查理·史密斯被添加为对象并且查理·史密斯是约旦中学的学生,那么描绘鲍勃·史密斯的车辆的媒体对象也可搜索为“由学生父母拥有的汽车的照片”。
用于语义索引的系统包括媒体平台。在各种实施方案中,媒体平台可包括一个或多个硬件处理器,所述硬件处理器被配置来:接收与第一组语义信息相关联的第一媒体对象;并且将第一媒体对象与和第二组语义信息相关联的第二媒体对象相关联。
根据示例性实现方式,第一媒体对象继承与第二媒体对象相关联的第二组语义信息。第一组语义信息和第二组语义信息可各自包括属性、关系和分类中的至少一个。一个或多个硬件处理器可被配置来自动生成附加语义信息并将自动生成的语义信息与第一媒体对象关联。一个或多个硬件处理器可被配置来至少部分地基于与第一媒体对象相关联的地理位置和时间戳中的一个或多个来自动生成附加语义信息。
根据另一示例性实现方式,一个或多个硬件处理器被配置来从用户接收附加语义信息并将从用户接收的附加语义与第一媒体对象关联。例如,用户可至少部分地通过指示第一媒体对象与和第三组语义信息相关联的第三媒体对象之间的关联来提供附加语义信息。在另一个实例中,用户至少部分地通过指示第一媒体对象与属性、关系和分类中的一个或多个之间的关联来提供附加语义信息。
以人为中心的关联界面
在各种实施方案中,媒体平台120呈现允许用户快速地将语义信息附加到媒体对象的用户界面(UI)。
戳记用户界面
媒体平台120允许用户使用戳记UI 300将语义信息分配给媒体内容。在各种实施方案中,戳记UI 300允许用户使用单击来将语义信息分配给多个媒体对象。戳记UI 300提供了戳记区域4,所述戳记区域显示将要添加的语义信息的类别、来源或值。在一种示例性实现方式中,用户点击来自列表2的目标媒体对象,戳记区域4基于目标媒体对象的分析来推荐语义信息的列表。目标媒体对象的分析可包括对象识别、元数据分析、以及检查与目标媒体项相关联的其他媒体项的语义信息。用户具有在戳记区域4中编辑语义信息的推荐列表的选项,或者可接受整组推荐。例如,用户的单击可利用戳记区域4中所示的一组语义信息来戳记目标媒体对象。
戳记区域4可包括单独的关联6,所述关联可独立于其他关联来添加。戳记区域4还可包括关联模板8。戳记关联模板8可包括基于常用关联而配置的一组语义类别。选择戳记关联模板8为模板中的每个类别分配一组语义信息。例如,家庭戳记关联模板可将目标媒体对象与和家庭相关联的其他媒体对象关联、添加用于家庭的地理位置的语义信息、向也是家庭类别的一部分的人添加关系等。戳记关联模板8可被预先配置用于重复使用用于常用的关联。
根据示例性实施方案,用于语义索引的系统可包括具有一个或多个处理设备的媒体平台,所述处理设备被配置来:索引媒体平台的媒体对象以标识每个媒体对象的语义信息;并且基于匹配的语义信息来关联多个媒体对象。在实例中,处理设备搜索媒体对象的索引寻找与戳记模板共同的语义信息,并且基于搜索,处理设备基于共同的语义信息来将对应的媒体对象进行分类;并且呈现分类的媒体对象以供用户策划。在一些实施方案中,处理设备生成关联的戳记模板,所述戳记模板包括用于将所述关联应用于一个或多个媒体对象的共同语义信息。例如,策划可包括应用戳记模板或一个或多个其他关联。戳记模板可为可编辑的以修改关联的语义信息,并且包括多个关联。在一些实施方案中,所述系统包括具有戳记模板的界面,所述界面通过基于单个选择将来自所选择的戳记模板的关联应用于多个媒体对象来允许用户策划媒体平台的媒体对象。在实例中,处理设备从用户输入接收附加语义信息以与一个或多个媒体对象关联。
戳记工作流程
图4是展示了根据各种实施方案的用于戳记的过程400的流程图。参考图4,在各种实施方案中,过程400可由媒体平台120执行。
在各种实施方案中,在选择数据收集模式时执行过程400。因此,媒体平台120可收集用于戳记中的至少一些特定关联的附加信息。也就是说,标识具有共同语义信息的对象,并且可将共同语义信息分组为关联。共同语义信息的分组可形成模板。当经由戳记动作附加语义信息的分组并且在系统中定义实际的媒体对象时。关联还可在具有允许修改来传播的共同语义信息的对象之间形成关系。
例如,当用户点击屏幕显示6中所示的媒体对象时,响应于确定所述戳记包括食物项关联而出现屏幕显示8。在屏幕显示8中,UI允许收集关于食物的信息。屏幕显示8是特定于对象模板类型的。在用户激活保存功能之后,创建(或存储)新的对象,并且将关联分配给所述对象。
可替代地,如果未选择数据收集模式,那么用户可点击媒体对象,并且将戳记区域4中的其他对象与媒体对象关联。
在各种实施方案中,两个工作流程是媒体平台120的过载方法的一部分。媒体平台120可如由用户指定地递增地收集信息。有利地,由于使用视觉搜索基于额外的信息进行搜索的增强的能力,激励用户花费精力来输入所述信息。
关联选择界面
在各种实施方案中,用户可标识媒体对象的内容、将语义信息与媒体对象关联、并且选择关联的类型。一旦用户将另一媒体对象的内容与目标媒体对象关联,目标媒体对象就继承另一媒体对象的内容的其他关联。有利地,用户可有效地标识内容并将内容与媒体对象高精度地关联。图4展示了用于将世界对象与媒体内容关联的示例性数据收集过程的流程图。
图5展示了根据各种实施方案的用于向戳记添加关联的过程500。参考图5,过程500可由媒体平台120执行。在屏幕显示2中,用户可检查将要策划的媒体对象。用户可从戳记视图中看到将要添加的关联。在戳记视图处,用户可通过选择(例如,点击、触摸等)照片来戳记媒体对象,并且戳记中的所有关联将被添加到照片。可替代地,用户可选择向戳记添加新关联。
响应于用户点击戳记模式按钮,所述过程前进到呈现屏幕显示4,其中菜单允许用户从不同过程中进行选择以添加新关联。例如,在一些实施方案中,用户可通过经由屏幕显示6选择对象类型来添加新关联。当用户选择对象类型时,UI切换到屏幕显示8(即,对象选择屏幕),所述屏幕显示基于所选择的对象类型来呈现可能对象的可搜索列表。用户可搜索对象来添加。在一些实施方案中,屏幕显示8包括戳记图标以提供简单的导航。
在选择特定对象时,呈现关联选择屏幕显示10以允许用户进一步选择对象的关联。用户具有可在未完成关联操作的情况下取消和返回的选项。可替代地,用户可在关联选择屏幕显示10上选择一个或多个关联以完成戳记操作。随后或作为关联选择屏幕10的替代,UI提供附加的确认控制(例如,保存、取消等)以完成关联,诸如在屏幕显示12上描绘的。
图6展示了根据各种实施方案的对象选择器600。用户可选择对象类型并且开始搜索各种对象来进行关联。UI 600显示关联戳记,所述关联戳记显示现有戳记以将已加载到戳记中的对象传送到用户。
关联选择
当用户点击菜单按钮以开始关联编辑模式时,用户可选择以多种方式将关联添加到戳记。例如,用户可从最近关联的列表中进行选择。在另一个实例中,用户可从先前配置的关联模板中进行选择。每个模板是由用户输入的一组关联。例如,模板可包括“小吉姆演奏”、“项目X”或“项目Y的费用收据”。在一些实施方案中,媒体平台120允许用户定义和编辑固定数量的模板。具有有限数量的可配置模板允许用户容易地访问预配置的模板,而无需模板管理系统。
可替代地,用户可选择允许用户浏览对象类型以选择关联的世界对象类型。此外,用户可从共同关联中进行选择,诸如由应用作者配置的一般关联。例如,采用缩略图的应用可使用临时照片关联。
关联挑选器流程
为了简化世界对象与媒体对象之间的关联类型选择,媒体平台120提供允许用户挑选一个或多个关联的优化的关联选择器。图7A展示了根据示例性实施方案的关联选择器700。
例如,为了选择一个关联,用户可点击关联按钮或复选框(例如,选择),这就完成了关联选择。为了选择多个关联,用户可点击复选框(例如,选择),并且关联对话框作为多选对话框来执行。图7B展示了根据示例性实施方案的单个和多个关联选择。
关联搜索
媒体平台120使得用户能够递增地添加关联。此外,媒体平台120允许用户将具有共同参数的物件快速分组在一起以便进行更快的关联。在各种实施方案中,媒体平台120经由多模式用户界面将关联过程与搜索过程链接。通过使用多模式用户界面,用户可在关联与搜索之间快速切换,且反之亦然。这种快速切换允许以下情境:
当用户正添加关联时,用户可切换到搜索模式以限制或筛选可用媒体对象的数量。因此,用户搜索已添加的语义信息或者诸如时间戳的简单属性。
当用户正在搜索时,用户可确定某些语义信息缺失。随后,用户可经由第一级菜单快速切换到戳记模式,并且开始向媒体对象添加更多关联。
所述界面使得用户能够以增量方式添加所需的尽可能多的信息,这减少了感知的工作和努力量。此外,用户可立即认识到新添加的信息的益处,因为UI允许用户使用新添加的语义信息开始搜索。
分层视觉分面搜索
在各种实施方案中,媒体平台120提供视觉界面,所述视觉界面允许用户快速浏览呈现的媒体所满足的准则。选择准则可在特定区域中显示。此外,界面可具有正常模式和最小化模式,以向用户提供更多空间。图8展示了根据各种实施方案的视觉界面800。在最小化模式中,用户处于只读模式,并且无法与各种选择器交互。
在各种实施方案中,将查询呈现为一组选择器简化了最终用户的概念。此外,选择器相对于彼此的位置是重要的,并且用户能够对它们重新排序。
图9展示了根据各种实施方案的视觉浏览菜单900。参考图9,在各种实施方案中,当用户在正常模式下点击中央菜单按钮时,媒体平台120呈现第一级菜单视图2。所述菜单使得用户能够浏览两级分层分面分类。单击菜单按钮呈现第一级分面类别,其允许用户导航到第二级菜单视图4。在第二级菜单视图4中,向用户提供关于各种媒体对象的信息。用户可确定是否存在来自多年(例如,2008年、2010年和2012年但不是2011年)的多个媒体对象,并且筛选以查看从三月到八月的媒体对象。同时,界面显示用于挑选数据的选择器。
选择器
图10展示了根据各种实施方案的选择准则1000。参考图10,选择准则1000可由用户构建。如图10所示,每个分面可存在多个选择器2。选择器2可指定哪些分面值用于搜索。选择准则1000可包括NOT(非)准则4和MUST(必须)准则6,两者都可为单值选择器。选择准则1000还可包括地图位置准则8和值范围准则10,两者都可为OR(或)准则(即,地图位置准则8和值范围准则10中的至少一个必须是真实的)。有利地,用户可快速浏览并理解被用于搜索的准则。
添加新的搜索选择器
图11展示了根据各种实施方案的用于添加新的搜索选择器的过程1100。参考图11,用户点击打开菜单2,所述打开菜单将用户引导到分面浏览模式4。当用户决定使用特定分面进行搜索时,用户可将所述分面拖动到选择器区域。拖动动作很重要,因为它允许用户相对于已存在的选择器来定位选择器。一旦拖放选择器,就显示对话框6以允许用户更详细地编辑所述选择。对话框6可示出从一个分面类型到另一个分面类型不同的UI。显示大界面的目的是赋予计算机应用设计者更多空间来向用户显示各种选项。此外,大界面为用户省去必须处理小空间的麻烦。在对话框6中,用户可为不同的分面值或值范围指定AND(和)、OR(或)和MUST(必须)准则。一旦用户点击接受,新添加的选择器就被呈现在屏幕显示8中。
分面导航
图12展示了根据各种实施方案的分面导航界面1200。
用户可通过选择第一级分面类别中的一个来在分面之间导航。例如,第一级分面类别可被分成几个(例如,5个)主要的组。所述组特定于将要搜索的媒体对象,例如,谁、什么、何时、何地以及如何。当用户点击第一级分面类别中的一个时,可显示第二级分面类别以简化用户的搜索。例如,在“何时”第一级分面类别下,可存在多个第二级分面类别,包括例如但不限于特定日期、天气条件、事件类型和事件名称。在一个示例性实施方案中,每个顶级类别具有不同的颜色以突出显示并帮助标识类别。
当用户单击第二级分面类别时,界面显示可用分面以及用户的媒体对象中存在的分面值。在一些实施方案中,第二级分面类别可包括具有无限值的单分面。有利地,分面导航界面提供了快速浏览媒体对象的元数据的方式。分面导航界面允许用户由于好奇心的驱使而基于元信息来探索媒体集合。可进一步鼓励用户标识缺失的元信息(例如,用户可切换到戳记模式并添加缺失信息)。此外,分面导航界面为用户提供统一界面,以开始请求媒体库中不可用的媒体。例如,如果用户发现媒体库缺失某个媒体对象(例如,来自用户的表兄弟的去年生日的照片),那么用户可使用所述界面来发起对缺失的媒体对象的请求。
分面显示部分
图13展示了根据各种实施方案的分面显示部分1300。参考图13,分面显示部分1300显示特定分面类别中的分面,无论分面是否具有对应值。通过示出具有缺失值的分面,用户可意识到关于用户当前正在查看的媒体对象的集合缺失了什么。例如,用户可从分面显示部分1300观察到职业分面和性别分面都未被提供任何值。
响应于确定不存在与分面相关联的值,系统可显示所述分面。呈现具有空值或没有搜索结果的分面向用户传达背景搜索已确定所述分面对数据集无用。空分面还可向用户传达语义数据从一个或多个数据对象中缺失或者数据对象不可用。随后,用户可定位媒体对象以添加缺失的元数据或者获取不可用的媒体对象。
分面表示
在各种实施方案中,媒体平台120基于与分面值相关联的类型以不同方式向用户显示分面。有利地,基于与分面值相关联的类型来显示分面关于可用的数据类型改进了与用户的通信。
离散值是单个值。存在两种类型的离散值:有限的离散值和无限的离散值。有限的离散值(例如,性别)是具有有限数量的可能值的值。具有有限离散值的分面是第二级分面类别的一部分。相反,无限离散值(例如,人、事件)被显示为单独的第二级分面类别。
范围值是可分组到范围中的值。一些范围值是连续范围,其包括无限数量的可能值(例如,时间戳)。连续范围值始终在范围或范围组中显示。相反,整数范围由离散值(例如,一周中的几天)组成。整数范围可被显示为离散值的分组。映射值可在特定映射呈现中显示,其中映射值是特定值。
图14展示了根据各种实施方案的分面表示。如图14所示,分面表示可包括有限离散分面12、整数范围分面4和无限离散分面14的表示。无限离散分面14可能需要整个子类别来显示其他分面表示(例如,有限离散分面12和整数范围分面4)可分组在一起的位置。
用于媒体内容的分层分面
在各种实施方案中,可将分面组织成两级分级结构。分级结构被存储在数据结构(例如树)中。树的每个叶节点可指向单个分面值的索引。因此,媒体平台120可基于用户来处理不同的分面分级结构。例如,可基于用户的专业知识或兴趣水平来建立分面分级结构。
例如,分级结构可包括:
1)谁?
a.姓名
b.关系
c.兴趣
d.职业
2)何时?
a.日期
b.事件
c.事件类型
d.天气条件
3)何地?
a.地名
b.地图
c.地方类型
4)如何?
a.摄影师
b.摄像机类型
c.媒体类型
5)什么?
a.对象
b.对象类型
附录B还展示了根据各种实施方案的分层分面搜索引擎。
根据各种实施方案,一种用于对一个或多个媒体对象执行分层视觉分面搜索的系统包括媒体平台。在各种实施方案中,所述媒体平台可包括一个或多个硬件处理器,所述硬件处理器被配置来:向用户设备提供适于接收多个选择准则的选择器用户界面(UI);向用户设备提供包括多个第一级选择准则的第一级菜单,所述第一级选择准则包括第一选择准则;从用户设备接收至少将第一选择准则添加到选择器UI的指示;向用户设备提供包括对应于所述第一选择准则的多个第二级选择准则的第二级菜单,其中所述多个第二级选择准则包括第二选择准则;从用户设备接收至少将第二选择准则添加到选择器UI的指示;将第一选择准则和第二选择准则添加到选择器UI;并且执行搜索以至少部分地基于选择器UI的内容来标识满足第一选择准则和第二选择准则的一个或多个媒体对象。
在示例性实现方式中,第一选择准则可包括身份准则、位置准则,并且第二选择准则可包括与媒体对象相关联的个人的姓名、关系、兴趣和职业中的一个。例如,第一选择准则可包括时间准则,并且第二选择准则包括与媒体对象相关联的日期、事件、事件类型和天气条件中的一个。在另一个实例中,第一选择准则包括位置准则,并且第二选择准则可包括与媒体对象相关联的地图坐标、位置名称和位置类型中的一个。在另一个实例中,第一选择准则包括方式或手段准则,并且第二选择准则可包括与媒体对象相关联的摄影师、摄像机类型和媒体类型中的一个。在另一个实例中,第一选择准则包括标识准则,并且第二选择准则可包括与媒体对象相关联的对象和对象类型中的一个。
混合存储器分面引擎
在各种实施方案中,分面搜索引擎可部署在用户设备110上。因此,分面搜索引擎可依赖于可基于被搜索的分面而按需加载的存储器搜索索引。搜索索引建立在真实对象属性值之上。
分面是搜索一个或多个媒体对象的方法。分面可与各种分面值关联。此外,每个分面对应于被索引的数据中的特定字段。字段具有数据类型和预期值。为了执行搜索,分面搜索引擎可构建每个字段中所有值的索引。有利地,分面搜索引擎可非常快速地执行任何查询。相比之下,常规的面向搜索引擎依赖于预先计算的固定查询视图,并且无法处理动态复杂查询。
在示例性实施方案中,系统对一个或多个数字对象执行混合存储器分面搜索。所述系统可包括具有一个或多个处理设备的媒体平台,所述处理设备被配置来:存储用于使用一个或多个索引过程而生成的数据集的索引,其中所述索引包括值与数据集中的每个数字对象的标识符的映射;接收对索引的更新;用独立于存储的索引的时间戳来存储索引更新;并且响应对存储索引的请求,将索引更新应用于所述索引。在实例中,处理设备确定与数据集相关联的特性;并且索引是基于数据集的特性的过程,其中索引包括值与数据集中每个数字对象的标识符的映射。
例如,数据集可包括离散数据,并且索引包括用于每个数字对象的多个阵列,包括离散数据和标识符的分类值中的至少一个。例如,标识符可按有序组来进行分组。在示例性实施方案中,数据集包括连续数据,并且每个数字对象被映射到唯一的时间戳。
当值与数据集中的每个数字对象的标识符的映射包括重叠值时,处理设备可确定与每个数字对象的每个值相关联的确定性因子,并且基于所述确定性因子来对标识符进行排序。
对存储的索引的请求可为具有查询准则的搜索请求,所述处理设备可生成选择器对象以将查询准则与索引的标识符进行匹配;基于选择器对象来计算与每个查询准则相关联的未修改标识符的计数;并且从与查询准则的大多数未修改的标识符相关联的查询准则开始执行搜索。
索引类型
为了索引数据,分面搜索引擎可使用不同类型的索引,这取决于被索引的数据的类型和性质。每种索引类型都以不同方式构建,并且具有特定目的。
索引可为基本索引或派生索引。虽然每种索引类型都以不同的方式实现,但是所有索引都具有将真实世界值映射到它们正在索引的媒体对象的某些行的功能。
基本索引
直接从世界对象的原始值计算基本索引。可根据原始值的性质来计算不同类型的基本索引,因为每种类型的原始值被不同地处理。
图15展示了根据各种实施方案的有限离散索引1500。参考图15,有限离散索引1500是包括离散无限的基本类型的索引。有限离散索引1500始终保存在(例如,用户设备110的)存储器中,并且每当需要有限离散索引1500时就进行部署。在各种实施方案中,有限离散索引1500可被实现为两个阵列。第一阵列可保存以升序排序顺序索引的值,并且将起始位置保存到第二索引中。第二阵列可保存媒体行标识符,所述标识符根据原始值来进行分组,并且在每个组中进行排序。有利地,存储有限离散索引1500需要少量存储器。
大离散索引包括非常大量的离散值。
连续索引包含无限数量的可能值,所述值几乎具有与值(例如,时间戳)的一对一映射。例如,几乎每单张照片都可具有不同的时间戳。连续范围值可通过专用索引结构来处理。例如,可使用类似于数据库索引的常规B树来处理连续索引。
派生索引
派生索引基于其他索引(例如,基本或派生)并且提供分类和/或暗示。在各种实施方案中,派生索引可为简单派生索引或模糊派生索引。
图16展示了根据各种实施方案的简单派生索引1600。参考图16,简单派生索引1600的索引值是基于由另一索引索引的值。例如,年龄组可被索引到多个分面值,包括例如但不限于婴儿、幼儿、儿童、青少年、年轻人、成年人、中年人和老年人。实际索引值是从年龄原始值派生的,例如,幼儿是年龄在2到5岁之间的人。在各种实施方案中,使用单个阵列构建简单派生索引1600,所述单个阵列保存基本索引中的值和对应的原始值。因此,简单派生索引1600在存储器中占据非常有限的空间并且可容易地适应基本索引的改变。
图17展示了根据各种实施方案的模糊派生索引1700。参考图17,模糊派生索引1700可包括与原始值重叠的多个索引值。因此,每个映射都具有与其相关联的确定性因子。例如,如果年龄组具有模糊索引,那么1.8岁的人可为婴儿和幼儿。然而,这个人更可能是幼儿。因此,幼儿的确定性因子为90%,而婴儿的确定性因子为15%。确定性因子被选择以适用于每个值。这种模糊索引的益处在于使得我们能够以不同的方式找到相同的信息,并且使用确定性来对搜索结果进行排序。
索引生命周期
可通过迭代原始数据在存储器中创建索引。索引被以最紧凑的形式保存在存储器中。相反,在正交操作中以不同方式访问原始数据。为了保持较小的存储器使用量,可在原始数据量较大的情况下批量迭代原始数据。所述过程可包括多次迭代过程(例如,每个索引一遍),因为数据将以排序顺序进行加载。因此,如果原始数据量较小,那么可立即将原始数据加载到存储器中并且在创建索引过程中进行分类。
一旦以最紧凑的形式创建索引,索引就被以所述形式保存到文件。对于具有两个或更多阵列的索引,单独的阵列被以特定顺序保存在同一文件中,例如,在行id阵列之前的索引数据阵列。
索引也可被更新,包括通过将值添加到索引或者从索引中删除值。在各种实施方案中,如果索引已在存储器中,那么一旦更新完成,就将更新应用于索引并将索引保存到磁盘。
如果索引位于磁盘上,那么将所述更新附加到更新文件用于所述特定索引。更新文件包含按时间戳分类的所有更新。未上传索引来进行更新操作。分面搜索引擎存储将要对索引进行的改变,而不是加载索引来应用一个或多个更新。当搜索需要索引时,将索引从磁盘加载到存储器、加载存储的更新并将其应用于索引、并且将索引保存到存储器并且所述索引可用于搜索。
有利地,更新过程减少了每次更新索引时执行的不必要的计算。更新过程保留了在更新之间未使用的索引的计算能力。在调用索引时更新索引(例如,用于执行搜索)。
查询模型
分面搜索引擎为用户提供了企业搜索界面的能力和控制,但是以不具有陡峭的学习曲线的易于理解的方式来提供。为了执行查询,用户选择一个或多个分面值并且指示结果是否必须、可或不应当具有所选择的分面值。例如,假设用户想要找到在不是感恩节的假日期间拍摄的并且描绘了鞋子、衣服、包或太阳镜的媒体对象。用户可定义以下查询:
MUST(必须):事件类型假日
NOT(非):事件感恩节
OR(或):对象鞋出现
OR(或):对象衣服出现
OR(或):对象包出现
用户还可指定在我的妻子拍照时单独针对用户儿子秋季在房屋周围的照片的复杂查询。所述查询可指定如下:
MUST(必须):人物的儿子出现
MUST(必须):人物的妻子摄影师
MUST(必须):在房屋位置处
MUST(必须):事件秋天
NOT(非):在屋内
NOT(非):任何人出现
查询机制
对于由用户定义的每个准则,分面搜索引擎可创建对分面索引进行操作的选择器对象。选择器的目的在于将准则与原始媒体对象标识符进行匹配。它还可返回与给定准则匹配的可能媒体对象标识符的数量,这进而返回可能的匹配。分面搜索引擎通过可能的匹配按升序对索引进行分类。因此,首先执行具有最少匹配数的索引,并且分面搜索引擎对索引列表进行迭代并且计算与整个准则匹配的值。
有利地,可并行执行多个查询算法。因此,每个选择器是独立的并且避免竞争条件。选择器按照从最严格到最不严格的顺序来进一步执行(例如,AND之后进行NOT,之后进行OR)。选择器顺序提供了如果结果集将为空那么就跳过较不严格的选择器的执行的功能。
此外,算法可如下优化:
使用在存储器中具有索引的准则来执行查询的AND和NOT部分如果结果具有行id
那么对具有未修改索引的准则执行查询
如果结果具有行id
那么对剩余准则执行查询
如果知道查询结果包含零记录,那么上述优化减少了对不必要的索引的加载的需要。
选择操作
执行选择操作以针对特定选择准则来选择匹配的行标识符。每种索引类型以特定方式实现选择器,所述方式对应于所述特定索引类型的结构。
离散值索引
离散值索引可为数字或非数字的。数字离散值索引提供数学运算,包括例如但不限于范围选择、大于和小于。
·小于X:
-二进制搜索分面值阵列并且在索引中找到小于X的最大值的位置。最大值的位置指示原始记录Id阵列中的位置。随后,可收集在最大值位置的位置之前的前一行id。
·大于X:
-二进制搜索分面值索引并且找到大于X的最小值的位置。最小值的位置指示原始记录Id阵列中的位置。随后,可收集最小值位置之后的行id。
·等于X:
-二进制搜索分面值索引并且找到值等于X的位置。值相等的位置指示原始记录Id阵列中的位置。原始记录Id阵列具有起始位置。终止位置从分面值索引中的以下索引来确定。
派生值索引也可为数字或非数字的,其中数字派生值索引能够支持数学运算。
·小于X:
-二进制搜索分面值阵列并且在索引中找到小于X的最大值的位置。最大值的位置在基本索引值arraRaw记录Id阵列中指示。随后收集最大值位置之前的行id。
·大于X:
-二进制搜索分面值索引并且找到大于X的最小值的位置。最小值的位置指示原始记录Id阵列中的位置。随后收集最小值位置的位置之后的行id。
·等于X:
-二进制搜索分面值索引并且找到值等于X的位置。值相等的位置指示原始记录Id阵列中的位置。原始记录Id阵列具有起始位置。终止位置从分面值索引中的以下索引获得。
查询基本操作
可在多个实施方案中执行查询操作(例如,AND、NOT和OR)。对于大型阵列,压缩位向量阵列用于存储行标识符(例如,咆哮(roaring)阵列),并且二进制位掩码用于执行适于这种数据结构的操作。对于小型阵列,应用算法如下:
AND操作作用于两个行标识符阵列:rowIDs1和rowID2。结果包含在resultingIDs中。用于AND操作的算法以线性时间(即O(n))来操作并且包括:
以升序对rowIDs1和rowIDs2进行分类。使用基数分类
将rowIDs1分配给较少元素的阵列
NOT操作类似于设置减法操作。从结果中减去一组行标识符。用于NOT操作的算法也以线性时间(即O(n))来操作并且包括:
以升序对rowIDs1和rowIDs2进行分类。使用基数分类
OR操作作用于两个行标识符阵列:rowIDs1和rowID2;结果被称为resultingIDs。结果包含在resultingIDs中。用于AND操作的算法以线性时间(即O(n))来操作并且包括:
以升序对rowIDs1和rowIDs2进行分类。使用基数分类
将rowIDs1分配给较少元素的阵列
多模式用户界面
在各种实施方案中,媒体平台120支持适用于各种主要活动类型的多模式UI。例如,UI可处于视觉搜索模式、对象关联模式或对象操纵模式。因此,UI可专注于主要活动,而不会用无尽的选项来使屏幕混乱。在各种实施方案中,命令位于屏幕中基本相同的相对位置或区域中,从而允许用户通过存储器来访问它们。UI可通过模式切换控制来控制,所述模式切换控制向用户指示UI所处的模式并且允许用户快速切换到其他模式。
在示例性实施方案中,一种用于与媒体平台交互的系统,所述系统包括具有处理设备的媒体平台,所述处理设备被配置来:向用户设备提供用户界面(UI)以控制媒体平台的多模式应用,其中用户界面包括多个模式导航区域,并且每个模式导航区域与多模式应用中的模式相关联,其中每个模式导航区域包括用于控制与模式导航区域相关联的模式的一组特定功能。UI用于基于检测设备活动来呈现活动模式的导航区域,其中UI包括用于切换到非活动模式的全局导航菜单并且抑制与非活动模式相关联的功能。
例如,每个模式导航区域可包括用于控制与模式导航区域相关联的模式的一组特定功能;并且当呈现导航区域时,在模式导航区域中维护所述组特定功能。在示例性实施方案中,全局导航菜单可由用户的手势输入来控制。为了呈现所述组特定功能,UI可包括一个或多个可扩展子模式导航区域。可基于检测到的设备活动来呈现一个或多个可扩展子模式导航区域,同时UI抑制与非活动子模式相关联的功能。
UI可包括全局导航菜单上的活动模式指示符。在一些实施方案中,处理设备通过跟踪用户的活动模式来检测设备活动,以通过在全局导航菜单上突出显示快捷方式来建议下一模式。多模式应用可包括视觉搜索模式、对象操纵模式或数据输入模式中的至少一个。
多模式控制开关
图18展示了根据各种实施方案的多模式控制开关1800。参考图18,多模式控制开关1800可在用户设备110(例如,智能手机)上显示。多模式控制开关1800显示当前模式“视觉搜索”以及用户可切换到的附加模式。可替代地,用户可(例如,在触摸屏上)使用滑动手势以在不同模式之间切换和/或显示附加模式。
多模式概述
图19A-C展示了根据各种实施方案的多模式UI。参考图19A-C,多模式UI可用于将语义信息与媒体对象关联并且用于搜索媒体对象。戳记模式提供了确定用于媒体对象的关联的界面。构造UI以允许有效搜索媒体对象,所述媒体对象可以允许用户执行批量关联的非常有效的方式来关联。戳记UI中的控件与关联功能相关。为了进行搜索,用户可切换到视觉搜索模式(在右侧)。如图18所述,多模式控制开关允许在模式之间快速导航。在搜索模式中,视觉搜索UI呈现专注于搜索媒体库的控制选项。
有利地,多模式UI使用户免于猜测哪些动作可用于不同的活动(例如,搜索、戳记、共享等)。多模式UI有效地分类并且呈现与每个活动模式相关的动作。对于给定模式,UI命令被放置在屏幕的相同位置或区域中。因此,多模式UI降低了单个用户的认知要求,而不会降低应用的功能。
掩蔽访问控制
在各种实施方案中,媒体平台120以不需要用户账户的方式来控制对存储的数据对象(例如,存储在数据存储区125中的媒体对象)的访问。相反,基于与用户账户机制正交的自动或手动数据对象保护规则来控制访问。每个数据保护规则选择将要保护的特定数据对象,并且可打开和关闭以分别使对象不可访问或可访问。数据保护规则状态可组合以计算有效的数据掩蔽层。数据掩蔽层确定给定数据对象是否可访问。将数据保护呈现为简单的数据选择规则简化了复杂的访问控制机制。
数据访问计算
图20展示了根据各种实施方案的数据访问计算。在各种实施方案中,媒体平台120可通过执行有效的数据掩蔽计算来计算数据对象可见性。访问控制规则可组合以创建掩蔽机制。每个规则标识不可访问(例如,隐藏)的数据对象。当组合多个规则时,未由任何规则掩盖的数据对象对用户可见。
在一些实施方案中,媒体平台120通过创建锁定计数并将锁定计数附加到每个数据对象来实现掩蔽机制。当激活访问控制规则时,规则标识与规则相关联的数据对象、确定对应的锁定计数递增(例如,增加一)、并且限制对相关联数据对象的访问。当用户执行搜索时,系统限制访问(例如,将数据对象从搜索结果中隐藏、或者阻止访问数据对象)具有大于零的锁定计数的数据对象。相反,具有锁定计数为零的数据对象被显示并且可由用户访问。在一些实施方案中,媒体平台120可通过执行检查所选择的数据对象是否与任何活动访问控制规则相关联来实现掩蔽机制。
访问控制工作流程
图21展示了根据各种实施方案的用于实施访问控制的过程2100。
参考图21,呈现第一UI以在编辑规则之前挑战用户以重新建立用户身份(1)。呈现第二UI以使得用户能够创建新的访问控制规则或者编辑现有的访问控制规则(2)。第二UI是基于可供选择的元数据和相关标签的动态UI。此外,第二UI咨询两种服务。首先,第二UI可咨询基于本体的标签搜索引擎服务,以协助访问控制编辑器界面来有助于由用户添加相关标签。例如,用户可能希望为意大利的城市挑选标签,并且基于本体的标签搜索引擎有助于用户有效地找到它们。
其次,第二UI可咨询适当的元数据推荐引擎,其指示哪种元数据可用于特定对象类型。例如,视频可具有作为元数据的持续时间,而文本文档可具有单词或字符计数。引擎有助于将选择范围缩小以使用户便于编辑。
在用户确认访问控制规则的最终版本之后,打包访问控制规则以便有效地存储和运输(3)。所述规则准备好由媒体平台120执行。随后存储访问控制规则(例如,存储在具有现有规则的规则数据库中)。
预先计算规则的效果以便在运行时有效实施,并且将这种效果与每个数据对象一起存储(4)。
可替代地,访问控制规则可为符号链接访问控制规则,其中所述规则是一组简单的手选数据对象。在一个实施方案中,符号链接被用于标识将要锁定的文件系统中的文件。因此,当一组符号链接被锁定时,实际文件也被锁定。使用符号链接实现的数据控制锁与组织结构分开。
访问控制规则也可为元数据访问控制规则,其中访问控制规则是基于元数据而不是标签。
访问控制规则也可为基于关键字的标签访问控制规则,其中标签是关键字匹配标签而不是基于本体的标签
访问控制规则也可为基于本体的标签访问控制规则。
改变访问控制规则状态
可手动或自动改变访问控制规则状态。
图22展示了根据各种实施方案的对访问控制规则状态的自动改变。参考图22,外部系统可结合掩蔽访问控制系统来工作。外部系统负责控制哪些访问控制规则有效、哪些访问控制规则无效。例如,操作系统可控制在物理存储系统控制器(例如,硬盘驱动器或固态驱动器(SSD)控制器)中实现的访问控制规则。在这种情况下,操作系统可添加结合底层操作系统级别工作的额外级别的保护。如图22所示,在状态1中,外部系统向所描述的系统发送命令,其中所述命令指示关闭一个或多个规则。系统通过在改变访问控制规则状态之后确认所述规则的新状态来在状态2中响应。
图23展示了根据各种实施方案的对访问控制规则状态的手动改变。参考图23,在手动模式中,用户控制访问控制规则的状态。当用户想要改变访问控制规则状态时,系统呈现UI,从而使得用户能够编辑访问控制规则。例如,如果用户被挑战用登录屏幕来认证以确认用户身份,那么登录屏幕可采用密码形式、图片代码形式、锁定密钥形式或者任何其他认证形式。可呈现UI,所述UI列出访问控制规则以及每个访问控制规则的状态(例如,启用、禁用、激活、停用等)。当用户点击其中一个规则时,向用户呈现允许用户改变规则的状态(例如,启用、禁用、激活、停用等)的UI。
根据各种实施方案,一种用于相对于一组媒体对象实施限制性访问控制的系统包括在单个设备上。所述单个设备可被配置来:至少部分地基于第一访问控制规则来确定阻止对包括在所述组媒体对象中的至少第一媒体对象的访问;至少部分地基于第二访问控制规则来确定阻止对包括在所述组媒体对象中的至少第二媒体对象的访问;并且向所述单个设备的用户提供包括在所述组媒体对象中但不是所述第一媒体对象和所述第二媒体对象的至少第三媒体对象。所述设备可被配置来至少部分地基于与第一媒体对象、第二媒体对象和第三媒体对象中的每一个相关联的锁定计数来提供第三媒体对象而不是第一媒体对象和第二媒体对象。
独立和分布式多系统环境中的限制访问控制
在一些实施方案中,数据可分散在多个独立系统上,包括例如但不限于用户设备110、数据存储区125、第一数据源140和第二数据源150。媒体平台120可在单独系统上在单独的且比数据同步更高优先级的同步信道上使访问控制规则同步。此外,数据对象元数据还可使用单独的同步机制和/或信道,从而允许每个系统独立于集中系统来实施规则。
同步
在多系统生态系统中,不同的系统(例如,数据存储区125、第一数据源140和第二数据源150)链接在一起以使得用户能够针对任何一个系统重新使用相同的访问控制规则。媒体平台120同步访问控制规则、数据对象和用于数据对象的元数据,以使得每个系统能够独立操作。多个同步网络可独立操作。例如,访问控制规则同步网络可在高的优先级上以基本上实时的方式来操作。元数据同步网络也可在高的优先级上工作。数据对象同步网络可为第三独立网络。
根据示例性实现方式,所述系统可关于可由用户的第一设备和第二设备访问的一组数字对象来实施限制性访问控制。所述系统包括用户的第一设备,所述第一设备被配置来检测与第一系统访问控制规则相关联的更新,其中所述第一系统访问控制规则是在所述第一设备上阻止访问包括在所述组数字对象中的至少第一数字对象;至少部分地基于对第一系统访问控制规则的更新来确定在第二设备上阻止对包括在所述组数字对象中的至少第二数字对象的访问;并且向第二设备提供与第一系统访问控制规则相关联的更新,以在第二设备上维持对所述组数字对象的限制性访问控制。
根据示例性实现方式,用于相对于一组媒体对象实施限制性访问控制的系统包括在多个设备、用于单个用户的设备上。第一设备可被配置来:至少部分地基于第一访问控制规则来确定阻止对包括在所述组媒体对象中的至少第一媒体对象的访问;至少部分地基于第二访问控制规则来确定阻止对包括在所述组媒体对象中的至少第二媒体对象的访问;并且向所述第一设备的用户提供包括在所述组媒体对象中但不是所述第一媒体对象和所述第二媒体对象的至少第三媒体对象。所述系统可包括用户的第二设备,并且第一访问控制规则可包括适用于第一设备和第二设备的通用规则,并且第二访问控制规则可包括适用于第一设备但不适用于第二设备的设备特定规则。
根据示例性实现方式,第一设备和第二设备被配置来参与浏览会话,其中第二设备的用户经由第一设备浏览所述组媒体对象。例如,第一设备和第二设备可被配置来基于适用于用户的第一设备与第二设备之间的浏览会话的第三访问控制规则来进行浏览会话。第三访问控制规则可阻止对包括在所述组媒体对象中的第三媒体对象的访问。例如,第一设备可被配置来向第二设备的用户提供至少第二媒体对象但不提供第一媒体对象和第三媒体对象。
中央服务器
在一些实施方案中,可与中央服务器或充当maestro的云进行同步。在将改变传播到其他系统之前,首先将所有改变传输到中央服务器或云。图24展示了根据各种实施方案的基于中央服务器的同步。
对等
在一些实施方案中,在同步多个系统中应用对等范例。例如,对等同步可使用独立版本控制来跟踪最新的更新。图25展示了根据各种实施方案的对等同步。
分层同步网络
在一些实施方案中,一些系统可充当本地同步服务器,从而协调本地设备之间的状态。本地同步服务器负责与集中服务器的通信。例如,在没有移动网络的情况下,WiFi热点可托管服务器,所述服务器也协调连接到热点的各种系统之间的同步并且与中央服务器通信。图26展示了根据各种实施方案的分层同步。
数据访问计算
在各种实施方案中,通过访问控制规则状态级联和实现数据掩蔽计算来计算数据对象可见性。
访问控制规则状态级联
为了支持访问控制规则分布和对等浏览,可定义可打开或关闭访问控制规则的多个层。所述层可包括例如但不限于:通用层(即,用于整个生态系统)、系统或设备层(即,用于每个单独的设备或系统)、应用层(即,用于在平台水平实现的系统)以及会话层(即,用于对等或临时改变)。
在各种实施方案中,可在每一层打开或关闭访问控制规则。为了计算每个规则的状态,规则状态被从最不特定(即通用)层级联到最特定(即会话)层。通过允许在更一般层处的规则状态覆盖更特定层处的规则状态来计算每个规则的状态。图27展示了根据各种实施方案的访问控制规则级联。
有效的数据掩蔽计算
以与上述类似的方式进行有效的数据掩蔽计算,但是针对每个目标会话重复所述过程。
具有访问控制的对等浏览会话
在对等浏览模式中,其他系统能够以特别(ad-hoc)方式浏览存储在主机设备中的数据对象,同时维持访问控制规则。对于请求浏览主机的每个卫星系统,系统可创建浏览会话并改变用于特定浏览会话的访问控制规则的状态。如上所述,会话规则可包括在规则状态级联的计算中。在一些实施方案中,对等浏览将主机设备转换成特别服务器以用于数据浏览的目的。图28展示了根据各种实施方案的对等浏览会话。
浏览会话发起
图29展示了根据各种实施方案的用于发起对等浏览会话的过程2900。对于用户发起对等浏览会话,向用户呈现用户可邀请来浏览用户自己的设备的一组访客(1)。用户选择所需的访客,随后继续检查访问控制规则。向用户呈现新会话的访问控制规则的有效状态,从而允许用户改变所述特定会话的每个规则的有效状态(2)。用户可激活和停用用于所述特定访客会话的每个访问控制规则(3)。向用户呈现UI,从而允许用户与参与每个会话的访客一起查看当前激活的浏览会话(4)。用户可经由UI添加访客、移除访客和/或终止会话。
根据示例性实现方式,系统可在浏览另一用户的设备时对用户实施限制性访问控制。
视觉访问代码
在各种实施方案中,可经由视觉访问代码机制来控制访问,所述机制使得用户更容易记住,同时通过增加可能的组合来提供增强的安全性。视觉访问代码机制经由具有两个进入阶段的UI来呈现。第一进入阶段要求用户从可由系统管理员预先配置的一组照片或图像中选择一张照片。照片组可对于所有用户为相同的或者是用户特定的。此外,照片组可对于所有设备是相同的或者是设备特定的。
图30展示了根据各种实施方案的用于配置视觉访问代码的过程3000。在步骤1中可向用户呈现图像(例如,照片)。在步骤2中,要求用户(例如,通过点击、触摸、手势等)从一组可能的(例如,16、25、36个等)热点中选择热点的子集(例如,四个、五个等)。例如,用户可通过以任何顺序触摸热点来从照片上标记的16个热点中选择4个热点的子集。在一些实施方案中,图像可具有覆盖物或标记以使热点可见并且帮助用户选择和调用所选择的热点。视觉访问代码由与在步骤1中选择的照片相关联的照片索引和在步骤2中选择的热点值的子集组成。照片索引和与热点的子集相关联的坐标可被存储为加密摘要。
用户的视觉记忆被用来通过使用图像中的视觉提示来存储和调用注册的图像和热点。视觉记忆是一种记忆形式,它保留了我们与视觉体验有关的一些感官特性。视觉记忆描述了感知处理与所产生的神经表示的编码、存储和检索之间的关系。视觉记忆在眼睛运动的时间范围内发生,以便视觉地导航到先前访问过的位置。包括注册图像上的热点的子集的视觉访问代码可存储更长时间并且更容易调用以便提供认证。此外,与微不足道的字母数字密码(例如,“1111”、“1234”、“password”等)相比不太可能选择微不足道的视觉访问代码,因为每张照片的可用热点是不同的。用户可在记忆中放置类似于对象、地点、动物或人的视觉信息,作为视觉访问代码的精神图像。用户可使用其前额皮质和前扣带皮层的不同区域来从长期视觉记忆调用视觉访问代码作为模式。
根据各种实施方案,一种用于视觉访问代码过程的系统可包括第一设备,所述第一设备被配置来:向第一设备或服务的用户呈现多个图像;从用户接收对多个图像中的第一图像的选择;从用户接收对包括在第一图像中的多个热点中的至少第一热点的选择;并且至少部分地基于第一图像和第一热点的选择来生成视觉访问代码。
根据示例性实现方式,视觉访问过程的注册过程可包括来自图像网格的第一选择(例如,照片、图片、复杂形状、图像等)以及针对第一选择图像的一系列热点位置的第二选择(例如,像素位置、屏幕坐标、重叠点等)。例如,可向用户呈现描绘各种地标的照片网格、从网格中选择描绘地标的图片。用户可随后从所选择的地标图片在所选择的图片上选择一系列热点位置。例如,所选择的热点位置可为图片或图像上对应于地标的不同部分、背景、图片的边界等的位置。图片或图像中描绘的特征用作用户的视觉线索,其中视觉提示对应于所选择的热点位置。因此,与传统的字母数字组合相比,图片中描绘的特征可更容易地存储在用户的存储器中
如参考图32-41更详细地描述的,系统可在注册过程期间有效地存储用户对图片和热点集的选择。例如,多张照片中的每一张可与对应的索引号相关联。例如,每个索引号可包括全局唯一照片标识符。在实施方案中,来自图像网格的图像的第一阶段选择可包括多个图像的网格的附加页面。用户可滚动图像网格的多页以标识用于第一阶段图像选择的注册图像。多个图像网格中的每个图像可包括基于每个图像的全局唯一照片标识符的索引号。
每个图像可包括多个预定义的热点,以供用户选择第二阶段热点集的子集。根据示例性实现方式,多个热点中的每一个与对应的热点标识符相关联,所述热点标识符可与图像索引号一起加密存储。根据另一示例性实现方式,多个热点中的每一个可与照片中的对应像素的二维坐标相关联。
根据实施方案,视觉访问代码可由认证服务例如在目的地设备或服务上实现。在实例中,网站可用视觉访问代码两阶段输入方法来替换传统的字母数字登录形式来对用户进行认证。在用户向认证服务注册视觉访问代码之后,认证服务(例如,移动设备或网站)可使用各种技术来安全地存储用户的视觉访问代码,以将后续输入的视觉访问代码与存储的注册访问代码进行匹配。例如,在用户注册视觉访问代码之后,认证服务可将与第一阶段相关联的标识符和与第二阶段相关联的坐标转换成文本字符串并且将所述字符串加密存储。随后,当用户重新访问目的地并输入视觉访问代码时,认证服务可解密存储的字符串以验证用户访问目的地的授权。
根据另一个实施方案,视觉访问代码可由客户端侧视觉授权界面(VAI)实现,所述界面从用户接收视觉访问代码并将字母数字密码输出到各个目的地。在所述实施方案中,VAI包括基于目的地重新创建字母数字密码的算法。在实例中,用户可使用VAI访问使用传统字母数字登录形式的网站。为了使用VAI与目的地,用户使用VAI来设置或注册字母数字密码。
视觉访问代码系统还可包括用于通过屏幕上虚拟输入机制或视觉授权界面(VAI)来输入视觉访问代码的系统和方法。VAI充当客户端侧视觉密码输入软件,其不需要来自其他应用或网站的支持。VAI向用户呈现允许他视觉地输入密码的用户界面,并且随后软件将这种视觉访问代码编码成适用于当前网站和应用的常规字母数字字符。系统不会在任何地方存储密码,并且每次用户输入视觉访问代码时都会一致地生成所述密码。
例如,虚拟键盘可为专用于输入视觉访问代码的VAI。VAI可经由视觉访问代码过程来执行客户端侧认证,以便输入视觉密码。VAI为用户呈现界面,以独立于设备硬件输入视觉访问代码。也就是说,VAI提供了不需要诸如指纹读取器的硬件的安全认证的兼容性,并且独立于本地存储的密码维持视觉访问代码的完整性。
用户可导航到重置我的密码形式并且启动VAI以在目的地的密码形式中填入字母数字密码。如下所述,VAI将基于由用户输入的视觉访问代码来一致地重新生成用于目的地的字母数字密码。此外,当将相同的视觉访问代码输入到用于不同目的地的VAI中时,VAI会生成不同的字母数字密码。因此,VAI可使用与传统目的地登录方法兼容的视觉访问代码来认证用户。在用户使用VAI来注册目的地之后,目的地存储VAI的输出(例如,字母数字密码)。VAI的输出用作目的地侧认证密钥,而视觉访问代码是客户端侧认证密钥。
例如,在目的地记录VAI的输出之后,用户可重新访问目的地、启动VAI、输入用户的视觉访问代码并且VAI将输出与先前由目的地存储的密码匹配的密码。在各种实施方案中,VAI的输出可基于十六进制摘要,所述十六进制摘要使用用户的唯一标识符、第一图像的选择、第一图像的唯一标识符、图像融合算法、热点的选择、热点坐标的移位和/或一个或多个单向加密算法。
在用户注册所选择的图像的一系列或一组热点之后,可向用户呈现用于向设备或服务认证用户的视觉访问代码过程。例如,用户可导航到设备或服务的访问界面,在视觉访问过程的第一阶段期间向用户呈现多张照片或图像。用户必须在所呈现的多张照片中调用先前在注册过程中选择的正确照片。例如,可向用户呈现描绘各种著名地标的图片网格。用户的注册图像可与和在注册过程期间相同的多张照片分组,或者与和注册过程期间呈现的图像不同的照片分组。用户首先从多个图像中选择注册图像。例如,用户选择的图像可与照片的全局唯一照片标识符的索引号匹配。
图31展示了用于与视觉访问代码一起使用的示例性锁定码管理界面。锁定码管理界面3100允许用户管理视觉访问代码、配置视觉访问代码偏好、分配用户简档等。在示例性实施方案中,锁定码管理界面允许用户基于应用类别来配置不同的视觉访问代码,诸如媒体应用、金融应用、工作应用等。主用户可为服务或设备的不同子用户配置多个视觉访问代码。例如,父母可配置允许儿童访问游戏应用的访客视觉访问代码。在另一个实例中,配偶可配置伙伴视觉访问代码,所述伙伴视觉访问代码允许配偶的伙伴访问金融账户但不访问配偶的社交媒体或消息账户。
图32展示了根据示例性实施方案的用于配置视觉访问代码的示例性流程3200。所述过程从收集来自用户的唯一标识符开始。如参考图33进一步描述的,过程3200使用单向加密编码来为用户生成一组一致的图像。如参考图36进一步描述的,工作流程3200继续以确定用户是否想要设置主密码。
图33展示了根据各种实施方案的用于将用户标识符映射到照片选择映射的示例性过程3300。过程3300可以从用户提供唯一标识符开始。如参考图35-36更详细地描述的,过程3300可确定单向加密代码并且生成唯一用户十六进制摘要。如参考图40-41更详细地描述的,随后,可使用唯一用户十六进制摘要来生成照片和热点的唯一列表。如参考图37-39更详细地描述的,随后过程3300向用户呈现照片的列表以注册密码。
紧凑编码
在一些实施方案中,可使用紧凑编码来编码视觉访问代码。例如,在紧凑编码中,每张照片可具有从0到8的索引,而每个热点具有从0到15的索引。分配给热点的索引与热点在照片中的位置之间可能不存在固定的相关性。分配给热点的索引与热点在照片中的位置之间的相关性取决于照片。在实施方案中,与热点相关联的索引值是随机分配的。因此,热点的随机索引分配创建安全访问密码。
在以上实例中,紧凑编码创建了16个可能的值。以任意顺序任意次数选择其中四个值,从而产生3,876种可能性。由于还存在9张不同的照片,可能组合的数量增加到9x 3,876=34,884,这是由常规4位数字密码提供的可能性的数量的3倍以上。
定位编码
在一些实施方案中,可使用基于每个所选热点的坐标的定位编码来生成视觉访问代码。对于同一张照片,每个热点的坐标可为固定的,但是这些坐标不可从一张照片传送到另一张照片。表1示出了如先前部分中描述的简单热点索引编码如何被映射到坐标索引。例如,热点索引2对应于照片1中的值(140和59)以及照片2中的值(89和147)。利用紧凑编码,值2在照片之间共享,但是用于同一热点的坐标值未在照片之间共享。此外,存储数字的数量也增加(例如,8个而不是4个值)。因此,定位编码产生甚至更多的可能性并且使得对应的视觉访问代码甚至更难以破坏。
在一些实施方案中,视觉访问代码可取决于照片的大小和/或分辨率。例如,在500x500像素照片中,每个热点可在水平轴线上生成0到499的代码,并且在垂直轴线上生成0到499的代码。因此,4个热点相当于8位数,这给出了1.02432860e+17种可能性。所述数字进一步乘以照片的数量(例如9),这与具有特殊字符的常规的8字符长字母数字区分大小写的密码(即2.02095455e+11种可能性)相比为更强大的密码产生~9e+17种可能性。
表1
具有唯一照片标识符的定位编码
在一些实施方案中,每张照片可与全局唯一标识符关联。因此,存储密码取决于系统或用户。用户无法为两个不同的系统选择相同的密码。例如,已使用定位编码来编码的密码(0,100,101,200,201,300,301,400,401)对应于第一照片(即照片0)。但是结合唯一照片标识符产生密码(38A52BE4-9352-453E-AF97 5C3B448652F 0,100,101,200,201,300,301,400,401),其中‘38A52BE4-9352-453E-AF97-5C3B448652F0’是照片全局唯一标识符。在各种实施方案中,全局唯一标识符可为难以猜测的长度值(例如,16个字符长的数字)。
图34展示了根据各种实施方案的示例性唯一用户十六进制摘要。十六进制摘要可包括照片选择索引、筛选融合算法标识符、最终密码映射算法标识符、照片筛选位图以及热点标识符。例如,唯一用户十六进制摘要可从为照片选择索引指定的八个字节开始,接着是一个字节的筛选融合算法标识符,以及用于最终密码映射算法的指示符。在示例性实施方案中,照片筛选位图可包括27个字节。根据示例性实施方案,唯一用户十六进制摘要可包括用于指示热点移位索引的25个字节。
图35展示了根据示例性实施方案的用于分配视觉访问代码的示例性注册过程。注册过程3500可从将用户导航到需要认证的目的地开始。虚拟输入(例如,VAI)方法可检测需要用户名和密码的传统登录形式。在用户将用户名键入传统登录形式之后,注册过程3500方法可呈现用于使用十六进制摘要将视觉访问代码分配给目的地的注册界面。如上所述,用户可经由VAI继续选择第一图像和一系列热点以注册用于目的地的新的视觉访问代码。
基于提供的用户名和目的地标识符,VAI可基于十六进制摘要重新生成密码,以使存储的密码与目的地匹配。
注册过程3500可继续用基于十六进制摘要的密码来完成传统的登录形式。例如,注册过程3500可使用单向加密编码并且用目的地标识符来播种密码生成字母数字密码。如参考图36所述的,密码种子用于在生成字母数字密码之前馈送单向加密算法。种子在用户选择的热点与种子之间具有直接的一对一映射。所述过程在单向加密之前生成用应用/网站目的地名称播种的密码,使得即使在使用相同的视觉密码时,不同的应用/网站目的地也具有不同的密码。因此,用户的系统不需要存储每个站点的密码,因为访问代码过程会基于用户输入一致地复制密码的生成。
根据示例性实施方案,用于设置视觉访问代码的算法可包括
当访问目的地时,VAI可确定相关联的视觉访问代码并且向用户呈现虚拟输入方法来认证用户。响应于经由虚拟输入方法的成功的视觉访问代码认证,系统可用分配的字母数字密码填充传统的登录形式以完成目的地认证。
图36展示了根据示例性实施方案的用于用密码来对视觉访问代码进行编码的示例性过程3600。过程3600可输入照片SHA-512、按X轴分类的热点位置以及应用/网站目的地标识符来生成密码种子。过程3600使用编码密码与单向加密算法来生成用于映射字母数字密码的十六进制摘要。在示例性实施方案中,所得密码将生成安全ASCII密码,其可包括大写和小写英文字母和数字以及特殊字符。根据示例性实施方案,所述算法可包括:
图37展示了根据各种实施方案的示例性移动界面。为了为虚拟输入方法设置视觉访问代码,用户通过选择唯一密码(诸如他们的姓名、母亲的婚前姓、生日或喜欢的位置等)而开始。第二步,系统为用户生成一组图像以选择注册图像。根据示例性实施方案,所述算法可包括:
图38展示了根据示例性实施方案的输入视觉访问代码的示例性实现方式。在步骤一,用户导航到需要认证的目的地网站或应用或登录屏幕。VAI可检测目的地的认证形式并且检索与目的地标识符相关联的视觉访问代码。VAI向用户呈现一组图像,所述图像包括用户先前为目的地注册的图像。响应于用户选择与注册图像匹配的图像,VAI前进到步骤二以呈现注册图像的用户热点。例如,注册图像可为包括16个可能热点的房屋。
响应于用户选择与先前注册的热点匹配的一系列热点,视觉输入方法前进到步骤三。例如,用户可通过触摸图像上的不同位置来标识四个热点,所述位置对应于与用户在注册过程期间选择的热点匹配的所描绘的房屋的不同部分。在步骤三,虚拟输入方法将与视觉访问代码存储的字母数字密码输入到目的地的认证形式中。在一些示例性实施方案中,虚拟输入方法可呈现用户已成功输入视觉访问代码的确认消息。用户可通过点击目的地的认证形式而前进到完成登录,而无需键入字母数字密码。
图39A-C展示了根据各种实施方案的网站上的虚拟输入方法的示例性实现方式。图39A展示了虚拟输入方法的第一阶段,所述第一阶段向用户呈现包括先前注册的图像的若干图像。用户可通过点击或触摸注册图像来标识先前注册的图像。响应于用户选择与注册图像匹配的图像,可向用户呈现注册图像并且指示用户标识注册图像的一系列热点。
在图39B处,向用户呈现用于虚拟输入方法的热点选择屏幕。所述界面可向用户呈现所选择的图像的若干热点。响应于用户选择与注册的一系列热点匹配的注册图像的一系列热点,视觉访问代码过程可为设备或服务认证用户。例如,用户可点击或触摸图片上对应于用户在注册过程中选择的热点位置的四个位置。例如,视觉访问过程确定用户选择的位置是否满足在注册过程期间存储的对应索引号。根据另一个示例性实现方式,视觉访问过程确定用户选择的位置是否满足来自注册过程的照片中的对应像素的二维坐标。
在示例性实现方式中,为了满足用于认证用户的视觉访问代码过程的第二阶段,可以与在注册过程期间选择热点相同的顺序来标识注册图像上的一系列热点。在另一个示例性实现方式中,可以任何顺序标识注册图像上的一系列热点,以满足用于认证用户的视觉访问代码过程的第二阶段。由于位置和视觉提示的排列比传统的字母数字组合大大增加,因此用户首先回想起正确的图像并且随后标识正确图像上的一系列热点位置就可足以认证用户。
响应于用户选择与注册图像不匹配的图像,可向用户呈现非匹配图像并且指示用户标识非匹配图像的一系列热点。为了认证用户,视觉访问代码过程可提供或抑制关于从多个图像中第一次选择图像的反馈至用户。因此,可不通知未授权用户第一选择图像或一系列热点的第二标识是否无法满足视觉访问代码过程。指示来自图像组的图像和热点位置的不同组合的猜测的重复尝试可随后被检测为蛮力破解。
如果选择了正确的热点,那么虚拟输入方法可前进到图39C以向用户呈现确认并且在目的地的登录形式中填充字母数字的最终密码。
为了为每个用户创建安全的视觉访问代码,所述过程可采用对于每个用户而言唯一的看起来视觉上看不见的修改图像。在实施方案中,所述过程可包括使原始图像的中心点移位,以修改热点的坐标并且添加融合纹理以保护图像数据。
图40展示了根据各种实施方案的图像融合过程。为每个用户融合照片为每个用户提供了通过简单地观察用户的图像选择不可检测的不同密码。在实施方案中,系统经由融合算法将纹理掩蔽与原始照片进行组合、创建用于生成安全视觉访问代码的修改照片。示例性照片融合算法可包括:
在示例性实施方案中,系统基于存储在唯一用户十六进制摘要中的数据来选择融合算法和照片筛选位图。例如,十六进制摘要可包括用于指示用于创建修改照片的简单重叠融合算法的值。多种融合和密码映射算法提高了访问代码的安全性。
图41展示了根据各种实施方案的热点位置移位的示例性实现方式。通过移动原始照片坐标的中心点,可改变图像的热点的位置值,以使用相同的视觉图像并且维持图像的视觉外观为每个用户生成不同的密码。
示例性热点移位算法可包括:
例如,基于在注册阶段期间提供的唯一用户短语,十六进制摘要可提供移位值用于移位热点中心,并且从而为用户区分图像的热点坐标。例如,具有位置坐标30,50的原始热点中心当基于唯一用户十六进制摘要中的移位值9移位时将热点中心移位到位置坐标301,49。
根据另一个示例实现方式,多因素认证系统(MFA)支持各种密码输入机制(例如,字母数字、视觉、语音等),这些密码输入机制可用于认证用户以访问多个应用程序/网站目的地。MFA包括一个实时密码生成器,该生成器为多个不同的服务提供商(例如,包含用户认证的第三方应用程序、云服务、网站等)创建了独立于因特网连接的唯一且安全的密码,而无需将密码存储在本地或网络存储器(例如密码库)中。
MFA创建唯一且复杂的密码,在服务提供商处注册密码,并将其与用户可访问的个性化召回工具相关联。例如,个性化召回工具可以基于用户自己的私人记忆,而不是传统的密码和/或恢复问题,而传统的密码和/或恢复问题通常容易受到用户的公开可用或秘密获得的信息(例如,社交媒体、公共记录、等等)的攻击。
MFA与个人和企业系统(例如,金融机构、大学、健康保险机构、医院等)兼容并且可扩展,以减少与密码重置相关的直接成本以及因违反安全规定而导致的与法律和公共关系责任相关的间接成本。MFA避免了传统的密码问题,例如,调用多个唯一的密码,在设备之间同步密码库,基于云的解决方案的可用性,不可更改的生物识别密码,在这些情况下泄漏和过度使用可能是致命的。
根据示例方面,MFA是用户设备上的认证机制,其与服务提供商(例如,应用程序、网站、数字目的地等)的认证模块分离。多因素授权系统允许用户基于用户可访问的个性化召回工具来创建标识符代码和访问代码。多因素授权系统使用标识符代码和访问代码为每个服务提供商生成唯一的目的地密钥。例如,访问代码可以是字母数字、图案和/或视觉格式。多因素授权系统可以在没有公共存储库(例如,没有密码库)并且不需要互联网连接来访问每个服务提供商的唯一目的地密钥的情况下跨用户设备进行操作。
根据一种实现,标识符代码在每个用户设备上安全地存储一次,并且访问代码由用户在与每个服务提供商(例如,应用程序、网站、数字目的地等)进行认证时提供。相同的标识符代码和访问代码与多个不同的唯一目的地密钥关联。每个唯一的目的地密钥都用于向不同的应用程序/网站目的地进行注册。应用程序/网站目的地通常通过在登录时将接收到的目的地密钥与目的地注册给用户的目的地密钥相匹配来授予访问权限。因此,具有存储的标识符代码的设备上的用户可以通过在每次登录时输入单个访问代码来登录到多个目的地,并且每个目的地接收不同的目的地密钥。
用于应用程序/网站目的地的目的地密钥未存储在用户侧(例如,用户设备、密码库、用户的云存储、硬件密钥等),而是基于使用标识符代码和访问代码的多因素授权系统来重新生成。即,基于访问代码和标识符代码而一致地生成目的地密钥,其中在用户侧未存储目的地密钥。
标识符代码可以安全地存储在用户设备上。标识符代码可以遵循鲁棒的最低要求(例如,长度要求、复杂性测试、重复检测等),并使用用户可以轻松回忆起来的一条令人难忘的信息(例如,最喜欢的电影引语或他们生命中的定义时刻)来创建。
例如,标识符可以是字母数字密码或句子、视觉访问代码(例如,通过VAI选择图像或热点)、模式等。标识符代码可以在设备上一次输入并受到保护以免从设备显示或传输出去。例如,标识符代码可以以安全格式(例如,加密、哈希等)存储,并使用设备的安全机制(例如,安全硬件空间,受保护的存储器,只读存储器,一次写入多次读取安全存储装置等)。
每次服务提供商请求安全登录时,用户就将访问代码提供给设备。可以以多种格式(例如,字母数字、视觉、语音等)输入单个访问代码,以访问多个不同的服务提供商,并且不从设备传输出去。
在示例实现中,诸如文本密码、视觉密码、模式、生物特征、用户行为等的不同的以用户为中心的认证机制接收与标识符代码一起使用的访问代码,以一致地生成目的地密钥。访问代码可能需要鲁棒的安全性要求(例如,长度要求、复杂性测试、重复检测等),并且高效地进入设备。
在示例实现中,访问代码是字母数字字符串、视觉访问序列、安全锁、模式、手势、隐藏锁、骰子字中的至少一个,并且访问代码被进一步使用生物特征信息(例如指纹、面部扫描、视网膜扫描等)加密。生物特征信息存储在设备上,以提供附加的本地安全性层,从而可以快速进行认证以重新生成目的地密钥,并且生物特征信息不需要传输到任何外部服务或组件。来自应用程序或服务的后续登录请求可以提示用户提供生物特征信息,以解密访问代码以重新生成目的地密钥。
此外,可以不时(例如,随机地,倒数时钟,每x次登录等)要求用户输入访问代码,以确认用户记得该访问代码。来自应用程序或服务的其他后续登录请求可以提示用户通过输入生物特征信息之外的访问代码来确认访问代码。
由于比标识符代码更频繁地输入访问代码,因此可以将访问代码配置为比标识符代码更高效地输入。例如,访问代码可以是字母数字密码、视觉访问代码(例如,通过VAI选择图像或热点)、模式等,并且应该与标识符代码不同。
目的地密钥被提供给服务提供商(例如,通过发送,以目的地的密码形式填充密码等)。例如,MFA可以使用鲁棒的启发式方法正确识别网站的登录字段,使用可访问性API(例如,Open YOLO协议)等。
如上所述,注册过程(例如,注册过程3500)可以使用单向密码编码来生成字母数字密码,并将该密码与目标标识符一起植入。MFA流程会生成目的地密钥,该目的地密钥与应用程序/网站的目的地名称、标识符代码和访问代码一起植入。因此,用户的系统不需要存储每个站点的密码,因为访问代码过程会根据用户输入一致地复制密码的生成。
在配置的设备上生成目的地密钥不需要网络连接或外部资源。根据替代示例,可以通过使用标识符代码和访问代码,已配置设备的经过认证的导出机制(例如,矩阵条形码、近场通信等)完成设置过程或者使用本领域普通技术人员所理解的网络传输技术来完成其他设备的配置。示例实现方式被配置为禁止用于MFA完整性的标识符代码和/或访问代码的网络传输。
示例性MFA方法包括由设备将来自用户的标识符代码存储在设备的安全存储装置中。响应于从应用程序或服务接收到登录请求,提示用户提供访问代码,并且设备基于标识符代码和访问代码生成目的地密钥。目的地密钥已在应用程序或服务中注册以认证用户。
响应于接收到来自应用程序或服务的后续登录请求:提示用户提供访问代码,并且MFA基于存储的标识符代码和接收到的访问代码为应用程序或服务重新生成相同的目的地密钥。可以基于存储的标识符代码和用于访问应用程序或服务的访问代码一致地重新生成目的地密钥。
此外,响应于从另一应用程序或服务接收到登录请求,提示用户提供相同的访问代码,并且MFA基于标识符代码和访问代码生成不同的目的地密钥。将不同的目的地密钥注册到另一个应用程序或服务以认证用户,其中可以基于所存储的标识符代码和用于访问另一个应用程序或服务的访问代码来一致地重新生成另一个目的地密钥。
图42是展示了根据各种实施方案的有线或无线系统550的框图。参考图1和图21,系统550可用于实现媒体平台120。在各种实施方案中,系统550可为常规的个人计算机、计算机服务器、个人数字助理、智能电话、平板计算机或者能够进行有线或无线数据通信的任何其他处理器启用设备。如本领域技术人员将清楚的,也可使用其他计算机系统和/或架构。
系统550优选地包括一个或多个处理器,诸如处理器560。可提供附加处理器,诸如用于管理输入/输出的辅助处理器、用于执行浮点数学运算的辅助处理器、具有适用于快速执行信号处理算法的架构的专用微处理器(例如,数字信号处理器)、从属于主处理系统的从属处理器(例如,后端处理器)、用于双处理器系统或多处理器系统的附加微处理器或控制器、或者协处理器。这种辅助处理器可为离散处理器,或者可与处理器560集成。
处理器560优选地连接到通信总线555。通信总线555可包括数据信道,以用于促进系统550的存储装置与其他外围部件之间的信息传递。通信总线555还可提供用于与处理器560通信的一组信号,包括数据总线、地址总线和控制总线(未示出)。通信总线555可包括任何标准或非标准总线体系结构,例如像,符合工业标准体系结构(“ISA”)、扩展工业标准体系结构(“EISA”)、微通道体系结构(“MCA”)、外围部件互连(“PCI”)局部总线、或者由电气和电子工程师协会(“IEEE”)颁布的标准(包括IEEE 488通用接口总线(“GPIB”)、IEEE 696/S-100等)的总线体系结构。
系统550优选地包括主存储器565,并且还可包括辅助存储器570。主存储器565为在处理器560上执行的程序提供指令和数据的存储。主存储器565通常是基于半导体的存储器,诸如动态随机存取存储器(“DRAM”)和/或静态随机存取存储器(“SRAM”)。其他基于半导体的存储器类型包括例如同步动态随机存取存储器(“SDRAM”)、Rambus动态随机存取存储器(“RDRAM”)、铁电随机存取存储器(“FRAM”)等,包括只读存储器(“ROM”)。
辅助存储器570可选地可包括内部存储器575和/或可移动介质580,例如软盘驱动器、磁带驱动器、光盘(“CD”)驱动器、数字通用光盘(“DVD”)驱动器等。以公知的方式读取和/或写入可移动介质580。可移动存储介质580可为例如软盘、磁带、CD、DVD、SD卡等。
可移动存储介质580是非暂时性计算机可读介质,其上存储有计算机可执行代码(即,软件)和/或数据。存储在可移动存储介质580上的计算机软件或数据被读入系统550中以供处理器560执行。
在替代实施方案中,辅助存储器570可包括用于允许计算机程序或其他数据或指令加载到系统550中的其他类似装置。此类装置可包括例如外部存储介质595和通信接口590。外部存储介质595的实例可包括外部硬盘驱动器或外部光学驱动器或外部磁光驱动器。
辅助存储器570的其他实例可包括基于半导体的存储器,诸如可编程只读存储器(“PROM”)、可擦除可编程只读存储器(“EPROM”)、电可擦除只读存储器(“EEPROM”)、或者闪存(类似于EEPROM的面向块的存储器)。还包括可移动介质580和通信接口,其允许软件和数据从外部存储介质595传递到系统550。
系统550还可包括输入/输出(“I/O”)接口585。I/O接口585有助于从外部设备输入和输出到外部设备。例如,I/O接口585可从键盘或鼠标接收输入,并且可向显示器提供输出。I/O接口585能够有助于从各种替代类型的人机界面和机器接口设备输入并且输出到所述人机界面和机器接口设备。
系统550还可包括通信接口590。通信接口590允许软件和数据在系统550与外部设备(例如,打印机、网络、信息源等)之间传递。例如,计算机软件或可执行代码可经由通信接口590从网络服务器传送到系统550。仅举几例,通信接口590的实例包括调制解调器、网络接口卡(“NIC”)、无线数据卡、通信端口、PCMCIA插槽和卡、红外接口以及IEEE 1394火线。
通信接口590优选地实现工业发布的协议标准,诸如以太网IEEE 802标准、光纤通道、数字用户线(“DSL”)、异步数字用户线(“ADSL”)、帧中继、异步传输模式(“ATM”)、综合数字服务网络(“ISDN”)、个人通信服务(“PCS”)、传输控制协议/互联网协议(“TCP/IP”)、串行线路互联网协议/点对点协议(“SLIP/PPP”)等,但是也可实现定制或非标准接口协议。
经由通信接口590传送的软件和数据通常呈电通信信号605的形式。电通信信号605优选地经由通信信道600提供给通信接口590。在一个实施方案中,通信信道600可为有线或无线网络或者任何种类的其他通信链路。通信信道600承载电通信信号605并且可使用各种有线或无线通信装置来实现,仅举几例,包括电线或电缆、光纤、常规电话线、蜂窝电话链路、无线数据通信链路、射频(“RF”)链路或红外链路。
计算机可执行代码(即,计算机程序或软件)存储在主存储器565和/或辅助存储器570中。计算机程序也可经由通信接口590接收并存储在主存储器565和/或辅助存储器570中。此类计算机程序在被执行时使得系统550能够执行如前所述的本发明的各种功能。
在本说明书中,术语“计算机可读介质”用于指代用于向系统550提供计算机可执行代码(例如,软件和计算机程序)的任何非暂时性计算机可读存储介质。介质的实例包括主存储器565、辅助存储器570(包括内部存储器575、可移动介质580和外部存储介质595)、以及与通信接口590通信耦合的任何外围设备(包括网络信息服务器或其他网络设备)。这些非暂时性计算机可读介质是用于向系统550提供可执行代码、编程指令和软件的装置。
在使用软件实现的实施方案中,软件可存储在计算机可读介质上,并且通过可移动介质580、I/O接口585或通信接口590加载到系统550中。在这种实施方案中,软件以电通信信号605的形式加载到系统550中。当由处理器560执行时,软件优选地引起处理器560执行本文先前描述的发明特征和功能。
系统550还包括可选的无线通信部件,所述无线通信部件有助于通过语音和通过数据网络进行无线通信。无线通信部件包括天线系统610,无线电系统615和基带系统620。在系统550中,在无线电系统615的管理下,由天线系统610通过空气发送和接收射频(“RF”)信号。
在一个实施方案中,天线系统610可包括一根或多根天线和一个或多个多路复用器(未示出),所述多路复用器执行切换功能以向天线系统610提供发送和接收信号路径。在接收路径中,接收的RF信号可从多路复用器耦合到低噪声放大器(未示出),所述放大器放大接收的RF信号并且将放大的信号发送到无线电系统615。
在替代实施方案中,无线电系统615可包括被配置来在各种频率上通信的一个或多个无线电部件。在一个实施方案中,无线电系统615可将解调器(未示出)和调制器(未示出)组合在一个集成电路(“IC”)中。解调器和调制器也可为单独部件。在进入路径中,解调器除去RF载波信号,留下基带接收音频信号,所述基带接收音频信号被从无线电系统615发送到基带系统620。
如果接收信号包含音频信息,那么基带系统620对信号进行解码并将其转换成模拟信号。随后信号被放大并发送到扬声器。基带系统620还从麦克风接收模拟音频信号。这些模拟音频信号被转换成数字信号并且由基带系统620编码。基带系统620还对数字信号进行编码以便进行传输,并且产生基带发送音频信号,所述基带发送音频信号被路由到无线电系统615的调制器部分。调制器将基带发送音频信号与RF载波信号混合,从而产生RF发送信号,所述RF发送信号被路由到天线系统并且可通过功率放大器(未示出)。功率放大器放大RF发射信号并将其路由到天线系统610,在所述天线系统处信号被切换到天线端口以便进行传输。
基带系统620还与处理器560通信耦合。处理器560具有对一个或多个数据存储区域的访问权限,包括例如但不限于主存储器565和辅助存储器570。处理器560优选地被配置来执行可存储在主存储器565或辅助存储器570中的指令(即,计算机程序或软件)。计算机程序也可从基带处理器610接收并存储在主存储器565或辅助存储器570中或者在接收时执行。此类计算机程序在被执行时使得系统550能够执行如前所述的本发明的各种功能。例如,主存储器565可包括可由处理器560执行的各种软件模块(未示出)。
各种实施方案也可主要使用例如诸如专用集成电路(“ASIC”)或现场可编程门阵列(“FPGA”)的部件在硬件中实现。能够执行本文描述的功能的硬件状态机的实现也将对于相关领域的技术人员明显。也可使用硬件和软件的组合来实现各种实施方案。
此外,本领域的技术人员将了解,结合上文描述的附图和本文中公开的实施方案而描述的各种说明性逻辑块、模块、电路和方法步骤通常可实现为电子硬件、计算机软件或二者组合。为了清楚地说明硬件和软件的这种可互换性,上文已大体上在其功能方面对各种说明性部件、块、模块、电路和步骤进行了描述。将这种功能性实现为硬件还是软件取决于特定应用和强加于整个系统的设计约束。技术人员可针对每个特定应用以不同方式实现所描述的功能,但是这种实现决策不应被解释为导致脱离本发明的范围。此外,模块、块、电路或步骤内的功能分组是为了便于描述。在不脱离本发明的情况下,特定功能或步骤可从一个模块、块或电路移动到另一个。
此外,结合本文公开的实施方案描述的各种说明性逻辑块、模块和方法可用通用处理器、数字信号处理器(“DSP”)、ASIC、FPGA或其他可编程逻辑设备、离散门或晶体管逻辑、离散硬件部件或被设计来执行本文所述的功能的其任何组合来实现或执行。通用处理器可为微处理器,但是可替代地,处理器可为任何处理器、控制器、微控制器或状态机。处理器还可被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、与DSP核结合的一个或多个微处理器或者任何其他此类配置。
此外,结合本文公开的实施方案描述的方法或算法的步骤可直接体现为硬件、由处理器执行的软件模块或两者的组合。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或者包括网络存储介质的任何其他形式的存储介质中。示例性存储介质可耦合到处理器,使得处理器可从存储介质读取信息并向存储介质写入信息。在替代方案中,存储介质可与处理器成一整体。处理器和存储介质也可驻留在ASIC中。
图43示出了根据各种实施方案的示例身份建立过程4300。建立ghostPassword身份,使用户可以与多个服务器服务或应用程序中的多个用户名/密码组合共同进行交互。用户可以使用定义的时刻以单一的易记身份集中管理用户名/密码组合。接口4310、4320、4330和4340示出了用于建立身份的示例身份建立过程。例如,可以通过输入用作身份卡的唯一短语来建立身份。用户可以选择容易记住或难忘的东西。该界面可以提供定义时刻的示例。例如,定义时刻可能是一家糟糕的餐馆。其中用户被提示某事物例如:“当我们向Mule餐厅问路时,旁观者总是在说Mule之前对我打个招呼”。其他令人难忘的示例包括事件、电影、引语、喜欢的地点等。它存储在电话的安全区域中,并受硬件保护。
图44示出了根据各个实施方案的示例默认密钥生成器过程。密码界面可以包括用于生成ghostPasswords的键盘附件。例如,密钥生成器可以包括用于输入主密码的键盘,该主密码为每个服务或应用程序生成唯一的密钥。密钥生成器键盘可以与手机上安装的应用程序本地集成。在4420,可以选择密钥生成器类型。每次用户生成密码时,他们都会输入密钥。可以向用户提供各种密钥输入机制以生成密钥。在4430,可以选择诸如简化的字母数字之类的密钥生成器类型。在4440,可以选择用于视觉密码的密钥生成器类型。
图45示出了根据各个实施方案的示例ghostPassword键盘界面。在4510,用户可以在重影键盘键生成器和普通键盘模式之间切换。在4520,重影键盘包括用于指示当前正在使用的应用或服务的图标。在4530,用户可以输入或选择用于登录到当前应用程序或服务的用户名。在4540,用户可以输入与身份等级相关联的主ghostPassword。在4550,ghostPassword密钥生成器对主ghostPassword进行认证,并确定为所选应用程序或服务个性化的唯一安全密码。该应用程序的唯一安全密码已向该应用程序注册,并且重影密码键盘根据与先前注册的安全密码匹配的步骤4520、4530、4540一致地重新生成安全密码。在4560,将所生成的安全密码填充到具有所选用户名的所选应用程序或服务的密码输入字段中。密钥生成器密码键盘允许用户回答主重影密码,以跨多个应用程序或服务生成个性化的安全密码。因此,用户不需要记住或回忆每个个性化的安全密码。
图46示出了根据各种实施方案的示例用户名输入过程。在示例实现中,用户可以建立并存储与注册的应用程序或服务相关联的用户名。在4610,移动设备可以自动检测是否在设备上激活了可访问性服务,并提示用户启用该服务或允许他们继续使用剪贴板来检测URL。在4620-4640,用户可以输入用户名、电子邮件地址或电话号码以及密码版本整数。在4650,示例界面向用户呈现先前存储的用户名,例如,具有修订计数的电子邮件地址。
图47示出了根据各种实施方案的示例性定义时刻界面。界面4700示出了定义时刻输入模式的示例。在4710,用户可以输入带有提示的定义时刻。在4720,用户可以使用热点选择视觉定义时刻。
图48示出了根据各种实施方案的示例性浏览器ghostPassword输入过程。过程4800示出了在浏览器模式下将身份与注册的应用程序一起使用的示例登录过程。例如,可以在4820向用户显示用户名。响应于选择用户名,在4830向用户显示第一视觉密码屏幕。使用视觉密码键盘,用户可以从图库中选择先前注册的图像,在4840,用户从适当的图像中选择先前注册的热点。一旦正确选择了热点,ghostPassword就会生成与应用程序关联的安全密码,并使用安全密码信息和用户名填充应用程序登录屏幕,并将安全密码和用户名发送给应用程序,而无需用户输入安全密码。在4850,所选择的应用程序对用户进行认证并且向用户提供对该应用程序的访问权限。
图49示出了根据各个实施例的示例ghostPassword管理过程。过程4900示出了用于各种实施例的示例管理屏幕。例如,界面4910可以包括登录名、设置、帮助、关于或身份,以允许用户管理或更新注册安全密码和应用程序控件。在4920,用户可以选择先前注册的账户。在4930,用户可以访问与特定应用程序或服务相关联的安全密码。在4940,用户可以将与ghostPassword关联的设置更改为例如导出,导入,更改或重置密码。界面4950示出了用于导出身份和/或安全密码的示例导出模式。ghost密码管理界面允许通过各种通信方式(例如QR码、近距离通信、共享选项或其他通信选项)进行导出。
图50示出了根据各种实施方案的ghostPassword元素的示例流程。
提供所公开的实施方案的以上描述是为了使得本领域任何技术人员能够制作或使用本发明。本领域技术人员将容易明白对这些实施方案的各种修改,并且在不脱离本发明的精神或范围的情况下,本文描述的一般原理可应用于其他实施方案。因此,应当理解,本文呈现的描述和附图代表了本发明的当前优选实施方案,并且因此代表了本发明广泛考虑的主题。还应当理解,本发明的范围完全包括对于本领域技术人员来说可能变得明显的其他实施方案,并且因此本发明的范围不受限制。
Claims (12)
1.一种方法,包括:
由设备将来自用户的标识符代码存储在该设备的安全存储装置中;
响应收到来自应用程序或服务的登录请求:
提示用户提供访问代码,
根据标识符代码和访问代码生成目的地密钥,以及
向应用程序或服务注册目的地密钥以认证用;
响应于接收到来自应用程序或服务的后续登录请求:
提示用户提供访问代码,以及
基于所存储的标识符代码和所接收的访问代码来重新生成目的地密钥。
2.如权利要求1所述的方法,其中,响应于从另一应用程序或服务接收到登录请求:
提示用户提供访问代码,
基于标识符代码和访问代码生成另一个目的地密钥,以及
向另一个应用程序或服务注册另一个目的地密钥以认证用户;
其中,所述另一个目的地密钥不同于所述目的地密钥,并且其中,能够基于所存储的标识符代码和访问代码来重新生成所述另一个目的地密钥。
3.如权利要求1所述的方法,其中,所述标识符代码被存储为散列文件。
4.如权利要求1所述的方法,其中,不从所述设备发送所述标识符代码。
5.如权利要求1所述的方法,其中,将所述标识符代码存储在所述设备的一次写入多次读取安全存储装置中。
6.如权利要求1所述的方法,其中,所述标识符代码被存储为散列文件。
7.如权利要求1所述的方法,其中,所述访问代码是字母数字代码、视觉访问代码、安全锁、图案、手势、隐藏锁、骰子词、指纹、视网膜扫描、面部扫描或其他生物特征条目中的至少一个。
8.如权利要求1所述的方法,其中,所述访问代码是字母数字字符串、视觉访问序列、安全锁、图案、手势、隐藏锁、骰子字中的至少一个,其中,所述访问代码还通过生物特征信息进行加密,其中生物特征信息存储在所述设备上。
9.如权利要求8所述的方法,其中,来自所述应用程序或服务的所述后续登录请求提示所述用户提供所述生物特征信息以解密所述访问代码以重新生成所述目的地密钥。
10.如权利要求9所述的方法,其中,来自所述应用程序或服务的另外的后续登录请求提示所述用户通过输入所述生物特征信息之外的访问代码来提供所述访问代码。
11.如权利要求1所述的方法,其中,所述后续登录请求由所述设备使用试探法来检测。
12.一种用于认证用户设备的系统,包括:
存储器;
可操作地耦合到所述存储器的处理器,其中所述处理器被配置为:
响应于来自服务提供商的用户的登录请求,基于标识符代码和访问代码生成目的地密钥,其中该目的地密钥已针对用户向服务提供商注册,其中标识符代码安全地存储在存储器,其中提示用户输入访问代码,并且其中混合算法始终为服务提供商重新创建目的地密钥。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/952,533 US20180278600A1 (en) | 2016-01-19 | 2018-04-13 | Multi-factor masked access control system |
US15/952,533 | 2018-04-13 | ||
PCT/US2019/024306 WO2019199460A1 (en) | 2018-04-13 | 2019-03-27 | Single-device multi-factor authentication system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112689980A true CN112689980A (zh) | 2021-04-20 |
Family
ID=68164475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980039612.2A Pending CN112689980A (zh) | 2018-04-13 | 2019-03-27 | 单设备多因素认证系统 |
Country Status (5)
Country | Link |
---|---|
JP (1) | JP2021521531A (zh) |
KR (1) | KR20200132999A (zh) |
CN (1) | CN112689980A (zh) |
EA (1) | EA202092438A1 (zh) |
WO (1) | WO2019199460A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080216153A1 (en) * | 2007-03-02 | 2008-09-04 | Aaltonen Janne L | Systems and methods for facilitating authentication of network devices |
US20130036462A1 (en) * | 2011-08-02 | 2013-02-07 | Qualcomm Incorporated | Method and apparatus for using a multi-factor password or a dynamic password for enhanced security on a device |
CN103828293A (zh) * | 2011-09-22 | 2014-05-28 | 动态身份安全系统公司 | 用于用户认证的系统和方法 |
US20170206346A1 (en) * | 2016-01-19 | 2017-07-20 | Regwez, Inc. | Visual access code |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4440513B2 (ja) * | 2002-03-14 | 2010-03-24 | 明宏 清水 | 資格認証方法 |
WO2009039223A1 (en) * | 2007-09-17 | 2009-03-26 | Vidoop Llc | Methods and systems for management of image-based password accounts |
KR101416536B1 (ko) * | 2012-04-25 | 2014-07-09 | 주식회사 로웸 | 패스코드 운영 시스템과 패스코드 장치 및 슈퍼 패스코드 생성 방법 |
WO2017049302A1 (en) * | 2015-09-18 | 2017-03-23 | First Data Corporation | System for validating a biometric input |
EP3424179B1 (en) * | 2016-03-04 | 2022-02-16 | Ping Identity Corporation | Method and system for authenticated login using static or dynamic codes |
-
2019
- 2019-03-27 WO PCT/US2019/024306 patent/WO2019199460A1/en active Application Filing
- 2019-03-27 EA EA202092438A patent/EA202092438A1/ru unknown
- 2019-03-27 CN CN201980039612.2A patent/CN112689980A/zh active Pending
- 2019-03-27 KR KR1020207032492A patent/KR20200132999A/ko not_active Application Discontinuation
- 2019-03-27 JP JP2020555918A patent/JP2021521531A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080216153A1 (en) * | 2007-03-02 | 2008-09-04 | Aaltonen Janne L | Systems and methods for facilitating authentication of network devices |
US20130036462A1 (en) * | 2011-08-02 | 2013-02-07 | Qualcomm Incorporated | Method and apparatus for using a multi-factor password or a dynamic password for enhanced security on a device |
CN103828293A (zh) * | 2011-09-22 | 2014-05-28 | 动态身份安全系统公司 | 用于用户认证的系统和方法 |
US20170206346A1 (en) * | 2016-01-19 | 2017-07-20 | Regwez, Inc. | Visual access code |
Non-Patent Citations (1)
Title |
---|
BLAKE ROSS等: "Stronger Password Authentication Using Browser Extensions", 《PROCEEDINGS OF THE 14TH CONFERENCE ON USENIX SECURITY SYMPOSIUM》 * |
Also Published As
Publication number | Publication date |
---|---|
KR20200132999A (ko) | 2020-11-25 |
WO2019199460A1 (en) | 2019-10-17 |
EA202092438A1 (ru) | 2021-01-27 |
JP2021521531A (ja) | 2021-08-26 |
EP3777092A1 (en) | 2021-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108701194B (zh) | 掩蔽限制访问控制系统 | |
US20180278600A1 (en) | Multi-factor masked access control system | |
US10019136B1 (en) | Image sharing device, apparatus, and method | |
US10977380B2 (en) | Hybrid role and attribute based access control system | |
US10027727B1 (en) | Facial recognition device, apparatus, and method | |
US10027726B1 (en) | Device, apparatus, and method for facial recognition | |
US20220309071A1 (en) | Accessing listings in a data exchange | |
US20190109809A1 (en) | Aggregating Events on Online Social Networks | |
KR101416539B1 (ko) | 아이콘의 키워드를 이용하는 아이콘 패스워드 설정 장치 및 아이콘 패스워드 설정 방법 | |
WO2008111051A2 (en) | A general object graph for web users | |
CN117397205A (zh) | 引导对去中心化标识符的信任 | |
Carminati et al. | Trust and share: Trusted information sharing in online social networks | |
US8478791B2 (en) | Interoperability across heterogeneous taxonomies | |
US11966485B2 (en) | Property-level visibilities for knowledge-graph objects | |
CN112689980A (zh) | 单设备多因素认证系统 | |
CN105320728A (zh) | 分离域数据的聚合 | |
JP2005332049A (ja) | ポリシ変換方法、ポリシ移行方法およびポリシ評価方法 | |
JP2022553453A (ja) | メディアコンテンツを検索およびインデックス付けするための埋め込みを共有するためのプライバシー制御 | |
US20240179262A1 (en) | Object data exchange | |
Rasheed et al. | Design and Development of Vlog Content Management System (VlogCMS) | |
Bouck-Standen et al. | Multi-Factor Authentication for Public Displays using the Semantic Ambient Media Framework: Interconnecting Semantic Media and Devices |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210420 |
|
WD01 | Invention patent application deemed withdrawn after publication |