用于一次性密码认证的系统和方法
文献发布时间:2023-06-19 11:14:36
本申请要求于2018年6月18日提交的美国临时专利申请No.62/686,435的权益,其全部内容通过引用合并于此。
背景技术
TOTP令牌是基于时间的一次性密码安全设备,银行和其他实体可以使用该设备来认证令牌的用户。该设备不能用于识别位置。
发明内容
本公开提供用于一次性密码(one-time password,OTP)认证的系统和方法。例如,这种OTP认证可以是基于时间的一次性密码(time-based one-time password,TOTP)认证。固定位置的TOTP设备可以被配置为仅当固定到家庭或商业位置的永久性固定装置时才操作。
在一方面,本公开提供了一种用于电子设备的当前位置的一次性密码(OTP)认证的电子设备,该电子设备包括:壳体100中的电源105;所述壳体100中的处理器110;条带115,所述条带115包括第一端、第二端和从所述条带的第一端延伸到第二端并在所述壳体100的外部形成外部环120的第一导线,其中所述第一导线在所述电源105与所述处理器110之间建立第一电连接125,所述壳体100中的存储器135;和所述壳体100内的第二电连接140,所述第二电连接可操作地连接到所述处理器110和所述存储器135,一旦建立所述第一电连接,仅当所述处理器110通过所述第一电连接125连接到所述电源105而没有中断时,所述处理器110被配置为在第一时间生成用于所述电子设备的当前位置的认证的第一一次性密码(OTP)。
在一些实施方式中,所述OTP认证是基于时间的一次性密码(TOTP)认证,并且其中所生成的OTP是基于时间的一次性密码(TOTP)。在一些实施方式中,所述条带还包括接地导线,该接地导线从所述电源到接地导体130沿着外部环与所述第一导线基本重合并且可与接地导体130连接。
在一些实施方式中,所述壳体包括不超过约12英寸,不超过约10英寸,不超过约8英寸,不超过约6英寸,不超过约3英寸,不超过约2英寸,或不超过约1英寸的最大尺寸。在一些实施方式中,所述壳体包括刚性材料。
在一些实施方式中,所述电源包括电池。在一些实施方式中,所述电池具有不大于9伏(V),不大于6V,不大于4.5V,不大于3V或不大于1.5V的电压。在一些实施方式中,所述电池具有不超过约500毫安时(mAh),不超过约400mAh,不超过约300mAh,不超过约200mAh,不超过约100mAh或不超过约50mAh的容量。
在一些实施方式中,所述外部环包括不超过约3英尺,不超过约2英尺,不超过约18英寸,不超过约12英寸,不超过约10英寸,不超过约8英寸,不超过约6英寸,不超过约4英寸,不超过约3英寸,不超过约2英寸,或不超过约1英寸的长度。在一些实施方式中,处理器还被配置为将所述OTP存储在存储器中。在一些实施方式中,所述外部环可附接到对象或永久物体或位置。在一些实施方式中,电子设备还包括显示器,其中所述显示器被配置为显示所述OTP。
在一些实施方式中,OTP包括条形码或数字码。在一些实施方式中,OTP包括条形码和数字码。在一些实施方式中,条形码包括QR码。在一些实施方式中,条形码包括UPC条形码。在一些实施方式中,数字码包括六个数字。
在一些实施方式中,基于电子设备的唯一标识符来生成OTP。在一些实施方式中,处理器还被配置为在生成先前的TOTP之后以多个固定时间间隔中的每一个生成多个后续的TOTP。在一些实施方式中,多个固定时间间隔中的每一个是约60秒。
在一些实施方式中,以与所述第一时间相对应的时间戳来处理所述TOTP,以生成所述TOTP的认证。在一些实施方式中,以所述时间戳处理所述TOTP包括:向所述TOTP和所述时间戳应用认证算法,其中所述认证算法包括以基于哈希的消息认证码(HMAC)为基础的一次性密码算法(HOTP)。在一些实施方式中,所述认证算法包括具有用于代替递增计数器的时间戳的HOTP。
在另一方面,本公开提供了一种用于通过电子设备认证用户的当前位置的方法,包括:使用通过第一电连接125可操作地连接到所述电子设备的电源105以及通过第二电连接140可操作地连接到所述电子设备的存储器135的所述电子设备的处理器110,一旦建立所述第一电连接,仅当所述处理器110通过所述第一电连接125连接到所述电源105而没有中断时,在第一时间生成第一一次性密码(OTP),以认证所述用户的当前位置,其中所述处理器110、所述电源105、所述第一电连接125、所述存储器130和所述第二电连接135被所述电子设备的壳体100包封,其中所述电子设备的条带115包括第一端、第二端和从所述条带的第一端延伸到第二端并在所述壳体100的外部形成外部环120的第一导线,所述第一导线在所述电源105与所述处理器110之间建立所述第一电连接125。
在一些实施方式中,所述OTP认证是基于时间的一次性密码(TOTP)认证,并且其中所生成的OTP是基于时间的一次性密码(TOTP)。在一些实施方式中,所述条带还包括接地导线,该接地导线沿着从所述电源到接地导体130的外部环与所述第一导线基本重合并且可与接地导体130连接。
在一些实施方式中,所述壳体包括不超过约12英寸,不超过约10英寸,不超过约8英寸,不超过约6英寸,不超过约3英寸,不超过约2英寸,或不超过约1英寸的最大尺寸。在一些实施方式中,所述壳体包括刚性材料。
在一些实施方式中,所述电源包括电池。在一些实施方式中,所述电池具有不大于约9伏(V),不大于约6V,不大于约4.5V,不大于约3V或不大于约1.5V的电压。在一些实施方式中,所述电池具有不超过约500毫安时(mAh),不超过约400mAh,不超过约300mAh,不超过约200mAh,不超过约100mAh或不超过约50mAh的容量。
在一些实施方式中,所述外部环包括不超过约3英尺,不超过约2英尺,不超过约18英寸,不超过约12英寸,不超过约10英寸,不超过约8英寸,不超过约6英寸,不超过约4英寸,不超过约3英寸,不超过约2英寸,或不超过约1英寸的长度。在一些实施方式中,该方法还包括使用所述处理器将所述OTP存储在所述存储器中。在一些实施方式中,所述外部环可附接到对象或永久物体或位置。在一些实施方式中,该方法还包括使用所述电子设备的显示器来显示所述OTP。
在一些实施方式中,所述OTP包括条形码或数字码。在一些实施方式中,所述OTP包括条形码和数字码。在一些实施方式中,所述条形码包括QR码。在一些实施方式中,所述条形码包括UPC条形码。在一些实施方式中,所述数字码包括六个数字。
在一些实施方式中,该方法还包括基于所述电子设备的唯一标识符来生成所述OTP。在一些实施方式中,该方法还包括使用所述处理器在生成所述先前的TOTP之后,以多个固定时间间隔中的每一个生成多个后续的TOTP。在一些实施方式中,所述多个固定时间间隔中的每一个是约60秒。
在一些实施方式中,该方法还包括使用所述处理器以与所述第一时间相对应的时间戳来处理所述TOTP,以生成所述TOTP的认证。在一些实施方式中,以所述时间戳处理所述TOTP包括:向所述TOTP和所述时间戳应用认证算法,其中所述认证算法包括以基于哈希的消息认证码(HMAC)为基础的一次性密码算法(HOTP)。在一些实施方式中,所述认证算法包括具有用于代替递增计数器的时间戳的HOTP。
在一个实施方式中,本公开提供了一种用于用户的位置的基于时间的一次性密码(TOTP)认证的计算机实现的系统,包括:电子设备;以及数字处理设备,包括:处理器、配置为执行可执行指令的操作系统、存储器以及包括所述数字处理设备可执行以创建将认证算法应用于基于时间的一次性密码(TOTP)和时间戳以生成TOTP的认证的应用的指令的计算机程序,所述应用包括:(a)从所述电子设备接收所述TOTP和所述时间戳的软件模块;(b)将认证算法应用于所述TOTP和所述时间戳以生成所述TOTP的认证的软件模块;以及(c)至少基于所述TOTP的认证来生成所述用户的位置的认证的软件模块。
在一个实施方式中,本公开提供一种用于用户的位置的基于时间的一次性密码(TOTP)认证的方法,包括提供计算机实施的系统。
在一个实施方式中,本公开提供了一种用计算机程序编码的非暂时性计算机可读存储介质,该计算机程序包括可由处理器执行以创建将认证算法应用于基于时间的一次性密码(TOTP)和时间戳以生成所述TOTP的认证的应用的指令,所述应用包括:(a)从所述电子设备接收所述TOTP和所述时间戳的软件模块;(b)将认证算法应用于所述TOTP和所述时间戳以生成所述TOTP的认证的软件模块;以及(c)至少基于所述TOTP的认证来生成所述用户的位置的认证的软件模块。
根据以下详细描述,本公开的其他方面和优点对于本领域技术人员将变得容易理解,其中仅示出和描述了本公开的说明性实施方式。将会认识到,本公开内容能够具有其他和不同的实施方式,并且其若干细节能够在各种明显的方面进行修改,所有这些都不脱离本公开内容。因此,附图和描述本质上应被认为是说明性的,而不是限制性的。
本说明书中提到的所有出版物、专利和专利申请都以相同的程度通过引用并入本文,就好像每个单独的出版物、专利或专利申请被明确地并单独地指出通过引用并入一样。在通过引用并入的出版物和专利或专利申请与说明书中包含的公开内容相抵触的程度上,本说明书旨在取代和/或优先于任何此类矛盾的材料。
附图说明
本发明的新颖特征在所附的权利要求书中具体阐述。通过参考下面的详细说明,将获得对本发明的特征和优点的更好的理解,以下详细说明阐述了利用本发明的原理的说明性实施方式以及附图(也称为“附图”和“图”),其中:
图1示出了该设备的框图,该设备包括如下组件,诸如壳体100、电源105、处理器110、条带115,该条带115包括形成外部环120的导线、存储器135、电源和处理器之间的第一电连接125、处理器和存储器之间的第二电连接140,以及可选的接地导体130。
图2示出了在安装之前的电子TOTP令牌设备的QR码模型,其中TOTP令牌设备具有未安装的条带。
图3示出了在安装之前的电子TOTP令牌设备的QR码模型,其中TOTP令牌设备具有安装的条带,该条带使设备“开启”。
图4示出了在安装之前的电子TOTP令牌设备的条形码模型,其中TOTP令牌设备具有未安装的条带。
图5示出了在安装之前的电子TOTP令牌设备的条形码模型,其中TOTP令牌设备具有安装的条带,该条带使设备“开启”。
图6示出了电子TOTP令牌设备的条形码模型的面,其显示数字码(例如,六位数字码)以及包含该码的条形码,其可以被条形码读取器(例如,配置为读取线性条形码的硬件读取器)读取。
图7示出了被编程或以其他方式配置为实现本文提供的方法的计算机系统。
具体实施方式
虽然本文已经示出和描述了本发明的各种实施方式,但是对于本领域技术人员而言容易理解的是,这些实施方式仅以示例的方式提供。在不脱离本发明的情况下,本领域技术人员可以想到许多变化、改变和替代。应当理解,可以采用本文所述的本发明的实施方式的各种替代方案。
固定位置TOTP设备可以被配置为仅在其被固定到家庭或商业位置的永久性固定装置时才操作。
例如,电子TOTP令牌设备可以每60秒显示基于时间的一次性密码(TOTP)。电子TOTP令牌设备可能具有附接的塑料扎带,其包含嵌入的接地导线,该扎带连接到设备电池,当安装时,该扎带会与电池建立连接,从而可以开启设备。可以配置电子TOTP令牌设备,使得在扎带被切断的情况下,可以关闭设备(例如,设备的操作可以停止)。
图1示出了该设备的框图,该设备包括如下组件,诸如壳体100、电源105、处理器110、条带115,该条带115包括形成外部环120的导线、存储器135、电源和处理器之间的第一电连接125、处理器和存储器之间的第二电连接140以及可选的接地导体130。
在一方面,本公开提供一种用于电子设备的当前位置的一次性密码(OTP)认证的电子设备。电子设备可以包括壳体100中的电源105、壳体100中的处理器110、条带115以及壳体100中的存储器130。电子设备可以被配置为作为用于OTP认证的电子的基于时间的一次性密码OTP令牌设备操作(例如,生成一次性密码OTP)。在一些实施方式中,OTP认证是基于时间的一次性密码(TOTP)认证,并且所生成的OTP是基于时间的一次性密码(TOTP)。例如,可以基于共享密钥和当前时间来生成TOTP。
壳体100可以包括适合于外壳的任何材料,例如刚性材料。刚性材料可以是例如塑料、金属(例如,不锈钢、碳钢或铝)、纤维或其组合。
壳体100可包括不超过约12英寸,不超过约10英寸,不超过约8英寸,不超过约6英寸,不超过约3英寸,不超过约2英寸,或不超过约1英寸的最大尺寸。
例如,壳体100可包括不超过约12英寸,不超过约10英寸,不超过约8英寸,不超过约6英寸,不超过约3英寸,不超过约2英寸,或不超过约1英寸的长度。
例如,壳体100可包括不超过约12英寸,不超过约10英寸,不超过约8英寸,不超过约6英寸,不超过约3英寸,不超过约2英寸,或不超过约1英寸的宽度。
例如,壳体100可包括不超过约12英寸,不超过约10英寸,不超过约8英寸,不超过约6英寸,不超过约3英寸,不超过约2英寸,或不超过约1英寸的高度。
电源105可包括诸如电池的直流(DC)电源。替代地,电源105可包括交流(AC)电源。电池可具有不超过约10瓦(W),不超过约5W,不超过约4W,不超过约3W,不超过约2W,不超过约1W,不超过约500毫瓦(mW),不超过约100mW,不超过约50mW,不超过约10mW,不超过约5mW,或不超过约1mW的瓦数。
电池可具有不超过约9伏(V),不超过约6V,不超过约4.5V,不超过约3.7V,不超过约3V,不超过约1.5V,不超过约1.2V或不超过约1V的电压。例如,电池可包括AA、AAA、C、D、9V或纽扣电池类型的一个或多个电池。该电池可包括碱性、镍氢金属(NiMH)(例如镍镉(Ni-Cd))、锂离子(Li-ion)或锂聚合物(LiPo)类型的一个或多个电池。电池可包括一个或多个可再充电电池或不可再充电电池。
电子设备可以被配置为允许电池是可更换的。替代地,电子设备可以配置由用户不能更换的电池。
电池可包括不超过约100毫安时(mAh),不超过约200mAh,不超过约300mAh,不超过约400mAh,不超过约500mAh,不超过约1,000mAh,不超过约2,000mAh,不超过约3,000mAh,不超过约4,000mAh,不超过约5,000mAh,不超过约6,000mAh,不超过约7,000mAh,不超过约8,000mAh,不超过约9,000mAh,不超过约10,000mAh,不超过约12,000mAh,不超过约14,000mAh,不超过约16,000mAh,不超过约18,000mAh或不超过约20,000mAh的容量。
条带115可以包括第一端、第二端和从条带的第一端延伸到第二端的第一导线。第一导线可以在壳体100的外部形成外部环120。外部环可以附接到对象(例如患者)或永久物体或位置(例如家庭、医院或其他临床或保健场所)。例如,外部环可以包括腕带,该腕带可附接到医院或其他临床或保健场所中的患者,从而可以记录医院工作人员来访的时间。外部环可包括不超过约3英尺,不超过约2英尺,不超过约18英寸,不超过约12英寸,不超过约10英寸,不超过约8英寸,不超过约6英寸,不超过约4英寸,不超过约3英寸,不超过约2英寸或不超过约1英寸的长度。第一导线可以在电源105和处理器110之间建立第一电连接125。
在一些实施方式中,条带115可还包括接地导线,该接地导线从电源105到接地导体130沿着外部环与第一导线基本重合并且可与接地导体130连接。接地导体130可例如电连接至电源(例如,电池)的接地(-)端子。替代地,接地导体130可以电连接到外部接地导体。例如,在电子设备的安装和操作之前,条带115可以不附接到接地导体130。该设备可以被配置为使得该设备仅在保持电源和接地导体之间连续的电连接时才操作。
条带115可以被附接到接地导体130(例如,由电子设备的用户),以启动电子设备的操作。电子设备的操作可以由连续的电流启动和/或维持,该连续的电流流过由电源105通过外部环120到达接地导体130以及由电源105通过第一电连接125并且通过处理器110到达接地导体130而形成的闭合回路。例如,处理器110可以通过第一电连接125电连接到电源(例如电池)的正极(+)端子。可以通过中断或切断流过由电源105通过外部环120到处理器110以及由电源105通过第一电连接125和处理器110形成的闭合回路的电流来中断或关闭电子设备的操作。这种电子设备的操作中断可能是由于例如诸如用户的人切开电子设备的条带,移除电源或以其他方式篡改电子设备的完整性而引起的。替代地,电子设备的这种操作中断可以由例如电源和接地导体之间的连续电连接的中断引起。
电子设备可以包括壳体100内的第二电连接140。第二电连接140可以可操作地连接到处理器110和存储器140。例如,处理器110可以使用第二电连接140将所生成的OTP存储在存储器135中(例如,通过经由第二电连接140发送所生成的OTP)。
一旦建立第一电连接,仅在处理器110通过第一连接器125连接到电源105而没有中断时,处理器110可以被配置为在第一时间生成用于认证电子设备当前位置的第一一次性密码(OTP)。在一些实施方式中,OTP认证是基于时间的一次性密码(TOTP)认证,并且所生成的OTP是基于时间的一次性密码(TOTP)。例如,处理器110可以被配置为一次或多次生成TOTP。例如,处理器110可以基于共享密钥和当前时间来生成TOTP。另外,处理器可以还被配置为将所生成的OTP存储在存储器中(例如,通过经由第二电连接140发送所生成的OTP)。
此外,处理器110可以被配置为存储并生成当前时间(例如,包括日期、一天中的时间和/或时区)。例如,处理器110可以生成与当前时间相对应的时间戳(例如,存储在存储器135中)。当前时间可以包括±(正或负)约1秒,±约500毫秒(ms),±约100ms,±约50ms,±约10ms,±约5ms或±约1ms的精度。电子设备可以被配置为从外部位置(例如,来自NIST无线电台WWVB的时间信号广播)接收当前时间(例如,以允许设置内部时间)。
处理器110可以被配置为基于电子设备的唯一标识符来生成OTP。处理器可以还被配置为在生成先前的TOTP之后以多个固定时间间隔中的每一个生成多个后续的TOTP。例如,处理器可以每大约24小时,每大约12小时,每大约6小时,每大约4小时,每大约3小时,每大约2小时,每大约1小时,每大约30分钟,每大约20分钟,每大约15分钟,每大约12分钟,每大约10分钟,每大约6分钟,每大约5分钟,每大约4分钟,每大约3分钟,每大约2分钟,每大约60秒,每大约30秒,每大约15秒,每大约12秒,每大约10秒,每大约6秒,每大约5秒,每大约4秒,每大约3秒,每大约2秒或每大约1秒生成后续的TOTP。
此外,处理器110还可被配置为利用与第一TOTP的第一时间(或与后续的生成的OTP相对应的任何后续时间)相对应的时间戳来处理TOTP,以生成TOTP的认证。例如,处理器可以将认证算法应用于TOTP和时间戳。认证算法可以包括以基于哈希的消息认证码(HMAC)为基础的一次性密码算法(HOTP)。在一些实施方式中,认证算法包括具有用于代替递增计数器的时间戳的HOTP。例如,通过定义迭代次数(T0)的开始并以时间间隔(TI)为单位进行计数,可以将当前时间戳转换为整数时间计数器(TC)。例如,可以为整数时间计数器(TC)、TOTP和TOTP值定义以下值:
TC=floor((unixtime(now)-unixtime(T0))/TI)
TOTP=HOTP(机密密钥,TC)
TOTP-值=TOTP mod 10
基于HMAC的一次性密码算法(HOTP)可以如下实现。令K为密钥,令C为计数器。然后,可以通过以下表达式生成基于HMAC的一次性密码:
HMAC(K,m)=SHA1(K⊕0x5c5c...∥SHA1(K⊕0x3636...∥m)),其中m是“消息”,⊕表示XOR,∥表示串联。
令Truncate是以定义的方式从HMAC结果中选择4个字节的函数。然后,可以通过以下表达式定义HOTP(K,C):
HOTP(K,C)=Truncate(HMAC(K,C))&0x7FFFFFFF
掩码0x7FFFFFFF可以将结果的最高有效位(MSB)设置为零(0)。如果将结果解释为带符号的数字(如某些处理器所做的那样),则此步骤可以避免潜在的问题。
为了使HOTP对个人(例如,用户)输入到系统有用,可以将结果转换为HOTP值,例如使用实现依赖方式生成的具有6到8位数字的数。例如,可以使用以下表达式生成HOTP-值:
HOTP-值=HOTP(K,C)mod 10
电子设备(例如,电子TOTP令牌设备)可以还包括显示器。显示器可以被配置为显示OTP(例如,向电子设备的用户)。另外,显示器可以被配置为显示当前时间。例如,显示器可以包括液晶显示器(LCD)、发光二极管(LED)LCD、有机LED(OLED)、七段显示器、数字LED、字母数字显示器、电子墨水显示器或其他类型的显示器。该显示器可以包括一种或多种颜色、灰度、单色或黑白显示器。替代地,电子设备(例如,电子TOTP令牌设备)可以被配置为将OTP(例如,TOTP)发送到用户的外部设备(例如,膝上型计算机、智能电话、平板计算机、智能手表或安全令牌)以进行显示。替代地,电子设备(例如,电子TOTP令牌设备)可以被配置为通过文本消息或电子邮件将OTP发送给用户。
电子TOTP令牌设备可以生成包括QR码模型或条形码模型的OTP(例如,TOTP)。例如,QR码模型可以包括二维矩阵条形码,并且条形码模型可以包括线性或一维条形码(例如,通用产品代码(UPC)条形码)。
例如,图2示出了安装之前的电子TOTP令牌设备的QR码模型,其中TOTP令牌设备200具有未安装的条带115。电子TOTP令牌设备可以具有一个或多个可拆卸以形成或断开设备的电路的连接器210(例如,在设备的任一侧上的两个连接器)。连接器可以被配置成使得一旦将条带连接到连接器,除了通过切割条带,条带可能不能由用户拆卸,从而中断或断开通过连接器的电路。
图3示出了在安装之前的电子TOTP令牌设备的QR码模型,其中TOTP令牌设备200具有安装的条带115,条带115使设备“开启”。一旦将条带连接到连接器210,则除了切割条带以外,条带可能不能由用户拆卸,从而中断或断开通过连接器的电路。在设备安装期间,设备的条带可以被配置为允许将条带紧固到固定物体。例如,除了切割条带之外,这种紧固机构可能是使用者不可逆的。例如,可以使用诸如拉链的紧固机构来允许将条带不可逆地紧固到固定物体。电子TOTP令牌设备的QR代码模型可以被配置为显示二维矩阵条形码和/或数字码(例如,六位代码)。
作为另一个示例,图4示出了在安装之前的电子TOTP令牌设备的条形码模型,其中TOTP令牌设备200具有未安装的条带115;并且图5示出了安装之前的电子TOTP令牌设备的条形码模型,其中TOTP令牌设备200具有安装的条带115,条带115使设备“开启”。电子TOTP令牌设备200的条形码模型可以被配置为显示一维条形码(例如,UPC条形码)和/或数字码(例如,六位代码)。
图6示出了电子TOTP令牌设备200的条形码模型的面610,其显示数字码(例如,六位代码)以及包含该代码的条形码,该条形码可以被条形码读取器(例如,配置为读取线性条形码的硬件读取器)读取。该数字码可以包括1位代码,2位代码,3位代码,4位代码,5位代码,6位代码,7位代码,8位代码,9位代码,10位代码,11位代码,12位代码,13位代码,14位代码,15位代码,16位代码或超过16位的代码。可以使用例如液晶显示器(LCD)、发光二极管(LED)LCD、有机LED(OLED)、七段显示器、数字LED、字母数字显示器、电子墨水显示器或其他类型的显示器来显示数字(例如,六位)代码。
本公开提供了被编程为实现本公开的方法的计算机系统。图7示出了计算机系统701,其被编程或以其他方式配置为例如生成用于认证的OTP,生成当前时间或使用时间戳处理OTP以生成该OTP的认证。
计算机系统701可以调节本公开内容的分析、计算和生成的各个方面,例如,生成用于认证的OTP,生成当前时间或使用时间戳处理TOTP以生成TOTP的认证。计算机系统701可以是用户的电子设备或相对于电子设备位于远程的计算机系统。该电子设备可以是移动电子设备。
计算机系统701包括中央处理单元(CPU,在本文中也称为“处理器”和“计算机处理器”)705,其可以是单核或多核处理器,或用于并行处理的多个处理器。计算机系统701还包括存储器或存储器位置710(例如,随机存取存储器、只读存储器、闪存)、电子存储单元715(例如,硬盘)、通信接口720(例如,网络适配器)以用于与一个或多个其他系统通信和外围设备725(例如,高速缓存、其他存储器、数据存储和/或电子显示适配器)。存储器710、存储单元715、接口720和外围设备725通过诸如主板的通信总线(实线)与CPU 705通信。存储单元715可以是用于存储数据的数据存储单元(或数据存储库)。可以借助于通信接口720将计算机系统701可操作地耦合到计算机网络(“网络”)730。网络730可以是因特网、内部网和/或外部网,或者与因特网通信的内联网和/或外联网。
CPU 705可以包括一个或多个计算机处理器和/或一个或多个图形处理单元(GPU)。CPU 705可以执行机器可读指令的序列,其可以体现在程序或软件中。指令可以被存储在诸如存储器710的存储器位置中。指令可以被定向到CPU 705,CPU 705可以随后对CPU705进行编程或以其他方式配置CPU 705以实现本公开的方法。由CPU 705执行的操作的示例可以包括获取、解码、执行和写回。
CPU 705可以是电路的一部分,例如集成电路。电路中可以包括系统701的一个或多个其他组件。在某些情况下,该电路是专用集成电路(ASIC)。
存储单元715可以存储文件,例如驱动程序、库和保存的程序。存储单元715可以存储用户数据,例如,用户偏好和用户程序。在某些情况下,计算机系统701可以包括位于计算机系统701外部的一个或多个附加数据存储单元,例如位于通过内部网或因特网与计算机系统701通信的远程服务器上。
计算机系统701可以通过网络730与一个或多个远程计算机系统通信。例如,计算机系统701可以与用户的远程计算机系统通信。远程计算机系统的示例包括个人计算机(例如,便携式PC)、平板或平板计算机(例如,
如本文所述的方法可以通过存储在计算机系统701的电子存储位置上(例如,存储在存储器710或电子存储单元715上)的机器(例如,计算机处理器)可执行代码来实现。机器可执行或机器可读代码可以以软件的形式提供。在使用期间,代码可以由处理器705执行。在某些情况下,可以从存储单元715中检索代码并将其存储在存储器710中,以供处理器705随时访问。在某些情况下,电子存储单元715可以被排除,并且将机器可执行指令存储在存储器710中。
可以对代码进行预编译并配置为与具有适用于执行该代码的处理器的机器一起使用,或者可以在运行时进行编译。可以以可以选择的编程语言来提供代码,以使代码能够以预编译或实时编译的方式执行。
本文所提供的系统和方法的方面,例如计算机系统701,可以在编程中体现。可以将技术的各个方面视为通常以机器可读介质的类型承载或体现的机器(或处理器)可执行代码和/或相关数据的形式的“产品”或“制造品”。机器可执行代码可以存储在诸如存储器(例如,只读存储器、随机存取存储器、闪存)或硬盘的电子存储单元上。“存储”类型的介质可以包括计算机、处理器等的有形存储器中的任何一个或全部,或其相关模块,例如可以随时提供非暂时性存储的各种半导体存储器、磁带驱动器、磁盘驱动器等以进行软件编程。软件的全部或部分有时可以通过因特网或其他各种电信网络进行通信。例如,这样的通信可以使得能够将软件从一个计算机或处理器加载到另一计算机或处理器,例如从管理服务器或主机加载到应用服务器的计算机平台。因此,可以承载软件元件的另一种类型的介质包括例如在本地设备之间的物理接口之间,通过有线和光学座机网络以及在各种空中链路上使用的光波、电波和电磁波。诸如有线或无线链路、光链路等的携带这种波的物理元件也可以被视为承载软件的介质。如本文所使用的,除非限于非暂时性的有形“存储”介质,否则诸如计算机或机器“可读介质”的术语是指参与向处理器提供指令以供执行的任何介质。
因此,诸如计算机可执行代码的机器可读介质可以采取许多形式,包括但不限于有形存储介质、载波介质或物理传输介质。非易失性存储介质包括例如光盘或磁盘,诸如任何计算机中的任何存储设备等,诸如可用于实现附图中所示的数据库等。易失性存储介质包括动态存储器,例如这种计算机平台的主存储器。有形的传输介质包括同轴电缆、铜线和光纤,包含包括计算机系统内总线的导线。载波传输介质可以采用电信号或电磁信号的形式,也可以采用声波或光波的形式,例如在射频(RF)和红外(IR)数据通信期间生成的那些。因此,计算机可读介质的常见形式包括例如:软盘、柔性盘、硬盘、磁带、任何其他磁介质、CD-ROM、DVD或DVD-ROM、任何其他光学介质、打孔卡纸磁带、带孔图案的任何其他物理存储介质、RAM、ROM、PROM和EPROM、FLASH-EPROM、任何其他存储芯片或盒带、传输数据或指令的载波、传输此类载波的电缆或链接或计算机可以从中读取编程代码和/或数据的任何其他介质。这些形式的计算机可读介质中的许多可能涉及将一个或多个指令的一个或多个序列传送给处理器以执行。
计算机系统701可以包括电子显示器735或与之通信,该电子显示器735包括用户界面(UI)740,用于提供例如表示数字码(例如,六位数代码)的视觉显示。用户界面(UI)的示例包括但不限于图形用户界面(GUI)和基于web的用户界面。
可以通过一种或多种算法来实现本公开的方法和系统。可以由中央处理单元705在执行时通过软件来实现算法。该算法可以例如生成用于认证的OTP,生成当前时间或使用时间戳处理TOTP以生成TOTP的认证。
尽管已经在本文中示出和描述了本发明的优选实施方式,但是对于本领域技术人员而言容易理解的是,这些实施方式仅作为示例提供。并非意图通过说明书中提供的特定示例来限制本发明。尽管已经参考前述说明书描述了本发明,但是本文中的实施方式的描述和图示并不意味着以限制性的意义来解释。在不脱离本发明的情况下,本领域技术人员现在将想到许多变化、改变和替换。此外,应当理解,本发明的所有方面不限于本文所阐述的具体描述、构造或相对比例,其取决于各种条件和变量。应该理解的是,本文描述的本发明的实施方式的各种替代方案可以用于实施本发明。因此,可以预期的是,本发明还将涵盖任何这样的替代、修改、变化或等同形式。意图是,以下权利要求限定本发明的范围,并且由此涵盖这些权利要求范围内的方法和结构及其等同物。
- 一次性密码生成的方法、装置及认证方法、认证系统
- 用于通过设备特定的一次性密码向网络认证的方法、系统、设备和装置