KR101907817B1 - 타이밍 질문 응답을 통한 공급 인증 - Google Patents

타이밍 질문 응답을 통한 공급 인증 Download PDF

Info

Publication number
KR101907817B1
KR101907817B1 KR1020177034070A KR20177034070A KR101907817B1 KR 101907817 B1 KR101907817 B1 KR 101907817B1 KR 1020177034070 A KR1020177034070 A KR 1020177034070A KR 20177034070 A KR20177034070 A KR 20177034070A KR 101907817 B1 KR101907817 B1 KR 101907817B1
Authority
KR
South Korea
Prior art keywords
challenge
supply device
timing
replaceable supply
response value
Prior art date
Application number
KR1020177034070A
Other languages
English (en)
Other versions
KR20170135978A (ko
Inventor
제퍼슨 피 워드
스티븐 디 팬신
Original Assignee
휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피.
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=49170896&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR101907817(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. filed Critical 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피.
Publication of KR20170135978A publication Critical patent/KR20170135978A/ko
Application granted granted Critical
Publication of KR101907817B1 publication Critical patent/KR101907817B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • B41J2/17503Ink cartridges
    • B41J2/17543Cartridge presence detection or type identification
    • B41J2/17546Cartridge presence detection or type identification electronically
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • B41J2/17503Ink cartridges
    • B41J2/17543Cartridge presence detection or type identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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
    • 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/3247Cryptographic 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 involving digital signatures
    • 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/3271Cryptographic 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 challenge-response
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • 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
    • G06Q30/00Commerce
    • G06Q30/018Certifying business or products
    • 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
    • G06Q30/00Commerce
    • G06Q30/018Certifying business or products
    • G06Q30/0185Product, service or business identity fraud
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/61Time-dependent

Abstract

예시적인 구현에서, 인쇄 공급 카트리지는 타이밍 질문을 수신하고 질문 응답을 제공함으로써 카트리지를 인증할 수 있게 하는 마이크로컨트롤러를 포함한다. 질문 응답은 예상 시간 윈도우 내에 드는 질문 응답 시간 내에서 제공된다.

Description

타이밍 질문 응답을 통한 공급 인증{SUPPLY AUTHENTICATION VIA TIMING CHALLENGE RESPONSE}
본 출원은 타이밍 질문 응답을 통해 교체 가능한 디바이스를 공급 인증하는 것과 관련된 것이다.
대부분의 시스템은 시스템의 기능에 필수적인 교체 가능한 컴포넌트를 갖고 있다. 교체 가능한 컴포넌트는 흔히 시스템을 사용할 때마다 고갈되는 소모성 재료를 담고 있는 디바이스이다. 그러한 시스템은 예를 들면 교체 가능한 배터리를 사용하는 셀 폰, 교체 가능한 공급 디바이스로부터 약을 배분하는 의료 시스템, 및 교체 가능한 공급 카트리지로부터 유체(예를 들면, 잉크) 또는 토너를 배분하는 프린팅 시스템 등을 포함할 수 있다. 교체 가능한 공급 디바이스가 합법적인 제조자로부터 받은 인증 디바이스임을 검증하는 것은 시스템 사용자가 결함 및/또는 위조 디바이스의 의도하지 않은 사용과 관련된 문제를 방지하는데 도움이 될 수 있다 (WO 2013/048430 참조).
특정 시스템에서 사용하기 위한 교체 가능한 공급 디바이스의 진품을 검증하여 시스템 사용자가 결함 및/또는 위조 디바이스의 의도하지 않은 사용과 관련된 문제를 방지할 필요성이 있다.
본 출원의 일 실시예에 따른 인쇄 카트리지를 인증하기 위한 디바이스는 메모리 및 호스트 디바이스로부터 타이밍 챌린지를 수신하기 위한 로직을 포함하고, 상기 로직은 예상 시간 윈도우 이내의 챌린지 응답 시간 내에 챌린지 응답을 제공하는 것에 의해 상기 인쇄 카트리지의 인증을 가능하게 하고, 상기 메모리는 특성화 데이터를 포함하고, 상기 특성화 데이터는 계산 카운트를 포함하고 상기 계산 카운트에 따라 상기 예상 시간 윈도우를 제공하는 것을 특징으로 한다.
특정 시스템에서 사용하기 위한 교체 가능한 공급 디바이스의 진품을 검증하는 것은 시스템 사용자가 결함 및/또는 위조 디바이스의 의도하지 않은 사용과 관련된 문제를 방지할 수 있다.
본 실시예는 이제 첨부 도면을 참조하여 예를 들어 설명될 것이다.
도 1은 교체 가능한 공급 디바이스를 인증하기에 적합한 예시적인 일반적 인증 시스템의 컴포넌트를 예시하는 블록도를 도시한다.
도 2는 교체 가능한 공급 디바이스에 저장된 특성화 데이터의 일 예를 도시한다.
도 3은 잉크젯 프린팅 시스템으로서 구현된 인증 시스템의 일 예를 도시한다.
도 4는 예시적인 잉크젯 인쇄 공급 카트리지의 사시도를 도시한다.
도 5는 예시적인 공급 인증 프로세스의 흐름도를 도시한다.
도면 전체에서, 동일한 참조 부호는 반드시 동일한 구성요소는 아니지만 유사한 구성요소를 지정한다.
개요
앞에서 언급한 바와 같이, 특정 시스템에서 사용하기 위한 교체 가능한 공급 디바이스의 진품을 검증하는 것은 시스템 사용자가 결함 및/또는 위조 디바이스의 의도하지 않은 사용과 관련된 문제를 방지하는데 도움이 될 수 있다. 예를 들면, 소모성 토너 또는 잉크 카트리지를 채용하는 프린팅 시스템에서, 무심코 카트리지를 위조 카트리지로 교체하면 좋지 않은 품질의 출력물 문제에서부터 프린팅 시스템을 손상시킬 수 있는 누설 카트리지 문제에 이르기까지 다양한 문제가 발생할 수 있다.
교체 가능한 디바이스를 인증하는 종래의 방법은 스마트 카드에 공지된 비밀 키를 사용하는 것 또는 교체 가능한 디바이스(예를 들어, 소모성 잉크/토너 카트리지) 및 호스트 디바이스(예를 들어, 프린터) 상에 보안 마이크로컨트롤러를 사용하는 것 등과 같은 강력한 인증을 채용하는 것을 포함하고 있었다. 만일 교체 가능한 디바이스가 적절한 키를 갖고 있다는 것을 증명하는, 호스트에 의해 발부된 질문(challenge)에 대한 응답(response)을 제공할 수 있으면, 호스트는 그 디바이스가 원 제조자의 것이라고 추정한 다음 그 디바이스를 인증할 것이다. 이러한 인증 방법의 한 가지 취약점은 이 방법이 비밀 키를 보존하는 시스템의 능력에 좌우된다는 것이다. 만일 공격자가 키 또는 키들을 호스트 또는 교체 가능한 디바이스 중 어느 하나로부터 복구할 수 있으면, 공격자는 훔친 키(들)를 스마트 카드 또는 컨트롤러에다 저장할 수 있고, 이것은 마치 교체 가능한 디바이스가 원 제조자로부터 받은 인증 디바이스였던 것처럼 교체 가능한 디바이스가 질문에 응답하게 할 수 있다. 전형적으로 일단 키(들)가 손상을 받으면, 진품이 아닌 (즉, 위조의) 교체 가능한 디바이스의 질문 응답 및 다른 기능성은 값비싼 표준의 마이크로컨트롤러에서 구동하는 펌웨어인 체로 가장될 수 있다.
본 출원에서는 개괄적으로, 타이밍 질문 응답(timing challenge response)을 통해 교체 가능한 시스템 디바이스의 강인한 인증을 제공하는 인증 시스템 및 공급 인증 프로세스가 개시된다. 프린터와 같은 호스트는 암호화 타이밍 질문을 소모성 잉크 또는 토너 카트리지와 같은 교체 가능한 디바이스에 부착된 보안 마이크로컨트롤러에 발부한다. 질문은 소모성 디바이스(즉, 소모성 디바이스 상의 마이크로컨트롤러)가 호스트/프린터에 의해 공급된 데이터에 기초하여 복수의 수학적 연산을 수행하도록 요청한다. 프린터는 소모성 디바이스가 그 작업을 완료하는데 걸리는 시간 량을 모니터링하고, 독립적으로 그 디바이스에 의해 제공된 응답을 검증한다. 만일 응답 및 그 응답을 계산하면서 경과된 시간이 모두 프린터의 예상을 만족하면, 프린터는 이 디바이스가 진품 디바이스라고 결론을 내릴 것이다. 만일 응답 또는 그 응답을 계산하면서 경과된 시간 중 어느 하나(또는 둘 다)가 프린터의 예상을 만족하지 못하면, 프린터는 이 디바이스는 진품 디바이스가 아니라고 결론 내릴 것이다.
질문으로 인한 수학적 연산은 소모성 디바이스의 마이크로컨트롤러 내부에서 그러한 연산을 위해 특수하게 설계된 전용의 하드웨어 로직에 의해 수행된다. 전용의 로직은 펌웨어를 실행하는 표준 마이크로컨트롤러에 의해 성취될 수 있는 것보다 훨씬 빠르게 수학적 연산을 수행함으로써 질문 응답을 성취할 수 있다. 그래서, 마이크로컨트롤러가 도난 키(들)를 갖고 있는 진품이 아닌/위조의 교체 가능한 디바이스는 올바른 질문 응답을 달성할 수 있을 수 있다. 그러나 그러한 위조 디바이스는 호스트 디바이스에 의해 예상된 시간 프레임 내에서 질문 응답을 달성할 수 없다.
예시적인 구현에서, 인쇄 공급 카트리지는 타이밍 질문을 수신하고 예상 시간 윈도우 내에 드는 질문 응답 시간 내에 질문 응답을 제공함으로써 카트리지를 인증할 수 있게 하는 마이크로컨트롤러를 포함한다. 다른 구현예에서, 카트리지는 또한 타이밍 질문에 응답하여 수학적 계산을 수행하는 마이크로컨트롤러상의 전용의 하드웨어 로직을 포함한다. 수학적 계산을 수행하여 질문 응답을 예상 시간 윈도우 내에서 산출한다.
다른 예시적인 구현예에서, 교체 가능한 공급 디바이스는 마이크로컨트롤러를 포함한다. 마이크로컨트롤러는 호스트 디바이스와 함께 세션 키를 유도하고, 호스트 디바이스로부터 무작위 시드, 세션 키 및 계산 사이클을 명시하는 시간 의존적 질문을 수신한다. 대체 가능한 디바이스는 또한 마이크로컨트롤러 내에서 계산 사이클과 동일한 횟수로 질문 계산을 수행하는 전용 로직을 포함하며, 제 1 계산은 무작위 시드 및 세션 키를 사용하여 출력을 생성하고, 각각의 후속 계산은 선행 계산의 출력을 사용한다.
다른 예시적인 구현예에서, 인증 시스템은 호스트 디바이스와, 호스트 디바이스 내에 통합된 컨트롤러와, 암호화 타이밍 질문을 발부하고 공급 디바이스가 예상 시간 윈도우 내에 드는 질문 응답 시간 내에 질문 응답을 제공할 때 공급 디바이스를 인증하도록 컨트롤러 상에서 실행 가능한 인증 알고리즘을 포함한다.
다른 예시적인 구현예에서, 인증 시스템은 컨트롤러와 메모리를 갖는 프린트를 포함한다. 인증 시스템은 또한 메모리 내에 저장되며 암호화 타이밍 질문을 발부하고 공급 디바이스가 예상 시간 윈도우 내에서 예상된 응답에 대응하는 질문 응답을 제공할 때 인쇄 공급 디바이스를 인증하도록 컨트롤러 상에서 실행 가능한 인증 알고리즘을 포함한다.
다른 예시적인 구현예에서, 비일시적 프로세서 판독 가능한 매체는 명령어를 표현하는 코드를 저장하며, 명령어는 프로세서에 의해 실행될 때 프로세서가 공급 디바이스를 인식하게 하고, 암호화 타이밍 질문을 공급 디바이스에 발부하게 한다. 타이밍 질문은 세션 키, 무작위 시드, 및 계산 카운트를 포함하는 데이터에 대해 수학적 계산이 수행되도록 요청한다. 명령어는 또한 프로세서가 공급 디바이스로부터 질문 응답 시간 내에 질문 응답을 수신하게 하고, 질문 응답이 예상된 응답과 일치하고 질문 응답 시간이 예상 시간 윈도우 내에 들 때 공급 디바이스를 인증하게 한다.
예시적인 구현예
도 1은 교체 가능한 공급 디바이스를 인증하기에 적합한 예시적인 일반적 인증 시스템(100)의 컴포넌트를 예시하는 블록도이다. 인증 시스템(100)은 호스트 디바이스(102) 및 교체 가능한 공급 디바이스(104)를 포함한다. 일반적으로 호스트 디바이스(102)는 인증 시스템(100)의 일반적인 기능을 제어하고 공급 디바이스(104)와 통신하고 이를 제어하기 위한, 프로세서(CPU)(108), 메모리(110), 펌웨어, 및 기타 전자장치와 같은 표준 컴퓨팅 시스템의 컴포넌트를 포함하는 컨트롤러(106)를 포함한다. 메모리(110)는 알고리즘, 프로그램 모듈, 데이터 구조, 및 JDF 등의 형태의 컴퓨터/프로세서 판독 가능하게 코딩된 명령어 및/또는 데이터를 저장하기 위한 비일시적 컴퓨터/프로세서 판독 가능한 매체를 포함하는 휘발성(즉, RAM) 및 비휘발성(예를 들면, ROM, 하드 디스크, 플로피 디스크, CD-ROM 등) 메모리 컴포넌트를 포함할 수 있다. 공급 디바이스(104)는 마찬가지로 프로세서(CPU)(114) 및 메모리(116)를 포함하는 마이크로컨트롤러(112)(즉, 스마트 카드)를 포함한다.
일반적으로, 호스트 디바이스(102)를 작동 개시하면, 호스트 디바이스(102) 및 공급 디바이스(104)는 표준 암호화 알고리즘(118)을 이용하는 표준 암호 기술을 통해 보안 통신을 설정한다. 예를 들면, (즉, 프로세서(108) 상에서) 암호화 알고리즘(118)을 실행하면, 호스트 디바이스(102)는 공급 디바이스(104)의 고유 ID(120)를 요청하고, 암호화 관계를 통해 디바이스의 "기본 키"(122)를 결정할 수 있다. 기본 키(122)를 사용하여, 호스트 디바이스 및 공급 디바이스는 현재의 통신 교환에 대비하여 보안 통신을 가능하게 하는 비밀 "세션 키"(124)를 유도할 수 있다. 호스트 디바이스(102)는 이러한 방식으로 작동 시작 때마다 그리고 새로운 공급 디바이스(104)가 설치될 때마다 기본 키(122)를 결정한다. 기본 키(122)는 동일하게 유지되며 바뀌지 않는다. 그러나 호스트 디바이스(102)와 공급 디바이스(104) 사이에서 통신 교환이 이루어질 때마다 새롭고 상이한 세션 키(124)가 유도된다.
일 구현예에서, 메모리(110)는 교체 가능한 공급 디바이스(104)의 진위를 결정하기 위해 컨트롤러(106)의 프로세서(108)에서 실행가능한 인증 알고리즘(126)을 포함한다. 공급 디바이스(104)는 인증 알고리즘(126)에 의해 발부된 암호화 타이밍 질문(128)에 대해 올바르게 응답할 때 그리고 그 질문에 대한 응답(130)이 예상 시간 윈도우 내에서 완료될 때 진품인 것으로 결정된다. 그러므로 질문 응답(130) 값이 올바르지만 질문 응답 시간(131)이 예상 시간 윈도우 내에 들지 않는 공급 디바이스(104)는 진품이 아니라고 결정된다. 마찬가지로, 질문 응답 시간(131)이 예상 시간 윈도우 내에 들지만 질문 응답(130)이 올바르지 않은 공급 디바이스(104)는 진품이 아니라고 결정된다. 그러므로 공급 디바이스(104)의 진위는 암호화 타이밍 질문(128)에 대한 올바른 응답(130)을 예상 시간 윈도우 내에 드는 질문 응답 시간(131)(즉 질문 응답(130)을 제공하는데 걸리는 시간) 내에 제공하는 것에 좌우된다.
호스트 디바이스(102) 상의 인증 알고리즘(126)에 의해 발부된 암호화 타이밍 질문(128)은 특정한 질문 파라미터를 포함하는 특정한 수학적 계산을 수행하라는 요청을 포함한다. 수학적 계산은 특정한 횟수가 수행될 것이다. 암호화 타이밍 질문(128)은 유도된 세션 키, 컨트롤러(106)에 의해 호스트 디바이스(102)에서 발생한 무작위 시드 번호, 및 계산이 수행될 횟수를 나타내는 계산 카운트 또는 사이클을 포함하는 그러한 질문 파라미터를 포함하거나 그러한 질문 파라미터가 동반된다. 수학적 계산은 세션 키를 사용하여 무작위 시드 번호에 대해 연산을 시작한다. 각 계산의 결과 또는 출력은 계산 카운트에 도달될 때까지 반복적으로 다음 계산으로 피드백된다. 수학적 계산의 최종 결과 또는 출력은 특정한 질문 응답 시간(131) 내에 달성되었을 또는 계산되었을 질문 응답(130)을 제공한다. 질문 응답 시간(131)은 인증 알고리즘(126)에 의해, 예를 들면 질문이 발부될 때 타이밍 시퀀스를 시작하고 공급 디바이스(104)가 질문 응답(130)을 완료하여 호스트 디바이스(102)에 반환하면 타이밍 시퀀스를 중단함으로써 측정된다. 일부 구현예에서 질문 응답 시간(131)은 호스트에 의해 결정된 시간 윈도우와 비교하기 전에 또는 시간 윈도우와 비교하는 동안 호스트 디바이스(102) 상의 메모리(110)의 비휘발성 컴포넌트 및/또는 프로세서(108) 내부에 잠시 상주할 수 있는 임시 값이다. 호스트(102) 상의 인증 알고리즘(126)은 질문 응답(130) 및 질문 응답 시간(131)이 올바른지(즉, 예상되는지) 아닌지를 결정한 다음, 그에 따라 공급 디바이스(104)를 인증한다.
계속해서 도 1을 참조하면, 공급 디바이스(104) 상의 마이크로컨트롤러(112)는 암호화 타이밍 질문(128)으로 인한 수학적 계산을 수행하기 위한 전용의 하드웨어 질문 로직(132)을 포함한다. 하드웨어 질문 로직(132)은 특정한 수학적 계산을 최적하게 수행하기 위해 마이크로컨트롤러(112) 상에서 특수하게 설계되고 제작된다. 예시적인 일 구현예에서, 수학적 계산은 전용 로직(132)에서 매우 빨리 구동하도록 최적화된 동작 시퀀스를 정의하는 기본 함수를 포함한다. 수학적 계산 또는 기능은 많은 횟수가 반복되며, 각 반복의 출력은 다음 반복으로의 입력 중 일부가 된다. 그러므로 하나 이상의 피연산자는 수학적 연산이 반복할 때마다 바뀌지만, 수학적 계산 자체는 바뀌지 않는다. 또한, 타이밍 질문(128)을 동반하는 질문 파라미터 값은 각 타이밍 질문(128) 마다 바뀔 수 있다. 인증 알고리즘(126)에 의해 공급 디바이스(104)에 발부된 각각의 타이밍 질문(128)은 세션 키, 컨트롤러(106)에 의해 호스트 디바이스(102) 상에서 발생된 무작위 시드 번호, 및 계산 카운트 또는 사이클마다 상이한 값을 가질 수 있다. 따라서, 각 타이밍 질문(128)마다, 질문 응답(130) 및 질문 응답 시간(131)은 질문 파라미터 값에 의해 결정된다. 구체적으로 말해서, 세션 키, 무작위 시드 및 계산 카운트는 모두 질문 응답 값(130)에 영향을 미치는데 반해, 계산 카운트는 또한 전용의 질문 로직(132)을 통해 수학적 계산의 반복 횟수를 바꿈으로써 질문 응답 시간(131)에 영향을 미친다.
앞에서 언급한 바와 같이, 인증 알고리즘(126)은 질문 응답(130) 및 질문 응답 시간(131)이 올바른지 또는 예상되는지를 결정한다. 이것은 질문 응답(130)과 질문 응답 시간(131)을 올바른 또는 예상된 값과 비교함으로써 이루어진다. 다른 구현예에서, 알고리즘(126)은 상이한 방법으로 올바른 또는 예상된 값을 결정한다. 일 구현예에서, 예를 들면, 알고리즘(126)은 공급 디바이스(104)에 저장된 특성화 데이터(134)를 검색하고 액세스한다. 특성화 데이터(134)는 디지털 시그니처로 보안되며 표준 암호화 연산을 이용하여 검증될 수 있다. 특성화 데이터(134)는 암호화 타이밍 질문(128)과 함께 제공된 계산 카운트에 따라서 질문 응답 시간(131)이 그 범위에 들어야 하는 예상 시간 윈도우를 제공한다. 그래서, 도 2에서 도시된 바와 같이 일 예에서, 특성화 데이터(134)는 상이한 계산 카운트 값을 상이한 시간 윈도우와 연관시키는 테이블을 포함할 수 있다. 단지 예로서, 그러한 연관은 계산 카운트가 10,000인 경우(즉, 수학적 계산이 10,000회 수행되는 경우), 질문 응답 시간(131)이 50-55 밀리 초의 시간 윈도우 내에 드는 것으로 예상되는 것을 표시할 수 있다. 다른 예에서, 특성화 데이터(134)는 기울기 절편 공식 y = mx + b과 같은 수학적 관계를 통해 제공될 수도 있다. 그러므로 계산 카운트 값(x)이 주어지면, 예상된 시간(y)이 결정될 수 있다. 그런 다음 시간 윈도우는 예를 들면 예상된 시간(y) +/- 5%를 이용하여 호스트 디바이스(102) 상의 인증 알고리즘(126)에 의해 결정될 수 있다.
다른 예시적인 구현예에서, 인증 알고리즘(126)은 암호화 타이밍 질문(128)을 호스트 디바이스 컨트롤러(106) 상의 전용 기준 로직(136)에 발부함으로써 질문 응답(130)에 대해 올바른 또는 예상된 값을 결정한다. 컨트롤러(106) 상의 기준 로직(136)은 공급 디바이스(104) 상의 전용의 하드웨어 로직(132)을 미러링하며, 그래서 타이밍 질문(128)으로 인한 수학적 계산을 최적하게 수행하도록 컨트롤러(106) 상에서 특수하게 설계되어 제작된다. 그러므로 인증 알고리즘(126)이 타이밍 질문(128)을 공급 디바이스(104)에 발부할 때, 인증 알고리즘은 또한 타이밍 질문(128)을 기준 로직(136)에도 발부한다. 기준 로직(136)은 공급 디바이스(104) 상의 전용의 하드웨어 로직(132)에 대해 앞에서 논의된 바와 동일한 방식으로 질문으로 인한 수학적 계산을 수행한다. 타이밍 질문(128)에 응답하여, 기준 로직(136)은 질문을 완료하고 기준 시간 내에 기준 응답을 제공한다. 기준 응답 시간 윈도우는 예를 들면, 기준 시간의 특정 퍼센트(예를 들면, +/- 5%, +/- 10%) 내인 것으로 정의될 수 있다. 그 다음 인증 알고리즘(126)은 기준 응답 및 기준 응답 시간 윈도우를 예상된 값으로서 사용하여 질문 응답(130) 및 질문 응답 시간(131)과 비교한다. 만일 질문 응답(130)이 기준 응답과 일치하며 질문 응답 시간(131)이 기준 응답 시간 윈도우 내에 들면, 인증 알고리즘(126)은 공급 디바이스(104)가 진품 디바이스라고 결정한다.
도 3은 잉크젯 프린팅 시스템(300)으로서 구현된 인증 시스템(100)의 일 예를 도시한다. 일반적으로, 프린팅 시스템(300)은 일반적인 인증 시스템(100)과 동일하거나 유사한 컴포넌트를 포함하며, 교체 가능한 잉크 공급 카트리지의 인증에 관련한 방식과 동일하거나 유사한 방식으로 작용한다. 예시적인 구현예에서, 잉크젯 프린팅 시스템(300)은 컨트롤러(106), 장착 어셈블리(304), 잉크 공급 카트리지(306)로서 구현된 하나 이상의 교체 가능한 공급 디바이스(104), 및 잉크젯 프린팅 시스템(300)의 각종 전기 컴포넌트에 전력을 공급하는 적어도 하나의 전력 공급장치(308)를 갖는 인쇄 엔진(302)을 포함한다. 프린팅 시스템(300)은 또한 매체 이송 어셈블리(310)를 포함한다.
도 4는 교체 가능한 공급 디바이스(104)를 나타내는 예시적인 잉크젯 공급 카트리지(306)의 사시도를 도시한다. 하나 이상의 프린트헤드(312) 이외에, 잉크젯 카트리지(306)는 마이크로컨트롤러(112), 한 그룹의 전기 접점(400) 및 잉크(또는 다른 유체) 공급 챔버(402)를 포함한다. 일부 구현예에서, 카트리지(306)는 한 가지 색의 잉크를 저장하는 공급 챔버(402)를 가지고 있을 수 있으며, 다른 구현예에서, 카트리지는 각기 상이한 색의 잉크를 저장하는 복수의 챔버(402)를 가지고 있을 수 있다. 전기 접점(400)은 전기 신호를 컨트롤러(106)로부터 프린트헤드(312)상의 노즐(314)로 전달하여 유체 방울이 토출하게 한다. 전기 접점(400)은 또한 전기 신호를 컨트롤러(106)와 마이크로컨트롤러(112) 사이에서 전달하여 잉크젯 프린팅 시스템(300) 내 카트리지(306)가 인증받게 한다. 예시적인 일 구현예에서, 마이크로컨트롤러(112)는 프린트헤드(312)에 의해 공유된 실리콘 기판상에 배치된다. 다른 예시적인 구현예에서, 마이크로컨트롤러(112)는 스탠드얼론 스마트 카드처럼 카트리지(306)의 어느 곳에서든 배치된다. 마이크로컨트롤러(112)는 도 1에서 도시되고 앞에서 논의된 마이크로컨트롤러(112)와 유사하며 그 마이크로컨트롤러의 일반적인 같은 컴포넌트(도 4에는 모두 도시되지 않음)를 포함한다. 그러므로 카트리지(306) 상의 마이크로컨트롤러(112)는 도 1 및 도 2의 인증 시스템(100)에 관하여 앞에서 논의된 바와 동일한 일반적인 방식으로 작용하는 메모리(116) 및 전용의 질문 로직(132)을 포함한다.
도 3 및 도 4를 참조하면, 프린트헤드(312)는 인쇄 매체(316)에다 인쇄하기 위해 복수의 오르피스 또는 노즐(314)을 통해 인쇄 매체(316)를 향해 잉크의 방울 또는 다른 유체의 방울을 토출한다. 인쇄 매체(316)는 종이, 명함 용지, 사진 용지, 마일라(Mylar), 폴리에스터, 합판, 폼 보드, 직물, 및 캔버스 등과 같은 임의의 형태의 적합한 시트 또는 롤 재료일 수 있다. 프린트헤드(312)는 다양한 방법으로 노즐(314)을 통해 잉크를 토출하도록 구성될 수 있다. 예를 들면, 열 잉크젯 프린트헤드는 가열 소자를 통해 전류를 통과시켜 열을 발생하고 발사 챔버 내부에서 잉크의 소량 부분을 증발시킴으로써 노즐로부터 방울을 토출한다. 증기 기포는 노즐(314)을 통해 잉크 방울을 강제로 밀어낸다. 다른 예에서, 압전 잉크젯 프린트헤드는 압전 물질 액추에이터를 사용하여 잉크 방울을 노즐로부터 밀어내는 가압 펄스를 발생한다. 전형적으로 노즐(314)은 카트리지(306) 및 인쇄 매체(316)가 서로에 대해 이동됨에 따라서 잉크 노즐(314)로부터 잉크가 적절하게 순차적으로 토출되어 문자, 심볼 및/또는 다른 그래픽이나 이미지를 인쇄 매체(316) 상에 인쇄되도록 프린트헤드(312)를 따라서 하나 이상의 컬럼 또는 어레이로 배열된다.
장착 어셈블리(304)는 매체 이송 어셈블리(310)에 대비하여 카트리지(306)를 위치설정하며, 매체 이송 어셈블리(310)는 잉크젯 카트리지(306)에 대비하여 인쇄 매체(316)를 위치설정한다. 그래서, 인쇄 구역(318)은 노즐(314)에 인접하게 카트리지(306)와 인쇄 매체(316) 사이의 영역에서 정의된다. 일 구현예에서, 인쇄 엔진(302)은 스캐닝 방식의 인쇄 엔진(302)이다. 이와 같이, 장착 어셈블리(304)는 인쇄 매체(316)를 스캔하기 위해 매체 이송 어셈블리(310)에 대비하여 카트리지(306)를 이동하기 위한 카트리지를 포함한다. 다른 구현예에서, 인쇄 엔진(302)은 비스캔 방식의 인쇄 엔진(302)이다. 이와 같이, 장착 어셈블리(304)는 매체 이송 어셈블리(310)에 대비하여 카트리지(306)를 전술한 위치에 고정하는데 반해 매체 이송 어셈블리(310)는 카트리지(306)에 대비하여 인쇄 매체(316)를 위치설정한다.
도 1의 인증 시스템(100)에 대해 앞에서 언급한 바와 같이, 컨트롤러(106)는 통상적으로 프로세서(CPU)(108), 메모리(110), 펌웨어, 및 다른 전자장치와 같은 표준 컴퓨팅 시스템의 컴포넌트를 포함한다. 도 3의 잉크젯 프린팅 시스템(300)에서, 컨트롤러(106)는 마찬가지로 프린팅 시스템(300)의 일반적인 기능을 제어하며 카트리지(306), 장착 어셈블리(304) 및 매체 이송 어셈블리(310)와 통신하고 이들을 제어하기 위한 그러한 컴포넌트를 채용한다. 따라서, 컨트롤러(106)는 컴퓨터와 같은 호스트 시스템으로부터 데이터(320)를 수신하고, 데이터(320)를 일시적으로 메모리(110)에 저장한다. 통상적으로, 데이터(320)는 전자, 적외선, 광, 또는 다른 정보 이송 경로를 따라서 잉크젯 프린팅 시스템(300)으로 전송된다. 데이터(320)는 예를 들면, 인쇄될 문서 및/또는 파일을 나타낸다. 이와 같이, 데이터(320)는 하나 이상의 인쇄 작업 커맨드 및/또는 커맨드 파라미터를 포함하는 잉크젯 프린팅 시스템(300)의 인쇄 작업을 형성한다. 데이터(320)를 이용하여, 컨트롤러(106)는 카트리지(306)가 노즐(314)로부터 잉크 방울을 토출하도록 제어한다. 그래서, 컨트롤러(106)는 인쇄 매체(316) 상에 문자, 부호, 및/또는 다른 그래픽이나 이미지를 형성하는 토출된 잉크 방울의 패턴을 정의한다. 토출된 잉크 방울의 패턴은 데이터(320)로부터의 인쇄 작업 커맨드 및/또는 커맨드 파라미터에 의해 결정된다.
잉크젯 프린팅 시스템(300)의 일반적인 인쇄 기능을 관리하는 것 이외에, 컨트롤러(106)는 잉크젯 카트리지(306)가 진품 디바이스인지를 결정하기 위해 인증 알고리즘(126)을 실행한다. 프린팅 시스템(300)상의 이러한 인증 프로세스는 도 1의 일반적인 인증 시스템(100)에 관련하여 앞에서 설명한 프로세스와 유사하다. 도 5는 잉크젯 카트리지(306)와 같은 교체 가능한 공급 디바이스(104)가 진품 디바이스인지를 결정하는 프린팅 시스템(300) 또는 다른 인증 시스템(100)에서 예시적인 인증 프로세스(500)의 흐름도이다. 프로세스(500)는 도 1 내지 도 4와 관련하여 앞에서 논의된 예시적인 구현예와 연관되며, 프로세스(500)에서 도시된 단계의 상세 내용은 그러한 구현예의 관련된 설명에서 찾을 수 있다. 프로세스(500)의 단계는 도 1 및 도 3의 메모리(110)와 같은 비일시적 컴퓨터/프로세서 판독 가능한 매체 상에 저장된 프로그래밍 명령어를 포함하는 알고리즘으로서 구현될 수 있다. 다른 예에서, 프로세스(500)의 단계는 그러한 프로그래밍 명령어를 도 1 및 도 3의 프로세서(108)와 같은 프로세서에 의해 판독하고 실행함으로써 구현된다. 프로세스(500)는 하나 보다 많은 구현예를 포함할 수 있으며, 프로세스(500)의 다른 구현예는 도 5의 흐름도에서 제시된 각 단계를 채용하지 않을 수 있다. 그러므로 프로세스(500)의 단계가 흐름도 내의 특정한 순서대로 제시되지만, 이렇게 제시된 순서는 단계가 실제로 구현될 수 있는 순서에 대하여 또는 모든 단계가 구현될 수 있는지에 대하여 한정하려고 의도하지 않는다. 예를 들면, 프로세스(500)의 일 구현예는 하나 이상의 후속 단계를 수행하지 않고 복수의 초기 단계들을 수행함으로써 성취될 수 있는데 반해, 프로세스(500)의 다른 구현예는 모든 단계를 수행함으로써 성취될 수 있다.
이제 일차적으로 도 1, 도 3 및 도 5를 참조하면, 인증 프로세스(500)는 도시된 제 1 단계가 교체 가능한 공급 디바이스를 인식하는 블록(502)에서 시작한다. 전형적으로, 교체 가능한 공급 디바이스를 인식하는 일은 인쇄 시스템이 턴 온될 때 또는 인쇄 시스템에서 잉크 또는 토너 인쇄 공급 카트리지가 교체될 때와 같이 호스트 디바이스의 작동 개시 때 또는 새로운 공급 디바이스를 호스트 디바이스에 삽입할 때 이루어진다. 교체 가능한 공급 디바이스는 또한 공급 디바이스가 각 인쇄 작업의 시초에 작동 개시될 때 인식될 수 있다. 인증 프로세스(500)는 암호화 타이밍 질문이 발부되는 블록(504)에서 계속된다. 타이밍 질문은 인쇄 디바이스와 같은 호스트 디바이스로부터 발부되며 인쇄 공급 카트리지와 같은 공급 디바이스로 전송된다. 타이밍 질문은 호스트 디바이스와 공급 디바이스 사이에서 유도된 세션 키, 호스트 디바이스에 의해 발생된 무작위 시드 번호, 및 계산이 수행될 횟수를 나타내는 계산 카운트 또는 사이클을 포함하는 특정한 수학적 파라미터가 연루된 특정한 수학적 계산을 수행하라는 요청을 포함한다. 타이밍 질문을 발부하면, 블록(506)에서 도시된 바와 같이, 호스트 디바이스는 질문 응답을 수신하는데 걸리는 시간 량을 모니터링하는 타이밍 시퀀스를 시작할 수 있다.
일부 구현예에서, 블록(508)에서 도시된 바와 같이, 타이밍 질문은 또한 호스트 디바이스 상의 기준 로직으로 전송될 수 있다. 타이밍 질문이 호스트 디바이스 상의 기준 로직으로 전송될 때, 블록(510)에서 도시된 바와 같이, 기준 응답이 로직으로부터 특정한 양의 경과된 기준 시간 내에 수신된다. 블록(512)에서, 특정 비율의 기준 시간의 주변 범위를 포함함으로써 기준 시간 윈도우가 결정될 수 있다. 예를 들면, 기준 시간 윈도우는 기준 시간의 플러스 또는 마이너스 5%를 기준 시간인 것으로 결정될 수 있다. 일부 구현예에서, 타이밍 질문을 호스트 디바이스 상의 기준 로직으로 전송하는 것의 대안으로서, 블록(514)에서 도시된 바와 같이, 호스트 디바이스는 공급 디바이스에 저장된 특성화 데이터를 검색하고 액세스한다. 다른 구현예에서, 특성화 데이터는 호스트 디바이스의 메모리 내에서 하드 코딩될 수 있다. 특성화 데이터는 상이한 계산 카운트 값과 연관된, 공급 디바이스로부터 질문 응답을 수신하기 위한 예상 시간 윈도우를 포함한다.
블록(516)에서 도시된 바와 같이, 인증 프로세스(500)는 공급 디바이스로부터 질문 응답을 수신하는 단계를 포함한다. 질문 응답은 예를 들면, 호스트 디바이스 상에서 시간을 측정함으로써 결정될 수 있는 특정한 질문 응답 시간 내에 수신된다. 프로세스(500)는 질문 응답을 예상된 응답과 비교하는 블록(518)에서 계속된다. 예상된 응답은 호스트 디바이스 상의 기준 로직으로부터 수신된 기준 응답일 수 있다. 블록(520)에서, 질문 응답 시간은 또한 질문 응답 시간이 예상 시간 윈도우 내에 드는지를 결정하기 위해 예상된 응답 시간 윈도우에 비교된다. 예상 시간 윈도우는 기준 시간 윈도우 또는 공급 디바이스 또는 다른 어느 곳에 저장된 특성화 데이터로부터 검색된 예상 시간 윈도우일 수 있다.
인증 프로세스(500)는 공급 디바이스로부터 질문 응답이 예상된 값과 일치하고 질문 응답 시간이 예상 시간 윈도우 내에 들 때 호스트 디바이스가 공급 디바이스를 인증하는 블록(522)에서 계속된다. 프로세스(500)의 블록(524)에서, 질문 응답이 예상된 값과 일치하지 않거나 또는 질문 응답 시간이 예상 시간 윈도우 내에 들 때 중 어느 하나, 아니면 두 상황 모두일 때 호스트 디바이스는 공급 디바이스가 진품이 아니라고 결정한다.
300: 잉크젯 프린팅 시스템 302: 인쇄 엔진
304: 장착 어셈블리 306: 잉크 카트리지
308: 전력 공급 장치 310: 미디어 이송 어셈블리
312: 프린터 헤드 314: 노즐
316: 인쇄 매체 318: 인쇄 구역
106: 컨트롤러 320: 호스트로부터의 데이터

Claims (18)

  1. 교체 가능한 공급 디바이스로서,
    중앙 처리 유닛(CPU) 및 베이스 키를 저장하는 메모리와,
    암호화된 타이밍 챌린지에 응답하기 위한 전용의 하드웨어 챌린지 로직을 포함하고,
    상기 전용의 하드웨어 챌린지 로직은
    상기 암호화된 타이밍 챌린지에 응답하여, 계산 카운트 및 상기 베이스 키와 관련된 세션 키를 포함하는 파라미터에 기초하여 타이밍 응답 값을 연산하고,
    상기 타이밍 응답 값을 사전결정된 시간 윈도우 내에 제공하되,
    상기 사전결정된 시간 윈도우는 상기 계산 카운트에 기초하여 결정되고,
    상기 메모리는 상기 전용의 하드웨어 챌린지 로직이 상기 계산 카운트에 의존하여 상기 타이밍 응답 값을 생성해야 하는 적어도 하나의 예상 시간 윈도우를 제공하는 특성화 데이터를 더 포함하고,
    상기 특성화 데이터는 디지털 서명을 이용하여 보호되고,
    상기 메모리의 상기 특성화 데이터는 상기 계산 카운트를 포함하는
    교체 가능한 공급 디바이스.
  2. 제1항에 있어서,
    상기 특성화 데이터는 복수의 상이한 계산 카운트들을 대응하는 시간 윈도우들과 연관시키는 테이블을 포함하는
    교체 가능한 공급 디바이스.
  3. 제1항에 있어서,
    상기 메모리 상의 상기 특성화 데이터는 대응하는 예상 시간 윈도우와 연관되는 적어도 하나의 계산 카운트를 포함하는
    교체 가능한 공급 디바이스.
  4. 제1항에 있어서,
    상기 타이밍 응답 값을 연산하기 위한 상기 파라미터는 랜덤 시드(random seed)를 더 포함하는
    교체 가능한 공급 디바이스.
  5. 제4항에 있어서,
    상기 전용의 하드웨어 챌린지 로직은 상기 계산 카운트와 동일한 수의 챌린지 연산을 수행하여 상기 타이밍 응답 값을 생성하고, 첫번째 챌린지 연산은 상기 랜덤 시드 및 상기 세션 키를 이용하여 출력을 생성하고 각각의 후속하는 챌린지 연산은 이전의 연산의 출력을 사용하는
    교체 가능한 공급 디바이스.
  6. 제5항에 있어서,
    마지막 챌린지 연산의 출력은 상기 사전결정된 시간 윈도우에 대응하는 연산된 챌린지 응답 시간 내에 상기 타이밍 응답 값을 제공하는
    교체 가능한 공급 디바이스.
  7. 제5항에 있어서,
    상기 챌린지 연산의 하나 이상의 피연산자(operand)는 상기 챌린지 연산이 각각 반복될 때마다 변경되고, 상기 챌린지 연산의 함수는 반복 동안에 변경되지 않고 유지되는
    교체 가능한 공급 디바이스.
  8. 제4항에 있어서,
    상기 타이밍 응답 값의 연산 타이밍은 상기 계산 카운트 및 상기 전용의 하드웨어 챌린지 로직에 의존하고,
    상기 타이밍 응답 값은 상기 세션 키 및 랜덤 시드에 의존하는
    교체 가능한 공급 디바이스.
  9. 제1항에 있어서,
    상기 특성화 데이터는 주어진 계산 카운트 (x)에 대해, 예상 시간 윈도우 (y)가 기울기 절편 공식 (y = mx + b)에 의해 결정되도록 제공되는
    교체 가능한 공급 디바이스.
  10. 제1항에 있어서,
    상기 전용의 하드웨어 챌린지 로직은 상기 타이밍 응답 값을 생성하는 동작의 시퀀스를 실행하도록 구성된 것인
    교체 가능한 공급 디바이스.
  11. 제1항에 있어서,
    상기 전용의 하드웨어 챌린지 로직은 상기 전용의 하드웨어 챌린지 로직 상에서 실행되기에 최적화된 동작의 시퀀스를 정의하는 기본 함수를 사용하여 상기 타이밍 응답 값을 연산하는
    교체 가능한 공급 디바이스.
  12. 제1항에 있어서,
    상기 교체 가능한 공급 디바이스는 유체 공급 챔버를 포함하는 인쇄 공급 카트리지 내에 통합되는
    교체 가능한 공급 디바이스.
  13. 제1항에 있어서,
    상기 메모리 상의 상기 특성화 데이터는 대응하는 예상 시간 윈도우와 연관되는 적어도 하나의 계산 카운트를 포함하고,
    상기 특성화 데이터는 주어진 계산 카운트 (x)에 대해, 예상 시간 윈도우 (y)가 기울기 절편 공식 (y = mx + b)에 의해 결정되도록 제공되는
    교체 가능한 공급 디바이스.
  14. 제13항에 있어서,
    상기 타이밍 응답 값을 연산하기 위한 상기 파라미터는 랜덤 시드를 더 포함하는
    교체 가능한 공급 디바이스.
  15. 제14항에 있어서,
    상기 전용의 하드웨어 챌린지 로직은 상기 계산 카운트와 동일한 수의 챌린지 연산을 수행하여 상기 타이밍 응답 값을 생성하고, 첫번째 챌린지 연산은 상기 랜덤 시드 및 상기 세션 키를 이용하여 출력을 생성하고 각각의 후속하는 챌린지 연산은 이전의 연산의 출력을 사용하는
    교체 가능한 공급 디바이스.
  16. 제15항에 있어서,
    마지막 챌린지 연산의 출력은 상기 사전결정된 시간 윈도우에 대응하는 연산된 챌린지 응답 시간 내에 상기 타이밍 응답 값을 제공하는
    교체 가능한 공급 디바이스.
  17. 제15항에 있어서,
    상기 챌린지 연산의 하나 이상의 피연산자는 상기 챌린지 연산이 각각 반복될 때마다 변경되고, 상기 챌린지 연산의 함수는 반복 동안에 변경되지 않고 유지되는
    교체 가능한 공급 디바이스.
  18. 제14항에 있어서,
    상기 타이밍 응답 값의 연산 타이밍은 상기 계산 카운트 및 상기 전용의 하드웨어 챌린지 로직에 의존하고,
    상기 타이밍 응답 값은 상기 세션 키 및 랜덤 시드에 의존하는
    교체 가능한 공급 디바이스.
KR1020177034070A 2013-08-30 2013-08-30 타이밍 질문 응답을 통한 공급 인증 KR101907817B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/057674 WO2015030818A1 (en) 2013-08-30 2013-08-30 Supply authentication via timing challenge response

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020167005289A Division KR20160036621A (ko) 2013-08-30 2013-08-30 타이밍 질문 응답을 통한 공급 인증

Publications (2)

Publication Number Publication Date
KR20170135978A KR20170135978A (ko) 2017-12-08
KR101907817B1 true KR101907817B1 (ko) 2018-10-12

Family

ID=49170896

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020177034070A KR101907817B1 (ko) 2013-08-30 2013-08-30 타이밍 질문 응답을 통한 공급 인증
KR1020167005289A KR20160036621A (ko) 2013-08-30 2013-08-30 타이밍 질문 응답을 통한 공급 인증
KR1020177034067A KR101907816B1 (ko) 2013-08-30 2013-08-30 타이밍 질문 응답을 통한 공급 인증

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020167005289A KR20160036621A (ko) 2013-08-30 2013-08-30 타이밍 질문 응답을 통한 공급 인증
KR1020177034067A KR101907816B1 (ko) 2013-08-30 2013-08-30 타이밍 질문 응답을 통한 공급 인증

Country Status (22)

Country Link
US (7) US9561662B2 (ko)
EP (4) EP3231617B1 (ko)
JP (1) JP2016534626A (ko)
KR (3) KR101907817B1 (ko)
CN (4) CN107688741B (ko)
AU (2) AU2013399063B2 (ko)
BR (1) BR112016004405B1 (ko)
CA (1) CA2920802C (ko)
DK (3) DK3181364T3 (ko)
ES (4) ES2807531T3 (ko)
FI (1) FI3022059T4 (ko)
HK (1) HK1218903A1 (ko)
HU (3) HUE049808T2 (ko)
MX (1) MX371535B (ko)
PH (1) PH12016500368B1 (ko)
PL (4) PL3231617T3 (ko)
PT (4) PT3181364T (ko)
RU (1) RU2625711C1 (ko)
SG (1) SG11201601156TA (ko)
TR (1) TR201815860T4 (ko)
TW (1) TWI569170B (ko)
WO (1) WO2015030818A1 (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK3181364T3 (da) 2013-08-30 2020-07-27 Hewlett Packard Development Co Godkendelse af forsyning via timing-challenge-respons
CN104943397B (zh) 2015-06-25 2016-08-17 珠海艾派克微电子有限公司 成像盒芯片、成像盒以及更换成像盒芯片序列号的方法
JP6690207B2 (ja) 2015-11-30 2020-04-28 ブラザー工業株式会社 中継装置、および制御プログラム
CN111585768B (zh) 2016-06-17 2023-08-15 惠普发展公司,有限责任合伙企业 用于可更换物品验证的方法和装置
EP3306506B1 (en) * 2016-10-07 2018-08-15 Axis AB Authentication of a new device by a trusted device
EP3332318B1 (en) * 2016-10-27 2019-02-20 Hewlett-Packard Development Company, L.P. Replaceable item authentication
KR101934221B1 (ko) 2016-10-27 2018-12-31 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 교체가능 물품 인증
US10944579B2 (en) * 2017-05-26 2021-03-09 Combined Conditional Access Development And Support, Llc Device pairing and authentication
FR3076923A1 (fr) * 2018-01-16 2019-07-19 Stmicroelectronics (Rousset) Sas Procede et circuit d'authentification
JP7109295B2 (ja) * 2018-07-27 2022-07-29 キヤノン株式会社 認証システム、認証装置、被認証装置及び画像形成装置
MX2021006229A (es) 2018-12-03 2021-08-11 Hewlett Packard Development Co Conjunto de circuitos logicos.
US11338586B2 (en) 2018-12-03 2022-05-24 Hewlett-Packard Development Company, L.P. Logic circuitry
AU2018452006B2 (en) 2018-12-03 2022-12-01 Hewlett-Packard Development Company, L.P. Logic circuitry
US11292261B2 (en) 2018-12-03 2022-04-05 Hewlett-Packard Development Company, L.P. Logic circuitry package
PL3681723T3 (pl) 2018-12-03 2021-11-22 Hewlett-Packard Development Company, L.P. Obwód logiczny
PL3688636T3 (pl) * 2018-12-03 2023-09-11 Hewlett-Packard Development Company, L.P. Zespół układów logicznych
US10894423B2 (en) 2018-12-03 2021-01-19 Hewlett-Packard Development Company, L.P. Logic circuitry
WO2021080607A1 (en) 2019-10-25 2021-04-29 Hewlett-Packard Development Company, L.P. Logic circuitry package
MX2021006485A (es) * 2018-12-03 2021-10-13 Hewlett Packard Development Co Conjunto de circuitos logicos.
WO2020117402A1 (en) 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry package
PL3682359T3 (pl) 2018-12-03 2021-05-17 Hewlett-Packard Development Company, L.P. Obwód logiczny
MX2021006474A (es) 2018-12-03 2021-07-15 Hewlett Packard Development Co Paquete de conjunto de circuitos logicos.
CN113165385B (zh) 2018-12-03 2022-10-14 惠普发展公司,有限责任合伙企业 逻辑电路系统
TWI709040B (zh) * 2019-04-19 2020-11-01 台灣優燈股份有限公司 辨識訊號生成裝置及具辨識訊號生成功能的可替換式電子裝置
JP7457029B2 (ja) 2019-05-23 2024-03-27 クリプトグラフィ リサーチ, インコーポレイテッド 高度なメモリのための偽造防止適用
CN110378096A (zh) 2019-07-15 2019-10-25 杭州旗捷科技有限公司 一种耗材芯片通信方法、耗材芯片及耗材
FR3098949B1 (fr) 2019-07-15 2023-10-06 St Microelectronics Rousset Fonction à sens unique
US20230047564A1 (en) * 2020-01-24 2023-02-16 Cryptography Research, Inc. Authentication timers
US20230109232A1 (en) * 2020-04-30 2023-04-06 Hewlett-Packard Development Company, L.P. Logic circuitry package for print apparatus
DE102020112811B3 (de) 2020-05-12 2021-10-21 Ebm-Papst Mulfingen Gmbh & Co. Kg Verfahren und Anlage zur Authentifizierung wenigstens eines Aggregats
US11831674B2 (en) * 2020-10-16 2023-11-28 Cisco Technology, Inc. Detecting man-in-the-middle attacks in management component transport protocol network server systems
WO2022086539A1 (en) * 2020-10-22 2022-04-28 Hewlett-Packard Development Company, L.P. Logic circuitry
CN114103452B (zh) * 2021-08-19 2023-01-24 珠海极海半导体有限公司 Mpu芯片或mcu芯片

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012174195A (ja) * 2011-02-24 2012-09-10 Renesas Electronics Corp 認証システム

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892900A (en) * 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US6565181B2 (en) * 1997-07-12 2003-05-20 Silverbrook Research Pty Ltd Printing cartridge with switch array identification
US6702417B2 (en) * 1997-07-12 2004-03-09 Silverbrook Research Pty Ltd Printing cartridge with capacitive sensor identification
US7249108B1 (en) * 1997-07-15 2007-07-24 Silverbrook Research Pty Ltd Validation protocol and system
AUPO797897A0 (en) * 1997-07-15 1997-08-07 Silverbrook Research Pty Ltd Media device (ART18)
US7685423B1 (en) 2000-02-15 2010-03-23 Silverbrook Research Pty Ltd Validation protocol and system
US20050268099A1 (en) * 2000-08-22 2005-12-01 Dallas Semiconductor Corporation Security device and method
US6467888B2 (en) * 2001-02-21 2002-10-22 Illinois Tool Works Inc. Intelligent fluid delivery system for a fluid jet printing system
US8352582B2 (en) * 2001-06-28 2013-01-08 Koninklijke Philips Electronics N.V. Temporal proximity to verify physical proximity
DE10157946A1 (de) * 2001-11-27 2003-06-05 Osram Opto Semiconductors Gmbh Vorrichtung und Verfahren zum Wachsen von Schichten auf ein Substrat
KR20040068499A (ko) 2003-01-24 2004-07-31 마쯔시다덴기산교 가부시키가이샤 공유키 교환방법과 통신기기
US7240995B2 (en) 2003-05-06 2007-07-10 Lexmark International, Inc. Method of authenticating a consumable
US20080077802A1 (en) * 2003-06-27 2008-03-27 Ultracell Corporation Fuel cartridge authentication
US20050036801A1 (en) * 2003-08-15 2005-02-17 Static Control Components Casing for an electronic circuit
US7580144B2 (en) * 2004-03-22 2009-08-25 Hewlett-Packard Development Company, L.P. System and method for detecting potential counterfeiting of print cartridges
WO2006005211A1 (de) 2004-07-12 2006-01-19 Gaba International Ag Mundpflegemittel enthaltend chitosanderivat
US7623255B2 (en) * 2004-10-22 2009-11-24 Hewlett-Packard Development Company, L.P. Printing device
KR101092543B1 (ko) * 2004-11-12 2011-12-14 삼성전자주식회사 브로드캐스트 암호화를 위한 사용자 키 관리 방법
US7702927B2 (en) * 2004-11-12 2010-04-20 Verayo, Inc. Securely field configurable device
WO2007041866A1 (en) 2005-10-14 2007-04-19 Research In Motion Limited Battery pack authentication for a mobile device
US8848912B2 (en) * 2005-12-19 2014-09-30 Nippon Telegraph And Telephone Corporation Terminal identification method, authentication method, authentication system, server, terminal, wireless base station, program, and recording medium
US7877815B2 (en) 2006-01-20 2011-01-25 Kyocera Corporation Battery authentication in a wireless communication device
WO2008037000A1 (en) 2006-09-25 2008-04-03 Synaptic Laboratories Limited Inhibiting cloning of hardware devices by general purpose software processors
JP4920386B2 (ja) 2006-11-30 2012-04-18 株式会社みずほ銀行 取引照会システム、取引照会プログラム及び取引照会方法
JP2008292840A (ja) * 2007-05-25 2008-12-04 Murata Mach Ltd 画像形成装置およびプロセスユニット
KR100906404B1 (ko) 2007-07-13 2009-07-09 삼성에스디에스 주식회사 소모품의 복제 방지 장치 및 방법
US10083420B2 (en) * 2007-11-21 2018-09-25 Sermo, Inc Community moderated information
JP2011524099A (ja) * 2008-04-07 2011-08-25 インターデイジタル パテント ホールディングス インコーポレイテッド セキュリティ保護されたセッション鍵生成
KR101574820B1 (ko) * 2008-05-29 2015-12-04 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 교체가능한 프린터 컴포넌트
CN102112960B (zh) 2008-05-29 2014-05-14 惠普开发有限公司 对可更换打印机部件进行认证
US8240561B2 (en) * 2009-03-03 2012-08-14 Cubic Corporation Contactless smartcard authentication
US8489612B2 (en) * 2009-03-24 2013-07-16 Hewlett-Packard Development Company, L.P. Identifying similar files in an environment having multiple client computers
US8504848B2 (en) * 2009-09-29 2013-08-06 Zamtec Ltd Encrypted communication device with limited number of encryption key retrievals from memory
WO2011120974A1 (en) * 2010-03-30 2011-10-06 Irdeto Corporate B.V. Exchanging authentication information between a cartridge and an electronic device
JP5540943B2 (ja) * 2010-06-30 2014-07-02 ブラザー工業株式会社 画像形成装置
US8670946B2 (en) * 2010-09-28 2014-03-11 Landis+Gyr Innovations, Inc. Utility device management
JP5728924B2 (ja) * 2010-12-13 2015-06-03 株式会社リコー 画像形成装置、画像形成方法およびその制御プログラム
DE102010055699A1 (de) * 2010-12-22 2012-06-28 Giesecke & Devrient Gmbh Kryptographisches Verfahren
CN102658724B (zh) 2010-12-31 2015-09-09 珠海艾派克微电子有限公司 匹配成像盒芯片的方法及成像盒芯片
JP5737101B2 (ja) 2011-09-15 2015-06-17 ブラザー工業株式会社 印刷装置および印刷装置の制御方法
JP5745701B2 (ja) * 2011-09-30 2015-07-08 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. 認証システム及び方法
US9327510B2 (en) 2011-10-25 2016-05-03 Hewlett-Packard Development Company, L.P. Verification record for a replaceable supply
DK3181364T3 (da) 2013-08-30 2020-07-27 Hewlett Packard Development Co Godkendelse af forsyning via timing-challenge-respons
WO2015030812A1 (en) * 2013-08-30 2015-03-05 Hewlett-Packard Development Company, L.P. Supply authentication via timing challenge response

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012174195A (ja) * 2011-02-24 2012-09-10 Renesas Electronics Corp 認証システム

Also Published As

Publication number Publication date
US11014370B2 (en) 2021-05-25
EP3231617B1 (en) 2018-10-03
PT3738775T (pt) 2021-12-06
PL3231617T3 (pl) 2019-01-31
PT3181364T (pt) 2020-07-23
KR20170133522A (ko) 2017-12-05
US11123994B2 (en) 2021-09-21
SG11201601156TA (en) 2016-03-30
TW201514756A (zh) 2015-04-16
US20160207323A1 (en) 2016-07-21
PL3738775T3 (pl) 2022-01-17
US20170080716A1 (en) 2017-03-23
MX371535B (es) 2020-01-31
ES2807531T3 (es) 2021-02-23
JP2016534626A (ja) 2016-11-04
CN106739528A (zh) 2017-05-31
EP3022059A1 (en) 2016-05-25
US11027554B2 (en) 2021-06-08
CN107379773A (zh) 2017-11-24
US20210379902A1 (en) 2021-12-09
EP3231617A1 (en) 2017-10-18
US20180099507A1 (en) 2018-04-12
HUE039755T2 (hu) 2019-02-28
FI3022059T4 (fi) 2024-04-04
CN107688741B (zh) 2021-08-20
KR101907816B1 (ko) 2018-10-12
PT3022059T (pt) 2017-05-03
CA2920802C (en) 2019-05-07
BR112016004405B1 (pt) 2022-08-16
MX2016002640A (es) 2016-06-06
PL3022059T3 (pl) 2017-08-31
HK1218903A1 (zh) 2017-03-17
PH12016500368A1 (en) 2016-05-02
US9561662B2 (en) 2017-02-07
DK3181364T3 (da) 2020-07-27
US10987936B2 (en) 2021-04-27
AU2013399063A1 (en) 2016-03-17
PH12016500368B1 (en) 2016-05-02
AU2013399063B2 (en) 2017-02-16
DK3022059T3 (en) 2017-05-15
CN105492211B (zh) 2017-09-01
RU2625711C1 (ru) 2017-07-18
CA2920802A1 (en) 2015-03-05
EP3181364A1 (en) 2017-06-21
ES2693448T3 (es) 2018-12-11
ES2902584T3 (es) 2022-03-29
US11691429B2 (en) 2023-07-04
HUE032675T2 (en) 2017-10-30
CN107688741A (zh) 2018-02-13
EP3738775B1 (en) 2021-11-10
DK3022059T4 (da) 2024-04-02
HUE049808T2 (hu) 2020-10-28
AU2017202930B2 (en) 2018-10-04
EP3022059B2 (en) 2024-03-06
US20170239953A1 (en) 2017-08-24
CN106739528B (zh) 2019-07-26
ES2624295T3 (es) 2017-07-13
EP3738775A1 (en) 2020-11-18
AU2017202930A1 (en) 2017-05-25
US20170225477A1 (en) 2017-08-10
TR201815860T4 (tr) 2018-11-21
CN107379773B (zh) 2019-09-13
US11020976B2 (en) 2021-06-01
PT3231617T (pt) 2018-11-16
PL3181364T3 (pl) 2020-11-02
KR20160036621A (ko) 2016-04-04
BR112016004405A8 (pt) 2020-02-11
EP3181364B1 (en) 2020-07-08
TWI569170B (zh) 2017-02-01
CN105492211A (zh) 2016-04-13
DK3231617T3 (en) 2018-11-19
WO2015030818A1 (en) 2015-03-05
US20190111693A1 (en) 2019-04-18
EP3022059B1 (en) 2017-04-12
KR20170135978A (ko) 2017-12-08

Similar Documents

Publication Publication Date Title
KR101907817B1 (ko) 타이밍 질문 응답을 통한 공급 인증
US9878555B2 (en) Supply authentication via timing challenge response
JP6700241B2 (ja) チャレンジ・レスポンスを時間計測することによる供給装置認証
RU2670414C1 (ru) Аутентификация поставки через ответ на запрос согласования по времени

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right