CN1599311A - 具有键盘或相关设备的安全通信 - Google Patents

具有键盘或相关设备的安全通信 Download PDF

Info

Publication number
CN1599311A
CN1599311A CNA2004100430805A CN200410043080A CN1599311A CN 1599311 A CN1599311 A CN 1599311A CN A2004100430805 A CNA2004100430805 A CN A2004100430805A CN 200410043080 A CN200410043080 A CN 200410043080A CN 1599311 A CN1599311 A CN 1599311A
Authority
CN
China
Prior art keywords
keyboard
initial value
key
now
block chaining
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.)
Granted
Application number
CNA2004100430805A
Other languages
English (en)
Other versions
CN1599311B (zh
Inventor
M·佩那多
J·贝纳尔
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN1599311A publication Critical patent/CN1599311A/zh
Application granted granted Critical
Publication of CN1599311B publication Critical patent/CN1599311B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61PSPECIFIC THERAPEUTIC ACTIVITY OF CHEMICAL COMPOUNDS OR MEDICINAL PREPARATIONS
    • A61P31/00Antiinfectives, i.e. antibiotics, antiseptics, chemotherapeutics
    • A61P31/04Antibacterial agents
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/02Alarms for ensuring the safety of persons
    • G08B21/04Alarms for ensuring the safety of persons responsive to non-activity, e.g. of elderly persons
    • G08B21/0407Alarms for ensuring the safety of persons responsive to non-activity, e.g. of elderly persons based on behaviour analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72457User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/34Microprocessors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/36Memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/10Details of telephonic subscriber devices including a GPS signal receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/12Details of telephonic subscriber devices including a sensor for measuring a physical value, e.g. temperature or motion

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Veterinary Medicine (AREA)
  • Gerontology & Geriatric Medicine (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Organic Chemistry (AREA)
  • Pharmacology & Pharmacy (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Public Health (AREA)
  • General Chemical & Material Sciences (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • Chemical & Material Sciences (AREA)
  • Oncology (AREA)
  • Communicable Diseases (AREA)
  • Emergency Management (AREA)
  • Business, Economics & Management (AREA)
  • Medicinal Chemistry (AREA)
  • Social Psychology (AREA)
  • Psychology (AREA)
  • Psychiatry (AREA)
  • Storage Device Security (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Document Processing Apparatus (AREA)
  • Transceivers (AREA)
  • Telephone Set Structure (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Communication Control (AREA)

Abstract

键盘和例如计算机上运行的一段软件的元件之间的安全通信。第一初始值是为键盘和元件都所知的。键盘和元件交换现时。键盘和元件基于现时和第一初始值分别计算第二初始值和第三初始值。由于键盘和元件都执行相同的计算,因此键盘和元件每个都有相同的第二和第三初始值。基于密钥和第二初始值,键盘加密数据运往使用CBC-3DES的元件,并且基于密钥和第三初始值为每个使用CBC-3DESMAC的创建消息验证码。元件解密和检验使用密钥和第二、第三初始值的键击。

Description

具有键盘或相关设备的安全通信
发明领域
本发明总体上涉及计算机安全领域。本发明尤其涉及在通信信道上的键盘的安全使用,其中该通信信道可能会遭到窃听或其他类型的篡改。
发明背景
键盘将用户输入数据传送到电子设备,例如计算机。当用户按下键盘上的键时,键盘生成代表被按的特定键的数据(例如,字母“e”的ASCII码),并且该数据由计算机中的元件,例如装置驱动器接收。随后该装置驱动器向在计算机上运行的正在接收输入的无论什么程序提供该数据(例如,通过将数据放入随便哪个运行中的应用程序的输入缓冲器)。
在使用键盘接收数据中出现的一个问题是当数据是敏感的或另外需要保密。例如,安全应用(或操作系统的安全服务)可能要求用户输入口令,该口令通常不应该随意泄漏给公众。然而,因为有若干机会窃听数据,所以由键盘通向接收数据的软件元件的路径是非安全的。例如,数据将经常在会遭到窥探的总线上传播,并将由可能遭到篡改的装置驱动器进行处理(或者该操作系统将允许由非安全装置驱动器来代替,该非安全装置驱动器存储和泄漏由驱动器处理的信息)。换句话说,在保密数据由键盘到其最终目的地的路线上,有若干机会观测或篡改该保密数据。
通常,对由非安全信道连接的两个元件之间传送的数据进行加密是可能的。然而,由于众多因素,许多加密技术不容易适用于键盘环境,例如密钥管理问题、重放攻击的可能性、以及如果密文的适度尺寸的样值可被窃听、那么通过键盘产生的相对小范围的数据将会使得在键盘通信上形成普通密码相对易于破解的事实。
从上述观点可看出,需要一种具有键盘的促进安全通信的技术。
发明概述
本发明提供了一种通过非安全通信信道在两元件之间进行安全通信的技术。该技术使用一种尤其适合键盘的加密方案,,而且在对键盘应用标准加密方案的过程中将存在地址问题。
根据本发明所述的键盘存储密钥和常量,该常量用于加密方案的初始化。元件(例如在计算机运行的应用程序)存储与存储在键盘中的密钥和常量相同的密钥和常量。为了启动元件和键盘之间的安全对话,元件和键盘分别产生一个现时(nonce),接着互相交换现时,以便键盘和元件均拥有两个现时。键盘和元件接着计算两个初始值,所述的每个初始值都基于两个现时,按键和常量的值。例如,第一初始值可以通过使用CBC-3DESMAC算法创建,此处CBC-3DESMAC使用存储的常量作为其初始链接值并将所述的密钥应用到消息中,该消息基于两个现时创建。(CBC-3DESMAC是指依照具有加密块链的数据加密标准(DES)算法,应用三倍加密,并使用最终密文块创建信息证实代码(MAC))。优选地,第二初始值通过反转第一初始值中的位来创建(例如,在第一初始值和数字0xffffffffffffffff之间执行“exclusive or”操作)。因为键盘和元件以同样方式计算第一和第二初始值,所以它们拥有相同的两个初始值。
在可选的优选实施例中,键盘和元件配备有两个常量,且第一和第二初始值可以通过将CBC-3DESMAC应用到基于两个现时的消息中、使用第一常数创建第一初始值和使用第二常数创建第二初始值来创建。
第一和第二初始值创建后,键盘准备传送加密数据,将接收该数据的元件准备解密并检验该数据。当数据键入键盘,键盘对基于第一初始值和密钥的数据进行加密。优选地,键盘通过上面提到的使用CBC-3DES(三倍-DES具有密码块链接)的密钥和用于填装密码块链的第一初始值对数据进行加密。键盘同样为优选地为使用CBC-3DESMAC的数据的每个单元创建MAC,此处该CBC-3DESMAC应用上面提到的密钥,并使用第二初始值填装密码块链。优选地,由于这种技术允许出现相同的键击(例如,字母“e”),依赖于先于他自己的键击,表现为不同的密文,因此每次键击在单独的加密块中加密,且整个数据流在构成密码块链的对话期间在键盘上产生。
一旦在接收元件中接收了加密数据和MAC(s),接收元件就使用上面提到的密钥和第一、第二初始值来解密并验证该接收到的数据。
下面描述本发明的其他特征。
附图说明
前面的概述和随后的优选实施例的详细描述一样,当结合附图进行阅读时将变得更好理解。为达到说明本发明的目的,本发明的示范性构造展示在附图中;然而,本发明并不限于所公开的特殊方法和手段。附图中:
图1是示范性计算环境的框图,本发明各方面可以在该框图中执行;
图2是第一示范性环境的框图,在该框图中键盘和元件之间的通信在非安全信道上发生;
图3是第二示范性环境的框图,在该框图中键盘和元件之间的通信在非安全信道上发生;
图4是已为安全通信设置的键盘和元件的框图,其依据本发明各方面交换现时;
图5是参与键盘和元件之间安全通信对话的过程的流程图;
图6是第一示范性环境的框图,在该框图中键盘和元件可以分配为参与依照本发明各方面的安全通信;
发明详述
示范性计算配置
图1示出了示范性计算环境,在该环境中执行本发明的各方面。计算系统环境100只是一个适合的计算环境的示例,而且它并不打算对本发明的使用或功能的范围作任何限制的建议。计算环境100也不应解释为对示范性操作环境100所示出元件的任何单个或其结合具有任何依赖性或需求。
本发明对于多个其他通用或专用计算系统环境或配置是可操作的。虽然众所周知的计算系统、环境、和/或配置的实例适合于在本发明包括的范围内使用,但是并不局限于个人计算机、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程用户电子设备、网络PC、迷你计算机、大型计算机、嵌入系统、包含任何上述系统或设备的分布式计算机环境等等。
本发明通常可以描述为计算机可执行指令上下文,例如计算机执行的程序模块。通常,程序模块包括:例行程序、程序、对象、元件、数据结构等,其完成特殊的任务或者实现特殊的抽象数据类型。本发明也在分布式计算环境内实行,该分布式计算环境中通过远程处理设备完成任务,该远程处理设备通过通信网络或其他数据传输媒质连接。在分布式计算环境中,程序模块和其他数据可以在包含存储器存储装置的本地和远程计算机存储媒体中定位。
参照图1,执行本发明的示范性系统包括以计算机110的形式存在的通用计算设备。计算机110的元件包括,但不限定于:处理单元120、系统存储器130、系统总线121,系统总线121将包括系统存储器在内的多种系统元件与处理单元120连在一起。系统总线121可以是总线结构若干类型的任何一种,该总线结构包括存储器总线或存储器控制器、外围总线、和使用多种总线体系结构的任何一种的局域总线。作为示例,担不是限定,这样的体系结构包括:工业标准体系结构(ISA)总线、微新到体系结构(MCA)总线、增强的ISA(EISA)总线、视频电子标准协会(VESA)局域总线、周边元件扩展接口(PCI)总线(也叫Mezzanine总线)。系统总线121也可以实现为通信设备中的点到点连接、开关结构等等。
计算机110典型地包括多种计算机可读媒体。计算机可读媒体可以是任何可以通过计算机110进行访问的媒体,该媒体包括易失性和非易失性媒体、可删除和非可删除媒体。作为示例,但不是限定,计算机可读媒体可以包含计算机存储媒体和通信媒体。计算机存储媒体包括易失性和非易失性、可删除和非可删除媒体,该媒体在任何用于信息存储的方法或技术中使用,所述信息指例如计算机可读指令、数据结构、程序模块或其他数据。计算机存储媒体包括,但不限定为:RAM、ROM、EEPROM、闪存和其他存储技术、CDROM、数字化视频光盘DVD或其他光学存储设备、盒式磁带、磁带、磁盘存储器或其他磁存储装置、或任何其他可以用于存储期望信息并可通过计算机110进行访问的媒体。通信媒体典型地体现为:计算机可读指令、数据结构、程序模块或其他在已调制数字信号中的数据,该已调制数字信号指例如载波或其他传输机制,并包括任何信息传送媒体。术语“已调制数据信号(modulated data signal)”意指一种信号,该信号具有一个或更多特征集,或者以信号编码信息的方式改变。作为示例,但不是限定,通信媒体号括有线媒体,例如有线网或直接线连接,还包括无线媒体,例如声学的、RF、红外线和其他无线媒体。上述的任何组合也应包括在计算机可读媒体的范围内。
系统存储器130包括计算机存储媒体,该计算机存储媒体的形式是易失性或非易失性存储器,例如只读存储器(ROM)131和随机存取存储器(RAM)132。基本输入输出系统133(BIOS)包含典型地存储在ROM131中的基本例程,该基本例程例如启动期间帮助在计算机110内的组件之间传送信息。RAM132典型地包含数据和/或程序模块,该数据和/或程序模块通过处理单元120直接访问和/或即时操作。作为示例,但不是限定,图1示出了操作系统134、应用程序135、其他程序模块136、和程序数据137。
计算机110也可以包括其他可删除/非可删除、易失性/非易失性计算机存储媒体。仅作为示例,图1示出了从非可删除、非易失性磁性媒体读取或写入的硬盘驱动器140,从可删除、非易失性磁盘152读取或写入的磁盘驱动器151,和从可删除、非易失性光盘156,例如CD ROM或其他光学媒体,读取或写入的光盘驱动器155。其他可以用于示范性操作环境的可删除/非可删除、易失性/非易失性计算机存储媒体包括,但不限定于:盒式磁带机、闪存卡、数字通用磁盘、数字录像带、固态RAM、固态ROM等。硬盘接口141典型地通过非可删除存储器接口连接到系统总线121,该非可删除存储器接口指例如接口140,并且磁盘驱动器151和光盘驱动器155典型地通过可删除存储器接口连接到系统总线121,该可删除存储接口指例如接口150。
上面讨论并在图1中示出的驱动器和他们的相关计算机存储媒体提供了计算机可读指令、数据指令、程序模块和其他计算机110数据的存储。例如在图1中,硬盘驱动器141可举例说明为存储操作系统144、应用程序145、其他程序模块146、和程序数据147。注意,这些元件可以与操作系统134、应用程序135、其他程序模块136、和程序数据137相同或是不同。这里给出的操作系统144、应用程序145、其他程序模块146、和程序数据147具有不同的个数,以举例说明,至少,它们是不同副本。用户可以通过输入设备向计算机20输入命令和信息,输入设备指例如键盘162和点击装置161,点击装置通常指鼠标、轨迹球或触摸板。其他输入设备(没有示出)可以包括扩音器、操纵杆、游戏板、圆盘式卫星电视天线、扫描仪等。虽然这些及其他输入设备通常通过耦联到系统总线的用户输入接口160与处理单元120相连,,但是这些及其他输入设备也可以通过其他接口和总线结构与处理单元120相连接,例如并行端口、游戏端口或通用串行总线(USB)。监测器191或显示装置的其他类型经由接口也连接到系统总线121,该接口指例如视频接口190。除监测器之外,计算机还包括其他外围输出设备,例如扬声器197和打印机196,它们可以通过输出外围接口190连接。
计算机110通过使用逻辑连接到一个或更多远程计算机,例如远程计算机180,可以在网络环境中操作。远程计算机180可以是个人计算机、服务器、路由器、网络PC、端对端设备或其他普通网络节点,它典型地包括上面所论及的计算机110的多数或全部组件,虽然在图1中仅示出了存储器存储设备181。虽然图1中描述的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但是还能包括其他网络。这些网络环境在办公室、企业外部计算机网络、企业内部互联网和因特网中是常见的。
当计算机110在LAN网络环境中使用时,它通过网络接口或适配器170连接到LAN171。当计算机110用于WAN网络环境时,它典型地包括调制解调器172或者其他的想要在WAN173上建立通信的装置,例如因特网。内置或者外置的调制解调器172,可以经由用户输入接口160或者其他适当的机制连接到系统总线121。在网络环境中,相对于计算机110或者它的部分所描述的程序模块,可以存储在远程存储器存储设备中。作为示例,但并不是限定,图1举例说明了作为驻留在存储器设备181上的远程应用程序185。将会理解到,所示出的网络连接是说明性的,并且可以使用在计算机之间创建通信连接的其他手段。
键盘和元件之间通信的安全
本发明提出了怎样可以使键盘用于与元件安全通信的问题,该元件需要键盘从输入。图2示出了这样的通信的示范性方案。在图2中,键盘162与元件204通信。元件204可以是任何类型的元件——例如:计算机上执行的程序、一块硬件等。由键盘162到元件202的通信由通信信道通过,该通信信道至少包括一些非安全部分204。即,当表示键击的数据在由键盘162到元件202的路线上通过一些信道时,可能有一些机会被第三方窃听或篡改该数据。如果例如键入键盘162的信息是不应当向公众泄漏的秘密口令那么,这种窃听或篡改可能称为一个问题。
图3示出了特殊方案,在该方案中期望键盘和元件之间的安全通信。在图3中,键盘162用于向软件提供输入,该软件在计算机110中运行。在图3的示例中,键盘162是适合使用通用串行总线(USB)302的键盘。(为简洁起见,这样的键盘参照USB键盘。)键盘162接收键击,将那些键击所表示的字节放置到USB302,此处由USB驱动器304整理该字节。接下来驱动器304将那些字节传送到它们的最终目的地,该最终目的在图3的示例中是软件306。软件306是元件202的实例(图2所示)。
图3的示例中有两个操作系统134(1)和134(2)在计算机110运行。操作系统134(1)是典型的操作系统,例如MICROSOFTWINDOWSXP,Unix,Linux、Solaris等。操作系统134(2)是“高保证”操作系统,它用于存放应用程序。例如,操作系统134(2)可以与“掩蔽的”存储器相连接,该存储器在操作系统134(2)外是不可存取的,而且操作系统134(2)可以在该掩蔽的存储器中存储秘密信息(例如,加密密钥、口令等),因此只有一定的特殊应用程序可以读取该秘密信息,该应用程序允许在操作系统134(2)下执行。操作系统134(2)是“高保证”的,意味着公众被授予非常高级别的保证,可以正确执行它的功能——即,如果保护秘密信息是操作系统134(2)的一个预期的功能,那么公众被授予非常高级别的保证,操作系统134(2)将不会泄漏秘密信息。能保护秘密通信的部分,可以包括能够接收键入的秘密(例如口令)而不将这些秘密泄漏到外界。由于驱动器304在操作系统134(1)的控制下(且操作系统134(1)可能允许电脑黑客直接由USB302读取信息,或者允许电脑黑客以存储和暴露该秘密信息的邪恶驱动器来做替代),因此操作系统134(2)不能信任驱动器304去操控这些秘密信息。因此,操作系统134(2)需要一种途径,在不为发生在操作系统134(1)中的行动会泄漏秘密信息而担忧的情况下,通过操作系统134(1)从键盘162接收信息。
应当理解,尽管图3的实例示出键盘162通过通用串行总线USB302与计算机110进行通信,但是可以应用上述方案而不管键盘162与计算机110进行通信的确切方法,因而本发明不限于USB键盘。
图4示出了键盘162与元件202怎样配置,以参与通过非安全信道的安全通信。键盘162和元件202每个都存储加密密钥402的副本。键盘162和元件202还适宜存储常量404,该常量用作特殊首选加密技术的初始值,下面将更加详细的描述。在更优选的实施例中,键盘162和元件202可存储(除了密钥外)两个常量而不是一个;这两个常量可以象下面描述的一样用于加密技术。例如,键盘162可以包含台上非易失性半导体,该半导体存储密钥402和常量404,也可以具有一个端口,该端口接收存储有密钥402和元件404的可删除存储媒体。在元件202是软件元件的情况下,密钥402和元件404可以存储在元件202的数据区。然而应当理解的是,本发明不限于存储密钥402和404的任何特殊方式。
在键盘162和元件202之间的安全通信的开始,键盘162和元件202可以产生和交换现时。这就是说,键盘162产生现时412并将现时412发送到元件202。元件202产生现时414并将现时414发送到键盘162。作为本领域公知的,现时是一段数据,该数据用于加密应用程序——经常验证加密实体,或者起动加密对话,该对话有不易复制的组件,加密可以依靠该组件制造。现时412和414可用于创建在键盘162和元件202之间传送的数据的验证和加密的初始值,这一点将在下面更加详细的描述。
由键盘到元件安全发送数据的过程
图5示出了一个过程,通过该过程键盘162和元件202可以参加对话,其中元件202从键盘162安全接收数据。图5的过程为加密(其保护传送数据反窃听)和验证(其保护传送数据反篡改)作准备。但是应当理解的是,依靠传输的安全需求,可以单独使用加密或验证。例如,如果可以容许修改数据而不允许窃听,那么可以单独使用加密。相反的,如果可以容许窃听数据而不允许修改,那么可以单独使用验证。
起初,键盘162和元件202交换现时502。例如,象上面描述的图4中的连接一样,键盘162可产生现时412,并将其发送到元件202,元件202可产生现时414,并将其发送到键盘162。产生现时的技术在本领域中是公知的,且这里不详细描述那些技术。作为一些实例,现时412和414可以基于随机数、存储器的一些区域的内容、时间、温度、月相等,或者可能经常改变并且有充足范围的任何其它因素产生,键盘162或元件202未必将会生成两次相同的现时。
现时412和414交换502后,键盘162和元件202每个都拥有两个现时。接下来键盘162和元件202使用针对计算504的普通的、与公式一致的两个初始值——IV-c和IV-m—作为现时和密钥402的函数。即,如果K=key402,N1=nonce412,且N2=once414,则
IV_c=f(K,N1,N2),且
IV_m=g(K,N1,N2)。
函数f和g可以是任何函数。在优选的实施例中,
f(K,N1,N2)=CBC-3DESMACK(const_IV,N1|N2);且
g(K,N1,N2)=f(K,N1,N2)xor 0xffffffffffffffff,
其中const_IV等于常量404(图4所示)。在更优选的实施例中,键盘和组件共享两个常量(例如const_IV_1和const_IV_2),函数f和g可以优选地计算如下:
f(K,N1,N2)=CBC-3DESMACK(const_IV_1,N1|N2);且
g(K,N1,N2)=CBC-3DESMACK(const_IV_2,N1|N2),
(运算符“|”意为级连,所以N1|N2是由N1和N2并置所产生的值。“xor”是逐位“异或(exclusive or)”操作,所以A xor B的结果值如此得来:当A或者B中一个而不是两者的任何一位是“1”则设置为“1”且把其他位设置为零。)CBC-3DESMACK(const_IV,N1|N2)是加密函数,它的含义在本领域是公知的,并在下面更详细的描述。
IV_c和IV_m计算完后,可以开始键盘162和元件202之间的通信。键盘162接收键击——即通过操作者按下一个键(或者特定键的组合,例如<SHIFT>和“A”或者<CTRL>和“A”)(步骤506)。接下来键盘加密508键击;加密优选地基于密钥402和IV_c。在优选的实施例中,键击使用CBC-3DES加密,用密钥402作为密钥且IV_c作为初始值。CBC-3DES本领域公知的加密算法,并在下面更详细的描述。另外,键盘162为键击计算510消息验证码(MAC),优选地基于密钥402和IV_m。在优选的实施例中,消息验证码使用CBC-3DESMAC创建,用密钥402作为密钥且IV_m作为初始值。作为上面的注解,CBC-3DESMAC是本领域公知的并在下面更详细的描述。
键盘创建加密键击数据和MAC后,元件202从键盘162接收512加密键击数据和MAC(步骤512)。接下来元件202使用密钥402和IV_c解密514所述的数据,并使用密钥402和IV_m核对该数据(步骤514)。过程然后回到步骤506,以在键盘接收下一个输入。
加密函数CBC-3DES和CBC-3DESMAC
CBC-3DES是加密函数,它将数据加密标准(DES)和密码块链(CBC)相结合。“3DES”意为将DES加密算法三次应用到给出数据块(“triple-DES”)。DES以公知的方式通过将密钥应用到数据来加密数据。DES通过将该消息分成小块、并加密该分开的块来加密长消息。(当使用“triple-DES”时,将DES算法应用到每个块三次,以生成该块的密文。)DES(和三倍-DES)可以通过仅使用一个密钥来加密数据的每个块;然而,当使用密码块链时,一个块的加密不止基于密钥,还基于密文,该密文通过加密最末块生成。因而,加密一个给出的块基于两个输入:密钥和密文,该密文由加密在前的块产生。因为要加密的数据的第一块没有在前的块,所以密码块链过程必须以“初始值”为初始即,基于密码和一些初始值加密数据的第一块。虽然初始值不用于随后的块的加密,但是初始值可以直接影响那些块怎样加密(因为第一块的密文基于初始值、第二块的密文基于第一块的密文、等等)。
在前讨论的视图中,短语“CBC-3DESK(IV,message)”意为使用三倍-DES和密码块链的密码K加密“消息”,其中IV是密码块链的初始值。
CBC-3DESMAC是使用CBC-3DES生成消息验证码(MAC)的途径。尤其是短语CBC-3DESK(IV,message)意为“消息”通过使用三倍-DES和密码块链的密钥K加密,且使用IV作为密码块链的初始值。然而,因为CBC-3DESMAC的目标仅是为了生成适合于消息的MAC而不是适合于消息的复合密文,所以仅存储密文的最末块,且可以删除密文的剩余块。密文的最末块可以用作MAC,因为——即使给出常量密码和常量IV——不同消息是不可能生成相同的最终块的(或者,更精确地,如果每个块能代表2n个不同值,任意两个消息会有相同的最末块只有2n之一个机会)。
应当指出的是,CBC-3DES的特别选择,也是它使用的途径,对加密键盘通信特别的有利。因为要加密的消息域很小(例如,大约128个不同的ASCII字符),密码块链在阻止密码破解中特别有用。如果使用直加密(无链),那么,在给出的对话中,每次键入的每个字符都加密为相同的密文——例如,键入“e”总是会生成相同的密文。通过制造有根据的推测(例如,通过使用英语中“e”是最通常出现字母这一事实),可以更容易的破解该密文。通过确保相同的数据可以表示为不同的密文,链接所有在对话中的输入会使密文更难破解,该密文依赖于它在输入流中的位置(例如,“e”不能总是生成相同密文)。另外,通过创建基于现时的新初始值改变每个对话的加密,阻止观测者检测使用模型,该使用模型可用于危及安全性(例如,如果在每个对话中键入的第一正文都是口令,那么观测者会捕获口令的密文并建立一个重放攻击。)。此外,DES使用的密码块的尺寸是特别适合的,因为DES以8字节块操作,且块中的多数键盘协议传输数据可适合这个尺寸(例如,USB标准也从事于8字节块,因而每个USB块都适合DES块而没有浪费的空间。)然而,应当理解的是,可以使用任何其他块密码,且同CBC相似的链接概念可以应用于这样的块密码。
需要进一步指出的是,由于相同的原因,这里所述的加密方案尤其适合于键盘,该加密方案也很适合某些其他类型的输入装置,例如鼠标(或其他指点装置)。这些输入装置分享与键盘相同的许多特征,例如小符号集,和受限制的执行复杂的加密算法的能力。
加密数据的键盘的示范性使用
图6示出了示范性环境,在该环境中,执行加密的键盘可以与需要安全通信的元件一起使用。在图6的实施例中,制造商602制造多个键盘162(1),162(2),162(3),…,162(n),并将这些键盘分配给公众使用。每个键盘162(1),162(2),162(3),…,162(n)都结合密钥402和常量404(图4所示)(或结合一些装置,通过这些装置可以外部访问密钥402和常量404,例如通过适合于可删除半导体存储端口的装置)。制造商604制造多个元件202(1),202(2),…,202(m),这些元件受益于同键盘的安全通信。每个元件202(1),202(2),…,202(m)都结合密钥402和常量404(或者以某种可以接收密钥和常量的方式)。现在元件202(1),202(2),…,202(m)通过上面描述的技术,可以接收来自键盘162(1),162(2),162(3),…,162(n)的输入。
因为制造商602可以与制造商604有先前存在的关系,所以两个制造商对密钥402和元件404达成一致意见,该密钥和元件应当结合,以进行安全通信。在一个实施例中,制造商602和604是相同的实体。在其他实施例中,制造商604是元件202(1),202(2),…,202(m)的制造商,他愿意那些元件能接收来自安全键盘的数据,且制造商602是键盘的制造商,制造商604在制造适合于与元件202(1),202(2),…,202(m)进行安全通信的键盘、以及保存密钥402和/或常量404方面,被认为是充分可信赖的。
应当指出的是,提供前述的实施例仅仅为了解释的目的,而决不应解释为本发明的限制。应当理解的是,尽管本发明参照多个实施例进行描述,但这里所使用的措辞是描述和说明的措辞,而不是限制的措辞。进一步说,虽然这里参照特殊的装置、材料和实施例描述本发明,但是本发明不想限于这里公开的细目;相反的,本发明扩展到所有功能性等效的结构、方法和用途,例如在附加的权利要求的范围之内的。本领域的熟练技术人员,受益于本说明书的教导,可以实现很多改变,且该改变在特征上不脱离本发明的精神和范围。

Claims (30)

1.一种用键盘通信的方法,包括:
在元件接收来自键盘的多个数据,该多个数据三倍-DES和密码块链进行加密,该密码块链使用密钥和第一初始值,所述密钥和所述初始值对元件和键盘都是可知的;
基于所述初始值和所述密钥加密该多个数据。
2.如权利要求1所述的方法,还包括:
元件接收来自键盘的与多个数据一致的多个消息验证码,所述消息验证码用三倍-DES和密码块链创建,该密码块链使用密钥和与所述第一初始值不同的第二初始值,所述第二初始值对元件和键盘是可知的;
通过使用多个消息验证码检验该多个数据。
3.如权利要求2所述的方法,还包括:
从键盘接收第一现时;
向键盘发送第二现时;及
通过应用三倍-DES和密码块链创建第一初始值和第二初始值,以合并第一现时和第二现时,使用为键盘和元件都所知的密钥和第三初始值。
4.如权利要求2所述的方法,还包括:
从键盘接收第一现时;
向键盘发送第二现时;
通过应用三倍-DES和密码块链创建第一初始值,以合并第一现时和第二现时,使用为键盘和元件都所知的密钥和第三初始值;及
通过应用三倍-DES和密码块链创建第二初始值,以合并第一现时和第二现时,使用为键盘和元件都所知的密钥和第四初始值。
5.如权利要求1所述的方法,其中:多个数据通过信道接收,元件不能信任该信道的特性完整性。
6.如权利要求5所述的方法,其中:元件包括第一操作系统,该第一操作系统与第二操作系统共同在计算装置上执行,第一操作系统在至少一些方面不信任第二操作系统的特性,键盘与第一操作系统通过由第二操作系统控制的驱动器通信。
7.如权利要求1所述的方法,其中键盘包括USB键盘。
8.如权利要求7所述的方法,其中所述三倍-DES和密码块链在具有预定尺寸的块中加密数据,且其中键盘在所述预定尺寸的块中与数据进行通信。
9.如权利要求1所述的方法,其中多个数据的每一个都基于在键盘接收的单独的键击产生。
10.如权利要求1所述的方法,还包括:
从键盘接收第一现时;
向键盘发送第二现时;及
通过应用三倍-DES和密码块链创建第一初始值和第二初始值,以合并第一现时和第二现时,使用为键盘和元件都所知的密钥和第二初始值。
11.一种用计算机可执行指令进行编码的计算机可读媒体,该计算机可执行指令用于执行在元件中从键盘安全地接收输入的方法,该方法包括:
在元件接收来自键盘的多个已加密键击,该已加密键击通过加密在具有三倍-DES和密码块链的键盘处所接收的输入键击在键盘处创建,该密码块链使用密钥和第一初始值,该密钥和第一初始值对键盘和元件都是可用的;及在元件使用密钥和第一初始值解密多个已加密键击。
12.如权利要求11所述的计算机可读媒体,其中:元件包括第一操作系统,该第一操作系统与第二操作系统共同在计算装置上执行,第一操作系统在至少一些方面不信任第二操作系统的特性,键盘与第一操作系统通过由第二操作系统控制的驱动器通信。
13.如权利要求11所述的计算机可读媒体,其中该方法还包括:
元件接收来自键盘的与多个加密键击一致的多个消息验证码,所述消息验证码用三倍-DES和密码块链创建,该密码块链使用密钥和与所述第一初始值不同的第二初始值,所述第二初始值对键盘和元件是可知的;
通过使用多个消息验证码检验该多个加密键击。
14.如权利要求13所述的计算机可读媒体,其中该方法还包括:
从键盘接收第一现时;
向键盘发送第二现时;及
通过应用三倍-DES和密码块链创建第一初始值和第二初始值,以合并第一现时和第二现时,使用为键盘和元件都所知的密钥和第三初始值。
15.如权利要求13所述的计算机可读媒体,其中该方法还包括:
从键盘接收第一现时;
向键盘发送第二现时;
通过应用三倍-DES和密码块链创建第一初始值,以合并第一现时和第二现时,使用为键盘和元件都所知的密钥和第三初始值;及
通过应用三倍-DES和密码块链创建第二初始值,以合并第一现时和第二现时,使用为键盘和元件都所知的密钥和第四初始值。
16.如权利要求11所述的计算机可读媒体,其中所述三倍-DES和密码块链在有预定尺寸的块中加密数据,且其中键盘在有所述预定尺寸的块中与数据进行通信。
17.一个键盘,包括:
一个或多个存储第一初始值和密钥的存储位置;
加密元件,该加密元件在具有三倍-DES和密码块链的键盘处接收的输入数据进行加密,该密码块链使用所述的密钥和所述的第一初始值,籍此加密数据基于所述输入数据创建;且
通信接口,该通信接口向键盘外部的设备传送所述加密数据,所述加密数据指定为所述第一初始值和所述密钥都所知的接收者。
18.如权利要求17所述的键盘,其中加密元件进一步创建多个与加密数据或输入数据一致的消息验证码,所述消息验证码用三倍-DES和密码块链创建,该密码块链使用密钥和与所述第一初始值不同的第二初始值,
19.如权利要求17所述的键盘,其中键盘包括USB键盘。
20.如权利要求17所述的键盘,其中:通信接口向驱动器传送所述加密数据,该驱动器由所述设备中的第一操作系统控制,于是所述加密数据传送到所述接受者,所述接受者是在所述装置上执行的第二操作系统或是在所述第二操作系统下执行的程序,所述第二操作系统在至少一些方面不信任第一操作系统的特性。
21.如权利要求17所述的键盘,其中所述加密元件适于;
通过通信接口从接收者接收第一现时;
通过通信接口向接收者发送第二现时;及
通过应用三倍-DES和密码块链创建第一初始值,以合并第一现时和第二现时,使用为键盘和元件都所知的密钥和第二初始值。
22.如权利要求17所述的键盘,其中:键盘接收的输入数据包括多个单独的键击,且其中加密元件单独加密每个单独的键击。
23.一种用计算机可执行指令进行编码的计算机可读媒体,该计算机可执行指令用于执行使键盘能够参与与键盘外部的元件进行安全通信的方法,该方法包括:
接收多个输入键击;
对每个具有三倍-DES和密码块链的输入键击进行加密,该密码块链使用密钥和第一初始值,该密钥和第一初始值对键盘和元件都是可知的,籍此多个加密键击,;及
向元件传送该加密键击。
24.如权利要求23所述的计算机可读媒体,其中所述三倍-DES和密码块链在有预定尺寸的块中加密数据,且其中键盘在所述预定尺寸的块中与数据进行通信。
25.如权利要求23所述的计算机可读媒体,其中该方法还包括:
创建多个具有三倍-DES和密码块链的消息验证码,该密码块链使用密钥和与所述第一初始值不同的第二初始值,该多个消息验证码与该多个键击一致;及
将消息验证码检验传送到元件。
26.如权利要求23所述的计算机可读媒体,其中该方法还包括:
向元件发送第一现时;
向元件发送第二现时;及
通过应用三倍-DES和密码块链创建第一初始值,以合并第一现时和第二现时,使用为键盘和元件者防知的密钥和第二初始值。
27.一种使数据能安全输入到软件元件的方法,包括:
分配软件元件的副本,该软件元件包括:
密钥;
第一初始值;及
计算机可执行指令,该计算机可执行指令使软件能够:
向键盘发送第一现时;
从键盘接收第二现时;
基于所述第一现时、所述第二现时和所述第一初始值创建第二初始值;及
使用密钥和第二初始值解密从键盘接收的加密数据;及
分配,或者使能够分配,键盘,该键盘包括:
存储或者访问密钥副本的硬件;
存储或者访问第一初始值副本的硬件;
硬件或者软件使键盘能够:
从软件元件接收第一现时;
向软件元件发送第二现时;及
基于所述第一现时、所述第二现时和所述第一初始值创建第二初始值;及
通过对在使用密钥和第二初始值的键盘处接收的输入数据进行加密,来创建加密数据。
28.如权利要求27所述的方法,其中:所述键盘还包括硬件或软件,其使键盘能够:
基于所述第一现时、所述第二现时和所述第一初始值创建第三初始值,所述第三初始值与所述第二初始值不同;及
使用密钥和第三初始值创建消息验证码;
软件元件还包括计算机可执行指令以:
基于所述第一现时、所述第二现时和所述第一初始值创建第三初始值;及
使用密钥和第三初始值检验该消息验证码。
29.如权利要求27所述的方法,其中:加密数据通过将具有密码块链的三倍-DES应用到使用密钥和第二初始值的输入数据中来创建。
30.如权利要求27所述的方法,其中键盘适合于单独的加密每个键击。
CN2004100430805A 2003-05-02 2004-05-08 具有键盘或相关设备的安全通信 Expired - Fee Related CN1599311B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/428675 2003-05-02
US10/428,675 US7243237B2 (en) 2003-05-02 2003-05-02 Secure communication with a keyboard or related device
US10/428,675 2003-05-02

Publications (2)

Publication Number Publication Date
CN1599311A true CN1599311A (zh) 2005-03-23
CN1599311B CN1599311B (zh) 2011-08-24

Family

ID=32990487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004100430805A Expired - Fee Related CN1599311B (zh) 2003-05-02 2004-05-08 具有键盘或相关设备的安全通信

Country Status (18)

Country Link
US (1) US7243237B2 (zh)
EP (1) EP1473615B1 (zh)
JP (1) JP4459703B2 (zh)
KR (1) KR100996737B1 (zh)
CN (1) CN1599311B (zh)
AT (1) ATE504885T1 (zh)
AU (1) AU2004201802B2 (zh)
BR (1) BRPI0401684B1 (zh)
CA (1) CA2465270C (zh)
DE (1) DE602004032085D1 (zh)
ES (1) ES2361074T3 (zh)
HK (1) HK1069463A1 (zh)
MX (1) MXPA04004144A (zh)
MY (1) MY137940A (zh)
PL (1) PL1473615T3 (zh)
RU (1) RU2371756C2 (zh)
TW (1) TWI319536B (zh)
ZA (1) ZA200403290B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9292715B2 (en) 2008-01-22 2016-03-22 Hewlett-Packard Development Company, L.P. Shared secret used between keyboard and application

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005140823A (ja) 2003-11-04 2005-06-02 Sony Corp 情報処理装置、制御方法、プログラム、並びに記録媒体
US7581097B2 (en) * 2003-12-23 2009-08-25 Lenovo Pte Ltd Apparatus, system, and method for secure communications from a human interface device
KR100710032B1 (ko) * 2005-02-23 2007-04-25 제이알소프트 주식회사 윈도우즈 운영체제에서 보안 입력 필터 드라이버와 인터넷 익스플로러 내부의 키보드 보안 입력 비에이치오를 통한 인터넷 익스플로러 사용자의 키보드 입력 정보 해킹 방지 방법 및 시스템
DE102005014194B4 (de) * 2005-03-29 2006-12-14 Axel Ahnert Lesegerät mit integrierter Kryptographieeinheit
SG128507A1 (en) * 2005-06-25 2007-01-30 Krypt Technologies Encryption system for confidential data transmission
US20100023750A1 (en) * 2005-07-14 2010-01-28 Encassa Pty Ltd System and Method for Controllably Concealing Data from Spying Application
KR100734145B1 (ko) 2005-10-12 2007-07-03 주식회사 안철수연구소 키보드 데이터 인증을 이용한 키 입력 도용 방지 방법
WO2007061147A1 (en) * 2005-11-24 2007-05-31 Softcamp Co., Ltd. Guarding method for input data by usb keyboard and guarding system
US7835521B1 (en) * 2005-12-02 2010-11-16 Google Inc. Secure keyboard
CA2571450A1 (en) * 2005-12-21 2007-06-21 Nervo Security Encrypted keyboard
US8566608B2 (en) 2006-02-02 2013-10-22 Strikeforce Technologies, Inc. Methods and apparatus for securing keystrokes from being intercepted between the keyboard and a browser
US7428306B2 (en) * 2006-04-18 2008-09-23 International Business Machines Corporation Encryption apparatus and method for providing an encrypted file system
KR100861104B1 (ko) * 2006-10-16 2008-09-30 킹스정보통신(주) 유에스비 키보드의 보안장치 및 그 방법
KR100846123B1 (ko) * 2006-10-24 2008-07-15 주식회사 하우리 키보드 보안 방법 및 상기 방법을 이용한 키보드 보안드라이버를 기록한 기록 매체
KR100838488B1 (ko) * 2007-01-24 2008-06-16 현대중공업 주식회사 사용자 컴퓨터에 키스트로크 해킹 보안 프로그램 설치가필요 없는 변조된 일회성 인증 데이터 생성 방식을 이용한정보 보안 방법 및 장치
DE102007004631A1 (de) * 2007-01-30 2008-07-31 Cherry Gmbh Verfahren, Anordnung, System und Softwaremittel zur sicheren Datenübertragung
US8615662B2 (en) * 2007-01-31 2013-12-24 Microsoft Corporation Password authentication via a one-time keyboard map
US20080263672A1 (en) * 2007-04-18 2008-10-23 Hewlett-Packard Development Company L.P. Protecting sensitive data intended for a remote application
KR100909891B1 (ko) * 2007-10-02 2009-07-31 소프트캠프(주) 커널영역의 키보드 보안을 위한 입력정보 암호화 처리방법
TWI395112B (zh) * 2007-11-30 2013-05-01 Chi Pei Wang 防止鍵盤按鍵被側錄的配接器
US8214888B2 (en) * 2008-01-30 2012-07-03 Vasco Data Security, Inc. Two-factor USB authentication token
US9596250B2 (en) * 2009-04-22 2017-03-14 Trusted Knight Corporation System and method for protecting against point of sale malware using memory scraping
JP2010039913A (ja) * 2008-08-07 2010-02-18 Sony Corp 通信装置、通信方法、及びプログラム
DE102008042180B4 (de) * 2008-09-17 2010-09-23 Zf Friedrichshafen Ag Verfahren und System zur sicheren Übertragung von Daten
US20110208974A1 (en) * 2010-02-25 2011-08-25 Alcatel-Lucent Usa Inc. Countermeasure Against Keystroke Logger Devices
US8566934B2 (en) 2011-01-21 2013-10-22 Gigavation, Inc. Apparatus and method for enhancing security of data on a host computing device and a peripheral device
WO2012123859A1 (en) * 2011-03-16 2012-09-20 Garay Peter A Transaction security method and device
US8954747B2 (en) * 2011-07-01 2015-02-10 Intel Corporation Protecting keystrokes received from a keyboard in a platform containing embedded controllers
KR102195788B1 (ko) 2011-08-10 2020-12-28 기타 스리바스타바 호스트 컴퓨팅 디바이스와 주변기기의 데이터의 보안을 강화하기 위한 장치 및 방법
WO2013138894A1 (en) * 2012-03-21 2013-09-26 Irdeto Canada Corporation Method and system for chain transformation
GB201212878D0 (en) 2012-07-20 2012-09-05 Pike Justin Authentication method and system
US8868927B1 (en) 2012-08-14 2014-10-21 Google Inc. Method and apparatus for secure data input and output
CN103036681B (zh) * 2012-12-13 2015-07-29 中国工商银行股份有限公司 一种密码安全键盘装置及系统
EP2973182B1 (en) * 2013-03-15 2020-11-04 Strikeforce Technologies, Inc. Methods and apparatus for securing user input in a mobile device
US20150100795A1 (en) * 2013-10-07 2015-04-09 Microsemi Corporation Secure Storage Devices, Authentication Devices, and Methods Thereof
US10101821B2 (en) * 2014-03-13 2018-10-16 Acooo (Beijing) Limited Keyboard apparatus having operation system and computer assembly
GB201520741D0 (en) 2015-05-27 2016-01-06 Mypinpad Ltd And Licentia Group Ltd Authentication methods and systems
US9805200B2 (en) * 2016-02-01 2017-10-31 Quanta Computer, Inc. System and method for firmware verification
US9698777B1 (en) * 2016-05-23 2017-07-04 Nuvoton Technology Corporation Secured keyboard readout using capacitance matrix
CN110060161B (zh) * 2019-03-28 2021-05-28 众安信息技术服务有限公司 用于区块链交易防重的客户端服务实现方法及服务组件
WO2023069060A1 (en) * 2021-10-18 2023-04-27 Hewlett-Packard Development Company, L.P. Input encryption

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4386266A (en) * 1980-02-11 1983-05-31 International Business Machines Corporation Method for operating a transaction execution system having improved verification of personal identification
US5870723A (en) * 1994-11-28 1999-02-09 Pare, Jr.; David Ferrin Tokenless biometric transaction authorization method and system
US5892900A (en) * 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US5748888A (en) * 1996-05-29 1998-05-05 Compaq Computer Corporation Method and apparatus for providing secure and private keyboard communications in computer systems
CN1212101A (zh) * 1996-10-23 1999-03-24 皇家菲利浦电子有限公司 移动通信业务的付费方案
JPH1139082A (ja) * 1997-07-15 1999-02-12 Fujitsu Ltd 機密保持機能を有するキーボード装置及びその方法
US6134661A (en) * 1998-02-11 2000-10-17 Topp; William C. Computer network security device and method
CN1298143A (zh) * 1999-11-30 2001-06-06 北京汇冠科技有限公司 密码键盘及其数据烧录装置和密码保密方法
EP1267515A3 (en) * 2000-01-21 2004-04-07 Sony Computer Entertainment Inc. Method and apparatus for symmetric encryption/decryption of recorded data
US20020196935A1 (en) * 2001-02-25 2002-12-26 Storymail, Inc. Common security protocol structure and mechanism and system and method for using
US6981153B1 (en) * 2000-11-28 2005-12-27 Xilinx, Inc. Programmable logic device with method of preventing readback
US7224801B2 (en) * 2000-12-27 2007-05-29 Logitech Europe S.A. Wireless secure device
US7302571B2 (en) * 2001-04-12 2007-11-27 The Regents Of The University Of Michigan Method and system to maintain portable computer data secure and authentication token for use therein
US7110986B1 (en) * 2001-04-23 2006-09-19 Diebold, Incorporated Automated banking machine system and method
JP4315414B2 (ja) * 2001-05-01 2009-08-19 メタ4ハンド インク. 無線ネットワークコンピューティング
JP2003087243A (ja) * 2001-06-28 2003-03-20 Hitachi Ltd データ検証方法、データ検証装置およびその処理プログラム製品
EP1286242A1 (en) 2001-08-22 2003-02-26 Sonera SmartTrust, Ltd. System and method for protected data input of security data
US20030159053A1 (en) * 2002-02-19 2003-08-21 Charles Fauble Secure reconfigurable input device with transaction card reader
US6912605B1 (en) * 2002-03-29 2005-06-28 Cypress Semiconductor Corp. Method and/or apparatus for implementing security in keyboard-computer communication
JP2003099332A (ja) * 2002-06-27 2003-04-04 Sony Corp データ処理システム、データ記録再生器、記録デバイス、および方法、並びにプログラム提供媒体
US7212252B2 (en) * 2002-11-27 2007-05-01 Sedna Patent Services, Llc Method and system for enabling detection of signals in the presence of noise

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9292715B2 (en) 2008-01-22 2016-03-22 Hewlett-Packard Development Company, L.P. Shared secret used between keyboard and application

Also Published As

Publication number Publication date
BRPI0401684A (pt) 2005-01-18
DE602004032085D1 (de) 2011-05-19
EP1473615A3 (en) 2006-11-29
EP1473615B1 (en) 2011-04-06
ZA200403290B (en) 2005-11-08
EP1473615A2 (en) 2004-11-03
ES2361074T3 (es) 2011-06-13
TW200508946A (en) 2005-03-01
KR20040094379A (ko) 2004-11-09
US7243237B2 (en) 2007-07-10
RU2004113566A (ru) 2005-10-27
PL1473615T3 (pl) 2011-09-30
US20040230805A1 (en) 2004-11-18
AU2004201802A1 (en) 2004-11-18
KR100996737B1 (ko) 2010-11-25
CA2465270A1 (en) 2004-11-02
JP4459703B2 (ja) 2010-04-28
HK1069463A1 (en) 2005-05-20
ATE504885T1 (de) 2011-04-15
AU2004201802B2 (en) 2010-01-21
CA2465270C (en) 2011-06-14
TWI319536B (en) 2010-01-11
CN1599311B (zh) 2011-08-24
MY137940A (en) 2009-04-30
MXPA04004144A (es) 2005-06-08
RU2371756C2 (ru) 2009-10-27
BRPI0401684B1 (pt) 2018-04-17
JP2004355615A (ja) 2004-12-16

Similar Documents

Publication Publication Date Title
CN1599311B (zh) 具有键盘或相关设备的安全通信
US10142107B2 (en) Token binding using trust module protected keys
US12088721B2 (en) Dongle for ciphering data
CN102271037B (zh) 基于在线密钥的密钥保护装置
CN1985466B (zh) 使用分发cd按签署组向设备传递直接证据私钥的方法
CN101019369B (zh) 利用在线服务向装置传递直接证明私有密钥的方法
US7392402B2 (en) Method and apparatus for data integration security
CN112182609A (zh) 基于区块链的数据上链存储方法和追溯方法、装置及设备
US20110246433A1 (en) Random number based data integrity verification method and system for distributed cloud storage
CN101019368A (zh) 使用分发cd将直接证明私钥传递给设备的方法
US10686764B2 (en) Executable coded cipher keys
CN112733180A (zh) 数据查询方法、装置和电子设备
WO2020177109A1 (zh) 抽签处理方法、可信芯片、节点、存储介质和电子设备
CN114553566B (zh) 数据加密方法、装置、设备及存储介质
US20220006795A1 (en) Secure message passing using semi-trusted intermediaries
CN1584863A (zh) 经由边带信道的信息的传递,以及使用上述内容来验证位置关系
US11533162B2 (en) Method for verification of integrity and decryption of an encrypted message, associated cryptomodule and terminal
CN108985079B (zh) 数据验证方法和验证系统
WO2023145240A1 (ja) 情報処理装置および情報処理システム
CN108809651A (zh) 密钥对管理方法和终端
TWI780461B (zh) 資訊傳輸加密防護方法及其實施系統
WO2006114907A1 (ja) データ暗号化システム及び鍵生成サーバ
CN114218547A (zh) 接入访问方法、装置及电子设备
CN118349496A (zh) 一种数据加密方法、解密方法、电子设备及存储介质
WO2018231765A1 (en) Executable coded cipher keys

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150428

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150428

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110824

Termination date: 20200508

CF01 Termination of patent right due to non-payment of annual fee