CN115280309A - 用于认证的方法、系统和计算机程序产品 - Google Patents

用于认证的方法、系统和计算机程序产品 Download PDF

Info

Publication number
CN115280309A
CN115280309A CN202180014487.7A CN202180014487A CN115280309A CN 115280309 A CN115280309 A CN 115280309A CN 202180014487 A CN202180014487 A CN 202180014487A CN 115280309 A CN115280309 A CN 115280309A
Authority
CN
China
Prior art keywords
secret key
processor
biometric
data
data points
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
Application number
CN202180014487.7A
Other languages
English (en)
Inventor
M·希尔瓦尼恩
M·克里斯托多雷斯库
D·S·W·马斯尼
I·D·O·努内斯
P·B·林达尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Visa International Service Association
Original Assignee
Visa International Service Association
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Visa International Service Association filed Critical Visa International Service Association
Publication of CN115280309A publication Critical patent/CN115280309A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3226Cryptographic 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
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

Abstract

提供了一种用于认证的方法。所述方法可以包括接收第一密码数据、第一生物特征输入数据和第一秘密密钥数据。可以基于所述第一秘密密钥和所述第一密码生成第二秘密密钥。可以基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据。可以存储所述模糊提取器辅助数据和所述第一秘密密钥。可以基于尝试密码和/或第二生物特征输入认证用户。还公开了一种系统和计算机程序产品。

Description

