KR20150033895A - 소모품 유닛에 탑재 가능한 crum 칩과 이를 인증하는 화상형성장치 및 그 인증 방법 - Google Patents

소모품 유닛에 탑재 가능한 crum 칩과 이를 인증하는 화상형성장치 및 그 인증 방법 Download PDF

Info

Publication number
KR20150033895A
KR20150033895A KR20130113733A KR20130113733A KR20150033895A KR 20150033895 A KR20150033895 A KR 20150033895A KR 20130113733 A KR20130113733 A KR 20130113733A KR 20130113733 A KR20130113733 A KR 20130113733A KR 20150033895 A KR20150033895 A KR 20150033895A
Authority
KR
South Korea
Prior art keywords
authentication
unit
image forming
mac
forming apparatus
Prior art date
Application number
KR20130113733A
Other languages
English (en)
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
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR20130113733A priority Critical patent/KR20150033895A/ko
Priority to US14/242,236 priority patent/US9594897B2/en
Priority to PCT/KR2014/006637 priority patent/WO2015046730A1/en
Priority to EP14185812.6A priority patent/EP2854063B1/en
Priority to CN201410497851.1A priority patent/CN104462931A/zh
Publication of KR20150033895A publication Critical patent/KR20150033895A/ko

Links

Images

Classifications

    • 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
    • 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
    • B41J29/00Details of, or accessories for, typewriters or selective printing mechanisms not otherwise provided for
    • B41J29/38Drives, motors, controls or automatic cut-off devices for the entire printing mechanism
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G15/00Apparatus for electrographic processes using a charge pattern
    • G03G15/06Apparatus for electrographic processes using a charge pattern for developing
    • G03G15/08Apparatus for electrographic processes using a charge pattern for developing using a solid developer, e.g. powder developer
    • G03G15/0822Arrangements for preparing, mixing, supplying or dispensing developer
    • G03G15/0863Arrangements for preparing, mixing, supplying or dispensing developer provided with identifying means or means for storing process- or use parameters, e.g. an electronic memory
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G21/00Arrangements not provided for by groups G03G13/00 - G03G19/00, e.g. cleaning, elimination of residual charge
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G21/00Arrangements not provided for by groups G03G13/00 - G03G19/00, e.g. cleaning, elimination of residual charge
    • G03G21/16Mechanical means for facilitating the maintenance of the apparatus, e.g. modular arrangements
    • G03G21/18Mechanical means for facilitating the maintenance of the apparatus, e.g. modular arrangements using a processing cartridge, whereby the process cartridge comprises at least two image processing means in a single unit
    • G03G21/1875Mechanical means for facilitating the maintenance of the apparatus, e.g. modular arrangements using a processing cartridge, whereby the process cartridge comprises at least two image processing means in a single unit provided with identifying means or means for storing process- or use parameters, e.g. lifetime of the cartridge
    • G03G21/1878Electronically readable memory
    • G03G21/1892Electronically readable memory for presence detection, authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer

Abstract

화상형성장치가 개시된다. 본 장치는, CRUM칩이 탑재된 소모품 유닛, 소모품 유닛이 장착되면, 소모품 유닛에 대해 제1 인증 및 제2 인증 중 적어도 하나를 수행하는 본체를 포함한다. 여기서, 본체는, 화상형성장치에 저장된 펌웨어에 따라 제1 인증을 수행하기 위한 메인 컨트롤러 및 적어도 하나의 ASIC(Application Specific Integrated Circuit)을 이용하여 소모품 유닛에 대한 제2 인증을 수행하기 위한 인증 제어부를 포함한다. 이에 따라, 화상형성장치가 해킹되더라도 소모품 유닛을 효과적으로 인증할 수 있다.

Description

소모품 유닛에 탑재 가능한 CRUM 칩과 이를 인증하는 화상형성장치 및 그 인증 방법 { CRUM CHIP MAUNTABLE IN COMSUMABLE UNIT, IMAGE FORMING APPARATUS FOR AUTHENTIFICATING THE CRUM CHIP, AND METHOD THEREOF }
본 발명은 CRUM 칩과, 이를 인증하는 화상형성장치 및 그 인증 방법에 대한 것으로 보다 상세하게는 개별적으로 이루어지는 복수의 인증을 수행하는 화상형성장치와 그에 의해 인증되는 CRUM 칩 및 그 인증 방법에 대한 것이다.
컴퓨터 보급이 활성화됨에 따라, 컴퓨터 주변기기의 보급율도 나날이 증가하고 있다. 컴퓨터 주변기기의 대표적인 예로써, 프린터, 팩시밀리, 스캐너, 복사기, 복합기 등과 같은 화상형성장치를 들 수 있다.
화상형성장치들은 잉크나 토너와 같은 매체를 이용하여 용지상에 화상을 인쇄하거나, 컴퓨터 판독 가능 기록 매체에 화상을 저장할 수 있는 장치를 의미한다. 잉크나 토너는 화상형성작업이 진행될 때마다 사용되어, 소정 시간 이상 사용되면 고갈되는 소모품이다.
잉크나 토너가 고갈되면, 사용자는 잉크나 토너를 저장하는 유닛 자체를 새로이 교체하여 주어야 한다. 이와 같이 화상형성장치의 사용과정에서 교체할 수 있는 부품 또는 구성요소들을 소모품 유닛 또는 교체 가능 유닛이라 한다. 설명의 편의를 위하여, 본 명세서에서는 소모품 유닛이라는 명칭을 사용한다.
소모품 유닛에는 상술한 바와 같이 잉크나 토너가 고갈되어 교체하여야 하는 유닛 이외에, 일정 기간 이상 사용하면 특성이 변경되어 좋은 인쇄 품질을 기대할 수 없는 이유로 교체되는 유닛들도 있다. 즉, 컬러별 현상기 이외에도 중간 전사 벨트 등과 같은 부품들도 소모품 유닛에 해당할 수 있다.
구체적으로는, 레이저 화상형성장치의 경우 대전유닛, 전사유닛, 정착유닛 등이 사용되는데, 각 유닛에서 사용되는 다양한 종류의 롤러, 벨트 등은 한계수명 이상 사용되면 마모되거나 변질될 수 있다. 이에 따라, 화상품질을 현저하게 저하시킬 수 있게 된다. 사용자는 깨끗한 화상으로 인쇄작업이 수행될 수 있도록, 각 구성유닛, 즉, 소모품 유닛들을 적절한 교체시기마다 교체하여 주어야 한다.
소모품 유닛의 적절한 관리를 위하여, 최근에는 소모품 유닛 자체에 메모리를 부착하여, 화상형성장치의 본체와 정보를 주고 받을 수 있도록 구현하고 있다. 가령, 화상형성장치의 인쇄 매수, 출력 도트 수, 사용 기한 등과 같은 다양한 사용 정보들은 소모품 유닛 자체의 메모리에 기록될 수 있다. 이에 따라, 사용자 또는 관리자는 소모품 유닛과 관련된 각종 정보들을 소모품 유닛에 직접 기록하여, 각 유닛이 다른 장치에 장착되더라도 해당 유닛의 교체 시기 등을 정확하게 관리할 수 있다.
특히, 관공서, 대학, 기업체 등과 같이 규모가 큰 환경에서는 MPS(Managed Printing Services) 방식으로 수많은 화상형성장치를 용이하게 관리하고 있다. MPS를 이용한 통합 솔루션 서비스에는 그룹별 또는 개인별 소모품 사용 요금을 산출하고 그에 따라 과금을 하는 과금 기능이나, 소모품의 수명을 확인하여 수명이 종료되기 이전에 미리 자동 주문을 해주는 기능 등이 있다. 이러한 기능들은 정확한 소모품 사용 정보를 기반으로 하여 제공되는 기능들이다.
이러한 정보 관리를 위하여 화상형성장치의 본체에 구비된 메인 컨트롤러와 소모품 유닛에 구비된 메모리부는 서로 통신을 수행한다. 하지만, 통신 과정에서는 여러 변수가 있을 수 있다. 예를 들어, 악의적인 목적으로 메인 컨트롤러 또는 메모리부를 제어하려고 하는 해커의 공격이 있을 수 있다. 이 경우, 소모품 유닛이 적절한 교체 시기를 넘어서까지 무리하게 사용되거나, 저급한 소모품으로 리필되어 사용될 수 있다. 이에 따라, 원고의 인쇄 품질이 악화될 수도 있으며, 화상형성장치의 고장이나 파손까지도 불러올 수 있다는 문제점이 있다.
본 발명은 상술한 문제점을 해결하기 위한 것으로, 본 발명의 목적은 제3 자의 해킹이 있더라도 소모품 유닛을 효과적으로 인증할 수 있는 화상형성장치와 그에 따라 인증되는 소모품 유닛의 CRUM 칩, 및 그 인증 방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따르면, 화상형성장치는, CRUM칩이 탑재된 소모품 유닛, 상기 소모품 유닛이 장착되면, 상기 소모품 유닛에 대해 제1 인증 및 제2 인증 중 적어도 하나를 수행하는 본체를 포함하며, 상기 본체는, 상기 화상형성장치에 저장된 펌웨어에 따라 상기 제1 인증을 수행하기 위한 메인 컨트롤러 및 적어도 하나의 ASIC(Application Specific Integrated Circuit)을 이용하여 상기 소모품 유닛에 대한 제2 인증을 수행하기 위한 인증 제어부를 포함한다.
여기서, 상기 인증 제어부는, 상기 메인 컨트롤러에서 수행되는 상기 제1 인증과 별도로 상기 제2 인증을 수행하며, 상기 메인 컨트롤러는 상기 제1 인증 및 상기 제2 인증이 모두 성공하면, 상기 CRUM 칩과 통신을 수행할 수 있다.
그리고, 상기 메인 컨트롤러 및 상기 인증 제어부는, 인증을 수행하여야 하는 이벤트가 발생하면, 상기 제1 인증 및 상기 제2 인증을 각각 개별적으로 수행하며, 상기 이벤트는 파워 리셋 신호, 상기 소모품 유닛의 교체 신호, 화상형성잡 종료 신호 중 하나가 입력되는 이벤트가 될 수 있다.
한편, 화상형성장치는, 상기 제1 인증 및 상기 제2 인증 중 적어도 하나의 인증에 실패하면 상기 화상형성장치의 기능을 제한하는 시스템 기능 제어부를 더 포함할 수도 있다.
이 경우, 상기 인증 제어부는, 상기 CRUM 칩으로부터 제1 MAC을 포함하는 인증 정보를 수신하기 위한 인터페이스부, 상기 인증 정보를 이용하여 제2 MAC을 생성하고, 상기 제1 MAC과 상기 제2 MAC을 비교하여 상기 CRUM 칩을 검증하는 인증 처리부 및 상기 CRUM 칩의 인증이 실패하면 상기 시스템 기능 제어부로 기능 제한 요청을 전송하는 기능 제한 요청부를 포함할 수 있다.
여기서, 상기 인증 처리부는, 상기 인증 정보에 포함된 전자 서명을 검증하기 위한 전자 서명 검증부, 세션 키를 생성하기 위한 세션 키 생성부, 상기 세션 키를 이용하여 상기 제2 MAC을 생성하는 MAC 생성부, 생성된 상기 제2 MAC과 상기 제1 MAC을 비교하여, 비교 결과를 상기 기능 제한 요청부로 제공하는 MAC 검증부를 포함할 수 있다. 이 경우, 상기 전자 서명 검증부, 상기 세션 키 생성부, 상기 MAC 생성부, 상기 MAC 검증부 각각은 상기 ASIC으로 구현될 수 있다.
한편, 상기 CRUM 칩은, 상기 메인 컨트롤러와 연결되기 위한 인터페이스부, 상기 소모품 유닛에 대한 정보가 저장된 메모리부, 상기 인터페이스부를 통해 상기 메인 컨트롤러와 연결되어, 상기 메인 컨트롤러와의 사이에서 상기 제1 인증을 수행하는 CPU, 상기 인증 제어부와의 사이에서 상기 제2 인증을 수행하는 인증 ASIC을 포함할 수 있다. 여기서, 상기 CPU는 상기 제1 인증 및 상기 제2 인증이 모두 성공하면, 상기 메인 컨트롤러로부터 전송되는 신호에 따라 상기 메모리부에 저장된 상기 정보를 업데이트할 수 있다.
또는, 상기 CRUM칩은, 상기 메인 컨트롤러와 연결되기 위한 인터페이스부, 상기 화상형성장치의 본체 O/S와 별도로 자체 O/S가 저장된 메모리부, 상기 자체 O/S를 이용하여 상기 메인 컨트롤러와의 사이에서 상기 제1 인증을 수행하고, 상기 인증 제어부와의 사이에서 상기 제2 인증을 수행하는 CPU를 포함할 수 있다.
한편, 본 발명의 일 실시 예에 따르면, 화상형성장치의 소모품 유닛에 탑재 가능한 CRUM 칩은, 상기 화상형성장치와 연결되기 위한 인터페이스부, 상기 소모품 유닛에 대한 정보가 저장된 메모리부, 상기 인터페이스부를 통해 상기 화상형성장치에 탑재된 메인 컨트롤러와 연동하여 제1 인증을 수행하는 CPU, 제2 인증을 수행하기 위한 용도로 설계되어 상기 화상형성장치에 탑재된 적어도 하나의 ASIC(Application Specific Integrated Circuit)을 포함하는 인증 제어부와 연동하여 상기 제2 인증을 수행하는 인증 ASIC을 포함한다.
여기서, 상기 CPU는 상기 제1 인증 및 상기 제2 인증이 모두 성공하면, 상기 메인 컨트롤러로부터 전송되는 신호에 따라 상기 메모리부에 저장된 상기 정보를 업데이트할 수 있다.
본 발명의 또 다른 실시 예에 따르면, 화상형성장치의 소모품 유닛에 탑재 가능한 CRUM 칩은, 상기 화상형성장치와 연결되기 위한 인터페이스부, 상기 화상형성장치의 본체 O/S와 별도로 자체 O/S가 저장된 메모리부, 상기 인터페이스부를 통해 상기 화상형성장치와 연결되며, 상기 자체 O/S를 이용하여 상기 메인 컨트롤러와 연동하여 제1 인증을 수행하고, 상기 화상형성장치에 탑재된 인증 제어부와 연동하여 제2 인증을 수행하는 CPU를 포함한다. 여기서, 상기 메인 컨트롤러는, 상기 화상형성장치에 저장된 펌웨어에 따라 상기 제1 인증을 수행하고, 상기 인증 제어부는, 상기 제2 인증을 수행하기 위한 용도로 설계된 적어도 하나의 ASIC(Application Specific Integrated Circuit)을 이용하여 상기 제2 인증을 수행할 수 있다.
한편, 본 발명의 일 실시 예에 따르면, 화상형성장치의 소모품 유닛 인증 방법은, 상기 화상형성장치에 탑재된 소모품 유닛에 대해 인증을 수행하여야 할 이벤트가 발생하였는지 판단하는 단계, 상기 이벤트가 발생하면, 상기 화상형성장치에 탑재된 메인 컨트롤러가 상기 소모품 유닛에 대한 제1 인증을 수행하는 단계, 상기 화상형성장치에 탑재된 인증 제어부가 상기 메인 컨트롤러와 별도로 상기 소모품 유닛에 대한 제2 인증을 수행하는 단계, 및 상기 제1 인증 및 상기 제2 인증이 성공하면 상기 소모품 유닛에 대한 인증을 완료하고, 상기 제1 인증 및 상기 제2 인증 중 적어도 하나가 실패하면 상기 소모품 유닛에 대한 인증을 실패 처리하는 단계를 포함한다.
여기서, 상기 제1 인증은, 상기 화상형성장치에 저장된 소프트웨어에 따라 수행되고, 상기 제2 인증은 적어도 하나의 ASIC(Application Specific Integrated Circuit)에 의해 수행될 수 있다.
또한, 상기 이벤트는, 파워 리셋 신호, 상기 소모품 유닛의 교체 신호, 화상형성잡 종료 신호 중 하나가 입력되는 이벤트가 될 수 있다.
그리고, 상기 제2 인증을 수행하는 단계는, 상기 CRUM 칩으로부터 제1 MAC을 포함하는 인증 정보를 수신하는 단계, 상기 인증 정보를 이용하여 제2 MAC을 생성하고, 상기 제1 MAC과 상기 제2 MAC을 비교하여 상기 CRUM 칩을 인증하는 단계를 포함할 수 있다.
여기서, 상기 CRUM 칩을 인증하는 단계는, 전자 서명 검증 ASIC을 이용하여 상기 인증 정보에 포함된 전자 서명을 검증하는 단계, 상기 전자 서명이 검증되면, 세션 키 생성 ASIC을 이용하여 세션 키를 생성하는 단계, MAC 생성 ASIC에서 상기 세션 키를 이용하여 상기 제2 MAC을 생성하는 단계, MAC 검증 ASIC에서 상기 제2 MAC과 상기 제1 MAC을 비교하는 단계를 포함할 수 있다.
이상과 같은 본 발명의 다양한 실시 예들에 따르면, 화상형성장치의 본체가 해킹되어 정상적인 인증이 불가능한 경우에도, 소모품 유닛 또는 그 소모품 유닛에 탑재된 CRUM 칩을 효과적으로 인증할 수 있다. 이에 따라, 화상형성장치의 보안성 및 안정성이 크게 향상될 수 있다.
도 1은 본 발명의 일 실시 예에 따른 화상형성장치의 구성을 나타내는 블럭도,
도 2는 본 발명의 일 실시 예에 따른 화상형성장치의 소모품 유닛 인증 방법을 설명하기 위한 흐름도,
도 3은 본 발명의 일 실시 예에 따른 CRUM 칩의 구성을 나타내는 블럭도,
도 4는 CRUM 칩에 저장되는 정보의 일 예를 나타내는 도면,
도 5는 CRUM 칩의 세부 구성의 일 예를 나타내는 블럭도,
도 6은 본 발명의 다른 실시 예에 따른 CRUM 칩의 구성을 나타내는 블럭도,
도 7 및 도 8은 소모품 유닛을 화상형성장치에 장착하는 다양한 방법을 설명하기 위한 도면,
도 9는 화상형성장치의 세부 구성의 일 예를 나타내는 도면,
도 10은 인증 제어부의 구성의 일 예를 나타내는 도면,
도 11은 인증 제어부 및 CRUM 칩에 의해 수행되는 제2 인증을 설명하기 위한 타이밍도,
도 12는 인증 제어부의 또 다른 구성 예를 나타내는 도면,
도 13은 본 발명의 일 실시 예에 따른 소모품 유닛 인증 방법을 좀 더 구체적으로 설명하기 위한 타이밍도,
도 14는 본 발명의 일 실시 예에 따른 암호화 데이터 통신 방법을 설명하기 위한 타이밍도, 그리고,
도 15는 인증 실패 시의 처리의 일 예를 설명하기 위한 도면이다.
이하에서, 첨부된 도면을 이용하여 본 발명에 대하여 구체적으로 설명한다.
도 1은 본 발명의 일 실시 예에 따른 화상형성장치의 구성을 나타내는 블럭도이다. 도 1에 따르면, 화상형성장치(100)는 메인 컨트롤러(110), 인증 제어부(120)를 포함하는 본체와, 복수의 소모품 유닛(200-1 ~ 200-n)을 포함한다. 각 소모품 유닛(200-1 ~ 200-n)은 본체에 장착되어 사용되다가 교체 시점이 되면 본체로부터 분리되어 새로운 유닛으로 교체될 수 있다.
소모품 유닛(200-1 ~ 200-n)은 화상형성장치의 본체(100)에 탑재되어, 화상형성잡에 직접 또는 간접적으로 관여하는 다양한 종류의 유닛이 될 수 있다. 예를 들어, 레이저 화상형성장치의 경우 대전유닛, 노광 유닛, 현상 유닛, 전사유닛, 정착유닛, 각종 롤러, 벨트, OPC 드럼 등이 소모품 유닛이 될 수 있으며, 그 밖에 화상형성장치의 사용에 있어서 교체가 요구되는 다양한 유형의 유닛들이 소모품 유닛(200-1 ~ 200-n)으로 정의될 수 있다.
소모품 유닛(200-1 ~ 200-n)은 그 사용 용도나 사용 위치, 형상 등의 차이로 인해, 각각의 수명이 정해져 있다. 따라서, 소모품 유닛(200-1 ~ 200-n)에 대한 적절한 관리가 이루어질 수 있도록, 소모품 유닛(200-1 ~ 200-n)은 CRUM 칩(Customer Replaceable Unit Monitoring chip)(300-1 ~ 300-n)을 포함한다.
CRUM 칩(300-1 ~ 300-n)이란 각 소모품 유닛에 탑재되어, 각종 정보를 기록하는 구성이다. CRUM 칩(300-1 ~ 300-n)은 메모리를 포함한다. 따라서, CRUM 칩(300-1 ~ 300-n)은 메모리부, CRUM 메모리(Customer Replaceable Unit Monitoring memory), CRUM 유닛 등과 같이 다양한 명칭으로 지칭될 수 있지만, 설명의 편의를 위하여 본 명세서에서는 CRUM 칩(300-1 ~ 300-n)으로 설명한다.
각 CRUM 칩(300-1 ~ 300-n)에 마련된 메모리에는 그 CRUM 칩(300-1 ~ 300-n)이 탑재된 소모품 유닛(200-1 ~ 200-n)이나 그 CRUM 칩(300-1 ~ 300-n) 자체, 그 소모품 유닛(200-1 ~ 200-n)이 사용되는 화상형성장치(100) 등에 대한 다양한 특성 정보와, 화상 형성 잡의 수행과 관련된 사용 정보 또는 프로그램이 저장될 수 있다. CRUM 칩(300-1 ~ 300-n)에 대한 세부 구성 및 그 동작에 대해서는 후술하는 부분에서 다시 설명한다.
본체는 각종 구성요소들을 탑재하기 위한 하드웨어를 의미한다. 상술한 바와 같이, 본체에는 각 소모품 유닛(200-1 ~ 200-n)이 자유로이 장착 또는 탈착될 수 있다. 본체는 장착된 각 소모품 유닛(200-1 ~ 200-n)에 대해 제1 인증 및 제2 인증 중 적어도 하나를 수행한다. 제1 인증은 메인 컨트롤러(110)에 의해 수행되는 인증을 의미하고, 제2 인증은 제1 인증과 독립적으로 인증 제어부(120)에 의해 수행되는 인증을 의미한다. 실시 예에 따라서 제1 인증 및 제2 인증은 반드시 모두 수행되도록 구현될 수 있지만, 반드시 이에 한정되는 것은 아니다. 가령, 제2 인증만 수행될 수도 있다. 제1 인증 및 제2 인증은 소모품 유닛이 교체되는 경우, 화상형성장치가 리셋된 경우, 화상형성잡이 개시되거나 종료되는 경우, 기 설정된 시간 주기가 도래하는 경우 등과 같이 다양한 이벤트가 발생할 때, 수행될 수 있다.
메인 컨트롤러(110)는 소모품 유닛(200-1 ~ 200-n)에 대한 제1 인증을 수행한다. 반면, 인증 제어부(120)는 메인 컨트롤러(110)와 별도로 소모품 유닛(200-1 ~ 200-n)에 대한 제2 인증을 수행한다. 이러한 제1 인증 및 제2 인증은 소모품 유닛(200-1 ~ 200-n)이 정상적인 소모품 유닛인지를 확인하기 위한 과정을 의미한다. 이러한 인증은 소모품 유닛(200-1 ~ 200-n)에 탑재된 CRUM 칩(300-1 ~ 300-n)과의 사이에서 이루어지는 것이므로, CRUM 칩(300-1 ~ 300-n)에 대한 인증이라고 볼 수도 있으나, 이하에서는 소모품 유닛(200-1 ~ 200-n)에 대한 인증인 것으로 통칭하여 설명한다.
메인 컨트롤러(110)는 제1 인증 및 제2 인증이 모두 성공하면, 해당 소모품 유닛이 정상적인 소모품 유닛인 것으로 판단한다. 메인 컨트롤러(110)는 인증에 성공한 소모품 유닛(200-1 ~ 200-n)에 탑재된 CRUM 칩(300-1 ~ 300-n)과 통신을 수행하여, CRUM 칩(300-1 ~ 300-n)에 각종 정보를 제공할 수도 있고, 정보를 요청할 수도 있다. 가령, 메인 컨트롤러(110)는 화상 형성 잡이 완료되면, 화상형성잡에서 인쇄된 페이지 수, 도트 수, 인쇄 시간, 사용자 이름, 문서 명 등과 같은 정보들을 CRUM 칩(300-1 ~ 300-n)으로 전송하여, 내부의 메모리에 기록하도록 할 수 있다. 또는, 메인 컨트롤러(110)는 CRUM 칩(300-1 ~ 300-n)으로부터 화상형성잡과 관련된 각종 정보들을 요청하는 요청 신호가 수신되면, 그 요청 신호에 응답하는 메시지를 전송하여 줄 수도 있다. 이러한 통신 메시지는 암호화된 상태로 송수신될 수 있다. 이에 대해서는 후술하는 부분에서 구체적으로 설명한다.
한편, 상술한 제1 인증은 소프트웨어를 이용한 소프트웨어 인증이 될 수 있고, 제2 인증은 하드웨어를 이용하는 하드웨어 인증이 될 수 있다. 즉, 메인 컨트롤러(110)는 화상형성장치(100)에 저장된 펌웨어에 따라 제1 인증을 수행할 수 있다. 반면, 인증 제어부(120)는 제2 인증을 수행하기 위한 용도로 설계된 적어도 하나의 ASIC(Application Specific Integrated Circuit)을 포함하며, 이들 ASIC(Application Specific Integrated Circuit)을 이용하여 제2 인증을 수행할 수 있다.
만약 제3자가 메인 컨트롤러(110)가 사용하는 펌웨어나 O/S, 기타, 소프트웨어를 해킹하였다면, 소프트웨어에 의해 이루어지는 제1 인증은 생략 또는 우회하거나, 바로 인증 성공된 것으로 처리할 수 있다. 하지만, 제1 인증과 별개로 이루어지는 제2 인증은 하드웨어 인증이기 때문에, 펌웨어 해킹이 이루어지더라도 제2 인증을 회피할 수는 없다. 이에 따라, 정상적인 상황이 아닌 경우, 인증 제어부(120)에서 수행되는 제2 인증은 실패로 처리된다.
메인 컨트롤러(110)는 제1 인증 및 제2 인증 중에서 어느 하나라도 실패로 처리되면, 해당 소모품 유닛의 기능을 제한한다. 기능 제한은 다양한 형태로 이루어질 수 있다. 가령, 소모품 유닛을 이용한 출력 속도 저하, 출력 불가, 백지 또는 흑지 출력, 토너 농도 저하, 정착 온도 변경, 경고 메시지 출력 등과 같은 다양한 조치가 취해질 수 있다. 이러한 조치들 중에서 둘 이상의 조치들이 함께 이루어질 수도 있다. 가령, 메인 컨트롤러(110)는 인증 실패한 소모품 유닛에 대한 사용을 제한하는 한편, 사용 제한된 소모품 유닛에 대한 알림 메시지를 화상형성장치(100)의 본체 또는 화상형성장치(100)에 연결된 호스트 장치에서 제공하여 줄 수 있다.
도 2는 본 발명의 일 실시 예에 따른 화상형성장치의 소모품 유닛 인증 방법을 설명하기 위한 흐름도이다. 도 2에 따르면, 화상형성장치(100)는 인증을 수행하여야 하는 이벤트가 발생하면(S210), 제1 인증 및 제2 인증을 개별적으로 수행할 수 있다(S220, S230). 도 2에서는 제1 인증 및 제2 인증이 병렬적으로 이루어지는 것으로 도시하였으나, 제1 인증 및 제2 인증은 순차적으로 이루어질 수도 있다. 가령, 제2 인증이 먼저 수행되고, 제2 인증이 성공하면, 그 다음에 제1 인증을 수행할 수 있다. 또는 그 반대의 순서로 수행될 수도 있다.
제1 인증을 수행하는 메인 컨트롤러(110)는 제1 인증에 성공하면(S240), 소모품 유닛이 정상 상태인 것으로 판단하고 정상 동작을 수행한다(S260). 반면, 제1 인증에 실패하면(S240), 해당 소모품 유닛의 기능을 제한한다(S270). 기능 제한 방법에 대해서는 상술한 부분에서 구체적으로 설명한 바 있으므로, 중복 설명은 생략한다.
한편, 제2 인증을 수행하는 인증 제어부(120)는 제2 인증에 성공하면(S250), 소모품 유닛이 정상 상태인 것으로 판단하고 정상 동작을 수행한다(S260). 반면, 제2 인증에 실패하면(S250), 해당 소모품 유닛의 기능을 제한한다(S270).
메인 컨트롤러(110) 및 인증 제어부(120) 중 어느 하나라도 소모품 유닛의 기능을 제한할 수 있다. 소모품 유닛을 이용한 출력 자체를 제한하는 경우에는, 인쇄할 데이터가 존재하더라도, 인쇄 작업이 진행되지 않고, 사용자에게는 에러 메시지가 출력될 수 있다.
도 3은 본 발명의 일 실시 예에 따른 CRUM 칩의 구성을 나타내는 블럭도이다. 도 3에 따르면, CRUM 칩(300)은 인터페이스부(310), 메모리부(320) 및 CPU(330)를 포함한다.
인터페이스부(310)는 화상형성장치(100) 본체에 탑재된 메인 컨트롤러와의 통신 연결을 수행하는 구성요소이다. 인터페이스부(310)는 블루투스, 와이파이, 지그비, NFC(Near Field Communication) 등과 같은 무선 통신 규격에 따라 메인 컨트롤러와 연결될 수도 있고, I2C(Inter Integrated Circuit) 인터페이스와 같은 시리얼 인터페이스로 연결될 수도 있다.
메모리부(320)에는 소모품 유닛과 관련된 각종 정보가 저장될 수 있다. 구체적으로는, 메모리부(320)에는 특성 정보, 사용 정보 등과 같은 다양한 정보들이 기록될 수 있다. 특성 정보는 소모품 유닛 또는 CRUM 칩의 특성을 나타내는 정보를 의미한다. 구체적으로는 특성 정보에는, 소모품 유닛(200) 제조사에 대한 정보, 화상형성장치의 제조사에 대한 정보, 장착 가능한 화상형성장치의 장치 명, 제조일시에 대한 정보, 일련 번호, 모델 명, 전자 서명 정보, 암호화 키, 암호화 키 인덱스 등이 포함될 수 있다. 특성 정보는 다르게는 고유 정보나 식별 정보로 명명할 수도 있다.사용 정보는 소모품 유닛의 사용 상태와 관련된 정보를 의미한다. 구체적으로는, 사용 정보에는 소모품 유닛을 이용하여 현재까지 몇 매 인쇄하였는지, 인쇄 가능한 잔여 매수가 얼마인지, 토너 잔량이 얼마인지 등에 대한 정보가 포함될 수 있다.
도 4는 메모리부(320)에 저장되는 정보를 정리한 데이터베이스의 일 예를 나타낸다. 도 4에 도시된 바와 같이, CRUM칩(300)의 메모리부(320)에는 소모품 유닛(200)의 버전, 시리얼 넘버, 세트 모델 명, 서비스 개시 일자 등과 같은 일반적인 정보뿐만 아니라, RAM 사이즈나 EEPROM 사이즈 등과 같은 각종 옵션 정보, 소모품의 수명과 관련된 정보, 소모품 특성 정보, 소모품 특성, 컬러 메뉴, 셋업 메뉴 등과 같은 다양한 정보들이 CRUM 칩(300)에서 관리될 수 있다.
또한, 메모리부(320)에는 CPU(330)에 의해 실행 가능한 각종 프로그램도 저장될 수 있다. 구체적으로는, 메모리부(320)에 저장되는 프로그램에는, 일반적인 어플리케이션 뿐만 아니라 O/S(Operating System) 프로그램, 초기화 프로그램, 암호화 프로그램 등도 포함될 수 있다. 이러한 O/S 프로그램이나 초기화 프로그램, 암호화 프로그램은 화상형성장치(100)의 본체에서 사용하는 O/S 프로그램이나 초기화 프로그램, 암호화 프로그램과 별도로 마련되어 메모리부(320)에 저장될 수도 있다.
CRUM 칩(300)이 자체적으로 O/S를 가지도록 구현된 실시 예의 경우, CPU(330)는 화상형성장치(100)의 본체와의 사이에서, O/S를 이용하여 제1 인증 및 제2 인증을 수행할 수 있다.
구체적으로는, CPU(330)는 인터페이스부(310)를 통해 메인 컨트롤러(110)와 연결된 상태에서, 인증 이벤트가 발생하면 메인 컨트롤러(110)와의 사이에서 제1 인증을 수행한다. 또한, 인증 제어부(120)와의 사이에서 제2 인증을 수행한다. 여기서, 인증 이벤트란 소모품 유닛(200)을 인증하여야 하는 조건이 충족된 상태를 의미한다. 구체적으로는, 화상형성장치가 턴 오프 후 턴 온되는 경우, 화상 형성 잡이 종료되는 경우, 소모품 유닛이 교체된 경우 등이 될 수 있다. 또는, 기 설정된 시간 주기가 도래하는 경우도 인증 이벤트에 포함될 수 있다.
메인 컨트롤러(110) 및 인증 제어부(120)는 이러한 상황이 발생하면, 각각 제1 인증 및 제2 인증을 수행한다.
제1 인증 및 제2 인증은 다양한 실시 예에 따라 처리될 수 있다. 일 예로, 제1 인증의 경우, 메인 컨트롤러(110)는 인증을 위한 신호를 암호화하여 CRUM 칩(210)으로 전송한다. 전송되는 신호에는 임의의 값 R1이 포함될 수 있다. 여기서, R1은 매 인증시마다 랜덤하게 생성되는 변경되는 랜덤 값일 수도 있고, 임의로 설정된 고정 값일 수도 있다.
신호를 수신한 CRUM 칩(300)의 인터페이스부(310)는 수신된 신호를 CPU(330)로 전달한다.
CPU(330)는 임의의 값 R2와 수신된 R1을 이용하여 세션 키를 생성한다. 여기서, 세션 키란 하나의 통신 세션 동안에만 사용하는 암호화 키를 의미한다. CPU(330)는 세션 키 및 암호화 알고리즘을 이용하여 임의의 데이터를 암호화하여 MAC(Message Authentication Code)을 생성한다. 여기서, 암호화되는 데이터에는 소모품 유닛(200)이나 CRUM 유닛(300)에 대한 다양한 정보들이 포함될 수 있다. 가령, 전자 서명 정보나, 고유 시리얼 넘버 등이 포함될 수 있다. 설명의 편의상 제일 먼저 생성되는 MAC을 제1 MAC이라 한다.
CPU(330)는 R2를 포함하는 데이터에 제1 MAC을 결합한 신호를 메인 컨트롤러(110)로 전송한다. 여기서 R2 역시 CPU(330)가 랜덤하게 생성하는 값일 수도 있고, 임의로 고정된 값일 수도 있다. 메인 컨트롤러(110)는 수신된 R2와 R1을 이용하여 세션키를 생성하고, 생성된 세션키를 이용하여 제2 MAC을 생성한다. 그리고, 생성된 제2 MAC과 수신된 신호에 포함된 제1 MAC을 비교하여 CRUM 칩(330)을 인증한다. 이와 같이, CPU(330)는 OS를 이용하여 R2 생성 동작, 세션 키 생성 동작, 제1 MAC 생성 동작, 전송 동작 등을 순차적으로 수행하여, 제1 인증을 완료할 수 있다. 한편, 다양한 실시 예에 따르면, 이러한 인증 과정에서 전자 서명 정보나 키 정보 등이 송 수신되어 인증에 사용될 수도 있다.
제2 인증 역시 제1 인증과 동일한 과정으로 구현될 수 있다. 이 경우, 상술한 메인 컨트롤러(110)에 대응되는 동작은 인증 제어부(120) 내의 다양한 ASIC이나 로직 회로에서 수행할 수 있다. 일부 동작은 DSP(Digital Signal Processor)에서 수행될 수도 있다.
한편, 또 다른 실시 예에 따르면, 제2 인증과 제1 인증은 서로 다른 과정으로 구현될 수도 있다. 가령, 제2 인증은 제1 인증에 비해 다소 간단한 과정으로 이루어질 수도 있다.
또한, 제1 인증 및 제2 인증에서 사용되는 암호화 알고리즘 역시 동일하게 구현될 수도 있고, 서로 다르게 구현될 수도 있다. 구체적으로는, 제1 인증 및 제2 인증에서는 RSA, ECC 비대칭키 알고리즘, ARIA, TDES, SEED, AES 대칭키 알고리즘 등과 같은 다양한 암호화 알고리즘이 사용될 수 있다. 이러한 암호화 알고리즘은 암호 키가 공개되었거나, 보안을 강화할 필요가 있는 경우에 변경 가능하다. 메인 컨트롤러(110) 및 인증 제어부(120)에서의 구체적인 인증 절차에 대해서는 후술하는 부분에서 구체적으로 설명한다.
CRUM 칩(300)의 CPU(330)는 제1 인증 및 제2 인증이 모두 완료되면, 메인 컨트롤러(110)와의 사이에서 데이터 통신을 수행한다.
그 밖에, CPU(330)는 CRUM 칩(300)의 메모리에 저장된 O/S 또는 초기화 프로그램을 실행시켜, 화상형성장치의 초기화와 별도로, CRUM 칩(300) 또는 소모품 유닛(200) 자체의 초기화를 수행할 수 있다. 상술한 제1 인증 및 제2 인증은 초기화가 이루어지는 동안, 또는, 초기화가 완료된 이후에 이루어질 수 있다.
인증이 완료되고 나면, CPU(330)는 화상형성장치의 본체와의 사이에서 암호화 데이터 통신을 수행할 수도 있다. 이 경우, 화상형성장치 본체로부터 전송되는 각종 코맨드 및 데이터는 임의의 암호화 알고리즘에 따라 암호화되어 전송될 수 있다.
도 3에서 설명하는 실시 예에서와 같이 CPU(330)가 자체 O/S를 이용하는 경우, CPU(330)는 메모리부(320)에 저장된 암호화 알고리즘을 이용하여, 메인 컨트롤러(110)와 연동하여 암호화 데이터 통신을 수행할 수 있다. 메인 컨트롤러(110)는 사용자 명령이 입력되거나, 화상형성잡이 개시 또는 완료되는 경우에, 데이터 읽기(reading), 쓰기(writing), 또는 추가 기능 등의 작업을 수행하기 위한 코맨드나 데이터 등을 암호화 알고리즘을 이용하여 암호화한 후, CRUM 칩(300)으로 전송한다.
CRUM 칩(300)의 인터페이스부(310)는 수신된 코맨드 또는 데이터를 CPU(330)로 전달한다. CPU(330)는 수신된 코맨드 또는 데이터를 디코딩하여 그 코맨드에 대응되는 데이터 읽기(reading), 쓰기(writing) 등의 작업을 수행할 수 있다.
도 5는 도 3의 실시 예에 따른 CRUM 칩(300)의 세부 구성의 일 예를 나타낸다. 도 5에 따르면, CRUM 칩(300)은 인터페이스부(310), 메모리부(320) 및 CPU(330) 이외에, 크립토 유닛(Crypto unit)(340), 템퍼 검출기(temper detector)(350)를 포함할 수 있다.
또한, 도 5에 도시되지는 않았으나, CRUM 칩(300) 내에는 클럭신호를 출력하는 클럭부(미도시)나, 인증을 위한 랜덤값을 생성하는 랜덤값 생성부(미도시) 등이 더 포함될 수도 있다. 그 밖에도, 도 5에서 일부 구성요소는 삭제 또는 변형될 수도 있고, 추가될 수도 있다.
크립토 유닛(340)은 암호화 알고리즘을 지원하여, CPU(330)가 메인 컨트롤러(110)와의 사이에서 인증이나, 암호화된 통신을 수행할 수 있도록 한다. 구체적으로는, 크립토 유닛(230)은 CPU(330)의 제어에 따라 다양한 암호화 알고리즘을 이용하여 암호화 및 복호화를 수행하여, 그 수행 결과를 CPU(330)로 제공하여 줄 수 있다. 구체적으로는 RSA, ECC 비대칭키 알고리즘, ARIA, TDES, SEED, AES 대칭키 알고리즘 등과 같은 다양한 암호화 알고리즘 중 하나가 사용될 수 있다.
템퍼 검출기(350)는 다양한 물리적인 해킹 시도, 즉, 템퍼링을 방어하기 위한 유닛이다. 구체적으로는, 전압, 온도, 압력, 빛, 주파수 등의 동작 환경에 대하여 모니터링을 하여, Decap과 같은 시도가 있을 경우, 템퍼 검출기(350)는 메모리부(320)에 저장된 데이터를 지워버리거나 물리적으로 파손시킬 수 있다. 이 경우, 템퍼 검출기(240)는 별도의 전원을 구비할 수도 있다.
이와 같이, 크립토 유닛(340) 및 템퍼 검출기(350)를 구비함으로써, CRUM 칩(300) 자체에 대한 보안성도 강화할 수 있다.
한편, 도 5에 따르면, 메모리부(320)는 O/S 메모리(321), 비휘발성 메모리(322), 휘발성 메모리(323) 중 적어도 하나를 포함할 수 있다.
O/S 메모리(321)는 소모품 유닛(200)의 CRUM 칩(300)을 오퍼레이팅하는 O/S가 저장된다. 비휘발성 메모리(322)에는 각종 데이터들이 비휘발적으로 저장된다. 비휘발성 메모리(212)에는 상술한 도 4에서 설명한 바와 같은 각종 정보들 뿐만 아니라, 전자 서명 정보나, 각종 암호화 알고리즘 정보, 암호화 키 값 등이 저장될 수도 있다. 휘발성 메모리(323)는 동작에 필요한 임시 저장 공간으로 사용될 수 있다. CPU(330)는 휘발성 메모리(323)에 각종 프로그램을 복사해두고, 그 복사된 프로그램을 실행시켜 다양한 동작을 수행할 수 있다. 가령, 제1 인증 및 제2 인증을 수행하는 과정에서 생성되는 세션 키나 MAC과 같은 데이터도 휘발성 메모리(323)에 임시로 저장해 둘 수 있다.
도 5에서는 O/S 메모리(321), 비휘발성 메모리(322), 휘발성 메모리(323)들이 메모리부(320)에 포함되는 것으로 기재되어 있으나, 이 중 일부는 CRUM 칩(300)의 외부에 배치될 수도 있다.
도 5에서는 각 구성요소들은 버스(bus)를 통해 서로 연결되고 있다. 하지만, 이는 일 실시 예에 불과하므로, 버스 없이 각 구성요소들 간의 직접적인 연결로 구현될 수도 있다.
한편, 도 6은 본 발명의 또 다른 실시 예에 따른 CRUM 칩(300)의 구성을 나타내는 블럭도이다. 도 6에 따르면, CRUM 칩(300)은 인터페이스부(310), 메모리부(320), CPU(330), 인증 ASIC(360)를 포함한다.
인터페이스부(310)는 메인 컨트롤러(110)와의 사이에서 통신을 연결하기 위한 구성요소이다.
메모리부(320)는 상술한 바와 같은 다양한 정보 및 프로그램이 저장되는 구성요소이다. 도 3의 실시 예에서와 달리, 메모리부(320)에는 O/S가 저장되지 않을 수 있다. 즉, CPU(330)는 O/S없이 메모리부(320)에 저장된 프로그램을 실행시켜, 메인 컨트롤러(110)와 제1 인증을 수행할 수 있다.
인증 ASIC(360)은 화상형성장치(100)의 본체에 생성된 인증 제어부(120)와의 사이에서 제2 인증을 수행하기 위한 구성요소이다. 인증 ASIC(360)은 제2 인증의 구체적인 과정을 실현하기 위한 적어도 하나의 ASIC으로 이루어질 수 있다.
구체적으로는, 제2 인증이 상술한 방식과 같이 이루어지는 경우를 가정하면, 인증 ASIC(360)은 메인 컨트롤러(110)로부터 인증 요청이 수신되면 R2를 생성하는 제1 ASIC, 메인 컨트롤러(110)로부터 전송된 R1과 R2를 이용하여 세션 키를 생성하는 제2 ASIC, 생성된 세션 키 및 암호화 알고리즘을 이용하여 제1 MAC을 생성하는 제3 ASIC, 생성된 제2 MAC과 R2를 인터페이스부(310)를 통해 메인 컨트롤러(110)로 전송하는 제4 ASIC 등을 포함할 수 있다. 이에 따라, 고가의 CPU(330)나 OS를 구비하지 않더라도, 메인 컨트롤러(110)와의 사이에서 제1 및 제2 인증을 개별적으로 수행할 수 있다.
본 실시 예에서도 CPU(330)는 제1 인증 및 제2 인증이 완료되면 메인 컨트롤러(110)와의 암호화 데이터 통신을 수행하여, 수신되는 신호를 메모리부(320)에 기록하고, 메인 컨트롤러(110)로부터 요청되는 데이터는 메모리부(320)로부터 독출하여 메인 컨트롤러(110)로 전송하여 줄 수 있다.
한편, 소모품 유닛(200)은 화상형성장치(100)의 본체로부터 탈부착될 수 있다. 소모품 유닛(200)이 장착될 때는 본체와 전기적으로 연결되어야 한다. 이러한 연결은 접촉식 또는 커넥터식으로 구현될 수 있다.
도 7은 접촉식으로 구현된 소모품 유닛(200)의 외관 구성 예를 나타낸다. 도 7에 따르면, 소모품 유닛(200)은 통신을 위한 접점부(710)를 포함한다. 도 7에서는 4개의 접촉 단자를 이용하는 I2C 인터페이스를 사용한 경우를 나타낸다. 화상형성장치의 본체(100)에도 접점부(710)와 동일한 형상의 접점부가 마련된다. 소모품 유닛(200)이 본체(100)에 장착되면, 접점부(710)는 화상형성장치의 본체(100)에 마련된 접점부와 접촉할 수 있다. 화상형성장치(100)의 메인 컨트롤러(110) 및 인증 제어부(120)는 접점부로부터 접촉 신호가 수신되면, 제1 인증 및 제2 인증을 수행하여야 하는 인증 이벤트가 발생한 것으로 판단할 수 있다.
도 8은 커넥터 식으로 이루어진 인터페이스부(310)의 외관 구성 예를 나타내는 도면이다. 도 8에 따르면, 소모품 유닛(200)은 커넥터(820)가 연결될 수 있는 인터페이스부(310)를 포함한다. 커넥터(820)는 화상형성장치의 본체(100)에 마련된 포트(미도시)에 연결된다. 화상형성장치(100)의 메인 컨트롤러(110) 및 인증 제어부(120)는 포트를 통해 커넥터(820)의 연결 신호가 수신되면, 제1 인증 및 제2 인증을 수행하여야 하는 인증 이벤트가 발생한 것으로 판단할 수 있다.
이상과 같이 소모품 유닛(200) 및 CRUM 칩(300)은 다양한 형태로 구성될 수 있으며, 메인 컨트롤러(110) 및 인증 제어부(120)와 연동하여 상술한 바와 같이 제1 인증 및 제2 인증을 수행할 수 있다.
도 9는 본 발명의 일 실시 예에 따른 화상형성장치의 세부 구성의 일 예를 나타내는 블럭도이다.
화상형성장치(100)는 SoC(System on Chip)(900), 본체 저장부(910), 메모리(920)를 포함한다. SoC(900)는 메인 컨트롤러(110), 인증 제어부(120), 시스템 기능 제어부(130), 통신 제어부(140), 메모리 컨트롤러(150), 인터럽트 컨트롤러(160), 잡 레지스터(170), 버스(180)를 포함한다.
메모리(920)는 RAM이나 ROM, EFUSE 메모리, 플래시 메모리 등을 포함할 수 있다. 메모리(920)에는 시스템 부팅을 위한 명령어 세트나, 암호화 알고리즘, 암호화 키 등과 같은 다양한 데이터들이 저장될 수 있다.
메모리 컨트롤러(150)는 화상형성장치(100) 내의 RAM이나 ROM과 같은 메모리(920)에 대한 읽기 및 쓰기 동작을 제어하기 위한 구성요소이다. 메모리 컨트롤러(150)는 메모리(920)로부터 리딩된 데이터를 SoC(900) 내의 각 구성요소들로 버스(180)를 통해 제공하여 줄 수 있다.
통신 제어부(140)는 소모품 유닛(200)을 비롯한 화상형성장치(100) 내의 각종 구성요소들과 통신을 수행하기 위한 구성요소이다. 통신 제어부(140)는 상술한 바와 같은 다양한 통신 방식에 따라 통신을 수행할 수 있다. 통신 제어부(140)는 메인 컨트롤러(110) 또는 인증 제어부(120)로부터 출력되는 데이터를 CRUM 칩(300)으로 전송하고, CRUM 칩(300)으로부터 입력되는 데이터는 메인 컨트롤러(110) 또는 인증 제어부(120)로 제공할 수 있다.
시스템 기능 제어부(130)는 소모품 유닛(200)을 비롯한 화상형성장치(100) 내의 각종 구성요소들의 기능을 제한하기 위한 구성요소이다. 가령, 소모품 유닛(200)의 제1 인증 및 제2 인증 중에서 어느 하나의 인증이라도 실패하면 시스템 기능 제어부(130)는 해당 소모품 유닛(200)의 CRUM 칩(300)에 대해 비활성화 신호를 전송하여 소모품 유닛(200)에 대한 액세스를 차단하거나, 아예 소모품 유닛(200)으로 공급되는 전원을 차단할 수도 있다.
본체 저장부(910)에는 화상 형성 잡에 사용된 문서 데이터나, 잡 히스토리, 소모품 유닛에 대한 버전 정보 등과 같은 다양한 데이터 및 다양한 프로그램이 저장될 수 있다.
메인 컨트롤러(110) 및 인증 제어부(120)는 상술한 바와 같이 인증 이벤트가 발생하면 제1 인증 및 제2 인증을 각각 수행할 수 있다. 상술한 바와 같이, 인증 이벤트는 화상형성장치가 턴-온 또는 리셋 되는 경우나, 소모품 유닛(200)이 교체되는 경우, 화상형성잡이 종료되는 경우, 기 설정된 시간 주기가 도래하는 경우 등이 될 수 있다. 즉, 이벤트는, 파워 리셋 신호, 상기 소모품 유닛의 교체 신호, 화상형성잡 종료 신호 중 하나가 입력되는 이벤트가 될 수 있다.
메인 컨트롤러(110) 및 인증 제어부(120)는 SoC(900)에 입력되는 파워 리셋 신호 또는 CRUM 교체 신호 등에 따라 인증 이벤트 발생 여부를 판단할 수 있다. 가령, SoC(900)에는 파워 버튼을 통해 입력되는 파워 리셋 신호나, CRUM 유닛과의 연결부에 의해 감지되어 입력되는 CRUM 교체 신호 등이 입력될 수 있다. 또한, 잡 레지스터(170)에는 프린팅, 스캐닝, 복사, 팩스 출력 등과 같은 화상 형성 잡이 완료되면 그 완료 사실이 기록될 수 있다. 인증 제어부(120)는 파워 리셋 신호, CRUM 교체 신호 등이 입력되거나, 잡 레지스터(170)에 잡 완료 사실이 기록되면, 제2 인증을 수행한다.
한편, 인터럽트 컨트롤러(160)는 파워 리셋 신호, CRUM 교체 신호 등이 입력되거나, 잡 레지스터(170)에 잡 완료 사실이 기록되면, 인터럽트 신호를 메인 컨트롤러(110)로 전송한다. 메인 컨트롤러(110)는 인터럽트 신호가 수신되면, 소모품 유닛에 대한 제1 인증을 수행한다.
도 10은 인증 제어부(120) 구성의 일 예를 나타내는 블럭도이다. 도 10에 따르면, 인증 제어부(120)는 인터페이스부(121), 인증 처리부(122), 기능 제한 요청부(123)를 포함한다.
인터페이스부(121)는 CRUM 칩(300)으로부터 인증 정보를 수신하기 위한 구성요소이다. 인증 정보에는 소모품 유닛(200)이나 CRUM 칩(300)에 대해 고유하게 할당된 고유 정보나, MAC(Message Authentication Code) 등과 같은 다양한 정보가 포함될 수 있다. 즉, 인증 이벤트가 발생하면 메인 컨트롤러(110) 또는 인증 제어부(120)는 인증 요청을 생성하여 CRUM 칩(300)으로 전송하여 줄 수 있다. CRUM 칩(300)은 인증 요청이 수신되면, MAC을 생성하여 생성된 MAC을 포함하는 인증 정보를 화상형성장치(100)의 본체로 전송하여 줄 수 있다. MAC 생성 시에는 메인 컨트롤러(110) 또는 인증 제어부(120)가 제공하는 R1 값과, CRUM 칩(300)에서 자체적으로 생성한 R2 값이 사용될 수 있다. CRUM 칩(300)은 R2 값도 인증 정보에 포함시켜 함께 전송하여 줄 수 있다. 전송된 인증 정보는 메인 컨트롤러(110) 뿐만 아니라, 인증 제어부(120)에도 함께 제공될 수 있다. 설명의 편의상, CRUM 칩(300)에서 전송되는 MAC은 제1 MAC이라고 할 수 있다.
인증 제어부(120)의 인터페이스부(121)에서 제1 MAC을 포함하는 인증 정보를 수신하면, 인증 처리부(122)는 자체적으로 제2 MAC을 생성한다. 제2 MAC을 생성하기 위해서, R1 값과 R2 값이 이용될 수 있다.
인증 처리부(122)는 제2 MAC이 생성되면, 제1 MAC과 제2 MAC을 비교하여 소모품 유닛을 검증할 수 있다. 즉, 두 MAC이 일치하면 소모품 유닛(300)이 정품이라고 판단하고, 불일치하면 소모품 유닛(300)이 비정품이라고 판단할 수 있다. 인증 처리부(122)는 검증 결과를 기능 제한 요청부(123)로 제공한다.
기능 제한 요청부(123)는 소모품 유닛(300)의 인증이 실패하면 시스템 기능 제어부(130)로 기능 제한 요청을 전송할 수 있다. 이에 따라, 소모품 유닛(300)의 사용을 방지 또는 억제할 수 있다.
도 11은 인증 제어부(120) 및 CRUM 칩(300) 사이의 인증 과정을 구체적으로 설명하기 위한 흐름도이다.
도 11에 따르면, CRUM 칩(300)은 각종 인증 정보를 전송할 수 있다(S1110).
도 11에서는 CRUM 칩(300)이 인증 정보를 전송하는 단계부터 도시하였으나, 제2 인증은 인증 제어부(120)에 의해 개시될 수 있다. 즉, 인증 제어부(120)는 인증에 필요한 각종 정보를 CRUM 칩(300)으로 전송할 수 있다. 이 경우, CRUM 칩(300)은 전송된 정보에 기초하여 제1 MAC을 생성하고, MAC 생성에 필요한 각종 정보 및 제1 MAC을 포함하는 인증 정보를 인증 제어부(120)로 전송하여 줄 수 있다.
인증 제어부(120)에서는 전송된 인증 정보를 이용하여 MAC을 생성한 후(S1120), 수신된 MAC, 즉, 제1 MAC과, 생성된 MAC, 즉, 제2 MAC을 서로 비교한다(S1130).
인증 제어부(120)는 비교 결과 일치하면 인증에 성공한 것으로 판단한다(S1140). 인증 성공이 이루어지면, 인증 제어부(120)는 인증 성공 사실을 메인 컨트롤러(110)로 통지할 수 있다(S1150). 반면, 인증이 실패하면, 시스템 기능 제어부(130)로 기능 제한을 요청하여, 소모품 유닛(300)의 기능을 제한할 수 있다(S1160).
도 12는 인증 제어부(120)의 세부 구성의 일 예를 나타내는 블럭도이다. 도 12에 따르면, 인증 제어부(120)는 제어 ASIC(1210), 인증 요청부(1220), 소모품 통신부(1230), 인터페이스부(1240), 인증 처리부(1250), 기능 제한 요청부(1260)를 포함한다.
제어 ASIC(1210)은 리셋 신호나, CRUM 교체 신호, 잡 종료 신호 등과 같은 각종 신호(req #1 ~ req #m)가 입력 사실을 인식하여 제2 인증을 개시하는 구성요소이다. 제어 ASIC(1210)은 이러한 신호가 입력되면, 인증 요청부(1250)로 제어 신호를 출력한다. 인증 요청부(1250)는 제어 신호가 입력되면, 인증 요청 신호를 생성하여, 소모품 통신부(1260)로 출력한다. 인증 요청 신호에는 다양한 정보들이 포함될 수 있다. 가령, 제어 ASIC(1210)에서 생성한 R1 값과, 소모품 유닛(200)에 대해 발급한 인증서, 키 인덱스 등이 포함될 수 있다.
소모품 통신부(1260)는 인증 요청 신호가 입력되면, 인터페이스부(1210) 및 그 인터페이스부(1210)가 연결된 버스(180)를 통해서, CRUM 칩(300)으로 전송한다. 또한, 소모품 통신부(1260)는 인터페이스부(1210)를 통해 CRUM 칩(300)으로부터 전송되는 각종 정보를 수신할 수도 있다. 수신된 정보는 인증 처리부(1220)로 제공될 수 있다.
인증 처리부(1220)는 전자 서명 검증부(1221), 세션키 생성부(1222), MAC 생성부(1223), MAC 검증부(1224)를 포함한다.
전자 서명 검증부(1221)는 인증 정보에 포함된 전자 서명을 검증하기 위한 구성요소이다. 즉, 본 실시 예에 따르면, CRUM 칩(300)은 고유하게 저장된 전자 서명 정보를 세션 키를 이용하여 암호화하여, 제1 MAC을 생성하고, 그 제1 MAC을 포함하는 인증 정보를 전송할 수 있다.
전자 서명 검증부(1221)는 인증 정보에 포함된 전자 서명을 검출하여, 기 저장된 전자 서명과 비교한다. 비교하여 일치하면, 전자 서명 검증이 완료된다. 반면, 불일치하면 제2 인증에 실패한 것으로 처리된다. 전자 서명 검증부(1221)는 불일치하면 기능 제한 요청부(1230)로 인증 실패 사실을 통지하여, 소모품 유닛(200)의 기능을 제한한다.
세션 키 생성부(1222)는 전자 서명 검증이 완료된 이후에, 세션 키를 생성하기 위한 구성요소이다. 상술한 바와 같이 세션 키는 한 번의 통신 세션 동안에만 임시적으로 사용하는 암호화 키를 의미한다. 세션 키 생성부(1222)는 대칭키 암호화 알고리즘을 이용하여 대칭 키로 R1 값 및 R2 값을 암호화하여, 세션 키를 생성할 수 있다. 상술한 바와 같이 R1은 CRUM 칩(300)으로 전송한 값이고, R2는 CRUM 칩(300)으로부터 수신된 값이다.
MAC 생성부(1223)는 생성된 세션 키를 이용하여 MAC을 생성한다. 설명의 편의를 위해서 생성된 MAC을 제2 MAC이라 한다.
MAC 검증부(1224)는 MAC 생성부(1223)에서 생성한 제2 MAC과, CRUM 칩(300)로부터 전송된 제1 MAC을 비교하여, 일치 여부를 확인한다. 비교 결과는 기능 제한 요청부(1230)로 제공된다. 이에 따라, 제2 인증에서 MAC 검증이 실패하게 되면, 소모품 유닛(200)의 기능이 제한된다.
도 12에서는 제어 ASIC(1240)만을 ASIC으로 도시하였으나, 인증 요청부(1220), 소모품 통신부(1230), 인터페이스부(1240), 인증 처리부(1250), 기능 제한 요청부(1260) 등도 전부 ASIC으로 구현될 수 있음은 물론이다. 가령, 인증 처리부는, 전자 서명 검증 ASIC, 세션 키 생성 ASIC, MAC 생성 ASIC, MAC 검증 ASIC 등으로 구현될 수 있다. 또한, 이들 구성요소 중 일부는 DSP나 일반 로직 회로로 구현될 수도 있다.
도 13은 또 다른 실시 예에 따른 인증 제어부(120) 및 CRUM 칩(300) 사이의 인증 과정을 설명하기 위한 타이밍도이다. 도 13에 따르면, 인증 제어부(120)에서는 인증 이벤트가 발생하면, 인증 요청 신호를 전송하여 줄 수 있다(S1310).
CRUM 칩(300)은 인증 요청 신호가 수신되면, 세션 키를 생성할 수 있다(S1320). 구체적으로는, CRUM 칩(300)은 인증 요청 신호가 수신되면, R2 값을 생성한다. 그리고, CRUM 칩(300)은 인증 요청 신호에 포함된 키 인덱스를 검출하여, 저장되어 있는 키 매트릭스로부터 키 인덱스에 대응되는 키를 검출할 수 있다. CRUM(300)은 대칭키 암호화 알고리즘을 이용하여, 검출된 키로 R1 및 R2 값을 암호화하여 세션키를 생성할 수 있다. 여기서 R1은 인증 요청 신호에 포함되어 수신될 수 있다.
세션 키가 생성되면, CRUM 칩(300)에서는 제1 MAC을 생성할 수 있다. 구체적으로는, CRUM 칩(300)은 비대칭키 암호화 알고리즘을 이용하여 세션 키로 전자 서명 정보나, 기타 식별 정보 등을 암호화하여 제1 MAC을 생성할 수 있다. CRUM칩(300)은 생성된 제1 MAC과, 전송할 데이터를 결합한 인증 정보를 인증 제어부(120)로 전송하여 줄 수 있다(S1340).
또 다른 예로는, 전자 서명 정보 대신에 검증키가 사용될 수도 있다. 가령, CRUM 칩(300)은 소모품 유닛(200)에 대한 고유 인증서나, 시리얼 번호와 같은 고유 정보를 R1, R2 값을 이용하여 스크램블(scrambling)하여 검증키를 생성할 수 있다. CRUM 칩(300)은 생성된 검증 키를 세션 키로 암호화하여 제1 MAC을 생성하고, 제1 MAC을 검증키 및 기타 정보들과 함께 결합하여 인증 정보를 생성한 후, 그 인증 정보를 인증 제어부(120)로 전송하여 줄 수도 있다. 이러한 예에 대해서는 추가적인 도시 및 설명은 생략한다.
인증 제어부(120)는 인증 정보가 전송되면(S1340), 인증 정보에 포함된 전자 서명을 검출하고, 기 저장된 전자 서명과 비교하여 검증한다(S1350). 검증 결과, 전자 서명이 일치하지 않으면 인증 실패로 처리한다(S1395). 이에 따라, 소모품 유닛의 기능이 제한된다.
전자 서명 검증에 성공하면, 인증 제어부(120)는 세션 키를 생성한다. 구체적으로는, 인증 제어부(120)에서 이미 생성하였던 R1과, CRUM 칩(300)으로부터 수신된 인증 정보에 포함된 R2에 대해 대칭키 암호화 알고리즘을 적용하여, 세션 키를 생성할 수 있다(S1360). 이 경우, CRUM 칩(300)로 전송하였던 인증 요청 신호에 포함되어 있던 키 인덱스에 대응되는 키가 사용될 수 있다.
세션 키가 생성되면, 인증 제어부(120)는 생성된 세션 키를 이용하여 제2 MAC을 생성한다(S1370). 구체적으로는, 비대칭키 암호화 알고리즘을 이용하여, 수신된 전자 서명 정보에 대해 세션 키로 암호화하여 제2 MAC을 생성할 수 있다. 그리고 나서, 인증 제어부(120)는 제2 MAC 및 제1 MAC을 비교하여 제1 MAC을 검증한다(S1380).
인증 제어부(120)는 제1 MAC이 검증되면, 인증 성공으로 처리한다(S1390). 이에 따라, 소모품 유닛을 이용한 화상형성잡이 제한 없이 수행될 수 있다.
도 13에서는 전자 서명 정보를 이용하는 경우를 기준으로 설명하였으나, 전자 서명 정보 이외에 검증 키나 기타 데이터가 사용될 수도 있다. 또한, 도 12, 13에서는 제2 인증에 대하여 구체적으로 설명하였으나, 이러한 인증 방법은 제1 인증에서도 동일하게 수행될 수 있음은 물론이다.
또한, 도 12 및 도 13에서 설명한 CRUM 칩(300)의 동작은 실시 예에 따라 CPU(330)에서 수행할 수도 있고, 인증 ASIC(360)에서 수행할 수도 있다.
한편, 이상에서는 MAC을 이용하는 제1 인증 및 제2 인증에 대해 구체적으로 설명하였으나, 반드시 이에 한정되는 것은 아니다. 가령, 제1 인증이나 제2 인증은 각각 복수의 인증 단계로 구성될 수 있다.
이상과 같이 제1 인증 및 제2 인증이 모두 성공하면, 화상형성장치(100)는 소모품 유닛(200)을 이용하여 다양한 잡(job)을 수행할 수 있다. 잡 수행이 완료되면, 화상형성장치(100)는 소모품 유닛(200)과의 사이에서 암호화 데이터 통신을 수행할 수 있다. 구체적으로는, 화상형성장치(100)에 탑재된 메인 컨트롤러(110)와, 소모품 유닛(200) 내의 CRUM 칩(300) 사이에서 암호화 데이터 통신이 이루어질 수 있다.
도 14는 인증 및 암호화 데이터 통신이 이루어지는 과정을 설명하기 위한 흐름도이다. 도 14에 따르면, 화상형성장치(100)는 인증 이벤트가 발생하면(S1410), 소모품유닛(200)과의 사이에서 제1 및 제2 인증을 수행한다. 상술한 바와 같이, 제1 인증 및 제2 인증은 메인 컨트롤러(110) 및 인증 제어부(120)에 의해 각각 개별적으로 이루어질 수 있다. 제1 인증은 메인 컨트롤러(110)가 펌웨어에 따라 수행하는 소프트웨어 인증 방식이고, 제2 인증은 인증 제어부(120)가 각종 ASIC 및 로직을 이용하여 수행하는 하드웨어 인증 방식이다. 구체적인 인증 방식의 예에 대해서는 상술한 바 있으므로, 중복 설명은 생략한다.
제1 인증 및 제2 인증이 모두 성공하면(S1430), 화상형성장치(100)는 소모품 유닛(200)을 이용하여 다양한 잡을 수행할 수 있다. 잡이 수행되거나 그 밖에 통신을 수행하여야 할 이벤트가 발생하면, 화상형성장치(100)는 암호화된 통신 메시지를 생성한다(S1440). 구체적으로는, 전송하고자 하는 데이터를 세션 키로 암호화하여, MAC을 생성한다. 설명의 편의상, 생성된 MAC은 제3 MAC이라 한다. 화상형성장치(100)는 데이터 및 MAC을 결합한 통신 메시지를 소모품 유닛(200)에 전송한다(S1450). 전송되는 데이터는 인쇄된 페이지 수, 인쇄 옵션, 인쇄에 소요된 소모품 량, 인쇄 일시, 사용자 정보 등과 같이 다양한 정보가 될 수 있다.
소모품 유닛(200)은 암호화된 통신 메시지가 전송되면(S1450). 통신 메시지를 검증한다(S1470). 구체적으로는, 통신 메시지 내에 포함된 데이터 및 제3 MAC을 분리한다. 그리고, 자체적으로 세션 키를 생성하고, 분리된 데이터를 세션 키로 암호화하여 제4 MAC을 생성한다. 소모품 유닛(200)은 제4 MAC과 제3 MAC을 비교하여, 동일하면 검증에 성공한 것으로 판단한다(S1480).
검증이 완료되면 소모품 유닛(200)에 내부적으로 마련된 CRUM칩(300)의 메모리부(320)에 데이터를 저장한다. 반면, 검증에 실패하면, 소모품 유닛(200)은 수신된 데이터를 저장하지 않는다. 이에 따라, 소모품 유닛(200)이 화상형성장치(100)의 본체로부터 분리되어 다른 장치에 장착되더라도, 소모품 유닛(200)의 사용 상태에 대한 정확한 관리가 가능해질 수 있다.
한편, 화상형성장치(100)는 자체적으로 마련된 본체 저장부(910)나 메모리(920)에도 해당 데이터를 저장할 수 있다. 이에 따라, 소모품 유닛(200)과 별도로 데이터 관리를 할 수도 있다. 화상형성장치(100)는 소모품 유닛(200)의 식별 정보와 데이터를 매칭시켜 저장하고, 데이터가 변경되는 이벤트가 발생할 때마다, 저장된 데이터를 업데이트할 수 있다.
도 14에서 설명한 암호화 데이터 통신은 메인 컨트롤러(110)에 의해 수행될 수 있다. 또한, 도 14에서 설명한 소모품 유닛(200)의 동작들은 소모품 유닛(200)에 탑재된 CRUM 칩(300)에 의해 수행될 수 있으나, 반드시 이에 한정되는 것은 아니다. 즉, 소모품 유닛(200)에는 CRUM 칩(300) 이외에 별도의 프로세서가 추가로 장착되어, 암호화 데이터 통신은 해당 프로세서가 수행하도록 설계될 수도 있다.
한편, 메인 컨트롤러(110)는 제1 인증 및 제2 인증 중 어느 하나의 인증이 실패하거나, 암호화 데이터 통신 과정에서 소모품 유닛(200)이 통신 메시지 검증에 실패할 경우, 메인 컨트롤러(110)는 잡 코맨드를 입력한 사용자에게 에러 상태를 통지하여 줄 수 있다.
도 15는 사용자의 호스트 장치를 통해서 에러 상태를 통지해주는 과정을 설명하는 도면이다. 도 15에서는 화상형성장치(100) 및 호스트 장치(1500)는 로컬 인터페이스 또는 네트워크를 통해 서로 연결될 수 있다.
화상형성장치(100)는 소모품 유닛(200)에 대한 제1 인증 또는 제2 인증이 실패한 경우, 상술한 바와 같이 소모품 유닛(200)의 기능을 제한한다. 만약, 소모품 유닛(200)이 화상형성잡에 관여하는 현상 카트리지라면, 화상형성잡을 실행하지 않는다. 화상형성장치(100)는 인증 실패 사실을 호스트 장치(1500)로 전송할 수 있다. 호스트 장치(1500)는 인증이 실패하였음을 나타내는 메시지를 디스플레이할 수 있다.
한편, 소모품 유닛(200)이 타 구성요소로 대체 가능한 상태도 있을 수 있다. 가령, C, M, Y, K 토너 카트리지 중에서 K 토너 카트리지에 대한 인증이 실패하고, 나머지 카트리지에 대해서는 인증에 성공한 경우, C, M, Y 토너 카트리지를 이용하여 블랙을 표현할 수 있다. 이 경우, K 토너 카트리지에 대한 인증이 실패한 경우, K 토너 카트리지에 대한 사용만을 제한하고, 나머지 토너 카트리지를 이용하여 화상형성잡을 수행할 수도 있다. 메인 컨트롤러(110)는 인증 실패한 소모품 유닛 대신에 인증 성공한 소모품 유닛을 이용하여 화상형성잡을 수행할 것인지 여부를 문의하기 위한 신호를 호스트 장치(1500)로 전송할 수 있다. 호스트 장치(1500)는 이러한 신호에 따라 문의 메시지(1510)를 디스플레이한다. 사용자가 문의 메시지에 대해 동의하면, 호스트 장치(1500)는 확인 명령을 화상형성장치(100)로 전송한다. 이에 따라, 인증 성공한 소모품 유닛을 이용한 화상형성잡이 수행될 수 있다.
이상과 같은 다양한 실시 예들에서는 화상형성장치에 탑재된 소모품 유닛을 인증하는 것을 기준으로 설명하였으나, 이러한 방법들은 반드시 화상형성장치에만 사용되어야 하는 것은 아니다. 즉, 일반적인 전자 장치에서 외부 구성요소 또는 내부에 탑재된 구성요소를 인증하여야 하는 경우에도, 상술한 다양한 실시 예들이 적용될 수 있다. 가령, 휴대폰이나 PC, 태블릿 PC, 랩탑 PC, TV 등과 같은 다양한 단말 장치에 대해 USB 케이블을 통해 외부 저장 매체가 연결될 수도 있다. 이 경우, 단말 장치 내에 마련된 메인 컨트롤러가 소프트웨어에 따른 제1 인증을 수행하고, 동일 단말 장치 내에 마련된 인증 제어부가 ASIC을 이용하는 하드웨어 인증인 제2 인증을 수행할 수 있다. 이에 따라, 단말 장치가 해킹되는 경우에도, 단말 장치에서 외부 저장 매체를 이용하는 것을 방지할 수 있다.
이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
100 : 화상형성장치 200 : 소모품 유닛
300 : CRUM 칩 110 : 메인 컨트롤러
120 : 인증 제어부

Claims (15)

  1. 화상형성장치에 있어서,
    CRUM칩이 탑재된 소모품 유닛;
    상기 소모품 유닛이 장착되면, 상기 소모품 유닛에 대해 제1 인증 및 제2 인증 중 적어도 하나를 수행하는 본체;를 포함하며,
    상기 본체는,
    상기 화상형성장치에 저장된 펌웨어에 따라 상기 제1 인증을 수행하기 위한 메인 컨트롤러; 및
    적어도 하나의 ASIC(Application Specific Integrated Circuit)을 이용하여 상기 소모품 유닛에 대한 제2 인증을 수행하기 위한 인증 제어부;를 포함하는 화상형성장치.
  2. 제1항에 있어서,
    상기 인증 제어부는, 상기 메인 컨트롤러에서 수행되는 상기 제1 인증과 별도로 상기 제2 인증을 수행하며,
    상기 메인 컨트롤러는 상기 제1 인증 및 상기 제2 인증이 모두 성공하면, 상기 CRUM 칩과 통신을 수행하는 화상형성장치.
  3. 제1항에 있어서,
    상기 메인 컨트롤러 및 상기 인증 제어부는, 인증을 수행하여야 하는 이벤트가 입력되면, 상기 제1 인증 및 상기 제2 인증을 각각 개별적으로 수행하며,
    상기 이벤트는,
    파워 리셋 신호, 상기 소모품 유닛의 교체 신호, 화상형성잡 종료 신호 중 하나가 입력되는 이벤트인 것을 특징으로 하는 화상형성장치.
  4. 제1항에 있어서,
    상기 제1 인증 및 상기 제2 인증 중 적어도 하나의 인증에 실패하면 상기 소모품 유닛의 기능을 제한하는 시스템 기능 제어부;를 더 포함하며,
    상기 인증 제어부는,
    상기 CRUM 칩으로부터 제1 MAC을 포함하는 인증 정보를 수신하기 위한 인터페이스부;
    상기 인증 정보를 이용하여 제2 MAC을 생성하고, 상기 제1 MAC과 상기 제2 MAC을 비교하여 상기 CRUM 칩을 검증하는 인증 처리부; 및
    상기 CRUM 칩의 인증이 실패하면 상기 시스템 기능 제어부로 기능 제한 요청을 전송하는 기능 제한 요청부;를 포함하는 것을 특징으로 하는 화상형성장치
  5. 제4항에 있어서,
    상기 인증 처리부는,
    상기 인증 정보에 포함된 전자 서명을 검증하기 위한 전자 서명 검증부;
    세션 키를 생성하기 위한 세션 키 생성부;
    상기 세션 키를 이용하여 상기 제2 MAC을 생성하는 MAC 생성부;
    생성된 상기 제2 MAC과 상기 제1 MAC을 비교하여, 비교 결과를 상기 기능 제한 요청부로 제공하는 MAC 검증부;를 포함하며,
    상기 전자 서명 검증부, 상기 세션 키 생성부, 상기 MAC 생성부, 상기 MAC 검증부 각각은 상기 ASIC인 것을 특징으로 하는 화상형성장치.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 CRUM 칩은,
    상기 메인 컨트롤러와 연결되기 위한 인터페이스부;
    상기 소모품 유닛에 대한 정보가 저장된 메모리부;
    상기 인터페이스부를 통해 상기 메인 컨트롤러와 연결되어, 상기 메인 컨트롤러와의 사이에서 상기 제1 인증을 수행하는 CPU;
    상기 인증 제어부와의 사이에서 상기 제2 인증을 수행하는 인증 ASIC;을 포함하며,
    상기 CPU는 상기 제1 인증 및 상기 제2 인증이 모두 성공하면, 상기 메인 컨트롤러로부터 전송되는 신호에 따라 상기 메모리부에 저장된 상기 정보를 업데이트하는 화상형성장치.
  7. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 CRUM칩은,
    상기 메인 컨트롤러와 연결되기 위한 인터페이스부;
    상기 화상형성장치의 본체 O/S와 별도로 자체 O/S가 저장된 메모리부;
    상기 자체 O/S를 이용하여 상기 메인 컨트롤러와의 사이에서 상기 제1 인증을 수행하고, 상기 인증 제어부와의 사이에서 상기 제2 인증을 수행하는 CPU;를 포함하는 화상형성장치.
  8. 화상형성장치의 소모품 유닛에 탑재 가능한 CRUM 칩에 있어서,
    상기 화상형성장치와 연결되기 위한 인터페이스부;
    상기 소모품 유닛에 대한 정보가 저장된 메모리부;
    상기 인터페이스부를 통해 상기 화상형성장치에 탑재된 메인 컨트롤러와 연동하여 제1 인증을 수행하는 CPU;
    제2 인증을 수행하기 위한 용도로 설계되어 상기 화상형성장치에 탑재된 적어도 하나의 ASIC(Application Specific Integrated Circuit)을 포함하는 인증 제어부와 연동하여 상기 제2 인증을 수행하는 인증 ASIC;을 포함하는 CRUM 칩.
  9. 제8항에 있어서,
    상기 CPU는 상기 제1 인증 및 상기 제2 인증이 모두 성공하면, 상기 메인 컨트롤러로부터 전송되는 신호에 따라 상기 메모리부에 저장된 상기 정보를 업데이트하는 CRUM 칩.
  10. 화상형성장치의 소모품 유닛에 탑재 가능한 CRUM 칩에 있어서,
    상기 화상형성장치와 연결되기 위한 인터페이스부;
    상기 화상형성장치의 본체 O/S와 별도로 자체 O/S가 저장된 메모리부;
    상기 인터페이스부를 통해 상기 화상형성장치와 연결되며, 상기 자체 O/S를 이용하여 상기 메인 컨트롤러와 연동하여 제1 인증을 수행하고, 상기 화상형성장치에 탑재된 인증 제어부와 연동하여 제2 인증을 수행하는 CPU;를 포함하며,
    상기 메인 컨트롤러는, 상기 화상형성장치에 저장된 펌웨어에 따라 상기 제1 인증을 수행하고,
    상기 인증 제어부는, 상기 제2 인증을 수행하기 위한 용도로 설계된 적어도 하나의 ASIC(Application Specific Integrated Circuit)을 이용하여 상기 제2 인증을 수행하는, CRUM 칩.
  11. 화상형성장치의 소모품 유닛 인증 방법에 있어서,
    상기 화상형성장치에 탑재된 소모품 유닛에 대해 인증을 수행하여야 할 이벤트가 발생하였는지 판단하는 단계;
    상기 이벤트가 발생하면, 상기 화상형성장치에 탑재된 메인 컨트롤러가 상기 화상형성장치에 저장된 소프트웨어에 따라 상기 소모품 유닛에 대한 제1 인증을 수행하는 단계;
    적어도 하나의 ASIC(Application Specific Integrated Circuit)를 포함하는 인증 제어부가 상기 메인 컨트롤러와 별도로 상기 소모품 유닛에 대한 제2 인증을 수행하는 단계;를 포함하는 소모품 유닛 인증 방법.
  12. 제11항에 있어서,
    상기 제1 인증 및 상기 제2 인증이 성공하면 상기 소모품 유닛에 대한 인증을 완료하는 단계; 및
    상기 제1 인증 및 상기 제2 인증 중 적어도 하나가 실패하면 상기 소모품 유닛에 대한 인증을 실패 처리하는 단계;를 더 포함하는 소모품 유닛 인증 방법.
  13. 제11항에 있어서,
    상기 이벤트는,
    파워 리셋 신호, 상기 소모품 유닛의 교체 신호, 화상형성잡 종료 신호 중 하나가 입력되는 이벤트인 것을 특징으로 하는 소모품 유닛 인증 방법.
  14. 제11항에 있어서,
    상기 제2 인증을 수행하는 단계는,
    상기 CRUM 칩으로부터 제1 MAC을 포함하는 인증 정보를 수신하는 단계;
    상기 인증 정보를 이용하여 제2 MAC을 생성하고, 상기 제1 MAC과 상기 제2 MAC을 비교하여 상기 CRUM 칩을 인증하는 단계;를 포함하는 것을 특징으로 하는 소모품 유닛 인증 방법.
  15. 제14항에 있어서,
    상기 CRUM 칩을 인증하는 단계는,
    전자 서명 검증 ASIC을 이용하여 상기 인증 정보에 포함된 전자 서명을 검증하는 단계;
    상기 전자 서명이 검증되면, 세션 키 생성 ASIC을 이용하여 세션 키를 생성하는 단계;
    MAC 생성 ASIC에서 상기 세션 키를 이용하여 상기 제2 MAC을 생성하는 단계;
    MAC 검증 ASIC에서 상기 제2 MAC과 상기 제1 MAC을 비교하는 단계;를 포함하는 것을 특징으로 하는 소모품 유닛 인증 방법.








KR20130113733A 2013-09-25 2013-09-25 소모품 유닛에 탑재 가능한 crum 칩과 이를 인증하는 화상형성장치 및 그 인증 방법 KR20150033895A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR20130113733A KR20150033895A (ko) 2013-09-25 2013-09-25 소모품 유닛에 탑재 가능한 crum 칩과 이를 인증하는 화상형성장치 및 그 인증 방법
US14/242,236 US9594897B2 (en) 2013-09-25 2014-04-01 Crum chip mountable in comsumable unit, image forming apparatus for authentificating the crum chip, and method thereof
PCT/KR2014/006637 WO2015046730A1 (en) 2013-09-25 2014-07-22 Crum chip mountable in comsumable unit, image forming apparatus for authentificating the crum chip, and method thereof
EP14185812.6A EP2854063B1 (en) 2013-09-25 2014-09-22 Image forming apparatus for authenticating a crum chip mountable in consumable unit, and method thereof
CN201410497851.1A CN104462931A (zh) 2013-09-25 2014-09-25 消费者可更换单元监视器芯片及其认证成像装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130113733A KR20150033895A (ko) 2013-09-25 2013-09-25 소모품 유닛에 탑재 가능한 crum 칩과 이를 인증하는 화상형성장치 및 그 인증 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020180056336A Division KR20180055790A (ko) 2018-05-17 2018-05-17 소모품 유닛에 탑재 가능한 crum 칩과 이를 인증하는 화상형성장치 및 그 인증 방법

Publications (1)

Publication Number Publication Date
KR20150033895A true KR20150033895A (ko) 2015-04-02

Family

ID=51687784

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130113733A KR20150033895A (ko) 2013-09-25 2013-09-25 소모품 유닛에 탑재 가능한 crum 칩과 이를 인증하는 화상형성장치 및 그 인증 방법

Country Status (5)

Country Link
US (1) US9594897B2 (ko)
EP (1) EP2854063B1 (ko)
KR (1) KR20150033895A (ko)
CN (1) CN104462931A (ko)
WO (1) WO2015046730A1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3033966B1 (fr) * 2015-03-20 2018-04-27 Verimatrix Authentification chainee par l'intermediaire de dispositifs connectes
US9692598B2 (en) * 2015-08-07 2017-06-27 Terry L. Davis Multi-use long string authentication keys
JP6575275B2 (ja) * 2015-09-30 2019-09-18 ブラザー工業株式会社 サーバ装置、及び、サーバ装置を備える通信システム
JP6663238B2 (ja) * 2016-02-10 2020-03-11 キヤノン株式会社 画像形成装置、その制御方法、プログラム、及びカートリッジ
US10723140B2 (en) 2016-09-08 2020-07-28 Hewlett-Packard Development Company, L.P. Decrementing a printing fluid-based estimate of a number of pages that can be printed according to different intervals
WO2018188071A1 (zh) * 2017-04-14 2018-10-18 广州众诺电子技术有限公司 耗材芯片验证方法、耗材芯片及耗材容器
JP2019030082A (ja) * 2017-07-27 2019-02-21 キヤノン株式会社 電子機器、制御方法およびプログラム
JP6800821B2 (ja) * 2017-08-10 2020-12-16 キヤノン株式会社 画像形成装置、消耗品の管理方法、及びプログラム
CN109409076B (zh) * 2017-08-17 2020-09-11 珠海艾派克微电子有限公司 打印耗材盒的验证方法、装置及耗材芯片
WO2019045706A1 (en) * 2017-08-30 2019-03-07 Hewlett-Packard Development Company, L.P. VERIFICATION AND REVOCATION OF COMPONENTS
JP6988309B2 (ja) * 2017-09-22 2022-01-05 京セラドキュメントソリューションズ株式会社 画像形成装置、及び画像形成方法
JP7098929B2 (ja) * 2017-12-27 2022-07-12 ブラザー工業株式会社 画像形成装置
CN108446081B (zh) * 2018-04-11 2019-06-21 杭州旗捷科技有限公司 耗材芯片、耗材、耗材通信方法
KR20190121611A (ko) 2018-04-18 2019-10-28 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 화상 형성 장치에 장착 가능한 crum 유닛, 및 이를 이용한 화상 형성 장치
FR3080927B1 (fr) 2018-05-03 2024-02-02 Proton World Int Nv Authentification d'un circuit electronique
WO2020091779A1 (en) 2018-11-01 2020-05-07 Hewlett-Packard Development Company, L.P. Multi-portion consumable component identifier
WO2020117390A1 (en) 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry package
US10894423B2 (en) 2018-12-03 2021-01-19 Hewlett-Packard Development Company, L.P. Logic circuitry
BR112021010563A2 (pt) 2018-12-03 2021-08-24 Hewlett-Packard Development Company, L.P. Circuitos lógicos
WO2020117198A1 (en) 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry
WO2020117843A1 (en) 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry
US11364716B2 (en) 2018-12-03 2022-06-21 Hewlett-Packard Development Company, L.P. Logic circuitry
ES2955564T3 (es) * 2018-12-03 2023-12-04 Hewlett Packard Development Co Sistema de circuitos lógicos
PT3688601T (pt) 2018-12-03 2020-11-13 Hewlett Packard Development Co Conjunto de circuitos lógicos
US11366913B2 (en) * 2018-12-03 2022-06-21 Hewlett-Packard Development Company, L.P. Logic circuitry
MX2021005993A (es) 2018-12-03 2021-07-06 Hewlett Packard Development Co Conjunto de circuitos logicos.
US11338586B2 (en) 2018-12-03 2022-05-24 Hewlett-Packard Development Company, L.P. Logic circuitry
CN109624529B (zh) * 2019-01-22 2020-04-24 杭州旗捷科技有限公司 一种耗材芯片、耗材芯片通信方法
US11139043B2 (en) * 2019-05-20 2021-10-05 Board Of Trustees Of The University Of Alabama, For And On Behalf Of The University Of Alabama In Huntsville Systems and methods for identifying counterfeit memory
CN110378096A (zh) * 2019-07-15 2019-10-25 杭州旗捷科技有限公司 一种耗材芯片通信方法、耗材芯片及耗材
US11407229B2 (en) 2019-10-25 2022-08-09 Hewlett-Packard Development Company, L.P. Logic circuitry package
CN112099324A (zh) * 2020-09-28 2020-12-18 珠海奔图电子有限公司 耗材芯片、耗材、图像形成装置及图像形成控制方法
CN113103765B (zh) * 2021-04-02 2022-07-15 杭州旗捷科技有限公司 打印耗材认证方法、打印耗材芯片、打印耗材和打印系统
US11816219B2 (en) * 2021-06-01 2023-11-14 Cisco Technology, Inc. Binding a trust anchor and an ASIC

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6438329B1 (en) 1998-04-15 2002-08-20 Xerox Corporation Method and apparatus for automatic customer replaceable unit (CRU) setup and cleaner blade lubrication
JP2001245270A (ja) 2000-02-29 2001-09-07 Sony Corp 信号伝送装置および信号伝送方法
US7376627B2 (en) * 2003-01-31 2008-05-20 Lexmark International, Inc. Method of licensing functionality after initial transaction
US7240995B2 (en) * 2003-05-06 2007-07-10 Lexmark International, Inc. Method of authenticating a consumable
JP4108073B2 (ja) 2004-09-15 2008-06-25 シャープ株式会社 情報記録再生装置
KR20060070684A (ko) 2004-12-21 2006-06-26 브이케이 주식회사 휴대폰 불법복제 방지장치
KR100618880B1 (ko) 2004-12-30 2006-09-01 삼성전자주식회사 하드디스크 드라이브의 인증 방법 이에 적합한 기록 매체
US7146112B2 (en) 2005-01-13 2006-12-05 Xerox Corporation Replaceable unit monitor reader with auto polling capabilities
KR100716173B1 (ko) 2005-08-08 2007-05-10 삼성전자주식회사 디지털 방송 시스템의 이더넷 포트 제어 방법 및 그 장치
US8019802B2 (en) 2005-08-24 2011-09-13 Qualcomm Incorporated Cryptographically secure pseudo-random number generator
US7934049B2 (en) 2005-09-14 2011-04-26 Sandisk Corporation Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory
JP4600268B2 (ja) 2005-12-15 2010-12-15 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置
KR100997239B1 (ko) 2008-03-03 2010-11-29 삼성전자주식회사 Crum 유닛, 교체가능유닛 및 이를 이용하는 화상형성장치와, 그 인증 및 암호화 데이터 통신 방법
KR101294215B1 (ko) 2008-07-28 2013-08-16 삼성전자주식회사 커버 개폐 상황을 고려하여 전원을 제어하는 화상형성장치및 그 방법
JP5005746B2 (ja) 2009-09-08 2012-08-22 株式会社三井住友銀行 パスワード照合装置および方法
US8762716B2 (en) 2009-10-15 2014-06-24 Samsung Electronics Co., Ltd. Image forming apparatus
US8311419B2 (en) * 2010-11-29 2012-11-13 Xerox Corporation Consumable ID differentiation and validation system with on-board processor
JP5737101B2 (ja) 2011-09-15 2015-06-17 ブラザー工業株式会社 印刷装置および印刷装置の制御方法

Also Published As

Publication number Publication date
EP2854063B1 (en) 2019-06-26
EP2854063A1 (en) 2015-04-01
US20150089630A1 (en) 2015-03-26
CN104462931A (zh) 2015-03-25
WO2015046730A1 (en) 2015-04-02
US9594897B2 (en) 2017-03-14

Similar Documents

Publication Publication Date Title
KR20150033895A (ko) 소모품 유닛에 탑재 가능한 crum 칩과 이를 인증하는 화상형성장치 및 그 인증 방법
KR101584221B1 (ko) Crum 칩 및 이를 포함하는 소모품 유닛을 검증하는 화상형성장치와 그 방법
RU2471229C2 (ru) Блок, использующий операционную систему, и устройство формирования изображения, использующее его
KR101780734B1 (ko) Crum 칩과 화상형성장치 및 그 통신 방법
US9924071B2 (en) Crum chip and image forming device for authentication and communication, and methods thereof
KR101879841B1 (ko) Crum 칩 및 그 인증 방법
KR20180055790A (ko) 소모품 유닛에 탑재 가능한 crum 칩과 이를 인증하는 화상형성장치 및 그 인증 방법
KR101866823B1 (ko) Crum 칩과 화상형성장치 및 그 통신 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
A107 Divisional application of patent