KR20150052093A - 식별자 및 정보 인코딩 방법 - Google Patents

식별자 및 정보 인코딩 방법 Download PDF

Info

Publication number
KR20150052093A
KR20150052093A KR1020157006906A KR20157006906A KR20150052093A KR 20150052093 A KR20150052093 A KR 20150052093A KR 1020157006906 A KR1020157006906 A KR 1020157006906A KR 20157006906 A KR20157006906 A KR 20157006906A KR 20150052093 A KR20150052093 A KR 20150052093A
Authority
KR
South Korea
Prior art keywords
information
alphanumeric representation
bar code
character
identifier
Prior art date
Application number
KR1020157006906A
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 시크파 홀딩 에스에이
Publication of KR20150052093A publication Critical patent/KR20150052093A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06046Constructional details
    • G06K19/06056Constructional details the marking comprising a further embedded marking, e.g. a 1D bar code with the black bars containing a smaller sized coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/08Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code using markings of different kinds or more than one marking of the same kind in the same record carrier, e.g. one marking being sensed by optical and the other by magnetic means
    • G06K19/10Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code using markings of different kinds or more than one marking of the same kind in the same record carrier, e.g. one marking being sensed by optical and the other by magnetic means at least one kind of marking being used for authentication, e.g. of credit or identity cards
    • G06K19/14Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code using markings of different kinds or more than one marking of the same kind in the same record carrier, e.g. one marking being sensed by optical and the other by magnetic means at least one kind of marking being used for authentication, e.g. of credit or identity cards the marking being sensed by radiation
    • 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/3226Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Character Discrimination (AREA)
  • Record Information Processing For Printing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Printers Characterized By Their Purpose (AREA)

Abstract

본 발명은, 각각 동일한 제1 정보를 나타내는 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자에 관한 것이며, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치는 제2 정보를 나타낸다. 본 발명은 정보를 인코딩 및 디코딩하는 각각의 방법, 및 정보를 인코딩 및 디코딩하는 각각의 장치에 관한 것이다.

Description