用于认证的方法、系统和计算机程序产品
相关申请交叉引用
本申请要求2020年2月14日提交的第62/976,777号美国临时专利申请的权益,所述美国临时专利申请的公开内容以全文引用的方式并入本文中。
技术领域
此所公开的主题大体上涉及用于认证的方法、系统和产品,并且在一些特定实施例或方面中,涉及用于基于至少一个生物特征输入和/或至少一个秘密密钥进行认证的方法、系统和计算机程序产品。
背景技术
某些认证技术可以使用文本输入。例如,一些此类技术可以使用密码。然而,用户可能难以记住此类密码。例如,用户可能具有多个不同账户的多个不同密码,并且每个密码对于其中必须包括的内容可能有不同的标准。另外,一些此类认证技术可以使用双因素认证(2FA)。然而,2FA可能需要用户携带单独的装置。另外或替代地,2FA可能是繁琐的,因为用户可能需要登录和/或以其它方式访问单独的账户。
某些认证技术可以使用生物特征数据。与文本认证相比,生物特征认证可以提供更高的可用性,例如,因为用户可能不需要记住密码和/或可能不需要携带单独的装置和/或可以访问单独的账户(例如,不同于2FA)。然而,不同于密码或其它文本输入,生物特征数据可能无法容易地更新(例如,反复、无限期、永远更新等)。因此,(例如,与被盗密码相比)与被盗生物特征数据相关联的风险可能增加。即使生物特征数据被加密和/或屏蔽,如果攻击者获得生物特征数据的加密和/或屏蔽版本,攻击者也可能能够恢复生物特征数据和/或以其它方式在可重复使用攻击中使用生物特征数据的加密和/或屏蔽版本。
发明内容
因此,当前公开的主题的目标是提供用于认证的方法、系统和计算机程序产品。
根据非限制性实施例或方面,提供一种用于认证的方法。在一些非限制性实施例或方面,一种用于认证的方法可以包括接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据。可以基于所述第一秘密密钥和所述第一密码生成第二秘密密钥。可以基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据。可以存储所述模糊提取器辅助数据和所述第一秘密密钥。
在一些非限制性实施例或方面,可以从用户装置接收所述密码数据和所述第一生物特征输入数据。另外或替代地,可以从服务器接收所述第一秘密密钥数据。
在一些非限制性实施例或方面,用户装置可以包括可信登记装置。另外或替代地,服务器可以包括认证服务器。
在一些非限制性实施例或方面,可以接收与尝试密码相关联的尝试密码数据。另外或替代地,可以基于所述第一秘密密钥和所述尝试密码生成重建的第二秘密密钥。在一些非限制性实施例或方面,可以确定所述重建的第二秘密密钥是否与所述第二秘密密钥匹配。另外或替代地,可以基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而认证用户。
在一些非限制性实施例或方面,生成所述重建的第二秘密密钥可以包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述重建的第二秘密密钥。
在一些非限制性实施例或方面,可以接收与第二生物特征输入相关联的第二生物特征输入数据。另外或替代地,可以基于所述第二生物特征输入和所述模糊提取器辅助数据生成重建的第二秘密密钥。在一些非限制性实施例或方面,可以确定所述重建的第二秘密密钥是否与所述第二秘密密钥匹配。另外或替代地,可以基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而认证用户。
在一些非限制性实施例或方面,生成所述重建的第二秘密密钥可以包括使用模糊库打开器(FVOPEN)生成所述重建的第二秘密密钥。
在一些非限制性实施例或方面,使用所述FVOPEN可以包括从所述第二生物特征输入中提取多个第二生物特征数据点。另外或替代地,可以传送所述多个第二生物特征数据点。另外或替代地,可以接收多个多项式编码。例如,每个相应多项式编码可以基于所述多个第二生物特征数据点中的相应第二生物特征数据点。另外或替代地,所述模糊提取器辅助数据可以包括所述多个多项式编码。另外或替代地,可以基于所述多个多项式编码生成所述重建的第二秘密密钥。
在一些非限制性实施例或方面,生成所述第二秘密密钥可以包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述第二秘密密钥。
在一些非限制性实施例或方面,生成所述模糊提取器辅助数据可以包括使用模糊库生成器(FVGEN)生成所述模糊提取器辅助数据。
在一些非限制性实施例或方面,使用所述FVGEN可以包括从所述第一生物特征输入中提取多个第一生物特征数据点。另外或替代地,可以生成多个随机数据点。另外或替代地,可以基于所述第二秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码。另外或替代地,可以生成所述多个随机数据点中的每个随机数据点的随机编码。另外或替代地,可以将每个第一生物特征数据点的所述多项式编码和每个随机数据点的所述随机编码组合成编码集。在一些非限制性实施例或方面,所述模糊提取器辅助数据可以包括所述编码集。
在一些非限制性实施例或方面,使用所述FVGEN还可以包括组合所述多个第一生物特征数据点和所述多个随机数据点以形成第一数据点集。另外或替代地,可以基于阈值距离为所述第一数据点集中的每个相应数据点生成相应相邻数据点集。另外或替代地,可以将每个相应相邻数据点集存储为具有所述编码集中的每个相应数据点的元组。
在一些非限制性实施例或方面,使用所述FVGEN还可以包括在存储包括所述编码集的所述模糊提取器辅助数据之前排列所述编码集。
根据非限制性实施例或方面,提供一种用于认证的方法。在一些非限制性实施例或方面,一种用于认证的方法可以包括接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据。可以从所述第一生物特征输入中提取多个第一生物特征数据点。可以生成多个随机数据点。可以基于所述第一秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码。可以生成所述多个随机数据点中的每个随机数据点的随机编码。可以将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集。可以将所述编码集存储为模糊提取器辅助数据。
在一些非限制性实施例或方面,可以接收与第二生物特征输入相关联的第二生物特征输入数据。另外或替代地,可以从所述第二生物特征输入中提取多个第二生物特征数据点。另外或替代地,可以传送所述多个第二生物特征数据点。另外或替代地,可以接收多个编码,并且所述多个编码中的每个相应编码可以基于所述多个第二生物特征数据点中的相应第二生物特征数据点。另外或替代地,所述模糊提取器辅助数据的所述编码集可以包括所述多个编码。另外或替代地,可以基于所述多个多项式编码生成重建的第一秘密密钥。另外或替代地,可以确定所述重建的第一秘密密钥是否与所述第一秘密密钥匹配。另外或替代地,可以基于确定所述重建的第一秘密密钥与所述第一秘密密钥匹配而认证用户。
根据非限制性实施例或方面,提供一种用于认证的系统。在一些非限制性实施例或方面,一种用于认证的系统可以包括至少一个处理器和包括指令的至少一个非瞬态计算机可读介质,所述指令指示所述至少一个处理器进行以下操作:接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据。所述指令还可以指示所述至少一个处理器进行以下操作:基于所述第一秘密密钥和所述第一密码生成第二秘密密钥。所述指令还可以指示所述至少一个处理器进行以下操作:基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据。所述指令还可以指示所述至少一个处理器进行以下操作:存储所述模糊提取器辅助数据和所述第一秘密密钥。
在一些非限制性实施例或方面,可以从用户装置接收所述密码数据和所述第一生物特征输入数据。另外或替代地,可以从服务器接收所述第一秘密密钥数据。
在一些非限制性实施例或方面,用户装置可以包括可信登记装置。另外或替代地,服务器可以包括认证服务器。
在一些非限制性实施例或方面,可以接收与尝试密码相关联的尝试密码数据。另外或替代地,可以基于所述第一秘密密钥和所述尝试密码生成重建的第二秘密密钥。在一些非限制性实施例或方面,可以确定所述重建的第二秘密密钥是否与所述第二秘密密钥匹配。另外或替代地,可以基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而认证用户。
在一些非限制性实施例或方面,生成所述重建的第二秘密密钥可以包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述重建的第二秘密密钥。
在一些非限制性实施例或方面,可以接收与第二生物特征输入相关联的第二生物特征输入数据。另外或替代地,可以基于所述第二生物特征输入和所述模糊提取器辅助数据生成重建的第二秘密密钥。在一些非限制性实施例或方面,可以确定所述重建的第二秘密密钥是否与所述第二秘密密钥匹配。另外或替代地,可以基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而认证用户。
在一些非限制性实施例或方面,生成所述重建的第二秘密密钥可以包括使用模糊库打开器(FVOPEN)生成所述重建的第二秘密密钥。
在一些非限制性实施例或方面,使用所述FVOPEN可以包括从所述第二生物特征输入中提取多个第二生物特征数据点。另外或替代地,可以传送所述多个第二生物特征数据点。另外或替代地,可以接收多个多项式编码。例如,每个相应多项式编码可以基于所述多个第二生物特征数据点中的相应第二生物特征数据点。另外或替代地,所述模糊提取器辅助数据可以包括所述多个多项式编码。另外或替代地,可以基于所述多个多项式编码生成所述重建的第二秘密密钥。
在一些非限制性实施例或方面,生成所述第二秘密密钥可以包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述第二秘密密钥。
在一些非限制性实施例或方面,生成所述模糊提取器辅助数据可以包括使用模糊库生成器(FVGEN)生成所述模糊提取器辅助数据。
在一些非限制性实施例或方面,使用所述FVGEN可以包括从所述第一生物特征输入中提取多个第一生物特征数据点。另外或替代地,可以生成多个随机数据点。另外或替代地,可以基于所述第二秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码。另外或替代地,可以生成所述多个随机数据点中的每个随机数据点的随机编码。另外或替代地,可以将每个第一生物特征数据点的所述多项式编码和每个随机数据点的所述随机编码组合成编码集。在一些非限制性实施例或方面,所述模糊提取器辅助数据可以包括所述编码集。
在一些非限制性实施例或方面,使用所述FVGEN还可以包括组合所述多个第一生物特征数据点和所述多个随机数据点以形成第一数据点集。另外或替代地,可以基于阈值距离为所述第一数据点集中的每个相应数据点生成相应相邻数据点集。另外或替代地,可以将每个相应相邻数据点集存储为具有所述编码集中的每个相应数据点的元组。
在一些非限制性实施例或方面,使用所述FVGEN还可以包括在存储包括所述编码集的所述模糊提取器辅助数据之前排列所述编码集。
根据非限制性实施例或方面,提供一种用于认证的系统。在一些非限制性实施例或方面,一种用于认证的系统可以包括至少一个处理器和包括指令的至少一个非瞬态计算机可读介质,所述指令指示所述至少一个处理器进行以下操作:接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据。所述指令还可以指示所述至少一个处理器进行以下操作:从所述第一生物特征输入中提取多个第一生物特征数据点。所述指令还可以指示所述至少一个处理器进行以下操作:生成多个随机数据点。所述指令还可以指示所述至少一个处理器进行以下操作:基于所述第一秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码。所述指令还可以指示所述至少一个处理器进行以下操作:生成所述多个随机数据点中的每个随机数据点的随机编码。所述指令还可以指示所述至少一个处理器进行以下操作:将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集。所述指令还可以指示所述至少一个处理器进行以下操作:将所述编码集存储为模糊提取器辅助数据。
在一些非限制性实施例或方面,可以接收与第二生物特征输入相关联的第二生物特征输入数据。另外或替代地,可以从所述第二生物特征输入中提取多个第二生物特征数据点。另外或替代地,可以传送所述多个第二生物特征数据点。另外或替代地,可以接收多个编码,并且所述多个编码中的每个相应编码可以基于所述多个第二生物特征数据点中的相应第二生物特征数据点。另外或替代地,所述模糊提取器辅助数据的所述编码集可以包括所述多个编码。另外或替代地,可以基于所述多个多项式编码生成重建的第一秘密密钥。另外或替代地,可以确定所述重建的第一秘密密钥是否与所述第一秘密密钥匹配。另外或替代地,可以基于确定所述重建的第一秘密密钥与所述第一秘密密钥匹配而认证用户。
根据非限制性实施例或方面,提供一种用于认证的计算机程序产品。在一些非限制性实施例或方面,所述计算机程序产品可以包括至少一个非瞬态计算机可读介质,所述至少一个非瞬态计算机可读介质包括一个或多个指令,所述一个或多个指令在由至少一个处理器执行时使所述至少一个处理器执行以下操作:接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据。所述指令还可以使所述至少一个处理器进行以下操作:基于所述第一秘密密钥和所述第一密码生成第二秘密密钥。所述指令还可以使所述至少一个处理器进行以下操作:基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据。所述指令还可以使所述至少一个处理器进行以下操作:存储所述模糊提取器辅助数据和所述第一秘密密钥。
在一些非限制性实施例或方面,可以从用户装置接收所述密码数据和所述第一生物特征输入数据。另外或替代地,可以从服务器接收所述第一秘密密钥数据。
在一些非限制性实施例或方面,用户装置可以包括可信登记装置。另外或替代地,服务器可以包括认证服务器。
在一些非限制性实施例或方面,可以接收与尝试密码相关联的尝试密码数据。另外或替代地,可以基于所述第一秘密密钥和所述尝试密码生成重建的第二秘密密钥。在一些非限制性实施例或方面,可以确定所述重建的第二秘密密钥是否与所述第二秘密密钥匹配。另外或替代地,可以基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而认证用户。
在一些非限制性实施例或方面,生成所述重建的第二秘密密钥可以包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述重建的第二秘密密钥。
在一些非限制性实施例或方面,可以接收与第二生物特征输入相关联的第二生物特征输入数据。另外或替代地,可以基于所述第二生物特征输入和所述模糊提取器辅助数据生成重建的第二秘密密钥。在一些非限制性实施例或方面,可以确定所述重建的第二秘密密钥是否与所述第二秘密密钥匹配。另外或替代地,可以基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而认证用户。
在一些非限制性实施例或方面,生成所述重建的第二秘密密钥可以包括使用模糊库打开器(FVOPEN)生成所述重建的第二秘密密钥。
在一些非限制性实施例或方面,使用所述FVOPEN可以包括从所述第二生物特征输入中提取多个第二生物特征数据点。另外或替代地,可以传送所述多个第二生物特征数据点。另外或替代地,可以接收多个多项式编码。例如,每个相应多项式编码可以基于所述多个第二生物特征数据点中的相应第二生物特征数据点。另外或替代地,所述模糊提取器辅助数据可以包括所述多个多项式编码。另外或替代地,可以基于所述多个多项式编码生成所述重建的第二秘密密钥。
在一些非限制性实施例或方面,生成所述第二秘密密钥可以包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述第二秘密密钥。
在一些非限制性实施例或方面,生成所述模糊提取器辅助数据可以包括使用模糊库生成器(FVGEN)生成所述模糊提取器辅助数据。
在一些非限制性实施例或方面,使用所述FVGEN可以包括从所述第一生物特征输入中提取多个第一生物特征数据点。另外或替代地,可以生成多个随机数据点。另外或替代地,可以基于所述第二秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码。另外或替代地,可以生成所述多个随机数据点中的每个随机数据点的随机编码。另外或替代地,可以将每个第一生物特征数据点的所述多项式编码和每个随机数据点的所述随机编码组合成编码集。在一些非限制性实施例或方面,所述模糊提取器辅助数据可以包括所述编码集。
在一些非限制性实施例或方面,使用所述FVGEN还可以包括组合所述多个第一生物特征数据点和所述多个随机数据点以形成第一数据点集。另外或替代地,可以基于阈值距离为所述第一数据点集中的每个相应数据点生成相应相邻数据点集。另外或替代地,可以将每个相应相邻数据点集存储为具有所述编码集中的每个相应数据点的元组。
在一些非限制性实施例或方面,使用所述FVGEN还可以包括在存储包括所述编码集的所述模糊提取器辅助数据之前排列所述编码集。
根据非限制性实施例或方面,提供一种用于认证的计算机程序产品。在一些非限制性实施例或方面,所述计算机程序产品可以包括至少一个非瞬态计算机可读介质,所述至少一个非瞬态计算机可读介质包括一个或多个指令,所述一个或多个指令在由至少一个处理器执行时使所述至少一个处理器执行以下操作:接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据。所述指令还可以使所述至少一个处理器进行以下操作:从所述第一生物特征输入中提取多个第一生物特征数据点。所述指令还可以使所述至少一个处理器进行以下操作:生成多个随机数据点。所述指令还可以使所述至少一个处理器进行以下操作:基于所述第一秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码。所述指令还可以使所述至少一个处理器进行以下操作:生成所述多个随机数据点中的每个随机数据点的随机编码。所述指令还可以使所述至少一个处理器进行以下操作:将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集。所述指令还可以使所述至少一个处理器进行以下操作:将所述编码集存储为模糊提取器辅助数据。
在一些非限制性实施例或方面,可以接收与第二生物特征输入相关联的第二生物特征输入数据。另外或替代地,可以从所述第二生物特征输入中提取多个第二生物特征数据点。另外或替代地,可以传送所述多个第二生物特征数据点。另外或替代地,可以接收多个编码,并且所述多个编码中的每个相应编码可以基于所述多个第二生物特征数据点中的相应第二生物特征数据点。另外或替代地,所述模糊提取器辅助数据的所述编码集可以包括所述多个编码。另外或替代地,可以基于所述多个多项式编码生成重建的第一秘密密钥。另外或替代地,可以确定所述重建的第一秘密密钥是否与所述第一秘密密钥匹配。另外或替代地,可以基于确定所述重建的第一秘密密钥与所述第一秘密密钥匹配而认证用户。
在以下编号条款中阐述其它实施例或方面。
条款1:一种计算机实施的方法,包括:用至少一个处理器接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;用至少一个处理器基于所述第一秘密密钥和所述第一密码生成第二秘密密钥;用至少一个处理器基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据;以及用至少一个处理器存储所述模糊提取器辅助数据和所述第一秘密密钥。
条款2:根据条款1所述的方法,其中接收包括从用户装置接收所述密码数据和所述第一生物特征输入数据以及从服务器接收所述第一秘密密钥数据。
条款3:根据任一前述条款所述的方法,其中所述用户装置包括可信登记装置,并且所述服务器包括认证服务器。
条款4:根据任一前述条款所述的方法,还包括:用至少一个处理器接收与尝试密码相关联的尝试密码数据;用至少一个处理器基于所述第一秘密密钥和所述尝试密码生成重建的第二秘密密钥;用至少一个处理器确定所述重建的第二秘密密钥与所述第二秘密密钥匹配;以及基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而用至少一个处理器认证用户。
条款5:根据任一前述条款所述的方法,其中生成所述重建的第二秘密密钥包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述重建的第二秘密密钥。
条款6:根据任一前述条款所述的方法,还包括:用至少一个处理器接收与第二生物特征输入相关联的第二生物特征输入数据;用至少一个处理器基于所述第二生物特征输入和所述模糊提取器辅助数据生成重建的第二秘密密钥;用至少一个处理器确定所述重建的第二秘密密钥与所述第二秘密密钥匹配;以及基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而用至少一个处理器认证用户。
条款7:根据任一前述条款所述的方法,其中生成所述重建的第二秘密密钥包括使用模糊库打开器(FVOPEN)生成所述重建的第二秘密密钥。
条款8:根据任一前述条款所述的方法,其中使用所述FVOPEN包括:用至少一个处理器从所述第二生物特征输入中提取多个第二生物特征数据点;用至少一个处理器传送所述多个第二生物特征数据点;用至少一个处理器接收多个多项式编码,所述多个多项式编码中的每个相应多项式编码基于所述多个第二生物特征数据点中的相应第二生物特征数据点,其中所述模糊提取器辅助数据包括所述多个多项式编码;以及利用至少一个处理器基于所述多个多项式编码生成所述重建的第二秘密密钥。
条款9:根据任一前述条款所述的方法,其中生成所述第二秘密密钥包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述第二秘密密钥。
条款10:根据任一前述条款所述的方法,其中生成所述模糊提取器辅助数据包括使用模糊库生成器(FVGEN)生成所述模糊提取器辅助数据。
条款11:根据任一前述条款所述的方法,其中使用所述FVGEN包括:用至少一个处理器从所述第一生物特征输入中提取多个第一生物特征数据点;用至少一个处理器生成多个随机数据点;用至少一个处理器基于所述第二秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;用至少一个处理器生成所述多个随机数据点中的每个随机数据点的随机编码;以及用至少一个处理器将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集,其中所述模糊提取器辅助数据包括所述编码集。
条款12:根据任一前述条款所述的方法,其中使用所述FVGEN还包括:用至少一个处理器组合所述多个第一生物特征数据点和所述多个随机数据点以形成第一数据点集;用至少一个处理器基于阈值距离为所述第一数据点集中的每个相应数据点生成相应相邻数据点集;以及将每个相应相邻数据点集存储为具有所述编码集中的每个相应数据点的元组。
条款13:根据任一前述条款所述的方法,其中使用所述FVGEN还包括:在存储包括所述编码集的所述模糊提取器辅助数据之前,用至少一个处理器排列所述编码集。
条款14:一种计算机实施的方法,包括:用至少一个处理器接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;用至少一个处理器从所述第一生物特征输入中提取多个第一生物特征数据点;用至少一个处理器生成多个随机数据点;用至少一个处理器基于所述第一秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;用至少一个处理器生成所述多个随机数据点中的每个随机数据点的随机编码;用至少一个处理器将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集;以及用至少一个处理器将所述编码集存储为模糊提取器辅助数据。
条款15:根据条款14所述的方法,包括:用至少一个处理器接收与第二生物特征输入相关联的第二生物特征输入数据;用至少一个处理器从所述第二生物特征输入中提取多个第二生物特征数据点;用至少一个处理器传送所述多个第二生物特征数据点;用至少一个处理器接收多个编码,所述多个编码中的每个相应编码基于所述多个第二生物特征数据点中的相应第二生物特征数据点,其中所述模糊提取器辅助数据的所述编码集包括所述多个编码;用至少一个处理器基于所述多个多项式编码生成重建的第一秘密密钥;用至少一个处理器确定所述重建的第一秘密密钥与所述第一秘密密钥匹配;以及基于确定所述重建的第一秘密密钥与所述第一秘密密钥匹配而用至少一个处理器认证用户。
条款16:一种系统,包括:至少一个处理器;以及包括指令的至少一个非瞬态计算机可读介质,所述指令指示所述至少一个处理器进行以下操作:接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;基于所述第一秘密密钥和所述第一密码生成第二秘密密钥;基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据;以及存储所述模糊提取器辅助数据和所述第一秘密密钥。
条款17:一种系统,包括:至少一个处理器;以及包括指令的至少一个非瞬态计算机可读介质,所述指令指示所述至少一个处理器进行以下操作:接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;从所述第一生物特征输入中提取多个第一生物特征数据点;生成多个随机数据点;基于所述第一秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;生成所述多个随机数据点中的每个随机数据点的随机编码;将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集;以及将所述编码集存储为模糊提取器辅助数据。
条款18:一种计算机程序产品,所述计算机程序产品包括至少一个非瞬态计算机可读介质,所述至少一个非瞬态计算机可读介质包括一个或多个指令,所述一个或多个指令在由至少一个处理器执行时使所述至少一个处理器执行以下操作:接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;基于所述第一秘密密钥和所述第一密码生成第二秘密密钥;基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据;以及存储所述模糊提取器辅助数据和所述第一秘密密钥。
条款19:一种计算机程序产品,所述计算机程序产品包括至少一个非瞬态计算机可读介质,所述至少一个非瞬态计算机可读介质包括一个或多个指令,所述一个或多个指令在由至少一个处理器执行时使所述至少一个处理器执行以下操作:接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;从所述第一生物特征输入中提取多个第一生物特征数据点;生成多个随机数据点;基于所述第一秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;生成所述多个随机数据点中的每个随机数据点的随机编码;将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集;以及将所述编码集存储为模糊提取器辅助数据。
条款20:一种系统,包括:至少一个处理器;以及至少一个非瞬态计算机可读介质,所述至少一个非瞬态计算机可读介质包括指令,所述指令指示所述至少一个处理器执行根据条款1至15中任一项所述的方法。
条款21:一种计算机程序产品,所述计算机程序产品包括至少一个非瞬态计算机可读介质,所述至少一个非瞬态计算机可读介质包括一个或多个指令,所述一个或多个指令在由至少一个处理器执行时使所述至少一个处理器执行根据条款1至15中任一项所述的方法
在参考附图考虑以下描述和所附权利要求书之后,当前公开的主题的这些和其它特征和特性,以及相关结构元件和各部分组合的操作方法和功能以及制造经济性将变得更加显而易见,所有附图形成本说明书的部分,其中相同的附图标记表示各图中的对应部分。然而,应明确地理解,图式仅出于说明和描述目的,并非旨在作为所公开主题的限制的定义。除非上下文另外明确规定,否则在本说明书和权利要求书中所用时,单数形式“一”及“所述”包括多个指示物。
附图说明
下文参考附图中示出的示例性实施例更详细地解释所公开主题的额外优势和细节,附图中:
图1是可以根据当前公开主题的原理实施本文所描述的方法、系统和/或计算机程序产品的环境的非限制性实施例或方面的图;
图2是图1的一个或多个装置的组件的非限制性实施例或方面的图;
图3是根据当前公开主题的原理的用于认证的过程的非限制性实施例或方面的流程图;
图4是根据当前公开主题的原理的用于认证的过程的非限制性实施例或方面的流程图;
图5A是根据当前公开主题的原理的用于认证的过程的非限制性实施例或方面的实施的非限制性实施例或方面的图;
图5B是根据当前公开主题的原理的与图5A实施方案有关的两方计算模糊库生成器
Figure BDA0003795763710000111
的非限制性实施例或方面的泳道图;
图5C是根据当前公开主题的原理的与图5A实施方案有关的两方计算模糊库打开器
Figure BDA0003795763710000112
的非限制性实施例或方面的泳道图;
图6A-6B是根据当前公开主题的原理的认证过程的非限制性实施例或方面的实施的非限制性实施例或方面的图;以及
图7是根据当前公开主题的原理的生成模糊提取器辅助数据的过程的非限制性实施例或方面的实施的非限制性实施例或方面的屏幕截图。
具体实施方式
下文出于描述的目的,术语“端”、“上”、“下”、“右”、“左”、“竖直”、“水平”、“顶部”、“底部”、“横向”、“纵向”以及其衍生词应涉及所公开主题如其在附图中的定向。然而,应理解,除了明确指定相反情况之外,所公开主题可以采用各种替代变化和步骤序列。还应理解,附图中示出的以及在以下说明书中描述的特定装置和过程仅仅是所公开主题的示例性实施例或方面。因此,除非另有指示,否则与本文公开的实施例或方面相关联的特定维度和其它物理特性不应被视为限制。
本文所使用的方面、组件、元件、结构、动作、步骤、功能、指令等都不应当被理解为关键的或必要的,除非明确地如此描述。并且,如本文中所使用,冠词“一”希望包括一个或多个项目,且可与“一个或多个”和“至少一个”互换使用。此外,如本文中所使用,术语“集合”希望包括一个或多个项目(例如,相关项目、不相关项目、相关项目与不相关项目的组合等),并且可与“一个或多个”或“至少一个”互换使用。在希望仅有一个项目的情况下,使用术语“一个”或类似语言。且,如本文中所使用,术语“具有”等希望是开放式术语。另外,除非另外明确陈述,否则短语“基于”希望意味着“至少部分地基于”。
如本文中所使用,术语“通信”和“传送”可指信息(例如,数据、信号、消息、指令、命令等)的接收、接受、发送、传送、提供等。一个单元(例如,装置、系统、装置或系统的组件、其组合等)与另一单元通信意味着所述一个单元能够直接或间接地从所述另一单元接收信息和/或向所述另一单元发送信息。这可以指代在本质上有线和/或无线的直接或间接连接(例如,直接通信连接、间接通信连接和/或其类似者)。另外,尽管所发送的信息可以在第一单元与第二单元之间被修改、处理、中继和/或路由,但这两个单元也可以彼此通信。例如,即使第一单元被动地接收信息且不会主动地将信息发送到第二单元,第一单元也可以与第二单元通信。作为另一示例,如果至少一个中间单元(例如,位于第一单元与第二单元之间的第三单元)处理从第一单元接收的信息且将处理后的信息传送到第二单元,则第一单元可以与第二单元通信。在一些非限制性实施例或方面,消息可以指代包括数据的网络包(例如,数据包等)。应了解,可能有许多其它布置。
如本文中所使用,术语“发行方机构”、“便携式金融装置发行方”、“发行方”或“发行方银行”可指代向客户提供账户用于进行交易(例如,支付交易)(例如发起信用和/或借记支付)的一个或多个实体。例如,发行方机构可向客户提供唯一地标识与所述客户相关联的一个或多个账户的账户标识符,例如主账号(PAN)。账户标识符可以在例如实体金融工具(例如,支付卡)等便携式金融装置上实施,和/或可以是电子的且用于电子支付。术语“发行方机构”和“发行方机构系统”也可指代由发行方机构或代表发行方机构操作的一个或多个计算机系统,例如执行一个或多个软件应用程序的服务器计算机。例如,发行方机构系统可以包括用于授权交易的一个或多个授权服务器。
如本文所使用,术语“账户标识符”可以包括与用户账户相关联的一种或多种类型的标识符(例如,PAN、卡号、支付卡号、支付令牌等)。在一些非限制性实施例或方面,发行方机构可以向用户提供账户标识符(例如,PAN、支付令牌等),所述账户标识符唯一地标识与所述用户相关联的一个或多个账户。账户标识符可在物理金融工具(例如,便携式金融工具、支付卡、信用卡、借记卡等)上体现,和/或可为传送到用户使得用户可用于电子支付的电子信息。在一些非限制性实施例或方面,账户标识符可以是原始账户标识符,其中在创建与账户标识符相关联的账户时,将原始账户标识符提供给用户。在一些非限制性实施例或方面,账户标识符可以是在将原始账户标识符提供给用户之后提供给用户的账户标识符(例如,补充账户标识符)。例如,如果原始账户标识符被遗忘、被盗等,则补充账户标识符可提供给用户。在一些非限制性实施例或方面,账户标识符可以直接或间接地与发行方机构相关联,使得账户标识符可以是映射到PAN或其它类型的标识符的支付令牌。账户标识符可以是文数字、字符和/或符号的任何组合等。发行方机构可以与唯一地标识发行方机构的银行标识号(BIN)相关联。
如本文中所使用,术语“支付令牌”或“令牌”可指代用作例如PAN的账户标识符的替代或替换标识符的标识符。令牌可与一种或多种数据结构(例如,一个或多个数据库等)中的PAN或其它账户标识符相关联,使得所述令牌可用于进行交易(例如,支付交易)而无需直接使用账户标识符,例如PAN。在一些示例中,例如PAN的账户标识符可以与用于不同个人、不同用途和/或不同目的的多个令牌相关联。例如,支付令牌可包括可以用作原始账户标识符的替代的一连串数字和/或字母数字字符。例如,支付令牌“4900 0000 0000 0001”可代替PAN“4147 0900 0000 1234”使用。在一些非限制性实施例或方面,支付令牌可以是“保留格式的”,并且可以具有与现有支付处理网络中使用的账户标识符一致的数字格式(例如,ISO 8583金融交易消息格式)。在一些非限制性实施例或方面,支付令牌可代替PAN用来发起、授权、结算或解决支付交易,或在通常会提供原始凭证的其它系统中表示原始凭证。在一些非限制性实施例或方面,可以生成令牌值,使得可能无法以计算方式从令牌值得到原始PAN或其它账户标识符的恢复(例如,使用单向散列或其它密码函数)。此外,在一些非限制性实施例或方面,令牌格式可被配置成允许接收支付令牌的实体将其标识为支付令牌,并辨识发行所述令牌的实体。
如本文中所使用,术语“提供”可指代使得装置能够使用资源或服务的过程。例如,提供可能涉及使得装置能够使用账户来执行交易。另外或替代地,提供可包括将与账户数据(例如,表示账号的支付令牌)相关联的提供数据添加到装置。
如本文中所使用,术语“令牌请求者”可指力图根据本公开主题的实施例或方面实施令牌化的实体。例如,令牌请求者可以通过向令牌服务提供商提交令牌请求消息来发起使PAN令牌化的请求。另外或替代地,一旦请求者已响应于令牌请求消息而接收支付令牌,令牌请求者就可能不再需要存储与令牌相关联的PAN。在一些非限制性实施例或方面,请求者可以是被配置成执行与令牌相关联的动作的应用程序、装置、过程或系统。例如,请求者可以请求注册网络令牌系统、请求令牌生成、令牌激活、令牌去激活、令牌交换、其它令牌生命周期管理相关过程和/或任何其它令牌相关过程。在一些非限制性实施例或方面,请求者可以通过任何合适的通信网络和/或协议(例如,使用HTTPS、SOAP和/或XML接口等)与网络令牌系统连接。例如,令牌请求者可包括卡存档(card-on-file)商家、收单方、收单方处理器、代表商家操作的支付网关、支付使能者(enabler)(例如,原始设备制造商、移动网络运营商等)、数字钱包提供商、发行方、第三方钱包提供商、支付处理网络等。在一些非限制性实施例或方面,令牌请求者可以针对多个域和/或信道请求令牌。另外或替代地,令牌化生态系统内的令牌服务提供商可以唯一地注册和标识令牌请求者。例如,在令牌请求者注册期间,令牌服务提供商可以正式处理令牌请求者的应用程序以参与令牌服务系统。在一些非限制性实施例或方面,令牌服务提供商可以收集关于请求者的性质和令牌的相关使用的信息,以验证并正式批准令牌请求者并建立适当的域限制控制。另外或替代地,可以向成功注册的令牌请求者分配令牌请求者标识符,所述令牌请求者标识符也可以被输入并在令牌库内维护。在一些非限制性实施例或方面,可以吊销令牌请求者标识符,和/或可以向令牌请求者分配新的令牌请求者标识符。在一些非限制性实施例或方面,此信息可由令牌服务提供商进行报告和审计。
如本文中所使用,术语“令牌服务提供商”可指包括在令牌服务系统中生成、处理以及维护支付令牌的一个或多个服务器计算机的实体。例如,令牌服务提供商可以包括存储所生成令牌的令牌库或与所述令牌库通信。另外或替代地,令牌库可维护令牌与由令牌表示的PAN之间的一对一映射。在一些非限制性实施例或方面,令牌服务提供商能够预留授权的BIN作为令牌BIN以发行可以提交给令牌服务提供商的PAN的令牌。在一些非限制性实施例或方面,令牌化生态系统的各种实体可以承担令牌服务提供商的角色。例如,支付网络和发行方或其代理方可以通过实施根据本公开主题的非限制性实施例或方面的令牌服务而成为令牌服务提供商。另外或替代地,令牌服务提供商可以将报告或数据输出提供给有关被批准、待决或被拒绝的令牌请求的报告工具,包括任何分配的令牌请求者ID。令牌服务提供商可将与基于令牌的交易相关联的数据输出提供给报告工具和应用程序,并且按需要在报告输出中呈现令牌和/或PAN。在一些非限制性实施例或方面,EMVCo标准组织可以发布限定令牌化系统可如何操作的规范。例如,此类规范可以是信息性的,但它们并不意图限制任何当前公开的主题。
如本文中所使用,术语“令牌库”可指代维护已建立的令牌到PAN映射的存储库。例如,令牌库还可以维护令牌请求者的其它属性,这些属性可以在注册时确定,和/或可以由令牌服务提供商使用以在交易处理期间应用域限制或其它控制。在一些非限制性实施例或方面,令牌库可以是令牌服务系统的一部分。例如,令牌库可被提供为令牌服务提供商的一部分。另外或替代地,令牌库可以是令牌服务提供商可访问的远程存储库。在一些非限制性实施例或方面,令牌库因其中存储和管理的数据映射的敏感性质而可受到强大的基础物理和逻辑安全性的保护。另外或替代地,令牌库可以由任何合适的实体操作,所述实体包括支付网络、发行方、清算所、其它金融机构、交易服务提供商等。
如本文中所使用,术语“商家”可指代一个或多个实体(例如,基于交易(例如,支付交易)向用户(例如,客户、消费者、商家的客户等)提供商品和/或服务和/或对商品和/或服务的访问的零售企业的运营者)。如本文所使用,术语“商家系统”可以指由商家或代表商家操作的一个或多个计算机系统,例如执行一个或多个软件应用程序的服务器计算机。如本文中所使用,术语“产品”可以指商家提供的一种或多种商品和/或服务。
如本文中所使用,“销售点(POS)装置”可指代可由商家使用以发起交易(例如,支付交易)、参与交易和/或处理交易的一个或多个装置。例如,POS装置可以包括一个或多个计算机、外围装置、读卡器、近场通信(NFC)接收器、射频标识(RFID)接收器和/或其它非接触式收发器或接收器、基于接触的接收器、支付终端、计算机、服务器、输入装置等。
如本文中所使用,“销售点(POS)系统”可以指商家用来进行交易的一个或多个计算机和/或外围装置。例如,POS系统可包括一个或多个POS装置,和/或可用于进行支付交易的其它类似装置。POS系统(例如,商家POS系统)还可以包括被编程或配置成通过网页、移动应用程序等等处理在线支付交易的一个或多个服务器计算机。
如本文中所使用,术语“交易服务提供商”可以指代接收来自商家或其它实体的交易授权请求且在一些情况下通过交易服务提供商与发行方机构之间的协议来提供支付保证的实体。在一些非限制性实施例或方面,交易服务提供商可包括信用卡公司、借记卡公司等。如本文中所使用,术语“交易服务提供商系统”还可指代由交易服务提供商或代表交易服务提供商操作的一个或多个计算机系统,例如执行一个或多个软件应用的交易处理服务器。交易处理服务器可以包括一个或多个处理器,并且在一些非限制性实施例或方面,可以由交易服务提供商或代表交易服务提供商操作。
如本文中所使用,术语“收单方”可以指由交易服务提供商许可且由交易服务提供商批准可以使用与交易服务提供商相关联的便携式金融装置发起交易(例如,支付交易)的实体。如本文中所使用,术语“收单方系统”也可以指由收单方或代表收单方操作的一个或多个计算机系统、计算机装置等等。交易可以包括支付交易(例如,购买、原始贷记交易(OCT)、账户出资交易(AFT)等)。在一些非限制性实施例或方面,收单方可以由交易服务提供商授权以与商家或服务提供商签约,来使用交易服务提供商的便携式金融装置发起交易。收单方可以与支付服务商签合约,以使支付服务商能够向商家提供赞助。收单方可以根据交易服务提供商规章监视支付服务商的合规性。收单方可以对支付服务商进行尽职调查,并确保在与受赞助的商家签约之前进行适当的尽职调查。收单方可能对收单方操作或赞助的所有交易服务提供商计划负责任。收单方可以负责收单方支付服务商、由收单方支付服务商赞助的商家等的行为。在一些非限制性实施例或方面,收单方可以是金融机构,例如银行。
如本文中所使用,术语“电子钱包”、“电子钱包移动应用程序”和“数字钱包”可指代被配置成发起和/或进行交易(例如,支付交易、电子支付交易等)的一个或多个电子装置和/或一个或多个软件应用程序。例如,电子钱包可包括用户装置(例如,移动装置)执行用于维护和向用户装置提供交易数据的应用程序和服务器侧软件和/或数据库。如本文中所使用,术语“电子钱包提供商”可包括为用户(例如,客户)提供和/或维护电子钱包和/或电子钱包移动应用程序的实体。电子钱包提供商的示例包括但不限于Google
Figure BDA0003795763710000161
Android
Figure BDA0003795763710000162
Apple
Figure BDA0003795763710000164
和Samsung
Figure BDA0003795763710000163
在一些非限制性示例中,金融机构(例如,发行方机构)可以是电子钱包提供商。如本文中所使用,术语“电子钱包提供商系统”可指代由电子钱包提供商或代表电子钱包提供商操作的一个或多个计算机系统、计算机装置、服务器、服务器群组等。
如本文所使用,术语“便携式金融装置”可以指代支付卡(例如,信用卡或借记卡)、礼品卡、智能卡、智能介质、工资卡、医疗保健卡、腕带、含有账户信息的机器可读介质、钥匙链装置或吊坠、RFID应答器、零售商折扣或会员卡、蜂窝电话、电子钱包移动应用程序、个人数字助理(PDA)、寻呼机、安全卡、计算机、访问卡、无线终端、应答器等。在一些非限制性实施例或方面,便携式金融装置可以包括易失性或非易失性存储器以存储信息(例如,账户标识符、账户持有人的姓名等)。
如本文中所使用,术语“支付网关”可指实体和/或由此类实体或代表此类实体操作的支付处理系统,所述实体(例如商家服务提供商、支付服务提供商、支付服务商、与收单方有合约的支付服务商、支付集合人(payment aggregator)等)将支付服务(例如交易服务提供商支付服务、支付处理服务等)提供到一个或多个商家。支付服务可与由交易服务提供商管理的便携式金融装置的使用相关联。如本文中所使用,术语“支付网关系统”可指代由支付网关或代表支付网关操作的一个或多个计算机系统、计算机装置、服务器、服务器群组等,和/或支付网关本身。如本文所使用,术语“支付网关移动应用程序”可以指被配置成提供交易(例如,支付交易、电子支付交易等)的支付服务的一个或多个电子装置和/或一个或多个软件应用程序。
如本文中所使用,术语“客户端”和“客户端装置”可指代用于发起或促进交易(例如,支付交易)的一个或多个客户端侧装置或系统(例如,在交易服务提供商的远程处)。作为示例,“客户端装置”可指代由商家使用的一个或多个POS装置、由收单方使用的一个或多个收单方主机计算机、由用户使用的一个或多个移动装置等。在一些非限制性实施例或方面,客户端装置可以是被配置成与一个或多个网络通信并发起或促进交易的电子装置。例如,客户端装置可包括一个或多个计算机、便携式计算机、膝上型计算机、平板计算机、移动装置、蜂窝式电话、可穿戴装置(例如,手表、眼镜、镜片、衣物等)、PDA等。此外,“客户端”还可指代拥有、利用和/或操作客户端装置用于发起交易(例如,用于发起与交易服务提供商的交易)的实体(例如,商家、收单方等)。
如本文中所使用,术语“服务器”可指代经由网络(例如,公用网络、因特网、专用网络等)与客户端装置和/或其它计算装置通信且在一些示例中促进其它服务器和/或客户端装置之间的通信的一个或多个计算装置(例如,处理器、存储装置、类似的计算机组件等)。应了解,可能有各种其它布置。如本文中所使用,术语“系统”可指代一个或多个计算装置或计算装置的组合(例如,处理器、服务器、客户端装置、软件应用程序、这些计算装置的组件等)。如本文中所使用对“装置”、“服务器”、“处理器”等的提及可指代陈述为执行先前步骤或功能的先前陈述的装置、服务器或处理器、不同的服务器或处理器,和/或服务器和/或处理器的组合。例如,如说明书和权利要求书所使用,陈述为执行第一步骤或第一功能的第一服务器或第一处理器可指代陈述为执行第二步骤或第二功能的相同或不同服务器或相同或不同处理器。
所公开主题的非限制性实施例或方面涉及用于认证的系统、方法和计算机程序产品,包括但不限于基于至少一个生物特征输入和/或至少一个秘密密钥进行认证。例如,所公开的主题的非限制性实施例或方面提供技术和/或系统,所述技术和/或系统使得能够构建对当前密码认证服务器(例如,在服务器上的修改有限和/或没有修改)透明的安全但可用的认证系统,并且允许用户利用生物特征或文本(例如,密码)输入中的任一者从各种装置登录。另外或替代地,所公开的主题的非限制性实施例或方面提供能够基于密码(例如,用户可能容易记住的密码)和(第一)秘密密钥(例如,使用装置增强型密码认证密钥交换(DE-PAKE))来生成高熵秘密(例如,第二秘密密钥)的技术和/或系统。另外或替代地,所公开的主题的非限制性实施例或方面提供能够基于秘密(例如,第二秘密密钥)实现密封(例如,加密)生物特征数据(例如,使用模糊提取器生成器)的技术和/或系统。另外或替代地,所公开的主题的非限制性实施例或方面提供能够使用(容易记住的)密码(例如,使用DE-PAKE)或使用生物特征输入(例如,使用模糊提取器打开器)重建秘密(例如,第二秘密密钥)的技术和/或系统。另外或替代地,所公开的主题的非限制性实施例或方面提供使用户能够使用生物特征输入或文本密码(例如,取决于用于认证的用户装置上的生物特征传感器的可用性)来认证(例如,登录等)同时提供高熵秘密(如果需要可以更新)的安全保证的技术和/或系统。另外或替代地,所公开的主题的非限制性实施例或方面提供使用户能够利用生物特征信息认证而不将所存储的生物特征模板和/或其加密/屏蔽版本暴露于用户装置的技术和/或系统,这可以防止攻击者在攻击时获取、恢复或以其它方式使用所存储的生物特征数据。
出于说明的目的,在以下描述中,虽然当前公开的主题是关于用于利于基于至少一个生物特征输入和/或至少一个秘密密钥认证的方法、系统和计算机程序产品而描述的,但本领域的技术人员将认识到,所公开的主题不限于说明性实施例或方面。例如,本文描述的方法、系统和计算机程序产品可以与多种设置一起使用,例如适合使用这种认证的任何设置中的认证,例如交易(例如,支付交易)、账户创建、账户登录、应用程序登录等。
现在参考图1,图1是可以实施如本文所描述的系统、产品和/或方法的环境100的非限制性实施例或方面的图。如图1所示,环境100包括交易服务提供商系统102、发行方系统104、客户装置106、商家系统108、收单方系统110和网络112。
交易服务提供商系统102可以包括能够经由网络112从发行方系统104、客户装置106、商家系统108和/或收单方系统110接收信息和/或将信息传送到它们的一个或多个装置。例如,交易服务提供商系统102可以包括计算装置,例如服务器(例如,交易处理服务器)、服务器群组和/或其它类似装置。在一些非限制性实施例或方面,交易服务提供商系统102可以与本文描述的交易服务提供商相关联。在一些非限制性实施例或方面,交易服务提供商系统102可以与数据存储装置通信,所述数据存储装置对于交易服务提供商系统102可以是本地或远程的。在一些非限制性实施例或方面,交易服务提供商系统102能够从数据存储装置接收信息,将信息存储在数据存储装置中,将信息传送到数据存储装置,或搜索存储在数据存储装置中的信息。
发行方系统104可以包括能够经由网络112从交易服务提供商系统102、客户装置106、商家系统108和/或收单方系统110接收信息和/或将信息传送到它们的一个或多个装置。例如,发行方系统104可以包括计算装置,例如服务器、服务器群组和/或其它类似装置。在一些非限制性实施例或方面,发行方系统104可与本文描述的发行方机构相关联。例如,发行方系统104可以与向与客户装置106相关联的用户发行信用账户、借记账户、信用卡、借记卡等的发行方机构相关联。
客户装置106可以包括能够经由网络112从交易服务提供商系统102、发行方系统104、商家系统108和/或收单方系统110接收信息和/或将信息传送到它们的一个或多个装置。另外或替代地,每个客户装置106可以包括能够经由网络112、另一网络(例如,临时网络、本地网络、专用网络、虚拟专用网络等)和/或任何其它合适的通信技术从其它客户装置106接收信息和/或将信息传送到所述其它客户装置的装置。例如,客户装置106可以包括客户端装置等。在一些非限制性实施例或方面,客户装置106能够或不能够经由短程无线通信连接(例如,NFC通信连接、RFID通信连接、
Figure BDA0003795763710000191
通信连接、
Figure BDA0003795763710000192
通信连接等)(例如从商家系统108或从另一客户装置106)接收信息,和/或经由短程无线通信连接传送信息(例如传送到商家系统108)。
商家系统108可以包括能够经由网络112从交易服务提供商系统102、发行方系统104、客户装置106和/或收单方系统110接收信息和/或将信息传送到它们的一个或多个装置。商家系统108还可以包括能够经由网络112、与客户装置106的通信连接(例如,NFC通信连接、RFID通信连接、
Figure BDA0003795763710000193
通信连接、
Figure BDA0003795763710000194
通信连接等)等从客户装置106接收信息,和/或经由网络112、所述通信连接等将信息传送到客户装置106的装置。在一些非限制性实施例或方面,商家系统108可以包括计算装置,例如服务器、服务器群组、客户端装置、客户端装置群组和/或其它类似装置。在一些非限制性实施例或方面,商家系统108可与本文所描述的商家相关联。在一些非限制性实施例或方面,商家系统108可以包括一个或多个客户端装置。例如,商家系统108可以包括允许商家将信息传送到交易服务提供商系统102的客户端装置。在一些非限制性实施例或方面,商家系统108可包括能够供商家用以与用户进行支付交易的一个或多个装置,例如计算机、计算机系统和/或外围装置。例如,商家系统108可以包括POS装置和/或POS系统。
收单方系统110可以包括能够经由网络112从交易服务提供商系统102、发行方系统104、客户装置106和/或商家系统108接收信息和/或将信息传送到它们的一个或多个装置。例如,收单方系统110可包括计算装置、服务器、服务器群组等。在一些非限制性实施例或方面,收单方系统110可与本文描述的收单方相关联。
网络112可以包括一个或多个有线和/或无线网络。例如,网络112可以包括蜂窝网络(例如,长期演进(LTE)网络、第三代(3G)网络、第四代(4G)网络、第五代(5G)网络、码分多址(CDMA)网络等)、公共陆地移动网络(PLMN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、电话网络(例如,公共交换电话网络(PSTN))、专用网络(例如,与交易服务提供商相关联的专用网络)、特设网络、内联网、因特网、基于光纤的网络、云计算网络等,和/或这些或其它类型的网络的组合。
在一些非限制性实施例或方面,处理交易可以包括生成和/或传送至少一个交易消息(例如,授权请求、授权响应、其任何组合等)。例如,客户端装置(例如,客户装置106、商家系统108的POS装置等)可以例如通过生成授权请求来发起交易。另外或替代地,客户端装置(例如,客户装置106、商家系统108的至少一个装置等)可以传送授权请求。例如,客户装置106可以将授权请求传送到商家系统108和/或支付网关(例如,交易服务提供商系统102的支付网关、与交易服务提供商系统102分离的第三方支付网关等)。另外或替代地,商家系统108(例如,其POS装置)可以将授权请求传送到收单方系统110和/或支付网关。在一些非限制性实施例或方面,收单方系统110和/或支付网关可以将授权请求传送到交易服务提供商系统102和/或发行方系统104。另外或替代地,交易服务提供商系统102可以将授权请求传送到发行方系统104。在一些非限制性实施例或方面,发行方系统104可以基于授权请求而确定授权决策(例如,授权、拒绝等)。例如,授权请求可以使发行方系统104基于所述授权请求而确定授权决策。在一些非限制性实施例或方面,发行方系统104可以基于授权决策而生成授权响应。另外或替代地,发行方系统104可以传送授权响应。例如,发行方系统104可以将授权响应传送到交易服务提供商系统102和/或支付网关。另外或替代地,交易服务提供商系统102和/或支付网关可以将授权响应传送到收单方系统110、商家系统108和/或客户装置106。另外或替代地,收单方系统110可以将授权响应传送到商家系统108和/或支付网关。另外或替代地,支付网关可以将授权响应传送到商家系统108和/或客户装置106。另外或替代地,商家系统108可以将授权响应传送到客户装置106。在一些非限制性实施例或方面,商家系统108可以(例如,从收单方系统110和/或支付网关)接收授权响应。另外或替代地,商家系统108可以基于授权响应(例如,提供、运送和/或交付与交易相关联的商品和/或服务;履行与交易相关联的订单;其任何组合;等)而完成交易。
作为示例提供图1所示的系统、装置和/或网络的数目和布置。可存在额外系统、装置和/或网络、更少系统、装置和/或网络、不同的系统、装置和/或网络,和/或以与图1所示的那些不同的方式布置的系统、装置和/或网络。此外,可在单个系统和/或装置内实施图1中展示的两个或更多个系统或装置,或图1中展示的单个系统或装置可实施为多个分布式系统或装置。另外或替代地,环境100的一组系统(例如,一个或多个系统)和/或一组装置(例如,一个或多个装置)可执行被描述为由环境100的另一组系统或另一组装置执行的一个或多个功能。
现在参考图2,图2是装置200的示例组件的图。装置200可以对应于交易服务提供商系统102的一个或多个装置、发行方系统104的一个或多个装置、客户装置106、商家系统108的一个或多个装置,和/或收单方系统110的一个或多个装置。在一些非限制性实施例或方面,交易服务提供商系统102、发行方系统104、客户装置106、商家系统108和/或收单方系统110可以包括至少一个装置200和/或装置200的至少一个组件。如图2所示,装置200可包括总线202、处理器204、存储器206、存储组件208、输入组件210、输出组件212,和通信接口214。
总线202可包括准许装置200的组件之间的通信的组件。在一些非限制性实施例或方面,处理器204可以硬件、软件、固件和/或其任何组合实施。例如,处理器204可以包括处理器(例如,中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)等)、微处理器、数字信号处理器(DSP),和/或可被编程为执行某一功能的任何处理组件(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)等。存储器206可以包括随机存取存储器(RAM)、只读存储器(ROM),和/或存储供处理器204使用的信息和/或指令的另一类型的动态或静态存储装置(例如,闪存存储器、磁存储器、光学存储器等)。
存储组件208可以存储与装置200的操作和使用相关联的信息和/或软件。例如,存储组件208可以包括硬盘(例如,磁盘、光盘、磁光盘、固态磁盘等)、压缩光盘(CD)、数字多功能光盘(DVD)、软盘、盒带、磁带和/或另一类型的计算机可读介质,以及对应的驱动器。
输入组件210可以包括准许装置200例如经由用户输入(例如,触摸屏显示器、键盘、小键盘、鼠标、按钮、开关、麦克风、摄像头等)接收信息的组件。另外或替代地,输入组件210可以包括用于感测信息的传感器(例如,全球定位系统(GPS)组件、加速度计、陀螺仪、致动器等)。输出组件212可包括从装置200提供输出信息的组件(例如显示器、扬声器、一个或多个发光二极管(LED)等)。
通信接口214可包括收发器式组件(例如,收发器、单独的接收器和发送器等),其使装置200能够例如经由有线连接、无线连接或有线和无线连接的组合与其它装置通信。通信接口214可以准许装置200接收来自另一装置的信息和/或向另一装置提供信息。例如,通信接口214可以包括以太网接口、光学接口、同轴接口、红外接口、射频(RF)接口、通用串行总线(USB)接口、
Figure BDA0003795763710000211
接口、
Figure BDA0003795763710000212
接口、
Figure BDA0003795763710000213
接口、蜂窝网络接口等。
装置200可以执行本文描述的一个或多个过程。装置200可以基于处理器204执行由例如存储器206和/或存储组件208的计算机可读介质存储的软件指令来执行这些过程。计算机可读介质(例如,非瞬态计算机可读介质)在本文中定义为非瞬态存储器装置。非瞬态存储器装置包括位于单个物理存储装置内部的存储器空间或散布于多个物理存储装置上的存储器空间。
软件指令可以经由通信接口214从另一计算机可读介质或从另一装置读取到存储器206和/或存储组件208中。在被执行时,存储在存储器206和/或存储组件208中的软件指令可以使处理器204执行本文描述的一个或多个过程。另外或替代地,硬接线电路系统可以替代或结合软件指令使用以执行本文中所描述的一个或多个过程。因此,本文所描述的实施例或方面不限于硬件电路系统和软件的任何特定组合。
作为示例提供图2所示的组件的数目和布置。在一些非限制性实施例或方面,与图2中所示的那些相比,装置200可以包括额外组件、更少组件、不同组件或以不同方式布置的组件。另外或替代地,装置200的一组组件(例如一个或多个组件)可执行被描述为由装置200的另一组组件执行的一个或多个功能。
现在参考图3,图3是用于认证的过程300的非限制性实施例或方面的流程图。在一些非限制性实施例或方面,过程300的一个或多个步骤可以(例如完全地、部分地等)由交易服务提供商系统102(例如,交易服务提供商系统102的一个或多个装置)执行。在一些非限制性实施例或方面,可以由与交易服务提供商系统102分开或包括所述交易服务提供商系统的另一系统、另一装置、另一组系统或另一组装置,诸如发行方系统104(例如,发行方系统104的一个或多个装置)、客户装置106(例如,客户装置106的一个或多个装置)、商家系统108(例如,商家系统108的一个或多个装置)、收单方系统110(例如,收单方系统110的一个或多个装置)等,(例如,完全地、部分地,等)执行过程300的一个或多个步骤。在一些非限制性实施例或方面,参考图3,服务器可以(例如,完全地、部分地等)作为交易服务提供商系统102、发行方系统104、商家系统108和/或收单方系统110的一部分实施和/或由其实施。在一些非限制性实施例或方面,参考图3,用户装置可以(例如,完全地、部分地等)与客户装置106相同、相似和/或由其实施。
如图3所示,在步骤302,过程300可包括接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据,如本文所述。例如,如本文所述,密码数据和第一生物特征输入数据可以从用户装置接收和/或由用户装置接收。另外或替代地,可以从服务器(例如,与可信第三方相关联的可信第三方服务器,等)接收第一秘密密钥数据,如本文所述。
在一些非限制性实施例或方面,用户装置可以包括可信登记装置。另外或替代地,服务器可以包括认证服务器。
如图3所示,在步骤304,过程300可包括基于第一秘密密钥和第一密码生成第二秘密密钥,如本文所述。在一些非限制性实施例或方面,第二秘密密钥可以使用装置增强型密码认证密钥交换(DE-PAKE)生成,如本文所述。
如图3所示,在步骤306,过程300可包括基于第一生物特征输入和第二秘密密钥生成模糊提取器辅助数据,如本文所述。在一些非限制性实施例或方面,可以使用如本文所述的模糊库生成器(FVGEN)生成模糊提取器辅助数据。例如,模糊库生成器(FVGEN)可以包括两方计算模糊库生成器
Figure BDA0003795763710000221
如本文所述。
在一些非限制性实施例或方面,FVGEN可以包括从第一生物特征输入中提取多个第一生物特征数据点;生成多个随机数据点;基于第二秘密密钥生成多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;生成多个随机数据点中的每个随机数据点的随机编码;以及将多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码和多个随机数据点中的每个随机数据点的随机编码组合成编码集。另外或替代地,模糊提取器辅助数据可以包括编码集。
在一些非限制性实施例或方面,可以组合多个第一生物特征数据点和多个随机数据点以形成第一数据点集。另外或替代地,可以基于阈值距离为第一数据点集中的每个相应数据点生成相应相邻数据点集。另外或替代地,可以将每个相应相邻数据点集存储为具有第一编码集中的每个相应数据点的元组。
在一些非限制性实施例或方面,在存储包括编码集的模糊提取器辅助数据之前,可以排列所述编码集(例如,随机变换位置等)。
如图3中所示,在步骤308,过程300可包括用至少一个处理器存储模糊提取器辅助数据和第一秘密密钥,如本文所述。
如图3所示,在步骤310,过程300可包括接收尝试密码和/或第二生物特征输入,如本文所述。例如,可以接收与尝试密码相关联的尝试密码数据。另外或替代地,可以接收与第二生物特征输入相关联的第二生物特征输入数据。
如图3所示,在步骤312,过程300可包括生成重建的第二秘密密钥,如本文所述。例如,可以基于第一秘密密钥和尝试密码生成重建的第二秘密密钥,如本文所述。另外或替代地,可以基于第二生物特征输入和模糊提取器辅助数据生成(例如,不经意地生成等)重建的第二秘密密钥,如本文所述。
在一些非限制性实施例或方面,可以使用DE-PAKE生成重建的第二秘密密钥,如本文所述。
在一些非限制性实施例或方面,可以使用模糊库打开器(FVOPEN)生成重建的第二秘密密钥,如本文所述。例如,模糊库打开器(FVOPEN)可以包括两方计算模糊库打开器
Figure BDA0003795763710000231
如本文所述。
例如,使用FVOPEN可以包括从第二生物特征输入中提取多个第二生物特征数据点,传送多个第二生物特征数据点,接收多个多项式编码,以及基于多个多项式编码生成重建的第二秘密密钥。另外或替代地,多个多项式编码中的每个相应多项式编码可以基于多个第二生物特征数据点中的相应第二生物特征数据点。另外或替代地,模糊提取器辅助数据可以包括多个多项式编码。
如图3所示,在步骤314,过程300可包括确定重建的第二秘密密钥是否与第二秘密密钥匹配,如本文所述。
如图3所示,在步骤316,过程300可包括基于确定重建的第二秘密密钥与第二秘密密钥匹配来认证用户,如本文所述。另外或替代地,可以基于重建的第二秘密密钥与第二秘密密钥不匹配而拒绝对用户的认证。
现在参考图4,图4是用于认证的过程400的非限制性实施例或方面的流程图。在一些非限制性实施例或方面,过程400的一个或多个步骤可以(例如完全地、部分地等)由交易服务提供商系统102(例如,交易服务提供商系统102的一个或多个装置)执行。在一些非限制性实施例或方面,可以由与交易服务提供商系统102分开或包括所述交易服务提供商系统的另一系统、另一装置、另一组系统或另一组装置,诸如发行方系统104(例如,发行方系统104的一个或多个装置)、客户装置106(例如,客户装置106的一个或多个装置)、商家系统108(例如,商家系统108的一个或多个装置)、收单方系统110(例如,收单方系统110的一个或多个装置)等,(例如,完全地、部分地,等)执行过程400的一个或多个步骤。在一些非限制性实施例或方面,参考图4,服务器可以由交易服务提供商系统102(例如,完全地、部分地等)实施。在一些非限制性实施例或方面,参考图4,用户装置可以由客户装置106(例如,完全地、部分地等)实施。
如图4所示,在步骤402,过程400可包括接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据,如本文所述。
如图4所示,在步骤404,过程400可包括从第一生物特征输入中提取多个第一生物特征数据点,如本文所述。
如图4所示,在步骤406,过程400可包括生成多个随机数据点,如本文所述。
在一些非限制性实施例或方面,可以组合多个第一生物特征数据点和多个随机数据点以形成第一数据点集。另外或替代地,可以基于阈值距离为第一数据点集中的每个相应数据点生成相应相邻数据点集。
如图4所示,在步骤408,过程400可以包括基于第一秘密密钥生成多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码,如本文所述。
如图4所示,在步骤410,过程400可包括生成多个随机数据点中的每个随机数据点的随机编码,如本文所述。
如图4所示,在步骤412,过程400可包括将多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码与多个随机数据点中的每个随机数据点的随机编码组合成编码集,如本文所述。
在一些非限制性实施例或方面,可以将每个相应相邻数据点集存储为具有编码集中的每个相应数据点的元组。
在一些非限制性实施例或方面,可以排列编码集(例如,随机变换位置等)。
如图4所示,在步骤414,过程400可包括将编码集存储为模糊提取器辅助数据,如本文所述。
如图4所示,在步骤416,过程400可包括接收与第二生物特征输入相关联的第二生物特征输入数据,如本文所述。
如图4所示,在步骤418,过程400可包括从第二生物特征输入中提取多个第二生物特征数据点,如本文所述。
如图4所示,在步骤420,过程400可包括传送多个第二生物特征数据点,如本文所述。
如图4所示,在步骤422,过程400可包括接收多个编码,如本文所述。在一些非限制性实施例或方面,多个编码中的每个相应编码可以基于多个第二生物特征数据点中的相应第二生物特征数据点。另外或替代地,模糊提取器辅助数据的编码集可以包括多个编码。
如图4所示,在步骤424,过程400可包括基于多个多项式编码生成重建的第一秘密密钥,如本文所述。
如图4所示,在步骤426,过程400可包括确定重建的第一秘密密钥是否与第一秘密密钥匹配,如本文所述。
如图4所示,在步骤428,过程400可包括基于确定重建的第一秘密密钥与第一秘密密钥匹配来来认证用户,如本文所述。另外或替代地,可以基于重建的第二秘密密钥与第二秘密密钥不匹配而拒绝对用户的认证。
现在参考图5A,图5A是用于认证的过程的非限制性实施例或方面的示例性实施方案500的图。如图5A所示,实施方案500可包括认证系统502、用户装置506a、密钥存储系统506b和依赖方系统508。在一些非限制性实施例或方面,认证系统502可以(例如,完全地、部分地等)与交易服务提供商系统102相同、相似、为其一部分和/或由其实施。另外或替代地,认证系统502可以(例如,完全地、部分地等)与和交易服务提供商系统102分开的例如发行方系统104、商家系统108、收单方系统110等另一系统、另一装置、另一组系统或另一组装置相同、相似、为其一部分和/或由其实施。在一些非限制性实施例或方面,用户装置506a可以(例如,完全地、部分地等)与客户装置106(例如,第一客户装置106)相同、相似和/或由其实施。在一些非限制性实施例或方面,密钥存储系统506b可以(例如,完全地、部分地等)与第二客户装置106相同、相似和/或由其实施。另外或替代地,密钥存储系统506b可以(例如,完全地、部分地等)与可信第三方服务器相同、相似和/或由其实施。在一些非限制性实施例或方面,依赖方系统508可以(例如,完全地、部分地等)与商家系统108相同、相似、为其一部分和/或由其实施。另外或替代地,认证系统502可以(例如,完全地、部分地等)与和交易商家系统108分开的例如交易服务提供商系统102、发行方系统104、收单方系统110等另一系统、另一装置、另一组系统或另一组装置相同、相似、为其一部分和/或由其实施。
在一些非限制性实施例或方面,用户装置506a可以接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据。例如,用户装置506a可以接收密码数据,并且可以从用户装置506a的用户接收第一生物特征输入数据作为输入。另外或替代地,用户装置506a可以从密钥存储系统506b接收第一秘密密钥数据。另外或替代地,用户装置506a的用户可以生成第一秘密密钥。
在一些非限制性实施例或方面,用户装置506a的用户可以包括可信登记装置。
在一些非限制性实施例或方面,用户装置506a和/或密钥存储装置506b可以基于第一秘密密钥和第一密码生成第二秘密密钥。例如,可以使用DE-PAKE(例如,其随机密码(PTR)协议)生成第二秘密密钥,如本文所述。
在一些非限制性实施例或方面,用户装置506a和/或认证系统502可以基于第一生物特征输入和秘密密钥(例如,第二秘密密钥)生成模糊提取器辅助数据。例如,可以使用FVGEN(例如,两方计算模糊库生成器
Figure BDA0003795763710000261
)生成模糊提取器辅助数据,如本文所述。
在一些非限制性实施例或方面,FVGEN可以包括从第一生物特征输入中提取多个第一生物特征数据点;生成多个随机数据点;基于第二秘密密钥生成多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;生成多个随机数据点中的每个随机数据点的随机编码;以及将多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码和多个随机数据点中的每个随机数据点的随机编码组合成编码集。另外或替代地,模糊提取器辅助数据可以包括编码集。
在一些非限制性实施例或方面,可以组合多个第一生物特征数据点和多个随机数据点以形成第一数据点集。另外或替代地,可以基于阈值距离为第一数据点集中的每个相应数据点生成相应相邻数据点集。另外或替代地,可以将每个相应相邻数据点集存储为具有第一编码集中的每个相应数据点的元组。
在一些非限制性实施例或方面,在存储包括编码集的模糊提取器辅助数据之前,可以排列所述编码集(例如,随机变换位置等)。
在一些非限制性实施例或方面,模糊库(FV)可包括模糊库生成器(FVGEN)、模糊库打开器(FVOPEN)和参数集(φ)。例如,参数集(φ)可以包括多项式次数(d)、伽罗瓦域(GF)大小(例如,大小为2τ(GF(2τ))的伽罗瓦域,其中τ是位数)、度量空间(M)、距离函数(dist)(例如,在度量空间(M)上定义的)、距离阈值(w)及其任何组合等。在一些非限制性实施例或方面,模糊库生成器(FVGEN)可以接收生物特征数据(例如,用户的生物特征模板(BT))和秘密密钥(k)作为其输入。例如,密钥(k)可以使得|k|=(d+1)×τ。在一些非限制性实施例或方面,FVGEN可以基于输入生成辅助数据(HD)作为输出。在一些非限制性实施例或方面,模糊库打开器(FVOPEN)可以接收辅助数据(HD)和第二生物特征数据(例如,用户的声称的生物特征模板(BT'))作为其输入。在一些非限制性实施例或方面,FVOPEN可以生成重建的密钥(k')作为输出。例如,重建的密钥(k')可以使得|k'|=(d+1)×τ。
在一些非限制性实施例或方面,对应于用户的BT可以由BT={p1,...,pM}表示,其中p1、...、pM是表示用户生物特征的唯一细节的数据点。例如,在指纹BT中,每个pi∈BT可以表示指纹细节点的位置和取向(例如,指纹图像中指纹线合并和/或分开的区域)。另外或替代地,每个细节点可以被编码为pi=(xi,yii),其中xi和yi可以分别是水平和竖直的笛卡尔坐标,并且θi可以是表示细节点pi的取向的角度。
在一些非限制性实施例或方面,模糊库(FV)可包括两方计算(2PC)模糊库(FV2PC)。另外或替代地,FV2PC可包括如本文所述的两方计算模糊库生成器
Figure BDA0003795763710000271
和/或两方计算模糊库打开器
Figure BDA0003795763710000272
现在参考图5B,并且继续参考图5A,图5B是与图5A的实施方案500有关的两方计算模糊库生成器
Figure BDA0003795763710000273
的非限制性实施例或方面的示例性泳道图。
在一些非限制性实施例或方面,
Figure BDA0003795763710000274
可以生成模糊库辅助数据(HD),其可以允许有效的不经意认证,如下文进一步描述。在一些非限制性实施例或方面,当用户首次向认证系统502注册(例如,使用用户装置506)时,可以执行
Figure BDA0003795763710000275
在一些非限制性实施例或方面,用户装置506a可以是可信登记装置(例如,在部署认证系统502的组织的控制下的装置等)。在登记时(例如,在执行
Figure BDA0003795763710000276
等时),认证系统502可以存储(例如,永久存储)与用户的标识符(例如,用户名、用户标识符(UID)等)相关联的HD。
如图5B所示,
Figure BDA0003795763710000277
可包括接收输入的用户装置506a。例如,输入可以包括用户标识符(UID)、与第一生物特征输入相关联的第一生物特征输入数据(例如,生物特征模板(BT))、与第一秘密密钥(K)相关联的第一秘密密钥数据,其任何组合等。另外或替代地,输入可包括至少一个参数,例如多项式次数(d)、距离函数(dist)、距离阈值(w)、生物特征数据点(例如,bt1、...、btm)的数目(m)、随机数据点(例如,c1、...、cn)的数目(n),其任何组合等。在一些非限制性实施例或方面,认证系统502可能不需要任何输入(但是,如下文进一步描述,认证系统502可以从用户装置506接收某些信息)。
如图5B所示,在第1行,
Figure BDA0003795763710000278
可以包括从第一生物特征输入中提取多个第一生物特征数据点。例如,用户装置506a可以从生物特征模板中提取生物特征数据点(例如,Ext(BT)={bt1,…,btm})。另外或替代地,所提取的生物特征数据点可以存储在第一列表(Lm)中。
如图5B所示,在第2行,
Figure BDA0003795763710000279
可以包括生成多个随机数据点。例如,用户装置506a可以生成随机数据点(例如,{c1,…,cn})。在一些非限制性实施例或方面,可以从概率分布(D)生成每个随机数据点。另外或替代地,生成的随机数据点可以存储在第二列表(Ln)中。
如图5B所示,在第3行,
Figure BDA00037957637100002710
可以包括生成随机排列。例如,用户装置506a可以生成m+n个元素的随机排列(Π$)。
如图5B所示,在第4行,
Figure BDA00037957637100002711
可以包括组合多个第一生物特征数据点和多个随机数据点以形成第一数据点集。例如,用户装置506a可以组合第一列表(Lm)和第二列表(Ln)以形成组合列表(L)。
如图5B所示,在第5行,
Figure BDA00037957637100002712
可以包括基于秘密密钥生成多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码,和/或生成多个随机数据点中的每个随机数据点的随机编码。例如,用户装置506a可以将秘密密钥(K)编码为多项式的系数Pk(.),其可具有次数d。
如图5B所示,在第6行,
Figure BDA0003795763710000281
可包括初始化空集。例如,用户装置506a可以初始化空列表(S)。
如图5B所示,在第7行,
Figure BDA0003795763710000282
可以包括将多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码和多个随机数据点中的每个随机数据点的随机编码组合编码集。例如,用户装置506a可以将这些项组合到先前初始化的集(S)中,如下所示。
在一些非限制性实施例或方面,可以基于阈值距离(d)为第一数据点集中的每个相应数据点(例如,组合列表L中的每个生物特征数据点和每个随机数据点)生成相应相邻数据点集。例如,对于列表L中的每个点e(例如,e∈L=Lm+Ln),用户装置506a可以生成距e在距离阈值(w)内(例如,{x|dist(x,e)≤w})的所有点(x)的集,其可以存储在相邻集se中。在一些非限制性实施例或方面,e可选自集
Figure BDA0003795763710000283
(例如,
Figure BDA0003795763710000284
),其可以是有限的。在一些非限制性实施例或方面,编码集中的每个相应数据点可以存储(例如,由用户装置506)为具有相应相邻数据点集合和/或相应多项式编码的元组。例如,可以为每个e生成(例如,由用户装置506)元组(e,pe)。另外或替代地,每个相应元组可以与相应相邻数据点集(例如,[se,(e,pe)])相关联。在一些非限制性实施例或方面,如果相应e是生物特征数据点(例如,e∈Lm),则相应pe(例如,在具有相应e的元组中)可以包括相应生物特征数据点的多项式编码(例如,pe=Pk(e))。另外或替代地,如果相应e是随机数据点(例如,e∈Ln),则相应pe(例如,在具有相应e的元组中)可以包括相应随机数据点的随机编码(例如,
Figure BDA0003795763710000285
Figure BDA0003795763710000286
)。在一些非限制性实施例或方面,每个生物特征数据点(例如,e∈Lm)可以与密钥(K)的Shamir秘密份额相关联,和/或K的份额和随机元组在给定K的随机性时可能是不可区分的。在一些非限制性实施例或方面,可以将相邻集(se)和元组(e,pe)的元素[se,(e,pe)]中的每一者添加到集(S)。
如图5B所示,在第8行,
Figure BDA0003795763710000287
可以包括排列(例如,随机变换位置等)编码集。例如,可以使用随机排列(例如,Π(S))来(例如,由用户装置506)变换集(S)的位置。在一些非限制性实施例或方面,可以将变换位置的集存储为数据集(D)。
如图5B所示,在第9行,
Figure BDA0003795763710000288
可以包括将集(S)(和/或基于变换集(S)的位置,将数据集(D))例如从用户装置506a传送到认证系统502。例如,用户装置506a可以将数据集(D)传送到认证系统502。另外或替代地,除了数据集(D)之外,用户装置506a还可以传送其它信息,例如用户标识符(UID)和/或与密钥(K)相关联的密钥数据。在一些非限制性实施例或方面,密钥数据可包括K。另外或替代地,密钥数据可包括基于密钥的至少一个散列(例如,第一散列(H1(K))、第二散列(H2(K))等)。在一些非限制性实施例或方面,基于密钥(K)的散列可以启用基于质询响应的认证,如本文所述。
如图5B所示,在第9-11行,
Figure BDA0003795763710000291
可以包括将编码的集(S)(和/或基于变换集(S)的位置,将数据集(D))存储为模糊提取器辅助数据(HD)。例如,认证系统502可以存储HD。在一些非限制性实施例或方面,HD还可以包括从用户装置506a接收的其它信息中的至少一些,例如用户标识符(UID)、与密钥(K)相关联的密钥数据(例如,第一散列(H1(K))、第二散列(H2(K))等),其任何组合等。在一些非限制性实施例或方面,认证系统502可以在将数据集(D)存储为HD的一部分之前填充数据集(D)。
继续参考图5A,在一些非限制性实施例或方面,认证系统502可以从用户装置506a接收尝试密码和/或第二生物特征输入。例如,可以由认证系统502从用户装置506a接收与尝试密码相关联的尝试密码数据。另外或替代地,可以由认证系统502从用户装置506a接收与第二生物特征输入相关联的第二生物特征输入数据。
在一些非限制性实施例或方面,认证系统502可以生成重建的第二秘密密钥。例如,认证系统502可以基于第一秘密密钥和尝试密码生成重建的第二秘密密钥。另外或替代地,认证系统502可以基于第二生物特征输入和模糊提取器辅助数据生成(例如,不经意地生成等)重建的第二秘密密钥。
在一些非限制性实施例或方面,可以使用模糊库打开器(FVOpen)生成重建的第二秘密密钥。例如,使用FVOPEN可以包括从第二生物特征输入中提取多个第二生物特征数据点,传送多个第二生物特征数据点,接收多个多项式编码,以及基于多个多项式编码生成重建的第二秘密密钥。另外或替代地,多个多项式编码中的每个相应多项式编码可以基于多个第二生物特征数据点中的相应第二生物特征数据点。另外或替代地,所述模糊提取器辅助数据可以包括所述多个多项式编码。
现在参考图5C,并且继续参考图5A,图5C是与图5A的实施方案500有关的两方计算模糊库打开器
Figure BDA0003795763710000292
的非限制性实施例或方面的示例性泳道图。在一些非限制性实施例或方面,
Figure BDA0003795763710000293
可以使得用户装置506a能够不经意地恢复密钥(K)。
如图5C所示,
Figure BDA0003795763710000294
可包括用户装置506a接收输入。例如,用户装置506a的输入可以包括用户标识符(UID)、第二生物特征输入数据(例如,第二生物特征模板(BT'))、生物特征数据点的数目(m)(例如,bt'1、…、bt'm)、随机数据点的数目(n),其任何组合等。另外或替代地,认证系统502可以接收和/或可以存储输入。例如,用于认证系统502的输入可以包括如图5B所描述的存储的模糊库辅助数据(HD)。
如图5C所示,在第1行和第2行,
Figure BDA0003795763710000295
可以包括生成第二随机排列。例如,认证系统502可以生成m+n个元素的第二随机排列(Π'$)。
如图5C所示,在第3行,
Figure BDA0003795763710000296
可以包括排列(例如,随机变换位置等)HD的数据集(D)。例如,可以(例如,由认证系统502)使用第二随机排列(例如,Π'$(D))来变换数据集(D)的位置。在一些非限制性实施例或方面,可以将变换位置集存储为变换位置数据集(D$)。在一些非限制性实施例或方面,变换位置数据集(D$)可包括元素(例如,相邻集(si)和元组(ei,pi)的[si,(ei,pi)],其中i为1至m+n)。
如图5C所示,在第4行,
Figure BDA0003795763710000301
可包括从第二生物特征输入中提取多个第二生物特征数据点。例如,用户装置506a可以从第二生物特征模板(例如,Ext(BT')={bt'1,…,bt'm})中提取第二生物特征数据点。另外或替代地,所提取的生物特征数据点可以存储在第一列表(Lm)中。
在一些非限制性实施例或方面,在获得第二生物特征数据点bt'i∈Lm之后,用户装置506a和认证系统502可以使用私有集合交集(PSI)协议进行通信,以确定第二生物特征数据点(bt'i)是否对应于变换位置数据集D$的元素(例如,相邻集sj)中的任何元素。例如,PSI协议可以包括两方计算PSI-基数(2PC-PCI-CA)协议,以确定每个第二生物特征数据点(bt'i)与相应相邻集sj(若有)之间的集合交集基数。例如,基于第二生物特征数据点(bt'i)和相邻集(sj)的输入,如果dist(bt'i,e)<w(其中e是用于生成相应相邻集的(第一)生物特征数据点),则2PC-PCI-CA的结果可以包括二进制值1,否则包括二进制值0。因此,用户装置506a可以例如基于相应第二生物特征数据点和/或变换位置数据集接收多个编码(编码集(Bij))。
如图5C所示,在第5行和第6行,
Figure BDA0003795763710000302
可以包括基于编码集(Bij)学习交集(X)。例如,对于从1到m+n的j的所有值,交集(X)中的每个交集数据点(Xj)可以包括编码集(Bij)的相应子集(例如,B1j+…+Bmj)的总和。在一些非限制性实施例或方面,交集(X)可以与HD中的含有足够接近每个bt'i∈Lm(例如,在阈值距离w内)的点的位置相关联。
如图5C所示,在第7行,
Figure BDA0003795763710000303
可以包括认证系统502(例如,向用户装置506a)传送元组集(Y)(例如,作为所有元组(e,pe)中的第二元组),其可以按照与来自变换位置数据集(D$)的相邻集(sj)相同的顺序。另外或替代地,用户装置506a可以初始化和清空候选集(C)。在一些非限制性实施例或方面,认证系统502还可以(例如,向用户装置506a)传送秘密密钥的第一散列(H1(K))。
如图5C所示,在第8行,
Figure BDA0003795763710000304
可以包括基于交集(X)和元组集(Y)填充候选集(C)。例如,用户装置506a可以基于交集(X)确定元组集(Y)中哪些元组最有可能是秘密密钥(K)的共享。例如,对于从1到m+n的j的所有值,如果Xj是1,则可以将来自元组集(Y)的相应元组(Yj)添加到候选集(C)。因此,添加到候选集(C)的元组可被视为可能是秘密密钥(K)的共享。
如图5C所示,在第8行,
Figure BDA0003795763710000305
可以包括基于多项式编码生成重建的秘密密钥。例如,用户装置506a可以基于候选集(C)内插最多
Figure BDA0003795763710000311
个候选多项式编码PK'(.),其中每个PK'(.)可以是候选重建的秘密密钥。例如,用户装置506a可以执行此类解释,直到候选重建的秘密密钥的第一散列(H1(K'))等于(例如,从认证系统502接收的)第一秘密密钥的第一散列(H1(K))。候选重建的秘密密钥可以是重建的秘密密钥(K')。
在一些非限制性实施例或方面,如果第二生物特征模板(BT')包含至少d+1个匹配特征(例如,在第一生物特征数据点的阈值距离内的第二生物特征数据点),则用户装置506a可能能够恢复秘密密钥(K)(例如,生成等同于秘密密钥(K)的重建的秘密密钥(K')。
如图5B所示,在第10行,
Figure BDA0003795763710000312
可以包括确定重建的秘密密钥(K')是否与秘密密钥(K)匹配和/或基于所示确定来认证用户(或者如果密钥不匹配,则拒绝认证)。例如,认证系统502(和/或依赖方系统508)可以基于质询响应协议认证用户装置506a。例如,认证系统502(和/或依赖方系统508)可以基于秘密密钥(H2(K))的第二散列将质询传送到用户装置506a。响应于质询,用户装置506a可以基于重建的秘密密钥(H2(K'))的第二散列将响应传送到认证系统502(和/或依赖方系统508)。如果对质询的响应成功,则认证系统502(和/或依赖方系统508)可以确定密钥匹配和/或认证用户装置506a。
继续参考图5A,在一些非限制性实施例或方面,用户装置506a可以使用秘密密钥认证认证系统502和/或依赖方系统508。例如,秘密密钥可以在认证系统502和/或依赖方系统508中注册为密码。另外或替代地,秘密密钥可以分别用于加密多个每系统密钥和/或每装置密钥(例如,用多个依赖方系统508和/或其多个装置)。另外或替代地,秘密密钥可以用作支付令牌。另外或替代地,秘密密钥可以用作密码认证密钥交换(PAKE)协议(例如,DE-PAKE等)的输入。
在一些非限制性实施例或方面,可以使用DE-PAKE生成重建的第二秘密密钥。例如,在DE-PAKE中,用户可以记住常规密码(pwd)。另外或替代地,可以将密码(pwd)输入到用户装置506a中。在一些非限制性实施例或方面,用户装置506a可以与密钥存储系统506b通信以生成随机密码(rwd)。例如,用户装置506a可以使用随机密码(PTR)协议与密钥存储系统506b通信,以生成rwd=Fk1(pwd),其中F是伪随机函数,并且k1是由密钥存储系统506b持有的第一秘密密钥。另外或替代地,用户装置506a可以使用具有rwd作为密码的标准PAKE协议认证到认证系统502(和/或依赖方系统508)。在一些非限制性实施例或方面,rwd可被视为第二秘密密钥(k2)。
在一些非限制性实施例或方面,DE-PAKE协议可以与S.Jarecki等人的“具有最佳在线-离线保护的装置增强型密码协议(Device Enhanced Password Protocols withOptimal Online-OfflineProtection)”,ACM亚洲计算机和通信安全会议(ASIA CCS'16)(2016)中描述的协议相同或相似,前述协议的公开内容以全文引用的方式并入本文中。
在一些非限制性实施例或方面,第二秘密密钥(k2)可以用作FV的秘密密钥(K)(例如,
Figure BDA0003795763710000321
和/或
Figure BDA0003795763710000322
),如本文所述。
在一些非限制性实施例或方面,认证系统502可以充当不经意提取器,例如,其可以有效地认证用户,而不需要用户装置506a将生物特征数据(例如,清晰生物特征数据等)发送到认证系统502和/或不需要认证系统502将生物特征数据(例如,清晰生物特征数据、加密和/或屏蔽生物特征数据等)发送到用户装置506a。另外或替代地,认证系统502(例如,不经意提取器)可以是计算有效的,并且为基于生物特征的认证提供具体的安全性优点。例如,从安全存储的角度来看,认证系统502(例如,不经意提取器)可以与非不经意提取器(例如,模糊提取器)一样安全,和/或认证系统502(例如,不经意提取器)可以增强针对攻击(例如,生物特征数据恢复攻击、统计攻击、可重新使用性攻击等)的安全性。
在一些非限制性实施例或方面,用户装置506a和/或认证系统502可以与任何类型的生物特征数据的任何距离函数兼容,所述生物特征数据可以使用户装置506a和/或认证系统502灵活且适用于任何类型的生物特征(例如,指纹、虹膜扫描、面部识别等)。
在一些非限制性实施例或方面,用户装置506a和/或认证系统502可以不依赖于专用安全硬件来执行生物特征匹配(例如,不同于安全硬件模块清晰地存储生物特征模板和/或认证期间清晰地执行匹配的系统)。因此,用户装置506a和/或认证系统502可以不依赖于不能破坏安全硬件的假设和/或可信任此类硬件的制造商不会侵犯用户隐私的假设。此外,通过不依赖于专用安全硬件,用户装置506a和/或认证系统502可以容易地可扩展为例如具有多个用户装置和/或多个认证系统的环境,例如企业环境。
在一些非限制性实施例或方面,每当用户希望认证时,可能不需要用户装置506a是相同的装置(或有限的装置集)。例如,如果认证系统502与使用基于生物特征的认证来授予对建筑物的物理访问的公司相关联,并且用户是员工,则建筑物可以是地理分布的,因此,用户必须能够从不同的物理(和/或逻辑)进入点进行认证。因此,可以部署多个用户装置506a,和/或每个此类用户装置506a可以是无状态的。
现在参考图6A和6B,图6A和6B是用于认证的过程的非限制性实施例或方面的示例性实施方案600的图。
在一些非限制性实施例或方面,如图6A所示,可以使用密钥602和生物特征数据604生成至少一个多项式编码606,如本文所述。另外或替代地,可以生成多个随机数据点608,如本文所述。另外或替代地,可以基于多项式编码606和/或随机数据点608生成和/或存储模糊库辅助数据610,如本文所述。
在一些非限制性实施例或方面,如图6B所示,在接收到第二生物特征数据604a时,可以使用模糊库辅助数据610和第二生物特征数据604a生成至少一个候选多项式编码612,如本文所述。例如,可以使用候选多项式编码612生成重建的密钥,如本文所述。
参考图7,图7是根据当前公开主题的原理的生成模糊提取器辅助数据的过程的非限制性实施例或方面的示例性实施方案的屏幕截图。
在一些非限制性实施例或方面,可以基于多个参数生成模糊提取器辅助数据,如本文所述。例如,可以使用多项式次数702、字段大小704(例如,GF大小)、字段素数706、评估点(例如,生物特征数据点)的数目708、随机数据点(例如,无关紧要点)的数目710、其任何组合等生成辅助数据712,如本文所述。在一些非限制性实施例或方面,秘密密钥(K)的大小可以等于字段大小704和多项式次数702与一的和的乘积(例如,秘密密钥大小=字段大小*(次数+1))。
尽管已出于说明的目的而基于当前被认为是最实用和优选的实施例或方面详细描述了所公开主题,但应理解,此类细节仅用于所述目的,且所公开主题不限于所公开实施例或方面,而是相反,旨在涵盖在所附权利要求书的精神和范围内的修改和等效布置。例如,应理解,当前公开的主题尽可能地预期任何实施例或方面的一个或多个特征可以与任何其它实施例或方面的一个或多个特征组合。

Claims (19)

1.一种计算机实施的方法,包括:
用至少一个处理器接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;
用至少一个处理器基于所述第一秘密密钥和所述第一密码生成第二秘密密钥;
用至少一个处理器基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据;以及
用至少一个处理器存储所述模糊提取器辅助数据和所述第一秘密密钥。
2.根据权利要求1所述的方法,其中接收包括从用户装置接收所述密码数据和所述第一生物特征输入数据以及从服务器接收所述第一秘密密钥数据。
3.根据权利要求2所述的方法,其中所述用户装置包括可信登记装置,并且所述服务器包括认证服务器。
4.根据权利要求1所述的方法,还包括:
用至少一个处理器接收与尝试密码相关联的尝试密码数据;
用至少一个处理器基于所述第一秘密密钥和所述尝试密码生成重建的第二秘密密钥;
用至少一个处理器确定所述重建的第二秘密密钥与所述第二秘密密钥匹配;以及
基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而用至少一个处理器认证用户。
5.根据权利要求4所述的方法,其中生成所述重建的第二秘密密钥包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述重建的第二秘密密钥。
6.根据权利要求1所述的方法,还包括:
用至少一个处理器接收与第二生物特征输入相关联的第二生物特征输入数据;
用至少一个处理器基于所述第二生物特征输入和所述模糊提取器辅助数据生成重建的第二秘密密钥;
用至少一个处理器确定所述重建的第二秘密密钥与所述第二秘密密钥匹配;以及
基于确定所述重建的第二秘密密钥与所述第二秘密密钥匹配而用至少一个处理器认证用户。
7.根据权利要求6所述的方法,其中生成所述重建的第二秘密密钥包括使用模糊库打开器(FVOPEN)生成所述重建的第二秘密密钥。
8.根据权利要求7所述的方法,其中使用所述FVOPEN包括:
用至少一个处理器从所述第二生物特征输入中提取多个第二生物特征数据点;
用至少一个处理器传送所述多个第二生物特征数据点;
用至少一个处理器接收多个多项式编码,所述多个多项式编码中的每个相应多项式编码基于所述多个第二生物特征数据点中的相应第二生物特征数据点,其中所述模糊提取器辅助数据包括所述多个多项式编码;以及
用至少一个处理器基于所述多个多项式编码生成所述重建的第二秘密密钥。
9.根据权利要求1所述的方法,其中生成所述第二秘密密钥包括使用装置增强型密码认证密钥交换(DE-PAKE)生成所述第二秘密密钥。
10.根据权利要求1所述的方法,其中生成所述模糊提取器辅助数据包括使用模糊库生成器(FVGEN)生成所述模糊提取器辅助数据。
11.根据权利要求10所述的方法,其中使用所述FVGEN包括:
用至少一个处理器从所述第一生物特征输入中提取多个第一生物特征数据点;
用至少一个处理器生成多个随机数据点;
用至少一个处理器基于所述第二秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;
用至少一个处理器生成所述多个随机数据点中的每个随机数据点的随机编码;以及
用至少一个处理器将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集,
其中所述模糊提取器辅助数据包括所述编码集。
12.根据权利要求11所述的方法,其中使用所述FVGEN还包括:
用至少一个处理器组合所述多个第一生物特征数据点和所述多个随机数据点以形成第一数据点集;
用至少一个处理器基于阈值距离为所述第一数据点集中的每个相应数据点生成相应相邻数据点集;以及
将每个相应相邻数据点集存储为具有所述编码集中的每个相应数据点的元组。
13.根据权利要求11所述的方法,其中使用所述FVGEN还包括:
在存储包括所述编码集的所述模糊提取器辅助数据之前,用至少一个处理器排列所述编码集。
14.一种计算机实施的方法,包括:
用至少一个处理器接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;
用至少一个处理器从所述第一生物特征输入中提取多个第一生物特征数据点;
用至少一个处理器生成多个随机数据点;
用至少一个处理器基于所述第一秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;
用至少一个处理器生成所述多个随机数据点中的每个随机数据点的随机编码;
用至少一个处理器将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集;以及
用至少一个处理器将所述编码集存储为模糊提取器辅助数据。
15.根据权利要求14所述的方法,包括:
用至少一个处理器接收与第二生物特征输入相关联的第二生物特征输入数据;
用至少一个处理器从所述第二生物特征输入中提取多个第二生物特征数据点;
用至少一个处理器传送所述多个第二生物特征数据点;
用至少一个处理器接收多个编码,所述多个编码中的每个相应编码基于所述多个第二生物特征数据点中的相应第二生物特征数据点,其中所述模糊提取器辅助数据的所述编码集包括所述多个编码;
用至少一个处理器基于所述多个多项式编码生成重建的第一秘密密钥;
用至少一个处理器确定所述重建的第一秘密密钥与所述第一秘密密钥匹配;以及
基于确定所述重建的第一秘密密钥与所述第一秘密密钥匹配而用至少一个处理器认证用户。
16.一种系统,包括:
至少一个处理器;以及
包括指令的至少一个非瞬态计算机可读介质,所述指令指示所述至少一个处理器进行以下操作:
接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;
基于所述第一秘密密钥和所述第一密码生成第二秘密密钥;
基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据;以及
存储所述模糊提取器辅助数据和所述第一秘密密钥。
17.一种系统,包括:
至少一个处理器;以及
包括指令的至少一个非瞬态计算机可读介质,所述指令指示所述至少一个处理器进行以下操作:
接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;
从所述第一生物特征输入中提取多个第一生物特征数据点;
生成多个随机数据点;
基于所述第一秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;
生成所述多个随机数据点中的每个随机数据点的随机编码;
将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集;以及
将所述编码集存储为模糊提取器辅助数据。
18.一种计算机程序产品,所述计算机程序产品包括至少一个非瞬态计算机可读介质,所述至少一个非瞬态计算机可读介质包括一个或多个指令,所述一个或多个指令在由至少一个处理器执行时使所述至少一个处理器执行以下操作:
接收与第一密码相关联的第一密码数据、与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;
基于所述第一秘密密钥和所述第一密码生成第二秘密密钥;
基于所述第一生物特征输入和所述第二秘密密钥生成模糊提取器辅助数据;以及
存储所述模糊提取器辅助数据和所述第一秘密密钥。
19.一种计算机程序产品,所述计算机程序产品包括至少一个非瞬态计算机可读介质,所述至少一个非瞬态计算机可读介质包括一个或多个指令,所述一个或多个指令在由至少一个处理器执行时使所述至少一个处理器执行以下操作:
接收与第一生物特征输入相关联的第一生物特征输入数据以及与第一秘密密钥相关联的第一秘密密钥数据;
从所述第一生物特征输入中提取多个第一生物特征数据点;
生成多个随机数据点;
基于所述第一秘密密钥生成所述多个第一生物特征数据点中的每个第一生物特征数据点的多项式编码;
生成所述多个随机数据点中的每个随机数据点的随机编码;
将所述多个第一生物特征数据点中的每个第一生物特征数据点的所述多项式编码和所述多个随机数据点中的每个随机数据点的所述随机编码组合成编码集;以及
将所述编码集存储为模糊提取器辅助数据。
CN202180014487.7A 2020-02-14 2021-02-12 用于认证的方法、系统和计算机程序产品 Pending CN115280309A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202062976777P 2020-02-14 2020-02-14
US62/976,777 2020-02-14
PCT/US2021/017915 WO2021163532A1 (en) 2020-02-14 2021-02-12 Method, system, and computer program product for authentication

Publications (1)

Publication Number Publication Date
CN115280309A true CN115280309A (zh) 2022-11-01

Family

ID=77291878

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180014487.7A Pending CN115280309A (zh) 2020-02-14 2021-02-12 用于认证的方法、系统和计算机程序产品

Country Status (4)

Country Link
US (1) US20230131437A1 (zh)
EP (1) EP4104079A4 (zh)
CN (1) CN115280309A (zh)
WO (1) WO2021163532A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220311620A1 (en) * 2021-03-23 2022-09-29 Sap Se Encrypted handshake for trust validation between two applications

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170185761A1 (en) * 2014-03-31 2017-06-29 Wi-Lan Labs, Inc. System and method for biometric key management
US10594688B2 (en) * 2015-03-09 2020-03-17 Cross Match Technologies, Inc. Privacy-enhanced biometrics-secret binding scheme
US11171785B2 (en) * 2016-10-31 2021-11-09 Katholieke Universiteit Leuven Authentication method and system

Also Published As

Publication number Publication date
EP4104079A1 (en) 2022-12-21
EP4104079A4 (en) 2024-05-15
WO2021163532A1 (en) 2021-08-19
US20230131437A1 (en) 2023-04-27

Similar Documents

Publication Publication Date Title
US10616198B2 (en) Apparatus, system and method employing a wireless user-device
US9864987B2 (en) Account provisioning authentication
US20220360449A1 (en) Authentication system using secure multi-party computation
US8478990B2 (en) Mobile transaction methods and devices with three-dimensional colorgram tokens
US10848304B2 (en) Public-private key pair protected password manager
WO2019032113A1 (en) BIOMETRIC VERIFICATION METHOD USING A CERTIFICATION TOKEN
US10951609B2 (en) System to effectively validate the authentication of OTP usage
US20240015152A1 (en) Privacy-Preserving Key Generation in Biometric Authentication
ArunPrakash et al. Biometric encoding and biometric authentication (BEBA) protocol for secure cloud in m-commerce environment
US11423403B2 (en) Systems, methods, and computer program products for authorizing a transaction
US20230131437A1 (en) Method, system, and computer program product for authentication
EP3320664B1 (en) Method of authenticating communication of an authentication device and at least one authentication server using local factor
CN114424200A (zh) 用于安全地渲染敏感数据的方法、系统和计算机程序产品
Saharan et al. Issues and Advantages of Biometric In Online Payment of E-Commerce
CN115461710A (zh) 基于与发起用户相关联的图像和唯一标识符的注册用户的可信标识
CN115088003A (zh) 用于安全实时n方计算的系统、方法和计算机程序产品
Joseph et al. ACHIEVING PRIVACY PROTECTION OF MULTIFACTOR AUTHENTICATION IN CLOUD

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