KR20030036769A - 공유 데이터 정제 장치 및 공유 데이터 정제 방법 - Google Patents

공유 데이터 정제 장치 및 공유 데이터 정제 방법 Download PDF

Info

Publication number
KR20030036769A
KR20030036769A KR10-2003-7003476A KR20037003476A KR20030036769A KR 20030036769 A KR20030036769 A KR 20030036769A KR 20037003476 A KR20037003476 A KR 20037003476A KR 20030036769 A KR20030036769 A KR 20030036769A
Authority
KR
South Korea
Prior art keywords
block
data
stirring
purification
rule
Prior art date
Application number
KR10-2003-7003476A
Other languages
English (en)
Other versions
KR100517847B1 (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
Application filed by 미쓰비시덴키 가부시키가이샤, 독립행정법인통신총합연구소 filed Critical 미쓰비시덴키 가부시키가이샤
Publication of KR20030036769A publication Critical patent/KR20030036769A/ko
Application granted granted Critical
Publication of KR100517847B1 publication Critical patent/KR100517847B1/ko

Links

Classifications

    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography
    • H04L9/0858Details about key distillation or coding, e.g. reconciliation, error correction, privacy amplification, polarisation coding or phase coding
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/34Encoding or coding, e.g. Huffman coding or error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)
  • Storage Device Security (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Information Transfer Between Computers (AREA)
  • Numerical Control (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Selective Calling Equipment (AREA)

Abstract

가공유한 데이터를 정제용 블록과 일회용 블록으로 분할하여, 쌍방에서 정제용 블록을 해밍 거리 증폭 효과에 의해 교반하여 해밍 거리를 확대하고, 송신기(1)는 이 교반 데이터를 일회용 데이터로 버넘 암호로서 송신하고, 수신기(2)는 수신한 버넘 암호를 자신의 일회용 블록으로 복호화하여, 자신의 정제용 블록을 교반한 데이터와 해밍 거리를 비교하여, 공유할 수 있는지의 여부를 판정한다.

Description

공유 데이터 정제 장치 및 공유 데이터 정제 방법{SHARED DATA REFINING DEVICE AND SHARED DATA REFINING METHOD}
종래의 양자 암호의 오류 정정 방법은 예를 들면, "INTRODUCTION TO QUANTUM COMPUTATION AND INFORMATION"(EDITOR: Hoi-Kwong Lo, et al.)에 개시되어 있다. 양자 암호를 실현하기 위해서는 그 수순을 나타낸 프로토콜이 몇가지 제안되어 있는데, 그 중에서도 BB84 프로토콜이라고 하는 것이 현재 시점에서 양자 암호의 표준 프로토콜이라고 할 수 있다. 이 프로토콜은 그 후 노이즈가 있는 현실적인 통신로에서도 유효한 프로토콜로서 개량되었다. "Experimental Quantum Cryptography" (C.H.Bennett, F.Bessette, G.Brassard, L.Salvail and J.Smolin, J.Cryptology Vol.5, pp.3-28)에서 진술되어 있는 개량형 BB84 프로토콜은 크게 나눠 전반의 양자 통신로를 사용하고, 물리적으로 안전한 초기 데이터를 공유하는 수순과, 후반의 공중 회선(고전 통신로) 상에서 오류 정정 방법을 이용해서, 그 초기 데이터에 포함되는 오류를 정정하여, 정보 이론적으로 제3자에의 누설 정보량을 억제하는 수순의 2개의 부분으로 구성되어 있다. 전반의 양자 통신로를 이용해서 러프하게 데이터를 공유하는 부분은 본 발명과는 직접 관계가 없다. 또한, 이후에서는 BB84 프로토콜은 전부 이 개량형 BB84 프로토콜로 한다. 본건은 후반의 “오류를 정정하여, 정보 이론적으로 제3자에의 누설 정보량을 억제하는 수순”에 관한 것으로, 종래의 방법은 다음과 같이 설명 할 수 있다.
BB84 프로토콜의 전반부에 의해서 공유되는 데이터는 현상 1% 정도의 오류가 포함된다. 이것은 통신로에 생기는 열 잡음 등의 흔들림이나 반사광이라고 하는 장치의 정밀도 등에 기인하는 것이지만, 제3자가 개재하는 것도 오류의 원인이 된다. 양자 암호는 애당초 제3자에 의한 개입을 오류로서 검출할 수 있는 것이 그 최대의 특징이지만, 그것은 이상적인 상황하에서의 이야기이고, 상술한 바와 같이 자연발생적으로 생기는 오류율의 크기 정도로 섞여 들어간 누설인지, 그렇지 않으면 제3자에 의한 개입인지는 이 단계에서는 구별할 수 없다. 또한 러프하게 데이터를 공유하였다고 하더라도, 통상 1% 정도 오류가 있으면 시스템으로서는 성립하지 않는 경우가 많다. 예를 들어, 그것을 공통 키 암호에 있어서의 키 데이터로서 이용한다고 하면, 거기에 1 비트라도 오류가 있어서는 안된다는 것을 곧 알 수 있다. 그래서 도청자에게 될 수 있는 한 정보를 누설시키지 않고서 그 오류를 제거하고, 동시에 양자 통신 시에 누설된 정보를 버려, 안전한 데이터만을 공유하는 방법이 고안되었다. 그것이 오류 정정과 프라이버시 증폭이라고 불리는 수법이다.
오류 정정법의 원리는 간단하다. 우선 최초로 송신자와 수신자 사이에서 오류를 약간 포함한 공유 데이터가 있다고 한다. 이것을 몇개의 블록으로 나누고,그 블록마다 1 비트의 패리티를 비교한다. 이 때 공중 회선을 이용하기 때문에, 일반적인 가정으로서 도청자에게도 그 패리티 정보가 누설되는 것으로 생각된다. 따라서 정보 이론적인 누설 정보량, 이 경우에는 1 비트이지만, 그 결산결과를 맞추기 위해서, 현재 보유하고 있는 러프한 공유 데이터의 1 비트를 후에 버린다. 패리티가 합치한 블록은 거기서 일단 처리를 종료하고, 패리티가 맞지 않는 블록은 그 블록을 다시 2 분할하여 동일한 패리티 체크를 행하여, 오류가 있는 비트가 검출될 때까지 2 분기 탐색을 반복해서 행하고, 최종적으로 오류가 있는 비트를 수정한다. 이렇게 해서 2 분기 탐색에 이용한 패러티 비트 수 더하기 1개의 비트를 버리고, 남은 비트를 공유 정보의 후보로 한다. 후보라고 하는 것은 동일한 블록 중에 짝수개 오류가 있으면, 패리티가 일치하여 오류를 검출할 수 없기 때문에, 이러한 경우도 제거하기 위해서, 공유 데이터의 비트를 적당하게 치환하여, 동일한 처리를 처음부터 몇번씩 반복함으로써, 확실하게 잘못된 비트는 제거할 수 있다고 하는 것이다. 또한 프라이버시 증폭법은 상술의 오류 정정을 행하더라도, 또 극히 약간이지만, 우연한 도청자가 도청해도 오류로서 검출되지 않은 비트가 존재할 가능성이 있다. 그 부분 정보의 도청 가능성도 제거할 목적으로, 송수신자는 공유 정보에 대해서 해시를 취하여 그 해시값을 최종 공유 데이터로 하는 등하여, 더욱 안전성을 높이는 처리가 실시된다. 이것이 프라이버시 증폭법이라고 불리는 것이다.
이상의 종래의 방법에 있어서의 t-resilient 함수에 대해서 이하 설명한다.
f를 부울 함수로 Z_2^n -> Z_2(n > m) 인 것으로 한다.
여기서, Z_2는 Z2를 나타내고, 2^n은 2의 n승을 나타낸다.
f가 balanced(또는 equitable)라고 하는 것은 모든 m 비트 열 y에 대해서, f의 역상 f^{-1}(y)가 2^{n-m}개의 원을 갖는 것으로 정의된다.
이것은, y가 출력이고 입력 x를 무작위로 선택하였을 때 f(x)=y가 될 확률을 P(y)로 하면 모든 m 비트 열 y에 대해서 P(y)가 2^{-m}가 되는 것과 같은 값이다.
f에의 입력 x 중 t 비트는 고정되어 있다고 가정하면, 즉, 다음과 같다.
x_{i_1}=c_1, . . . . , x_{i_t}=c_t
여기서, x_{i_1}는 xi1을 나타내고, c_1은 c1을 나타낸다. x_{i_t}, c_t도 마찬가지다.
확률 P(y | x_{i_1}=c_1, . . . . , x_{i_t}=c_t)를
x_{i_1}=c_1, . . . . , x_{i_t}=c_t의 조건에 있어서 f(x)=y가 될 확률로 한다.
f가 correlation-immune of order t라고 하는 것은
모든 x, y, c_1, c_2, . . , c_t에 대해서
P(y | x_{i_1}=c_1, . . . . , x_{i_t}=c_t)=P(y)
가 되는 것으로 정의된다.
상기에 있어서, 예를 들면 2^{-m}은, 2-m을 의미한다.
직감적으로는 n 비트 열 x에 있어서 t개의 비트가 도청자에게 발각되어 있더라도 f를 작용시킴으로써 결국 도청자가 f(x)=y를 유추할 확률은 P(y)=2^{-m}가 되고, 이것은 아무것도 발각되어 있지 않은 경우와 동일한, 즉 확률이 2^{-m}가 되는 것이다. 이것은 엔트로피가, t개의 비트가 발각되어 있으려면, 없더라도 f를 작용시킴으로써 도청자로 보면 m 비트의 공유 키는 m 비트의 엔트로피(유추할 확률이 2^{-m})를 갖게 된다.
f가 t-resilient 함수라고 하는 것은
f가 balanced이고, correlation-immune of order t인 것으로 정의된다.
이것은, 모든 가능한 변수에 대해서
P(y | x_{i_1}=c_1, . . . . . x_{i_t}=c_t)=2^{-m}
되는 것과 같은 값이다.
직감적으로는, n 비트 열 x의 몇개의 비트(t 이하)가 발각되어 있더라도 f를 작용시켜, n 비트로부터 m 비트로 비트 길이를 짧게 한다.
이 때, x(n 비트 열)에 있어서는 몇개의 비트가 발각되어 있기 때문에 도청자로 보면 n 비트 열의 x를 유추할 확률은 2^{-n}보다도 작다. 즉 완전한 안전성이 달성되어 있지 않게 된다(n 비트의 열 x의 완전한 안전성은 x를 유추할 확률이 정확히 2^{-n}일 것).
한편, y=f(x)(m 비트 열)에 있어서는, 도청자가 유추할 확률은 정확히, 2^{-m}이다. 즉 m 비트의 엔트로피가 있다.
이상에서 t는 양자 통신에 있어서 오류에 섞여 Eve에 도청되더라도 상관없는 비트의 수의 최대라고 생각된다. 이 점에서, t의 값은 오류율에 의해 결정되어야된다.
따라서 m이 충분히 큰 것이 되도록 n을 결정하여 오류율에 따라 t를 결정하고, t-resilient 함수를 구성하여, 통신 프로토콜을 설계하면, 초기의 키 교환에 있어서 몇개의 비트가 도청자에게 누설되어 있더라도, t-resilient 함수를 이용함으로써, 완전한 안전성(직감적으로는 m을 시큐러티 파라미터로 하면, 도청자가 m 비트의 키를 유추할 확률이 정확히 2^{-m}가 되는 것)을 달성할 수 있다.
덧붙여서 말하면, t-resilient 함수의 구성 방법은 도청자에게 알려져 있더라도 상관없다. 즉 t-resilient 함수는 공개 정보이다.
이상의 종래의 방법에서는, t-resilient 함수를 작용시켜 안전성을 높인 것이지만, 그 t-resilient 함수의 구성 방법이 모든 경우에 있어서 존재하는 것이 아니고, 그것은 입력의 비트 길이와 출력 비트 길이와 시큐러티 파라미터에 의존한다는 문제가 있었다.
본 발명은 상기한 바와 같은 문제점을 해결하기 위해 이루어진 것으로, t-resilient 함수가 아니고, SHA-1 등의 일반적인 함수를 이용해서, 상술의 모든 경우에 있어서도 대응 가능한 방식을 획득하는 것을 목적으로 한다.
또한 데이터의 송수신 시의 안전성은 전부 버넘 암호의 안전성에 귀착시킬 수 있어, 정보 이론적으로 보다 높은 안전성을 갖는 방법을 획득하는 것을 목적으로 한다.
본 발명은, 양자 암호(quantum cryptography) 등을 이용한 통신에 있어서 오류를 포함한 공유 데이터를 오류가 없는 공유 데이터로 정제하는 공유 데이터 정제 장치 및 공유 데이터 정제 방법에 관한 것이다.
도 1은, 본 발명의 실시 형태 1에 있어서의 공유 데이터 정제 시스템을 도시하는 도면이다.
도 2는, 본 발명의 실시 형태 1에 있어서의 데이터 처리 수단 Y를 도시하는 블록도이다.
도 3은, 본 발명의 실시 형태 1에 있어서의 공유 데이터 정제 시스템의 동작을 도시하는 흐름도이다.
도 4A는, 본 발명의 실시 형태 1에 있어서의 가공유 데이터 X를 정제용 데이터와 일회용 데이터로 분할하는 도면이다.
도 4B는, 본 발명의 실시 형태 1에 있어서의 가공유 데이터 Y를 정제용 데이터와 일회용 데이터로 분할하는 도면이다.
도 5는, 해시 함수 SHA-1의 교반 성능을 도시한 실험 결과의 도면이다.
도 6은, 본 발명의 실시 형태 2에 있어서의 공유 데이터 정제 시스템의 동작을 도시하는 흐름도이다.
도 7은, 본 발명의 실시 형태 3에 있어서의 공유 데이터 정제 시스템의 동작을 도시하는 흐름도이다.
도 8A는, 본 발명의 실시 형태 3에 있어서의 정제용 블록으로부터 버넘 암호 X를 생성하는 수순을 설명하는 도면이다.
도 8B는, 본 발명의 실시 형태 3에 있어서의 정제용 블록으로부터 버넘 암호 Y를 생성하는 수순을 설명하는 도면이다.
도 9는, 본 발명의 실시 형태 3에 있어서의 오류 위치의 추정을 설명하는 도면이다.
도 10은, 본 발명의 실시 형태 4에 있어서의 공유 데이터 정제 시스템의 동작을 도시하는 흐름도이다.
도 11은, 본 발명의 실시 형태5에 있어서의 공유 데이터 정제 시스템의 동작을 도시하는 흐름도이다.
도 12A는, 본 발명의 실시 형태5에 있어서의 가공유 데이터 X를 정제용 데이터로 분할하는 도면이다.
도 12B는, 본 발명의 실시 형태5에 있어서의 가공유 데이터 Y를 정제용 데이터로 분할하는 도면이다.
도 13은, 본 발명의 실시 형태 6에 있어서의 공유 데이터 정제 시스템을 도시하는 도면이다.
도 14는, 본 발명의 실시 형태 6에 있어서의 공유 데이터 정제 시스템의 동작을 도시하는 흐름도이다.
본 발명에 따른 공유 데이터 정제 장치는, 송신기가 정제용 블록을 해밍 거리 증폭 효과에 의해 교반한 후, 일회용 데이터로 버넘 암호화하여 수신기에 송신하도록 한 것이다.
이것에 의해서, 데이터가 도청될 위험성이 낮다고 하는 효과가 있다.
본 발명에 따른 공유 데이터 정제 장치는, 가공유 데이터를 송신기와 수신기(공유 데이터 정제 장치)가 각각 정제용 블록과 일회용 블록으로 분할하고, 정제용 데이터를 각각 해밍 거리 증폭 효과에 의해 해밍 거리를 확대하도록 한 것이다.
이것에 의해서, 가공유한 데이터가 동일한지의 여부를 식별하기 쉽다고 하는 효과가 있다.
이하, 본 발명을 보다 상세히 설명하기 위해서, 본 발명을 실시하기 위한 최량의 형태에 대해서, 첨부 도면에 따라서 설명한다.
실시 형태 1.
도 1은 이 실시 형태에 있어서의 공유 데이터 정제 시스템을 도시하는 도면, 도 2는 이 공유 데이터 정제 시스템의 데이터 처리 수단의 블록도, 도 3은 이 공유 데이터 정제 시스템의 동작을 도시하는 흐름도, 도 4A, B는 각각 가공유 데이터 X, Y를 정제용 데이터와 일회용 데이터로 분할하는 도면이다.
도 1에 있어서, 1은 송신기, 2는 수신기, 3은 송신기(1)와 수신기(2)를 연결하는 양자 통신 회선, 4는 송신기(1)와 수신기(2)를 연결하는 공중 통신 회선이다.
또한, 11은 송신기(1)에 포함되는 통신 수단 X이고, 수신기(2)에 포함되는 통신 수단 Y(21)와 연결되어 있다. 통신 수단 X(11)와 통신 수단 Y(21)은 각각 양자 통신 수단과 공중 통신 수단의 쌍방을 포함하는 것으로 한다.
양자 통신 회선(3)은 데이터의 전송에 있어서 1퍼센트 정도의 오류가 발생할 가능성이 높다. 공중 통신 회선(4)은 통신 수단 X(11)와 통신 수단 Y(21)에 의해 예를 들면 리드 솔로몬법과 같은 오류 정정 부호가 부가되어, 오류가 발생해도 정정되는 것으로 한다.
12, 22는 각각 송신기(1), 수신기(2)에 포함되어, CPU, RAM 등으로 이루어지는 데이터 처리 수단 X, 데이터 처리 수단 Y이고, 13, 23은 각각 송신기(1), 수신기(2)에 포함되어, RAM 등의 휘발성 메모리 또는 플래시 메모리나 고정 디스크 등의 불휘발성 메모리로 이루어지는 데이터 저장 수단 X, 데이터 저장 수단 Y이다.
도 2에 있어서, 221은 블록 생성 수단, 222는 데이터 교반 수단, 223은 복호 블록 생성 수단, 224는 동일성 판정 수단, 225은 오류 정정 수단이고, 이들은 데이터 처리 수단 Y(22)에 포함된다.
수신기(2)는 공유 데이터 정제 장치이다.
다음에 동작에 대해서 도 3의 흐름도를 이용해서 설명한다.
우선 단계 101에 있어서, 송신기(1)의 데이터 저장 수단 X(13)에 저장되어 있는 송신용 데이터가 통신 수단 X(11)에 의해 수신기(2)를 향해서 양자 통신 회선(3)을 통한 양자 암호 통신에 의해 송신된다. 수신기(2)는 통신 수단 Y(21)에 의해 이 데이터를 수신하여, 데이터 저장 수단 Y(23)에 저장한다. 이에 따라 송신기(1)와 수신기(2)는 상기 송신용 데이터를 공유하지만, 이 공유한 데이터는 송신기(1)로부터 수신기(2)에의 송신 도중에 발생한 오류, 또는 제3자에 의한 도청 등에 의해, 완전히 동일하지 않을 가능성이 있다. 이것을 도 3에 있어서는 「가공유」라고 표현하고 있다. 데이터 저장 수단 X(13)에 저장되어 있는 상기 송신용 데이터를 가공유 데이터 X, 데이터 저장 수단 Y(23)에 저장된 데이터를 가공유 데이터 Y로 한다.
단계 101에서 가공유된 가공유 데이터 X와 가공유 데이터 Y를, 송신기(1)와수신기(2)는 각각 단계 102 및 110에 의해, 도 4A, 도 4B와 같이 정제용 데이터(Ax, Ay)와 버넘 암호를 생성하기 위한 일회용 데이터(Bx, By)로 분할한다. 도 4A는 가공유 데이터 X의 분할을 도시하는 도면이고, 도면에 있어서, 301은 가공유 데이터 X, 302는 정제용 데이터 Ax, 303은 일회용 데이터 Bx, 304는 잉여를 도시한다. 또한 도 4B는 가공유 데이터 Y의 분할을 도시하는 도면이고, 도면에 있어서, 305는 가공유 데이터 Y, 306은 정제용 데이터 Ay, 307은 일회용 데이터 By, 308은 잉여를 도시한다. 가공유 데이터 X의 분할은 데이터 처리 수단 X(12), 가공유 데이터 Y의 분할은 데이터 처리 수단 Y(22)(블록 생성 수단)이 행한다.
또한 가공유 데이터 X의 정제용 데이터 Ax는 각각 같은 비트 수 P를 갖는 n개의 정제용 블록 Axr(r=1∼n)로 분할되고, 일회용 데이터 Bx는 각각 같은 비트 수 Q를 갖는 n개의 일회용 블록 Bxr(r=1∼n)로 분할된다. 마찬가지로 가공유 데이터 Y도 각각 같은 비트 수 P를 갖는 n개의 정제용 블록 Ayr과 각각 같은 비트 수 Q를 갖는 n개의 일회용 블록 Byr로 분할된다. 상기 정제용 블록 Axr과 일회용 블록 Bxr은 데이터 처리 수단 X(12) 중의 RAM에, 정제용 블록 Ayr과 일회용 블록 Byr은 데이터 처리 수단 Y(22) 중의 RAM에 저장되지만, 각각 데이터 저장 수단 X(13), 데이터 저장 수단 Y(23)에 저장해도 좋다.
가공유 데이터 X와 가공유 데이터 Y의 비트 수는 같기 때문에 각각을 L 비트라 하면, 도 4A, 도 4B에 도시된 바와 같이, 아래의 식으로부터 상기 n이 구해진다.
L=(P+Q)×n+α(α<P+Q)
잉여 α 비트는 사용하지 않는다. 이러한 소정의 분할 규칙에 의해 분할이 행하여진다.
r의 값이 같은 정제용 블록 Axr과 Ayr, 및 일회용 블록 Bxr과 Byr의 사이의 오류율은 양자 통신 회선(3)의 품질에 따라 약, 1퍼센트 정도라고 할 수 있다.
송신기(1)에 의한 단계 103 이후의 단계, 수신기(2)에 의한 단계 111 이후의 단계는 각 r(r=1∼n)에 대해서 병렬로 처리가 행하여진다. 즉 동일한 프로세스가 n개 병렬로 진행된다. 여기서는 r=r인 경우에 대해서 설명한다.
단계 103 및 단계 111에 있어서, 송신기(1)와 수신기(2)는 해시 함수 등의 해밍 거리 증폭 효과(데이터 교반 규칙)를 이용해서, 정제용 블록 Axr, Ayr를 각각 교반하고, 교반 후 블록 Cxr, Cyr로 변환한다. 교반 후 블록 Cxr, Cyr의 사이즈는 각각 Q 비트이다. 이 변환은 데이터 처리 수단 X(12), 데이터 처리 수단 Y(22)(데이터 교반 수단)에 의해 행해진다.
해밍 거리란 2개의 디지털 데이터간의 일치하지 않는 비트의 수이다. 또한 해밍 거리 증폭 효과란, 이하 (a) (b)에 의해 정의되는 해밍 거리 증대 함수 F 또는 배타적 논리합 엔트로피 증대 함수를 이용하는 것이다.
(a) 해밍 거리 증대 함수 F: 임의의 비트 열 s에 대해서 작은 수 ε가 존재하고, 해밍 거리 ε 이하의 모든 비트 열 r에 대해서, 함수 F로 사상한 F(s)와 F(r)의 해밍 거리가 d 이상이 되는 함수. 단, d >> 1.
(b) 배타적 논리합 엔트로피 증대 함수: 2개의 비트 열의 배타적 논리합의 엔트로피를 증대시키는 함수.
이 처리를 행하는 이유는 다음과 같다. 즉 완전히 동일한 데이터는 해밍 거리 증폭 효과를 행하여도 사상은 동일한 값이 되는 데 대해서, 1 비트라도 다른 데이터는 해밍 거리 증폭 효과에 의해, 사상은 전혀 다른 데이터가 된다. 즉 최초 1 비트의 해밍 거리에 있는 데이터가, 데이터 사이즈의 반 정도의 해밍 거리로 확대된다고 생각된다. 이것이 본 발명의 포인트의 하나이다.
여기서, 정제용 블록 Axr이 제2 정제용 블록, 정제용 블록 Ayr이 제1 정제용 블록, 일회용 블록 Bxr이 제2 일회용 블록, 일회용 블록 Byr이 제1 일회용 블록, 교반 후 블록 Cxr이 제2 교반 블록, 교반 블록 Cyr이 제1 교반 블록이다.
해밍 거리 증폭 효과(데이터 교반 규칙)로서 주지의 해시 함수인 “SHA-1”을 사용하면, 교반 후 블록 Cxr, Cyr의 사이즈는 각각 160 비트가 되기 때문에, 상기 Q=160이 된다. 따라서 일회용 블록 Bxr, Byr도 각각 160 비트로 하는 것이 필요하다.
다음에 도 3에 있어서, 송신기(1)는 단계 104에 있어서, 데이터 처리 수단 X(12)에 의해, 이 사상(교반)된 교반 후 블록 Cxr과 동일한 사이즈인 일회용 블록 Bxr를 난수열로서 교반 후 블록 Cxr과 일회용 블록 Bxr의 배타적 논리합(XOR)을 취하고, 그 결과를 송신용 블록 Dr로서 통신 수단 X(11)로부터 공중 통신 회선(4)을 통해서 수신기(2)에 보낸다. 즉 버넘 암호로서 보낸다. 송신용 블록 Dr의 사이즈는 Q 비트이다.
버넘 암호는 보내고 싶은 비트 열과 XOR을 취하는 난수열이 동일한 길이일 때에 정보 이론적으로 안전성이 증명되어 있는 암호이고, 이 때 난수열은 한 번밖에 사용할 수 없다.
여기서, 송신용 블록 Dr이 암호화 블록이다.
수신기(2)는 상기 송신용 블록 Dr를 통신 수단 Y(21)로 수신하면, 단계 112에서 데이터 처리 수단 Y(22)(복호 블록 생성 수단, 동일성 판정 수단)를 이용해서, 우선 송신용 블록 Dr과 일회용 블록 Byr의 XOR을 취하고, 그 결과를 검증용 블록 Er로 하여, 이 검증용 블록 Er과 교반 후 블록 Cyr을 비교한다.
Er=Dr XOR Byr(단, XOR은 배타적 논리합을 도시한다)
여기서
Dr=Cxr XOR Bxr
이기 때문에,
Er=Dr XOR Byr
=(Cxr XOR Bxr) XOR Byr
가 된다.
만약, Bxr과 Byr이 일치하면 Er=Cxr이 되기 때문에, 검증용 블록 Er과 교반 후 블록 Cyr의 비교는, 교반 후 블록 Cxr과 Cyr의 비교와 같은 의미가 된다.
실제는, 상술한 바와 같이 일회용 블록 Bxr과 Byr은 엄밀하게는 같지 않고 1퍼센트 정도의 오류가 포함되어 있을 가능성이 있다.
검증용 블록 Er이 복호 블록이고, 송신용 블록 Dr과 일회용 블록 Byr의 XOR을 취하는 것이 복호 규칙이다.
해밍 거리 증폭 효과로서 주지의 해시 함수인 “SHA-1”을 사용하면, 교반 후 블록 Cxr, Cyr의 사이즈는 각각 160 비트가 되기 때문에, 상기 Q=160이 된다. 따라서 일회용 블록 Bxr, Byr도 각각 160 비트로 하는 것이 필요하다.
또한, 정제용 블록 Axr과 Ayr이 완전히 동일한 데이터라고 하면, 교반 후 블록 Cxr과 Cyr은 완전히 동일한 데이터가 되고, 정제용 블록 Axr과 Ayr에 1 비트라도 오류가 있으면, 각각 단계 103, 단계 111에 있어서의 해밍 거리 증폭 효과에 의해, 교반 후 블록 Cxr과 Cyr은 전혀 다른 데이터가 된다.
도 5는 해시 함수 “SHA-1”이 데이터를 교반하는 성능을 도시한 실험 결과이다.
이 실험에서는 입력의 비트 길이는 512비트로 고정하였다. 즉 512비트 중 1 비트만 다른 2개의 데이터의 출력이 어느 정도 해밍 거리로 하여 멀어지는 가를, 샘플 수 10000000건분의 막대 그래프로서 도시한 것이다. 또한, 종축은 도수를 전체 샘플 수로 나눈 것으로 정규화하고 있다. 따라서 해밍 거리 80이 나올 확률은 6% 이상이다.
이 실험에서는 평균값(m)은 79.999550, 표준편차(σ)는 6.327267이다. 이것에 대해서, 동일한 512비트 입력이라도, 최초의 해밍 거리를 2로 변화하게 한 경우나 입력의 비트 수를 256으로 변화하게 한 경우 등 각각 조사하였지만, 그 결과 상술과 거의 동일하고 평균 약 80, 표준편차 약 6.3의 정규 분포를 나타냈다. 즉 대부분의 비트 열의 쌍은 해밍 거리가 80전후의 무 상관의 비트 열로 옮겨지는 것이 나타났다. 또한 그래프로부터 알 수 있는 바와 같이 분산도 작고, 전체가 160 비트일 경우 약 80 전후로 집중되어 있는 것을 알 수 있다. 일반적으로 신뢰 구간으로서 시큐리티 마진을 어느 정도로 설정하느냐는 사용자에 의해서 결정된다. 여기서는 일반적으로 받아들여지는 6×σ=38을 신뢰 구간의 폭으로 한다. 실제로 SHA-1에 관하여 금회의 실험에서 나타난 해밍 거리의 최소값은 44이고, 그 출현 빈도도 1, 2개로 매우 적은 것이었다. 따라서 SHA-1인 경우 80-38=42 비트를 비트 열 동일성 판정의 임계값으로 할 수 있다.
즉 해밍 거리 증폭 효과를 갖는 함수로서 SHA-1을 선택한 경우, 만약 2개의 비트 열 x_1, x_2에 대해서, f(x_1)와 f(x_2)의 해밍 거리가 42 이하이면, 매우 높은 확률로 x_1=x_2라고 할 수 있다.
또한 이상에서 해시 함수 SHA-1은 정제용 블록 Axr과 Ayr의 해밍 거리가 1 이상 또한 정제용 블록 Axr과 Ayr의 비트 수의 1/2보다 충분히 작을 때(예를 들면 1/100 이하)는, 교반 후 블록 Cxr과 Cyr의 해밍 거리는 정제용 블록 Axr과 Ayr의 해밍 거리보다 커지도록 교반한다.
또한 정제용 블록 Axr과 Ayr의 비트 수를 LA, 해밍 거리를 HA, 교반 후 블록 Cxr과 Cyr의 비트 수를 LC, 해밍 거리를 HC로 하고, 교반 전 해밍 거리비를 HA/LA, 교반 후 해밍 거리비를 HC/LC로 하면, 교반 전 해밍 거리비가 0을 넘고 또한 0.5보다 충분히 작을 때(예를 들면 0.01 이하), 교반 후 해밍 거리비가교반 전 해밍 거리비보다 커져, 예를 들면 신뢰 구간을 6σ로 하면 0.5±0.25가 된다. 여기서, 38/160은 대략 0.25로 근사한다.
또한 이 실시 형태에 있어서는, 일회용 블록 Bxr과 Byr 사이의 오류(약 1%)를 고려하면, 42-160×0.01=40.4이기 때문에, 단계 112에 있어서, 검증용 블록 Er과 교반 후 블록 Cyr의 해밍 거리가 40 이하이면, 교반 후 블록 Cxr, Cyr은 동일하고, 따라서 정제용 블록 Axr과 Ayr은 일치하기 때문에, 「동일하다」라고 판정하게 된다. 즉 물리적인 오류율이 25퍼센트 이하이면「동일하다」라고 판정하게 된다.
또한 검증용 블록 Er과 교반 후 블록 Cyr의 해밍 거리가 40을 넘을 때는 교반 후 블록 Cxr, Cyr은 서로 다르며, 따라서 정제용 블록 Axr과 Ayr은 일치하지 않기 때문에, 「다르다」라고 판정하게 된다.
따라서, 이 실시 형태에 있어서는, 도 3의 단계 112에 있어서의 해밍 거리의「소정값」은 40이다.
단계 112에 있어서 「동일하다」라고 판단되면, 수신기(2)는 동일한 것을 통신 수단 Y(21)로부터 공중 통신 회선(4)을 통해서 송신기(1)에 통지하고(단계 113), 또한 수신기(2)는 정제용 블록 Ayr를 데이터 저장 수단 Y(23) 내의 정제 종료 데이터 저장 영역(도시하지 않음)의 r의 값에 대응하는 위치에 저장하고(단계 114), 이 블록에 관한 동작을 종료한다(단계 115).
또한 송신기(1)는 통신 수단 X(11)에 의해 수신기(2)로부터 수신되는 판정 결과를 수신하여, 데이터 처리 수단 X(12)로 판정 결과를 식별하고(단계 105),「동일하다」이면, 이 블록에 관한 동작을 종료한다(단계 106). 이에 따라 동일한 데이터인 정제용 블록 Axr, Ayr이 각각 데이터 저장 수단 X(13), 데이터 저장 수단 Y(23)에 저장되고, 송신기(1)와 수신기(2)로 완전 공유된다.
「완전 공유」란, 완전히 동일한 데이터를 송신기(1)와 수신기(2)가 보유하는 것을 의미한다.
데이터 처리 수단 X(12)와 데이터 처리 수단 Y(22)는 몇번째의 정제용 블록을 완전 공유할 수 있었는지, 즉 완전 공유 할 수 있었던 정제용 블록 Axr, Ayr의 r의 값이 몇개 인지를, 완전 공유가 완료된 순으로 각각이 보유하는 「완료 블록 넘버 레지스터」(도시하지 않음)에 저장해 둔다. 또한 완전 공유가 완료된 정제용 블록을 카운트하여, 완료된 정제 블록 수가 n개가 되면 모든 정제용 블록의 완전 공유가 완료되고, 그 결과 정제용 데이터 Ax와 Ay를 완전 공유 할 수 있다고 판단한다.
단계 112에서「다르다」라고 판정된 경우, 수신기(2)는 다른 뜻을 통신 수단 Y(21)에 의해 송신기(1)에 통지하고, 송신기(1)로부터 정제용 블록 Axr의 오류 정정 코드가 수신되는 것을 대기한다(단계 116).
송신기(1)는 통신 수단 X(11)에 의해 수신기(2)로부터 수신되는 판정 결과를 수신하여, 데이터 처리 수단(12)으로 판정 결과를 식별하고(단계 105),「다르다」이면, 단계 107에 있어서 정제용 블록 Axr의 오류 정정 코드 Arc(정정 정보)를 생성한다.
이 오류 정정 코드 Arc는 정제용 블록 Ayr를 정제용 블록 Axr과 일치시키기 위한 정보이다.
여기서 임시로 리드 솔로몬 부호를 이용한 오류 정정에 있어서, 어느 정도의 용장 코드를 이용하면 오류 정정을 행할 수 있을 수 있는 가를 대략적으로 어림한다. 우선 전제로서 GF(28) 상의 리드 솔로몬 부호를 이용하는 것으로 한다. 또한 오류는 버스트 오류가 아니고 랜덤 오류를 가정하여, 그 평균 비트 오류 레이트를 1%로 한다. 이 서술자 상에서는 1 부호어(coded word)는, 255(=28-1) 바이트×8=2040 비트이고, 그 중 오류 비트는 평균으로 2040×0.01≒ 21(비트) 존재한다. 이것을 전부 1 심볼(이 경우, =1 바이트)당 1 비트의 오류가 생긴다고 가정하면, 255 바이트 중의 21 바이트에 오류가 있는 것이 된다. 이 때 리드 솔로몬 부호에서 말하는 검사 기호 수, 즉 용장 코드의 길이는 그 배의 42 바이트가 된다. 따라서 255 바이트의 부호 길이인 경우, 정보 길이가 213 바이트, 용장분이 42 바이트, 즉 약 1:0.2의 비율이 된다. 이 실시 형태에 적용시켜 생각하면, 물론 서술자의 사이즈와 비트 오류 레이트에 의존하지만, 상술과 같은 설정에서는, 오류 정정하고 싶은 코드의 약 20퍼센트의 길이의 용장 코드를 생성하여, 랜덤열과 XOR 하여 버넘 암호로서 보내면 되게 된다.
단계 107에 있어서, 또한 송신기(1)는 이 오류 정정 코드 Arc를 동일한 길이의 데이터(암호화용 데이터)와 배타적 논리합을 취하여 버넘 암호로서 수신기(2)에 송신하지만, 이 때의 암호화용 데이터는 수신기(2)도 동일한 데이터를 가지고 있을필요가 있다. 그래서, 데이터 처리 수단 X(12)는, 이미 완전 공유가 완료된 다른 블록의 번호(r의 값) 중 가장 작은 것 s를 상술의 「완료 블록 넘버 레지스터」로부터 판독하고, 그 블록 번호의 정제용 블록 Axs를 데이터 저장 수단 X(13)로부터 판독한다. 그리고, 이 정제용 블록 Axs의 선두에서 상기 오류 정정 코드 Arc와 동일한 비트 수의 데이터와, 정정 코드 Arc의 배타적 논리합을 취하여 버넘 암호화하고, 암호화 오류 정정 코드로서 통신 수단 X(11)로부터 수신기(2)에 대해서 공중 통신 회선(4)을 통해서 송신한다.
또한 이 때의 블록 번호를 「완료 블록 넘버 레지스터」에 저장하여, 완전 공유가 완료된 정제용 블록 수의 값을 증분한다.
단계 117에 있어서, 수신기(2)는 이 암호화 오류 정정 코드를 통신 수단 Y(21)로 수신하여, 데이터 처리 수단 Y(22)(오류 정정 수단)가 이미 완전 공유가 완료된 다른 정제용 블록의 번호(r의 값) 중 가장 작은 것 s를 상술의 「완료 블록 넘버 레지스터」로부터 판독하고, 그 블록 번호의 정제용 블록 Ays를 데이터 저장 수단 Y(23)로부터 판독한다. 그리고, 이 정제용 블록 Ays의 선두에서 수신한 암호화 오류 정정 코드와 동일한 비트 수의 데이터(복호용 데이터)와, 수신한 암호화 오류 정정 코드의 배타적 논리합을 취하여 버넘 암호를 복호화하고, 복호화한 오류 정정 코드 Arc를 이용해서 정제용 블록 Ayr의 오류 정정을 행하여, 오류 정정된 정제용 블록 Ayr를 데이터 저장 수단 Y(23)에 저장한다.
또한 이 때의 r의 값(블록 번호)을 「완료 블록 넘버 레지스터」에 저장하고, 완전 공유가 완료된 정제용 블록 수의 값을 증분한다.
상기 암호화용 데이터와 복호용 데이터가 동일 데이터이다.
상기한 단계 107 및 117에 있어서는, 이미 완전 공유가 완료된 다른 블록의 번호를 「완료 블록 넘버 레지스터」로부터 판독한다고 설명하였지만, 아직 그 외에 완전 공유가 완료된 정제용 블록이 없고 「완료 블록 넘버 레지스터」가 빈 경우는, 다른 어느 하나의 정제용 블록의 완전 공유가 완료하고, 「완료 블록 넘버 레지스터」에 그 블록 번호가 저장될 때까지, 동작은 단계 107에서 중단된다.
여기서, 도 3의 흐름도에 있어서, 단계 101이 가공유 데이터 송신 단계, 단계 102가 제2 블록 생성 단계, 단계 103이 제2 교반 블록 생성 단계, 단계 104가 암호화 블록 생성 단계, 단계 105가 제2 동일성 판정 단계, 단계 106이 종료 단계, 단계 107이 정정 정보 송신 단계, 단계 110이 제1 블록 생성 단계, 단계 111가 제1 교반 블록 생성 단계, 단계 112가 동일성 판정 단계, 단계 113, 114가 제1 정제용 블록 저장 단계, 단계 116이 판정 결과 송신 단계, 단계 117이 오류 정정 단계이다.
이상과 같이 이 실시 형태에 있어서는, 오류 정정을 행하도록 하고 있기 때문에, 종래의 방법에 비교하여 많은 데이터를 버리지 않고서 완전히 동일한 데이터를 공유 할 수 있다. 예를 들면 해밍 거리 증폭 효과에 해시 함수 SHA-1을 이용한 경우를 생각할 수 있다. SHA-1은 최대 264-1 비트의 데이터로부터 160 비트의 해시값을 생성한다. 그러나 여기서는 좀더 구체적으로 10000 비트로부터 160 비트의 해시를 생성한다고 가정하자. 임시로 오류 레이트가 극단적으로 적어 0.01% 정도였다고 한다(현재의 양자 암호 실험에서는 불가능하다고도 말할 수 있는 값이지만, 가정으로 하고 진행시킨다). 그러면 10000 비트 있으면, 1개 정도의 오류가 포함된다. 해시값은 160 비트이기 때문에, 버넘 암호로서 이용하는 일회용 데이터는 160 비트가 된다. 따라서 10000 비트 중에 오류가 포함되어 있지 않으면, 160 비트를 버리고, 9840 비트를 공유한 것이 되기 때문에, 원래의 데이터 길이의 약 98%이상의 데이터를 공유 데이터로서 구할 수 있다. 다음에 오류가 포함되어 있는 경우, 그 10000 비트에 대해서 오류 정정 코드를 생성한다. 지금, 임시로 비트의 30% 정도의 용장 코드로 정정할 수 있다고 하면, 3000 비트를 버넘 암호로서 보낼 필요가 있다. 따라서 일회용 데이터는 전부, 160+ 3000=3160 비트가 되고, 이에 따라 6840 비트를 공유할 수 있기 때문에, 약 70%의 데이터를 구할 수 있다.
또한 이 실시 형태에 있어서는, 가공유 데이터를 송신기와 수신기(공유 데이터 정제 장치)가 각각 정제용 블록과 일회용 블록으로 분할하여, 정제용 데이터를 각각 해밍 거리 증폭 효과에 의해 해밍 거리를 확대하기 때문에, 가공유한 데이터가 동일한지의 여부를 식별하기 쉽다고 하는 효과가 있다.
이것은 특히 송신기와 수신기가 가공유한 블록의 해밍 거리가 그 데이터 사이즈의 50%에 대해서 충분히 작을 때는, 교반후의 해밍 거리는 확대되기 때문에, 효과적이다.
또한 이 실시 형태에 있어서는, 송신기와 수신기가 가공유한 데이터가 다른 경우에는 오류 정정을 행하도록 하였기 때문에, 송신기와 수신기로 많은 동일한 데이터를 공유할 수 있다고 하는 효과가 있다.
또한 이 실시 형태에 있어서는, 송신기가 정제용 블록을 해밍 거리 증폭 효과에 의해 교반한 후, 일회용 데이터로 버넘 암호화하여 수신기에 송신하기 때문에, 데이터가 도청될 위험성이 낮다고 하는 효과가 있다.
또한 이 실시 형태에 있어서는, 가공유한 데이터를 복수의 블록(정제용 블록과 일회용 블록의 쌍)으로 분할하기 때문에, 완전 공유에 성공한 다른 블록의 데이터를 이용해서 오류 정정 부호(정정 정보)를 송신하는 것이 가능해지고, 데이터 은닉의 안전성이 높다고 하는 효과가 있다.
또한 이 실시 형태에 있어서는, 완전 공유에 성공한 블록 번호를 저장해 두는 완료 블록 넘버 레지스터를 설치하였기 때문에, 오류 정정 부호를 버넘 암호화하여 송신할 때의 처리가 고속화된다고 하는 효과가 있다.
또한 이 실시 형태에 있어서는, 복호 블록과 제1 교반 블록의 해밍 거리에 의해 제1 정제 블록과 제2 정제 블록이 동일한지의 여부를 판정하고 있고, 이 해밍 거리의 판정의 기준치(소정값)를 변경하면 유연하게 판정 신뢰성을 변경할 수 있다고 하는 효과가 있다.
또 상기한 실시 형태에서는, 해밍 거리 증폭 효과로서 해시 함수의 SHA-1을 이용하는 예를 나타내었지만 다른 해시 함수라도 좋다.
또한 도 3의 단계 112에 있어서의「소정값」을 40으로 하였지만, 상기한 실험 결과의 설명에 있는 것처럼 42(신뢰 구간6σ)로 해도 충분한 신뢰성을 얻을 수 있기 때문에, 소정값을 42로 해도 좋다. 또한 SHA-1 이외의 경우라도 각각의 해시 함수의 출력 비트 수나 데이터 교반 특성에 의해 다른 값으로 해도 좋다.
또한 해밍 거리 증폭 효과는 데이터를 교반하는 수단이면 해시 함수에 한하지 않고, 예를 들면 DES, MISTY 등의 공통 키 암호나 RSA 등의 공개 키 암호의 암호화 함수를 이용해도 좋다.
또한 상기한 실시 형태에 있어서는, 송신기(1)와 수신기(2)가공유 데이터를 공유하기 때문에, 양자 암호 통신을 사용하는 예를 나타내었지만, 양자 암호 통신에 한하지 않고 공중 회선을 이용한 통신이라도 좋고, 또한 암호 통신이 아니더라도 좋다. 즉, 단계 101에 있어서, 송신기(1)는 수신기(2)와 동일한 데이터를 공유할 목적으로 데이터를 송신하는 것이면, 송신 데이터의 형식, 송신 방법 등은 특별히 한정되는 것은 아니다.
또한 상기한 실시 형태에 있어서 n=1이 되도록 P 및 Q을 결정해도 좋다.
이 경우, 제1 정제용 데이터와 제1 정제용 블록, 제1 일회용 데이터와 제1 일회용 블록, 제2 정제용 데이터와 제2 정제용 블록, 제2 일회용 데이터와 제2 일회용 블록이 각각 같은 것이 된다.
또한 상기 실시 형태에 있어서는, 도 3의 흐름도의 단계 107, 단계 117에 있어서, 각각 암호화용 데이터, 복호용 데이터로서 정제용 블록의 일부를 사용하고 있는 예를 나타내었지만, 단계 112에 있어서 해밍 거리가 0인 블록에 대해서는 일회용 블록 Bxr과 Byr도 완전 공유 되어 있다고 간주하고, 일회용 블록 Bxr의 일부를 암호화용 데이터, 일회용 블록 Byr의 일부를 복호용 데이터로서 사용해도 좋다.
또한 상기 실시 형태에 있어서는, 송신기(1)에 의한 단계 103 이후의 단계, 수신기(2)에 의한 단계 111 이후의 단계는 각 r(r=1∼n)에 대해서 병렬로 처리가 행하여지고, 동일한 프로세스가 n개 병렬로 진행된다고 하였지만, 블록 번호 r의 순으로 r=1로부터 순차 처리가 행하여지더라도 좋다. 이 때, 어떤 블록 번호 u에있어서, 단계 112에서「다르다」라고 판정되었지만 아직 그 외에 완전 공유가 완료된 정제용 블록이 없고 「완료 블록 넘버 레지스터」가 빈 경우는, 그 블록 번호 u 에서의 처리는 중지되고, 다음의 블록 번호의 처리가 개시된다. 그리고 다른 어느하나의 블록 번호 v에서 정제용 블록의 완전 공유가 완료하여, 「완료 블록 넘버 레지스터」에 그 블록의 번호 v가 저장되었을 때에 블록 번호 u의 처리가 재개되고, 블록 번호 v의 정제용 블록을 이용해서 오류 정정 부호의 버넘 암호화와 복호를 행한다.
실시 형태 2.
실시 형태 1에서는 수신기(2)가 검증용 블록 Er과 교반 후 블록 Cyr을 비교하여, 「다르다」라고 판정하였을 때만 송신기(1)가 정제용 블록의 오류 정정 코드를 생성하여 송신하는 예를 나타내었다.
이 실시 형태 2에 있어서는, 송신기(1)가 모든 정제용 블록에 대해서 오류 정정 코드를 생성하여 송신하는 예를 나타낸다.
이 실시 형태에 있어서의 공유 데이터 정제 시스템은 실시 형태 1에서 설명한 도 1과 동일하다. 또한 가공유 데이터는 실시 형태 1과 마찬가지로 도 4와 같이 정제용 데이터와 일회용 데이터로 분할된다.
또한 이 실시 형태에 있어서의 공유 데이터 정제 시스템의 동작을 도시하는 흐름도는 도 6과 같이 된다.
도 6의 흐름도에 있어서, 도 3과 동일한 번호를 붙인 단계는 실시 형태 1과 동일한 동작을 행하기 때문에, 설명을 생략한다.
또한 이 실시 형태에 있어서도, 도 6에 있어서의 송신기(1)에 의한 단계 103 이후의 단계, 수신기(2)에 의한 단계 111 이후의 단계는 각 r(r=1∼n)에 대해서 병렬로 처리가 행하여진다. 즉 동일한 프로세스가 n개 병렬로 진행된다. 여기서는r=r인 경우에 대해서 설명한다.
송신기(1)의 데이터 처리 수단 X(12)는, 단계 201에 있어서 정제용 블록 Axr의 오류 정정 부호 Axrc를 생성한다.
계속해서 단계 202에서, 이미 완전 공유가 완료된 다른 블록의 번호(r의 값) 중, 가장 작은 것 t를 실시 형태 1에서 설명한 「완료 블록 넘버 레지스터」로부터 판독하고, 그 블록 번호의 정제용 블록 Axt를 데이터 저장 수단 X(13)로부터 판독한다. 그리고, 이 정제용 블록 Axt의 오류 정정 코드 Axtc를 생성하는 단계 203에 있어서는, 데이터 처리 수단 X(12)에 의해, 실시 형태 1과 마찬가지로 교반 후 블록 Cxr과 일회용 블록 Bxr의 배타적 논리합(XOR)을 취하고, 그 결과를 송신용 블록 Dr로 한다. 또한 상기한 오류 정정 부호 Axrc와 Axtc의 배타적 논리합을 취하고, 그 결과를 송신용 정정 부호 Gr로 하고, 송신 수단 X(11)에 의해 공중 통신 회선을 통하여 수신기(2)에 송신한다.
또한 데이터 처리 수단 X(12)는 이 때의 블록 번호를 「완료 블록 넘버 레지스터」에 저장하여, 완전 공유가 완료된 정제용 블록 수의 값을 증분한다.
수신기(2)는 상기 송신용 블록 Dr과 송신용 정정 부호 Gr를 통신 수단 Y(21)로 수신하면, 단계 112에서 데이터 처리 수단 Y(22)(복호 블록 생성 수단, 동일성 판정 수단)을 이용해서, 우선 송신용 블록 Dr과 일회용 블록 Byr의 XOR을 취하고, 그 결과를 검증용 블록 Er로 하여, 이 검증용 블록 Er과 교반 후 블록 Cyr을 비교한다.
실시 형태 1과 마찬가지로 단계 112에 있어서, 검증용 블록 Er과 교반 후 블록 Cyr의 해밍 거리가 소정값(40) 이하이면, 교반 후 블록 Cxr, Cyr은 동일하고, 따라서 정제용 블록 Axr과 Ayr은 일치하고 있기 때문에, 「동일하다」라고 판정하게 된다.
또한 검증용 블록 Er과 교반 후 블록 Cyr의 해밍 거리가 소정값(40)을 넘을 때는 교반 후 블록 Cxr, Cyr은 서로 다르며, 따라서 정제용 블록 Axr과 Ayr은 일치하지 않기 때문에, 「다르다」라고 판정하게 된다.
단계 112에 있어서「동일하다」라고 판단되면, 수신기(2)는 정제용 블록 Ayr를 데이터 저장 수단 Y(23) 내의 정제 종료 데이터 저장 영역(도시하지 않음)의 r의 값에 대응하는 위치에 저장하고(단계 114), 이 블록에 관한 동작을 종료한다(단계 115). 이에 따라 동일한 데이터인 정제용 블록 Axr, Ayr이 각각 데이터 저장 수단 X(13), 데이터 저장 수단 Y(23)에 저장되어, 송신기(1)와 수신기(2)로 완전 공유된다.
데이터 처리 수단 Y(22)는 이 때의 블록 번호를 「완료 블록 넘버 레지스터」에 저장하여, 완전 공유가 완료된 정제용 블록 수의 값을 증분한다.
단계 112에서 「다르다」라고 판정된 경우, 수신기(2)의 데이터 처리 수단 Y(22)(오류 정정 수단)이 이미 완전 공유가 완료된 다른 블록의 번호(r의 값) 중, 가장 작은 것 t를「완료 블록 넘버 레지스터」로부터 판독하고, 그 블록 번호의 정제용 블록 Ayt를 데이터 저장 수단 Y(23)로부터 판독한다. 그리고, 이 정제용 블록 Ayt의 오류 정정 코드 Aytc를 생성한다(단계 211).
다음에 데이터 처리 수단 Y(22)(오류 정정 수단)는 상기 송신용 정정 부호Gr과 오류 정정 부호 Aytc의 배타적 논리합 Hr를 구한다(단계 212).
이것은,
Hr=Gr XOR Aytc(단, XOR은 배타적 논리합을 표시한다)
에 있어서
Gr=Axrc XOR Axtc이기 때문에,
Hr=Gr XOR Aytc
=(Axrc XOR Axtc) XOR Aytc
가 된다.
Axtc와 Aytc는, 각각 단계 202과 단계 211에 있어서, 완전 공유된 블록 번호 t의 정제용 블록 Axt과 Ayt에서 생성된 것이기 때문에, 일치하고 있다. 따라서, Hr=Axrc 이고, Hr은 정제용 블록 Axrc의 오류 정정 부호이다.
데이터 처리 수단 Y(22)는 이 Hr를 사용하여, 오류를 포함하는 정제용 데이터 Ayr의 오류를 정정하고, 정정 후의 Ayr를 데이터 저장 수단 Y(23)에 저장한다(단계 213). 또한 이 때의 블록 번호를 「완료 블록 넘버 레지스터」에 저장하여, 완전 공유가 완료된 정제용 블록 수의 값을 증분한 후, 이 블록 번호에 대한 처리를 종료한다(단계 214).
도 6의 흐름도에 있어서, 단계 201가 제2 정정 정보 생성 단계, 단계 202가 제2 공유 정정 정보 생성 단계, 단계 203가 정정 정보 암호화 단계와 정정 정보 송신 단계, 단계 211이 제1 공유 정정 정보 생성 단계, 단계 212가 정정 정보 복호 단계, 단계 213이 오류 정정 단계이다.
이상과 같이, 이 실시 형태에 있어서는 송신기(1)는 송신용 블록 Dr과 동시에 송신용 정정 부호 Gr도 송신하기 때문에, 수신기(2)로부터 송신기(1)에 대해서 응답할 필요가 없고, 상호의 통신이 1회로 완료하여, 통신량이 작아진다고 하는 효과가 있다.
실시 형태 3.
실시 형태 1에서는 수신기(2)가 검증용 블록 Er과 교반 후 블록 Cyr을 비교하여, 「다르다」라고 판정하였을 때는 송신기(1)가 정제용 블록의 오류 정정 코드를 생성하여 송신하는 예를 나타내었다.
이 실시 형태 3에 있어서는, 수신기(2)가「다르다」라고 판정하였을 때는 송신기(1)가 정제용 블록 Axr를 변환하여 송신하고, 수신기(2)도 정제용 블록 Ayr를 동일하게 변환하여, 오류가 발생한 비트 위치를 추정하는 예를 나타낸다.
이 실시 형태에 있어서의 공유 데이터 정제 시스템은 실시 형태 1에서 설명한 도 1과 동일하다. 또한 가공유 데이터는 실시 형태 1과 마찬가지로 도 4와 같이 정제용 데이터와 일회용 데이터로 분할된다.
또한 이 실시 형태에 있어서의 공유 데이터 정제 시스템의 동작을 도시하는 흐름도는 도 7과 같이 된다.
도 7의 흐름도에 있어서, 도 3과 동일한 번호를 붙인 단계는 실시 형태 1과 동일한 동작을 행하기 때문에, 설명을 생략한다.
또한 이 실시 형태에 있어서도, 도 7에 있어서의 송신기(1)에 의한 단계 103 이후의 단계, 수신기(2)에 의한 단계 111 이후의 단계는 각 r(r=1∼n)에 대해서 병렬로 처리가 행하여진다. 즉 동일한 프로세스가 n개 병렬로 진행된다. 여기서는 r=r인 경우에 대해서 설명한다.
송신기(1)는 통신 수단 X(11)에 의해 수신기(2)로부터 수신되는 판정 결과를 수신하여, 데이터 처리 수단 X(12)로 판정 결과를 식별하고(단계 105), 「다르다」이면, 단계 607에 있어서 도 8A에 도시한 바와 같이, 정제용 블록 Axr를 2등분하여 Axr의 전반부와 후반부를 생성하고, 이 전반부와 후반부의 각각 대응하는 비트끼리의 배타적 논리합을 취하여 버넘 암호 X를 생성한다. 이 버넘 암호 X를 통신 수단 X(11)에 의해 수신기(2)에 대해서 송신한다.
수신기(2)는 통신 수단 Y(21)로 이 버넘 암호 X를 수신하는 동시에, 정제용 블록 Ayr를 도 8B에 도시한 바와 같이 2등분하여 Ayr의 전반부와 후반부를 생성하고, 이 전반부와 후반부의 각각 대응하는 비트끼리의 배타적 논리합을 취하여 버넘 암호 Y를 생성한다. 이 버넘 암호 Y는 수신기(2) 외부에 대해서 송신하는 것이 아니지만, 편의상 「암호」라는 호칭 방법을 쓴다.
만약 정제용 블록 Axr과 정제용 블록 Ayr이 일치하고 있으면 버넘 암호 X와 버넘 암호 Y는 동일한 것이 되지만, 이 경우 단계 105 및 단계 112의 판정 결과가「다르다」이기 때문에, 버넘 암호 X와 버넘 암호 Y는 일치하지 않는다. 그리고 버넘 암호 X와 버넘 암호 Y의 일치하지 않는 비트의 위치에서 정제용 블록 Ayr의 어떤 위치의 비트가 정제용 블록 Axr과 다른 가를 추정 할 수 있다.
그 때문에, 도 9에 도시한 바와 같이 버넘 암호 X와 버넘 암호 Y의 배타적 논리합을 취하여 검증 데이터를 생성하여, 이 검증 데이터의 중에서 「1」이 나타난 위치가 예를 들면 앞에서부터 b1 비트 두드러졌다고 하면, 정제용 블록 Ayr의 전반부의 앞에서부터 b1 비트째 또는 후반부의 앞에서부터 b1 비트째 중 어느 것인가가 정제용 블록 Axr의 동일한 위치의 비트와 반전하여 틀려져 있다고 추정할 수 있다. 또한 검증 데이터 중에서 b2 비트째에도 「1」이 나타났다고 하면 마찬가지로 정제용 블록 Ayr의 전반부의 앞에서부터 b2 비트째 또는 후반부의 앞에서부터 b2 비트째 중 어느 것인가가 정제용 블록 Axr의 동일한 위치의 비트와 반전하여 틀려져 있다고 추정할 수 있다. 이상과 같은 버넘 암호 Y의 생성과, 오류 위치의 추정을 수신기(2)는 단계 617에 있어서 행한다.
계속해서 수신기(2)는 데이터 처리 수단 Y(22)(오류 정정 수단)에 의해, 정제용 블록 Ayr이 틀려져 있다고 추정한 위치의 비트 중 어느 하나를 반전시키고 가정제용 블록 Ayr2을 생성하여, 이것을 단계 111과 동일한 해밍 거리 증폭 효과에 의해 교반하고 가교반 후 블록 Cyr2을 생성한다(단계 618).
그리고 이 가교반 후 블록 Cyr2과 단계 112에서 구한 검증용 블록 Er를 비교하여, 해밍 거리가 소정값(이 실시 형태에서는 40) 이하인지의 여부를 확인한다. 만약 해밍 거리가 소정값 이하이면 가정제용 블록 Ayr2는 정제용 데이터 Axr과 동일하다고 간주할 수 있기 때문에, 이 가정제용 블록 Ayr2을 데이터 저장 수단 Y(23)의 정제 종료 데이터 저장 영역의 r의 값에 대응하는 위치에 저장한다.
가교반 후 블록 Cyr2과 검증용 블록 Er의 해밍 거리가 소정값 이상인 경우에는, 정제용 블록 Ayr이 틀려져 있다고 추정한 다른 위치의 비트를 반전시켜 가정제용 블록 Ayr2을 생성하거나, 틀려져 있다고 추정한 위치가 복수 있는 경우에는이들비트를 동시에 반전시키는 등, 정제용 블록 Ayr이 틀려져 있다고 추정한 위치의 모든 조합의 비트를 반전시켜, 가교반 후 블록 Cyr과 검증용 블록 Er의 해밍 거리가 소정값 이하가 될 때까지 반복한다. 그리고 소정값 이하가 되면 그 때의 가정제용 블록 Ayr2을 데이터 저장 수단 Y(23)의 정제 종료 데이터 저장 영역의 r의 값에 대응하는 위치에 저장하고(단계 619), 이 블록 번호에 대한 처리를 종료한다(단계 118).
도 7의 흐름도에 있어서, 단계 607가 정정 정보 송신 단계, 단계 617으로부터 단계 619가 오류 정정 단계이다.
이상과 같이, 이 실시 형태에 있어서는 오류가 발생해도 수신기는 이미 송신된 정제용 블록만으로 오류의 위치를 추정하여 정정하는 것이 가능하기 때문에, 송신된 데이터를 유효하게 활용하는 것이 가능하다고 하는 효과가 있다.
또한 송신기나 수신기는 오류 정정 부호를 연산하거나, 오류 정정 부호의 송수신을 행하지 않아도 되기 때문에, 오류 정정을 위한 처리가 간략해진다고 하는 효과가 있다.
실시 형태 4.
실시 형태 3에 있어서는, 수신기(2)가 「다르다」라고 판정하였을 때에 송신기(1)가 정제용 블록 Axr를 변환하여 송신하는 예를 나타내었지만, 이 실시 형태 4에 있어서는, 송신기(1)가 모든 정제용 블록을 변환하여 송신하는 예를 나타낸다.
이 실시 형태에 있어서의 공유 데이터 정제 시스템은 실시 형태 1에서 설명한 도 1과 동일하다. 또한 가공유 데이터는 실시 형태 1과 마찬가지로 도 4와 같이 정제용 데이터와 일회용 데이터로 분할된다.
또한 이 실시 형태에 있어서의 공유 데이터 정제 시스템의 동작을 도시하는 흐름도는 도 10과 같이 된다.
도 10의 흐름도에 있어서, 도 3 및 도 7과 동일한 번호를 붙인 단계는 실시 형태 1 및 실시 형태 3과 동일한 동작을 행하기 때문에, 설명을 생략한다.
또한 이 실시 형태에 있어서도, 도 10에 있어서의 송신기(1)에 의한 단계 103 이후의 단계, 수신기(2)에 의한 단계 111 이후의 단계는 각 r(r=1∼n)에 대해서 병렬로 처리가 행하여진다. 즉 동일한 프로세스가 n개 병렬로 진행된다. 여기서는 r=r인 경우에 대해서 설명한다.
송신기(1)는 단계 901에 있어서 도 8A에 도시한 바와 같이, 정제용 블록 Axr를 2등분하여 Axr의 전반부와 후반부를 생성하고, 이 전반부와 후반부의 각각 대응하는 비트끼리의 배타적 논리합을 취하여 버넘 암호 X를 생성한다.
계속해서 단계 902에 있어서, 실시 형태 1, 도 3의 단계 104와 같이 교반 후 블록 Cxr과 동일한 사이즈인 일회용 블록 Bxr를 난수열로서 교반 후 블록 Cxr과 일회용 블록 Bxr의 배타적 논리합(XOR)을 취하고, 그 결과를 송신용 블록 Dr로 하여, 송신용 블록 Dr과 버넘 암호 X를 통신 수단 X(11)로부터 공중 통신 회선(4)을 통해서 수신기(2)에 보낸다.
이상과 같이, 이 실시 형태에 있어서는 송신기(1)는 송신용 블록 Dr과 함께 버넘 암호 X도 송신하기 때문에, 수신기(2)로부터 송신기(1)에 대해서 응답할 필요가 없고, 상호의 통신이 1회로 완료하여, 통신량이 작아진다고 하는 효과가 있다.
또한 이 실시 형태에 있어서는 오류가 발생해도 수신기는 송신된 정제용 블록만으로 오류의 위치를 추정하여 정정하는 것이 가능하기 때문에, 송신된 데이터를 유효하게 활용하는 것이 가능하다고 하는 효과가 있다.
또한 송신기나 수신기는 오류 정정 부호를 연산하거나, 오류 정정 부호의 송수신을 행하지 않아도 되기 때문에, 오류 정정을 위한 처리가 간략해진다고 하는 효과가 있다.
실시 형태 5.
실시 형태 1에서는 송신기(1)는 교반 후 블록 Cxr를 송신용 블록 Dr로 변환하여 수신기(2)에 송신하는 예를 나타내었지만, 이 실시 형태에 있어서는 송신기(1)는 교반 후 블록 Cxr를 수신기(2)에 대해서 송신하는 예를 나타낸다.
이 실시 형태의 공유 데이터 정제 시스템은 도 1과 동일하다.
또한 이 실시 형태의 공유 데이터 정제 시스템의 동작은 도 11에 도시하는 흐름도와 같이 된다.
도 12A, B는 이 실시 형태에 있어서 각각 가공유 데이터 X, Y를 정제용 데이터로 분할하는 도면이고, 도면에 있어서, 310, 311은 잉여를 도시하고, 사이즈는 β 비트로 한다. 또한, 도 4A, B와 공통되는 요소에는 동일 부호를 붙여, 설명을 생략한다.
도 11의 흐름도에 있어서, 도 3과 동일한 번호를 붙인 단계는 실시 형태 1과 동일한 동작을 행하기 때문에, 설명을 생략한다.
또한 이 실시 형태에 있어서도, 도 11에 있어서의 송신기(1)에 의한 단계103 이후의 단계, 수신기(2)에 의한 단계 111 이후의 단계는 각 r(r=1∼n)에 대해서 병렬로 처리가 행하여진다. 즉 동일한 프로세스가 n개 병렬로 진행된다. 여기서는 r=r인 경우에 대해서 설명한다.
단계 101에서 가공유된 가공유 데이터 X와 가공유 데이터 Y를, 송신기(1)와 수신기(2)는 각각 단계 901 및 911에 의해, 도 12A, 도 12B와 같이 같은 비트 수 P를 갖는 n개의 정제용 블록 Axr, Ayr(r=1∼n)로 분할한다.
상기 정제용 블록 Axr은 데이터 처리 수단 X(12) 중의 RAM에, 정제용 블록 Ayr은 데이터 처리 수단 Y(22) 중의 RAM에 저장되지만, 각각 데이터 저장 수단 X(13), 데이터 저장 수단 Y(23)에 저장해도 좋다.
가공유 데이터 X와 가공유 데이터 Y의 비트 수는 같기 때문에 L 비트로 하면, 도 12A, 도 12B로부터 분명한 바와 같이, L=P×n+β(β<P)로부터 n이 구해진다. 잉여 β 비트는 사용하지 않는다.
r의 값이 같은 정제용 블록 각 Axr과 Ayr 사이의 오류율은 양자 통신 회선(3)의 품질에 따르는데, 일반적으로 1퍼센트 정도이다.
송신기(1)에 의한 단계 103 이후의 단계, 수신기(2)에 의한 단계 911 이후의 단계는 각 r(r=1∼n)에 대해서 병렬로 처리가 행하여진다. 즉 동일한 프로세스가 n개 병렬로 진행된다.
송신기(1)는 단계 902에 있어서, 상기 교반 후 블록 Cxr를 통신 수단 X(11)로부터 공중 통신 회선(4)을 통해서 수신기(2)에 보낸다.
수신기(2)는 상기 교반 후 블록 Cxr를 통신 수단 Y(21)로 수신하면, 단계912에서 데이터 처리 수단 Y(22)를 이용해서, 이 교반 후 블록 Cxr과 교반 후 블록 Cyr을 비교한다.
이후 실시 형태 1과 마찬가지로 처리가 행하여져, 정제용 블록 Axr과 Ayr이 완전 공유된다.
이 실시 형태에 있어서는, 송신기(1)는 교반 후 데이터 Cxr를 버넘 암호화하지 않고서 송신하고, 수신기(2)는 수신한 교반 후 데이터 Cxr에 아무런 처리를 가하지 않고서 교반 후 데이터 Cyr과 비교하기 때문에, 처리가 간략화 된다고 하는 효과가 있다.
실시 형태 6.
실시 형태 1에서는 가공유 데이터는 송신기(1)로부터 수신기(2)에 대해서 송신되는 예를 설명하였지만, 이 실시 형태에 있어서는, 송신기(1)와 수신기(2)는 각각 가공유 데이터를 획득하여, 수신기(2)가 송신기(1)와 동일한 공유 데이터를 보유하여 있는지의 여부를 검증하는 예를 설명한다.
도 13은 이 실시 형태에 있어서의 공유 데이터 정제 시스템을 도시하는 도면, 도 14는 이 공유 데이터 정제 시스템의 동작을 도시하는 흐름도이다. 도 13 및 도 14에 있어서 실시 형태 1에서 설명한 도 1 및 도 3과 동일한 부호를 붙인 구성 요소 또는 단계는 실시 형태 1과 동일한 동작을 행하기 때문에, 그 상세한 설명은 생략한다.
도 13은 도 1에 도시한 실시 형태 1의 공유 데이터 정제 시스템의 도면으로부터 양자 통신 회선(3)을 삭제한 것이고, 다른 구성은 도 1과 동일하다.
도 14에 있어서, 단계 1001과 단계 1002에 있어서 송신기(1)와 수신기(2)는 각각 가공유 데이터 X 및 가공유 데이터 Y를 획득한다. 여기서는 예를 들면 도시하지 않은 데이터 공급 장치가 존재하고, 이 데이터 공급 장치에서 동일한 데이터가 송신기(1)에 가공유 데이터 X로서 공급되어 데이터 저장 수단 X(13)에 저장되고, 수신기(2)에 가공유 데이터 Y로서 공급되어 데이터 저장 수단 Y에 저장된 것으로 한다.
이 가공유 데이터 X와 가공유 데이터 Y는 데이터 공급 장치에서의 송신 도중에 발생한 오류 등에 의해 완전히 동일하지 않을 가능성이 있기 때문에, 「가공유 데이터」라고 부른다.
이 가공유 데이터 X가 본 발명에 있어서의 제2 가공유 데이터, 가공유 데이터 Y가 본 발명에 있어서의 제1 가공유 데이터이다. 또한 수신기(2)가 본 발명에 있어서의 공유 데이터 정제 장치이다.
이후 송신기측은 실시 형태 1과 마찬가지로 단계 102, 103, 104의 순으로 동작하고, 단계 104에 있어서 생성한 송신용 블록 Dr를 수신기(2)에 대해서 송신한다.
수신기(2)도 실시 형태 1과 마찬가지로 단계 110, 111, 112의 순으로 동작하여, 단계 112에 있어서 검증용 블록 Er를 생성하고, 단계 111로 생성한 교반 후 블록 Cyr과 비교한다.
단계 112에 있어서 교반 후 블록 Cyr과 검증용 블록 Er의 해밍 거리가 소정값을 넘은 경우, 수신기(2)는 단계 116에 있어서 판정결과로서 「다르다」를 공중통신 회선을 통하여 송신기(1)에 송신한다.
판정 결과가 「다르다」인 경우, 송신기(1)와 수신기(2)는 예를 들면 재차 데이터 공급 장치에서 데이터의 공급을 받아 상기 동작을 판정 결과가 「동일하다」가 될 때까지 반복한다.
단계 112에 있어서 교반 후 블록 Cyr과 검증용 블록 Er의 해밍 거리가 소정값 이하인 경우, 수신기(2)는 단계 113에 있어서 판정결과로서 「동일하다」를 공중 통신 회선을 통하여 송신기(1)에 송신한다.
판정 결과가 「동일하다」인 경우, 송신기(1)와 수신기(2)는 동일한 데이터를 공유한 것이 되기 때문에, 예를 들면 이 공유한 데이터를 공통 키 암호 방식의 키로서 사용하여, 암호 통신을 행한다.
이상과 같이 이 실시 형태에 있어서의 수신기는 송신기와 가공유한 가공유 데이터가 일치하고 있는지의 여부를 검증하는 것이고, 공유 데이터 검증 장치 또는 공유 데이터 인증 장치라고도 부를 수 있는 것이다.
또한 이 실시 형태에 있어서는 실시 형태 1과 마찬가지로, 가공유 데이터를 송신기와 수신기(공유 데이터 정제 장치)가 각각 정제용 블록과 일회용 블록으로 분할하여, 정제용 데이터를 각각 해밍 거리 증폭 효과에 의해 해밍 거리를 확대하기 때문에, 가공유한 데이터가 동일한지의 여부를 식별하기 쉽다고 하는 효과가 있다.
또, 본 실시의 형태에서는, 가공유 데이터 이외의 데이터를 공중 통신 회선을 개재하여 송수신하고 있지만, 공중 통신 회선에 한하는 것이 아니고, 전용 회선이나 무선 등을 개재하여도 상관없다.
또한, 본 실시의 형태에서는, 오류 정정 코드를 버넘 암호화하여 생성할 경우, 암호용 데이터로서 이미 완전 공유가 완료된 블록의 번호 중 가장 작은 것을 선택하였지만, 이것에 한하는 것이 아니고, 이미 완전 공유가 완료된 블록의 번호중 어느 하나를 선택해도 좋다. 이 경우, 송신측 및 수신측 쌍방에서 동일한 번호의 블록(이 블록의 비트 수는 오류 정정 코드의 그것과 동일)을 사용한다.
이상과 같이, 본 발명에 따른 공유 데이터 정제 장치 및 공유 데이터 정제 방법은, 송신기와 수신기로 가공유한 데이터로부터 오류를 제거할 때에, 도청될 위험을 작게 하고, 또한 유효한 데이터의 비율을 크게 하는 데 적합하다.

Claims (23)

  1. 송신기가 송신한 가공유 데이터를 소정의 분할 규칙에 의해 분할하여 제1 정제용 블록과 제1 일회용 블록을 생성하는 블록 생성 수단과,
    상기 제1 정제용 블록을 소정의 데이터 교반 규칙에 의해 교반하여 제1 교반 블록을 생성하는 데이터 교반 수단으로서, 해밍 거리가 0인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 0이 되고, 해밍 거리가 1 이상인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 1 이상이 되도록 구성되어 있는 데이터 교반 수단과,
    상기 송신기가 송신한 가공유 데이터가 상기 송신기에 의해 상기 소정의 분할 규칙에 의해 분할되어 생성된 제2 정제용 블록과 제2 일회용 블록 내의 제2 정제용 블록이 상기 소정의 데이터 교반 규칙에 의해서 교반되어 생성된 제2 교반 블록과, 상기 제2 일회용 블록으로부터, 소정의 암호화 규칙에 의해 생성된 암호화 블록을 획득하고,
    상기 암호화 블록을 상기 소정의 암호화 규칙에 대응하는 소정의 복호 규칙에 의해 상기 제1 일회용 블록을 이용해서 복호화하여 복호 블록을 생성하는 복호 블록 생성 수단과,
    상기 복호 블록과 상기 제1 교반 블록을 비교하여, 그 비교 결과에 따라 상기 제1 정제용 블록과 제2 정제용 블록이 동일한지의 여부를 판정하는 동일성 판정수단을 구비하는 공유 데이터 정제 장치.
  2. 제1항에 있어서,
    데이터 저장 수단을 더 가지고,
    동일성 판정 수단은 복호 블록과 제1 교반 블록을 비교하여, 상기 복호 블록과 상기 제1 교반 블록의 해밍 거리가 소정값 이하이면 상기 제1 정제용 블록은 제2 정제용 블록과 동일하다고 판정하고, 상기 제1 정제용 블록을 상기 데이터 저장 수단에 저장하는 공유 데이터 정제 장치.
  3. 제1항에 있어서,
    가공유 데이터는, 송신기가 양자 암호 통신에 의해 송신하는 공유 데이터 정제 장치.
  4. 제1항에 있어서,
    오류 정정 수단을 더 가지고,
    동일성 판정 수단은 복호 블록과 제1 교반 블록을 비교하여, 상기 복호 블록과 상기 제1 교반 블록의 해밍 거리가 소정값을 초과하고 있다고 하는 비교 결과인 경우, 제1 정제용 블록은 제2 정제용 블록과 다르다고 판정하고,
    상기 오류 정정 수단은 그 판정 결과가 「다르다」인 경우, 상기 제1 정제용 블록을 제2 정제용 블록과 일치시키기 위한 정정 정보를 획득하고, 그 정정 정보에기초하여 상기 제1 정제용 블록을 상기 제2 정제용 블록과 일치하도록 정정하는 공유 데이터 정제 장치.
  5. 제2항에 있어서,
    오류 정정 수단을 더 가지고,
    복호 블록 생성 수단은, 암호화 블록과 함께 상기 송신기가 생성한 제1 정제용 블록을 제2 정제용 블록과 일치시키기 위한 정정 정보를 획득하고,
    동일성 판정 수단은 복호 블록과 제1 교반 블록을 비교하여, 비교 결과가 상기 복호 블록과 상기 제1 교반 블록의 해밍 거리가 소정값을 초과하고 있다고 하는 경우, 제1 정제용 블록과 제2 정제용 블록은 다르다고 판정하고,
    상기 오류 정정 수단은 그 판정 결과가 「다르다」인 경우, 상기 정정 정보에 기초하여 상기 제1 정제용 블록을 상기 제2 정제용 블록과 일치하도록 정정하는 공유 데이터 정제 장치.
  6. 제4항에 있어서,
    정정 정보는 제2 정제용 블록의 오류 정정 부호이고, 그 오류 정정 부호에 의해 제1 정제용 블록을 오류 정정하는 공유 데이터 정제 장치.
  7. 제4항에 있어서,
    정정 정보는, 송신기와 데이터 저장 수단이 함께 보유하는 동일 데이터와의배타적 논리합에 의해 암호화되고,
    오류 정정 수단은,
    그 암호화된 정정 정보를 획득하여, 그 획득한 암호화된 정정 정보를 상기 데이터 저장 수단으로부터 획득한 상기 동일 데이터와의 배타적 논리합에 의해 복호화하고, 그 복호화한 정정 정보에 기초하여 제1 정제용 블록을 제2 정제용 블록과 일치하도록 정정하는 공유 데이터 정제 장치.
  8. 제4항에 있어서,
    정정 정보는 제2 정제용 블록을 2등분하여 생성된 제2 정제용 블록 전반부와 제2 정제용 블록 후반부의 배타적 논리합이고,
    오류 정정 수단은 제1 정제용 블록을 2등분하여 생성한 제1 정제용 블록 전반부와 제1 정제용 블록 후반부의 배타적 논리합인 비교 정보를 생성하고,
    상기 정정 정보와 상기 비교 정보로부터 제1 정제용 블록과 제2 정제용 블록에서 일치하지 않는 비트 위치를 추정하고,
    상기 제1 정제용 블록의 상기 추정한 비트 위치의 비트를 반전시켜, 상기 제1 정제용 블록을 제2 정제용 블록과 일치하도록 정정하는 공유 데이터 정제 장치.
  9. 송신기가 송신한 가공유 데이터를 수신하여, 그 수신한 가공유 데이터를 소정의 분할 규칙에 의해 분할하여 제1 정제용 블록과 제1 일회용 블록을 생성하고,
    상기 제1 정제용 블록을 소정의 데이터 교반 규칙에 의해서 교반하여 제1 교반 블록을 생성하고,
    상기 송신기가 송신한 가공유 데이터가 상기 소정의 분할 규칙에 의해 분할되어 생성된 제2 정제용 블록과 제2 일회용 블록 내의 제2 정제용 블록이 상기 소정의 데이터 교반 규칙에 의해서 교반되어 생성된 제2 교반 블록과, 상기 제2 일회용 블록으로부터, 소정의 암호화 규칙에 의해 생성된 암호화 블록을 획득하고,
    상기 암호화 블록을 상기 소정의 암호화 규칙에 대응하는 소정의 복호 규칙에 의해 상기 제1 일회용 블록을 이용해서 복호화하여 복호 블록을 생성하고, 그 복호 블록과 상기 제1 교반 블록을 비교하여, 그 비교 결과에 따라 상기 제1 정제용 블록과 제2 정제용 블록이 동일한지의 여부를 판정하는 공유 데이터 정제 장치로서,
    상기 데이터 교반 규칙은 해밍 거리가 0인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 0이 되고, 해밍 거리가 1 이상인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 1 이상이 되도록 구성되는 공유 데이터 정제 장치.
  10. 송신기와 공유 데이터 정제 장치가 임시로 공유하는 가공유 데이터 중, 상기 공유 데이터 정제 장치가 보유하는 제1 가공유 데이터를 소정의 분할 규칙에 의해 분할하여 제1 정제용 블록과 제1 일회용 블록을 생성하는 블록 생성 수단과,
    상기 제1 정제용 블록을 소정의 데이터 교반 규칙에 의해 교반하여 제1 교반블록을 생성하는 데이터 교반 수단으로서, 해밍 거리가 0인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 0이 되고, 해밍 거리가 1 이상인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 1 이상이 되도록 구성되어 있는 데이터 교반 수단과,
    상기 가공유 데이터 중 상기 송신기가 보유하는 제2 가공유 데이터가 상기 소정의 분할 규칙에 의해 분할되어 생성된 제2 정제용 블록과 제2 일회용 블록 내의 제2 정제용 블록이 상기 소정의 데이터 교반 규칙에 의해서 교반되어 생성된 제2 교반 블록과, 상기 제2 일회용 블록으로부터, 소정의 암호화 규칙에 의해 생성된 암호화 블록을 획득하고,
    상기 암호화 블록을 상기 소정의 암호화 규칙에 대응하는 소정의 복호 규칙에 의해 상기 제1 일회용 블록을 이용해서 복호화하여 복호 블록을 생성하는 복호 블록 생성 수단과,
    상기 복호 블록과 상기 제1 교반 블록을 비교하여, 그 비교 결과에 따라 상기 제1 정제용 블록과 제2 정제용 블록이 동일한지의 여부를 판정하는 동일성 판정 수단을 구비하는 공유 데이터 정제 장치.
  11. 제1항에 있어서,
    제1 일회용 블록과 제2 교반 블록과 제2 일회용 블록은 비트 수가 같고,
    소정의 암호화 규칙은 상기 제2 교반 블록과 상기 제2 일회용 블록의 배타적논리합을 취하는 규칙이고,
    소정의 복호 규칙은 상기 암호화 블록과 상기 제1 일회용 블록의 배타적 논리합을 취하는 규칙인 공유 데이터 정제 장치.
  12. 제9항에 있어서,
    제1 일회용 블록과 제2 교반 블록과 제2 일회용 블록은 비트 수가 같고,
    소정의 암호화 규칙은 상기 제2 교반 블록과 상기 제2 일회용 블록의 배타적 논리합을 취하는 규칙이고,
    소정의 복호 규칙은 상기 암호화 블록과 상기 제1 일회용 블록의 배타적 논리합을 취하는 규칙인 공유 데이터 정제 장치.
  13. 제10항에 있어서,
    제1 일회용 블록과 제2 교반 블록과 제2 일회용 블록은 비트 수가 같고,
    소정의 암호화 규칙은 상기 제2 교반 블록과 상기 제2 일회용 블록의 배타적 논리합을 취하는 규칙이고,
    소정의 복호 규칙은 상기 암호화 블록과 상기 제1 일회용 블록의 배타적 논리합을 취하는 규칙인 공유 데이터 정제 장치.
  14. 제1항에 있어서,
    소정의 데이터 교반 규칙은, 제1 정제용 블록과 제2 정제용 블록의 해밍 거리가 1 이상이고 제1 정제용 블록과 제2 정제용 블록의 비트 수의 1/2보다 충분히 작을 때는, 제1 교반 블록과 제2 교반 블록의 해밍 거리가 상기 제1 정제용 블록과 상기 제2 정제용 블록의 해밍 거리보다 커지도록 교반하는 공유 데이터 정제 장치.
  15. 제9항에 있어서,
    소정의 데이터 교반 규칙은, 제1 정제용 블록과 제2 정제용 블록의 해밍 거리가 1 이상이고 제1 정제용 블록과 제2 정제용 블록의 비트 수의 1/2보다 충분히 작을 때는, 제1 교반 블록과 제2 교반 블록의 해밍 거리가 상기 제1 정제용 블록과 상기 제2 정제용 블록의 해밍 거리보다 커지도록 교반하는 공유 데이터 정제 장치.
  16. 제10항에 있어서,
    소정의 데이터 교반 규칙은, 제1 정제용 블록과 제2 정제용 블록의 해밍 거리가 1 이상이고 제1 정제용 블록과 제2 정제용 블록의 비트 수의 1/2보다 충분히 작을 때는, 제1 교반 블록과 제2 교반 블록의 해밍 거리가 상기 제1 정제용 블록과 상기 제2 정제용 블록의 해밍 거리보다 커지도록 교반하는 공유 데이터 정제 장치.
  17. 제1항에 있어서,
    소정의 데이터 교반 규칙은, 해시 함수인 공유 데이터 정제 장치.
  18. 제9항에 있어서,
    소정의 데이터 교반 규칙은, 해시 함수인 공유 데이터 정제 장치.
  19. 제10항에 있어서,
    소정의 데이터 교반 규칙은, 해시 함수인 공유 데이터 정제 장치.
  20. 송신기와 수신기로 이루어지는 공유 데이터 정제 시스템에 있어서의 공유 데이터 정제 방법에 있어서,
    송신기와 수신기가 각각 소정의 데이터 교반 규칙을 사용하고,
    송신기가 수신기에 대해서 가공유 데이터를 송신하는 가공유 데이터 송신 단계와,
    수신기가 상기 수신한 가공유 데이터를 소정의 분할 규칙에 의해 분할하여 제1 정제용 블록과 제1 일회용 블록을 생성하는 제1 블록 생성 단계와,
    수신기가 상기 제1 정제용 블록을 소정의 데이터 교반 규칙에 의해 교반하여 제1 교반 블록을 생성하는 제1 교반 블록 생성 단계와,
    송신기가 상기 송신한 가공유 데이터를 상기 소정의 분할 규칙에 의해 분할하여 제2 정제용 블록과 제2 일회용 블록을 생성하는 제2 블록 생성 단계와,
    송신기가 상기 제2 정제용 블록을 상기 소정의 교반 규칙에 의해 교반하여 제2 교반 블록을 생성하는 제2 교반 블록 생성 단계와,
    송신기가 상기 제2 교반 블록과 상기 제2 일회용 블록으로부터 소정의 암호화 규칙에 의해 암호화 블록을 생성하여 수신기에 송신하는 암호화 블록 생성 단계와,
    수신기가 상기 암호화 블록을 수신하고, 그 암호화 블록을 상기 소정의 암호화 규칙에 대응하는 소정의 복호 규칙에 의해 상기 제1 일회용 블록을 이용해서 복호화하여 복호 블록을 생성하고, 그 복호 블록과 상기 제1 교반 블록을 비교하여, 그 비교 결과에 따라 상기 제1 정제용 블록과 제2 정제용 블록이 동일한지의 여부를 판정하여, 그 판정 결과에 따라 하기 (a) (b) 중 어느 한 단계로 진행하는 동일성 판정 단계와,
    (a) 판정 결과가 「동일하다」인 경우: 판정결과로서 「동일하다」를 송신기에 송신하고, 상기 제1 정제용 블록을 데이터 저장 수단에 저장하는 제1 정제용 블록 저장 단계와,
    (b) 판정 결과가 「다르다」인 경우: 판정결과로서 「다르다」를 송신기에 송신하는 판정 결과 송신 단계와,
    송신기가 수신기로부터의 판정 결과를 수신하여, 수신한 판정 결과에 따라 하기 (c) (d) 중 어느 한 단계로 진행하는 제2 동일성 판정 단계와,
    (c) 수신한 판정 결과가 「동일하다」인 경우: 처리를 종료하는 종료 단계와,
    (d) 수신한 판정 결과가 「다르다」인 경우: 상기 제2 정제용 데이터와 상기 제1 정제용 데이터를 일치시키기 위한 정정 정보를 생성하여, 수신기에 송신하는 정정 정보 송신 단계와,
    수신기가 송신기로부터 수신한 상기 정정 정보를 이용해서 상기 제1 정제용블록을 제2 정제용 블록과 일치하도록 정정하는 오류 정정 단계를 구비하고,
    상기 소정의 데이터 교반 규칙은 해밍 거리가 0인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 0이 되고, 해밍 거리가 1 이상인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 1 이상이 되는 공유 데이터 정제 방법.
  21. 송신기와 수신기로 이루어지는 공유 데이터 정제 시스템에 있어서의 공유 데이터 정제 방법에 있어서,
    송신기와 수신기가 각각 소정의 데이터 교반 규칙을 사용하고,
    송신기가 수신기에 대해서 가공유 데이터를 송신하는 가공유 데이터 송신 단계와,
    수신기가 상기 수신한 가공유 데이터를 소정의 분할 규칙에 의해 분할하여 제1 정제용 블록과 제1 일회용 블록을 생성하는 제1 블록 생성 단계와,
    수신기가 상기 제1 정제용 블록을 소정의 데이터 교반 규칙에 의해 교반하여 제1 교반 블록을 생성하는 제1 교반 블록 생성 단계와,
    송신기가 상기 송신한 가공유 데이터를 상기 소정의 분할 규칙에 의해 분할하여 제2 정제용 블록과 제2 일회용 블록을 생성하는 제2 블록 생성 단계와,
    송신기가 상기 제2 정제용 블록을 소정의 교반 규칙에 의해 교반하여 제2 교반 블록을 생성하는 제2 교반 블록 생성 단계와,
    송신기가 상기 제2 정제용 블록을 제1 정제용 블록과 일치시키기 위한 정정정보를, 상기 제2 정제용 블록으로부터 소정의 정정 정보 생성 규칙에 의해 생성하는 정정 정보 생성 단계와,
    송신기가 상기 제2 교반 블록과 상기 제2 일회용 블록으로부터 소정의 암호화 규칙에 의해 암호화 블록을 생성하여, 상기 암호화 블록과 상기 정정 정보를 수신기에 송신하는 정정 정보 송신 단계와,
    수신기가 상기 암호화 블록을 수신하여, 그 암호화 블록을 상기 소정의 암호화 규칙에 대응하는 소정의 복호 규칙에 의해 상기 제1 일회용 블록을 이용해서 복호화하여 복호 블록을 생성하고, 그 복호 블록과 상기 제1 교반 블록을 비교하여, 그 비교 결과에 따라 상기 제1 정제용 블록과 제2 정제용 블록이 동일한지의 여부를 판정하고, 그 판정 결과에 따라 하기 (e) (f) 중 어느 한 단계로 진행하는 동일성 판정 단계와,
    (e) 판정 결과가 「동일하다」인 경우: 상기 제1 정제용 블록을 데이터 저장 수단에 저장하는 제1 정제용 블록 저장 단계와,
    (f) 판정 결과가 「다르다」인 경우: 상기 수신한 정정 정보를 이용해서 제1 정제용 블록을 제2 정제용 블록과 일치하도록 정정하는 오류 정정 단계를 구비하고,
    상기 소정의 데이터 교반 수단은 해밍 거리가 0인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 0이 되고, 해밍 거리가 1 이상인 임의의 2개의 디지털 데이터를 각각 교반한 경우에는 생성된 2개의 교반 데이터의 해밍 거리는 1 이상이 되는 공유 데이터 정제 방법.
  22. 제20항에 있어서,
    정정 정보는 제2 정제용 블록이 2등분되어 생성된 제2 정제용 블록 전반부와 제2 정제용 블록 후반부의 배타적 논리합이고,
    수신기는 오류 정정 단계에 있어서,
    제1 정제용 블록을 2등분하여 생성한 제1 정제용 블록 전반부와 제1 정제용 블록 후반부의 배타적 논리합인 비교 정보를 생성하고,
    상기 정정 정보와 상기 비교 정보로부터 제1 정제용 블록과 제2 정제용 블록에서 일치하지 않는 비트 위치를 추정하고,
    상기 제1 정제용 블록의 상기 추정한 비트 위치의 비트를 반전시켜, 상기 제1 정제용 블록을 제2 정제용 블록과 일치하도록 정정하는 공유 데이터 정제 방법.
  23. 제21항에 있어서,
    수신기는 데이터 저장 수단을 가지고,
    정정 정보 생성 단계에 있어서 생성된 정정 정보는, 정정 정보 송신 단계에 있어서 송신기와 상기 데이터 저장 수단이 함께 보유하는 동일 데이터와의 배타적 논리합에 의해 암호화되어 수신기에 송신되고,
    수신기는 오류 정정 단계에 있어서,
    상기 암호화된 정정 정보를 획득하여, 상기 데이터 저장 수단으로부터 획득한 상기 동일 데이터와의 배타적 논리합에 의해 복호화하고, 그 복호화한 정정 정보에 기초하여 상기 제1 정제용 블록을 제2 정제용 블록과 일치하도록 정정하는 공유 데이터 정제 방법.
KR10-2003-7003476A 2001-07-10 2002-07-09 공유 데이터 정제 장치 및 공유 데이터 정제 방법 KR100517847B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001208716 2001-07-10
JPJP-P-2001-00208716 2001-07-10
PCT/JP2002/006961 WO2003007543A1 (fr) 2001-07-10 2002-07-09 Dispositif et procede d'affinage de donnees partagees

Publications (2)

Publication Number Publication Date
KR20030036769A true KR20030036769A (ko) 2003-05-09
KR100517847B1 KR100517847B1 (ko) 2005-09-30

Family

ID=19044484

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-7003476A KR100517847B1 (ko) 2001-07-10 2002-07-09 공유 데이터 정제 장치 및 공유 데이터 정제 방법

Country Status (11)

Country Link
US (1) US7260222B2 (ko)
EP (1) EP1406412B1 (ko)
JP (1) JP4187105B2 (ko)
KR (1) KR100517847B1 (ko)
CN (1) CN100449992C (ko)
AT (1) ATE355674T1 (ko)
AU (1) AU2002346319B2 (ko)
CA (1) CA2421720C (ko)
DE (1) DE60218470T2 (ko)
NO (1) NO20031056L (ko)
WO (1) WO2003007543A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100763464B1 (ko) * 2003-12-16 2007-10-04 김기호 암호화된 통신을 위한 비밀키 교환 방법

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4509530B2 (ja) * 2003-10-23 2010-07-21 三菱電機株式会社 量子暗号通信方法
JP4200909B2 (ja) * 2004-01-29 2008-12-24 日本電気株式会社 乱数生成共有システム、暗号化通信装置及びそれらに用いる乱数生成共有方法
JP3876324B2 (ja) * 2004-03-31 2007-01-31 独立行政法人情報通信研究機構 乱数列共有システム、乱数列共有装置、暗号復号システム、暗号装置、復号装置、乱数列共有方法、暗号方法、復号方法、ならびに、プログラム
KR100855958B1 (ko) * 2004-11-24 2008-09-02 삼성전자주식회사 해밍거리를 이용한 부가 채널 공격에 안전한 암호화시스템 및 방법
US8054976B2 (en) * 2005-06-16 2011-11-08 Keith Alexander Harrison Quantum key distribution apparatus and method
GB0512229D0 (en) * 2005-06-16 2005-07-27 Hewlett Packard Development Co Quantum key distribution apparatus & method
US9191198B2 (en) 2005-06-16 2015-11-17 Hewlett-Packard Development Company, L.P. Method and device using one-time pad data
JP5384781B2 (ja) * 2005-08-18 2014-01-08 日本電気株式会社 秘匿通信システムおよび共有秘密情報の生成方法
JP2007086170A (ja) * 2005-09-20 2007-04-05 Nec Corp 汎用ハッシュ関数族計算装置、方法、プログラム、および共有鍵生成システム
DE102006044799A1 (de) * 2006-09-22 2008-04-03 Audi Ag Karosseriemodul für einen Kraftwagen sowie dessen Befestigungsanordnung
KR100933166B1 (ko) * 2007-08-20 2009-12-21 삼성전자주식회사 근거리 네트워크에서 데이터를 공유하기 위한 방법 및 이를 위한 단말기
WO2009144535A1 (en) * 2008-05-26 2009-12-03 Nxp B.V. Reader and transponder for obscuring the applications supported by a reader and/or a transponder and method thereof
JP6359285B2 (ja) * 2014-02-17 2018-07-18 株式会社東芝 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11133854A (ja) * 1997-10-29 1999-05-21 Oki Electric Ind Co Ltd データ送信装置、データ受信装置及びデータ伝送システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100763464B1 (ko) * 2003-12-16 2007-10-04 김기호 암호화된 통신을 위한 비밀키 교환 방법

Also Published As

Publication number Publication date
JP4187105B2 (ja) 2008-11-26
JPWO2003007543A1 (ja) 2004-11-04
CN100449992C (zh) 2009-01-07
EP1406412B1 (en) 2007-02-28
CA2421720A1 (en) 2003-03-07
US20030188242A1 (en) 2003-10-02
US7260222B2 (en) 2007-08-21
DE60218470T2 (de) 2007-11-29
KR100517847B1 (ko) 2005-09-30
NO20031056D0 (no) 2003-03-07
EP1406412A4 (en) 2005-09-21
EP1406412A1 (en) 2004-04-07
CA2421720C (en) 2007-07-03
DE60218470D1 (de) 2007-04-12
ATE355674T1 (de) 2006-03-15
CN1465162A (zh) 2003-12-31
NO20031056L (no) 2003-05-02
AU2002346319B2 (en) 2004-04-22
WO2003007543A1 (fr) 2003-01-23

Similar Documents

Publication Publication Date Title
US10887094B2 (en) Authentication apparatus and method for quantum cryptography communication
KR101095239B1 (ko) 보안 통신
US8284937B2 (en) Method for synchronization in encrypted communications using shared key
US5345507A (en) Secure message authentication for binary additive stream cipher systems
KR100517847B1 (ko) 공유 데이터 정제 장치 및 공유 데이터 정제 방법
US7680273B2 (en) System and method for optimizing error detection to detect unauthorized modification of transmitted data
KR101092696B1 (ko) 에러 정정 코드에 기초하는 메시지 인증 코드
CN113038468A (zh) 一种物联网无线终端量子密钥分发与协商方法
RU2669144C1 (ru) Способ и устройство имитоустойчивой передачи информации по каналам связи
WO2010103628A1 (ja) 暗号通信システム
US20180270014A1 (en) Information processing apparatus
KR20170137872A (ko) 암호화 체크섬 생성
Pacher et al. Attacks on quantum key distribution protocols that employ non-ITS authentication
JP3728500B2 (ja) 変調メッセージの認証システム及び方法
KR20050022623A (ko) 자체 오류 감지 기능을 강화한 상호 의존적 병렬 연산방식의 하드웨어 암호화 장치 및 그 하드웨어 암호화 방법
Dubrova et al. Cryptographically secure CRC for lightweight message authentication
Muzaffar et al. Lightweight, single-clock-cycle, multilayer cipher for single-channel IoT communication: Design and implementation
US20230216838A1 (en) System and methods for puf-based authentication
JP2005114870A (ja) 暗号通信システム
Pehl et al. KeLiPUF: a key-distribution protocol for lightweight devices using Physical Unclonable Functions
US11595200B2 (en) Quantum key distribution system and method for securely distributing quantum keys in a network
US20230299949A1 (en) Key exchange protocol
Muzaffar et al. Secure ECS Communication
Saracino Implementation and experimentation of a practical Quantum Identity Authentication protocol
JP2006189607A (ja) 復号装置とそのプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090910

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee