CN114491501A - 用于保护密码登录的基于规则的过滤 - Google Patents
用于保护密码登录的基于规则的过滤 Download PDFInfo
- Publication number
- CN114491501A CN114491501A CN202111226099.3A CN202111226099A CN114491501A CN 114491501 A CN114491501 A CN 114491501A CN 202111226099 A CN202111226099 A CN 202111226099A CN 114491501 A CN114491501 A CN 114491501A
- Authority
- CN
- China
- Prior art keywords
- password
- computer
- user
- filter
- processors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
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/31—User authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24564—Applying rules; Deductive queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/102—Entity profiles
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
Abstract
在用于保护密码登录的基于规则的过滤系统的方法中,处理器接收用户设备上的密码输入。处理器确定密码是否需要过滤。响应于确定密码需要过滤,处理器基于过滤规则的集合从密码过滤字符以创建过滤的密码。处理器确定过滤的密码是否与存储的密码匹配。
Description
技术领域
本发明一般涉及密码认证的领域,更具体地涉及用于保护密码登录的基于规则的过滤。
背景技术
当涉及保护信息时,密码是网站和类似应用的最常用的认证形式。在注册时,用户创建唯一标识(ID)和密钥(通常是用户名和密码),然后将其安全地本地存储在设备(例如移动电话)上或网站的服务器上。理想地,用户是唯一知道其密码的人,使得他们是唯一能够访问账户的人。当用户重新输入他们的凭证时,对照存储的那些凭证检查它们,并且如果它们匹配,则验证用户。
发明内容
本发明的实施例的各方面公开了用于保护密码登录的基于规则的过滤的方法、计算机程序产品和计算机系统。处理器接收用户设备上的密码输入。处理器确定密码是否需要过滤。响应于确定密码需要过滤,处理器基于过滤规则的集合从密码过滤字符以创建过滤的密码。处理器确定过滤的密码是否与存储的密码匹配。
在本发明的实施例的一些方面中,处理器通过对密码中的字符的数量进行计数来确定密码是否需要过滤;将密码中的字符的数量与存储的密码中的字符的第二数量进行比较;以及响应于确定在密码中存在比在存储的密码中更多的字符,确定密码需要过滤。
在本发明的实施例的一些方面中,过滤规则的集合包括至少一个正则表达式形式的规则。
在本发明的实施例的一些方面中,响应于确定过滤的密码与存储的密码匹配,处理器允许用户设备的用户登录。
在本发明的实施例的一些方面中,响应于用户设备的用户选择加入基于规则的过滤系统,处理器请求用户输入过滤规则的集合。处理器从用户设备接收过滤规则的集合。处理器将过滤规则的集合存储在用户的用户简档中。
在本发明的实施例的一些方面中,过滤规则的集合中的一个规则是定义要从密码中过滤掉的特定字符的正则表达式。
在本发明的实施例的一些方面中,过滤规则的集合中的一个规则是定义当连续字符集合相加达到预定义的和时,从密码中过滤掉连续字符集合的数学规则的正则表达式。
附图说明
图1是示出根据本发明的实施例的分布式数据处理环境的功能框图;
图2是描述根据本发明的实施例的用于配置密码过滤程序的过滤规则的集合的密码过滤程序的配置组件的操作步骤的流程图;
图3是描述根据本发明的实施例的用于执行基于规则的过滤以保护密码登录的密码过滤程序的登录组件的操作步骤的流程图;以及
图4描绘了根据本发明的实施例的图1的分布式数据处理环境的计算设备的组件的框图。
具体实施方式
本发明的实施例认识到,许多人必须在各种情况下使用密码来认证他们自己,例如,在解锁电话、门、膝上型计算机、智能电话上的应用时;当使用ATM时;等等。密码认证被认为是用于认证的较弱方法之一,其中肩窥攻击(shoulder surfing attack)是许多已知问题之一。当密码登录在公共场所完成时,出现肩窥攻击,并且涉及陌生人字面地窥视用户的肩膀以便获得用户的密码以获得对用户敏感数据的访问。由于大多数用户使用短而容易的密码,陌生人可以容易地记住该密码。众所周知,密码越长,密码就变得越强。更具体地说,密码越长,即使陌生人肩窥了用户输入他们的密码,也越难再现密码。
本发明的实施例认识到需要利用这种公知常识,但是采取进一步的步骤,该步骤利用附加参数来降低陌生人在肩窥之后能够记住用户的密码的风险,并且因此总体上增加密码认证安全性。本发明的实施例提供了一种基于规则的过滤机制,其允许在用户输入密码时添加在认证过程中未被考虑的伪字符。基于配置规则,用户将能够添加他们想要的那么多的伪字符,并且因此用户能够隐藏真实的密码。本发明的实施例提供了一种基于预先配置的过滤规则从接收到的密码中过滤掉伪字符的程序。
如本文所使用的,术语“真实密码”是指用户在针对各种情况的设置期间已经设置为其密码的密码,例如,针对智能电话解锁密码、智能门小键盘组合、膝上型计算机解锁密码、智能电话密码上的应用、ATM pin等的设置。如本文所使用的,术语“伪密码”是指用户在登录组件期间输入的密码,其中伪密码包括混合到真实密码中的“伪”字符,其仅用作甩开任何肩窥者的支撑。如本文所使用的,术语“过滤的密码”是指在密码过滤程序已经将过滤规则的集合应用于用户在登录组件期间输入的密码之后的密码,其中已经从登录期间输入的原始密码中移除字符以留下过滤的密码,以与真实密码进行比较并允许登录。
本发明的实施例的实现可以采取各种形式,并且随后参考附图讨论示例性实现细节。
图1是示出根据本发明一个实施例的分布式数据处理环境(通常指定为100)的功能框图。如本文所使用的,术语“分布式”描述了包括作为单个计算机系统一起操作的多个物理上不同的设备的计算机系统。图1仅提供了一种实现的图示,并且不暗示对其中可实现不同实施例的环境的任何限制。本领域技术人员可以对所描述的环境进行许多修改,而不偏离权利要求所陈述的本发明的范围。
分布式数据处理环境100包括通过网络105互连的服务器110和用户计算设备120。在一些实施例(未示出)中,服务器110和用户计算设备120的组件在同一设备上运行,使得在那些实施例中仅存在例如用户计算设备120。网络105可以是例如电信网络、局域网(LAN)、诸如因特网的广域网(WAN)或这三者的组合,并且可以包括有线、无线或光纤连接。网络105可以包括能够接收和发送数据、语音和/或视频信号的一个或多个有线和/或无线网络,所述数据、语音和/或视频信号包括多媒体信号,包括语音、数据和视频信息。通常,网络105可以是支持服务器110、用户计算设备120和分布式数据处理环境100内的其他计算设备(未示出)之间的通信的连接和协议的任何组合。
服务器110可以是独立的计算设备、管理服务器、web服务器、移动计算设备、或能够接收、发送和处理数据的任何其他电子设备或计算系统。在其他实施例中,服务器110可以表示利用多个计算机作为服务器系统的服务器计算系统,诸如在云计算环境中。在另一实施例中,服务器110可以是膝上型计算机、平板计算机、上网本计算机、个人计算机(PC)、台式计算机、个人数字助理(PDA)、智能电话、或能够经由网络105与分布式数据处理环境100内的用户计算设备120和其他计算设备(未示出)通信的任何可编程电子设备。在另一个实施例中,服务器110表示利用集群计算机和组件(例如,数据库服务器计算机、应用服务器计算机等)的计算系统,当在分布式数据处理环境100内访问时,集群计算机和组件充当单个无缝资源池。服务器110包括密码过滤程序112和数据库114。服务器110可以包括内部和外部硬件组件,如参考图4进一步详细描绘和描述的。
密码过滤程序112操作以执行基于规则的过滤,以保护密码登录。在所描述的实施例中,密码过滤程序112是独立的程序。在另一个实施例中,密码过滤程序112可以集成到另一个软件产品(诸如密码认证引擎)中。在实施例中,用户选择加入密码过滤程序112的使用,并完成具有密码过滤程序112的配置组件,以建立过滤规则的集合和/或设置真实密码。密码过滤程序112的配置组件将参照图2作进一步的描述,密码过滤程序112的主要登录组件,基于在用于保护密码登录的配置功能期间建立的过滤规则的集合执行基于规则的过滤,将参照图3作进一步的描述。
数据库114作为由密码过滤程序112接收、使用和/或输出的数据的储存库。接收、使用和/或生成的数据可以包括但不限于用户存储的真实密码;用户输入的伪密码;在登录功能期间要应用的过滤规则的集合;将过滤规则的集合应用于伪密码之后生成的过滤的密码;以及由密码过滤程序112接收、使用和/或输出的任何其他数据。数据库114可以用能够存储可由服务器110访问和利用的数据和配置文件的任何类型的存储设备来实现,诸如硬盘驱动器、数据库服务器或闪存。在实施例中,数据库114由密码过滤程序112访问以存储和/或访问数据。在所描绘的实施例中,数据库114驻留在服务器110上。在另一实施例中,数据库114可以驻留在另一计算设备、服务器、云服务器上,或者分布在分布式数据处理环境100内的别处的多个设备(未示出)上,只要密码过滤程序112能够访问数据库114。
本发明可以包含各种可访问的数据源,诸如数据库114,其可以包括个人和/或机密的公司数据、内容或用户希望不被处理的信息。处理是指任何操作,自动的或未自动的,或操作集合,诸如收集、记录、组织、构造、存储、适配、改变、检索、咨询、使用、通过传输公开、传播、或以其他方式使个人和/或机密公司数据可用、组合、限制、擦除或破坏。密码过滤程序112允许对个人数据进行授权和安全的处理。
密码过滤程序112提供通知的允诺,其中通知个人和/或机密公司数据的收集,允许用户选择加入处理个人和/或机密公司数据或选择退出处理个人和/或机密公司数据。允诺可以采取几种形式。选择加入允诺可以强制用户在个人和/或机密公司数据被处理之前采取肯定动作。或者,选择退出允诺可强制用户采取肯定动作以在个人和/或机密公司数据被处理之前防止处理个人和/或机密公司数据。密码过滤程序112提供关于个人和/或机密公司数据以及处理的性质(例如,类型、范围、目的、持续时间等)的信息。密码过滤程序112向用户提供所存储的个人和/或机密公司数据的副本。密码过滤程序112允许纠正或完成不正确的或不完整的个人和/或机密的公司数据。密码过滤程序112允许直接(immediate)删除个人和/或机密的公司数据。
用户计算设备120作为与用户相关联的计算设备来操作,该用户可以通过用户接口,例如用户接口122来选择加入密码过滤程序112。应当理解,用户计算设备120表示选择加入对过滤程序112进行编程的用户,并且在其他实施例中,分布式数据处理环境100可以包括选择加入的任意数量的用户计算设备。在所描绘的实施例中,用户计算设备120包括用户接口122的实例。在实施例中,用户计算设备120可以是膝上型计算机、平板计算机、智能电话、智能手表、智能扬声器、智能眼镜、可穿戴计算机或能够经由网络105与分布式数据处理环境100内的各种组件和设备通信的任何可编程电子设备。通常,用户计算设备120表示能够执行机器可读程序指令并经由诸如网络105的网络与分布式数据处理环境100内的其他计算设备(未示出)通信的一个或多个可编程电子设备或可编程电子设备的组合。用户计算设备120可以包括内部和外部硬件组件,如参考图4进一步详细描绘和描述的。
用户接口122提供服务器110上的密码过滤程序112和用户计算设备120的用户之间的接口。在一个实施例中,用户接口122是移动应用软件。移动应用软件或“app”是被设计成在智能电话、平板计算机和其他移动设备上运行的计算机程序。在一个实施例中,用户接口122可以是图形用户接口(GUI)或web用户接口(WUI),并且可以显示文本、文档、web浏览器窗口、用户选项、应用接口和操作的指令,并且包括程序呈现给用户的信息(诸如图形、文本和声音)以及用户用来控制程序的控制序列。用户接口122使得用户计算设备120的用户能够设置真实密码、建立过滤规则的集合、以及输入要基于过滤规则的集合来过滤的伪密码。此外,用户接口122使得用户计算设备120的用户能够选择进入或选择退出密码过滤程序112。
图2是描述根据本发明的实施例的图1的分布式数据处理环境100内的服务器110上的密码过滤程序112的配置组件的操作步骤的流程图200。在一个实施例中,密码过滤程序112从用户接收选择加入的请求,请求用户输入过滤规则的集合,接收过滤规则的集合,并利用过滤规则的集合为用户创建用户简档。应当理解,图2中所示的过程示出了密码过滤程序112的一个可能的迭代,其可以对选择进入密码过滤程序112的每个用户重复。
在步骤210中,密码过滤程序112从用户接收选择加入的请求。在实施例中,密码过滤程序112从用户接收选择加入密码过滤程序112的请求。例如,用户计算设备120的用户通过用户计算设备120的用户接口122发送选择加入密码过滤程序112的请求。
在步骤220,密码过滤程序112从用户请求过滤规则的集合。在实施例中,密码过滤程序112从用户请求信息。在实施例中,响应于密码过滤程序112从用户接收到选择加入的请求,密码过滤程序112从用户请求过滤规则的集合。通常,如果过滤规则匹配或将不正确地修改真实密码,则该过滤规则是无效的,并且将被密码过滤程序112拒绝。
从用户请求的过滤规则的集合可包括正则表达式的形式的一般化规则。正则表达式是定义具有特定语法的搜索模式的字符的序列。然后,字符串搜索算法使用搜索模式来对字符串进行“查找”或“查找并替换”操作。换句话说,正则表达式是用于表示匹配文本的模式的特定的标准文本句法。由于正则表达式允许表达任何可能的匹配模式,因此可以定制和一般化作为正则表达式的过滤规则的集合,如用户所希望的那样多。例如,密码过滤程序112从正则表达式(?=^ABC)(?=EFG$)的用户接收规则,其将匹配以ABC开头并以EFG结尾的字符串。在另一个例子中,密码过滤程序112从正则表达式a(bc){2,5}的用户接收规则,其将匹配具有“a”后跟序列“bc”的两个到五个副本的字符串。
从用户请求的过滤规则的集合还可以包括定义要移除的连续字符集合的正则表达式规则,其中连续字符集合可以在接收到的密码中出现一次或多次,并且其中该规则具有定义的开始字符和定义的结束字符,该开始字符不同于真实密码中的所有字符。例如,如果真实密码是“HelloWorld”并且规则过滤掉以“t”开始并以“z”结束的连续字符集合,则当用户输入伪密码“HeltenfkcozloWtqwezold”时,将过滤掉连续集合“Tenfkoz”和“tqwez”。
从用户请求的过滤规则的集合还可以包括定义总是要被过滤掉的特定字符的正则表达式规则。例如,用户可以定义字符“z”总是从用户输入的伪密码中被过滤掉。
从用户请求的过滤规则的集合还可以包括应用于字符的序列的正则表达式数学规则,即,用户可以定义如果连续字符集合相加达到某一总和,则可以从伪密码中过滤掉该连续字符集的数学规则。例如,密码过滤程序112从用户接收规则,其中如果三个数字的序列总计达20,则该三个数字的序列将从任何输入的伪密码中被过滤掉。
在步骤230,密码过滤程序112接收过滤规则的集合。在实施例中,密码过滤程序112从用户接收包括上述规则中的一个或多个的过滤规则的集合。在实施例中,响应于密码过滤程序112从用户请求过滤规则的集合,密码过滤程序112从用户接收过滤规则的集合。
在步骤240中,密码过滤程序112基于过滤规则的集合创建用户简档。在实施例中,密码过滤程序112为用户创建用户简档,并且包括从用户接收的过滤规则的集合。在实施例中,密码过滤程序将用户简档和/或过滤规则的集合存储在数据库中,例如数据库114中。在实施例中,响应于密码过滤程序112从用户接收到过滤规则的集合,密码过滤程序112为用户创建用户简档,并且包括从用户接收到的过滤规则的集合。该用户简档由密码过滤程序112用来调用过滤规则的集合并将其应用于用户在用户计算设备(例如,用户计算设备120)上输入的密码。
图3是描述根据本发明的实施例的图1的分布式数据处理环境100内的服务器110上的密码过滤程序112的登录组件的操作步骤的流程图300。在实施例中,密码过滤程序112接收用户输入的密码,确定密码是否需要过滤,响应于确定密码确实需要过滤,基于来自用户简档的过滤规则的集合从密码中过滤字符,并且确定过滤的密码是否匹配真实密码。应当理解,图3中所示的过程示出了密码过滤程序112的一个可能的迭代,其可以对选择加入密码过滤程序112的用户输入的每个密码重复。
在步骤310中,密码过滤程序112接收用户输入的密码。在实施例中,密码过滤程序112接收由用户输入的伪密码作为用于登录的密码。例如,密码过滤程序112接收由用户通过用户计算设备120的用户接口122输入的密码“CliftngfdgzonPanzork”。
在判决320中,密码过滤程序112确定密码是否需要过滤。本质上,密码过滤程序112确定用户是输入了伪密码、真实密码还是不正确的密码。在实施例中,密码过滤程序112基于具有比真实密码更多的字符的密码来确定密码需要过滤。在实施例中,响应于密码过滤程序112接收到用户输入的密码,密码过滤程序112确定密码是否需要过滤。在实施例中,如果密码与真实密码匹配,如果密码具有比真实密码少的字符,或者如果密码具有与真实密码相等的字符数但与真实密码不匹配,则密码过滤程序112确定密码不需要过滤。
如果密码过滤程序112确定由于密码与真实密码相匹配而不需要过滤密码(判决320,“否,匹配真实密码”分支),则密码过滤程序112前进到步骤350,以允许登录。如果密码过滤程序112确定密码不需要过滤,因为密码具有比实际密码更少的字符,或者密码具有与实际密码相等的字符数但不匹配实际密码(判决320,“否,比真实密码少的字符或与真实密码相同数量的字符,但与真实密码不匹配”分支),则密码过滤程序112前进到步骤360,不允许登录。如果密码过滤程序112确定由于密码具有比实际密码更多的字符而密码确实需要过滤(判决320,“是”分支),则密码过滤程序112前进到步骤330,以基于过滤规则的集合过滤掉字符。
在步骤330中,密码过滤程序112基于过滤规则的集合过滤掉密码的字符。在实施例中,密码过滤程序112基于存储在用户的用户简档中的过滤规则的集合来过滤掉伪密码的字符。例如,密码过滤程序112从存储在数据库114中的用户简档中检索过滤规则的集合,并将过滤规则的集合中的每个规则应用于密码,并基于过滤规则的集合过滤掉字符。在实施例中,响应于密码过滤程序112确定密码需要过滤,密码过滤程序112基于过滤规则的集合过滤掉密码的字符。
在判决340,密码过滤程序112确定过滤的密码是否与真实密码匹配。在实施例中,密码过滤程序112将过滤的密码与真实密码进行比较,以确定过滤的密码是否与真实密码匹配。如果密码过滤程序112确定过滤的密码与真实密码不匹配(判决340,否分支),则密码过滤程序112前进到不允许登录的步骤360。在步骤360中,密码过滤程序112不允许登录。在一些实施例中,密码过滤程序112通知用户密码不正确,并请求用户重新输入密码。如果密码过滤程序112确定过滤的密码与真实密码匹配(判决340,是分支),则密码过滤程序112前进到允许登录的步骤350。在步骤350中,密码过滤程序112使用户能够登录。
图4描绘了根据本发明的实施例的适合于图1的分布式数据处理环境100内的服务器110和/或用户计算设备120的计算设备400的组件的框图。应当理解,图4仅提供了一实现的说明,而不暗示对其中可实现不同实施例的环境的任何限制。可以对所描述的环境进行许多修改。
计算设备400包括通信结构402,其提供高速缓存416、存储器406、持久存储装置408、通信单元410和输入/输出(I/O)接口412之间的通信。通信结构402可以用被设计成在处理器(诸如微处理器、通信和网络处理器等)、系统存储器、外围设备和系统内的任何其它硬件组件之间传递数据和/或控制信息的任何体系结构来实现。例如,通信结构402可以用一个或多个总线或纵横开关来实现。
存储器406和持久存储装置408是计算机可读存储介质。在该实施例中,存储器406包括随机存取存储器(RAM)。通常,存储器406可以包括任何合适的易失性或非易失性计算机可读存储介质。高速缓存416是通过保存最近访问的数据和来自存储器406的接近访问的数据的数据来增强计算机处理器404的性能的快速存储器。
程序可以存储在持久存储装置408和存储器406中,以便由一个或多个相应的计算机处理器404经由高速缓存416执行和/或访问。在实施例中,持久存储装置408包括磁硬盘驱动器。作为磁硬盘驱动器的替代或补充,持久存储装置408可包括固态硬盘驱动器、半导体存储设备、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、闪存或能够存储程序指令或数字信息的任何其它计算机可读存储介质。
持久存储装置408所使用的介质也可以是可移动的。例如,可移动硬盘驱动器可以用于持久存储装置408。其它示例包括光盘和磁盘、拇指驱动器和智能卡,它们被插入到驱动器中以便传送到也是持久存储装置408的一部分的另一计算机可读存储介质上。
在这些示例中,通信单元410提供与其他数据处理系统或设备的通信。在这些示例中,通信单元410包括一个或多个网络接口卡。通信单元410可以通过使用物理和无线通信链路中的一种或两种来提供通信。程序可以通过通信单元410下载到持久存储装置408。
I/O接口412允许与可以连接到服务器110和用户计算设备120的其它设备输入和输出数据。例如,I/O接口412可以提供到诸如键盘、小键盘、触摸屏和/或一些其它合适的输入设备的外部设备418的连接。外部设备418还可以包括便携式计算机可读存储介质,诸如,例如拇指驱动器、便携式光盘或磁盘、以及存储器卡。用于实践本发明的实施例的软件和数据可以存储在这样的便携式计算机可读存储介质上,并且可以经由I/O接口412加载到持久存储装置408上。I/O接口412也连接到显示器420。
显示器420提供向用户显示数据的机制,并且可以是例如计算机监视器。
本文描述的程序是基于在本发明的特定实施例中实现的应用来标识的。然而,应当理解,本文的任何特定程序术语仅是为了方便而使用,因此本发明不应当限于仅在由这样的术语标识和/或暗示的任何特定应用中使用。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(或多个介质),所述计算机可读程序指令用于使处理器执行本发明的各方面。
计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式光盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、诸如上面记录有指令的打孔卡或凹槽中的凸起结构的机械编码装置,以及上述的任何适当组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤线缆的光脉冲)、或通过导线传输的电信号。
本文描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络,例如因特网、局域网、广域网和/或无线网络,下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器相关指令、微代码、固件指令、状态设置数据,或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言(例如Smalltalk、C++等)以及常规的过程式编程语言(例如“C”编程语言或类似的编程语言)。计算机可读程序指令可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为独立的软件包执行,部分在用户的计算机上并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(LAN)或广域网(WAN),或者可以连接到外部计算机(例如,使用因特网服务提供商通过因特网)。在一些实施例中,为了执行本发明的各方面,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化。
本文参考根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各方面。将理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令来实现。
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令还可以存储在计算机可读存储介质中,其可以引导计算机、可编程数据处理装置和/或其他设备以特定方式工作,使得其中存储有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。
计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实施方案中,框中所提及的功能可不按图中所提及的次序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作或执行专用硬件和计算机指令的组合的专用的基于硬件的系统来实现。
已经出于说明的目的给出了本发明的各种实施例的描述,但是其不旨在是穷尽的或限于所公开的实施例。在不背离本发明的范围和精神的情况下,许多修改和变化对于本领域的普通技术人员来说是显而易见的。选择本文所使用的术语是为了最好地解释实施例的原理、实际应用或对市场上存在的技术改进,或为了使本领域的其他普通技术人员能够理解本文所公开的实施例。
Claims (9)
1.一种用于保护密码登录的基于规则的过滤系统的计算机实现的方法,所述计算机实现的方法包括:
由一个或多个处理器接收用户设备上的密码输入;
由所述一个或多个处理器确定所述密码是否需要过滤;
响应于确定所述密码需要过滤,由所述一个或多个处理器基于过滤规则的集合从所述密码过滤字符以创建过滤的密码;以及
由所述一个或多个处理器确定所述过滤的密码是否匹配存储的密码。
2.根据权利要求1所述的计算机实现的方法,其中,确定所述密码是否需要过滤还包括:
由所述一个或多个处理器对所述密码中的字符的数量进行计数;
由所述一个或多个处理器将所述密码中的字符的数量与所述存储的密码中的字符的第二数量进行比较;以及
响应于确定所述密码中存在比所述存储的密码中更多的字符,由所述一个或多个处理器确定所述密码需要过滤。
3.根据权利要求1所述的计算机实现的方法,其中,过滤规则的集合包括至少一个正则表达式。
4.根据权利要求1所述的计算机实现的方法,还包括:
响应于确定所述过滤的密码与所述存储的密码匹配,通过所述一个或多个处理器允许所述用户设备的用户登录。
5.根据权利要求1所述的计算机实现的方法,还包括:
响应于所述用户设备的用户选择加入所述基于规则的过滤系统,由所述一个或多个处理器请求所述用户输入过滤规则的集合;
由所述一个或多个处理器从所述用户设备接收过滤规则的集合;以及
由所述一个或多个处理器将过滤规则的集合存储在所述用户的用户简档中。
6.根据权利要求1所述的计算机实现的方法,其中,过滤规则的集合中的一个规则定义要从所述密码中过滤掉的特定字符。
7.根据权利要求1所述的计算机实现的方法,其中,过滤规则的集合中的一个规则定义当连续字符集合相加达到预定义的总和时从所述密码中过滤掉所述连续字符集合的数学规则。
8.一种用于保护密码登录的基于规则的过滤系统的计算机程序产品,所述计算机程序产品包括:
一个或多个计算机可读存储介质和共同存储在所述一个或多个计算机可读存储介质上的程序指令,所存储的程序指令包括分别用于执行根据权利要求1-7中的任一项所述的方法的步骤的程序指令。
9.一种用于保护密码登录的基于规则的过滤系统的计算机系统,所述计算机系统包括:
一个或多个计算机处理器;
一个或多个计算机可读存储介质;
共同存储在所述一个或多个计算机可读存储介质上以供所述一个或多个计算机处理器中的至少一个计算机处理器执行的程序指令,所存储的程序指令包括分别用于执行根据权利要求1-7中任一项所述的方法的步骤的程序指令。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/078,149 US11757865B2 (en) | 2020-10-23 | 2020-10-23 | Rule-based filtering for securing password login |
US17/078,149 | 2020-10-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114491501A true CN114491501A (zh) | 2022-05-13 |
Family
ID=78497883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111226099.3A Pending CN114491501A (zh) | 2020-10-23 | 2021-10-21 | 用于保护密码登录的基于规则的过滤 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11757865B2 (zh) |
JP (1) | JP2022069400A (zh) |
CN (1) | CN114491501A (zh) |
DE (1) | DE102021123288A1 (zh) |
GB (1) | GB2600555B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200389443A1 (en) * | 2019-06-10 | 2020-12-10 | Microsoft Technology Licensing, Llc | Authentication with random noise symbols and pattern recognition |
US11645381B2 (en) * | 2020-12-11 | 2023-05-09 | International Business Machines Corporation | User configured one-time password |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002229959A (ja) | 2001-02-06 | 2002-08-16 | Nippon Signal Co Ltd:The | パスワード入力装置 |
CA2574983A1 (en) | 2007-01-05 | 2008-07-05 | Paul W. Simmons | A method and device for password pattern randomization |
EP2184696A1 (en) | 2008-10-31 | 2010-05-12 | Kirill Kretov | Method and module for protecting a password authorizing a user access to a computer application |
US8539247B2 (en) * | 2010-06-22 | 2013-09-17 | Cisco Technology, Inc. | Password checking |
JP2012133717A (ja) | 2010-12-24 | 2012-07-12 | Panasonic Corp | パスワード入力認証装置及びこれを用いた携帯端末装置 |
US9030293B1 (en) | 2012-05-04 | 2015-05-12 | Google Inc. | Secure passcode entry |
US8863260B2 (en) | 2012-06-07 | 2014-10-14 | International Business Machines Corporation | Enhancing password protection |
WO2014052474A1 (en) | 2012-09-25 | 2014-04-03 | Google Inc. | Securing personal identification numbers for mobile payment applications by combining with random components |
JP5651742B1 (ja) | 2013-06-26 | 2015-01-14 | 株式会社三井住友銀行 | パスワードの入力方法、入力端末、及び入力システム |
EP2966585B1 (en) | 2014-07-11 | 2019-09-11 | Unify GmbH & Co. KG | Method and system for initiating a login of a user |
US10395065B2 (en) * | 2015-12-28 | 2019-08-27 | International Business Machines Corporation | Password protection under close input observation based on dynamic multi-value keyboard mapping |
KR101769119B1 (ko) | 2016-02-16 | 2017-08-17 | 주식회사 프로젝트사공구 | 정크 데이터 일치여부를 이용한 사용자 인증 시스템 및 방법 |
JP6551350B2 (ja) * | 2016-09-26 | 2019-07-31 | 京セラドキュメントソリューションズ株式会社 | 認証装置 |
US10956558B2 (en) | 2018-10-31 | 2021-03-23 | Microsoft Technology Licensing, Llc | Methods for increasing authentication security |
US11361068B2 (en) * | 2019-11-27 | 2022-06-14 | Dell Products L.P. | Securing passwords by using dummy characters |
-
2020
- 2020-10-23 US US17/078,149 patent/US11757865B2/en active Active
-
2021
- 2021-09-08 DE DE102021123288.0A patent/DE102021123288A1/de active Pending
- 2021-10-01 GB GB2114078.5A patent/GB2600555B/en active Active
- 2021-10-04 JP JP2021163473A patent/JP2022069400A/ja active Pending
- 2021-10-21 CN CN202111226099.3A patent/CN114491501A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
GB202114078D0 (en) | 2021-11-17 |
US11757865B2 (en) | 2023-09-12 |
GB2600555B (en) | 2023-01-25 |
US20220131849A1 (en) | 2022-04-28 |
DE102021123288A1 (de) | 2022-04-28 |
GB2600555A (en) | 2022-05-04 |
JP2022069400A (ja) | 2022-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10708055B2 (en) | Single-input multifactor authentication | |
US9906520B2 (en) | Multi-user authentication | |
US10171457B2 (en) | Service provider initiated additional authentication in a federated system | |
US10554641B2 (en) | Second factor authorization via a hardware token device | |
US11627129B2 (en) | Method and system for contextual access control | |
US20150220718A1 (en) | Method for web service user authentication | |
US10673846B2 (en) | Pressure-based authentication | |
US11122048B2 (en) | User profile access from engaging applications with privacy assurance associated with an API | |
US20230155818A1 (en) | Systems and methods for non-deterministic multi-party, multi-user sender-receiver authentication and non-repudiatable resilient authorized access to secret data | |
US10140438B2 (en) | Hidden separation and access to data on a device | |
CN114491501A (zh) | 用于保护密码登录的基于规则的过滤 | |
US9569610B2 (en) | Managing a password | |
US11178154B1 (en) | Developing least-privilege permission sets based on global optimization | |
US11010466B2 (en) | Keyboard injection of passwords | |
CN116029387A (zh) | 自动资源访问策略生成和实施 | |
US20230018027A1 (en) | Virtual keyboard captcha | |
US20220012327A1 (en) | Password strength | |
US20150007293A1 (en) | User authentication utilizing patterns | |
US11888988B2 (en) | Two-factor authentication based on computation method to derive proxy password | |
US11687630B2 (en) | Secured authentication techniques with dynamism and connected overlapping inputs from various sources | |
US11657141B2 (en) | Providing an indication of user-tailored password strength | |
US10652241B1 (en) | Dynamic and secure coupling between auxiliary devices and endpoint resources | |
Mohan et al. | Jeev Time: Secure Authentication Using Integrated Face Recognition in Social Media Applications | |
Ekundayo et al. | A TWO FACTOR AUTHENTICATION PROTECTIVE SYSTEM FOR MANAGING USER LOGIN CREDENTIALS |
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 |