CN108028000A - 自动银行业务机固件流控制 - Google Patents

自动银行业务机固件流控制 Download PDF

Info

Publication number
CN108028000A
CN108028000A CN201680049286.XA CN201680049286A CN108028000A CN 108028000 A CN108028000 A CN 108028000A CN 201680049286 A CN201680049286 A CN 201680049286A CN 108028000 A CN108028000 A CN 108028000A
Authority
CN
China
Prior art keywords
controller
operable
gate
bank note
response
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
CN201680049286.XA
Other languages
English (en)
Inventor
大卫·尼克尔
克里斯托弗·梅德福
丹尼尔·比斯勒
里卡多·巴罗斯
迈克·瑞安
克林顿·博利
安妮·科内克尼
里卡多·贝亚托
安德鲁·克拉格斯顿
布莱恩·布洛克
贾斯廷·罗克
埃里克·克莱因
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.)
Diebold Rich Co
Diebold Nixdorf Inc
Original Assignee
Diebold Rich Co
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 Diebold Rich Co filed Critical Diebold Rich Co
Publication of CN108028000A publication Critical patent/CN108028000A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/108Remote banking, e.g. home banking
    • G06Q20/1085Remote banking, e.g. home banking involving automatic teller machines [ATMs]
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F19/00Complete banking systems; Coded card-freed arrangements adapted for dispensing or receiving monies or the like and posting such transactions to existing accounts, e.g. automatic teller machines
    • G07F19/20Automatic teller machines [ATMs]
    • G07F19/206Software aspects at ATMs
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65HHANDLING THIN OR FILAMENTARY MATERIAL, e.g. SHEETS, WEBS, CABLES
    • B65H43/00Use of control, checking, or safety devices, e.g. automatic devices comprising an element for sensing a variable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/81Indexing, e.g. XML tags; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07DHANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
    • G07D11/00Devices accepting coins; Devices accepting, dispensing, sorting or counting valuable papers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • 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/3236Cryptographic 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 cryptographic hash functions
    • H04L9/3242Cryptographic 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 cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Development Economics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Sheets, Magazines, And Separation Thereof (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)

Abstract

本文描述的示例实施方式是用于实现诸如ATM等自动银行业务机的技术。示例实施方式追踪纸币穿过ATM的流动。另一实施方式纠正在纸币流动中检测到的错误。一些实施方式在形式上涉及用于通信的安全协议或其他通信协议或者用于监视在ATM中操作的装置的技术。又一示例实施方式涉及钱箱的安全性。又一实施方式涉及检测ATM的闸门和/或梭机的篡改。又一实施方式确定纸币是否在梭机中传送。

Description

