CN105074682A - 安全访问可编程装置的系统和方法 - Google Patents
安全访问可编程装置的系统和方法 Download PDFInfo
- Publication number
- CN105074682A CN105074682A CN201380073683.7A CN201380073683A CN105074682A CN 105074682 A CN105074682 A CN 105074682A CN 201380073683 A CN201380073683 A CN 201380073683A CN 105074682 A CN105074682 A CN 105074682A
- Authority
- CN
- China
- Prior art keywords
- certificate
- session
- certification
- identifier
- request
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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
-
- 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/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
Abstract
依据各个方面和实施方式,提供了包含可编程装置的系统。可编程装置包括存储认证会话的标识符的存储器和至少一个耦合至存储器的处理器。该至少一个处理器被配置为:接收认证证书,解码认证证书以访问会话标识符和与认证证书的请求者相关的信息,确定会话标识符与认证会话的标识符是否匹配,以及如果会话标识符与认证会话的标识符匹配,则授权请求者对可编程装置的受保护功能的访问。
Description
背景
技术领域
本技术领域通常涉及防止对可编程装置的未授权的访问以及,更具体地,涉及用于安全生成用户认证证书的系统和方法。
背景讨论
至少存在三种用于重建忘记或丢失其认证证书的装置用户对装置的访问的常规技术。一种方法是将装置送回工厂,在工厂里,装置将被恢复到工厂默认设置。第二种方法是提供用户接口元件,当用户接口元件被激活,促使装置将认证证书重置为已知标准或促使装置恢复到其工厂默认设置。第三种选择是提供“后门密码”,该后门密码由装置特定的数据诸如装置的序列号硬编码或生成。当用户不能通过建立的认证证书来认证装置时,这些选择中的每一个为用户提供对他们的装置的访问。
概述
依据各个方面和实施方式,提供了包含可编程装置的系统。可编程装置包含存储了认证会话的标识符的存储器和至少一个耦合至存储器的处理器。该至少一个处理器被配置为:接收认证证书,解码认证证书以访问会话标识符和与认证证书的请求者相关的信息,确定会话标识符与认证会话的标识符是否匹配,以及如果会话标识符与认证会话的标识符匹配则授权请求者对可编程装置的受保护功能的访问。
在系统中,该至少一个处理器可被配置为:如果所述会话标识符等于所述认证会话的标识符,确定所述会话标识符与所述认证会话的标识符匹配。该至少一个处理器可被配置为通过使用公共密钥解密所述认证证书来解码所述认证证书。该至少一个处理器还可以被配置为:接收会话请求,响应于接收会话请求生成认证会话的标识符,给请求者提供认证会话的标识符以及响应于给请求者提供认证会话的标识符,启动定时器。
在系统中,该至少一个处理器还可以被配置为:确定从所述定时器被启动开始的预定的时间周期是否已经期满,以及如果预定的时间周期已经期满,则结束认证会话。该至少一个处理器还可以被配置为:如果预定的时间周期已经期满,限制随后的认证会话的标识符的生成。
在系统中,该至少一个处理器还可以被配置为:如果所述会话标识符与所述认证会话的标识符不匹配,则拒绝所述请求者对所述可编程装置的受保护功能的访问。该至少一个处理器还可以被配置为:如果会话标识符与认证会话的标识符不匹配,则记录访问失败事件;计算访问失败事件的总数是否超出预定的阈值,以及如果访问失败事件的总数超出预定的阈值,则结束认证会话。该至少一个处理器还可以被配置为:如果访问失败事件的总数超出预定的阈值,限制随后的认证会话的标识符的生成。
系统还可以包含计算机系统,该计算机系统被配置为:接收包含认证会话的标识符和标识目标的信息的证书请求,响应于接收证书请求生成认证证书,以及给目标提供认证证书。计算机系统可被配置为基于认证会话的标识符、请求者的唯一标识符和附加字符的组合生成认证证书。计算机系统可被配置为通过加密该组合生成认证证书。计算机系统还可以被配置为通过以下方式生成认证证书:配置该组合的长度以生成具有不超出48个字符的长度的认证证书。
在系统中,可编程装置还可以包括包含被配置为测量公用事业使用率的传感器的公用事业仪表,且受保护功能可包含配置公用事业仪表的操作参数的功能。
依据另一个实施方式,提供了包含存储器和耦合至存储器的至少一个处理器的计算机系统。该至少一个处理器被配置为:接收包含认证会话的标识符和标识目标的信息的证书请求,响应于接收证书请求生成认证证书以及给目标提供认证证书。
在计算机系统中,该至少一个处理器可被配置为基于认证会话的标识符、请求者的唯一标识符和附加字符的组合生成认证证书。该至少一个处理器可被配置为通过加密该组合生成认证证书。该至少一个处理器可被配置为通过以下方式生成认证证书:配置组合的长度以生成具有不超过48个字符的长度的认证证书。
依据另一个实施方式,提供了使用可编程装置和计算机系统生成认证证书的方法。该方法包含以下动作:在可编程装置中接收认证证书;通过可编程装置解码认证证书以访问会话标识符和与认证证书的请求者相关的信息;确定会话标识符与认证会话的标识符是否匹配;以及如果会话标识符与认证会话的标识符匹配则授权请求者对可编程装置的受保护功能的访问。
方法还可以包含接收包含认证会话的标识符和标识目标的信息的证书请求,响应于接收证书请求生成认证证书以及给目标提供认证证书的动作。
还有其他方面、实施方式以及这些示例性的方面和实施例的优点在下面进行详细讨论。此外,需要理解的是,上述信息和下面的详细描述都仅仅是各个方面和各种实施方式的说明性的实例,并且旨在提供用于理解所要求保护的各方面和各实施方式的性质和特性的综述或者框架。本文所公开的任何实施方式可以与任何其他实施方式结合。引用“实施方式”、“实例”、“一些实施方式”、“一些实例”、“替代实施方式”、“各个实施方式”、“一个实施方式”、“至少一个实施方式”、“这个和其他实施方式”或类似的用语并不一定是相互排斥的,并且旨在表明结合实施方式描述的特定的特征、结构或特性可以被包括在至少一个实施方式中。本文出现的这些术语不一定都指相同的实施方式。
附图简述
下文参考附图讨论了至少一种实施方式的各个方面,该附图不旨在按比例绘制。各图被包括以提供对各个方面和实施方式的说明和进一步的理解,而且被包括在本说明书中并且构成该说明书的一部分,但并不旨在作为任何特定实施方式的限定的定义。各图和该说明书的剩余部分一起用来解释所描述的和所要求保护的各方面和各实施方式的原理和操作。各图中,在各个图中示出的每个相同的或者接近相同的组件用相同的编号表示。出于清楚的目的,并非每个组件都可以在每个图中被标记。在各图中:
图1是包含用于生成认证证书的示例系统的框图;
图2是包含用于生成认证证书的另一个示例系统的框图;
图3是执行本文所公开的过程和功能的示例可编程装置的示意图;
图4是执行本文所公开的过程和功能的计算机系统的实例的示意图;
图5是示例证书生成过程的流程图;
图6是示例会话请求过程的流程图;
图7是示例证书请求过程的流程图;
图8是示例认证请求过程的流程图。
详细描述
本文公开的一些实施方式包含用于认证使用具有有限的有效期的编码的认证证书的用户的装置和过程。例如,依据一种实施方式,可编程装置被配置为提供接口,通过该接口可编程装置接收用于认证会话的请求。响应于请求的接收,可编程装置给请求者提供认证会话的标识符。
该实施方式还包括执行被配置为接收请求以生成认证证书的证书接口的计算机系统。这些请求可包括会话标识符和标识一个或多个目标的返回信息,生成的认证证书被请求传输给该目标。这些目标可包括任何电子可寻址组件,诸如计算机系统、可编程装置、电子邮件账户、电话等等。依据这种实施方式,证书引擎被配置为使用预定的编码过程将会话标识符和与请求者相关的信息编码到认证证书中并将认证证书传输给由返回的信息标识的目标。
此外,在该实施方式中,可编程装置还被配置为提供接口,可编程装置通过该接口接收认证证书以进行处理。响应于认证证书的接收,可编程装置解码认证证书,验证认证证书包括有效的会话标识符,以及如果包括有效的会话标识符则将访问权限授权给会话的请求者。
本文所讨论的方法和系统的实例在应用中并不限于下面描述中阐述的或附图中示出的结构以及组件的布置的细节。这些方法和系统能够在其他的实施方式中实现,且能够以不同的方式进行实践或实施。本文提供的具体实现方式的示例仅仅是出于说明的目的且并非旨在限制。特别地,结合任何一个或多个实例所讨论的动作、组件、元件、和特征并不旨在被排除在任何其他实例中的相似作用之外。
同样,本文所使用的措辞和术语是出于描述的目的,而不应被视为限制。本文以单数形式对系统和方法的实例、实施方式、组件、元件或动作的任何提及也可以包含包括多个的实施方式,且本文以复数形式对任何实施方式、组件、元件或动作的任何提及也可以包含仅包括单数形式的实施方式。以单数形式或者复数形式提及不旨在限制所公开的系统或者方法、它们的组件、动作或者元件。本文使用“包括”、“包含”、“具有”、“含有”、“涉及”以及其变体意味着包含其后的列出项和其等价项以及其他项。提及“或者”可以解释为包括一切的,因此任何用“或者”描述的术语可以表明单个、多于一个、以及所有所描述的术语中的任意一项。另外,在本文档和通过引用并入本文的文档之间的术语使用矛盾的情况中,通过引用并入的术语的使用是本文档的术语的使用的补充;对于不可调和的矛盾,由本文档的术语使用主导。
证书生成系统
各种实施方式利用一个或多个可编程装置和计算机系统以安全地提供对一个或多个可编程装置的访问。图1示出了这些实施方式中的一种,证书生成系统100。如图所示,图1包括两个用户102和104、可编程装置106、通信装置108、通信网络110、计算机系统112。可编程装置106可包括具有可配置操作的任何装置,诸如,下面参考图3所描述的可编程装置。通信装置108可包括移动计算装置诸如手提电脑、平板电脑、移动电话(如智能手机)、个人数字助理或被配置与其他装置电信通信的任何其它便携装置。计算机系统112可包括一个或多个计算机系统,诸如,下面参考图4所描述的计算机系统。
如图1所描绘,计算机系统112和通信装置108通过网络110交换(即发送或接收)信息。网络110可以包括装置通过其可交换信息的任何通信网络。例如,网络110可以为如互联网的公共网络,并且可以包括其他如LAN、WAN、外联网、内联网以及云计算系统的公共或者专用网络。网络110还可包括如CDMA、EvDO、GSM和iDEN网络的蜂窝网。
在至少一个实例中,用户102不能访问由可编程装置106提供的受保护功能,因为用户102不能向可编程装置106进行认证。这个受保护功能可包括由可编程装置106提供的任何功能或其任何子集。因此,受保护功能可包括用于配置可编程装置106的用户和授予用户对由可编程装置106提供的其他功能的访问(如,对由可编程装置106记录的运行信息的访问、对可编程装置106的配置运行参数的访问,等等)的权限的管理功能。
为了补救向可编程装置106的该认证失效,用户102与用户104、可编程装置106和通信装置108交互,以请求和接收有足够权限来访问可编程装置106内的受保护功能的认证证书。用户104与用户102和验证数据源(如,包含关于被授权请求用于可编程装置106的认证证书的用户的信息的记录)交互以验证用户102具有访问受保护功能的权限。响应于验证用户102的权限,用户104与证书接口118交互,以生成认证证书并通过通信装置108给用户102提供认证证书。
如图1所示,可编程装置106包括会话接口114。会话接口114被配置为与用户102交换信息以支持下面参考图5、6和8所描述的过程。此信息可包含对认证会话、会话标识符和认证证书的请求。在与用户102交换信息时,会话接口114可采用各种各样的标志和用户接口元素。例如,在一种实施方式中,会话接口114提供了具有多个元素的界面,当元素被用户102选择时,将启动会话请求过程(如下面进一步描述的会话请求过程600)或启动认证请求过程(如下面进一步描述的认证请求过程800)。在一些实施方式中,会话接口114只能通过与可编程装置106的物理接触可访问以增加整个证书生成系统100的安全性。
如图1中进一步所示,计算机系统112包括证书引擎116和证书接口118。证书接口118被配置为与用户104和证书引擎116交换信息以支持下面参考图5和7所描述的过程。此信息可包含对认证证书的请求。为了与证书引擎116交换信息,证书接口118生成同意证书引擎116支持的协议的消息并将这些消息传输给证书引擎116。为了与用户104交换信息,证书接口118可采用各种各样的标志和用户接口元素。例如,在一种实施方式中,证书接口118提供了具有当被用户104选择时将提醒用户104进入证书请求的元素的界面。证书请求可包括会话标识符和标识认证证书被发送到的目标的返回信息。响应于从用户104接收证书请求,证书接口118将证书请求传输给证书引擎116。
图1中所描绘的通信装置108被配置为与证书引擎116交换信息。此信息可包含由证书引擎116生成的认证证书。在至少一种实施方式中,通信装置108包括通过自动文本通信接收认证证书的移动电话。在另一种实施方式中,通信装置108包括执行专业的客户端应用的移动计算装置。在这种实施方式中,客户端应用通过由网络110提供的数据连接接收认证证书并将认证证书显示给用户102。
如图1所示,证书引擎116被配置为与证书接口118和通信装置108交换信息以支持下面参考图5和7所描述的过程。此信息可包含证书请求和响应于证书请求所生成的认证证书。为启用与证书接口118的互操作,证书引擎116实施证书引擎116通过其接收证书请求的协议。响应于接收证书请求,证书引擎116处理证书请求并依据下面进一步描述的证书生成过程700生成认证证书。为了给通信装置108提供所生成的证书,证书接口116生成同意通信装置108支持的协议的消息并通过网络110传输消息。
在可编程装置能够与托管证书引擎的计算机系统交互的一些实施方式中,证书生成系统省略了通信装置108。图2示出其中不包括通信装置108的一些实施方式。如图2所示,证书生成系统200包括用户202、可编程装置204、通信网络206和计算机系统208。可编程装置204可包括具有可配置操作的任何装置,诸如,下面参考图3所描述的可编程装置。计算机系统206可包括一个或多个计算机系统,诸如,下面参考图4所描述的计算机系统。
如图2所描绘,计算机系统208和通信装置204通过网络206交换(即发送或接收)信息。网络206可以包括装置通过其可交换信息的任何通信网络。例如,网络206可以为如互联网的公共网络,并且可以包括其他如LAN、WAN、外联网、内联网以及云计算系统的公共或者专用网络。网络206还可包括如CDMA、EvDO、GSM和iDEN网络的蜂窝网。
在至少一个实例中,用户202不能访问由可编程装置204提供的受保护功能,因为用户202不能向可编程装置204进行认证。这个受保护功能可包括可编程装置204提供的任何功能或其任何子集。因此,受保护功能可包括用于配置可编程装置204的用户和授予用户对由可编程装置204提供的其他功能的访问(如,对由可编程装置204记录的运行信息的访问、对可编程装置204的配置运行参数的访问,等等)的权限的管理功能。
为了补救向可编程装置204的该认证失效,用户202与可编程装置204和计算机系统208交互,以请求和接收有足够权限来访问可编程装置204内的受保护功能的认证证书。更具体地,证书接口214与用户202交互以验证用户202具有访问受保护功能的权限,并且与证书引擎212交互以生成认证证书并通过可编程装置204向用户202提供认证证书。
如图2所示,可编程装置204包括会话接口210。会话接口210被配置为与用户202和证书引擎212交换信息以支持下面参考图5、6和8所描述的过程。此信息可包含对认证会话、会话标识符和认证证书的请求。在与用户202交换信息时,会话接口210可采用各种各样的标志和用户接口元素。例如,在一种实施方式中,会话接口210提供了具有多个元素的界面,当元素被用户202选择时,将启动会话请求过程(如下面进一步描述的会话请求过程600)或启动认证请求过程(如下面进一步描述的认证请求过程800)。在一些实施方式中,启动会话请求过程和认证请求过程的会话接口210的元素只能通过与可编程装置204的物理接触可访问以增加整个证书生成系统200的安全性。为启用与证书引擎212的互操作,会话接口210实施会话接口210通过其接收认证证书的协议。
如图2中进一步所示,计算机系统208包括证书引擎212和证书接口214。证书接口214被配置为与用户202和证书引擎212交换信息以支持下面参考图5和7所描述的过程。此信息可包含证书请求和认证请求。为了与证书引擎212交换信息,证书接口214生成同意证书引擎212支持的协议的消息并将这些消息传输给证书引擎212。为了与用户202交换信息,证书接口214可采用各种各样的标志和用户接口元素。例如,在一种实施方式中,证书接口214提供了具有当被用户202选择时将提醒用户202进入证书请求的元素的界面。证书请求可包括会话标识符和标识认证证书被发送到的目标的返回信息。
在依据图2的一种实施方式中,证书接口214还被配置为验证用户202具有请求可编程装置204的认证证书的权限。在这种实施方式中,在将对认证证书的请求传输给证书引擎212之前,认证接口214请求并验证认证证书。认证证书可包括用户202的标识符,诸如用户的唯一的标识符(如员工号)、与用户202相关的组织的标识符(如雇主号)等。在这种实施方式中,证书接口214记录用户202的标识符并验证标识符标识用户具有请求可编程装置204的认证证书的权限。该验证过程可包括各种各样的动作,包括通过涉及给其他用户(如与用户202或组织有关的其他用户)的一个或多个通知的预定义审批流程来发送认证请求。响应于验证用户202具有请求可编程装置204的认证证书的权限,证书接口214将证书请求传输给证书引擎212。
如图2所示,证书接口212被配置为与证书接口214和可编程装置204交换信息以支持下面参考图5和7所描述的过程。此信息可包含证书请求和响应于证书请求所生成的认证证书。为启用与证书接口214的互操作,证书引擎212实施证书引擎212通过其接收证书请求的协议。响应于接收证书请求,证书引擎212处理证书请求并依据下面进一步描述的证书生成过程700生成认证证书。为了给可编程装置204提供所生成的证书,证书接口212生成同意会话接口210支持的协议的消息并通过网络206传输消息。
本文公开的、包括由通信装置108、会话接口114、会话接口210、证书引擎116、证书引擎212、证书接口118和证书接口214呈现的每一个接口,可以将输入限制为预设值并在使用信息或向其他组件提供信息前验证输入的任何信息。这些功能可防止将错误的数据引入证书生成系统100和200中。
另外,在一些实施方式中,本文公开的每一个接口可使用各种各样的技术被实施并可提供额外的或其他接口元素以完成本文描述的功能。例如,在一种实施方式中,证书接口118和214用作基于浏览器的用户接口,基于浏览器的用户接口由可被用户104或用户202访问的计算机系统上运行的万维网浏览器提供,同时,在另一种实施方式中,通信装置108可给用户102提供信息作为IVR应用的一部分。因此,特殊的实施方式不局限于接口元素的任何一个标志或者配置。
证书生成系统100和200内的信息可以存储在能够把信息保持在计算机可读介质上的任何逻辑结构中,除了其他的结构,包括文件系统、平面文件、索引文件、层次数据库、关系数据库或面向对象的数据库。数据可使用唯一键关系和外键关系及索引建模。唯一键和外键关系及索引可以建立在不同的字段和表之间以同时确保数据的完整性和数据交换性能。
使用各种各样的技术,信息可在如图1和2所示的组件之间、或本文所公开的元件、组件和子系统中的任何一个之间进行传递。例如,这种技术包括:通过使用标准协议例如TCP/IP或HTTP在网络上传递信息、在存储器中的各模块之间传递信息、以及通过写入文件、数据库、数据存储装置、或一些其他的非易失性数据储存装置来传递信息。此外,可以代替、结合信息的副本、或者附加到信息的副本来发送以及接收信息的指针或者其他引用。相反地,可以代替、结合信息的指针或其他引用、或附加到信息的指针或其他引用来交换信息。在不背离本文所公开的实例和实施方式的范围下,可以使用其他的用于信息通信的技术和协议。
证书生成系统100和200的实施方式不局限于图1和2中示出的特定的配置。这些配置仅仅出于说明的目的被包括。此外,应理解,各种实例利用了各种各样被配置成执行本文所描述的过程和功能的硬件组件、软件组件以及硬件和软件组件的组合。因此本文公开的实施方式的范围不局限于硬件、软件或其组合的特定设置。
可编程装置
如上文关于图1和2所讨论的,本文所描述的各个方面和各种功能可以被实施为在一个或者多个可编程装置中执行的专用硬件或者软件组件。这些可编程装置被配置为定期独立地(即没有中央控制系统的指令)执行一个或多个专用的自动功能。可编程装置具有广泛范围的潜在应用。特定类型的可编程装置的特性依据可编程装置被配置执行的功能而变化。例如,被配置用于外部用途的可编程装置可包括刚性且绝缘的壳体,同时被配置为检测环境条件的可编程装置可包括一个或多个被配置为测量这些环境条件的传感器。一些可编程装置的具体实例包括不间断电源、可编程逻辑控制器和公用事业仪表,如图3所示的公用事业仪表300。
如图3所示,公用事业仪表300包括壳体302,壳体302包括传感器306、处理器308、存储器310、数据储存装置312、互连元件314和接口316。为实施本文所公开的各方面、各功能和各过程中的至少一些,处理器308执行一系列产生操作的数据的指令。处理器308可以为任意类型的处理器、多处理器或者控制器。
存储器310在公用事业仪表300的操作期间存储程序和数据。因此,存储器310包括用于存储数据的任何装置,如磁盘驱动器或其他非易失储存装置,但是典型地包括相对高性能、易失的、随机存取存储器如动态随机存取存储器(DRAM)或静态存储器(SRAM)。各种实施方式可以将存储器310组织成特定的并且在某些情况下独有的结构以执行本文所公开的功能。这些数据结构可以被改变大小以及被组织,以存储用于特定数据和特定类型的数据的值。
如图3所示,公用事业仪表300的组件中的几个被耦合至互连元件314。互连元件314可包括公用事业仪表的组件之间的任何通信耦合件,如支持一种或多种专用的或标准的计算总线技术如IDE、SCSI和PCI的一根或多根物理总线。互连元件314允许通信(例如数据和指令)在公用事业仪表300的组件之间交换。
公用事业仪表300还包括一个或者多个如输入装置、输出装置、以及输入/输出装置的组合的接口装置316。接口装置可以接收输入或者提供输出。更具体地说,输出装置可以提供用于外部呈现的信息。输入装置可以从外部源接收信息。接口装置的例子包括按钮、键盘、触摸屏、网络接口卡等。接口装置允许公用事业仪表300与如用户及其他系统的外部实体交换信息并且与外部实体进行通信。
数据储存装置312包括计算机可读且可写的、非易失性、或者非暂时性的数据储存介质,其中存储定义了由处理器308执行的程序或者其他对象的指令。数据储存器312还可以包括记录在介质上或者介质中的、并且在程序执行期间由处理器308处理的信息。更具体地说,信息可以存储在一个或者多个被具体配置成节省存储空间或者提高数据交换性能的数据结构中。指令可以被永久存储为编码信号,并且该指令可以引起处理器308执行本文所描述的功能中的任意一种。除了其他介质以外,介质还可以例如是光盘、磁盘或闪存存储器。
如图3所示,传感器306被耦合至处理器308。传感器306包括模拟传感器和模数转换器以为处理器308提供代表被模拟传感器检测到的公用事业流量(如使用率)的数字信号。传感器306的具体配置依据被公用事业仪表300测量的公用事业改变。例如,在包括测量电力的仪表的实施方式中,传感器306包括单相或三相功率的输入端并且记录通过输入端的电力的一个或多个识别特性(如功率、电压、电流等)的周期性测量。当接收到这些周期性的测量时,处理器308存储描述测量和在数据储存元件312中执行的测量的次数的信息。另外,在一些实施方式中,处理器308随后通过包含在接口装置316中的网络接口将储存的描述测量的信息传输给外部实体。
公用事业仪表300的一些实施方式包括操作参数,该操作参数可通过公用事业仪表300提供的受保护功能进行配置。这些操作参数可被用于配置CT/PT比、系统类型、需求计算、输入/输出设置、机载数据记录、机载波形采集和机载警报。
虽然公用事业仪表300通过实例的方式表示为在其上可以实践各个方面和各种功能的一种类型的公用事业仪表,但是没有限定各方面和各功能在如图3中所示的公用事业仪表300上实施。可以在一个或者多个具有不同于图3中所示的结构或者组件的公用事业仪表上实践各个方面和各种功能。例如,公用事业仪表300可以包括经专门编程的专用硬件,如定制成执行一个或多个本文所公开的特定操作的专用集成电路(ASIC)。
在一些实例中,本文所公开的公用事业仪表300的组件可以读取影响组件执行的功能的参数。这些参数可以被物理存储在任何形式的合适的、包括易失性存储器(例如RAM)或者非易失性存储器(例如磁盘驱动器)的存储器中。此外,参数可以被逻辑存储在适当的数据结构(如由用户模式应用程序定义的数据库或者文件)中或者共享的数据结构(如由操作系统定义的应用程序注册表)中。此外,某些实例提供了系统和用户接口,其允许外部实体修改参数并且从而配置组件的行为。
计算机系统
如上文关于图1和2所讨论的,本文所描述的各个方面和各种功能可以被实施为在一个或者多个计算机系统中执行的专用硬件或者软件组件。当前使用的计算机系统的实例有很多。这些实例其中包括网络设备、个人计算机、工作站、主机、网络客户端、服务器、媒体服务器、应用服务器、数据库服务器以及web服务器。计算机系统的其他实例可以包括如手机和个人数字助理的移动计算装置,以及如负载平衡器、路由器和交换机的网络设备。此外,各方面可以位于一个计算机系统上,或者可以分布在连接到一个或者多个通信网络的多个计算机系统之间。
例如,各个方面、功能和过程可以分布在一个或者多个配置成给一个或者多个客户端计算机提供服务、或者作为分布式系统的一部分执行整个任务的计算机系统之间。此外,各方面可以在包括组件的客户端服务器或者多层系统上执行,该组件分布在一个或者多个执行各种功能的服务器系统之间。因此,没有限定各实施方式在任何特定的系统或者一组系统上执行。此外,可以用软件、硬件或者固件、或者它们的任何组合实施各个方面、功能和过程。因此,可以使用各种各样的硬件和软件配置在方法、动作、系统、系统元件和组件内实施各个方面、功能和过程,并且各实例不局限于任何特定的分布式体系结构、网络或者通信协议。
参考图4,其示出了分布式计算机系统400的框图,其中实践了各个方面和各种功能。如所示的,分布式计算机系统400包括交换信息的多于一个计算机系统。更具体地说,分布式计算机系统400包括计算机系统402和404以及公用事业仪表300。如所示的,计算机系统402和404以及公用事业仪表300通过通信网络408相互连接,并且可以通过通信网络408交换数据。网络408可以包括计算机系统可以通过其交换数据的任何通信网络。为了使用网络408交换数据,计算机系统402和404和公用事业仪表300以及网络408可以使用各种方法、协议和标准,其中包括光纤通道、令牌环、以太网、无线以太网、蓝牙、IP、IPV6、TCP/IP、UDP、DTN、HTTP、FTP、SNMP、SMS、MMS、SS7、JSON、SOAP、CORBA、REST以及Web服务。为确保数据传送是安全的,计算机系统402和404以及公用事业仪表300可以使用各种各样的、包括如TLS、SSL或者VPN的安全措施通过网络408传输数据。虽然分布式计算机系统400示出了三个联网的计算机系统,但是分布式计算机系统400不受此限制并且可以包括使用任何介质和通信协议联网的任何数量的计算机系统和计算装置。
如图4中所示的,计算机系统402包括处理器410、存储器412、互连元件414、接口416以及数据储存元件418。为实施本文所公开的各方面、各功能和各过程中的至少一些,处理器410执行一系列产生操作的数据的指令。处理器410可以为任意类型的处理器、多处理器或者控制器。一些示例性的处理器包括如英特尔至强、安腾、酷睿、赛扬、或者奔腾处理器、AMDOpteron处理器、苹果A4或A5处理器、SunUltraSPARC或者IBMPower5+处理器以及IBM主机芯片的商用处理器。处理器410通过互连元件414连接到包括一个或者多个存储器装置412的其他系统组件。
存储器412在计算机系统402的操作期间存储程序和数据。因此,存储器412可以为如动态随机存取存储器(“DRAM”)或者静态存储器(“SRAM”)的较高性能、易失性、随机存取储存器。然而,存储器412可以包括用于存储数据的任何装置,例如磁盘驱动器或者其他非易失性存储装置。各个实例可以将存储器412组织成特定的并且在某些情况下独有的结构来执行本文所公开的功能。这些数据结构可以被改变大小以及被组织,以存储用于特定数据和特定类型的数据的值。
计算机系统402的组件通过如互连元件414的互连元件耦合。互连元件414可包括系统组件之间的任何通信耦合件,如符合专用的或标准的计算总线技术如IDE、SCSI、PCI和InfiniBand的一根或多根物理总线。互连元件414允许通信(例如数据和指令)将在计算机系统402的系统组件之间交换。
计算机系统402还包括一个或者多个如输入装置、输出装置、以及输入/输出装置的组合的接口装置416。接口装置可以接收输入或者提供输出。更具体地说,输出装置可以提供用于外部呈现的信息。输入装置可以从外部源接收信息。接口装置的例子包括键盘、鼠标装置、轨迹球、麦克风、触摸屏、打印装置、显示屏、扬声器、网络接口卡等。接口装置允许计算机系统402与如用户以及其他系统的外部实体交换信息并且与外部实体进行通信。
数据储存元件418包括计算机可读且可写、非易失性、或者非暂时性的数据储存介质,其中存储定义了由处理器410执行的程序或者其他对象的指令。数据储存元件418还可以包括记录在介质上或者介质中的、并且在程序执行期间由处理器410处理的信息。更具体地说,信息可以存储在一个或者多个被具体配置成节省存储空间或者提高数据交换性能的数据结构中。指令可以被永久存储为编码信号,并且该指令可以引起处理器410执行本文所描述的功能中的任意一种。除了其他介质以外,介质还可以例如是光盘、磁盘或闪存存储器。在操作中,处理器410或者某些其他的控制器使数据从非易失性记录介质读出到如存储器412的另一个存储器中,与数据储存元件418中包括的储存介质相比,其允许处理器410更快访问信息。存储器可以位于数据储存元件418中或者存储器412中,然而,处理器410操作存储器中的数据,然后在处理完成之后,将数据复制到与数据储存元件418相关联的储存介质。各种各样的组件可以管理在储存介质和其他存储器元件之间的数据移动,并且各实例不局限于特定的数据管理组件。此外,各实例不局限于特定的存储器系统或者数据储存系统。
虽然计算机系统402通过实例的方式表示为在其上可以实践各个方面和各种功能的一种类型的计算机系统,但是没有限定各方面和各功能在如图4中所示的计算机系统402上实施。各个方面和各种功能可以在一个或者多个具有不同于图4中所示的结构或者组件的计算机上实践。例如,计算机系统402可以包括经专门编程的专用硬件,如定制成执行本文所公开的特定操作的专用集成电路(“ASIC”)。然而另一个实例可以使用几个运行MACOS系统X和摩托罗拉PowerPC处理器的通用计算装置、以及几个运行专有硬件和操作系统的专用计算装置的网格执行同样的功能。
计算机系统402可以是包括操作系统的计算机系统,该操作系统管理至少一部分包括在计算机系统402中的硬件元件。在某些实例中,如处理器410的处理器或者控制器执行操作系统。可以被执行的特定的操作系统的实例包括:如从微软公司购买的WindowsNT、Windows2000(WindowsME)、WindowsXP、WindowsVista或者Windows7操作系统的基于Windows的操作系统、从苹果计算机公司购买的MACOS系统X操作系统或iOS操作系统、如从RedHat公司购买的企业Linux操作系统的众多基于Linux的操作系统的发行版中的一种、从Sun微系统购买的Solaris操作系统、或者从各种来源购买的UNIX操作系统。可以使用许多其他的操作系统,并且各实例不局限于任何特定的操作系统。
处理器410和操作系统一起定义了用高级编程语言编写应用程序的计算机平台。这些组件的应用程序可以是可执行的中间字节码或者解释码,其通过如因特网的通信网络,使用如TCP/IP的通信协议进行通信。类似地,各方面可以使用面向对象编程语言,例如.Net、SmallTalk、Java、C++、Ada、C#(C-Sharp)、Python或JavaScript来实现。也可以使用其他的面向对象的编程语言。此外,可以使用功能、脚本或者逻辑编程语言。
此外,可以在非编程环境中实施各个方面和各种功能。例如,当在浏览器程序的窗口中查看时,以HTML、XML或者其他格式创建的文件能够提供图形用户界面的各方面并且执行其他的功能。此外,可以用编程的或者非编程的元件、或者其任意组合实施各个实例。例如,web页可以使用HTML实施而从web页内调用的数据对象可以用C++来写。因此,实例不局限于具体的编程语言并且可以使用任何合适的编程语言。因此,本文所公开的功能组件可以包括多种多样的被配置成执行本文所描述的功能的元件(例如专用硬件、可执行代码、数据结构或者对象)。
在某些实例中,本文所公开的组件可以读取影响组件执行的功能的参数。这些参数可以被物理存储在任何形式的合适的、包括易失性存储器(例如RAM)或者非易失性存储器(例如磁盘驱动器)的存储器中。此外,参数可以被逻辑存储在适当的数据结构(如由用户模式应用程序定义的数据库或者文件)中或者共享的数据结构(如由操作系统定义的应用程序注册表)中。此外,某些实例提供了系统和用户界面,其允许外部实体修改参数并且从而配置组件的行为。
证书生成过程
如上文参考图1和2所描述的,几种实施方式执行生成认证证书的过程。在一些实施方式中,这些认证证书生成过程通过证书生成系统执行,如上述参考图1和2的证书生成系统100和200。图5中示出了这种证书生成过程的一个实例。依据这个实例,证书生成过程500包括处理认证会话请求、授权请求者、处理认证证书请求、传递认证证书和处理认证请求的动作。
在动作502,诸如上述参考图1的可编程装置106或上述参考图2的可编程装置204的证书生成系统的可编程装置接收并处理来自诸如上述参考图1的用户102或上述参考图2的用户202的外部实体的认证会话请求。下面参考图6进一步描述了在动作502中执行的示例过程。
在动作504中,证书生成系统验证启动会话请求的外部实体被授权以启动会话请求。在执行证书生成过程500的证书生成系统是依据上述参考图2的证书生成系统200的实例中,证书接口214与用户202交互以验证用户202具有对可编程装置204的受保护功能的访问权限。在执行证书生成过程500的证书生成系统依据上述参考图1的证书生成系统100的实例中,用户104与验证源交互以验证用户102具有对可编程装置106的受保护功能的访问权限。另外,在一些实例中,证书接口将关于认证和证书生成的每一次请求(和识别请求者的信息)记录在数据储存器中。
在动作506,诸如上述参考图1的计算机系统112或上述参考图2的计算机系统208的证书生成系统的计算机系统接收并处理来自外部实体的认证证书请求。下面参考图7进一步描述了在动作506中执行的示例过程。
在动作508,证书生成系统传递认证证书。在依据图2所示的证书生成系统200的实施方式中,证书引擎212通过网络206将认证证书传输给会话接口210。在依据图1所示的证书生成系统100的实施方式中,证书引擎116将认证证书传输给通信装置108。
在动作510,证书生成系统的可编程装置接收并处理来自请求者的认证请求。下面参考图8进一步描述了在动作510中执行的示例过程。在动作510完成后,证书生成系统结束证书生成过程500。
依据证书生成过程500的过程使不能向可编程装置认证的用户能向该可编程装置认证,而没有损害可编程装置的安全性。
如上参考动作502所述的,一些实施方式执行过程,通过该过程,证书生成系统接收并处理来自外部实体的认证会话请求。图6中示出了这种会话请求过程的一个实例。依据这个实例,会话请求过程600包括接收会话请求、生成会话标识符、启动定时器和提供会话标识符的动作。
在动作602,可编程装置通过会话接口接收来自用户(此处被称为“会话请求者”)的会话请求。在一种实施方式中,在用户选择由会话接口呈现的、诸如被设计为启动会话请求的菜单项的可执行元素时接收会话请求。在动作604,响应于接收会话请求,会话接口生成会话标识符。会话标识符可包含被可编程装置识别的随机地或伪随机地生成的数据(如符号、文本或数字)。在一些实施方式中,生成的会话标识符具有预定的长度。在动作606,会话接口为用户提供会话标识符。在动作608,会话接口启动定时器并结束会话请求过程600。如下面进一步描述的,会话接口使用定时器限制其间会话标识符可被用于认证用户的时间周期(即限制其间会话标识符有效的时间周期)。在一些实施方式中,这个时间周期被设置为很小的值(如5或10分钟)。
依据会话请求过程600的过程使可编程装置能建立增加可编程装置的安全性的时间受限的认证会话。
如上参考动作506所述的,一些实施方式执行过程,通过该过程,证书生成系统接收并处理来自外部实体的认证证书请求。图7中示出了这种证书请求过程的一个实例。依据这个实例,证书请求过程700包括接收证书请求、生成证书种子、编码认证证书和提供认证证书的动作。
在动作702,计算机系统通过证书接口接收来自用户的证书请求。在一种实施方式中,在用户选择由证书接口呈现的、诸如被设计为启动证书请求的菜单项的可执行元素以及输入会话标识符和返回信息时接收证书请求。响应于接收证书请求,证书接口将证书请求传输给证书引擎。
在动作704,响应于接收证书请求,证书引擎通过结合信息的几个元素生成证书种子。在至少一种实施方式中,证书引擎通过连接会话标识符和返回的信息以形成字符串来生成证书种子。在另一种实施方式中,证书引擎通过连接会话标识符、返回的信息和附加字符以形成具有预定长度的字符串来生成证书种子。在另一种实施方式中,证书引擎通过连接会话标识符、与返回的信息有关的数据(如返回信息的标识符,返回信息的压缩版等)和附加字符以形成具有预定长度的字符串来生成证书种子。在另一种实施方式中,证书引擎通过连接会话标识符、会话请求者的唯一标识符(如与个人身份信息相关的10位数,如返回的信息)和附加字符以形成具有预定长度的字符串来生成证书种子。其它过程可被用于生成证书种子且此处公开的实施方式不限于特定的证书种子生成过程。
在动作706,证书引擎编码证书种子以创建认证证书。在各种实施方式中,证书引擎通过使用各种各样的加密过程中的任意一种加密证书种子来编码证书种子。在一些实施方式中,证书引擎使用非对称加密过程的私人密钥加密证书种子,非对称加密过程如Diffie–Hellman、DSS、ElGamal、Paillier、RSA、Cramer-Shoip和YAK。在一些实施方式中,证书引擎使用对称加密过程的密钥加密证书种子,对称加密过程如Twofish、Serpent、AES(Rijndael)、Blowfish、CAST5、RC4、3DES和IDEA。其它加密或编码过程可被用于编码证书种子且此处公开的实施方式不限于特定的加密过程。
在一些实施方式中,生成的认证证书具有预定的长度。在这些实施方式中,证书生成系统可配置会话标识符的预定长度和添加至证书种子的附加字符的数量(以及因此配置证书种子的预定长度)以生成具有目标预定长度的认证证书。在至少一种实施方式中,会话标识符和证书种子的预定长度被配置为使得认证证书的预定长度小于或等于48个字符。
在动作708,创建认证证书后,证书引擎为在返回的信息中指定的目标提供认证证书。在依据图1所示的证书生成系统100的实施方式中,证书接口将认证证书传输给通过通信装置108可访问的目标。在依据图2所示的证书生成系统200的实施方式中,证书接口将认证证书传输给通过可编程装置204可访问的目标。在其它实施方式中,可在返回的信息中指定其它目标并且此处公开的实施方式不限于特定的目标或目标类型。在动作708,提供认证证书后,证书接口结束证书请求过程700。
依据证书请求过程700的过程使计算机系统能创建安全的认证证书,该认证证书包含追踪请求认证证书的用户的身份的个人身份信息。
如上参考动作510所述的,一些实施方式执行过程,通过该过程,证书生成系统接收并处理来自外部实体的认证请求。图8中示出了这种认证请求过程的一个实例。根据该实施方式,证书请求过程800包括了下文进一步描述的各种动作。
在动作802,可编程装置通过会话接口接收认证请求。在依据图1所示的证书生成系统100的实施方式中,在用户选择由会话接口呈现的、诸如被设计为启动认证请求的菜单项的可执行元素和输入认证证书时接收认证请求。在依据图2所示的证书生成系统200的实施方式中,通过网络206从证书引擎接收认证请求。在其它实施方式中,在用户选择由会话接口呈现的可执行元素时接收认证请求。在这些实施方式中,认证证书的输入在动作806之前一直被延迟。响应于接收认证请求,会话接口执行动作804。
在动作804,会话接口确定定时器是否指示自在动作610中启动定时器开始的预定的时间周期已经期满。如果是,会话接口执行动作812。否则,由之前生成的会话标识符标识的会话仍然是有效的,并且会话接口执行动作806。
在动作806,使用与在动作706中执行的编码过程对应的过程,会话接口接收(在认证证书的输入在动作806之前一直被延迟的实施方式中)和解码认证证书。在动作808,会话接口确定证书种子是否包含有效的会话标识符。如果是,在动作810,会话接口在可编程装置的安全日志中记录成功的访问事件和会话请求者的唯一标识符(或储存在证书种子中的压缩的/未压缩的返回信息),授权用户对可编程装置的受保护功能的访问并结束认证请求过程800。否则,会话接口执行动作812。
在动作812,会话接口拒绝授予用户对可编程装置的受保护功能的访问,在安全检查日志中记录访问失败事件。访问失败事件可包括指示访问失败的日期和时间的时间戳。在动作814,会话接口确定预定的时间周期是否已经期满或记录的访问失败的总数是否大于阈值(如2、3、4或大于4)。如果是,在动作816,会话接口结束认证会话(如重置有效的会话标识符的值)以便新的认证证书可以被生成以使用本文公开的系统和过程访问可编程装置。此外在动作816,会话接口限制进一步处理会话请求直到预定事件发生。这些限制可包括完全禁止处理会话请求。结束对会话请求的处理的这些限制的预定事件的实例包括预定的时间周期(如10分钟)的期满。如果会话接口确定定时器没有期满并且记录的访问失败的总数没有超出阈值,则会话接口结束认证请求过程800。
依据认证请求过程800的过程使可编程装置能以安全的方式提供对受保护功能的访问。
过程500到过程800中的每一个描述了在特定实施方式中的一种特定的动作序列。在这些过程中包括的动作可以通过、或者使用如本文所讨论的经专门配置的一个或多个计算机系统或可编程装置来执行。某些动作是可选的,并且可以因此根据一个或者多个实施方式被省略。此外,动作的顺序可以被改变,或其他动作可以被加入,而不偏离本文描述的实施方式的范围。此外,如上文所描述的,在至少一种实施方式中,各动作在特定的、经专门配置的机器,即根据本文公开的实例和实施方式配置的证书生成系统上执行。
示例性应用场景
依据示例性应用场景,诸如上述参考图1的用户102的客户不能向诸如上述参考图1的可编程装置106的可编程装置进行认证。在该实例中,客户之前已经用支持中心建立了注册的并被验证的账户。该账户与一个或多个个人安全问题以及有限的数量的预定目标(如电子邮件地址或电话号码)相关联。
依据该实例,客户移动到接近可编程装置的位置并呼叫支持中心。客户与诸如上述参考图1的用户104的支持中心人员交互,以验证客户被授权接收认证证书。支持中心人员通过诸如上述参考图1的证书接口118的证书接口在他们的日志中记录证书请求。
然后,在该实例中,客户从诸如上述参考图1的会话接口114的会话接口选择“获取恢复代码”菜单项。响应此,会话接口生成具有预定长度的伪随机会话标识符,给客户提供会话标识符并启动定时器。客户给支持中心人员提供会话标识符并指定预定目标中的一个目标作为认证证书会发送到的目标。
继续该实例,支持中心人员将会话标识符和标识指定目标的信息输入证书接口。证书接口将包括会话标识符和标识指定目标的信息的会话请求传输给诸如上述参考图1的证书引擎116的证书引擎。响应于接收证书请求,证书引擎使用会话标识符、客户的唯一的10位个人标识符和延长证书种子的长度至预定值的附加字符来生成证书种子。然后,证书引擎通过加密证书种子来将证书种子编码进具有预定长度的认证证书中并将认证证书发送给指定的目标。
在该实例中,指定的目标接收认证证书,因此使客户获得认证证书。然后,客户从会话接口选择“输入恢复密码”菜单项。响应此,会话接口检查以查看定时器是否已经期满。如果是,会话接口结束认证会话而不呈现(或不激活)被配置为接收认证证书的接口元件。然后,会话接口在可编程装置的安全检查日志中将尝试的认证记录为失败访问事件。另外,如果连续的失败访问事件的次数超出预定阈值,则会话接口将锁定“获得恢复代码”菜单项达预定的时间长度。为了获得对可编程装置的受保护功能的访问,当“获得恢复代码”可用时,客户必须请求新的会话标识符且必须重复剩余的证书生成步骤。
如果定时器没有期满,则会话接口提醒用户输入认证证书。响应于接收认证证书,会话接口将认证证书解密并确定存储在认证证书中的证书种子是否包含会话标识符。如果是,会话接口授予客户执行可编程装置的受保护功能的权限(如管理员级别的权限)。会话接口还将成功的访问事件和与客户相关的唯一标识符记录在可编程装置的安全日志中。现在客户执行可编程装置的受保护功能(如重配置可编程装置和其内部维护的认证证书)。
如果证书种子不包括会话标识符,则认证证书是无效的且会话接口将尝试的认证作为失败访问事件记录在可编程装置的安全检查日志中。另外,如果连续的失败访问事件的次数超出预定阈值,则会话接口将锁定“获得恢复代码”菜单项达预定的时间长度。为了获得对可编程装置的访问,当“获得恢复代码”可用时,客户必须请求新的会话标识符且必须重复剩余的证书生成步骤。
已经如此描述了至少一个实例的几个方面,但需要理解的是,本领域的技术人员将容易想到各种改变、修改和改进。例如,本文所公开的实例也可以在其他背景中使用。这种改变、修改和改进旨在成为此公开的一部分,并且旨在在本文所讨论的实例的范围之内。因此,前面的描述和附图仅仅是实例。
Claims (20)
1.一种系统,包括:
可编程装置,包括:
存储器,其存储认证会话的标识符;以及
至少一个处理器,其耦合到所述存储器并被配置为:
接收认证证书;
解码所述认证证书以访问会话标识符和与所述认证证书的请求者相关的信息;
确定所述会话标识符与所述认证会话的标识符是否匹配;以及
如果所述会话标识符与所述认证会话的标识符匹配,则授权所述请求者对所述可编程装置的受保护功能的访问。
2.如权利要求1所述的系统,其中,所述至少一个处理器被配置为,如果所述会话标识符等于所述认证会话的标识符,则确定所述会话标识符与所述认证会话的标识符匹配。
3.如权利要求1所述的系统,其中,所述至少一个处理器被配置为通过使用公共密钥解密所述认证证书来解码所述认证证书。
4.如权利要求3所述的系统,其中,所述至少一个处理器还被配置为:
接收会话请求;
响应于接收所述会话请求,生成所述认证会话的标识符;
给所述请求者提供所述认证会话的标识符;以及
响应于给所述请求者提供所述认证会话的标识符,启动定时器。
5.如权利要求1-4中的任一项所述的系统,其中,所述至少一个处理器还被配置为:
确定从所述定时器被启动开始的预定的时间周期是否已经期满;以及
如果所述预定的时间周期已经期满,则结束所述认证会话。
6.如权利要求5所述的系统,其中,所述至少一个处理器还被配置为,如果所述预定的时间周期已经期满,则限制随后的认证会话的标识符的生成。
7.如权利要求1所述的系统,其中,所述至少一个处理器还被配置为,如果所述会话标识符与所述认证会话的标识符不匹配,则拒绝所述请求者对所述可编程装置的所述受保护功能的访问。
8.如权利要求7所述的系统,其中,所述至少一个处理器还被配置为:
如果所述会话标识符与所述认证会话的标识符不匹配,则记录访问失败事件;
计算访问失败事件的总数是否超出预定的阈值;以及
如果访问失败事件的总数超出所述预定的阈值,则结束所述认证会话。
9.如权利要求7所述的系统,其中,所述至少一个处理器还被配置为,如果访问失败事件的总数超出所述预定的阈值,则限制随后的认证会话的标识符的生成。
10.如权利要求1所述的系统,其还包括计算机系统,所述计算机系统被配置为:
接收包含所述认证会话的标识符和标识目标的信息的证书请求;
响应于接收所述证书请求,生成认证证书;以及
给所述目标提供所述认证证书。
11.如权利要求10所述的系统,其中,所述计算机系统被配置为基于所述认证会话的标识符、所述请求者的唯一标识符和附加字符的组合生成所述认证证书。
12.如权利要求11所述的系统,其中,所述计算机系统被配置为通过加密所述组合来生成所述认证证书。
13.如权利要求12所述的系统,其中,所述计算机系统被配置为通过以下方式生成所述认证证书:配置所述组合的长度以生成具有不超出48个字符的长度的认证证书。
14.如权利要求13所述的系统,其中,所述可编程装置还包括公用事业仪表,所述公用事业仪表包含被配置为测量公用事业使用率的传感器,且所述受保护功能包含配置所述公用事业仪表的操作参数的功能。
15.一种计算机系统,包括:
存储器;以及
至少一个处理器,其耦合到所述存储器并被配置为:
接收包含认证会话的标识符和标识目标的信息的证书请求;
响应于接收所述证书请求,生成认证证书;以及
给所述目标提供所述认证证书。
16.如权利要求15所述的计算机系统,其中,所述至少一个处理器被配置为基于所述认证会话的标识符、请求者的唯一标识符和附加字符的组合生成所述认证证书。
17.如权利要求16所述的系统,其中,所述至少一个处理器被配置为通过加密所述组合来生成所述认证证书。
18.如权利要求17所述的系统,其中,所述至少一个处理器被配置为通过以下方式生成所述认证证书:配置所述组合的长度以生成具有不超出48个字符的长度的认证证书。
19.一种使用可编程装置和计算机系统生成认证证书的方法,所述方法包括:
在可编程装置处接收认证证书;
通过所述可编程装置解码所述认证证书以访问会话标识符和与所述认证证书的请求者相关的信息;
确定所述会话标识符与认证会话的标识符是否匹配;以及
如果所述会话标识符与所述认证会话的标识符匹配,则授权所述请求者对所述可编程装置的受保护功能的访问。
20.如权利要求19所述的方法,还包括:
接收包含所述认证会话的标识符和标识目标的信息的证书请求;
响应于接收所述证书请求,生成认证证书;以及
给所述目标提供所述认证证书。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110762137.0A CN113536276A (zh) | 2013-01-15 | 2013-01-15 | 安全访问可编程装置的系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/021553 WO2014112972A1 (en) | 2013-01-15 | 2013-01-15 | Systems and methods for securely accessing programmable devices |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110762137.0A Division CN113536276A (zh) | 2013-01-15 | 2013-01-15 | 安全访问可编程装置的系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105074682A true CN105074682A (zh) | 2015-11-18 |
Family
ID=51209932
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110762137.0A Pending CN113536276A (zh) | 2013-01-15 | 2013-01-15 | 安全访问可编程装置的系统和方法 |
CN201380073683.7A Pending CN105074682A (zh) | 2013-01-15 | 2013-01-15 | 安全访问可编程装置的系统和方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110762137.0A Pending CN113536276A (zh) | 2013-01-15 | 2013-01-15 | 安全访问可编程装置的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11178126B2 (zh) |
EP (1) | EP2946306B1 (zh) |
CN (2) | CN113536276A (zh) |
WO (1) | WO2014112972A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110050273A (zh) * | 2016-08-01 | 2019-07-23 | 数据输入输出公司 | 利用系统产生的装置程序化 |
CN110557756A (zh) * | 2018-06-01 | 2019-12-10 | 通用电气航空系统有限公司 | 用于认证到航行器的数据传输的系统和方法 |
CN112231686A (zh) * | 2020-10-20 | 2021-01-15 | 城云科技(中国)有限公司 | 一种基于安全认证标识的系统安全认证方法和装置 |
CN112363967A (zh) * | 2020-11-09 | 2021-02-12 | 成都卫士通信息产业股份有限公司 | 密码设备接口标准统一方法、装置、设备及介质 |
US11824847B2 (en) | 2016-08-01 | 2023-11-21 | Data I/O Corporation | Device programming with system generation |
US12034721B2 (en) | 2018-06-01 | 2024-07-09 | Ge Aviation Systems Limited | Systems and methods for authenticating data transmissions to vehicle |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9913315B2 (en) * | 2014-10-20 | 2018-03-06 | Xiaomi Inc. | Method and device for connection management |
US10268844B2 (en) * | 2016-08-08 | 2019-04-23 | Data I/O Corporation | Embedding foundational root of trust using security algorithms |
US11228581B2 (en) * | 2019-03-07 | 2022-01-18 | Motorola Mobility Llc | Secure delayed FIDO authentication |
US11057381B1 (en) * | 2020-04-29 | 2021-07-06 | Snowflake Inc. | Using remotely stored credentials to access external resources |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050188423A1 (en) * | 2004-02-24 | 2005-08-25 | Covelight Systems, Inc. | Methods, systems and computer program products for monitoring user behavior for a server application |
US20080022377A1 (en) * | 2006-07-21 | 2008-01-24 | Kai Chen | Device Authentication |
US20110299125A1 (en) * | 2004-12-03 | 2011-12-08 | Google Inc. | Association of a portable scanner with input/output and storage devices |
US20120084561A1 (en) * | 2010-09-30 | 2012-04-05 | Microsoft Corporation | Token-based authentication using middle tier |
CN102629928A (zh) * | 2012-04-13 | 2012-08-08 | 江苏新彩软件有限公司 | 一种基于公共密钥的互联网彩票系统安全链路实施方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7152045B2 (en) * | 1994-11-28 | 2006-12-19 | Indivos Corporation | Tokenless identification system for authorization of electronic transactions and electronic transmissions |
US6691232B1 (en) * | 1999-08-05 | 2004-02-10 | Sun Microsystems, Inc. | Security architecture with environment sensitive credential sufficiency evaluation |
EP1359550A1 (fr) | 2001-11-30 | 2003-11-05 | STMicroelectronics S.A. | Régéneration d'une quantité secrète à partir d'un identifiant d'un circuit intégré |
US7360096B2 (en) * | 2002-11-20 | 2008-04-15 | Microsoft Corporation | Securely processing client credentials used for Web-based access to resources |
US20050188222A1 (en) * | 2004-02-24 | 2005-08-25 | Covelight Systems, Inc. | Methods, systems and computer program products for monitoring user login activity for a server application |
US7412719B2 (en) * | 2004-05-20 | 2008-08-12 | International Business Machines Corporation | Architecture and design for central authentication and authorization in an on-demand utility environment using a secured global hashtable |
FR2872366B1 (fr) * | 2004-06-28 | 2006-08-18 | Gemplus Sa | Reutilisation de donnees d'identite d'un module d'identite dans un equipement d'usager par un dispositif peripherique |
NZ540853A (en) * | 2005-06-17 | 2006-12-22 | Eftol Internat Ltd | Online payment system for merchants using a virtual terminal in the form of a pin pad |
US8074271B2 (en) | 2006-08-09 | 2011-12-06 | Assa Abloy Ab | Method and apparatus for making a decision on a card |
US20080219239A1 (en) * | 2007-03-05 | 2008-09-11 | Grid Net, Inc. | Policy-based utility networking |
US7975292B2 (en) * | 2007-06-12 | 2011-07-05 | Francisco Corella | Secure password reset for application |
US8108528B2 (en) * | 2007-07-11 | 2012-01-31 | International Business Machines Corporation | System and method for verifying the identity of a chat partner during an instant messaging session |
US8302187B1 (en) * | 2007-09-27 | 2012-10-30 | Amazon Technologies, Inc. | System and method for preventing large-scale account lockout |
US20090125992A1 (en) * | 2007-11-09 | 2009-05-14 | Bo Larsson | System and method for establishing security credentials using sms |
WO2011128183A2 (en) * | 2010-04-13 | 2011-10-20 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for interworking with single sign-on authentication architecture |
US8850219B2 (en) * | 2010-05-13 | 2014-09-30 | Salesforce.Com, Inc. | Secure communications |
JP5359998B2 (ja) * | 2010-06-15 | 2013-12-04 | 日本電気株式会社 | 情報処理システム、情報処理方法及び情報処理プログラム |
WO2012144909A1 (en) * | 2011-04-19 | 2012-10-26 | Invenia As | Method for secure storing of a data file via a computer communication network |
US9087206B2 (en) * | 2011-04-20 | 2015-07-21 | Canon Kabushiki Kaisha | Information processing apparatus, system, method, and storage medium for executing control operation and indicating completion |
US20130061298A1 (en) * | 2011-09-01 | 2013-03-07 | International Business Machines Corporation | Authenticating session passwords |
WO2014069783A1 (ko) * | 2012-10-31 | 2014-05-08 | 삼성에스디에스 주식회사 | 패스워드 기반 인증 방법 및 이를 수행하기 위한 장치 |
-
2013
- 2013-01-15 CN CN202110762137.0A patent/CN113536276A/zh active Pending
- 2013-01-15 EP EP13872215.2A patent/EP2946306B1/en active Active
- 2013-01-15 WO PCT/US2013/021553 patent/WO2014112972A1/en active Application Filing
- 2013-01-15 US US14/761,139 patent/US11178126B2/en active Active
- 2013-01-15 CN CN201380073683.7A patent/CN105074682A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050188423A1 (en) * | 2004-02-24 | 2005-08-25 | Covelight Systems, Inc. | Methods, systems and computer program products for monitoring user behavior for a server application |
US20110299125A1 (en) * | 2004-12-03 | 2011-12-08 | Google Inc. | Association of a portable scanner with input/output and storage devices |
US20080022377A1 (en) * | 2006-07-21 | 2008-01-24 | Kai Chen | Device Authentication |
US20120084561A1 (en) * | 2010-09-30 | 2012-04-05 | Microsoft Corporation | Token-based authentication using middle tier |
CN102629928A (zh) * | 2012-04-13 | 2012-08-08 | 江苏新彩软件有限公司 | 一种基于公共密钥的互联网彩票系统安全链路实施方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110050273A (zh) * | 2016-08-01 | 2019-07-23 | 数据输入输出公司 | 利用系统产生的装置程序化 |
US11824847B2 (en) | 2016-08-01 | 2023-11-21 | Data I/O Corporation | Device programming with system generation |
CN110050273B (zh) * | 2016-08-01 | 2024-02-06 | 数据输入输出公司 | 利用系统产生的装置程序化 |
CN110557756A (zh) * | 2018-06-01 | 2019-12-10 | 通用电气航空系统有限公司 | 用于认证到航行器的数据传输的系统和方法 |
US12034721B2 (en) | 2018-06-01 | 2024-07-09 | Ge Aviation Systems Limited | Systems and methods for authenticating data transmissions to vehicle |
CN112231686A (zh) * | 2020-10-20 | 2021-01-15 | 城云科技(中国)有限公司 | 一种基于安全认证标识的系统安全认证方法和装置 |
CN112231686B (zh) * | 2020-10-20 | 2024-02-27 | 城云科技(中国)有限公司 | 一种基于安全认证标识的系统安全认证方法和装置 |
CN112363967A (zh) * | 2020-11-09 | 2021-02-12 | 成都卫士通信息产业股份有限公司 | 密码设备接口标准统一方法、装置、设备及介质 |
CN112363967B (zh) * | 2020-11-09 | 2023-11-14 | 成都卫士通信息产业股份有限公司 | 密码设备接口标准统一方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
US20150350182A1 (en) | 2015-12-03 |
WO2014112972A1 (en) | 2014-07-24 |
EP2946306A4 (en) | 2016-07-13 |
CN113536276A (zh) | 2021-10-22 |
US11178126B2 (en) | 2021-11-16 |
EP2946306B1 (en) | 2023-08-09 |
EP2946306A1 (en) | 2015-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105074682A (zh) | 安全访问可编程装置的系统和方法 | |
JP6606156B2 (ja) | データセキュリティサービス | |
US9838204B2 (en) | IoT communication utilizing secure asynchronous P2P communication and data exchange | |
KR101985187B1 (ko) | 키 내보내기 기법 | |
EP2963958B1 (en) | Network device, terminal device and information security improving method | |
US10116440B1 (en) | Cryptographic key management for imported cryptographic keys | |
CN106685973B (zh) | 记住登录信息的方法及装置、登录控制方法及装置 | |
US9767262B1 (en) | Managing security credentials | |
US9521000B1 (en) | Complete forward access sessions | |
CN110268406B (zh) | 密码安全性 | |
KR101809974B1 (ko) | 다중 사용자의 인증요소를 조합하여 보안키를 생성하는 보안인증시스템 및 보안인증방법 | |
JP2016508699A (ja) | データセキュリティサービス | |
CN111989672A (zh) | 用于多域环境的密码重置 | |
Sain et al. | A survey on the security in cyber physical system with multi-factor authentication | |
KR101586439B1 (ko) | 프라이버시를 보장하는 사용자 데이터의 무결성 검증 방법 및 그 장치 | |
CN109495500A (zh) | 一种基于智能手机的双因子认证方法 | |
CN109495458A (zh) | 一种数据传输的方法、系统及相关组件 | |
CN106161467A (zh) | 水务数据访问方法及装置 | |
KR101809976B1 (ko) | 다중 사용자의 인증요소를 조합하여 보안키를 생성하는 보안인증방법 | |
Rath et al. | Design and application of a secure and flexible server-based mobile eID and e-signature solution | |
CN106055987A (zh) | 一种数据存储方法、数据读取方法及装置 | |
KR20200059908A (ko) | 사용자 개인정보 관리 장치 및 방법 | |
Hossain et al. | User Location Time and Entropy (ULTE) based Salt generation for Password Based Key Derivation Function (PBKDF) in Cloud Computing | |
CN103413086B (zh) | 一种解决可信移动存储介质安全漫游的方法及装置 | |
CN117978521A (zh) | 鉴权方法、装置、计算机设备、存储介质和程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151118 |