식별자 및 정보 인코딩 방법{IDENTIFIER AND METHOD OF ENCODING INFORMATION}
본 발명은 식별자, 특히 바코드 형태의 식별자와, 바코드 내의 정보를 인코딩하는 방법에 관한 것이다.
대부분의 소비재, 또는 적어도 그 패키지는 식별자를, 특히 바코드 형태로 포함한다. 바코드는 광학 머신에 의해 판독 가능한 데이터의 표시로서, 그 바코드가 제공되는 물건에 관한 데이터를 보여준다. 원래, 바코드는 평행한 선들의 폭과 간격을 다르게 하여 데이터를 표시하였는데, 선형 또는 1차원적인 것으로서 칭해질 수도 있다. 이후에, 바코드는 직사각형, 점, 육각형 및 기타 2차원의 기하학적 패턴으로 진화하였다. 2차원 시스템이 다양한 심볼을 사용하더라도, 이 역시 일반적으로 바코드라고 칭해진다. 바코드는 처음에 바코드 판독기(reader)라고 불리는 전용 광스캐너를 이용하여 스캐닝되었으며, 나중에 스캐너와 해석용 소프트웨어가 데스크탑 프린터 및 스마트폰을 비롯한 장치 상에서 이용 가능하게 되었다. 바코드의 종류의 일례가 통일 상품 코드(Universal Product Code, UPC)이다.
예컨대 귀중품말고도 일상 소비재와 같은 많은 상품들이 위조 및/또는 변조에 취약하다. 위조 및/또는 변조는 위조 및/또는 변조된 상품말고도 위조 및/또는 변조될 상품 상에 제공된 식별자에까지 이어질 수 있다. 위조로부터 소비재를 보호하기 위해 이용되었던 위조 방지 해결책은 종종 특정 재료, 코드 또는 마킹으로 물품(item)에 표시하는 것에 기반한다. 그러나, 이들 해결책의 대부분은 눈에 보이거나 약삭빠른 위조범에게 적어도 쉽게 인식 가능한 것이다. 지금까지, 위조범이 즉각 인식할 수 없는 효과적인 위조 방지 해결책을 고안하는 것은 어려운 것으로 드러났다.
이에, 눈에 보이지 않게 되거나 인식하기 어려우면서, 인증 기능성을 제공하는 개선된 식별자 및 바코드 정보 인코딩 방법이 필요하다.
본 발명의 목적은 식별자와, 바코드를 인증하기 위한 정보를 인코딩하는 방법을 제공하는 것이다. 이 목적은 독립항들의 청구 대상에 의해 해결된다. 바람직한 실시형태는 종속항들의 청구 대상이다.
본 발명의 일 실시형태는, 각각 동일한 제1 정보를 나타내는 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 제공하고, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치는 제2 정보를 나타낸다.
본 발명의 바람직한 실시형태에 있어서, 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 위치는 상기 바코드의 평행한 선들에 본질적으로 수직인 축을 따른 수평 위치이다.
본 발명의 다른 바람직한 실시형태에 있어서, 영숫자 표현의 상기 적어도 하나의 문자의 수평 위치는 영숫자 표현의 상기 적어도 하나의 문자의 참조용 수평 위치에 대해 일정 거리만큼 오프셋된다.
본 발명의 다른 바람직한 실시형태에 있어서, 상기 거리는 상기 바코드의 이미지 데이터와 상기 바코드의 영숫자 표현을 출력하는 장치의 출력 해상도에 기초한다.
본 발명의 다른 바람직한 실시형태에 있어서, 상기 거리는 10 ㎛와 150 ㎛ 사이에, 바람직하게는 10 ㎛와 100 ㎛ 사이에 포함된다.
본 발명의 다른 실시형태는, 각각 동일한 제1 정보를 나타내는 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 생성하는 단계와, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 인코딩하는 단계를 포함하는 정보 인코딩 방법을 제공하고, 상기 영숫자 표현은, 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 위치가 그 인코딩된 제2 정보를 나타내도록, 상기 인코딩된 제2 정보에 기초하여 생성된다.
본 발명의 바람직한 실시형태에 있어서, 상기 인코딩된 제2 정보는 상기 바코드의 평행한 선들에 본질적으로 수직인 축을 따른 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 위치에 관한 정보이다.
본 발명의 다른 바람직한 실시형태에 있어서, 상기 인코딩된 제2 정보는 영숫자 표현의 상기 적어도 하나의 문자의 수평 위치가 영숫자 표현의 상기 적어도 하나의 문자의 참조용 수평 위치에 대한 오프셋된 거리에 관한 정보이다.
본 발명의 다른 바람직한 실시형태에 있어서, 상기 방법은, 생성된 바코드의 이미지 데이터와 상기 바코드의 영숫자 표현을 생성하는 단계와, 상기 이미지 데이터를 출력하는 단계를 더 포함한다.
본 발명의 다른 바람직한 실시형태에 있어서, 상기 이미지 데이터를 출력하는 단계는, 생성된 이미지 데이터를 라벨 상에 인쇄하는 단계와, 생성된 이미지 데이터를 디스플레이 스크린 상에 표시하는 단계 중 적어도 하나의 단계를 포함한다.
본 발명의 다른 실시형태는, 바코드 판독 장치를 이용하여, 각각 동일한 제1 정보를 나타내는 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 판독하는 단계와, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 검출하는 단계를 포함하는 정보 디코딩 방법을 제공한다.
본 발명의 바람직한 실시형태에 있어서, 상기 방법은 검출된 제2 정보에 기초하여 코드를 도출하는 단계와, 도출된 코드를 상기 식별자에 대한 참조 코드와 비교하는 단계와, 비교 결과에 기초하여 상기 식별자의 진위(authenticity)에 관한 정보를 도출하는 단계를 더 포함한다.
본 발명의 다른 실시형태는, 명령어를 저장하는 컴퓨터 판독 가능한 매체를 제공하고, 상기 명령어는, 컴퓨터 장치의 프로세서에 의해 실행될 때에, 상기 프로세서로 하여금, 각각 동일한 제1 정보를 나타내는 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 생성하는 단계와, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 인코딩하는 단계를 실행하게 하고, 상기 영숫자 표현은, 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 위치가 그 인코딩된 제2 정보를 나타내도록, 상기 인코딩된 제2 정보에 기초하여 생성된다.
본 발명의 다른 실시형태는, 명령어를 저장하는 컴퓨터 판독 가능한 매체를 제공하고, 상기 명령어는, 컴퓨터 장치의 프로세서에 의해 실행될 때에, 상기 프로세서로 하여금, 바코드 판독 장치를 이용하여, 각각 동일한 제1 정보를 나타내는 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 판독하는 단계와, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 검출하는 단계를 실행하게 한다.
본 발명의 다른 실시형태는 본 발명의 일 실시형태에 따른 식별자를 포함하는 물품(item)을 제공한다. 본 발명의 일 실시형태에 따르면, 상기 식별자는 바코드 또는 2차원 코드이다.
본 발명의 다른 실시형태는 바코드로 정보를 인코딩하는 장치를 제공하고, 상기 장치는, 각각 동일한 제1 정보를 나타내는 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 생성하는 수단과, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 인코딩하는 수단을 포함하며, 상기 영숫자 표현을 생성하는 수단은, 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 위치가 그 인코딩된 제2 정보를 나타내도록, 상기 인코딩된 제2 정보에 기초하여 상기 바코드의 상기 영숫자 표현을 생성하기 위해 구성된다.
본 발명의 다른 실시형태는 바코드로 된 정보를 디코딩하는 장치를 제공하고, 상기 장치는, 바코드 판독 장치를 이용하여, 각각 동일한 제1 정보를 나타내는 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 판독하는 수단과, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 검출하는 수단을 포함한다.
본 발명과 함께, 다른 목적 및 추가 특징을 보다 완벽하게 이해하기 위해서, 이하의 예시적인 도면과 함께 본 발명에 대한 이하의 상세한 설명을 참조한다.
도 1a는 예시적인 바코드의 일부의 확대도이다.
도 1b는 본 발명의 양태에 따른 예시적인 바코드의 일부의 확대도이다.
도 2는 본 발명의 양태에 따라 이용되는 예시적인 시스템을 나타내는 도면이다.
도 3은 본 발명의 실시형태에 따른 프로세스를 수행하기 위한 예시적인 환경을 도시하는 도면이다.
도 4와 도 5는 본 발명의 양태를 수행하기 위한 예시적인 흐름도이다.
도면 전체에 있어서 본 발명의 동일한 또는 동류의 부분에는 같은 도면부호를 표시한다.
도 1a는 본 발명의 양태에 따른 예시적인 바코드의 일부의 확대도를 나타낸다. 도 1a는 바코드(10)의 일부를 도시하고, 3개의 바(20)의 단부와 바코드(10)와 연관된 영숫자 표현의 하나의 문자(30)를 보여준다. 바코드(10)는 제1 정보를 나타내는데, 바코드(10)는 동일한 제1 정보를 나타내는 영숫자 표현에 연관되어 있다. 본 케이스에 있어서, 도 1a에 도시되는 영숫자 표현의 문자(30)는 문자 "0"이다. 그러나, 이것은 예시적 목적일 뿐이며, 당업자라면 이하의 설명에서 기술하는 원리가 문자 "0" 대신에 임의의 영숫자 문자에도 적용되는 것을 즉각 인지할 것이다. 도 1a로부터 분명한 것은, 영숫자 표현의 문자(30)의 좌측단, 즉 영숫자 표현의 흐름 방향에 있어서의 끝은 바코드(10)의 바의 집합의 극좌측 상에 위치한 바의 좌측단과 축(A)(점선으로 표시)을 따라 정렬되어 있다는 점이다. 따라서, 영숫자 표현의 문자(30)의 좌측단과 바코드(10)의 바(20) 집합의 좌측단 사이에서 축(A)에 수직인 축을 따라 측정된 거리(d)는 0과 같다. 이 상태는 바코드의 바 집합에 대한 바코드의 영숫자 표현의 문자의 표준 배열에 해당한다.
도 1b는 본 발명의 양태에 따른 예시적인 바코드의 일부의 확대도이다. 도 1b에 나타낸 구성은, 영숫자 표현의 문자(30')가 바코드(10)의 바(20)의 집합의 극좌측 상에 위치한 바의 좌측단에 의해 규정된 축(A)으로부터 거리(d)만큼 오프셋되어 있는 점을 제외하면 도 1a의 구성에 해당한다. 이에, 영숫자 표현과 연관되며, 바코드(10)의 바 집합 내에 인코딩되어 있는 제1 정보와, 바코드의 요소에 대한 영숫자 표현의 문자(30')의 위치에 관한 제2 정보도 규정할 수 있다. 이 제2 정보가 식별자에 인코딩될 수 있다.
따라서, 도 1a에 도시한 상태와 비교하면, 바코드의 영숫자 표현은 바코드의 요소에 대한 영숫자 표현의 문자(30')의 위치가 제2 정보를 나타내도록 변형된다. 본 발명의 이 실시형태에 따른 바코드의 영숫자 표현의 이 "은폐된" 변형은, 맨눈으로 보이지 않고 그렇기 때문에 위조범에 의해 쉽게 인식될 수 없다는 점에서 장점을 제공한다. 그 결과, 상품의 바코드를 위조하려고 시도할 때에, 위조범은 영숫자 표현의 제1 표현만 고려하여, 이 제1 정보만 인코딩한 위조 바코드를 생성하게 된다. 그러나, 이 위조된 바코드에서는 참조 위치에 대해 오프셋되어 있는 일부 문자에 의해 영숫자 표현을 변형하지 않았기 때문에, 이 위조 바코드는 제2 정보를 포함하지 않게 된다. 이 영숫자 표현의 변형을 검출함으로써, 바코드와, 그 바코드가 부착된 상품의 진위(authenticity)에 관한 정보를 취득할 수 있다. 본 발명 및 이에 연관된 장점에 대해서는 다음의 설명에서 더욱 상세하게 기술하기로 한다.
위조 방지 및/또는 변조 방지 해결책으로서 본 발명의 일 실시형태에 따른 바코드로 정보를 인코딩하는 방법의 효과는 바코드의 이미지 데이터를 출력하는 장치의 출력 해상도에 결부된다. 출력 장치로서 프린터의 경우에, 위조 방지 및/또는 변조 방지 해결책으로서 본 발명의 일 실시형태에 따른 방법의 효과는 그러므로 프린터의 인쇄 해상도에 결부된다. 사실상, 참조 위치에 대한 영숫자 표현의 문자의 최소 검출 가능 변화는 프린터의 1 도트이다. 예컨대 300 dpi(dot-per-inch) 프린터의 경우에, 1 도트의 변화는 25.4/300 mm, 즉 84,66 마이크로미터의 거리에 해당한다. 2400 dpi 프린터의 경우에, 1 도트의 변화는 25.4/2400 mm, 즉 10,58 마이크로미터의 거리에 해당한다. 맨눈에 보이지 않게 하려면, 변형된 영숫자 표현의 문자의 총 변화는 1/10 밀리미터, 즉 100 마이크로미터를 초과해서는 안된다. 이것은, 300 dpi 프린터의 경우, 영숫자 표현의 한 문자에 대한 유일한 가능한 오프셋 거리가 1 도트뿐임을 의미한다. 그렇기 때문에, 바코드의 참조 요소에 대한 변형된 영숫자 표현의 그 문자의 이 오프셋 위치를 인코딩하기 위한 두가지 가능성, 즉 0 또는 1만 남는다. 600 dpi 프린터의 경우, 최소 변화는 25.4/600 mm, 즉 42,33 마이크로미터이므로, 오프셋 가능성은 0, 1 또는 2가 된다. 1200 dpi 프린터의 경우, 최소 변화가 25.4/1200 mm, 즉 21,17 마이크로미터이므로, 오프셋 가능성은 0, 1, 2, 3, 4가 된다. 마지막으로, 2400 dpi 프린터의 경우, 최소 변화가 25.4/2400 mm, 즉 10,58 마이크로미터이므로, 오프셋 가능성은 0, 1, 2, 3, 4, 5, 6, 7, 8이 된다.
따라서, 전술한 바와 같이, 본 발명의 바람직한 실시형태에 있어서, 영숫자 표현의 한 문자의 위치는 영숫자 표현의 한 문자의 참조 위치에 대해 일정 거리만큼 오프셋된다. 이 오프셋 거리는 바코드의 이미지 데이터를 바코드의 영숫자 표현으로 출력하는 장치, 예컨대 프린터의 출력 해상도에 기초한다. 본 발명의 바람직한 실시형태에 따르면, 상기 거리는 10 마이크로미터와 150 마이크로미터 사이에, 바람직하게는 10 마이크로미터와 100 마이크로미터 사이에 포함된다. 이에, 악의적인 위조범이 영숫자 표현의 오프셋 문자를 맨눈으로 인식할 수 없게 하는 것을 효과적으로 보장한다.
도 1b의 예시적인 도시는 본 발명의 바람직한 실시형태를 나타내는데, 바코드의 한 요소의 위치에 대한 영숫자 표현의 한 문자의 위치는, 바코드의 영숫자 표현에 연관되는 제1 정보에 부가하여, 제2 정보를 나타낸다. 바코드의 요소에 대한 영숫자 표현의 문자의 이 위치는 그 바코드의 평행한 선들에 본질적으로 수직인 축을 따른 수평 위치인 것이 바람직하다. 그러나, 당업자라면, 영숫자 표현의 문자의 참조용 수평 위치에 대한 영숫자 표현의 문자의 수평 위치를 도 1b에 상세하게 나타내고 이것이 본 발명의 바람직한 실시형태를 나타내더라도, 구체적으로 바코드의 참조 요소에 대한 영숫자 표현의 문자의 수직 위치 등의 다른 가능성도 기대할 수 있다는 것을 즉각 인지할 것이다. 전술한 바와 같이, 본 발명의 실시형태에 따른 중요한 일 양태는 바코드의 영숫자 표현의 변형이, 제1 정보에 부가하여 제2 정보를 인코딩하고, "은폐 상태"를 유지, 즉 맨눈으로 볼 수 없거나 적어도 위조범이 인식하기에 곤란하게 한다는 것이다.
도 1b가 하나의 문자, "0"만이 바코드의 한 요소에 대해 오프셋되어 있는 경우를 나타내더라도, 당업자라면, 바코드의 영숫자 표현이 복수의 문자를 포함하기 때문에, 본 발명의 지침이 바코드의 영숫자 표현 내의 하나의 문자에, 영숫자 표현의 복수의 문자에, 심지어 영숫자 표현의 모든 문자에 적용될 수 있다는 것을 즉각 인지할 것이다.
바코드의 적어도 하나의 요소에 대한 바코드의 영숫자 표현의 적어도 하나의 문자의 위치가, 영숫자 표현에 연관된 제1 정보에 부가하여 제2 정보를 나타내는, 변형된 영숫자 표현을 생성함으로써, 위조 방지 및/또는 변조 방지 수단으로서 이용될 수 있는 식별자가 규정될 수 있다. 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 이 제2 정보는 바코드의 영숫자 표현을 생성할 때에 이용되며, 영숫자 표현은, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치가 그 인코딩된 제2 정보를 나타내도록, 인코딩된 제2 정보에 기초하여 생성된다. 제1 및 제2 정보를 모두 포함하는 "변형된" 바코드를 판독하고, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 이 제2 정보를 검출함으로써, 판독된 바코드의 진위 여부를 결정하고, 그에 따라 그 바코드가 부착되어 있는 상품에 관한 진위 정보를 제공한다.
본 발명의 일 실시형태에 따르면, 검출된 제2 정보에 기초하여 코드가 도출된다. 예를 들어, 영숫자 표현에 n개의 문자가 있다고 가정하면, 1 비트가 각 문자에 연관될 수 있는데, "0" 은 특정 문자의 오프셋 없음이 검출된 것을, "1"은 오프셋이 검출된 것을 의미한다. 이에, n 비트로 된 코드가 취득된다. 이어서, 이 n 비트 코드는 식별자에 대한 참조 코드와 비교되고, 그 비교 결과에 기초하여 식별자의 진위에 관한 정보가 도출된다. 기대된 참조 코드와의 단순한 비교 대신에, 취득된 코드에 대해 수학적 연산이 수행된 다음에, 기대 결과와 비교될 수도 있다. 일례로서, n 비트 코드의 m(m은 1과 n 사이에 포함된 정수)개의 첫번째 비트의 합(sum) 모듈로(modulo) 4가 계산되어 기대 결과와 비교될 수 있는데, 예컨대 합 모듈로 4는 맨마지막 2 비트이다. 따라서, 수학 규칙을 정의한 후에, 바코드에 대한 영숫자 표현의 문자의 위치에 관한 검출된 제2 정보로부터 도출된 코드가 이 수학 규칙을 충족시키는지의 여부를 체크한다. 코드가 이 규칙을 충족시키는 경우, 식별자는 진짜인 것으로 간주된다.
도 2는 본 명세서에서 설명하는 실시형태에 따라 이용되는 예시적인 시스템이다. 전체에 걸쳐 표시하는 컴퓨터 시스템(102)을 포함하는 시스템(100)이 개괄적으로 도시되어 있다. 컴퓨터 시스템(102)은 스탠드얼론 장치로서 동작할 수도 있고 또는 다른 시스템 또는 주변 장치에 접속될 수도 있다. 예를 들어, 컴퓨터 시스템(102)은 임의의 하나 이상의 컴퓨터, 서버, 시스템, 통신 네트워크 또는 클라우드 환경을 포함할 수도 또는 거기에 포함될 수도 있다. 컴퓨터 시스템(102)은 네트워크 환경에서 서버의 자격으로 또는 네트워크 환경에서 클라이언트 사용자 컴퓨터의 자격으로 동작할 수도 있다. 컴퓨터 시스템(102) 또는 그 부분은, 퍼스널 컴퓨터, 태블릿 컴퓨터, 셋톱 박스, 개인용 디지털 장치(personal digital assistant), 모바일 장치, 팜탑 컴퓨터, 랩탑 컴퓨터, 데스크탑 컴퓨터, 통신 장치, 무선 전화기, 개인 인증 장치(personal trusted device), 웹 어플라이언스, 또는 장치가 행해야 할 액션을 지정하는 (순차적 또는 다른 방식의)명령어 세트를 실행할 수 있는 기타 머신으로서 구현되거나, 그 안에 내장될 수도 있다. 또한, 단일 컴퓨터 시스템(102)을 도시하고 있지만, 추가 실시형태는 명령어들을 개별적으로 또는 함께 실행하거나 기능을 수행하는 시스템 또는 서브시스템의 임의의 집합을 포함할 수도 있다.
도 2에 도시하는 바와 같이, 컴퓨터 시스템(102)은 예컨대 중앙처리장치, 그래픽스 처리 유닛, 또는 둘다 등의 적어도 하나의 프로세서(104)를 포함할 수 있다. 컴퓨터 시스템(102)은 또한 컴퓨터 메모리(106)를 포함할 수 있다. 컴퓨터 메모리(106)는 스태틱 메모리, 다이나믹 메모리 또는 둘다를 포함할 수 있다. 컴퓨터 메모리(106)는 추가적으로 또는 대안적으로 하드 디스크, 랜덤 액세스 메모리, 캐쉬, 또는 이들의 임의의 조합을 포함할 수도 있다. 물론 당업자라면, 컴퓨터 메모리(106)가 단일 스토리지 또는 알려진 메모리들의 임의의 조합을 포함할 수도 있음을 이해할 것이다.
도 2에 도시하는 바와 같이, 컴퓨터 시스템(102)은 액정 디스플레이, 유기 발광 다이오드, 플랫 패널 디스플레이, 솔리드 스테이트 디스플레이, 음극선관, 플라스마 디스플레이, 또는 기타 알려진 디스플레이 등의 컴퓨터 디스플레이(108)를 포함할 수 있다. 컴퓨터 시스템(102)은 키보드, 무선 키패드를 구비한 원격 제어 장치, 음성 인식 엔진에 연결된 마이크, 비디오 카메라나 정지 카메라 등의 카메라, 커서 제어 장치, 또는 이들의 임의의 조합 등의 적어도 하나의 컴퓨터 입력 장치(110)를 포함할 수 있다. 당업자라면 컴퓨터 시스템(102)의 다양한 실시형태가 다수의 입력 장치(110)를 포함할 수 있음을 이해할 것이다. 또한, 당업자라면 앞서 나열한 예시적인 입력 장치(110)가 총망라된 것이 아니며 컴퓨터 시스템(102)이 임의의 추가 또는 대안적 입력 장치(110)를 포함할 수도 있음을 이해할 것이다.
컴퓨터 시스템(102)은 또한 매체 판독기(112) 및 네트워크 인터페이스(114)를 포함할 수 있다. 또한, 컴퓨터 시스템(102)은 출력 장치(116) 등, 그러나 이것에 한정되지 않는 컴퓨터 시스템과 함께 또는 그 내부에 포함되는 것으로 일반적으로 알려져 있는 임의의 추가 장치, 컴포넌트, 부품, 주변장치, 하드웨어, 소프트웨어, 또는 이들의 임의의 조합을 포함할 수도 있다. 출력 장치(116)는 스피커, 오디오 아웃, 비디오 아웃, 원격 제어 아웃, 또는 이들의 임의의 조합일 수 있으나, 이들에 한정되지는 않는다.
컴퓨터 시스템(102)의 구성요소 각각은 버스(118)를 통해 상호접속 및 연결될 수 있다. 도 2에 도시하는 바와 같이, 구성요소들은 각각 인터넷 버스를 통해 상호접속 및 연결될 수 있다. 그러나, 당업자라면 구성요소 중 임의의 것은 확장 버스를 통해 접속될 수도 있음을 이해할 것이다. 또한, 버스(118)는 PCI(peripheral component interconnect), PCT 익스프레스, 병렬 ATA(advanced technology attachment), 직렬 ATA 등, 그러나 이에 한정되지 않는 일반적으로 알려져 있는 임의의 표준 또는 기타 사양을 통해 통신을 가능하게 할 수 있다.
컴퓨터 시스템(102)은 네트워크(122)를 통해 하나 이상의 추가 컴퓨터 장치(120)와 통신할 수 있다. 네트워크(122)는 근거리 네트워크(LAN), 원거리 네트워크(WAN), 인터넷, 전화망, 또는 해당 기술분야에 일반적으로 알려져 있는 기타 네트워크일 수 있으나, 이에 한정되지는 않는다. 네트워크(122)가 도 1에는 무선 네트워크로서 도시되어 있다. 그러나, 당업자라면 네트워크(122)가 유선 네트워크일 수도 있음을 이해할 것이다.
추가 컴퓨터 장치(120)가 도 2에는 퍼스널 컴퓨터로서 도시되어 있다. 그러나, 당업자라면 본 출원의 대안적 실시형태에서는, 그 장치(120)가 랩탑 컴퓨터, 태블릿 PC, 개인용 디지털 장치(personal digital assistant), 모바일 장치, 팜탑 컴퓨터, 데스크탑 컴퓨터, 통신 장치, 무선 전화기, 개인 인증 장치(personal trusted device), 웹 어플라이언스, 또는 장치가 행해야 할 액션을 지정하는, 순차적 또는 다른 방식의 명령어 세트를 실행할 수 있는 기타 머신일 수도 있음이 이해할 것이다. 물론, 당업자라면, 앞서 나열한 장치들이 단지 예시적인 장치일 뿐이며, 그 장치(120)가 본 출원의 범위에서 벗어나는 일없이 해당 기술분야에 일반적으로 알려져 있는 임의의 추가 장치 또는 기기일 수도 있음을 이해할 것이다. 또한, 당업자라면 마찬가지로 그 장치가 장치들 및 기기들의 임의의 조합일 수도 있음을 이해할 것이다.
물론, 당업자라면, 앞서 나열한 컴퓨터 시스템(102)의 구성요소들이 예시적인 것뿐이며 총망라된 것 및/또는 포괄적인 것으로 의도되지 않음을 이해할 것이다. 더욱이, 앞서 나열한 구성요소의 예도 예시적일뿐이며 마찬가지로 총망라된 것 및/또는 포괄적인 것으로 의도되지 않음을 이해할 것이다. 당업자라면 이해하겠지만, 본 발명은 시스템, 방법 및 컴퓨터 프로그램 제품으로서 구체화될 수 있다. 따라서, 본 발명은 전적으로 하드웨어 실시형태, 전적으로 소프트웨어 실시형태(펌웨어, 상주 소프트웨어, 마이크로 코드 등을 포함), 또는 소프트웨어 및 하드웨어 양태를 조합한 실시형태의 형태를 취할 수 있다. 더욱이, 본 발명은 매체에 임베디드된 컴퓨터 이용 가능한 프로그램 코드를 갖는 임의의 유형적인 표현 매체로 임베디드된 컴퓨터 프로그램 제품의 형태를 취할 수 있다.
하나 이상의 컴퓨터 판독 가능한 매체의 임의의 조합이 이용될 수 있다. 컴퓨터 판독 가능한 매체는 예컨대 전자, 자기, 광, 전자기, 적외선, 또는 반도체 시스템, 기기, 장치 또는 전파 매체(propagation medium)일 수 있으나, 이들에 한정되지는 않는다. 컴퓨터 판독 가능한 매체의 보다 구체적인 예(전체를 망라하지 않은 리스트)는, 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(RAM), 리드 온리 메모리(ROM), 소거 가능한 프로그래머블 리드 온리 메모리(EPROM 또는 플래시 메모리), 휴대용 컴팩트 디스크 리드 온리 메모리(CDROM), 광저장 장치, 인터넷 또는 인트라넷을 지원하는 것과 같은 전송 매체, 자기 저장 장치, USB(Universal Serial Bus) 키, 및/또는 인증서(certificate) 중 적어도 하나를 포함한다.
본 출원과 관련해서, 컴퓨터 판독 가능한 매체는 명령어 실행 시스템, 기기 또는 장치에 의해 이용되도록 또는 이들과 접속하여 프로그램을 내장, 저장, 통신, 전파 또는 전송할 수 있는 임의의 매체일 수도 있다. 컴퓨터 판독 가능한 매체는 베이스밴드로 또는 반송파의 일부로서, 임베디드되어 있는 컴퓨터 판독 가능한 프로그램 코드와 함께 전파 데이터 신호를 포함할 수 있다. 컴퓨터 이용 가능한 프로그램 코드는 무선, 유선, 광파이버 케이블, RF 등을 포함하나 이에 한정되지 않는 임의의 적절한 매체를 이용하여 전송될 수 있다.
본 발명의 동작을 수행하기 위한 컴퓨터 프로그램 코드는 Java, Smalltalk, C++ 등의 객제 지향 프로그래밍 언어, "C" 프로그래밍 언어나 유사한 프로그래밍 언어 등의 통상의 절차적 프로그래밍 언어를 비롯한 하나 이상의 프로그래밍 언어의 임의의 조합으로 작성될 수 있다. 프로그램 코드는 전적으로 사용자의 컴퓨터 상에서, 부분적으로 사용자의 컴퓨터 상에서, 스탠드얼론 소프트웨어 패키지로서, 부분적으로 사용자의 컴퓨터 상에서 그리고 부분적으로 원격 컴퓨터 상에서 또는 전적으로 원격 컴퓨터나 서버 상에서 실행될 수 있다. 후자의 시나리오에서는, 원격 컴퓨터가 임의 타입의 네트워크를 통해 사용자의 컴퓨터에 접속될 수 있다. 이것은 예를 들어 근거리 네트워크(LAN)나 원거리 네트워크(WAN)를 포함할 수 있거나, 그 접속이 (예컨대, 인터넷 서비스 제공업자를 이용한 인터넷을 통해) 외부 컴퓨터에서 이루어질 수도 있다. 부가적으로, 실시형태에 있어서, 본 발명은 필드 프로그래머블 게이트 어레이(field programmable gate array, FPGA) 내에 임베디드될 수도 있다.
도 3은 본 발명의 실시형태에 따른 프로세스를 실행하기 위한 예시적인 환경(300)을 도시한다. 도시하는 환경(300)은 본 명세서에서 설명하는 프로세스를 수행할 수 있는 컴퓨팅 시스템(305)을 포함한다. 구체적으로, 컴퓨팅 시스템(305)은 네트워크 하부구조 상에 상주할 수 있는 컴퓨팅 장치(310) 또는 제3자 서비스 공급자의 컴퓨팅 장치를 포함할 수 있다.
본 발명의 일 실시형태에 따르면, 컴퓨팅 장치(310)는 프로세서(320), 메모리(325A), 입출력(I/O) 인터페이스(330), 및 버스(326)를 포함한다. 메모리(325A)는 프로그램 코드의 실제 실행 시에 채용되는 로컬 메모리, 벌크 스토리지, 및 실행 시에 벌크 메모리로부터 코드를 검색해야 하는 횟수를 줄이기 위해 적어도 일부 프로그램 코드의 임시 스토리지를 제공하는 캐쉬 메모리를 포함할 수 있다. 또한, 컴퓨팅 장치는 랜덤 액세스 메모리(RAM), 리드 온리 메모리(ROM), 및 운영체제(O/S)를 포함한다.
컴퓨팅 장치(310)는 외부 I/O 장치(335) 및 저장 시스템(325B)과 통신한다. 예를 들어, I/O 장치(335)는 개인이 컴퓨팅 장치(310)와 상호작용하는 것을 가능하게 하는 임의의 장치, 또는 컴퓨팅 장치(310)가 임의 타입의 통신 링크를 이용하여 하나 이상의 다른 컴퓨팅 장치와 통신하는 것을 가능하게 하는 임의의 장치를 포함할 수도 있다. 외부 I/O 장치(335)는 예를 들어 핸드헬드 장치, PDA, 헤드셋, 키보드, 스마트폰 등일 수 있다.
부가적으로, 본 발명의 실시형태에 따르면, 환경(300)은 I/O 인터페이스(330)에 접속되어 바코드를 판독하기 위한 바코드 판독기(375)를 포함한다. 컴퓨팅 장치(310)는 제1 정보 검출 유닛(350)과 제2 정보 검출 유닛(355)을 더 포함한다. 제1 정보 검출 유닛(350)은 환경(300)의 바코드 판독기(350)가 판독한 바코드로부터 코드를 취득하도록 구성되어 있다. 제2 정보 검출 유닛(355)은 판독된 바코드의 적어도 하나의 요소에 대한, 그 판독 바코드와 연관된 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 검출하도록 구성되어 있다.
컴퓨팅 장치(310)는 식별자 코드 생성 유닛(360)과 식별자 코드 비교 유닛(365)을 더 포함한다. 식별자 코드 생성 유닛(360)은 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 검출된 제2 정보에 기초하여 식별자 코드를 도출하도록 구성되어 있다. 식별자 코드 비교 유닛(365)은 도출된 식별자 코드와 식별자에 대해 기대되는 참조 식별자 코드를 비교하도록 구성되어 있다.
일반적으로, 프로세서(320)는 메모리(325A) 및/또는 스토리지 시스템(325B)에 저장될 수 있는 컴퓨터 프로그램 코드(예, 프로그램 컨트롤(340))를 실행한다. 또한, 본 발명의 양태에 따르면, 프로그램 코드를 갖는 프로그램 컨트롤(340)은 제1 정보 검출 유닛(350), 제2 정보 검출 유닛(355), 식별자 코드 생성 유닛(360) 및 식별자 코드 비교 유닛(365)을 제어한다. 컴퓨터 프로그램 코드를 실행하면서, 프로세서(320)는 메모리(325A), 스토리지 시스템(325B) 및/또는 I/O 인터페이스(330)에 대해 데이터를 판독 및/또는 기록할 수 있다. 프로그램 코드는 본 발명의 프로세스를 실행한다. 버스(326)는 컴퓨팅 장치(310) 내의 구성요소 각각 간의 통신 링크를 제공한다. 본 발명의 일 실시형태에 따르면, 프로그램 컨트롤(340)은 제2 정보 검출 유닛(355)이 판독한 제2 정보에 기초하여 바코드 판독기(375)에 의해 판독된 바코드의 진위에 관한 정보를 도출하도록 구성되어 있다. 본 발명의 추가 실시형태에 따르면, 판독된 바코드 코드의 진위에 관한 정보는 식별자 코드 비교 유닛(365)에 의해 출력되는 비교 출력으로부터 취득될 수도 있다.
컴퓨팅 장치(310)는 (예컨대 퍼스널 컴퓨터, 서버 등에)설치된 컴퓨터 프로그램 코드를 실행할 수 있는 임의의 범용 컴퓨팅 제조품을 포함할 수 있다. 그러나, 컴퓨팅 장치(310)는 본 명세서에서 설명하는 프로세스를 수행할 수 있는 각종의 가능한 동류의 컴퓨팅 장치를 나타내는 것일 뿐임을 이해해야 한다. 이 점에서, 실시형태에서는, 컴퓨팅 장치(310)에 의해 제공되는 기능성이 범용 및/또는 전용 하드웨어 및/또는 컴퓨터 프로그램 코드의 임의의 조합을 포함하는 컴퓨팅 제조품에 의해 구현될 수 있다. 각 실시형태에 있어서, 프로그램 코드와 하드웨어는 표준 프로그래밍 및 엔지니어링 기술을 이용하여 각각 작성될 수 있다.
마찬가지로, 컴퓨팅 하부구조(305)는 본 발명을 구현하기 위한 다양한 종류의 컴퓨터 하부구조를 예시한 것일 뿐이다. 예를 들어, 실시형태에 있어서, 컴퓨팅 시스템(305)은 네트워크, 공유 메모리 등의 임의 타입의 통신 링크를 통해 통신하여 본 명세서에서 설명하는 프로세스를 수행하는 2개 이상의 컴퓨팅 장치(예, 서버 클러스터)를 포함한다. 또, 본 명세서에서 설명하는 프로세스를 수행하면서, 컴퓨팅 시스템(305) 상의 하나 이상의 컴퓨팅 장치는 임의 타입의 통신 링크를 이용하여 컴퓨팅 시스템(305) 외부에 있는 하나 이상의 컴퓨팅 장치와 통신할 수 있다. 통신 링크는 유선 및/또는 무선 링크의 임의의 조합, 하나 이상 타입의 네트워크(예, 인터넷, WAN, LAN, 가상 사설 네트워크(virtual private network, VAN 등))의 임의의 조합을 포함할 수 있고/있거나 전송 기술 및 프로토콜의 임의의 조합을 이용할 수 있다.
도 4와 도 5는 본 발명의 양태를 수행하기 위한 예시적인 흐름도이다. 도 4와 도 5의 단계들은 예컨대 도 3의 환경에서 구현될 수 있다. 도 4 및 도 5의 흐름도 및/또는 블록도는 본 발명의 다양한 실시형태에 따른 시스템, 방법, 및 컴퓨터 프로그램 제품의 가능한 구현의 아키텍쳐, 기능성 및 동작을 나타내고 있다. 이 점에 있어서, 흐름도 또는 블록도의 각각의 블록은 지정된 논리적 기능을 구현하기 위한 하나 이상의 실행 가능한 명령어를 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한, 일부 대안적 실시형태에 있어서, 블록에 나타내는 기능은 도면에 나타내는 순서에서 벗어나 발생할 수도 있음에 주의해야 한다. 예를 들어, 연속으로 나타내는 2개 블록은 사실상, 실질적으로 동시에 실행될 수도 있고, 또는 수반되는 기능성에 따라, 그 블록들이 때때로 역순으로 실행될 수도 있다. 각 흐름도의 각각의 블록 및 흐름도의 조합은 전술한 바와 같이, 지정된 기능 또는 단계(act)를 수행하는 특수용 하드웨어 기반 시스템, 또는 특수용 하드웨어 및 컴퓨터 명령어 및/또는 소프트웨어의 조합에 의해 구현될 수도 있다. 또한, 흐름도의 단계들은 클라이언트 서버 관계에서 어느쪽 서버로부터 구현되어 실행될 수도 있고, 사용자 워크스테이션에 전달된 작동 정보로 사용자 워크스테이션 상에서 실행될 수도 있다. 일 실시형태에 있어서, 소프트웨어 요소는 펌웨어, 상주 소프트웨어, 마이크로코드 등을 포함한다.
도 4는 본 발명의 일 실시형태에 따른 바코드로 정보를 인코딩하기 위한 예시적인 흐름(400)을 나타낸다. 단계 405에서, 제1 정보를 나타내는 영숫자 표현이 인코딩된다. 단계 410에서, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 정보가 인코딩된다. 단계 415에서, 인코딩된 영숫자 표현과 동일한 제1 정보를 바 집합으로서 나타내는 바코드 형태의 식별자가 생성된다. 단계 415에서 생성되는 바코드의 영숫자 표현은, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치가 그 인코딩된 제2 정보를 나타내도록, 단계 410에서 인코딩된 제2 정보에 기초하여 생성된다.
도 5는 본 발명의 일 실시형태에 따른 바코드 형태의 식별자에서 정보를 디코딩하기 위한 예시적인 흐름(500)을 나타낸다. 단계 505에서, 바코드 형태의 식별자가 예컨대 도 3에 도시한 환경(300)의 바코드 판독기(375)를 이용하여 판독된다. 단계 510에서, 판독된 바코드로부터 제1 정보가 검출된다. 단계 515에서, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보가 검출된다. 단계 520에서, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 검출된 제2 정보에 기초하여 식별자 코드가 도출된다. 단계 525에서, 도출된 식별자 코드가, 판독된 식별자에 대해 저장된 참조 식별자 코드와 비교된다. 단계 530에서, 도출된 식별자 코드가, 저장된 참조 식별자 코드와 일치하는지의 여부가 판정된다. 도출된 식별자 코드가 저장된 참조 식별자 코드와 일치하면, 프로세스는 바코드 형태의 식별자가 진짜인 것으로 판정되는 단계 535로 이행한다. 도출된 식별자 코드가 저장된 참조 식별자 코드와 일치하지 않으면, 프로세스는 바코드 형태의 식별자가 가짜인 것으로 판정되는 단계 540으로 이행한다. 대안적으로, 이미 전술한 바와 같이, 식별자가 진짜로 간주되기 위해서, 단순한 비교 프로세스 대신에, 식별자 코드가 충족되어야 하는 수학 규칙으로 대체될 수도 있다.
본 발명의 다른 실시형태에 있어서, 다음의 물품(item) 중 적어도 하나가 본 발명의 일 양태에 따른 식별자를 포함할 수 있는데, 라벨, 카트리지, 식료품을 담은 컨테이너 또는 캡슐, 음료수, 영양보조식품(nutraceuticals) 또는 의약품, 은행권(banknote), 신용카드, 실(thread), 우표, 세금 라벨, 위조 방지 시일(seal), 보안 문서, 여권, 신분증, 운전 면허증, 출입 카드, 운송장, 이벤트 티켓, 증빙서(voucher), 잉크 전사 필름, 반사 필름, 알루미늄 포일, 및 상품, 캡슐, 코르크, 복권, 담배나 의약품 포장 등의 패키징 등이며, 이 리스트가 총 망라된 것은 아니다.
특정 실시형태를 참조하여 본 발명에 대해 설명하였지만, 당업자라면 다양한 변형이 이루어질 수 있는 것과, 본 발명의 실제 사상 및 범주에서 벗어나는 일 없이 그 요소들에 대해 동류가 대체될 수도 있음을 이해할 것이다. 또한, 본 발명의 본질적 지침에서 벗어나는 일 없이 변형이 이루어질 수도 있다.

Claims (18)

  1. 각각 동일한 제1 정보를 나타내는, 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자에 있어서,
    바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치가 제2 정보를 나타내는 것을 특징으로 하는 식별자.
  2. 청구항 1에 있어서, 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 위치는 상기 바코드의 평행한 선들에 본질적으로 수직인 축을 따른 수평 위치인 것인 식별자.
  3. 청구항 2에 있어서, 영숫자 표현의 상기 적어도 하나의 문자의 수평 위치는 영숫자 표현의 상기 적어도 하나의 문자의 참조용 수평 위치에 대해 일정 거리만큼 오프셋되는 것인 식별자.
  4. 청구항 3에 있어서, 상기 거리는 상기 바코드의 이미지 데이터와 상기 바코드의 영숫자 표현을 출력하는 장치의 출력 해상도에 기초하는 것인 식별자.
  5. 청구항 3 또는 4에 있어서, 상기 거리는 10 ㎛와 150 ㎛ 사이에, 바람직하게는 10 ㎛와 100 ㎛ 사이에 포함되는 것인 식별자.
  6. 청구항 1 내지 5 중 한 항에 있어서, 상기 식별자는 바코드 또는 2차원 코드인 것인 식별자.
  7. 정보를 인코딩하는 방법으로서, 각각 동일한 제1 정보를 나타내는, 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 생성하는 단계를 포함하는 정보 인코딩 방법으로서,
    바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 인코딩하는 단계를 포함하며,
    상기 영숫자 표현은, 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 위치가 그 인코딩된 제2 정보를 나타내도록, 상기 인코딩된 제2 정보에 기초하여 생성되는 것을 특징으로 하는 정보 인코딩 방법.
  8. 청구항 7에 있어서, 상기 인코딩된 제2 정보는, 상기 바코드의 평행한 선들에 본질적으로 수직인 축을 따른 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 수평 위치에 관한 정보인 것인 정보 인코딩 방법.
  9. 청구항 8에 있어서, 상기 인코딩된 제2 정보는, 영숫자 표현의 상기 적어도 하나의 문자의 수평 위치가 영숫자 표현의 상기 적어도 하나의 문자의 참조용 수평 위치에 대해 오프셋된 거리에 관한 정보인 것인 정보 인코딩 방법.
  10. 청구항 7 내지 9 중 어느 한 항에 있어서,
    생성된 바코드의 이미지 데이터와 상기 바코드의 영숫자 표현을 생성하는 단계와,
    상기 이미지 데이터를 출력하는 단계
    를 더 포함하는 정보 인코딩 방법.
  11. 청구항 10에 있어서, 상기 이미지 데이터를 출력하는 단계는,
    생성된 이미지 데이터를 라벨 상에 인쇄하는 단계와,
    생성된 이미지 데이터를 디스플레이 스크린 상에 표시하는 단계
    중 적어도 하나의 단계를 포함하는 것인 정보 인코딩 방법.
  12. 정보를 디코딩하는 방법으로서, 바코드 판독 장치를 이용하여, 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 판독하는 단계를 포함하고, 상기 바코드 및 그것의 연관된 영숫자 표현은 각각 동일한 제1 정보를 나타내는 것인 정보 디코딩 방법으로서,
    바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 검출하는 단계를 포함하는 것을 특징으로 하는 정보 디코딩 방법.
  13. 청구항 12에 있어서,
    검출된 제2 정보에 기초하여 코드를 도출하는 단계와,
    도출된 코드를 상기 식별자에 대한 참조 코드와 비교하는 단계와,
    비교 결과에 기초하여 상기 식별자의 진위(authenticity)에 관한 정보를 도출하는 단계
    를 더 포함하는 정보 디코딩 방법.
  14. 명령어들을 저장하는 컴퓨터 판독 가능한 매체로서, 상기 명령어들은 컴퓨터 장치의 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
    각각 동일한 제1 정보를 나타내는, 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 생성하는 단계를 실행하게 하는 것인 컴퓨터 판독 가능한 매체로서,
    상기 프로세서로 하여금, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 인코딩하는 단계를 실행하게 하며,
    상기 영숫자 표현은, 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 위치가 그 인코딩된 제2 정보를 나타내도록, 상기 인코딩된 제2 정보에 기초하여 생성되는 것을 특징으로 하는 컴퓨터 판독 가능한 매체.
  15. 명령어들을 저장하는 컴퓨터 판독 가능한 매체로서, 상기 명령어들은 컴퓨터 장치의 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
    바코드 판독 장치를 이용하여, 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 판독하는 단계를 실행하게 하고, 상기 바코드 및 그것의 연관된 영숫자 표현은 각각 동일한 제1 정보를 나타내는 것인 컴퓨터 판독 가능한 매체로서,
    상기 프로세서로 하여금, 바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 검출하는 단계를 실행하게 하는 것을 특징으로 하는 컴퓨터 판독 가능한 매체.
  16. 청구항 1 내지 6 중 어느 한 항에 기재된 식별자를 포함하는 물품.
  17. 바코드로 정보를 인코딩하는 장치로서, 각각 동일한 제1 정보를 나타내는, 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 생성하는 수단을 포함하는 정보 인코딩 장치로서,
    바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 인코딩하는 수단을 포함하고,
    상기 영숫자 표현을 생성하는 수단은, 바코드의 상기 적어도 하나의 요소에 대한 영숫자 표현의 상기 적어도 하나의 문자의 위치가 그 인코딩된 제2 정보를 나타내도록, 상기 인코딩된 제2 정보에 기초하여 상기 바코드의 상기 영숫자 표현을 생성하도록 구성되는 것을 특징으로 하는 정보 인코딩 장치.
  18. 바코드로 된 정보를 디코딩하는 장치로서, 바코드 판독 장치를 이용하여, 바코드 및 그것의 연관된 영숫자 표현의 형태로 된 식별자를 판독하는 수단을 포함하고, 상기 바코드 및 그것의 연관된 영숫자 표현은 각각 동일한 제1 정보를 나타내는 것인 정보 디코딩 장치로서,
    바코드의 적어도 하나의 요소에 대한 영숫자 표현의 적어도 하나의 문자의 위치에 관한 제2 정보를 검출하는 수단을 포함하는 것을 특징으로 하는 정보 디코딩 장치.
KR1020157006906A 2012-09-03 2013-08-30 식별자 및 정보 인코딩 방법 KR20150052093A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP12006224.5 2012-09-03
EP12006224 2012-09-03
US201261702475P 2012-09-18 2012-09-18
US61/702,475 2012-09-18
PCT/EP2013/068015 WO2014033270A1 (en) 2012-09-03 2013-08-30 Identifier and method of encoding information

Publications (1)

Publication Number Publication Date
KR20150052093A true KR20150052093A (ko) 2015-05-13

Family

ID=47002480

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157006906A KR20150052093A (ko) 2012-09-03 2013-08-30 식별자 및 정보 인코딩 방법

Country Status (9)

Country Link
US (1) US9189673B2 (ko)
EP (1) EP2893496B1 (ko)
KR (1) KR20150052093A (ko)
AR (1) AR092407A1 (ko)
BR (1) BR112015004212A2 (ko)
MX (1) MX340040B (ko)
PH (1) PH12015500453A1 (ko)
RU (1) RU2015112140A (ko)
WO (1) WO2014033270A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190213604A1 (en) * 2014-02-13 2019-07-11 The Procter & Gamble Company Validated Article of Commerce
US10593007B1 (en) 2015-06-11 2020-03-17 Digimarc Corporation Methods and arrangements for configuring industrial inspection systems
US9922220B2 (en) 2015-06-11 2018-03-20 Digimarc Corporation Image block selection for efficient time-limited decoding
DE102016009834A1 (de) * 2016-08-15 2018-02-15 Dräger Safety AG & Co. KGaA Vorrichtung, Substanzmessgerät, Verfahren, Computerprogramm Kamera und Mobilfunkgerät zur Identifikation eines Substanzmessgerätes

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6688522B1 (en) * 1998-09-11 2004-02-10 L. V. Partners, L.P. Unique bar code
US6778683B1 (en) * 1999-12-08 2004-08-17 Federal Express Corporation Method and apparatus for reading and decoding information
JP2003182160A (ja) * 2001-12-20 2003-07-03 Ishida Co Ltd 商品情報印字装置および商品付票
US7025269B2 (en) * 2003-04-24 2006-04-11 Watson Label Products Corp. Barcodes including embedded security features and space saving interleaved text
US7264169B2 (en) * 2004-08-02 2007-09-04 Idx, Inc. Coaligned bar codes and validation means
GB0613360D0 (en) * 2006-07-05 2006-08-16 Iti Scotland Ltd Bar code authentication
WO2010114478A1 (en) * 2009-03-31 2010-10-07 Azimuth Intellectual Products Pte Ltd Apparatus and methods for analysing goods cartons

Also Published As

Publication number Publication date
BR112015004212A2 (pt) 2018-05-22
WO2014033270A1 (en) 2014-03-06
MX340040B (es) 2016-06-23
US20140064619A1 (en) 2014-03-06
EP2893496A1 (en) 2015-07-15
EP2893496B1 (en) 2018-08-01
MX2015002719A (es) 2015-05-15
US9189673B2 (en) 2015-11-17
AR092407A1 (es) 2015-04-22
RU2015112140A (ru) 2016-10-20
PH12015500453A1 (en) 2015-04-20

Similar Documents

Publication Publication Date Title
US20220050983A1 (en) Systems and methods for Physical Control Verification and Authentication Event Scan Logging
US10160251B1 (en) Digitally encoded seal for document verification
US10235618B2 (en) Authentication feature in a barcode
JP6214771B2 (ja) クロック同期型動的パスワード偽造防止ラベル合法性をリアルタイムで検証するシステムおよび方法
US10640273B2 (en) Authentication of packaged products
US11935223B2 (en) Mobile multi-feature product authentication
US8245927B2 (en) Method and system for deterring product counterfeiting, diversion and piracy
JP4783021B2 (ja) 無作為に生ずる特徴を備えた耐偽造性及び耐タンバ性ラベル
CN107016430B (zh) 真实性标签以及编码和验证的方法
US20060020803A1 (en) Systems and methods for authentication of items or documents
KR20150052093A (ko) 식별자 및 정보 인코딩 방법
KR101587501B1 (ko) 식별 코드 이미지를 이용한 객체 진위 여부 확인 방법 및 이를 실행하는 장치
CN105761091A (zh) 一种红包码二级二维码防伪编码方法
EP3069293A1 (en) System and method for printing a hidden and secure barcode
CN104751341A (zh) 基于二维码动态口令的商品防伪方法
Kumar et al. Use of Blockchain for Fake Product Detection
CN103426092A (zh) 面向食品安全的二维码验证方法
CN107451641A (zh) 一种二维码及其生成方法
CN105608583A (zh) 数字签名电子标签
Lehtonen et al. Features, identity, tracing, and cryptography in product authentication
Wu et al. An Innovative Method for Securing QR Codes against Counterfeits in Supply Chain Management
US10225432B2 (en) Facilitating authentication of a void pantograph
JP2015022314A (ja) 真贋判定システム、真贋判定方法、ログ管理サーバ、及び、プログラム
CN112840595B (zh) 用于将信息绑定至有形对象的系统和方法
Kailash et al. Scanmedic through e-governance

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid