CN107251035A - 账户恢复协议 - Google Patents
账户恢复协议 Download PDFInfo
- Publication number
- CN107251035A CN107251035A CN201580072790.7A CN201580072790A CN107251035A CN 107251035 A CN107251035 A CN 107251035A CN 201580072790 A CN201580072790 A CN 201580072790A CN 107251035 A CN107251035 A CN 107251035A
- Authority
- CN
- China
- Prior art keywords
- user
- password
- recovery
- account
- code
- 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
Links
Classifications
-
- 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/45—Structures or tools for the administration of authentication
-
- 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/40—User authentication by quorum, i.e. whereby two or more security principals are required
-
- 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/6272—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 by registering files or documents with a third party
-
- 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
-
- 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/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- 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/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- 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/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- 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/3226—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 a predetermined code, e.g. password, passphrase or PIN
-
- 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/2131—Lost password, e.g. recovery of lost or forgotten passwords
-
- 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/2133—Verifying human interaction, e.g., Captcha
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开涉及:接收与用户相关联的账户的恢复请求;向与所述用户相关联的用户设备发送CAPTCHA质询;接收对所述CAPTCHA质询的回答以及由从临时主口令中导出的加密密钥封装的确认代码;向与所述用户相关联的一个或多个可信实体发送所述恢复请求的通知;以及从所述可信实体中的一个或多个可信实体处接收对所述请求的确认。所述确认包括与所述特定可信实体相关联的恢复令牌以及经加密的确认代码。
Description
相关申请的交叉引用
本申请要求提交于2014年11月14日的题为“ACCOUNT RECOVERY PROTOCOL(账户恢复协议)”的美国专利申请号62/080,125以及提交于2015年10月30日的题为“ACCOUNTRECOVERY PROTOCOL(账户恢复协议)”的美国专利申请号14/928,443的权益和优先权,所述美国专利申请的全部内容通过引用以其全文结合在此。
技术领域
本申请涉及计算领域,并且更具体地涉及一种用于用户账户恢复的系统、方法和协议。
背景技术
随着可用于用户的服务和应用的普及,通常特定用户变得有必要记住与用户相关联的众多服务和/或应用账户的登录凭证,如口令。如果用户忘记或丢失与账户相关联的口令,则用户通常必须启动口令恢复过程来重新获得对账户的访问。然而,许多现有口令恢复过程引入了安全漏洞。
附图说明
在附图的图示中通过示例而非限制的方式描述了实施例,在这些附图中,相似的参考表示类似的元素,并且其中:
图1展示了根据一个实施例的用于用户账户恢复的高级架构,包括客户端侧组件和服务器侧组件;
图2展示了根据一个实施例的用于用户账户恢复的通信系统;
图3A至图3B展示了根据一个实施例的用于账户恢复协议设置和管理的过程流程的示例;
图4A至图4B展示了根据一个实施例的用于账户恢复协议的账户恢复请求建立过程流程的示例;
图5展示了根据一个实施例的用于账户恢复协议的账户恢复请求邀请过程流程的示例;
图6A至图6B展示了根据一个实施例的用于账户恢复协议的账户恢复请求完成过程流程的示例;
图7是客户端设备的实施例的简化框图;以及
图8是认证服务器的实施例的简化框图。
具体实施方式
一个或多个示例实施例涉及一种用于账户恢复协议(account recoveryprotocol,ARP)的系统和方法,作为一种用于在用户忘记相关联的“主口令”的情况下重置主口令并且允许口令管理器的用户恢复对其账户以及与网络服务(如在云服务中)相关联的经加密的所存储的数据的访问的机制。在一个或多个实施例中,系统操作员不保持有与服务本身相关联的主口令的知识。在特定实施例中,账户恢复协议帮助与“主口令”恢复相反的“账户/访问”恢复,因为为了保护用户隐私和数据机密性,一些口令管理器并不在任何时候都维持主口令的所存储的副本,即使是来自服务提供方的站点的口令管理器。
在一个或多个实施例中,口令管理器是包括用于如本文中所描述的巩固用户认证的多方面架构的认证平台的一部分。在各个实施例中,口令管理器提供对网络服务(如云中的服务)集中的认证访问。在一个或多个实施例中,订阅认证服务的服务或实体(被称为“依赖方”(RP))使用认证服务来在RP向用户提供其服务之前建立用户所需要的认证因素。在一个或多个实施例中,口令管理器应用呈现仪表盘,所述仪表盘在仪表盘中向订阅它的用户显示用户使用的所有云服务,以便允许输入对用户使用的服务的认证请求,当被要求时提供所请求的认证因素,并且在没有冗余且单独的登录尝试的情况下以集中的方式访问这些服务。口令管理器需要用户建立仅账户持有者已知的主口令。主口令很像其他口令那样用于用户认证,并且帮助登录账户并获得对用户服务的访问,但是它还有另一个重要角色,生成用于对用户数据进行加密的密钥以及用于帮助恢复过程的其他密钥。
图1展示了根据一个实施例的用于用户账户恢复的高级架构100,包括客户端侧组件和服务器侧组件。在图1中所展示的特定实施例中,架构100包括认证组件102和登记/管理组件104。认证组件102包括如本文中将进一步描述的一个或多个认证模块,所述一个或多个认证模块被配置成用于处理来自客户端设备的认证请求。在所展示的实施例中,认证组件102的认证模块包括流程和动作处置器模块、管理配置应用编程接口(API)、配置存储设备、表述性状态转移(Representational State Transfer,REST)服务器、会话存储设备、以及REST API。在特定实施例中,根据OAuth开放标准来配置认证模块。登记/管理组件104包括上下文数据模块、依赖方管理工具、用户/应用策略管理模块以及私有REST API。
认证组件102和登记/管理组件104各自进一步与云服务106、服务器108和身份认证服务110进行通信。云服务106进一步包括数据抽象层(DAL)、上下文模块、用户简档模块、风险分析引擎、以及REST API。服务器108包括硬件登记/验证模块、证明模块以及RESTAPI。身份认证服务110包括被配置成用于促进与架构100内的其他组件进行通信的RESTAPI。云服务106与一个或多个数据库112进一步通信。在特定的所展示的实施例中,数据库112包括会话数据库、生物特征数据库以及认证数据库。
架构100进一步包括依赖方网站114以及驻留在与一个或多个依赖方实体相关联的一个或多个服务器中的依赖方应用116。依赖方网站114和依赖方应用116中的每一个都与认证组件102进行通信。依赖方网站包括web软件开发工具包(SDK)并且与认证web接口118进一步通信。认证web接口118与登记/管理组件104进一步通信。依赖方应用116与认证客户端应用120进一步通信。认证客户端应用120与登记/管理组件104进一步通信。架构100进一步包括与登记/管理组件104通信的认证OS登录组件122。认证客户端应用120和认证OS登录组件122中的每一个都包括用于帮助从用户处获得生物特征数据的本地生物特征库。
认证组件102被配置成用于处置对认证功能的认证请求,并且创建与如用户简档、策略和生物特征组件等组件进行交互的认证指定流程和动作处置器以便处理认证请求。在登记过程期间,登记/管理组件104经由私有REST API与各个组件对接,并且为特定用户创建用户简档并将用户简档与标识特定RP客户端的依赖方(RP)客户端标识符(ID)相关联。在一个或多个实施例中,创建用户简档和RP客户端策略并将其存储在一个或多个数据库(DB)112中。在特定实施例中,用户简档、RP应用策略和上下文数据的DB结构与用于认证请求的认证模块102共享。
在一个示例实施例中,一个或多个认证服务器中的策略引擎管理用户对一个或多个RP实体进行认证的策略。在一个特定实施例中,与用户相关联的策略可通过订阅RP实体和用户自身的安全设置两者进行配置,以便控制用户访问RP实体所提供的资源。在特定实施例中,设置用于使用认证因素的最小安全等级,并且用户和/或RP实体可以增加认证的因素的等级和数量,但是不能减少它。
根据各个实施例,账户恢复协议(ARP)在各个实施例中作为恢复机制被提供给用户。在一个或多个实施例中,用户可以被提供有事先建立恢复机制的选项,从而使得在用户忘记相关联的主口令的情况下用户可以从对用户服务的访问的丢失中恢复并对其进行修复。
图2展示了根据一个实施例的用于用户账户恢复的通信系统200。通信系统200包括与用户A相关联的第一客户端设备202a、与用户B相关联的第二客户端设备202b、与用户C相关联的第三客户端设备202c、与用户D相关联的第四客户端设备202d、与用户E相关联的第五客户端设备202e、以及与用户F相关联的第六客户端设备202f。客户端设备202a至202f中的每个客户端设备经由一个或多个网络204与认证服务器206进行通信。(多个)网络204可以包括移动接入网络、因特网或任何其他合适的网络中的一者或多者,以便允许客户端设备202a至202f与认证服务器206进行通信。认证服务器206经由因特网208进一步与依赖方(RP)服务器210进行通信。第一客户端设备202a包括第一口令应用212a,第二客户端设备202b包括第二口令应用212b,第三客户端设备202c包括第三口令应用212c,第四客户端设备202d包括第四口令应用212d,第五客户端设备202e包括第五口令应用212e,并且第六客户端设备202f包括第六口令应用212f。口令应用212a至212f中的每一个都被配置成用于允许用户的对应客户端设备202a至202f的用户与认证服务器102进行通信,以便执行如本文中进一步描述的各种口令设置和恢复过程。
认证服务器206包括认证组件102。认证组件包括口令应用REST API 214。在特定实施例中,认证服务器206可以位于服务提供方的核心网络中。口令应用REST API 214被配置成用于与客户端设备202a至202f的对应口令应用212a至212f对接,以便允许认证组件102执行如本文中所描述的口令设置和随后的口令恢复操作,进而允许与客户端设备202a至202f中的一个或多个客户端设备相关联的用户访问与RP服务器210相关联的资源、服务、应用和/或内容(如流式音频、流式视频、视频内容、音频内容或RP服务器210提供的任何其他期望的内容)。
客户端设备202a至202f可以包括能够访问由RP服务器210所提供的资源的任何电子或计算设备。这些客户端设备202a至202f可以包括例如:移动电话、台式PC、膝上型计算机、平板计算机、个人数字助理(PAD)、智能电话、便携式媒体文件播放器、电子书阅读器、便携式计算机、头戴式显示器、交互信息亭、移动电话、上网本、单板计算机(SBC)、嵌入式计算机系统、可穿戴计算机(例如,手表或眼镜)、游戏控制台、家庭影院PC(HTPC)、TV、DVD播放器、数字有线电视盒、数字录像机(DVR)、能够运行web浏览器的计算机系统、或这些中的任何两个或更多个的组合。计算设备可以使用包括但不限于Android、Berkeley软件分布(BSD)、iPhone OS(iOS)、Linux、OS X、类Unix实时操作系统(例如,QNX)、MicrosoftWindows、Window Phone、以及IBM z/OS的操作系统。
依赖方(RP)服务器210可以包括与实体(如网站、供应商以及需要其用户在访问其资源之前被识别和认证的其他数据、服务和应用的提供方)相关联的服务器。
在示例实施方式中,客户端设备202a至202f、认证服务器206以及RP服务器210是网络元件,它们意味着包含网络电器、服务器、路由器、交换机、网关、桥接器、负载均衡器、处理器、模块,或任何其他适当的设备、组件、元件、或可运行以在网络环境中交换信息的对象。网络元件可以包括任何适当的硬件、软件、组件、模块、或便于其运行的对象,以及用于在网络环境中接收、发射、和/或另外传达数据或信息的适当接口。这可以包括允许数据或信息的有效交换的适当的算法和通信协议。
关于与通信系统200相关联的内部结构,客户端设备202a至202f、认证服务器206以及RP服务器210中的每一个都可以包括存储器元件,所述存储器元件用于存储有待用于本文中所概述的操作的信息。客户端设备202a至202f、认证服务器206以及RP服务器210中的每一个可以将信息保持在任何适当的存储器元件(例如,随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、专用集成电路(ASIC)等)、软件、硬件、固件中,或(在合适的情况下并基于具体需要)任何其他适当的组件、设备、元件、或对象中。本文中所讨论的存储器项中的任何一个应当被理解为包含在宽泛术语‘存储器元件’内。而且,可以在任何数据库、寄存器、队列、表格、高速缓存、控制列表、或其他存储结构(所有这些可以在任何适当的时间帧被引用)中提供在通信系统200中被使用、追踪、发送、或接收的信息。任何此类存储选项也可以包括在如本文中所使用的宽泛术语‘存储器元件’内。
在某些示例实施方式中,本文中所概述的功能可以通过被逻辑编码在一种或多种有形介质(例如,ASIC中所提供的嵌入式逻辑、数字信号处理器(DSP)指令、有待由处理器执行的软件(潜在地包括对象代码和源代码)、或其他类似机器等)中来实现,所述一种或多种有形介质可以包括非瞬态计算机可读介质。在这些实例的一部分中,存储器元件可以存储用于本文中所描述的操作的数据。这包括存储器元件能够存储软件、逻辑、计算机代码或被执行以便实施本文中所描述的活动的处理器指令。
在示例实施方式中,通信系统200的网络元件,如客户端设备202a至202f、认证服务器206以及RP服务器210,可以包括软件模块用于实现或用于培养本文中所概述的操作。这些模块可以通过任何适当的方式合适地组合,这可以基于具体配置和/或规定需要。在某些实施例中,可以由硬件实施这些操作、将其实施到这些元件的外部或将其包括在某个其他网络设备中,以便实现预期功能。此外,所述模块可以被实现为软件、硬件、固件或其任何合适的组合。这些元件还可以包括软件,所述软件可以与其他网络元件协调以便实现如本文中所概述的操作。
此外,客户端服务器202a至202f、认证服务器206以及RP服务器210中的每一个可以包括可以执行软件或算法的处理器以执行本文中所讨论的活动。处理器可以执行与数据相关联的任何类型的指令以便实现本文中详细说明的操作。在一个示例中,所述处理器可以将元件或物品(例如,数据)从一种状态或事物变换成另一种状态或事物。在另一个示例中,本文中所概述的活动可以使用固定逻辑或可编程逻辑(例如,由处理器执行的软件/计算机指令)实施,并且本文中所识别的元件可以是某种类型的可编程处理器、可编程数字逻辑(例如,现场可编程门阵列(FPGA)、EPROM、EEPROM)或包括数字逻辑、软件、计算机代码、电子指令或其任何合适的组合的ASIC。本文中所描述的可能的处理元件、模块以及机器中的任何一个可以被理解为包含在宽泛术语‘处理器’中。
根据一个或多个实施例,如果账户恢复变得必要,则本文中所描述的账户恢复协议(ARP)可以被实现为由待使用的口令管理器应用的用户建立的可选特征。在一个或多个实施例中,账户持有者(如与第一客户端202相关联的用户A)建立主口令来获得对口令管理器应用的访问。根据一个或多个实施例,主口令具有两种用途:1)用户认证;以及2)对用户数据进行加密。根据各个实施例,从主口令中导出两个密码密钥,一个将账户持有者电子邮件地址用作盐(salt)(用于认证),并且第二个使用用于对用户数据进行加密的唯一/随机盐。盐是被用作用于生成密码密钥的附加输入的数据。
本文中所描述的账户恢复协议(ARP)的一个或多个实施例背后的主要概念是账户恢复密钥(account recovery key,ARK),所述账户恢复密钥是用于对账户恢复工具套装(account recovery bundle,ARB)进行加密的随机生成的秘密密钥。在特定实施例中,ARB是采用JavaScript对象注释(JSON)格式的文件,所述格式除其他恢复属性之外还包含以下两条重要恢复数据:认证令牌一次性口令(One Time Password,OTP)和内容加密密钥(Content Encryption Key,CEK)。在特定实施例中,需要OTP和CEK两者来恢复账户并保持服务器上的机密直到需要它们来完成账户恢复请求(ARR)。
在一个或多个特定实施例中,使用被称为ARB_ARK的ARK对ARB进行加密。ARK秘密仅由账户持有者(例如,健忘的用户)持有或存储。在一个或多个实施例中,ARK秘密被分割成预定数量m块,并且使用将被保存在第三方中直到需要的ARP可信朋友(ARPTF)来共享每一块,而ARK秘密的内容和块被从ARPTF的视角处隐藏。
在一个或多个实施例中,ARPTF自身也是合法口令管理器应用账户持有者。在特定实施例中,可信朋友受到账户持有者的邀请成为ARPTF,并且具有接受或拒绝所述邀请的选项。在特定实施例中,账户持有者可以随意修改ARTF列表。在一个或多个实施例中,ARK秘密被分割并经由沙米尔秘密共享(Shamir’s Secret Sharing)(SSS)被共享给ARPTF。SSS是密码算法,在所述密码算法中,秘密被分成预定数量的部分,给予每个参与者其自身唯一的部分,其中,需要所述部分中的一些或全部来重建秘密。在一些实施例中,用户控制下的对象或设备(例如,电话、平板计算机、PC、USB密钥、具有印刷条码的一张纸)还可以通过持有来自SSS的一段来充当ARPTF。在图2中所展示的实施例中,与第二客户端设备202b相关联的用户B、与第三客户端设备202c相关联的用户C、与第四客户端设备202d相关联的用户D、与第五客户端设备202e相关联的用户E、以及与第六客户端设备202f相关联的用户F中的每一个均被指定为与第一客户端设备202a相关联的账户持有者用户A的可信朋友或ARPTF。
如果有必要恢复账户,则账户持有者向认证服务器206发出账户恢复请求。在启动恢复过程之后,向账户持有者呈现确认循环。在特定实施例中,确认循环包括收集账户持有者的电子邮件地址、对CAPTCHA质询的响应(例如,文本验证或证明活度的图像)以及用户选择和输入以用于恢复过程中的临时主密钥。CAPTCHA(“Completely Automated PublicTuring test to tell Computers and Humans Apart(用于区分计算机与人类的全自动公共图灵测试)”的首字母缩写)是一种用于判定用户是否是人类的质询-响应测试。认证服务器206然后生成带外确认码(OCC),向ARPTF提供小的秘密(例如,4位代码)并且ARPTF出于确认目的使用所述小的秘密以便确认在没有被篡改的情况下完成了带外(OOB)通信。
在一个或多个实施例中,认证服务器206然后指导账户持有者联系ARPTF列表的成员,向它们通知用于在恢复中帮助的请求,并且向ARPTF成员中的每个成员提供OCC。在特定实施例中,认证服务器206验证沿着路径的所有条目和实体。ARPTF各自接收用于帮助进行账户恢复的请求(包括OCC),并且被提示确认所述请求。在接收确认之后,允许认证服务器206检索ARPTF的恢复令牌。账户持有者的口令应用然后对经检索的令牌中的每个令牌进行解密并且建立ARPTF响应的共识。在一个或多个实施例中,建立SSS参数,从而使得如果从ARPTF处接收到预定数量的响应或响应的部分(例如,>=50%或5个中的3个等),则达到共识状态。一旦达到共识状态,就对接收到的恢复令牌进行解密和组装以便重建ARK。ARK用于对ARB进行解密,以便执行恢复过程。在恢复过程期间,采用程序来重新生成所有需要的种子、密钥、新块、以及新的新鲜密钥材料,并且进行重新加密以便将临时主密钥提升为新主密钥,由此允许用户经由新主密钥登录并且重新获得对用户账户和资源的控制。
本文中所描述的各个实施例利用主口令作为用于认证和用户数据加密两者的密码密钥生成的源。在一个或多个实施例中,认证服务器206使用同一秘密(例如,主口令)对用户数据进行基于加密的认证和恢复,其中,在可信实体与经验证实体当中分配恢复知识,同时认证服务器206也不知道恢复密钥的准确内容,以便隔离其自身并且对抗针对密码和恢复数据的安全威胁。
根据一个或多个实施例,提供恢复机制,在所述恢复机制中临时口令经历检查和密码操作,并且仅当基于数据的经分配的知识而完全验证时,所述临时口令才被接受用于替代先前已知的良好主口令。在特定实施例中,SSS算法用于在多个可信实体当中断裂并分配恢复密钥。以下部分概括了根据一个或多个指定实施例的针对ARP的各种顺序的示例高级操作。一个或多个实施例使用AES-CCM,所述AES-CCM是具有关联数据的认证加密(Authenticated Encryption with Associated Data,AEAD)算法,一类可以在其认证整条消息的同时对部分或整条消息进行加密的块密码操作模式。高级加密标准(AES)是用于对系统中的所有数据进行加密的块密码,并且具有CBC-MAC的计数器(CCM)是与AES一起用来提供经加密的数据的机密性和完整性两者的块密码操作模式。根据一个或多个实施例,仅部分消息被加密,而剩余部分不被加密但经过认证。在特定实施中,(ENC)被用作对经加密+经认证的指示,而(MAC)仅经认证。
在以下示例顺序中,使用以下实体:
用户A—一由于他在某些时候忘记他的主口令因此而使用ARP的“忘记者”。用户A与第一客户端设备202a相关联,所述第一客户端设备具有用户A用来与认证服务器206进行交互的客户端应用,口令应用212a。
用户B,C,D,E,F——是用户A的可信朋友的成员(即ARPTF),用户A与所述可信朋友共享多条其账户恢复密钥(ARK)。如所讨论的,ARK是随机生成的秘密密钥,所述秘密密钥用于对仅由账户持有者(用户A)持有的并且被分割成m块的ARB进行加密,所述m块中的每一块都被可信朋友(例如,用户B,C,D,E,F)安全地共享。在特定实施例中,用户B至用户F与对应的客户端设备202b至202f相关联,每个客户端设备具有对应的口令管理器应用212b至212f。
口令REST API 214——认证服务器206的认证组件102内认证、存储资产、允许共享并且充当对ARP的控制的服务。
图3A至图3B展示了根据一个实施例的用于账户恢复协议设置和管理的过程流程300的示例。在设置之前,用户A创建与口令应用212a相关联的账户。在一个或多个实施例中,创建账户包括为账户指定主口令。在账户创建之后,用户A向作为与其账户相关联的朋友的用户B、用户C、用户D、用户E和用户F中的每一个发送邀请请求。在一个或多个实施例中,用户B、用户C、用户D、用户E和用户F可能已经具有其自身的账户或者被提示用于响应于接收请求而创建其自身的账户。用户B、用户C、用户D、用户E和用户F中的一个或多个可以确认友好请求,从而使得用户A具有足够的朋友链接至其账户以便继续账户恢复协议(ARP)设置阶段。在一个或多个实施例中,用户A与用户B、用户C、用户D、用户E和用户F中的每一个之间的朋友关系由认证服务器206存储在数据库中。
在302中,第一客户端设备202a的用户A使用其主口令启动到第一客户端设备202a的口令应用212a的登录过程。在特定实施例中,用户A使用与第一客户端设备202a相关联的图形用户界面(UI)将电子邮件地址和主口令输入到口令应用212a中。用户A然后可以引导到UI内的ARP设置屏幕以便启动ARP设置。在304中,口令应用212a向认证服务器206的口令应用REST API 214发送对用户A的认证请求(POST/api_登录(api_login))。在特定实施例中,认证请求包括与用户A相关联的电子邮件地址和认证令牌。在306中,认证服务器206使用电子邮件地址和认证令牌针对数据库认证用户A。在308中,口令应用212a从认证服务器206处接收指示用户A已经被认证的认证响应(HTTP 200Auth_OK)。在特定实施例中,认证响应包括会话令牌。在310中,口令应用212a向用户A提供用户A已经登录的指示。
在312中,用户A查看UI内由口令管理器应用212a提供的ARP设置屏幕并启动ARP设置。在314中,口令应用212a向认证服务器206发送请求,以便检索包含与已经被指定为用户A的朋友的账户(例如,用户B,用户C,用户D,用户E,用户F)相对应的联系人列表的成员对象((HTTP GET/成员(member)/{成员_id(member_id)}/)。在316中,口令管理器应用212a接收与用户A的账户相关联的联系人(例如,朋友)列表,在所述联系人列表中,朋友中的一些朋友可能已经被指定为可信朋友(即,ARPTF)。如果已经针对ARP设置了账户,则其包含ARB_ARK JSON属性但不包含认证令牌一次性口令(Authentication Token One-Time-Password,AUTH-TOK-OTP)JSON属性,因为其保持为存储在认证服务器206上的秘密。包括接收到的联系人列表的响应消息(/联系人(contacts)/)可能拥有一些被认为是ARPTF的联系人。作为ARPTF的联系人具有ARK-Px JSON属性——即,将向其发送以便保持在第三方中的ARK块。在318中,口令管理器应用212a判定用户A是否具有足够的联系人来继续设置账户恢复协议。如果用户A具有足够的联系人,则设置过程继续。否则,口令管理器应用212a提示用户A邀请更多朋友来参与账户恢复。
在320中,口令管理器应用212a显示用户A的联系人列表。在322中,用户A从用户A信任作为ARPTF来参与账户恢复协议(ARP)的联系人列表中选择朋友。在324中,口令应用212a向用户A显示更新的联系人列表,并且提示用户A确认选择。在326中,用户A确认对口令管理器应用212a的ARPTF邀请。
在328中,口令应用212a为用户A生成新鲜的账户恢复密钥(ARK)。在特定实施例中,口令应用212a使用密码地安全伪随机数发生器(CSPRNG)生成256位账户恢复密钥(ARK)以便充当用于生成秘密密钥的原语。在330中,口令应用212a生成新鲜的认证令牌一次性口令(AUTH-TOK-OTP)。在特定实施例中,AUTH-TOK-OTP是256位值。在332中,口令应用212a创建包括AUTH-TOK-OTP以及使用ARK加密的内容加密密钥(CEK)的经加密的账户恢复工具套装(ARB)。在一个或多个实施例中,ARB是包括标识工具套装方案和创建日期的消息认证代码(MAC)部分以及包括AUTH-TOKEN-OTP(ENC)和账户的内容加密密钥(CEK)-(ENC)的加密部分的JSON文件。
在334中,口令应用212a将ARK分割成预定数量m块(所选择的ARPTF的数量)。在特定实施例中,口令应用212a使用沙米尔秘密共享(SSS)将ARK分割成预定数量的块。因此,生成共享块的完整列表,在所述列表中,每个共享块(ARK-Px)如隐藏在ARPTF账户中那样保持在第三方中,并且可以稍后用于恢复ARK。在一个或多个实施例中,建立SSS参数,从而使得存在用户A需要的ARPTF的共识(例如,>=50%)-—即5个中的3个,以便恢复ARK。在特定实施例中,这些安全参数可以被调整为便利与共识之间的折衷。
在336中,口令应用212a使用用ARK加密的ARB(ARB_ARK)和AUTH-TOK-OTP更新存储在认证服务器206处的用户A的成员对象。在特定实施例中,口令应用212a向认证服务器205的口令应用REST API 214发送包括ARB_ARK和AUTH-TOK-OTP以及用户A的标识(成员_id)的HTTP PUT/成员/{成员_id}/消息。在338中,口令应用REST API 214返回更新的成员对象的副本,所述副本不包含AUTH-TOK-OTP,因为其保持为存储在认证服务器206上的秘密。
在340中,口令应用212a使用对用户A的ARPTF中的每一个的ARP邀请(ARPI)来共享具有用户A的不同ARPTF的每个块ARK-Px。在特定实施例中,口令应用212a向由联系人标识符(联系人_id(contact_id))标识的每个ARPTF发送HTTP PUT/联系人(contact)/{联系人_id(contact_id)}/消息,所述联系人标识符包括更新的联系人对象,所述更新的联系人对象包含使用此ARPTF的公共密钥加密的特定ARK-Px。口令REST API 214通过将ARK-Px块从ARPTF的视角中隐藏来将其保持在第三方中。在一个或多个实施例中,为了完成ARP邀请(ARPI),ARPTF接收解释接收方的联系人中的一个联系人已经要求他变成ARPTF的通知。接收方可以接收或拒绝ARPI。在特定实施例中,口令REST API 214发送包括指示特定ARPTF是否接受邀请的HTTP 200消息。
在342中,口令应用212a向用户A发送确认消息,所述确认消息包括对邀请已发送的确认以及对ARPTF中的每一个是否接受邀请的指示。在稍后的时间,在特定实施例中,用户A可以通过再次执行先前描述的过程中的一个或多个过程来管理ARPTF列表。如果用户A已经成功完成先前过程至少一次,则用户A可以随后修改的现有属性由认证服务器206存储。
图4A至图4B展示了根据一个实施例的用于账户恢复协议的账户恢复请求建立过程流程400的示例。账户恢复请求建立过程建立新账户恢复请求。图4A至图4B的示例第一过程流程假设用户A已经具有足够的ARPTF来直接执行ARP设置。在图4A至图4B的实施例中,用户A已经不幸地忘记了他的主口令,并且不能登录其账户。然而,由于用户A过去已经设置了ARP,因此可以使用ARPTF来恢复对其账户的访问。在402中,用户A忘记了他的主口令。在404中,用户A点击由客户端设备202a的口令应用212a提供的图形用户界面内的“我忘记了我的主口令”选项。
在406中,口令应用212a向认证服务器206发送检索新鲜CAPTCHA质询的请求。在特定实施例中,口令应用212a向认证服务器206的口令应用REST API 214发送GET/captcha消息来请求CAPTCHA质询。在408中,客户端设备202a的口令应用212a从认证服务器206处接收CAPTCHA质询响应消息。在特定实施例中,认证服务器206向客户端设备202a发送HTTP200CAPTCHA质询。
在410中,客户端设备202a的口令应用212a响应于接收到CAPTCHA质询响应消息而向图形用户界面内的用户A显示账户恢复建立屏幕。在一个或多个实施例中,账户恢复建立屏幕显示包括以下各项中的一项或多项的GUI表格:电子邮件表格字段;CAPTCHA质询的图像表示;CAPTCHA回答表格字段;用于输入临时主口令的口令字段;以及“请求账户恢复”按钮。在412中,客户端设备202a的口令应用212a向图形用户界面内的用户A显示CAPTCHA图像。在414中,用户A查看账户恢复建立屏幕内的表格,并且在416中,用户A填写所述表格,并且点击确认按钮。
在418中,客户端设备202a的口令应用212a使用临时主口令和电子邮件得到临时认证令牌(PBKDF2)。在420中,口令应用212a生成暂时性李维斯特沙米尔阿德尔曼(RSA)密钥对(EphKeyPair)。在特定实施例中,EphKeyPair是2048位RSA密钥对。在422中,口令应用212a生成暂时性密钥加密密钥(KEK)导出盐(EphKEKSalt)。密钥加密密钥(Key EncryptionKey,KEK)是从主口令以及随机生成的盐中导出的秘密密钥。在特定实施例中,EphKEKSalt是256位值。在424中,口令应用212a生成带外确认代码(OCC)。在特定实施例中,OCC是四位数代码。在426中,口令应用212a导出暂时性密钥加密密钥(EphKEK)(PBKDF2w/EphKEKSalt,主口令)。密钥加密密钥(KEK)是从主口令以及随机生成的盐中导出的(PBKDF2)秘密密钥。在428中,口令应用212a使用EphKEK封装EphKeyPair,并且在430中,口令应用212a使用EphKEK封装OCC。
在432中,客户端设备202a的口令应用212a创建账户恢复请求消息,并且向认证服务器206的口令应用REST API 214发送账户恢复请求消息。在特定实施例中,账户恢复请求消息被格式化成包括JSON请求主体的未经认证的POST/账户_恢复(account_recovery)/消息,所述JSON请求主体包括:电子邮件地址;captcha_质询(captcha_challenge);captcha_回答(captcha_answer);临时_认证_令牌(provisional_auth_token)(导出的新主口令作为认证令牌);暂时性_kek_导出_盐(ephemeral_kek_derivation_salt);暂时性_公有_密钥(ephemeral_public_key);经加密的_暂时性_密钥对(encrypted_ephemeral_keypair);以及经加密的_occ(encrypted_occ)(带外确认代码)。在434中,认证服务器206的口令应用REST API 214向客户端设备202a的口令应用212a发送账户恢复响应消息。在特定实施例中,账户恢复响应消息是包括JSON响应主体的HTTP 200消息,所述JSON响应主体具有:账户恢复请求ID(arr_id);创建_日期(creation_date)=现在(NOW);到期_日期(expiration_date)=现在(NOW)+到期间隔(例如,48小时);以及状态(status)=“请求_确认_未决(request_confirmation_pending)”。在特定实施例中,账户恢复请求ID是在成功创建新ARR之后由口令REST API214返回的唯一随机ID。
在接收账户恢复响应消息之后,在436中,客户端设备202a的口令应用212a提示用户A阅读电子邮件并且通过点击包括在刚发送的电子邮件中的链接来确认请求。在438中,用户A阅读电子邮件。在440中,用户A点击确认链接,并且客户端设备202a的口令应用212a向认证服务器206的口令应用REST API 214发送指示确认的确认消息。在一个或多个实施例中,确认消息包括请求确认令牌(请求_确认_令牌(request_confirmation_token))。在特定实施例中,请求确认令牌是用于通过电子邮件验证循环确认ARP的开始的随机生成的令牌。
在442中,认证服务器206的口令应用REST API 214向用户B、用户C、用户D、用户E和用户F中的每一个发送指示用户A已经请求用户的帮助来恢复其账户的消息。在444中,认证服务器206的REST API 214向客户端设备202a的口令应用212a发送确认。在446中,客户端设备的口令应用212a可以然后向用户A显示OCC,并且显示指导用户A与每个ARPTF联系的指令。在特定实施例中,消息可以包括电子邮件,所述电子邮件包括确认链接。在特定实施例中,如果用户A忘记了一个或多个ARPTF的身份,则用户A可以使用GUI来召回ARPTF的与用户A相关联的身份。在448中,用户A联系每个ARPTF并向其提供OCC作为防止网络钓鱼的方式,并且确保确实通过协议外的其他方式与可信朋友联系。过程400结束。在特定实施例中,用户A可以使用客户端设备202a联系每个ARPTF。
在图4A至图4B中所描述的特定实施例中,电子邮件确认循环被用作用于触发账户恢复过程的认证方式。相当部分的用户几乎恒定地通过使用电子设备(如智能电话)来访问电子邮件。因此,对这些用户而言,发生特定用户可能忘记他的或她的主口令并且同时丢失对电子邮件的所有形式的访问的情况的可能性很小。然而,由于对所述电子邮件账户的访问对恢复的安全性有一些影响(带外确认代码提供其他部分),因此在其他实施例中,可以使用触发账户恢复请求建立过程的其他方法。例如,在特定实施例中,基于图像的认证(Image Based Authentication,IBA)或小额支付可以用于验证或断言账户的所有权。
图5展示了根据一个实施例的用于账户恢复协议的账户恢复请求邀请过程流程500的示例。在一个或多个实施例中,在图4A至图4B的账户恢复请求建立流程结束之后自动地启动过程流程500。在502中,用户A通过其自身的方式联系用户B(可信朋友),并且向用户B提供带外确认代码(OCC)作为指示用户A正在请求用户的帮助来恢复他的或她的账户。尽管未在图5中展示,但是用户A还联系了ARPTF中的每一个(例如,可信朋友)并向其提供OCC。在504中,用户A等待来自用户B和每个ARTPF的响应。在506中,用户B使用第二用户设备202b执行登录到用户B的口令应用212。在508中,第二口令应用212b发送指示用户B登录到认证服务器206的口令REST API 214的登录调用。在特定实施例中,登录调用是POST API调用。在510中,口令REST API 214向第二口令应用212b发送包括会话令牌(会话令牌(session_token))的登录确认。在512中,第二口令应用212b经由第二客户端设备212的GUI提供成功登录用户B的指示。
在514中,第二口令应用212b向认证服务器206的口令REST API214发送用于检索任何账户恢复请求邀请的请求。在特定实施例中,请求具有以下形式:GET/账户_恢复(account_recovery)/请求_邀请(request_invitations)。在516中,口令API 214认证用户B作为ARPTF,并且向第二口令应用212b发送账户恢复请求邀请列表。在特定实施例中,账户恢复请求邀请列表包括:成员标识符(成员_id)、账户恢复请求共享返回标识符(arr_共享_返回_id(arr_share_back_id))、暂时性公钥(暂时性_公有_密钥(ephemeral_public_key))、以及使用用户B的公钥加密的账户恢复密钥共享块(ark_px_pub_密钥(ark_px_pub_key))。在518中,如果第二口令应用212b接收非空列表,则第二口令应用212b提示用户B共享回他的或她的保持在第三方中的ARK共享块(ARK-Px)以便帮助账户恢复。在520中,用户B向第二口令应用212提供OCC和确认以便确认账户恢复。在特定实施例中,用户B可以输入OCC并且点击第二用户设备202b的GUI中的“确认”按钮。
在522中,第二口令应用212b使用用户B自身的私钥对“ark_px_公有_密钥(ark_px_pub_key)”进行解密,给出明文ARK-Px,即块中的一个。在524中,第二口令应用212b使用暂时性公钥(EphPubKey)对明文ARK-Px进行重新加密。在526中,第二口令应用212b使用以带外确认代码(OCC)为密钥的带密钥散列消息认证代码(HMAC)对OOB交易进行签名{HMAC(OCC,ARK-Px)。在特定实施例中,使用SHA-256密码散列函数对交易进行签名。在528中,第二口令应用212b向认证服务器206的口令REST API214发送ARR共享返回ID{arr_共享_返回ID(arr_share_back ID)}、使用ARR暂时性公钥(ARREphPubK)加密的ARK-Px{ark_px_eph_pub_key}、以及以带外确认代码为密钥的ark_px的HMAC{hmac_occ_ark_px}。在特定实施例中,ARR暂时性公钥是仅在ARR的持续时间内有效的公钥。在特定实施例中,第二口令应用202b使用具有包括arr_共享_返回_id、ark_px_eph_pub_key、以及hmac_occ_ark_px的JSON请求主体的POST/账户_恢复/成员/{成员_id}/形式的POST消息。在530中,口令REST API214向第二口令应用212b发送确认。在特定实施例中,确认是HTTP 200消息。在532中,第二口令应用212b向用户B呈现指示已经成功共享特定ARK-Px块的确认消息。用户A的剩余ARPTF中的一个或多个使用其对应的口令应用(在所述口令应用中,口令REST API 214从每个ARPTF处接收一个或多个共享ARK-Px块)重复502至532的过程。当口令REST API 214接收到足够的共享ARK-Px块时,口令REST API 214将账户恢复请求的状态更新到534中的“共识_达到(consensus_reached)”并且过程500结束。
图6A至图6B展示了根据一个实施例的用于账户恢复协议的账户恢复请求完成过程流程600的示例。在一个或多个实施例中,在图5的账户恢复请求邀请过程流程结束之后启动过程流程600,在图5的过程流程中,已经关于账户恢复请求而达到共识。在602中,用户A重新开始账户恢复请求过程。在特定实施例中,用户A输入他的或她的需要导出临时认证令牌(PBKDF2)的临时主口令。在604中,第一口令应用212b发送请求以便从认证服务器206的口令REST API 214中检索ARR记录的更新的版本。在特定实施例中,检索请求是具有GET/账户_恢复/{arr_id}/形式的GET请求。在特定实施例中,请求是未经认证的,但仅经由通用唯一标识符(UUID)可访问,并且所有数据被加密且只读。在606中,口令REST API 214发送包括账户恢复所必须的信息的响应。在特定实施例中,响应是具有以下JSON响应主体的HTTP 200响应:
a.账户恢复请求ID(arr_id)
b.存储器ID(成员_id)
c.请求创建日期(创建_日期)
d.请求到期日期(到期_日期)
e.状态=“共识_达到”
f.ARR共享返回ID(arr_共享_返回_id)
g.使用ARK加密的ARB(arb_ark)
h.暂时性密钥加密密钥(KEK)导出盐(暂时性_kek_导出_盐)
i.暂时性公钥(暂时性_公有_密钥)
i.经加密的暂时性密钥对{经加密的_暂时性_密钥对}
k.经加密的OCC(经加密的_occ)
l.ARPTF列表(arptf_列表)(JSON阵列)
1.昵称
2.ark_px_eph_pub_key-对已经参与的ARPTF而言非‘空’
3.hmac_occ_ark_px
在608中,第一口令应用212a向用户A发送对当前ARR状态=“共识达到”的指示。在610中,用户A继续账户恢复。在612中,第一口令应用212a使用临时主口令和随机生成的盐导出暂时性密钥加密密钥(EphKEK)。在614中,第一口令应用212a封装提供对暂时性RSA私钥(EphPrivKey)的访问的暂时性密钥对(EphKeyPair)。在616中,第一口令应用212a封装经加密的OCC。然后,第一口令应用212a输入每个ARK-Px重复的循环620。在622中,第一口令应用212b使用暂时性RSA私钥(EphPrivKey)对每个经加密的ARK-PX进行解密。在624中,第一口令应用212a计算带密钥的散列消息认证代码{HMAC(OCC,ARK-Px)}。在626中,第一口令应用212a将带密钥散列消息认证代码(HMAC)与以带外确认代码为密钥的HMAC(hmac_occ_ark_px)进行比较,以便判定条件HMAC(OCC,ARK-Px)==hmac_occ_ark_px是否满足指示已经恢复了正确的ARK-Px。对从ARPTF处接收到的每个ARK-Px执行622至626的循环,直到恢复并确认了每个ARK-Px。
在630中,第一口令应用212a使用SSS组合所有经解密的ARK-Px,以便恢复使用账户恢复密钥加密的账户恢复工具套装(ARB)(ARB_ARK)。在632中,第一口令应用212a对ARB_ARK进行解密以便恢复账户恢复工具套装(ARB)。在634中,第一口令应用212a从ARB中提取认证令牌一次性口令(AUTH-TOK-OTP)和内容加密密钥(CEK)。
在636中,第一口令应用212a生成新KEK导出盐。在638中,第一口令应用212a使用新盐和临时主口令中导出更新的KEK。在640中,第一口令应用212a使用更新的KEK封装经提取的CEK。
在642中,第一口令应用212b向认证服务器206的口令REST API214发送经认证的账户恢复请求消息。经认证的账户恢复请求消息包括:将在完成请求之后有效的AUTH-TOK-OTP、将与此请求的临时认证令牌相竞争的临时_auth_令牌、以及新KEK的新鲜的盐(更新的_kek_导出_盐)、以及更新的内容加密密钥密钥加密密钥(更新的_cek_kek)。在特定实施例中,请求消息是具有包括AUTH-TOK-OTP、临时_auth_令牌、更新的_kek_导出_盐-新KEK的新鲜的盐、以及更新的_cek_kek的JSON请求主体的PUT/账户_恢复/{arr_id}/形式的PUT消息。在644中,口令REST API 214向第一口令应用212a发送对完成账户恢复请求的确认。在特定实施例中,确认消息是HTTP 200消息。在646中,第一口令应用212a向用户A提供对完成账户恢复请求的确认。在648中,用户A可以使用已经提升为主口令的临时主口令来登录到第一口令应用212a,以便重新获得对账户的访问。然后,流程600结束。
现在参照图7,图7是客户端设备202a的实施例的简化框图。客户端设备202a包括(多个)处理器702、存储器元件704、图形用户界面706、以及口令应用212a。(多个)处理器702被配置成用于执行用于执行如本文中所描述的客户端设备202a的各种操作的软件指令。存储器元件704可以被配置成用于存储与客户端设备202a相关联的软件指令和数据。(多个)处理器702可以是任何类型的处理器,如微处理器、嵌入式处理器、数字信号处理器(DSP)、网络处理器或用于执行代码的其他设备。尽管图7中仅展示了一个处理器702,但是应当理解的是,在一些实施例中,客户端设备202a可以包括多于一个处理器。
图形用户界面706被配置成用于向客户端设备202a的用户提供图形用户界面,以便帮助如本文中所描述的口令设置和恢复过程。口令应用212a被配置成用于执行如本文中所描述的与客户端设备202a相关联的口令设置和恢复功能。
现在参照图8,图8是认证服务器206的实施例的简化框图。认证服务器206包括(多个)处理器802、存储器元件804、认证组件102以及口令REST API 214。(多个)处理器802被配置成用于执行用于执行如本文中所描述的认证服务器206的各种操作的软件指令。存储器元件804可以被配置成用于存储与认证服务器206相关联的软件指令和数据。(多个)处理器802可以是任何类型的处理器,如微处理器、嵌入式处理器、数字信号处理器(DSP)、网络处理器或用于执行代码的其他设备。尽管图8中仅展示了一个处理器602,但是应当理解的是,在一些实施例中,认证服务器206可以包括多于一个处理器。
认证组件102被配置成用于帮助如本文中所描述的认证服务器206的认证和口令恢复功能,并且口令REST API 214被配置成用于帮助如本文中所描述的口令REST API 214的口令设置和恢复功能。
一个或多个实施例可以提供现有解决方案上的以下优点中的一个或多个:1)使用同一口令认证用户以及对用户数据进行加密以便稍后进行恢复;2)其不维持主口令的副本(无论是经加密的还是未加密的);3)其不保持用户主口令的数据库,以及4)尽管在恢复过程期间账户持有者的初始验证期间,其可以使用常规验证方法(如电子邮件确认、用于消除BOT活动的CAPTCHA验证等),但是其不利用验证用户身份(例如,询问简单的安全问题)并且然后允许他们基于此初始验证简单地重置口令的其他常规方法,以及5)出于安全原因,其不具有主口令自身的指定知识。替代地,在可信实体中的任何可信实体不具有令牌的内容的指定知识的情况下,其以将保持在第三方中的经加密的令牌的形式在若干可信实体当中分配主口令恢复密钥的知识块,以便在需要时被要求拼凑并帮助健忘的用户从失败状态恢复,由此恢复到他们的资源的适当访问。因此,在没有单个失败点的情况下,这呈现更加安全的恢复方法。
为了认证目的,常规系统主要使用系统口令。相比而言,ARP使用同一口令生成单独的密码密钥,以便认证用户并对其数据进行加密。常规系统使用用户事先建立的简单安全问题,或者基于与用户有关的一些已知事实询问问题,并且非常易于偷窃和再利用以便侵入用户账户。保存的口令和口令文件经受偷窃和再利用。本文中所描述的ARP的一个或多个实施例通过经由所述过程中的各种密码操作而加强密码密钥和内容的使用和传输周围的安全性来消除对其的许多类似安全威胁,并且以导致重新加密用户资产而不是简单地用一个访问令牌代替另一个的新颖性方式进行恢复。
尽管本文中所描述的一个或多个实施例涉及口令管理器和主口令的使用,但是应当理解的是,本文中所描述的原理适应于如用于恢复对任何类型的用户的所存储的/经加密的资产(例如,文件共享服务上的文件、经加密的备份等)的访问的其他基于口令的用户数据加密系统和/或应用。
示例
以下示例涉及进一步实施例。
示例1是至少一种用于存储计算机代码的非瞬态计算机存储介质,所述至少一种非瞬态计算机存储介质包括:用于接收与用户相关联的账户的恢复请求的计算机代码;用于向与所述用户相关联的用户设备发送CAPTCHA质询的计算机代码;用于接收对所述CAPTCHA质询的回答以及由从临时主口令中导出的加密密钥封装的确认代码的计算机代码;用于向与所述用户相关联的一个或多个可信实体发送所述恢复请求的通知的计算机代码;以及用于从所述可信实体中的一个或多个可信实体处接收对所述请求的确认的计算机代码,所述确认包括与所述特定可信实体相关联的恢复令牌以及经加密的确认代码。
在示例2中,如示例1所述的主题可以可选地包括:用于响应于从所述一个或多个可信实体处接收到预定数量的所述恢复令牌而确定已经达到共识状态的计算机代码;以及用于向所述用户设备发送与所述一个或多个可信实体中的每个可信实体相关联的所述恢复令牌的计算机代码。
在示例3中,如示例2所述的主题可以可选地包括:用于向所述用户设备发送对所述共识状态的指示的计算机代码。
在示例4中,如示例2所述的主题可以可选地包括:用于响应于确定已经达到所述共识状态而重置所述账户的新主口令的计算机代码。
在示例5中,如示例4所述的主题可以可选地包括:其中,使用所述接收到的恢复令牌重置所述新主口令。
在示例6中,如示例5所述的主题可以可选地包括:其中,使用暂时性私钥对所述接收到的恢复令牌进行解密,并且所述经加密的确认代码被用作对所述恢复令牌的验证。
在示例7中,如示例6所述的主题可以可选地包括:其中,基于组合所述经解密的恢复令牌重置所述新主口令。
在示例8中,如示例4所述的主题可以可选地包括:其中,由所述用户设备生成所述新主口令。
在示例9中,如示例1至8中任一项所述的主题可以可选地包括:用于从所述用户处接收对所述一个或多个可信实体的指定的计算机代码。
示例10是一种系统,所述系统包括至少一个处理器和至少一个存储器元件,其中,所述系统被配置成用于:接收与用户相关联的账户的恢复请求;向与所述用户相关联的用户设备发送CAPTCHA质询;接收对所述CAPTCHA质询的回答以及由从临时主口令中导出的加密密钥封装的确认代码;向与所述用户相关联的一个或多个可信实体发送所述恢复请求的通知;以及从所述可信实体中的一个或多个可信实体处接收对所述请求的确认,所述确认包括与所述特定可信实体相关联的恢复令牌以及经加密的确认代码。
在示例11中,如示例19所述的主题可以可选地包括:其中,所述系统被进一步配置成用于:响应于从所述一个或多个可信实体处接收到预定数量的所述恢复令牌而确定已经达到共识状态;以及向所述用户设备发送与所述一个或多个可信实体中的每个可信实体相关联的所述恢复令牌。
在示例12中,如示例11所述的主题可以可选地包括:其中,所述系统被进一步配置成用于向所述用户设备发送对所述共识状态的指示。
在示例13中,如示例12所述的主题可以可选地包括:其中,所述系统被进一步配置成用于响应于确定已经达到所述共识状态而生成所述账户的新主口令。
在示例14中,如示例13所述的主题可以可选地包括:其中,使用所述接收到的恢复令牌重置所述新主口令。
在示例15中,如示例14所述的主题可以可选地包括:其中,使用暂时性私钥对所述接收到的恢复令牌进行解密,并且所述经加密的确认代码被用作对所述恢复令牌的验证。
在示例16中,如示例13所述的主题可以可选地包括:其中,由所述用户设备生成所述新主口令。
在示例17中,如示例10至16中任一项所述的主题可以可选地包括:其中,所述系统被进一步配置成用于从所述用户处接收对所述一个或多个可信实体的指定。。
示例18是一种计算机实现的方法,包括:接收与用户相关联的账户的恢复请求;向与所述用户相关联的用户设备发送CAPTCHA质询;接收对所述CAPTCHA质询的回答以及由从临时主口令中导出的加密密钥封装的确认代码;向与所述用户相关联的一个或多个可信实体发送所述恢复请求的通知;以及从所述可信实体中的一个或多个可信实体处接收对所述请求的确认,所述确认包括与所述特定可信实体相关联的恢复令牌以及经加密的确认代码。
在示例19中,如示例18所述的主题可以可选地包括:响应于从所述一个或多个可信实体处接收到预定数量的所述恢复令牌而确定已经达到共识状态;以及向所述用户设备发送与所述一个或多个可信实体中的每个可信实体相关联的所述恢复令牌。
在示例20中,如示例19所述的主题可以可选地包括:向所述用户设备发送对所述共识状态的指示。
在示例21中,如示例19所述的主题可以可选地包括:响应于确定已经达到所述共识状态而重置所述账户的新主口令。
在示例22中,如示例21所述的主题可以可选地包括:其中,使用所述接收到的恢复令牌重置所述新主口令。
在示例23中,如示例22所述的主题可以可选地包括:其中,使用暂时性私钥对所述接收到的恢复令牌进行解密,并且所述经加密的确认代码被用作对所述恢复令牌的验证。
在示例24中,如示例23所述的主题可以可选地包括:其中,由所述用户设备生成所述新主口令。
在示例25中,如示例18至24中任一项所述的主题可以可选地包括:其中,所述系统被进一步配置成用于从所述用户处接收对所述一个或多个可信实体的指定。
示例26是一种用于账户恢复的设备,所述设备包括:用于接收与用户相关联的账户的恢复请求的装置;用于向与所述用户相关联的用户设备发送CAPTCHA质询的装置;用于接收对所述CAPTCHA质询的回答以及由从临时主口令中导出的加密密钥封装的确认代码的装置;用于向与所述用户相关联的一个或多个可信实体发送所述恢复请求的通知的装置;以及用于从所述可信实体中的一个或多个可信实体处接收对所述请求的确认的装置,所述确认包括与所述特定可信实体相关联的恢复令牌以及经加密的确认代码。
在示例27中,如示例26所述的主题可以可选地包括:用于响应于从所述一个或多个可信实体处接收到预定数量的所述恢复令牌而确定已经达到共识状态的装置;以及用于向所述用户设备发送与所述一个或多个可信实体中的每个可信实体相关联的所述恢复令牌的装置。
在示例28中,如示例27所述的主题可以可选地包括:用于响应于确定已经达到所述共识状态而生成所述账户的新主口令的装置。
示例29是一种设备,包括用于执行如任一前述示例中所述的方法的装置。
示例30是一种包括机器可读指令的机器可读存储器,所述机器可读指令当被执行时用于实施如任一前述示例所描述的方法或实现如任一前述示例所描述的装置。
Claims (25)
1.至少一种用于存储计算机代码的非瞬态计算机存储介质,所述至少一种非瞬态计算机存储介质包括:
用于接收对与用户相关联的账户的恢复请求的计算机代码;
用于向与所述用户相关联的用户设备发送CAPTCHA质询的计算机代码;
用于接收对所述CAPTCHA质询的回答以及由从临时主口令中导出的加密密钥封装的确认代码的计算机代码;
用于向与所述用户相关联的一个或多个可信实体发送所述恢复请求的通知的计算机代码;以及
用于从所述可信实体中的一个或多个可信实体处接收对所述请求的确认的计算机代码,所述确认包括与所述特定可信实体相关联的恢复令牌以及经加密的确认代码。
2.如权利要求1所述的至少一种非瞬态计算机存储介质,进一步包括:
用于响应于从所述一个或多个可信实体处接收到预定数量的所述恢复令牌而确定已经达到共识状态的计算机代码;以及
用于向所述用户设备发送与所述一个或多个可信实体中的每个可信实体相关联的所述恢复令牌的计算机代码。
3.如权利要求2所述的至少一种非瞬态计算机存储介质,进一步包括用于向所述用户设备发送对所述共识状态的指示的计算机代码。
4.如权利要求2所述的至少一种非瞬态计算机存储介质,用于响应于确定已经达到所述共识状态而重置所述账户的新主口令的计算机代码。
5.如权利要求4所述的至少一种非瞬态计算机存储介质,其中,所述新主口令是使用所述接收到的恢复令牌来重置的。
6.如权利要求5所述的至少一种非瞬态计算机存储介质,其中,所述接收到的恢复令牌是使用暂时性私钥来解密的,并且所述经加密的确认代码被用作对所述恢复令牌的验证。
7.如权利要求6所述的至少一种非瞬态计算机存储介质,其中,所述新主口令是基于组合所述经解密的恢复令牌来重置的。
8.如权利要求4所述的至少一种非瞬态计算机存储介质,其中,所述新主口令是由所述用户设备生成的。
9.如权利要求1至8中任一项所述的至少一种非瞬态计算机存储介质,进一步包括用于从所述用户处接收对所述一个或多个可信实体的指定的计算机代码。
10.一种系统,所述系统包括至少一个处理器和至少一个存储器元件,其中,所述系统被配置成用于:
接收对与用户相关联的账户的恢复请求;
向与所述用户相关联的用户设备发送CAPTCHA质询;
接收对所述CAPTCHA质询的回答以及由从临时主口令中导出的加密密钥封装的确认代码;
向与所述用户相关联的一个或多个可信实体发送所述恢复请求的通知;以及
从所述可信实体中的一个或多个可信实体处接收对所述请求的确认,所述确认包括与所述特定可信实体相关联的恢复令牌以及经加密的确认代码。
11.如权利要求10所述的系统,其中,所述系统被进一步配置成用于:
响应于从所述一个或多个可信实体处接收到预定数量的所述恢复令牌而确定已经达到共识状态;以及
向所述用户设备发送与所述一个或多个可信实体中的每个可信实体相关联的所述恢复令牌。
12.如权利要求11所述的系统,其中,所述系统被进一步配置成用于向所述用户设备发送对所述共识状态的指示。
13.如权利要求12所述的系统,其中,所述系统被进一步配置成用于响应于确定已经达到所述共识状态而生成所述账户的新主口令。
14.如权利要求13所述的系统,其中,所述新主口令是使用所述接收到的恢复令牌来重置的。
15.如权利要求14所述的系统,其中,所述接收到的恢复令牌是使用暂时性私钥来解密的,并且所述经加密的确认代码被用作对所述恢复令牌的验证。
16.如权利要求13所述的系统,其中,由所述用户设备生成所述新主口令。
17.如权利要求10至16中任一项所述的系统,其中,所述系统被进一步配置成用于从所述用户处接收对所述一个或多个可信实体的指定。
18.一种计算机实现的方法,包括:
接收对与用户相关联的账户的恢复请求;
向与所述用户相关联的用户设备发送CAPTCHA质询;
接收对所述CAPTCHA质询的回答以及由从临时主口令中导出的加密密钥封装的确认代码;
向与所述用户相关联的一个或多个可信实体发送所述恢复请求的通知;以及
从所述可信实体中的一个或多个可信实体处接收对所述请求的确认,所述确认包括与所述特定可信实体相关联的恢复令牌以及经加密的确认代码。
19.如权利要求18所述的计算机实现的方法,进一步包括:
响应于从所述一个或多个可信实体处接收到预定数量的所述恢复令牌而确定已经达到共识状态;以及
向所述用户设备发送与所述一个或多个可信实体中的每个可信实体相关联的所述恢复令牌。
20.如权利要求19所述的计算机实现的方法,进一步包括向所述用户设备发送对所述共识状态的指示。
21.如权利要求19所述的计算机实现的方法,进一步包括响应于确定已经达到所述共识状态而用所述账户的新主口令进行重置。
22.如权利要求19所述的计算机实现的方法,其中,所述接收到的恢复令牌是使用暂时性私钥来解密的,并且所述经加密的确认代码被用作对所述恢复令牌的验证。
23.一种用于账户恢复的设备,所述设备包括:
用于接收对与用户相关联的账户的恢复请求的装置;
用于向与所述用户相关联的用户设备发送CAPTCHA质询的装置;
用于接收对所述CAPTCHA质询的回答以及由从临时主口令中导出的加密密钥封装的确认代码的装置;
用于向与所述用户相关联的一个或多个可信实体发送所述恢复请求的通知的装置;以及
用于从所述可信实体中的一个或多个可信实体处接收对所述请求的确认的装置,所述确认包括与所述特定可信实体相关联的恢复令牌以及经加密的确认代码。
24.如权利要求23所述的设备,进一步包括:
用于响应于从所述一个或多个可信实体处接收到预定数量的所述恢复令牌而确定已经达到共识状态的装置;以及
用于向所述用户设备发送与所述一个或多个可信实体中的每个可信实体相关联的所述恢复令牌的装置。
25.如权利要求24所述的设备,进一步包括响应于确定已经达到所述共识状态而用所述账户的新主口令进行重置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462080125P | 2014-11-14 | 2014-11-14 | |
US62/080,125 | 2014-11-14 | ||
US14/928,443 US10061914B2 (en) | 2014-11-14 | 2015-10-30 | Account recovery protocol |
US14/928,443 | 2015-10-30 | ||
PCT/US2015/059060 WO2016077121A1 (en) | 2014-11-14 | 2015-11-04 | Account recovery protocol |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107251035A true CN107251035A (zh) | 2017-10-13 |
CN107251035B CN107251035B (zh) | 2020-07-31 |
Family
ID=55954869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580072790.7A Active CN107251035B (zh) | 2014-11-14 | 2015-11-04 | 账户恢复协议 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10061914B2 (zh) |
EP (1) | EP3219049B1 (zh) |
JP (1) | JP6517359B2 (zh) |
CN (1) | CN107251035B (zh) |
WO (1) | WO2016077121A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108768643A (zh) * | 2018-06-22 | 2018-11-06 | 哈尔滨工业大学 | 一种隐私数据保护方法及系统 |
CN110601824A (zh) * | 2019-08-26 | 2019-12-20 | 北京思源理想控股集团有限公司 | 信息的传输方法及装置 |
Families Citing this family (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10489852B2 (en) * | 2013-07-02 | 2019-11-26 | Yodlee, Inc. | Financial account authentication |
SG10201500276VA (en) * | 2015-01-14 | 2016-08-30 | Mastercard Asia Pacific Pte Ltd | Method and system for making a secure payment transaction |
US10078748B2 (en) * | 2015-11-13 | 2018-09-18 | Microsoft Technology Licensing, Llc | Unlock and recovery for encrypted devices |
US10419401B2 (en) * | 2016-01-08 | 2019-09-17 | Capital One Services, Llc | Methods and systems for securing data in the public cloud |
CA3014737A1 (en) | 2016-02-23 | 2017-08-31 | nChain Holdings Limited | Blockchain-implemented method for control and distribution of digital content |
KR20180115293A (ko) | 2016-02-23 | 2018-10-22 | 엔체인 홀딩스 리미티드 | 블록체인상의 개체의 안전한 전송을 위한 방법 및 시스템 |
BR112018016819A2 (pt) | 2016-02-23 | 2018-12-26 | Nchain Holdings Ltd | método e sistemas para proteger um recurso digital controlado utilizando uma tabela de dispersão e livro-razão distribuídos e um blockchain |
US10652014B2 (en) | 2016-02-23 | 2020-05-12 | nChain Holdings Limited | Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys |
SG11201806785YA (en) | 2016-02-23 | 2018-09-27 | Nchain Holdings Ltd | Tokenisation method and system for implementing exchanges on a blockchain |
JP6995762B2 (ja) | 2016-02-23 | 2022-01-17 | エヌチェーン ホールディングス リミテッド | ブロックチェーンからのデータのセキュアな抽出のための暗号方法及びシステム |
CN109074563B (zh) | 2016-02-23 | 2022-04-19 | 区块链控股有限公司 | 区块链系统内的基于代理的图灵完备交易集成反馈 |
WO2017145019A1 (en) | 2016-02-23 | 2017-08-31 | nChain Holdings Limited | Registry and automated management method for blockchain-enforced smart contracts |
GB2561729A (en) * | 2016-02-23 | 2018-10-24 | Nchain Holdings Ltd | Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system |
US11606219B2 (en) | 2016-02-23 | 2023-03-14 | Nchain Licensing Ag | System and method for controlling asset-related actions via a block chain |
IL261210B (en) | 2016-02-23 | 2022-08-01 | Nchain Holdings Ltd | An exchange based on a 'block chain' with tokenization |
KR20180114198A (ko) | 2016-02-23 | 2018-10-17 | 엔체인 홀딩스 리미티드 | 블록체인 기반의 암호화폐를 위한 범용 토큰화 시스템 |
BR112018016805A2 (pt) | 2016-02-23 | 2018-12-26 | Nchain Holdings Ltd | método e sistema para transferência eficiente de criptomoeda associada com um pagamento em um blockchain que leva a um pagamento automatizado, método e sistema com base em contratos inteligentes |
GB2560274C (en) | 2016-02-23 | 2022-06-15 | Nchain Holdings Ltd | Personal device security using elliptic curve cryptography for secret sharing |
WO2018044946A1 (en) * | 2016-09-02 | 2018-03-08 | Conio Inc. | Method and apparatus for restoring access to digital assets |
CN109644126B (zh) * | 2016-09-30 | 2022-05-13 | 英特尔公司 | 用于异构型网络中的多个设备认证的技术 |
US10356079B2 (en) * | 2016-12-05 | 2019-07-16 | Keeper Security, Inc. | System and method for a single sign on connection in a zero-knowledge vault architecture |
US10129231B2 (en) * | 2016-12-08 | 2018-11-13 | Oath Inc. | Computerized system and method for automatically sharing device pairing credentials across multiple devices |
CN106899411B (zh) * | 2016-12-08 | 2021-09-21 | 创新先进技术有限公司 | 一种基于验证码的校验方法及装置 |
US10582036B2 (en) * | 2017-02-17 | 2020-03-03 | Whatsapp Inc. | Methods and systems for generating an ephemeral content message |
US10911237B2 (en) * | 2017-03-10 | 2021-02-02 | Jim Zubov | Virally connected network of people as a means to recover encrypted data should the encryption key become lost |
US11387999B2 (en) | 2017-09-29 | 2022-07-12 | Workjam Inc. | Access to secured information |
US11164182B2 (en) | 2018-05-17 | 2021-11-02 | Conio Inc. | Methods and systems for safe creation, custody, recovery, and management of a digital asset |
US11144620B2 (en) * | 2018-06-26 | 2021-10-12 | Counseling and Development, Inc. | Systems and methods for establishing connections in a network following secure verification of interested parties |
US11070368B2 (en) * | 2018-09-11 | 2021-07-20 | Dycrav Security Incorporated | System, method, and program for transmitting and receiving any type of secure digital data |
US11212093B2 (en) * | 2018-09-14 | 2021-12-28 | Htc Corporation | Method of social key recovery and related device |
US11641563B2 (en) | 2018-09-28 | 2023-05-02 | Apple Inc. | System and method for locating wireless accessories |
US11003760B2 (en) | 2019-01-30 | 2021-05-11 | Rsa Security Llc | User account recovery techniques using secret sharing scheme with trusted referee |
CN113812175A (zh) * | 2019-04-17 | 2021-12-17 | 苹果公司 | 为无线附件共享密钥 |
US11863671B1 (en) * | 2019-04-17 | 2024-01-02 | Apple Inc. | Accessory assisted account recovery |
US11194933B2 (en) * | 2019-06-04 | 2021-12-07 | Intel Corporation | Circuits supporting improved side channel and fault injection attack resistance |
US11683159B2 (en) * | 2019-11-07 | 2023-06-20 | Google Llc | Hybrid content protection architecture |
US10880331B2 (en) * | 2019-11-15 | 2020-12-29 | Cheman Shaik | Defeating solution to phishing attacks through counter challenge authentication |
WO2021102041A1 (en) | 2019-11-22 | 2021-05-27 | Conio Inc. | Method and apparatus for a blockchain-agnostic safe multi-signature digital asset management |
US11609982B2 (en) * | 2019-12-19 | 2023-03-21 | Snap Inc. | Social account recovery |
US11303695B2 (en) | 2020-04-27 | 2022-04-12 | Imperva, Inc. | Forced identification with automated POST resubmission |
US11374914B2 (en) * | 2020-06-29 | 2022-06-28 | Capital One Services, Llc | Systems and methods for determining knowledge-based authentication questions |
US11431701B2 (en) * | 2020-08-18 | 2022-08-30 | Capital One Services, Llc | Computer-based systems involving sharing session authentication and/or account details with a trusted party and methods of use thereof |
US11889302B2 (en) | 2020-08-28 | 2024-01-30 | Apple Inc. | Maintenance of wireless devices |
US11714551B2 (en) * | 2020-10-14 | 2023-08-01 | EMC IP Holding Company LLC | Credential manager with account selection and resource load-balancing |
US11914690B2 (en) * | 2021-02-08 | 2024-02-27 | Typingdna Inc. | Systems and methods for using typing characteristics for authentication |
US12073705B2 (en) | 2021-05-07 | 2024-08-27 | Apple Inc. | Separation alerts for notification while traveling |
US20220393867A1 (en) * | 2021-06-06 | 2022-12-08 | Apple Inc. | Techniques for user account and data recovery |
US11843596B2 (en) | 2021-06-30 | 2023-12-12 | Micro Focus Llc | Reregistration of client device with server device using user device |
US20240048382A1 (en) | 2022-08-03 | 2024-02-08 | 1080 Network, Llc | Systems, methods, and computing platforms for executing credential-less network-based communication exchanges |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100293600A1 (en) * | 2009-05-14 | 2010-11-18 | Microsoft Corporation | Social Authentication for Account Recovery |
CN102257504A (zh) * | 2008-12-18 | 2011-11-23 | 桑迪士克公司 | 使用captcha提问来保护可移除移动闪存存储器件的方法 |
CN103119975A (zh) * | 2010-09-27 | 2013-05-22 | 诺基亚西门子通信公司 | 用户账户恢复 |
US20130198824A1 (en) * | 2012-02-01 | 2013-08-01 | Amazon Technologies, Inc. | Recovery of Managed Security Credentials |
GB2513260A (en) * | 2014-06-27 | 2014-10-22 | Martin Tomlinson | System and method for quorum-based data recovery |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5937066A (en) | 1996-10-02 | 1999-08-10 | International Business Machines Corporation | Two-phase cryptographic key recovery system |
US7383570B2 (en) * | 2002-04-25 | 2008-06-03 | Intertrust Technologies, Corp. | Secure authentication systems and methods |
JP2005100255A (ja) | 2003-09-26 | 2005-04-14 | Hitachi Software Eng Co Ltd | パスワード変更方法 |
US9842204B2 (en) * | 2008-04-01 | 2017-12-12 | Nudata Security Inc. | Systems and methods for assessing security risk |
WO2010047801A1 (en) * | 2008-10-22 | 2010-04-29 | Azigo, Inc. | Brokered information sharing system |
US8490166B2 (en) * | 2010-12-29 | 2013-07-16 | Facebook, Inc. | Identifying a user account in a social networking system |
US9348981B1 (en) * | 2011-01-23 | 2016-05-24 | Google Inc. | System and method for generating user authentication challenges |
US8522327B2 (en) | 2011-08-10 | 2013-08-27 | Yahoo! Inc. | Multi-step captcha with serial time-consuming decryption of puzzles |
US9037864B1 (en) * | 2011-09-21 | 2015-05-19 | Google Inc. | Generating authentication challenges based on social network activity information |
US20130097697A1 (en) | 2011-10-14 | 2013-04-18 | Microsoft Corporation | Security Primitives Employing Hard Artificial Intelligence Problems |
FR3002670B1 (fr) | 2013-02-27 | 2016-07-15 | Oberthur Technologies | Procede et systeme de traitement cryptographique utilisant une donnee sensible |
US8966614B2 (en) * | 2013-05-31 | 2015-02-24 | University Of Ontario Institute Of Technology | Systems, methods, and computer program products for providing video-passwords for user authentication |
US9256725B2 (en) * | 2014-02-26 | 2016-02-09 | Emc Corporation | Credential recovery with the assistance of trusted entities |
-
2015
- 2015-10-30 US US14/928,443 patent/US10061914B2/en active Active
- 2015-11-04 EP EP15859609.8A patent/EP3219049B1/en active Active
- 2015-11-04 CN CN201580072790.7A patent/CN107251035B/zh active Active
- 2015-11-04 WO PCT/US2015/059060 patent/WO2016077121A1/en active Application Filing
- 2015-11-04 JP JP2017544834A patent/JP6517359B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102257504A (zh) * | 2008-12-18 | 2011-11-23 | 桑迪士克公司 | 使用captcha提问来保护可移除移动闪存存储器件的方法 |
US20100293600A1 (en) * | 2009-05-14 | 2010-11-18 | Microsoft Corporation | Social Authentication for Account Recovery |
CN103119975A (zh) * | 2010-09-27 | 2013-05-22 | 诺基亚西门子通信公司 | 用户账户恢复 |
US20130198824A1 (en) * | 2012-02-01 | 2013-08-01 | Amazon Technologies, Inc. | Recovery of Managed Security Credentials |
GB2513260A (en) * | 2014-06-27 | 2014-10-22 | Martin Tomlinson | System and method for quorum-based data recovery |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108768643A (zh) * | 2018-06-22 | 2018-11-06 | 哈尔滨工业大学 | 一种隐私数据保护方法及系统 |
CN110601824A (zh) * | 2019-08-26 | 2019-12-20 | 北京思源理想控股集团有限公司 | 信息的传输方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US10061914B2 (en) | 2018-08-28 |
EP3219049A4 (en) | 2018-06-13 |
WO2016077121A1 (en) | 2016-05-19 |
EP3219049A1 (en) | 2017-09-20 |
CN107251035B (zh) | 2020-07-31 |
JP2018503199A (ja) | 2018-02-01 |
JP6517359B2 (ja) | 2019-05-22 |
US20160140335A1 (en) | 2016-05-19 |
EP3219049B1 (en) | 2021-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107251035A (zh) | 账户恢复协议 | |
US11362811B2 (en) | Secure telecommunications | |
US9992176B2 (en) | Systems and methods for encrypted communication in a secure network | |
US9935924B1 (en) | Decentralized authoritative messaging | |
US10136315B2 (en) | Password-less authentication system, method and device | |
CN106104562B (zh) | 机密数据安全储存和恢复系统及方法 | |
US9805212B1 (en) | Secure file transfer | |
CN108965338B (zh) | 多服务器环境下的三因素身份认证及密钥协商的方法 | |
JP2016502377A (ja) | 安全計算を用いて安全性を提供する方法 | |
CN107210916A (zh) | 条件登录推广 | |
CN106790037B (zh) | 一种用户态加密的即时通讯方法与系统 | |
CN104883367B (zh) | 一种辅助验证登陆的方法、系统和应用客户端 | |
US10129229B1 (en) | Peer validation | |
CN109922027B (zh) | 一种可信身份认证方法、终端及存储介质 | |
CN106230594B (zh) | 一种基于动态口令进行用户认证的方法 | |
CN106464493B (zh) | 包含一次性通行码的持久性认证系统 | |
CN105391734A (zh) | 一种安全登录系统及方法、登录服务器和认证服务器 | |
CN113411187B (zh) | 身份认证方法和系统、存储介质及处理器 | |
Wang et al. | Amnesia: A bilateral generative password manager | |
CN104202163A (zh) | 一种基于移动终端的密码系统 | |
US20190251249A1 (en) | Methods and Systems for Securing and Recovering a User Passphrase | |
US20160099919A1 (en) | System and method for providing a secure one-time use capsule based personalized and encrypted on-demand communication platform | |
JP2011176435A (ja) | 秘密鍵共有システム、方法、データ処理装置、管理サーバ、及びプログラム | |
CN110557367B (zh) | 基于证书密码学的抗量子计算保密通信的密钥更新方法和系统 | |
CN109740319A (zh) | 数字身份验证方法及服务器 |
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 | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230719 Address after: California, USA Patentee after: MASA ROBRA USA LLC Address before: Texas, USA Patentee before: MCAFEE, Inc. |
|
TR01 | Transfer of patent right |