自动银行业务机固件流控制
相关申请的交叉引用
本申请要求于2015年6月25日提交的临时申请No.62/184,618的权益。
技术领域
本公开总体上涉及由诸如自动取款机(“ATM”)等自动银行业务机的固件所执行的功能。
背景技术
客户使用的一种常见类型的自助式自动银行业务机是自动取款机(ATM),其使客户能够进行银行交易。所进行的银行交易可以包括提取现金、进行存款(the making ofdeposits)和/或账户之间资金划拨和账户余额查询。客户可进行的银行交易的类型取决于特定银行业务机的能力。
附图说明
并入本文并形成说明书的一部分的附图示出了示例实施方式。
图1是示出自动银行业务机的用于通过闸门将现金自钞箱传送到自动银行业务机外部的用户的一部分的示例的简化方框图。
图2示出了检测折叠或卷曲纸币的梭机入口传感器的示例。
图3示出了确定纸币偏斜的梭机入口传感器的示例。
图4是示出用于纸币错误恢复的方法的方框图。
图5是示出可以在其上实现示例实施方式的自动银行业务机的部件之间的内部通信的示例的方框图。
图6示出了用于图5中所示的自动银行业务机的部件之间的安全通信的数据包格式的示例。
图7示出了根据示例实施方式的自动银行业务机的示例,其中,保险箱中的控制器与闸门控制器在控制器区域网络(CAN)总线上采用安全通信协议。
图8示出了说明用于CAN总线上的两个节点之间的初始密钥绑定的过程的示例信号图。
图9示出了说明用于在图8中绑定密钥的两个节点之间建立应变(使用一次的数值)的过程的示例的信号图。
图10是示出用于在CAN总线上安全通信的两个节点的应用程序验证和初始化的过程的示例的信号图。
图11-13示出了允许节点验证CAN总线的另一节点的消息序列的消息格式的示例。
图14和图15示出用于在CAN总线上的两个节点之间设置应变的消息序列的消息格式的示例。
图16-18示出了用于通过对称密钥将CAN总线上的两个节点绑定的消息序列的示例消息格式。
图19-23示出了用于验证加载的固件的消息序列的消息格式。
图24是在采用安全通信协议的CAN总线上运行应用程序命令的示例消息格式。
图25示出了用于自动银行业务机的闸门安全系统的示例。
图26示出了图25中描述的安全系统的传感器信号的示例。
图27示出了用于保护自动银行业务机的闸门安全的示例方法。
图28示出了用于检测自动银行业务机中的梭机的篡改的系统。
图29是包含示出可以在其上实现示例实施方式的自动银行业务机中的梭机的示例的几个视图。
图30是用于检测图29中描述的梭机中的纸币的方法的方框图。
图31示出了低功率钞箱式安全系统的示例。
图32示出了根据示例实施方式的用于轻量级ATM通信总线协议的数据包格式的示例。
图33示出了可以在其上实现示例实施方式的计算机系统。
图34示出了采用可信平台来绑定通过不安全总线进行通信的两个控制器的核心模块控制器的示例实施方式。
图35示出了绑定通过不安全总线进行通信的两个控制器的协议的示意图。
发明内容
以下给出示例实施方式的简化概述,以提供对示例实施方式的一些方面的基本理解。该概述不是示例实施方式的详细概述。其目的既不在于确定示例实施方式的关键或重要元素,也不划定所附权利要求的范围。其唯一目的是以简化形式呈现示例实施方式的一些构思,作为稍后呈现的更详细描述的序言。
根据一个示例实施方式,在本文公开了一种自动化银行业务,包括:钞箱,用于存放纸币;闸门;梭机,其可操作为将纸币从钞箱传送到闸门;传送路径,用于将纸币从钞箱传送到梭机;光管传感器,其可操作为检测从所述钞箱中取出的纸币;双重检测器,其位于与梭机相邻的传送路径的一端;多个梭机入口传感器,其可操作为检测进入梭机的纸币;转向/收回钞箱;梭机入口闸门,其可操作为选择性地将纸币引导至梭机或转向/收回钞箱;以及控制器,其可操作为控制所述梭机入口闸门,所述控制器与所述光管传感器、所述双重检测器和所述多个梭机入口传感器耦接。所述控制器可操作为基于从所述光管传感器、所述双重检测器和所述多个梭机入口传感器接收的信号来操作所述梭机入口闸门。
根据示例实施方式,本文公开了一种计算机实现的方法,其包括追踪纸币流动并确定是否检测到错误。如果检测到错误,则根据检测到的错误确定解决方案。然后执行确定的解决方案。检测到的错误状况包括但不限于检测到的双纸币、过度偏斜的纸币、卷曲的纸币、折叠的纸币、纸币之间的间隙太小、丢失纸币、失速纸币和计数不匹配。可用的解决方案包括但是不限于开始和停止传送路径、向后传送路径短距离、倾倒梭机、以及发送追踪纸币。
根据示例实施方式,本文公开了一种用于安全通信的计算机实现的方法,包括生成命令标识和数据。命令标识(ID)和数据进行散列。散列的子集用作消息认证码(MAC)。为命令ID、数据和MAC生成校验和。
根据示例实施方式,本文公开了一种在诸如控制器局域网(“CAN”)总线等不安全的总线上的安全通信的计算机实现的方法。
根据示例实施方式,本文公开了一种用于检测自动银行业务机的闸门处的篡改的技术。
根据示例实施方式,本文公开了一种用于检测自动银行业务机的梭机的篡改的技术。
根据示例实施方式,在此公开了一种用于检测客户未提取的纸币的技术。
根据示例实施方式,本文公开了一种下部钞箱式安全系统。
根据示例实施方式,本文公开了一种轻量级ATM总线架构。
具体实施方式
本说明书提供的示例并不旨在限制所附权利要求的范围。附图通常标注示例的特征,其中,应该理解和认识到,相同的附图标记用于指代相同的元件。在说明书中对“一个实施方式”或“实施方式”或“示例实施方式”的引用意味着所描述的特定特征、结构或特性被包括在本文所描述的至少一个实施方式中,但不隐含有特征、结构或特性出现在本文描述的所有实施方式中的意思。
图1是示出用于通过闸门将现金自钞箱传送到自动银行业务机外部的用户的自动银行业务机100的一部分的示例的简化方框图。所示出的示例示出了四个钞箱102、104、106、108,但是本领域技术人员应该容易地理解,自动银行业务机可以使用物理上可实现的任何数量的钞箱。在一个示例实施方式中,钞箱102、104、106和108可以包含不同面额的纸币(例如,钞箱102可以包含$1.00钞票,钞箱104可以包含$10.00钞票,钞箱106可以包含$20.00钞票,并且钞箱108可以包含$50.00钞票)。在其他实施方式中,多个钞箱可以包含相同的面额(例如,钞箱106和108都可以包含$20钞票)。在现金提取交易期间,根据交易的数额,在特定的实施方式中,根据用户选择的面额来从一个或多个钞箱102、104、106和108中获得纸币。
当钞票从钞箱102、104、106和108中的一个移动到传送路径110时,光管传感器112检测从钞箱向传送路径110转移的钞票。光管道传感器112与具有用于执行本文描述的功能的逻辑的控制器114耦接。如本文中所使用的,“逻辑”包括但不限于执行功能或动作,和/或引起另一部件的功能或动作的硬件、固件、软件和/或各个的组合。例如,基于期望的应用或需要,逻辑可以包括软件控制的微处理器、诸如专用集成电路(ASIC)、可编程/编程的逻辑器件、包含指令的存储器装置等分离逻辑、或者在硬件中搭载的组合逻辑。逻辑也可以被充分体现为当被处理器执行时执行期望的功能的软件。在示例实施方式中,控制器114可操作为跟踪从钞箱取出的纸币到它们到达梭机116或转向/收回钞箱118的进度。基于从光管传感器112发送的信号,控制器可操作为确定钞箱出来的纸币的数量、纸币之间的间隙是否足以进入梭机116、纸币偏斜了多少(如果有的话),并且确定潜在的双纸币(例如,如果从钞箱中取出纸币所花费的时间太长,则存在多个纸币从钞箱中取出的可能性)。如果控制器114确定从钞箱中取出的一个或多个纸币存在问题(例如,取出过多纸币),则控制器使用转向闸门120来将纸币转向到转向/收回钞箱118,而不是允许纸币传递到梭机116。可以从钞箱拾取新纸币,以替换转移到转向/收回钞箱118的纸币。转向/收回钞箱118包含已经从梭机116转移来的纸币、已经从梭机116收回(例如,呈现给客户但没有拿走的纸币)的纸币或这两者。
在共同拥有的美国专利申请15/184,063中公开了适合于实现光管传感器112的光系统的示例,其内容通过引用将其内容结合于此。在一个示例实施方式中,所发射的光由光管引导并且在钞箱102、104、106、108与传输路径110之间穿过。在另一示例实施方式中,在没有光管的情况下使用聚焦光束(例如,准直光或者激光)。上述实施方式中的任何一个都可以用来实现光管传感器112。
双重检测器122设于传送路径110的在转向闸门120之前的端部处。双重检测器122可采用任何合适的技术来检测是否从钞箱中取出多张纸币,例如,通过测量纸币的厚度或者确定纸币通过是否花了太长时间(例如,部分重叠的纸币)。双重检测器122与控制器114耦接。因此,如果双重检测器122检测到输送路径110上的纸币可能出现双重或其他问题,则控制器114可以将纸币经由转向闸门120转移到转向/收回钞箱118。
梭机入口传感器124包括多个传感器,用来检测进入梭机116的纸币的多个潜在问题。例如,梭机入口传感器124可以包括但不限于计算偏斜、确定纸币之间的间隙,和确定卷曲(例如,纸币是否不平坦)的传感器。
图2示出了可操作为检测卷曲的四个梭机入口传感器124的示例。传感器124被定位成使得当钞票通过时,在某个时间点,适时阻挡所有的传感器。然而,如图2所示,如果纸币卷曲或折叠,至少有一排传感器不会被阻挡。
图3示出了计算纸币的偏斜的示例。可以通过当水平行中的传感器124被阻挡时的时间差来计算偏斜。
基于来自梭机入口传感器124的信号,控制器114可确定进入梭机116的纸币是否有问题。如果控制器114确定进入梭机116的纸币有问题,则控制器114可将纸币从梭机116倒出以倒入转向/收回钞箱118中。
鉴于以上在图1-3中描述的前述结构和功能特征,将参考图4更好地理解根据示例实施方式的方法400。尽管为了简化说明的目的,图4的方法400被示出和描述为连续执行,但是应当理解和认识到,示例实施方式不受所示顺序的限制,因为一些方面可以以不同顺序发生和/或与本文所示和描述的其他方面同时发生。此外,并不是所有示出的特征都被要求来实现示例实施方式。本文描述的方法400适合于在硬件、由处理器执行时的软件或其组合中实现。例如,方法400可以由图1中的控制器114来实现。
在402处,对从钞箱(例如,一个或多个钞箱102、104、106、108)到梭机116的纸币流的跟踪开始。纸币流可适当地包括单个纸币或多个纸币。
在404,进行否存在错误状况的判定。可被检测的错误包括但不限于:检测到双纸币、过度倾斜的纸币、卷曲或折叠的纸币、纸币间的间隙太小、缺失、失速或未到达预期位置的纸币(例如,由光管传感器检测到的纸币离开钞箱,但在期望时间段内没有到达双重检测器传感器)、或者计数不匹配(到达传感器或梭机的纸币数量与取出的纸币数量不匹配)。纸币可能会在水平运输(在钞箱和双重检测器之间)或在垂直运输(在双重检测器和梭机之间)失速。
如果没有检测到错误(否),则纸币流跟踪继续。然而,如果检测到错误(是),则启动错误恢复。
在406,确定错误的解决方案。示例性解决方案包括但不限于:开始和停止运输(例如,在传送路径上移动纸币的皮带)、向后进行运输(例如,通常非常短的距离,例如,小于一英寸,以防止纸币堵塞钞箱)、倾倒梭机、发送追踪纸币(chaser note)(如果纸币进入梭机,则传送路径是畅通的)。例如,在计数不匹配的情况下,可以倾倒梭机并拾取新纸币。
在408处,实施在406处选择的解决方案。例如,梭机可在计数不匹配时或者如果纸币之间的间隙太小时倾倒、或者在丢失纸币或失速的纸币的情况下可发送追踪纸币(并且在一个示例实施方式中,梭机在追踪纸币到达梭机之后倾倒)。
在410处,确定在408执行的解决方案是否清除了错误。例如,如果发送追踪纸币,则追踪纸币确实到达梭机。
如果在410处确定错误已被清除,例如问题已解决(是),则在402的对纸币流的跟踪重新开始。可根据错误类型或梭机是否倾倒,来重新开始纸币流。
然而,在410处,确定错误状况仍然存在(“否”),在412处,确定是否存在更多的动作可用来清除错误。这些动作可包括以前尝试的动作。例如,可以发送额外的追踪纸币,直到已经发送预定阈值数量的追踪纸币。作为另一示例,可以多次启动和停止传送路径。作为另一示例,传送路径可以启动和停止,并且随后的动作可以是发送追踪纸币。
如果在412处有更多的动作可用(是),则在406处确定下一个解决方案,在408处执行下一个解决方案,并且在410处确定下一个解决方案是否解决了问题。然而,如果在412处,不再有可用动作(否),则输入故障状况。这可导致自动银行业务机停止使用。
图5是示出自动银行业务机500的部件之间的可以在其上实现示例实施方式的内部通信的示例的方框图。自动银行业务机500包括具有处理器502的钞箱模块、与现金吐钞器506以及用于自动银行业务机500的控制器508(例如,ATM个人计算机或“PC”)耦接的核心模块处理器504(例如,可以是图1中的控制器114的一部分)。
根据示例实施方式,本文公开了用于在钞箱502和核心模块处理器504之间通信的安全协议。在一个示例实施方式中,由于有限的通信能力,钞箱502和模块处理器504之间的通信限制为少量字节,例如,十(10)字节。在一个示例实施方式中,采用混合协议来确保通信安全。
图6示出了用于确保图5所示的钞箱502和核心模块处理器504之间的通信安全的示例数据包格式600。数据包格式600包括由钞箱502和核心模块处理器504如下生成的1字节命令标识符(ID)602、数据(4字节)604、消息认证码(“MAC”)(4字节)606以及校验和608。
生成命令标识符和要发送的数据(例如,有效载荷)。根据获取的命令标识符和有效载荷的散列获得消息认证码(“MAC”)。在一个示例实施方式中,因为散列大于4个字节,例如在一个实施方式中,散列是20个字节,所以从散列中选择四个字节,作为数据包的MAC。例如,可以选择前四个字节,然而,本领域技术人员应该容易理解,可以选择任何四个字节,并且在特定实施方式中,所选字节可以根据数据包而变化(例如,第一数据包使用散列的前4个字节,第二个数据包使用第2-5字节等)。校验和608是基于命令ID 602、有效载荷604和MAC 606生成的。
在具体的实施方式中,使用应变(stain)或使用一次的数值(Nonce)。这可以确保即使不同的数据包具有相同的命令标识符和有效载荷,该不同的数据包也具有不同的MAC。
图7示出了根据示例实施方式的自动银行业务机700的示例,其中,保险箱704中的控制器702(电路卡组件“CCA”核心模块控制器)与闸门控制器708在CAN总线706上采用安全通信协议。在一个示例实施方式中,控制器702是模块控制器,例如,图1中的示例控制器114,其位于自动银行业务机内的安全区域(例如,存储现金或任何其他贵重物品的保险箱或任何区域)。可以使用安全通信来防止未经授权进入(例如,打开)闸门或者防止未经授权的命令被发送到能请求将现金传送到闸门的模块控制器。闸门控制器708位于客户接口印刷电路板组件(CI PCBA,在本文中也可简称为“CI”)。虽然本文的示例是针对自动银行业务机700的(模块)控制器702和闸门708,但是本领域技术人员应该容易理解,本文描述的示例实施方式可以应用于在不安全的总线(例如,CAN总线)上通信的任何两个节点。
在一个示例实施方式中,安全命令建立密钥,确定控制器702(在本文中也被称为“主”)和闸门控制器708是否适当地绑定,并且通常允许控制器702和闸门控制器708完整(integraity)通信。在一个示例实施方式中,闸门控制器708可以在从CypressSemiconductor Corporation 198Champion Court San Jose CA95134获得的(片上可编程系统)上实现。本领域的技术人员应该容易理解,虽然一些所示示例采用但是可以在任何合适的处理器上实现本文所描述的原理。
在一个示例实施方式中,密钥长度为8个字节,消息认证码(MAC)是上段3字节的散列Msg_id+消息有效载荷+密钥或应变(除非给定消息另有说明)。在一个示例实施方式中,散列是SHA1(安全散列算法1),使用出厂默认密钥(“FD”或“FDK”)来联结控制器702和708,然后使用控制器702和708已知的安全对称密钥。
在一个示例实施方式中,可以使用应变(或随机数)来防止重放攻击。例如,应变可能是与消息数据进行散列后的滚动8字节密钥。在使用之前可以递增应变,以生成MAC(发送)或确认MAC(接收)。在特定实施方式中,控制器702和控制器708都是小端(littleendian)处理器。为了提高处理器效率,8字节密钥的最高有效字节在递增方面被认为是最低有效的。递增较高的4个字节。
在一个示例实施方式中,用于确认应用的有效性的散列是完整的20个字节。控制器708(PSoC)‘读取’实际上是对PSoC的写入以及来自PSoC的带有该地址处的关联数据的响应。在一个示例实施方式中,由于‘读取’数据是可信(authentic)的,所以周期的‘写入’部分不需要受到保护。
在一个示例实施方式中,如果在挑战(challenge,质询)、设置密钥和绑定序列(bond sequence)期间,MAC故障,则模块控制器702断电并且重新开始序列。这样做是为了确保总线上通信的完整性,并防止入侵者重放消息,以找出密钥。
在一个示例实施方式中,如果在挑战和设置应变序列期间,MAC故障,则电路卡组件(“CCA”)必须断电,并且重新开始序列。这样做是为了确保总线上通信的完整性,并防止入侵者重放消息,以找出密钥。
图8示出了说明用于CAN总线上的两个节点之间的初始密钥绑定的过程的示例信号图800。例如,信号图800可以由图7中的模块控制器702和闸门控制器708用于初始密钥绑定。
图9示出了说明用于在图8中绑定密钥的两个节点之间建立应变(随机数)的过程的示例的信号图900。例如,信号图800可以由图7中的模块控制器702和闸门控制器708用于初始密钥绑定。
图10是示出用于在CAN总线上安全通信的两个节点的应用验证和初始化的过程的示例的信号图1000。例如,信号图800可以由图7中的模块控制器702和闸门控制器708用于初始密钥绑定。
在一个示例实施方式中,节点可以使用消息序列来确定另一节点是否被绑定(例如,知道当前密钥)。两个节点在序列中都贡献自己的随机数据来禁止重放场景。在一个示例实施方式中,具有随机“种子”数据的消息不包括作为HMAC(散列消息认证码)的一部分的命令ID。例如,图11示出了控制器702(在这个示例中,主)用于闸门控制器708(在该示例中,PSoC)的数据包格式1100的示例。作为响应,闸门控制器708(在这个示例中,PSOC)发送响应。在响应中,闸门控制器708将其自己的随机数据和MAC的一系列随机数加起来,并将响应发送回模块控制器702(在这个示例中,主)。在图12中示出响应1200的示例。控制器702发送对由闸门控制器708发送的响应的响应。在由模块控制器702(或者在这个示例中,主(main))发送的响应中,随机数据的MAC由闸门控制器(或者在本例中为PSoc)发送并且将由闸门控制器708发送的随机数据的MAC返回给闸门控制器。图13示出了来自闸门控制器的挑战响应1300的示例。
图14和图15示出了分别用于在CAN总线上的两个节点之间设置应变的消息序列的消息格式1400和1500的示例。两个节点(模块控制器702和闸门控制器708在所示的示例中分别称为主和PSoc)向应变提供其自己的种子。应变是主种子、PSoc种子和安全密钥的散列(例如,Stain=hash列(主种子+PSoC种子+SK))。节点702、708提供其自己的种子,以防止重放攻击。图14是从模块控制器(主)702向闸门控制器708发送的用于初始化数据的设置应变消息的消息格式1400的示例。图15是由闸门控制器(PSoC)708通过闸门控制器708种子发送的响应的示例消息格式1500,使得两个节点具有相同的随机数据,使用了相同的散列和密钥,并且可以为应变初始化相同的值。在一个示例实施方式中,主种子(4个字节)加上(PSoC)种子(4个字节)的SHA1散列和安全密钥(8个字节)的8个最高有效字节变成“应变”并用于将来的安全通信。在一个示例实施方式中,出厂默认密钥不用于设置应变。
图16-18示出了用于通过对称密钥将CAN总线上的两个节点绑定的消息序列的示例消息格式。命令/响应开始绑定过程,其将出厂默认密钥改变为两个节点(例如,模块控制器702和闸门控制器708)已知的安全密钥并存储在受保护的闪存中。两个节点都为对称密钥(SK)提供种子。SK使用模块控制器702(主)和闸门控制器708(PSoC)种子与FD进行散列后的散列。种子是4字节的随机数据。图16示出了用于密钥组命令的消息格式1600的示例。图17示出了用于密钥设置响应的消息格式1700的示例。
在一个示例实施方式中,主种子(4字节)加上(PSoC)种子(4字节)SHA1散列和出厂默认密钥(8字节)的8个最高有效字节变成“安全密钥”并用于建立“应变”。安全密钥未设置为等于出厂默认密钥。
一旦密钥设置成功,绑定消息指示PSoC将SK写入闪存。该消息通过使用从密钥设置序列计算的SK来鉴真。如果消息是真实的,则绑定响应确认收到绑定,并使主(main)将SK写入其闪存。一旦绑定,主和PSoc都不会重新绑定。绑定命令和响应具有与图18中所示的相同的格式1800。
图19-23示出了用于验证加载的固件的一系列消息的消息格式。例如,这些消息可以允许模块控制器72(主)验证闸门控制器(PSoC)的固件并命令引导加载程序运行其应用程序。
图19示出了获取应用程序散列命令的示例消息格式1900。该命令指示闸门控制器(PSoc)708在其闪存中计算应用程序的散列。闸门控制器(PSoc)708发送响应。在所示的示例中,通过具有5个字节和标准MAC的4个分段中发送响应,然而,本领域的技术人员应该容易理解,响应的其他格式是可能的。图20示出了用于第一响应消息的格式2000的示例,图21示出了用于第二响应消息的格式2100的示例,图22示出了用于第三响应消息的格式2200的示例,并且图23示出了第四响应消息的格式2400的示例。
一旦闸门控制器702(主)确定应用程序有效,闸门控制器(主)702发送运行应用程序命令,以指示引导加载程序跳转到其应用程序。当应用程序接下来运行时,这个命令没有响应。图24是采用安全通信协议的CAN总线上的运行应用命令的示例消息格式2400。
图25示出了用于自动银行业务机的闸门安全系统2500的示例。闸门安全系统包括两个固定的传感器,即,(传感器1)2502、(传感器2)2504和与闸门2508耦接的旋转磁体2506。当闸门2508完全关闭时,传感器2502的信号自第一状态(例如,低状态Ov)起,而传感器2500的信号保持第二状态(例如,半电压(例如,在该示例中为2.5v))。当闸门2508完全打开时,传感器2502的信号进入第二状态(半电压(例如,2.5v)),而传感器2504的电压进入第三状态(例如,高电压状态(例如,5.0v))。基于这些传感器信号,控制器2510可以确定闸门2508的当前状态。
图26示出了图25中描述的安全系统的传感器信号2600的示例。左侧2602示出了当闸门被认为完全关闭时的信号。右侧2604示出了当闸门完全打开时的信号。
图27示出了用于保护自动银行业务机的闸门的示例方法2700。在正常操作中,命令闸门马达(未示出)进行操作,这导致磁体移动并且由控制器(图25中的2510)分析磁体-传感器(图25中的2502、2504)信号。当闸门关闭时,这由搁在传感器1 2502(图25)上的磁体2506(图25)检测。如果在马达不运转时,控制器2510(图25)基于来自传感器2502、2504(图25)的信号检测到运动,则这将指示异常情况(例如,图25中的闸门2508的篡改)。当检测到潜在的篡改状况时,控制器2510可以采取任何期望的动作,例如产生警报、创建日志条目等。
方法2700在模块加电时在2702处开始。在2704,闸门初始化。
在2706处,如果闸门没有成功初始化(否),则模块等待较高层(例如,ATM处理器或其他处理器/控制器,例如,图7中的CCA核心模块控制器702;图5中的模块处理器504)。在接收到初始化命令(INIT)后,闸门尝试初始化,如2704处所示的一般。
如果在2706处,闸门成功初始化(是),则在此时已知该闸门是关闭的。然后激活欺诈检测。
当欺诈检测被激活时,传感器如本文所述地检测闸门的任何运动。如果由闸门传感器检测到运动,如2714所示,则闸门控制器确定正在尝试篡改或欺诈。如2704所示,闸门控制器可以将欺诈/篡改尝试报告给较高层处理器。然而,如本领域技术人员可以容易地理解的那样,闸门控制器也可以启动其他动作。
当由闸门控制器操作(例如,打开)闸门时,在2716,闸门控制器被激活。在2718,禁用欺诈检测。这防止错误报告篡改或欺诈尝试。在2720,闸门完成后,闸门关闭。如果在2722处,闸门成功关闭(是),则处理返回到2710并且激活欺诈检测。然而,如果在2722处,闸门没有成功关闭(否),则闸门的操作停止,并且闸门控制器等待较高层来发送初始化命令,如2708所示。在特定实施方式中,闸门控制器也可以响应于确定在操作之后闸门不能关闭而产生警报或报告给更高层。
图28示出了用于检测自动银行业务机中的梭机的篡改的系统2800。在一个示例实施方式中,梭机2802用来将纸币从核心模块2804传送到闸门2806处的客户。梭机2802具有两个不期望移动的静态位置。这两个位置是在闸门(客户)位置2808和在归属(堆放,在保险箱中)位置2810。这些位置2808、2810代表梭机轨道的两个极端。在一个示例实施方式中,诸如霍尔传感器等传感器位于离轨道的端部几毫米的位置,以便当传感器磁体(未示出)接近端部/静态位置时将穿过传感器。这些传感器2812、2814用于双重目的。当接近端部时,固件(控制器2816)可以检测到梭机2802距轨道端部的距离,此时,固件命令步进马达移动若干步伐,以到达轨道端部。一旦梭机到达轨道端部并且不期望移动,则固件根据梭机位于哪一端来监视传感器2812或2814。如果检测到动作并且没有命令梭机移动,则固件假定外部力量正在移动梭机并宣布篡改事件。上面描述的技术用在梭机轨道的两端检测未授权的梭机运动。
图29包含示出可以在其上实施示例实施方式的自动银行业务机中的梭机的示例的几个视图。图29中所示的梭机适合于实现梭机116(图1)和/或梭机2802(图28)。
图29A示出了梭机的透视图。该视图示出了梭机入口传感器发送和接收点2902以及梭机介质传感器发送和接收点2904。
图29B示出了梭机的正视图的一个示例。该视图示出了高纸币限位位置2906、低纸币限位位置2908和板2910。
图29C示出了梭机的示例侧视图。该视图示出了板枢轴2912、梭机介质传感器(发射器“TX”2914和接收器“RX”2916)以及呈递皮带2918。箭头2920指示皮带2918的向前方向。梭机入口2922位于图示的示例的底部。凸轮马达在梭机的外部。凸轮马达在梭机内移动执行多个动作的凸轮,其中,将在图30中描述一些动作。例如,移动纸币停止致动器并展开梭机板,这是图30中描述的两个功能。皮带马达移动呈递皮带。呈递皮带可以移动梭机板保持的纸币。当皮带向前转动时(当梭机在闸门口时,这是纸币向客户移动的方向),其将把纸币移出梭机,当梭机在归属位置时,这是朝下转动的方向(参见例如图28)。相反方向将纸币拉入梭机中。
图30是用于检测图29中描述的梭机中的纸币的方法3000的方框图。方法3000可以由可操作地耦接到梭机、凸轮马达和皮带马达的控制器(例如,图18中的控制器2816或图1中的控制器114)执行。
在客户从梭机中移除纸币之后,发生以下动作,以验证客户已经拿走所有呈现的纸币:
在3002,梭机返回其归属位置。例如,这将是图28中的位置2810。
在3004,命令凸轮马达将板在梭机中展开并将纸币限位器(note stop)移动到最低位置。这可以松开梭机上高处卡住的任何纸币。
在3006处,命令凸轮马达将纸币限位器返回到高位置并关闭板。
在3008处,检查梭机介质传感器是否阻挡。如果梭机介质传感器被阻挡,则梭机中仍然留有纸币。因此,如果在3010处介质传感器被阻挡(是),则如3012所示,进入故障状态。响应于梭机处于故障状态,可采取任何合适的动作。例如,梭机可以保持(例如,锁定)在归属位置,直到检查和/或维修梭机。在一个示例实施方式中,梭机中的纸币倒入转向/收回钞箱中(参见例如图1中的转向/收回钞箱),并创建日志条目来识别交易,并且将纸币倒入转向/收回钞箱。然后,可以实现方法300,并且在梭机中仍然检测到纸币,梭机可以保持(例如锁定)在归属位置,直到检查和/或维修梭机。
如果在3010处梭机介质传感器未被阻挡(否),则在3014处,命令现有的皮带马达沿第一(例如,向前)方向移动皮带(例如,90mm)。如3016所示,对梭机介质传感器进行阻挡监测。如果在3016,介质传感器被阻挡(是),则在梭机中存在纸币,并且进入在3012的故障状态。
如果在3016,介质传感器未被阻挡(否),则在3018,命令现有的皮带马达沿第二(例如,相反)方向移动皮带(例如,90mm)。如3020所示,对梭机介质传感器进行阻挡监测。如果在3020处,介质传感器被阻挡(是),则梭机中存在纸币,并且进入由3012指示的故障状态。
如果在3020处,介质传感器未被阻挡(否),则在3022,命令凸轮马达在梭机中展开板。如3024所示,对梭机介质传感器进行阻挡监测。如果在3024,介质传感器被阻挡(是),则在梭机器中存在纸币,并进入由3012指示的故障状态。
如果在3024,介质传感器未被阻挡(否),则在3026,命令现有的皮带马达沿第一(例如,向前)方向移动皮带(例如,90mm)。如3028所示,对梭机介质传感器进行阻挡监测。如果在3028处,介质传感器被阻挡(是),则梭机器中存在纸币,并且输入由3012指示的故障状态。
如果在3028,介质传感器未被阻挡(否),则在3030,命令凸轮马达关闭梭机中的板。如3032所示,对梭机介质传感器进行阻挡监测。如果在3032处,介质传感器被阻挡(是),则梭机件中存在纸币,并且进入由3012指示的故障状态。
如果在3032,梭传感器没有被阻挡(否),则梭机被认为是畅通的。
图31示出低功率钞箱安全系统3100的示例。低功率安全系统3100包括处理器3102,处理器3102可以与外部电源3104耦接(例如,当安装到自动银行业务机中时),并且当不与外部电源3104耦接时,提供有来自电池3106的电力。处理器3102可操作为接收来自加速度计3108、馈送轮传感器3110和打开盖传感器3112的信号。
在一个示例实施方式中,当处理器未耦接到外部电源3104时,处理器进入较低功率(睡眠)模式。在一个示例实施方式中,加速度计3108、馈送轮传感器3110和打开盖传感器3112可操作为在检测到某些事件时唤醒处理器。例如,加速度计可以在检测到钞箱落下时唤醒处理器3102。馈送轮传感器3110可以在检测到馈送轮的运动时唤醒处理器3102。打开盖传感器可以响应于检测到打开钞箱的盖而唤醒处理器3102。
在从加速度计3108、馈送轮传感器3110或打开盖传感器3112中的一个或多个接收到的信号而唤醒时,处理器3102可以根据其编程采取动作。在特定实施方式中,处理器3102可以记录该事件,并且在与自动银行业务机耦接时,处理器3102可以向自动银行业务机发送警报。
在一个示例实施方式中,本文描述了轻量级ATM通信总线(LACB)架构。LACB使用标签长度值(TLV)格式来表示XML消息。在一个示例实施方式中,标签和长度均是32位值。在标签内,12位表示命名空间和到名称的符号表中的12位索引。长度指定作为标签一部分的后续字节数。该数据可包含其他TLV定义。本文描述的位值可以用于实现LACB架构,并且本领域技术人员应该容易理解,根据期望的实现方式,可以采用任何位值(比特值)。因此,本文描述的示例实施方式不应该被认为受限于在本文使用的这些值。图32示出了示例实施方式中采用的示例TLV格式3200。
在一个示例实施方式中,LACB使用符号表来将逻辑名称和数据类型分配给标签ID。该符号表使用在编译时处理或在运行时动态处理的LACB模式定义。LACB符号表可以通过转换实用程序从XML模式导出或者可以由用户直接创建。符号表和XML命名空间之间有一一对应关系。
LACB模式被表示为XML文件,但是像所有消息一样,在LACB内以TLV格式表示。因此,LACB符号表包括定义由LACB使用的模式所需的命名空间。
对于每个命名空间,符号表具有用于所有元素和属性的名称的条目。每个条目具有用于指示是一个元素还是属性的标志、确定是否被加密的安全指示符以及确定值的存储方式的类型指示符。XML模式数据类型的子集用于确定如何来对值存储:
·xsd:integer,xsd:unsigned-32位值(长度为4)
·lacb:hexUnsigned-与xsd:unsigned相同,但转换为XML中的十六进制表示
·xsd:dateTime-表示统一时间的日期的32位值(长度为4);
·xsd:double-双精度浮点数(长度为8)
·xsd:hexBinary-表示任意长度的编码值的二进制数据
·xsd:boolean-32位0或1(长度为4)
任何其他数据类型存储为表示原始XML内容的ASCII字符串。
标签标志
为了避免应用程序内的符号表查找,标记值的高位反映符号表属性。这允许消息是自解码的,而不需要符号表查找。
由于许多消息值是4字节或更少,所以其中一个标志指示4字节长度,在这种情况下,省略TLV中的长度值。这大幅减小了针对数字数据的长列表的消息大小。
以下是按位标记标志的当前定义:
31(0x80000000)-1表示元素,0表示属性;
30(0x40000000)-1表示复杂元素,0表示简单(有一值);
28(0x10000000)-1表示已加密;
27(0x08000000)-1表示长度为4,并且值紧随其后。
XML表示
XML元素由TLV值表示。元素TLV值可以包含属性TLV值和其他元素TLV值,回显(echoing,重复)XML文档的结构。特殊标记0x00000000指示元素内容,并且可以在每个元素TLV值的顶层内出现一次。其数据类型由包含元素的数据类型决定。
作为示例,考虑这个简单的XML文档:
在编译时或ACB至LACB桥内运行时,处理模式文件“testSchema.xsd”,以产生以下符号表:
假设“http://www.diebold.com/schemas/test”由id 10(0x000A)标识,则所得到的用于上述XML的TLV数据将如下(注意,十进制42是0x2A并且1234567是0x12D687)。对于这个示例,忽略“4字节”标志优化:
模式处理
由于诸如设备模块等外围设备不具有互联网访问权并且不能访问主ATM硬盘上的存储器,所以该些模式既可以直接编译成模块固件,也可以在主处理器上读取和处理并在初始化时发送到外围设备。LACB模式是XML模式的更简化形式,包含构建符号表所需的数据,并添加了标记id。当使用XML模式时,首先将其转换为LACB模式,以供外围设备处理。下面是一个模式定义的示例,如果以动态方式处理,该模式定义将被发送到外围设备,用XML表示(实际的消息将是等效的TLV):
如上所述,模式定义命名空间在所有符号表中都用固定的命名空间id呈现。在上述定义之后,“http://www.diebold.com/schemas/test”将被添加到符号表中。
在一个示例实施方式中,当消息被发送到外围设备时,ACB至LACB桥自动加载和处理模式定义。这确保外围设备支持兼容的消息格式。
安全性
消息的敏感部分可以通过标记标签本身来加密。这可以使用有关元素或属性定义的“lacbTypes”命名空间的“encrypt”属性在XML模式中指定。这表示在LACB模式中,并由此反映在符号表中。例如,下面的模式确保了“内部(inner)”元素内容:
注意,这应该与编译后的模式一起使用。否则,模式本身可能很容易被攻破,从而改变敏感标签的安全性。
固件视图
为了方便起见,使用XML语法和范例来表达LACB消息,但是在外围设备级别上不存在实际的XML。在内部,所有的消息数据都以TLV格式存储,并尽可能在归属操纵数据。
在内部,消息是以典型的TLV结构构建的,但是对于标识id的抽象,API看起来很像XML DOM。
作为示例,考虑以下理论现金单位结构:
以下伪代码将为以上结构创建TLV消息:
当在构建时来处理模式时,使用为元素和属性名称定义的预处理器来生成报头文件。上面的示例使用了这些定义(即kTLV_XXX)。对于直到运行时间前不存在标签映射(例如,使用ACB/LACB桥)的情况,元素名称和属性可以与符号表一起使用。要通过名称访问上面结构中的值,可以使用类似DOM的接口,来为第一逻辑CU获取第二物理CU的工程数据,如下所示:
由API返回的值是指向消息TLV内的实际数据的指针,所以如果需要的话,一旦释放消息,数据应该被复制。
对于模块和OS I消息接口使用这种方法,提供以下方面:
-用XML与原始TLV格式表示时,消息可以更为人可读;
-XML模式可用于验证,以强制执行消息结构并提供默认值;
-可以使用XML技术(例如,XSLT)来操作测试工具中的消息;
-Genesis ACB可以与LACB部件进行通信,而不需要特定的消息转换;
-通过一个通用的消息架构,服务可以轻松地在OSI和PC之间运转)。
消息路由
LACB消息路由的逻辑与具有类别、类型和id的ACB的逻辑相同。路由信息作为根元素之外的元素而包含到每个消息中。类似地,消息注册也通过LACB消息来执行。因此,与模式定义命名空间一样,用于消息路由的命名空间也存在于所有符号表中。
LACB编程接口
.NET组件
从.NET(即C#)组件之内,发送模式,并且基于注册数据,在连接器内的ACB和LACB之间透明地转换消息。编程接口在设计上与Genesis架构中目前使用的相同。
C/C++组件
与Genesis.NET接口不同,C API不在其基部使用XML消息。相反,类似于DOM API,API访问消息的树形表示。另外,消息的特定组件可以通过简单的类XPath表达(XPath-likeexpression)来访问。
支持文件
通过xsd2lacb实用程序为每个模式生成以下支持文件:
·.lacb-包含从XML模式生成的LACB模式。可以通过ACB-LACB桥直接发送到LACB组件,以允许在LACB/TLV和XML之间进行转换;
·.h-包含来自LACB模式的C源代码,其可以#include包括进来,以定义LACB_SCHEMA结构以及元素和属性名称的常量;
·.txt-这是标签id和名称的为人可读的概要,可用于调试。
C++接口
C API上的C++封装器使消息访问和创建更“啰嗦”。封装器类别反映LACB API使用的C结构:
·LACBMessage-封装LACB_MESSAGE结构
·LACBEIement-封装表示消息中元素的LACB_ELEMENT结构
·LACBAttribute-封装表示消息中的属性的LACB_ELEMENT结构
·LACBContext-封装LACB_CONTEXT结构
LACBMessage、LACBEIement和LACBAttribute上的运算符重载允许消息操作:
运算符重载约定:
·>>-引用消息或元素的子元素
·+=向消息(根元素)或元素添加子元素
·Λ引用元素上的属性
·Λ=向元素添加属性
·引用元素下的第N个子元素
·=将值分配给属性或元素
·()类型转换获取属性或元素的值
·(LACB_ELEMENT*)到C结构指针的类型转换可以用作C函数的参数,正如人们所期望的
使用C++接口,上面的现金单元示例可以如下构建:
图33示出了可以在其上实现示例实施方式的计算机系统。例如,可以采用计算机系统3300来实现控制器114(图1)的功能、钞箱502(图2)的逻辑、模块处理器504(图5)的逻辑、ATM PC 508(图5)、控制器702(图7g)、闸门控制器708(图7)、控制器2510(图25)和控制器2816(图28)的功能。处理器3304可以用作处理器3102(图32)。
计算机系统3300包括用于传送信息的总线3302或其他通信机构以及与总线3302耦接的用于处理信息的处理器3304。计算机系统3300还包括耦接到总线3302的用于存储要由处理器3304执行的信息和指令的主存储器3306,例如,随机存取存储器(RAM),或其他动态存储装置。主存储器3306还可以用于在执行由处理器3304执行指令期间存储临时变量或其他中间信息。计算机系统3300还包括耦接到总线3302的用于存储处理器3304的静态信息和指令的只读存储器(ROM)3308或其他静态存储装置。存储装置3310(例如,磁盘或光盘)被设置耦接到总线3302以存储信息和指令。
示例实施方式的一个方面涉及使用计算机系统3300来实现本文描述的示例实施方式。根据示例实施方式,响应于处理器3304执行包含在主存储器3306中的一个或多个指令的一个或多个序列,由计算机系统3300提供实现本文描述的示例实施方式。这种指令可以从另一计算机可读介质,例如,存储装置3310读入主存储器3306中。包含在主存储器3306中的指令序列的执行使得处理器3304执行本文描述的处理步骤。还可以采用在多处理设置中的一个或多个处理器,来执行包含在主存储器3306中的指令序列。在替代实施方式中,可以使用硬连线电路来代替软件指令或与软件指令结合,来实现示例实施方式。因此,本文描述的实施方式不限于硬件电路和软件的任何特定组合。
本文使用的术语“计算机可读介质”是指参与向处理器3304提供指令以供执行的任何介质。这种介质可以采取多种形式,包括但不限于非易失性介质。非易失性介质包括例如光盘或磁盘,例如,存储装置3310。计算机可读介质的常见形式包括例如软盘、柔性盘、硬盘、磁卡、纸带、具有孔母案的任何其他物理介质、RAM、PROM、EPROM、FLASHPROM、CD、DVD或任何其他存储器芯片或盒带、或计算机可读取的任何其他介质。
计算机系统3300还包括耦接到总线3302的通信接口3318。通信接口3318提供双向数据通信以将计算机系统3300耦接到连接到本地网络3322的网络链路或总线3320。
例如,通信接口3318可以是局域网(LAN)卡,以向兼容的LAN提供数据通信连接。作为另一示例,通信接口3318可以是综合业务数字网(ISDN)卡或调制解调器,以向对应类型的电话线提供数据通信连接。也可以实现无线链路。在任何这种实现方式中,通信接口3318发送和接收承载表示各种类型的信息的数字数据流的电、电磁或光信号。
图34示出了采用可信平台模块来绑定通过不安全总线进行通信的两个控制器的控制器的示例实施方式。在一个示例实施方式中,采用Rivest-Shamir-Adleman(“RSA”)算法将核心模块控制器702绑定到闸门控制器708。核心模块控制器702可以包括可信平台模块(“TPM”)3402或者与其耦接。参见例如美国专利号7,922,080,其全部内容通过引用并入本文。可以采用TPM 3402来执行全部或部分密码功能,以建立核心模块控制器702和闸门控制器708之间的安全通信。
在一个示例实施方式中,建立加密通信可以包括核心计算机702使用TPM 3402来加密诸如会话密钥等至少一个密钥,以形成加密的密钥数据。建立加密通信可以进一步包括核心模块控制器702使加密的密钥数据从核心模块计算机702传送到闸门控制器708。另外,建立加密的通信可以包括至少闸门控制器708从加密密钥数据中解密出至少一个密钥。
核心模块控制器702和闸门控制器708可操作为使用密钥来加密和解密在其间发送的操作数据。该密钥可以对应于与密码算法(例如,DES、三重DES、AES)或者能够由计算机使用TPM 3402和闸门控制器708执行的任何其他加密/解密操作一起使用的对称密钥。核心模块控制器702可以使用TPM 3402将密钥安全地存储在TPM 3402或加密文件或TPM3402外部的其他位置。闸门控制器708还可以将密钥存储在数据存储器内。
图35示出了在闸门控制器702和TPM 3402之间执行的协议3500的示意图。列3502表示由TPM 3402发送和接收的消息,而列3506表示由闸门控制器708发送和接收的消息。要理解的是,在该示例实施方式中,核心控制器模块702使用TPM 3402来建立与闸门控制器708的安全连接。如本文所使用的,术语“使用TPM”对应于在计算机中运行的软件,该软件促使计算机访问TPM的功能:用于对诸如签名数据等数据执行密码功能,用于以安全方式在ATM中检索和/或存储数据,和/或用于执行其他TPM操作。
在该示例实施方式中,与核心模块控制器702相关联的TPM 3402可操作为与闸门控制器708交换数字证书3510、3512、3514。在交换之后,核心模块控制器702可访问闸门控制器708的至少一个公钥,并且闸门控制器708可访问核心模块控制器702和/或TPM 3402的至少一个公钥。在所描述的实施方式中,闸门控制器708和核心模块控制器702和/或TPM3402可以包括不止一个数字证书,每个数字证书专闸门用于不同的操作。例如,闸门控制器708可以包括用于验证由闸门控制器708生成的数字签名的数字证书3512,并且可以包括用于与发送到闸门控制器708的加密消息一起使用的数字证书3514。然而,在替代实施方式中,闸门控制器708和核心模块控制器702和/或TPM 3402可以仅包括与加密和验证操作一起使用的一个数字证书。
在一个示例实施方式中,闸门控制器708可操作为产生随机数3516并将其传送给核心模块控制器702。作为响应,核心模块计算机702可操作为使用TPM 3402来产生用TPM3402的私钥签名的消息3518。该消息包括:闸门控制器708的随机数3516和由核心模块控制器702和/或TPM3402产生的另一随机数120、与闸门控制器708相关联的区别标识符3522以及由核心模块控制器702和/或TPM 3402使用来自闸门控制器708的加密证书3514中的公钥加密的密钥块3524。密钥块3524可以包括与核心模块控制器702和/或TPM 3402相关联的区别标识符3526以及会话密钥3528。在一个示例实施方式中,用于闸门控制器708和核心模块控制器702和/或TPM 3402的区别标识符可对应于可用于识别闸门控制器708和核心模块控制器702和/或TPM3402的序列号或其他唯一编号或名称。在一个示例实施方式中,这种区别标识符可包括在相应的数字证书3510、3512和3514中。
在接收到消息3518之后,闸门控制器708可以操作为:使用包括在TPM 3402的证书3510中的公钥来验证消息3530的TPM 3402的签名,验证闸门控制器708的区别标识符3522与闸门控制器708中存储的相应数据匹配,并且验证在消息3518中接收到的闸门控制器708的随机数3516与由闸门控制器708最初发送的随机数匹配。响应于这些验证,闸门控制器708可操作为解密包括在消息3518中的密钥块3524,以产生会话密钥3528和核心模块控制器702和/或TPM 3402的区别标识符3526。处理器还可以验证区别标识符126对应于核心模块控制器702和/或TPM 3402的预期身份。一旦已经执行这些验证,闸门控制器708就可操作为接受会话密钥3528和将其存储在闸门控制器708的数据存储器中。
闸门控制器708进一步可操作为构造并且与核心模块控制器702传输进一步消息3532,该消息由闸门控制器708使用与包括在其验证证书3512中的验证公钥相关联的私钥来签名。进一步消息可以包括随机数3516、3520和与控制器702和/或TPM 3402相关联的区别标识符3526。
在接收到进一步消息3532时,核心模块控制器702可操作为将TPM3402用于使用包含在闸门控制器708的验证证书3512中的验证公钥来验证闸门控制器708的签名3534。另外,核心模块控制器702可操作为验证随机数3516、3520与在消息3518中发送的随机数匹配。而且,核心模块控制器702可操作为验证区别标识符3526与和核心模块控制器702和/或TPM 3402相关联的对应身份信息匹配。一旦已经执行这些验证,核心模块控制器702就可操作为开始使用会话密钥3528来加密和解密发送到和来自闸门控制器708的信息。
如本领域技术人员可以容易地理解的,用于在核心模块控制器702和闸门控制器708之间建立安全通信会话的上述方法和系统可以用任何其他硬件装置来执行。因此,本文描述的原理不应被解释为限于本文描述的核心模块处理器和闸门控制器。
在一个示例实施方式中,核心模块控制器702可操作为将诸如用会话密钥加密的命令消息等操作消息发送到闸门控制器708,这些消息使闸门控制器708执行操作。例如,闸门控制器708可以响应于打开闸门(未示出,例如,参见图1),以使得能够在现金提取交易中取出现金。
以上描述了示例实施方式。当然,不可能为了描述示例实施方式的目的而描述部件或方法的每个可能的组合,但是本领域的普通技术人员将认识到,示例实施方式的许多进一步的组合和置换是可能的。因此,本发明旨在涵盖属于在要求其优先权的申请中提交的任何权利要求的精神和范围内的所有这种变更、修改和变化,这些权利要求根据其公正、合法和公平地享有权利的范围来解释。

Claims (66)

1.一种设备,包括:
核心模块处理器,可操作为与被配置为保存纸张的钞箱进行通信,所述钞箱包括具有处理器的钞箱模块;
所述核心模块处理器包括:
用于生成命令标识符和有效载荷数据的散列的逻辑,
用于从所述散列中选择一组预定义字节作为消息认证码的逻辑,
用于从所述命令标识符、有效载荷数据和所述消息认证码生成校验和的逻辑,
用于创建包括所述命令标识符、所述有效载荷数据、所述消息认证码和所述校验和的数据包的逻辑,以及
用于将所述数据包发送给所述钞箱的逻辑。
2.根据权利要求1所述的设备,其中,所选择的一组预定义字节是四个字节。
3.根据权利要求1所述的设备,其中,所选择的一组预定义字节是所述散列的前四个字节。
4.根据权利要求1所述的设备,其中,所选择的一组预定义字节随着数据包而变化
5.根据权利要求1所述的设备,所述散列还包括使用一次的数值。
6.一种设备,包括:
核心模块控制器,位于保险箱内,所述保险箱包括保存用于提取的纸张的钞箱;
闸门控制器,可操作为控制用于从所述钞箱提取纸张的闸门;
以及
不安全的总线,通信地耦接所述核心模块控制器与所述闸门控制器;
所述核心模块控制器包括用于使所述闸门控制器进入引导加载程序模式的逻辑;
所述核心模块控制器包括响应于确定当前密钥是出厂默认密钥而确定所述模块控制器未绑定到所述闸门控制器的逻辑;
所述核心模块控制器包括用于使用所述出厂默认密钥启动挑战响应序列的逻辑;
所述核心模块控制器包括用于使用模块控制器密钥种子和所述出厂默认密钥发送密钥设置消息的逻辑;
所述核心模块控制器包括可操作为从所述闸门控制器接收密钥设置消息的逻辑,来自所述闸门控制器的密钥设置消息包括闸门控制器密钥种子和所述出厂默认密钥;
所述核心模块控制器包括用于基于所述模块控制器密钥种子、所述闸门控制器密钥种子和所述出厂默认密钥的散列来确定对称密钥的逻辑;
所述核心模块控制器包括用于确认所述闸门控制器具有所述对称密钥的逻辑;并且
所述核心模块控制器可操作为使所述闸门控制器进入引导加载程序模式,从而使所述闸门控制器使用所述对称密钥进行连接。
7.根据权利要求6所述的设备,还包括:
所述核心模块控制器包括向所述闸门控制器发送第二挑战的逻辑,所述第二挑战包括表示主随机(“MR”)数的数据和表示所述对称密钥的数据;
所述核心模块控制器包括用于接收对所述第二挑战的响应并且确认所述响应包括表示所述主随机数的数据、表示所述对称密钥的数据以及表示闸门控制器随机数(“PR”)的数据的逻辑;
所述核心模块控制器包括向所述闸门控制器发送挑战响应的逻辑,向所述闸门控制器发送的所述挑战响应包括表示闸门控制器随机密钥的数据和表示所述对称密钥的数据;
所述核心模块控制器包括用于向所述闸门控制器发送设置状态消息的逻辑,设置应变消息包括表示核心模块控制器随机应变种子的数据和表示所述对称密钥的数据;
所述核心模块控制器包括可操作为接收来自所述闸门控制器的设置应变响应的逻辑,所述设置应变响应包括表示闸门控制器应变种子的数据、表示核心模块控制器随机应变密钥的数据以及表示所述对称密钥的数据;并且
所述核心模块控制器包括可操作为将应变用于安全通信的逻辑。
其中,所述应变基于表示所述核心模块控制器随机种子的数据、表示所述闸门控制器随机种子的数据以及表示所述对称密钥的数据的散列。
8.根据权利要求9所述的设备,还包括:
所述核心模块控制器包括可操作为响应于所述应变被设置而使所述闸门控制器进入引导加载程序模式的逻辑;
所述核心模块控制器包括可操作为从所述闸门控制器中请求引导加载程序版本的逻辑;
所述核心模块控制器包括可操作为从所述闸门控制器接收表示引导加载程序版本的数据的逻辑;
所述核心模块控制器包括可操作为发送第三挑战的逻辑,所述第三挑战包括表示所述应变的数据和表示所述对称密钥的数据;
所述核心模块控制器包括可操作为请求应用程序散列的逻辑;
所述核心模块控制器包括可操作为接收对应用程序散列的请求进行的响应的逻辑;
所述核心模块控制器包括可操作为使所述闸门控制器响应于接收对应用程序散列的请求进行的响应而加载应用程序的逻辑;
所述核心模块控制器包括可操作为将对应用程序散列的请求进行的响应与表示所述引导加载程序版本的数据进行比较的逻辑;并且
所述核心模块控制器包括可操作为响应于对应用程序散列的请求进行的响应与表示引导加载程序的数据之间的比较表明接收到有效响应,来发送运行所述应用程序的命令的逻辑。
9.根据权利要求8所述的设备,其中,所述应变是滚动8字节密钥。
10.根据权利要求8所述的设备,所述核心模块控制器的逻辑包括可操作为在确定出消息认证密钥在由对所述第一挑战的响应、对所述第二挑战的响应和对所述第三挑战的响应组成的组中的一个响应期间发生故障时使电力从所述闸门控制器移除的逻辑。
11.根据权利要求8所述的设备,其中,所述总线是控制器局域网(“CAN”)总线。
12.根据权利要求8所述的设备,其中,必须确认所述应用程序的有效性是二十个字节。
13.根据权利要求8所述的设备,其中,用来确保所述核心模块控制器与所述闸门控制器之间的通信安全的消息认证码包括消息标识、有效载荷以及由对称密钥和应变组成的组中的一项的散列中的三个高位字节。
14.一种设备,包括:
核心模块控制器,位于保险箱内,所述保险箱包括保存用于提取的纸张的钞箱,核心模块包括可信平台模块;
闸门控制器,可操作为控制用于从所述钞箱提取纸张的闸门;
以及
不安全的总线,通信地耦接所述核心模块控制器与所述闸门控制器;
所述核心模块控制器包括用于与所述闸门控制器交换数字证书的逻辑,所述闸门控制器访问由所述核心模块控制器和所述可信平台模块组成的组中的一项的至少一个公钥;
所述核心模块控制器包括用于从所述闸门控制器接收随机数的逻辑;
所述核心模块控制器包括用于使用所述可信平台模块生成用所述可信平台模块的私钥签名的消息的逻辑,所述消息包括从所述闸门控制器接收的随机数、由所述核心模块控制器和所述可信平台模块组成的组中的一项生成的随机数、与所述闸门控制器相关联的标识符以及由所述核心模块控制器和所述可信平台模块组成的组中的一项加密的密钥块,所述密钥块包括与由所述核心模块控制器和所述可信平台模块组成的组中的生成所述密钥块的一项相关联的区别标识符和会话密钥;
所述核心模块控制器包括用于将所述消息发送到所述闸门控制器的逻辑;
所述核心模块控制器包括用于从所述闸门控制器接收通过与包括在所述闸门控制器的验证证书中的公钥相关联的私钥签名的消息的逻辑,该消息包括从所述闸门控制器接收到的随机数、由所述核心模块控制器和所述可信平台模块组成的组中的所述一项所生成的随机数以及针对由所述核心模块控制器和所述可信平台模块组成的组中的所述一项的所述区别标识符;
所述核心模块控制器包括用于使用所述可信平台模块来验证从所述闸门控制器接收到的该消息的签名的逻辑,所述可信平台模块采用包含在所述闸门控制器的数字证书中的验证公钥;
所述核心模块控制器包括用于验证从所述闸门控制器接收的由私钥签名的该消息中的所述闸门控制器的随机数与先前从所述闸门控制器接收的随机数匹配的逻辑;
所述核心模块控制器包括用于验证从所述闸门控制器接收到的由所述私钥签名的该消息中的由所述核心模块控制器和所述可信平台模块组成的组中的一项的随机数与先前发送给所述闸门控制器的由所述核心模块控制器和所述可信平台模块组成的组中的所述一项的随机数匹配的逻辑;
所述核心模块控制器包括用于响应于验证了从所述闸门控制器接收到的由所述私钥签名的该消息中的所述闸门控制器的随机数与先前从所述闸门控制器接收的随机数匹配并且从所述闸门控制器接收到的由所述私钥签名的该消息中的由所述核心模块控制器和所述可信平台模块组成的组中的一项的随机数与先前发送给所述闸门控制器的由所述核心模块控制器和所述可信平台模块组成的组中的所述一项的随机数匹配,而使用会话密钥与闸门控制器进行通信的逻辑;
15.根据权利要求14所述的设备,还包括:
所述核心模块控制器包括用于验证从所述闸门控制器接收到的由所述私钥签名的该消息中的针对由所述核心模块控制器和所述可信平台模块组成的组中的所述一项的区别标识符与针对由所述核心模块控制器和所述可信平台模块组成的组中的所述一项的区别标识符匹配的逻辑;并且
用于使用所述会话密钥的核心模块逻辑进一步响应于:响应于验证了从所述闸门控制器接收到的由所述私钥签名的该消息中的针对由所述核心模块控制器和所述可信平台模块组成的组中的所述一项的区别标识符与由所述核心模块控制器和所述可信平台模块组成的组中的所述一项的区别标识符匹配而使用会话密钥。
16.根据权利要求14所述的设备,其中,所述会话密钥是对称密钥。
17.根据权利要求14所述的设备,其中,闸门控制器的区别标识符是与所述闸门控制器相关联的由序列号和名称组成的组中的一个。
18.根据权利要求14所述的设备,其中,所述闸门控制器的区别标识符包括在数字证书中。
19.一种设备,包括:
钞箱,被配置用于保存纸张,所述钞箱包括:
馈送轮,
盖,
加速度计,
馈送轮传感器,可操作为检测所述馈送轮的移动,
打开盖传感器,可操作为检测所述盖打开的时间,
电池,以及
处理器,与所述加速度计、馈送轮传感器和打开盖传感器耦接,所述处理器可操作为从所述加速度计、馈送轮传感器和打开盖传感器中接收信号;
所述可操作为在被安装在自动银行业务机内时从外部电源接收电力;
所述处理器可操作为在不与所述外部电源耦接时,从所述电池接收电力,并在低功率模式下操作;并且
所述处理器可操作为在从所述电池接收电力时,在检测到某些事件时返回到常规操作模式。
20.根据权利要求19所述的设备,所述处理器可操作为响应于从所述加速度计接收到指示所述加速度计正检测到所述钞箱已加速到超过预定阈值的信号而返回到常规操作模式。
21.根据权利要求19所述的设备,所述处理器可操作为响应于从所述盖传感器接收到所述盖被打开的信号而返回到常规操作模式。
22.根据权利要求19所述的设备,所述处理器可操作为响应于从所述馈送轮传感器接收到指示所述馈送轮的移动的信号而返回到常规运行模式。
23.根据权利要求19所述的设备,所述处理器可操作为。在接收来自所述电池的电力时,响应于检测到某个事件而向与自动银行业务机耦接时的预定目的地发送警报。
24.一种设备,包括:
闸门,可操作为在关闭位置和打开位置之间移动;
旋转磁体,与所述闸门耦接;
两个固定传感器,基于所述旋转磁体的位置提供信号;和
控制器,与所述两个固定传感器耦接,所述控制器可操作为基于来自所述传感器的信号确定所述闸门的位置,并确定可操作为移动所述闸门的马达是否正在运行;
其中,所述控制器响应于在所述马达不运行时检测到所述闸门的移动而确定有篡改事件;并且
所述控制器可操作为响应于确定有所述篡改事件而采取校正动作。
25.根据权利要求24所述的设备,还包括:所述控制器可操作为响应于激活所述闸门的马达的命令而禁用篡改检测。
26.根据权利要求25所述的设备,还包括:
所述控制器可操作为确定在闸门操作完成之后所述闸门是否返回到所述关闭位置;并且
所述控制器可操作为响应于所述闸门成功地返回所述关闭位置,而激活篡改检测。
27.根据权利要求25所述的设备,还包括:
所述控制器可操作为确定在闸门操作完成之后所述闸门是否返回到所述关闭位置;并且
所述控制器可操作为响应于确定所述闸门没有返回到所述关闭位置而采取校正动作。。
28.根据权利要求27所述的设备,所述校正动作包括等待来自更高层处理器的初始化命令。
29.一种设备,包括:
核心模块,包括钱箱;
闸门,可操作为向客户呈现纸币;
梭机,可操作为将纸币从所述核心模块传送到所述闸门;
归属传感器,可操作为检测所述梭机接近与所述核心模块邻近的归属位置的时间;
闸门传感器,可操作为检测所述梭机接近与所述闸门邻近的闸门位置的时间;以及
控制器,与所述归属传感器和所述闸门传感器耦接;
其中,所述梭机可操作为停靠在由所述归属位置和所述闸门位置组成的组中的一个处;
所述控制器可操作为响应于在尚未命令所述梭机移动时检测到所述梭机的移动来检测篡改事件;并且
所述控制器可操作为响应于检测到所述篡改事件而采取校正动作。
30.根据权利要求29所述的设备,其中,所述控制器可操作为响应于在尚未命令所述梭机移动时所述归属传感器和所述闸门传感器未检测到所述梭机来检测篡改事件。
31.根据权利要求29所述的设备,其中,所述归属传感器和所述闸门传感器是霍尔传感器。
32.根据权利要求31所述的设备,还包括:
所述控制器可操作为基于来自所述闸门传感器的信号,来确定所述梭机与所述闸门位置之间在所述梭机接近所述闸门位置时的距离;并且
所述控制器可操作为响应于确定所述梭机与所述闸门位置的距离,来命令步进马达移动多个步伐从而将所述梭机移动到所述闸门位置。
33.根据权利要求31所述的设备,还包括:
所述控制器可操作为基于来自所述归属传感器的信号,来确定所述梭机与所述闸门位置之间在所述梭机接近所述归属位置时的距离;并且
所述控制器可操作为响应于确定所述梭机与所述归属位置的距离,而命令步进马达移动多个步伐,从而将所述梭机移动到所述归属位置。
34.一种设备,包括:
钞箱,用于存放纸币;
闸门;
梭机,可操作为将纸币从所述钞箱传送到所述闸门;
传送路径,用于将纸币从所述钞箱传送到所述梭机;
光管传感器,可操作为检测从所述钞箱中取出的纸币;
双重检测器,位于所述传送路径的与所述梭机邻近的一端;
多个梭机入口传感器,可操作为检测进入所述梭机的纸币;
转向/收回钞箱;
梭机入口闸门,可操作为选择性地将纸币引导至所述梭机或所述转向/收回钞箱;以及
控制器,可操作为控制所述梭机入口闸门,所述控制器与所述光管传感器、所述双重检测器和所述多个梭机入口传感器耦接;
其中,所述控制器可操作为基于从所述光管传感器、所述双重检测器和所述多个梭机入口传感器接收的信号来操作所述梭机入口闸门。
35.根据权利要求34所述的设备,所述控制器可操作为响应于所述光管传感器检测到光束被阻挡超过预定时间段,来使用所述梭机入口闸门将纸币路由到所述转向/收回钞箱。
36.根据权利要求34所述的设备,所述控制器可操作为响应于所述双重传感器检测到纸币具有的厚度大于预定厚度,使用所述梭机入口闸门将纸币路由到所述转向/收回钞箱。
37.根据权利要求34所述的设备,所述控制器可操作为响应于所述双重传感器检测到纸币具有的长度大于预定长度,使用所述梭机入口闸门将纸币路由到所述转向/收回钞箱。
38.根据权利要求34所述的设备,所述控制器可操作为响应于所述梭机入口传感器确定纸币的偏斜超过预定阈值,使用所述梭机入口闸门将纸币路由到所述转向/收回钞箱。
39.根据权利要求34所述的设备,所述控制器可操作为响应于确定两个纸币之间的间隙小于预定限制,使用所述梭机入口闸门将纸币路由到所述转向/收回钞箱。
40.根据权利要求34所述的设备,所述控制器可操作为响应于确定纸币的卷曲超过预定限制,使用所述梭机入口闸门将纸币路由到所述转向/收回钞箱。
41.根据权利要求34所述的设备,
所述控制器可操作为基于从所述光管传感器、所述双重检测器和所述多个梭机入口传感器接收到的信号,来确定由从钞箱中提取的丢失纸币和失速纸币组成的组中的一个;并且
所述控制器可操作为响应于确定出由从钞箱中提取的丢失纸币和失速纸币组成的组中的一个而启动和停止所述传送路径。
42.根据权利要求34所述的设备,
所述控制器可操作为基于从所述光管传感器、所述双重检测器和所述多个梭机入口传感器接收到的信号来确定由从钞箱中提取的丢失纸币和失速纸币组成的组中的一个;并且
所述控制器可操作为响应于确定出由从钞箱中提取的丢失纸币和失速纸币组成的组中的一个,在反向方向上移动所述传送路径。
43.根据权利要求34所述的设备,
所述控制器可操作为基于来自所述光管传感器、所述双重检测器和所述多个梭机入口传感器的信号来确定由从钞箱中提取的丢失纸币和失速纸币组成的组中的一个;并且
所述控制器可操作为响应于确定出由从钞箱中提取的丢失纸币和失速纸币组成的组中的一个而将追踪纸币发送到所述传送路径上。
44.根据权利要求43所述的设备,所述控制器进一步可操作为在所述追踪纸币到达所述梭机之后,将所述梭机的内容物倒入所述转向/收回钞箱中。
45.根据权利要求44所述的设备,所述控制器进一步操作为在将所述梭机的内容物倒入所述转向/收回钞箱中之后,重新开始纸币流。
46.根据权利要求44所述的设备,
所述控制器可操作为检测从由以下各项组成的组中选择的错误状况:检测到的双纸币、过度偏斜的纸币、卷曲的纸币、折叠的纸币、纸币之间的间隙太小、丢失纸币、失速纸币和计数不匹配;
所述控制器可操作为确定针对检测到的错误状况的解决方案;
并且
所述控制器可操作为停止提取钞票,以确定解决方案没有清除错误状况;
其中,可用的所述解决方案选自由以下各项组成的组中:开始和停止传送路径、向后移动所述传送路径一短距离、倾倒所述梭机以及发送追踪纸币。
47.一种设备,包括:
梭机,所述梭机包括:
介质传感器,
纸币限位器,可操作为从高位置移动到低位置,
多个板,以及
呈递皮带,可操作为在向前方向和在向后方向上移动,其中,当皮带在向前方向上移动时,纸币移出所述梭机,并且当所述皮带在向后方向上移动时,纸币移入所述梭机;以及
控制器,可操作为与所述梭机、所述介质传感器、可操作为移动所述纸币限位器和所述多个板的凸轮马达以及可操作为移动所述呈递皮带的皮带马达耦接。
所述控制器可操作为使所述梭机移动到归属位置;
所述控制器可操作为使所述凸轮马达将所述多个板舒展开并将所述纸币限位器移动到低位置;
在使所述凸轮马达将所述多个板舒展开并将所述纸币限位器移动到低位置之后,所述控制器可操作为使所述凸轮马达闭合所述多个板并且将所述纸币限位器移动到高位置;并且
所述控制器可操作为在使所述凸轮马达闭合所述多个板并且将所述纸币限位器移动到高位置之后,确定所述介质传感器是否被阻挡。
48.根据权利要求47所述的设备,
所述控制器可操作为响应于确定所述介质传感器被阻挡而确定纸币留在所述梭机中;并且
所述控制器可操作为响应于确定纸币留在所述梭机中而采取校正动作。
49.根据权利要求47所述的设备,
所述控制器可操作为响应于所述控制器确定所述介质传感器未被阻挡,而使所述皮带马达向前移动所述呈递皮带;并且
所述控制器在使所述皮带马达向前移动所述皮带之后再次确定是否阻挡了所述介质传感器。
50.根据权利要求49所述的设备,
所述控制器可操作为响应于确定所述介质传感器被阻挡而确定纸币留在所述梭机中;并且
所述控制器可操作为响应于确定纸币留在所述梭机中而采取校正动作。
51.根据权利要求47所述的设备,
所述控制器可操作为响应于所述控制器确定所述介质传感器未被阻挡,而使所述皮带马达在向后方向上移动所述呈递皮带;并且
所述控制器在使所述皮带马达在向后方向移动所述皮带之后再次确定是否阻挡了所述介质传感器。
52.根据权利要求51所述的设备,
所述控制器可操作为响应于确定所述介质传感器被阻挡而确定纸币留在所述梭机中;并且
所述控制器可操作为响应于确定纸币留在所述梭机中而采取校正动作。
53.根据权利要求47所述的设备,
所述控制器可操作为响应于所述控制器确定所述介质传感器未被阻挡,而使所述凸轮马达舒展开所述多个板;并且
所述控制器在使所述凸轮马达舒展开所述多个板之后再次确定是否阻挡了所述介质传感器。
54.根据权利要求53所述的设备,
所述控制器可操作为响应于确定所述介质传感器被阻挡而确定纸币留在所述梭机中;并且
所述控制器可操作为响应于确定纸币留在所述梭机中而采取校正动作。
55.根据权利要求53所述的设备,
所述控制器可操作为响应于所述控制器确定所述介质传感器未被阻挡,而使所述皮带马达向前移动所述呈递皮带;并且
所述控制器在使所述皮带马达向前移动所述皮带之后再次确定是否阻挡所述介质传感器。
56.根据权利要求55所述的设备,
所述控制器可操作为响应于确定所述介质传感器被阻挡而确定纸币留在所述梭机中;并且
所述控制器可操作为响应于确定纸币留在所述梭机中而采取校正动作。
57.根据权利要求55所述的设备,
所述控制器可操作为响应于确定在使所述皮带马达向前移动所述皮带之后所述介质传感器未被阻挡,而使所述凸轮马达闭合所述多个板;并且
所述控制器在使所述皮带马达向前移动皮带之后,使所述凸轮马达闭合所述多个板之后再次确定是否阻挡了所述介质传感器。
58.根据权利要求57所述的设备,
所述控制器可操作为响应于确定所述介质传感器被阻挡而确定纸币留在所述梭机中;并且
所述控制器可操作为响应于确定纸币留在所述梭机中而采取校正动作。
59.根据权利要求57所述的设备,所述控制器可操作为响应于确定所述介质传感器未被阻挡而确定纸币未留在所述梭机中。
60.一种设备,包括:
可操作为获得以可扩展标记语言(“XML”)格式格式化的数据的逻辑;和
可操作为使用标签长度值(“TLV”)消息格式来在TLV格式化的消息中表示XML格式化的数据的逻辑,可操作为使用TLV格式来表示所述XML格式化的数据的逻辑可操作为:
将符号表存储在TLV消息的标签部分中,其中,所述符号表用于将逻辑名称和数据类型分配给标签标识符,
在所述TLV消息的标签部分中存储到名称的符号表内的索引;
并且
将与标签相关联的数据存储到所述TLV消息格式的值部分中。
61.根据权利要求60所述的设备,所述控制器还包括可操作为使TLV消息格式中的数据发送到外围设备的逻辑。
62.根据权利要求60所述的设备,其中,在所述符号表和XML命名空间之间存在一一对应关系。
63.根据权利要求60所述的设备,其中,所述逻辑可操作为使用标志来表示标签是由元素和属性组成的组中的一个。
64.根据权利要求60所述的设备,其中,所述逻辑可操作为使用标志来表示标签标识符是否是由简单和复杂组成的组中的一个。
65.根据权利要求60所述的设备,其中,所述逻辑可操作为使用标志来表示标签是否被加密。
66.根据权利要求60所述的设备,其中,所述逻辑可操作为使用标志来表示值的存储方式。
CN201680049286.XA 2015-06-25 2016-06-27 自动银行业务机固件流控制 Pending CN108028000A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562184618P 2015-06-25 2015-06-25
US62/184,618 2015-06-25
PCT/US2016/039509 WO2016210400A2 (en) 2015-06-25 2016-06-27 Automated banking machine firmware flow control

Publications (1)

Publication Number Publication Date
CN108028000A true CN108028000A (zh) 2018-05-11

Family

ID=56609929

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680049286.XA Pending CN108028000A (zh) 2015-06-25 2016-06-27 自动银行业务机固件流控制

Country Status (5)

Country Link
US (3) US11200549B2 (zh)
EP (1) EP3314586A2 (zh)
CN (1) CN108028000A (zh)
MX (2) MX2018000165A (zh)
WO (1) WO2016210400A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111862441A (zh) * 2020-09-07 2020-10-30 中国银行股份有限公司 一种银行现钞安全管理系统及装置
CN113256868A (zh) * 2020-04-17 2021-08-13 深圳怡化电脑股份有限公司 货币检测方法、装置、终端及存储介质

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10037644B2 (en) * 2015-06-16 2018-07-31 Diebold Nixdorf, Incorporated Automated banking machine cassette and cassette module
US11308485B2 (en) * 2016-07-15 2022-04-19 Paypal, Inc. Processing a transaction using electronic tokens
US20180204423A1 (en) * 2015-12-25 2018-07-19 Hitachi-Omron Terminal Solutions, Corp. Automatic transaction system
CN109754540B (zh) * 2017-11-07 2021-01-19 山东新北洋信息技术股份有限公司 闸门机构及存取款设备
US11075751B2 (en) * 2018-04-26 2021-07-27 Ncr Corporation Modular valuable media recycling device
US10474809B1 (en) * 2019-07-12 2019-11-12 Capital One Services, Llc Computer-based systems and computing devices configured to utilize one or more authentication servers for securing device commands transmissions and methods of use thereof

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030221107A1 (en) * 2002-05-25 2003-11-27 Samsung Electronics Co., Ltd. Method and apparatus for generating serial number
US6895507B1 (en) * 1999-07-02 2005-05-17 Time Certain, Llc Method and system for determining and maintaining trust in digital data files with certifiable time
US7309004B1 (en) * 2002-12-26 2007-12-18 Diebold Self-Service Systems, Division Of Diebold, Incorporated Cash dispensing automated banking machine firmware authentication system and method
US20090089576A1 (en) * 2007-09-28 2009-04-02 David Johnston Techniques for communicating information over management channels
US7922080B1 (en) * 2002-12-26 2011-04-12 Diebold Self-Service Systems Division Of Diebold, Incorporated Automated banking machine that operates responsive to data bearing records
US20110314274A1 (en) * 2010-05-17 2011-12-22 Certes Networks, Inc. Method and apparatus for security encapsulating ip datagrams
US20120145782A1 (en) * 2008-06-27 2012-06-14 Diebold Self-Service Systems Division Of Diebold, Incorporated Automated Banking System Controlled Responsive to Data Bearing Records
CN103150841A (zh) * 2012-08-21 2013-06-12 珠海市新域智能科技有限公司 一种纸币输送通道、可配备多钞箱的自助终端以及银行多面值存取款服务终端

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7350077B2 (en) * 2002-11-26 2008-03-25 Cisco Technology, Inc. 802.11 using a compressed reassociation exchange to facilitate fast handoff
US7665015B2 (en) * 2005-11-14 2010-02-16 Sun Microsystems, Inc. Hardware unit for parsing an XML document
US9251540B1 (en) * 2005-12-20 2016-02-02 Diebold Self-Service Systems Division Of Diebold, Incorporated Banking system controlled responsive to data bearing records
US7730307B2 (en) 2006-04-07 2010-06-01 Sensis Corporation Secure ADS-B authentication system and method
US20150079941A1 (en) * 2012-05-15 2015-03-19 Telefonaktiebolaget L M Ericsson (Publ) Secure Paging
DE102012209408A1 (de) * 2012-06-04 2013-12-05 Siemens Aktiengesellschaft Sichere Übertragung einer Nachricht
US9425953B2 (en) * 2013-10-09 2016-08-23 Intel Corporation Generating multiple secure hashes from a single data buffer
JP2016001454A (ja) * 2014-05-20 2016-01-07 株式会社東芝 携帯可能電子装置、プログラム、端末および方法
WO2016006150A1 (ja) * 2014-07-10 2016-01-14 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車載ネットワークシステム、電子制御ユニット、受信方法及び送信方法
US10289384B2 (en) * 2014-09-12 2019-05-14 Oracle International Corporation Methods, systems, and computer readable media for processing data containing type-length-value (TLV) elements
JP6488702B2 (ja) * 2014-12-27 2019-03-27 富士通株式会社 通信制御装置、通信制御方法、および、通信制御プログラム
US20190017863A1 (en) * 2017-07-17 2019-01-17 ReFund Solutions, LLC d/b/a ReFund Machine for processing recyclable materials

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895507B1 (en) * 1999-07-02 2005-05-17 Time Certain, Llc Method and system for determining and maintaining trust in digital data files with certifiable time
US20030221107A1 (en) * 2002-05-25 2003-11-27 Samsung Electronics Co., Ltd. Method and apparatus for generating serial number
US7309004B1 (en) * 2002-12-26 2007-12-18 Diebold Self-Service Systems, Division Of Diebold, Incorporated Cash dispensing automated banking machine firmware authentication system and method
US7922080B1 (en) * 2002-12-26 2011-04-12 Diebold Self-Service Systems Division Of Diebold, Incorporated Automated banking machine that operates responsive to data bearing records
US20090089576A1 (en) * 2007-09-28 2009-04-02 David Johnston Techniques for communicating information over management channels
US20120145782A1 (en) * 2008-06-27 2012-06-14 Diebold Self-Service Systems Division Of Diebold, Incorporated Automated Banking System Controlled Responsive to Data Bearing Records
US20110314274A1 (en) * 2010-05-17 2011-12-22 Certes Networks, Inc. Method and apparatus for security encapsulating ip datagrams
CN103150841A (zh) * 2012-08-21 2013-06-12 珠海市新域智能科技有限公司 一种纸币输送通道、可配备多钞箱的自助终端以及银行多面值存取款服务终端
CN103150839A (zh) * 2012-08-21 2013-06-12 珠海市新域智能科技有限公司 一种纸币输送通道、可配备多钞箱的自助终端以及医疗自助缴费找零服务终端

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113256868A (zh) * 2020-04-17 2021-08-13 深圳怡化电脑股份有限公司 货币检测方法、装置、终端及存储介质
CN113256868B (zh) * 2020-04-17 2024-02-02 深圳怡化电脑股份有限公司 货币检测方法、装置、终端及存储介质
CN111862441A (zh) * 2020-09-07 2020-10-30 中国银行股份有限公司 一种银行现钞安全管理系统及装置

Also Published As

Publication number Publication date
WO2016210400A2 (en) 2016-12-29
WO2016210400A3 (en) 2017-03-02
US11615387B2 (en) 2023-03-28
MX2022007762A (es) 2022-09-07
US20190164139A1 (en) 2019-05-30
EP3314586A2 (en) 2018-05-02
BR112017028072A2 (pt) 2018-09-04
US20220147959A1 (en) 2022-05-12
US20180137486A1 (en) 2018-05-17
US11200549B2 (en) 2021-12-14
MX2018000165A (es) 2018-05-28

Similar Documents

Publication Publication Date Title
CN108028000A (zh) 自动银行业务机固件流控制
US20230214792A1 (en) Computer implemented systems and methods
KR101637868B1 (ko) 블록체인을 기반으로 하는 금융기관 제증명서류 위변조 검증시스템 및 방법
BR112020008454A2 (pt) sistema e método para controlar ativos digitais
CN103907143B (zh) 使用无标签数据交换格式进行金融交易通信的系统和方法
US11017396B2 (en) Automatic transaction device and control method thereof
JP6654998B2 (ja) 自動取引装置及びその制御方法
JP5722316B2 (ja) 現金管理システムおよび現金管理方法
JP2011159076A (ja) 紙幣処理システムおよび紙幣処理方法
JP2021099693A (ja) 有価媒体処理装置
US10916085B2 (en) Modular bank note recycling device
WO2017109994A1 (ja) 自動取引システム
US6272475B1 (en) Apparatus and method for the secure dispensing of bank papers
BRPI0610977A2 (pt) terminal móvel de transações eletrÈnicas seguras e sistema de transações eletrÈnicas seguras
BR102013026265A2 (pt) Sistema e método de segurança
JP7298084B2 (ja) 貯金箱、貯金システム、金融機関装置、その方法及びプログラム
JP6869067B2 (ja) 処理システムおよび管理装置
US20190333345A1 (en) Modular valuable media recycling device
JP5352622B2 (ja) 売上管理装置、コンピュータプログラム及び売上管理システム
KR101585776B1 (ko) 금융기기
JP7336394B2 (ja) 貨幣処理システム及び貨幣処理方法
BR112021016972B1 (pt) Método de distribuição de moeda a partir de uma máquina de transação automatizada
BR112017028072B1 (pt) Aparelho de controle de fluxo de máquina para banco automático
US10096196B2 (en) Transaction management method and associated system
EP3776424A1 (de) System zum speichern, teilen und verbindlichen, schlupffreien offline-übertragen von e-werten mit mobilem gerät mit kurzer transaktionszeit

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180511