KR20030085094A - 암호화 장치 - Google Patents

암호화 장치 Download PDF

Info

Publication number
KR20030085094A
KR20030085094A KR10-2003-7013024A KR20037013024A KR20030085094A KR 20030085094 A KR20030085094 A KR 20030085094A KR 20037013024 A KR20037013024 A KR 20037013024A KR 20030085094 A KR20030085094 A KR 20030085094A
Authority
KR
South Korea
Prior art keywords
data
random number
integrity
unit
wireless communication
Prior art date
Application number
KR10-2003-7013024A
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 KR20030085094A publication Critical patent/KR20030085094A/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/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
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/037Protecting confidentiality, e.g. by encryption of the control plane, e.g. signalling traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations
    • 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
    • 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/80Wireless

Abstract

난수 열을 생성하는 데이터 은닉용 함수 f8에 의해 미리 난수 열을 생성하고, 난수 열 기억부(버퍼)에 기억해 둔다. 데이터(메시지)가 입력된 경우에 난수 열 기억부에 기억한 난수 열을 획득하고, 배타적 논리합 연산 회로에서 데이터(메시지)를 암호화하여 암호문을 작성한다. 데이터를 복호하는 경우에도, 데이터 은닉용 함수 f8에서, 미리 난수 열을 발생하여 난수 열 기억부(버퍼)에 기억해 둔다. 암호문이 입력된 경우에, 배타적 논리합 연산 회로에서 난수 열 기억부(버퍼)로부터 난수 열을 판독하여 데이터(메시지)로 복호화한다.

Description

암호화 장치{ENCRYPTING DEVICE}
도 24는 종래의 휴대 전화기(500)를 나타내는 도면이다.
종래의 휴대 전화기(500)에는 단말 IF(인터페이스)부(510)와 무선 통신 제어부(520)와 무선 통신부(530)가 구비되어 있다. 단말 IF부(510)는 휴대 전화기(500)의 사용자와의 인터페이스를 행하는 부분이다. 무선 통신 제어부(520)는 휴대 전화기(500) 전체의 통신 제어와 프로토콜에 기초한 데이터의 변환과 데이터 처리를 행하는 부분이다. 무선 통신부(530)는 데이터를 변조 복조하여, 무선 통신을 가능하게 하는 부분이다. 무선 통신부(530)는 OSI(Open Systems Interconnection)에 의해 정의되어 있는 7계층의 층 중, 최하층인 물리층(층 1)를 서포트하고 있는 부분이다. 무선 통신부(530)에는 은닉 처리부(540)가 제공되어 있다. 은닉 처리부(540)는 무선 통신부(530)에 의해 취급되는 물리층의 데이터에 대하여 암호화 처리, 혹은 복호화 처리를 행하는 부분이다. 은닉 처리부(540)를 제공함으로써 안테나(541)에 의해 송수신되는 데이터를 도청하여도 암호화되어 있으므로, 해독되지 않는 한은 도청자가 유의한 정보를 얻는 것은 불가능하게 된다.
종래의 휴대 전화기(500)는 은닉 처리부(540)를 무선 통신부(530)의 내부에 갖고 있다. 이 때문에, 은닉 처리부(540)가 은닉 대상으로 하는 데이터는 물리층(층 1)의 데이터이다. 물리층에서는, 그 데이터가 사용자 데이터인지 제어 데이터인지를 특정할 수 없다. 휴대 전화기에 의해 송수신되는 데이터 중에는 각종 사용자 데이터 및 시그널링 데이터 등 여러 종류가 있으며, 그 데이터 종류에 따라 은닉 처리를 행하거나, 혹은 그 데이터의 중요성에 따라 데이터의 완전성을 보증할 필요가 있다. 종래의 구성과 같이, 은닉 처리부(540)가 층 1에 제공되어 있는 것으로는, 층 1에서는 데이터의 종별을 구별할 수 없기 때문에, 데이터의 종별에 따라 은닉 처리나 완전성의 보증을 한다고 할 수 없었다.
또한, 종래의 은닉 처리는 데이터의 입력에 동기시켜 난수 열을 발생시키고, 데이터의 입력에 동기시켜 데이터와 난수 열과의 배타적 논리합 연산을 행하고 있었다.
또한, 종래의 완전성 보증 처리는 각 데이터마다 완전성 인증자를 생성하거나, 각 데이터마다 데이터의 완전성을 체크하고 있었다.
본 발명의 바람직한 실시 형태에서는 은닉 처리와 완전성 보증 처리를 고속으로 행할 수 있도록 하는 것을 목적으로 한다.
또한, 본 발명의 바람직한 실시 형태에서는 OSI의 7개의 계층 중, 층 2(데이터 링크층) 이상의 상위 층에서 은닉 처리와 완전성 보증 처리를 행할 수 있도록 하는 것을 목적으로 한다.
또한, 본 발명의 바람직한 실시 형태에서는 은닉 처리와 완전성 보증 처리가 중앙 처리 장치와 버스에 부하를 주지 않고 행할 수 있도록 하는 것을 목적으로 한다.
<발명의 개시>
본 발명에 따른 암호화 장치는 난수 열을 생성하는 암호화기와,
상기 암호화기에 의해 생성된 난수 열을 기억하는 난수 열 기억부와,
평문을 입력하고, 입력한 평문과 상기 난수 열 기억부에 기억된 난수 열을 연산하여 암호문을 출력하는 연산부를 포함하며,
상기 난수 열 기억부에 의해 난수 열을 미리 기억함으로써, 상기 암호화기에 의한 난수 열의 생성과, 상기 연산부에 의한 평문과 난수 열과의 연산을 비동기로 행하는 것을 특징으로 한다.
상기 암호화기는 상기 연산부의 평문의 입력 전에 난수 열의 생성을 개시하는 것을 특징으로 한다.
상기 암호화기는 적어도 암호키와 평문의 길이를 입력하고, 암호키를 이용하여 평문 길이의 난수 열을 생성하여 생성한 난수 열을 상기 난수 열 기억부에 기억시키고,
상기 난수 열 기억부는 연산부에 평문이 입력된 경우에, 기억한 난수 열을 출력하는 버퍼를 갖는 것을 특징으로 한다.
상기 연산부는 복수의 채널에 대응하여, 평문을 입력하고,
상기 암호화기는 채널을 식별하는 채널 식별 정보를 입력하여, 채널마다 난수 열을 생성하며,
상기 난수 열 기억부는 상기 암호화기가 채널마다 생성한 난수 열을 기억하고,
상기 연산부는 평문을 입력한 채널에 대응하는 난수 열을 상기 난수 열 기억부로부터 입력하여, 평문을 암호화하는 것을 특징으로 한다.
본 발명에 따른 복호화 장치는 난수 열을 생성하는 복호화기와,
상기 복호화기에 의해 생성된 난수 열을 기억하는 난수 열 기억부와,
암호문을 입력하며, 입력한 암호문과 상기 난수 열 기억부에 기억된 난수 열을 연산하여 평문을 출력하는 연산부를 포함하며,
상기 난수 열 기억부에 의해 난수 열을 미리 기억함으로써, 상기 복호화기에 의한 난수 열의 생성과, 상기 연산부에 의한 암호문과 난수 열과의 연산을 비동기로 행하는 것을 특징으로 한다.
상기 복호화기는 상기 연산부의 암호문의 입력 전에 난수 열의 생성을 개시하는 것을 특징으로 한다.
상기 복호화기는 적어도 복호키와 암호문의 길이를 입력하고, 복호키를 이용하여 암호문의 길이의 난수 열을 생성하여 생성한 난수 열을 상기 난수 열 기억부에 기억시키며,
상기 난수 열 기억부는 연산부에 암호문이 입력된 경우에, 기억한 난수 열을 출력하는 버퍼를 갖는 것을 특징으로 한다.
상기 연산부는 복수의 채널에 대응하여, 암호문을 입력하며,
상기 복호화기는 채널을 식별하는 채널 식별 정보를 입력하여, 채널마다 난수 열을 생성하고,
상기 난수 열 기억부는 상기 복호화기가 채널마다 생성한 난수 열을 기억하며,
상기 연산부는 암호문을 입력한 채널에 대응하는 난수 열을 상기 난수 열 기억부로부터 입력하여, 암호문을 복호화하는 것을 특징으로 한다.
본 발명에 따른 완전성 인증자 생성 장치는 X(X≥2)개의 데이터와 X개의 제어 신호 데이터를 입력하여 기억하는 데이터 기억부와,
상기 데이터 기억부가 기억한 X개의 데이터와 X개의 제어 신호 데이터를 입력하여, X개의 데이터에 대한 X개의 완전성 인증자를 생성하며, X개의 완전성 인증자를 통합하여 출력하는 완전성 인증자 생성기를 포함하는 것을 특징으로 한다.
상기 완전성 인증자 생성 장치는 버스를 통해, 중앙 처리 장치와 접속되며,
상기 데이터 기억부는 X개의 데이터와 X개의 제어 신호 데이터를 버스를 통해 중앙 처리 장치로부터 통합하여 입력하고,
상기 완전성 인증자 생성기는 생성한 X개의 완전성 인증자를 버스를 통해 중앙 처리 장치로 통합하여 출력하는 것을 특징으로 한다.
본 발명에 따른 완전성 인증자 부가 장치는 X(X≥2)개의 데이터와 X개의 제어 신호 데이터를 입력하여 기억하는 데이터 기억부와,
상기 데이터 기억부가 기억한 X개의 데이터와 X개의 제어 신호 데이터를 입력하여, X개의 데이터에 대한 X개의 완전성 인증자를 생성하며, X개의 완전성 인증자를 통합하여 출력하는 완전성 인증자 생성기와,
상기 완전성 인증자 생성기가 통합하여 출력한 X개의 완전성 인증자를 입력하여, X개의 완전성 인증자를 X개의 데이터에 부가하고, X개의 완전성 인증자가 부가된 X개의 데이터를 출력하는 완전성 인증자 부가기
를 포함하는 것을 특징으로 한다.
본 발명에 따른 완전성 확인 장치는 X(X≥2)개의 완전성 인증자가 부가된 X개의 데이터와 X개의 제어 신호 데이터를 입력하여 기억하는 데이터 기억부와,
상기 데이터 기억부가 기억한 X개의 데이터와 X개의 제어 신호 데이터를 입력하여, X개의 데이터에 대한 X개의 완전성 인증자를 생성하며, X개의 완전성 인증자를 통합하여 출력하는 완전성 인증자 생성기와,
상기 완전성 인증자 생성기가 통합하여 출력한 X개의 완전성 인증자를 입력하고, 입력한 X개의 완전성 인증자와 상기 X개의 데이터에 부가된 X개의 완전성 인증자를 각각 비교하여, X개의 데이터의 완전성을 확인하는 완전성 확인기
를 포함하는 것을 특징으로 한다.
본 발명에 따른 무선 통신 장치는 데이터를 입력하는 단말 인터페이스부와,
단말 인터페이스부가 입력한 데이터를 입력하며, 프로토콜에 기초하여 데이터를 처리하여 출력하는 무선 통신 제어부와,
무선 통신 제어부로부터 제어 신호와 데이터를 입력하며, 입력한 제어 신호에 기초하여, 입력한 데이터에 대하여 데이터를 암호화하는 은닉 처리를 행하고, 처리한 데이터를 무선 통신 제어부에 출력하는 은닉 처리부와,
무선 통신 제어부로부터 출력된 데이터를 입력하고 변조하여 송신하는 무선 통신부
를 포함하며,
상기 은닉 처리부는
데이터를 암호화하는 난수 열의 생성을 데이터의 입력 전에 개시하여 생성한 난수 열을 출력하는 암호화기와,
암호화기로부터 출력되는 난수 열을 데이터의 입력 전에 일시적으로 저장하는 난수 열 기억부와,
데이터를 입력하고, 입력한 데이터와 상기 난수 열 기억부에 기억된 난수 열을 연산하여 데이터를 암호화하는 연산부
를 포함하는 것을 특징으로 한다.
본 발명에 따른 무선 통신 장치는 데이터를 입력하는 단말 인터페이스부와,
단말 인터페이스부가 입력한 데이터를 입력하며, 프로토콜에 기초하여 데이터를 처리하여 출력하는 무선 통신 제어부와,
무선 통신 제어부로부터 제어 신호와 데이터를 입력하며, 입력한 제어 신호에 기초하여, 입력한 데이터에 대하여 데이터의 개찬(改竄)을 검출하기 위한 완전성 인증자를 생성하는 완전성 보증 처리를 행하고, 처리한 데이터를 무선 통신 제어부에 출력하는 완전성 보증 처리부와,
무선 통신 제어부로부터 출력된 데이터를 입력하고 변조하여 송신하는 무선 통신부
를 포함하며,
상기 완전성 보증 처리부는,
무선 통신 제어부로부터 제어 신호와 데이터를 복수 통합하여 입력하고, 일시적으로 저장하는 데이터 기억부와,
데이터 기억부가 기억한 복수의 데이터에 대하여 제어 신호를 이용하여 완전성 인증자를 생성하여 복수의 완전성 인증자를 통합하여 출력하는 완전성 인증자 생성기를 갖는 것을 특징으로 한다.
본 발명에 따른 무선 통신 장치는 데이터를 수신하여 복조하는 무선 통신부와,
무선 통신부에 의해 복조된 데이터를 입력하여, 프로토콜에 기초하여 데이터를 처리하여 출력하는 무선 통신 제어부와,
무선 통신 제어부로부터 제어 신호와 데이터를 입력하고, 입력한 제어 신호에 기초하여, 입력한 데이터에 대하여 데이터를 복호화하는 은닉 처리를 행하며, 처리한 데이터를 무선 통신 제어부에 출력하는 은닉 처리부와,
무선 통신 제어부에 의해 처리된 데이터를 입력하여 출력하는 단말 인터페이스부
를 포함하며,
상기 은닉 처리부는
입력한 데이터를 복호화하는 난수 열을 데이터의 입력 전에 생성하여 출력하는 복호화기와,
복호화기로부터 출력되는 난수 열을 데이터의 입력 전에 일시적으로 저장하는 난수 열 기억부와,
데이터를 입력하고, 입력한 데이터와 상기 난수 열 기억부에 기억된 난수 열을 연산하여 평문을 출력하는 연산부
를 갖는 것을 특징으로 한다.
본 발명에 따른 무선 통신 장치는 데이터를 수신하여 복조하는 무선 통신부와,
무선 통신부에 의해 복조된 데이터를 입력하고, 프로토콜에 기초하여 데이터를 처리하여 출력하는 무선 통신 제어부와,
무선 통신 제어부로부터 제어 신호와 데이터를 입력하며, 입력한 제어 신호에 기초하여, 입력한 데이터에 대하여 데이터의 개찬을 검증하는 완전성 보증 처리를 행하고, 처리한 데이터를 무선 통신 제어부에 출력하는 완전성 보증 처리부와,
무선 통신 제어부에 의해 처리된 데이터를 입력하여 출력하는 단말 인터페이스부
를 포함하며,
상기 완전성 보증 처리부는
무선 통신 제어부로부터 제어 신호와 데이터를 복수 통합하여 입력하고, 일시적으로 저장하는 데이터 기억부와,
데이터 기억부가 기억한 복수의 데이터에 대하여 제어 신호를 이용하여 완전성 인증자를 생성하여 복수의 완전성 인증자를 통합하여 출력하는 완전성 인증자생성기를 갖는 것을 특징으로 한다.
본 발명에 따른 암호화 방법은 평문을 입력하기 전에 난수 열의 생성을 개시하고, 생성한 난수 열을 미리 난수 열 기억부에 기억하며,
난수 열 생성의 개시 후에 평문을 입력하고, 입력한 평문과 상기 난수 열 기억부에 미리 기억한 난수 열을 연산하여 암호문을 출력하는 것을 특징으로 한다.
본 발명에 따른 복호화 방법은 암호문을 입력하기 전에 난수 열의 생성을 개시하고, 생성한 난수 열을 미리 난수 열 기억부에 기억하며,
난수 열 생성의 개시 후에 암호문을 입력하고, 입력한 암호문과 상기 난수 열 기억부에 미리 기억한 난수 열을 연산하여 평문을 출력하는 것을 특징으로 한다.
본 발명에 따른 완전성 인증자 생성 방법은 X(X≥2)개의 데이터와 X개의 제어 신호 데이터를 입력하여 데이터 기억부에 기억하며,
상기 데이터 기억부가 기억한 X개의 데이터와 X개의 제어 신호 데이터를 입력하여, X개의 데이터에 대한 X개의 완전성 인증자를 생성하고, X개의 완전성 인증자를 통합하여 출력하는 것을 특징으로 한다.
본 발명은 휴대 전화기 등의 암호화 장치, 복호화 장치, 완전성 인증자 생성 장치, 완전성 인증자 부가 장치, 완전성 확인 장치 및 무선 통신 장치에 관한 것이다. 특히, 데이터의 은닉 처리와 완전성 보증 처리에 관한 것이다.
도 1은 이동체 통신 시스템의 구성도.
도 2는 무선 제어국(RNC)(120)의 구성도.
도 3은 제1 실시 형태의 무선 단말(MS)(100)의 구성도.
도 4는 제1 실시 형태의 은닉·완전성 보증 처리부(40)의 구성도.
도 5는 제1 실시 형태의 은닉·완전성 보증 처리부(40)의 구성도.
도 6은 제1 실시 형태의 은닉·완전성 보증 처리부(40)의 구성도.
도 7은 제1 실시 형태의 은닉·완전성 보증 처리부(40)의 구성도.
도 8은 제1 실시 형태의 은닉·완전성 보증 처리부(40)의 구성도.
도 9는 제2 실시 형태의 무선 단말(MS)(100)의 구성도.
도 10은 제2 실시 형태의 은닉·완전성 보증 처리부(40)의 구성도.
도 11은 제2 실시 형태의 은닉·완전성 보증 처리부(40)의 구성도.
도 12는 암호화 방식 및 복호화 방식의 일례를 나타내는 도면.
도 13은 제2 실시 형태의 은닉·완전성 보증 처리부(40)의 구성도.
도 14는 ARIB STD-T63 33. 102, 3G Security ; Security Architecture, Section 6.3.에 나타낸 도면.
도 15는 ARIB STD-T63 33. 102, 3G Security ; Security Architecture, Figure 16b에 나타낸 도면.
도 16은 ARIB STD-T63 33. 102, 3G Security ; Security Architecture, Figure 16에 나타낸 도면.
도 17은 암호화/복호화부(421)의 중에서 이용되는 암호화 모듈(51)(또는 복호화 모듈(71))의 구성도.
도 18은 은닉·완전성 보증 처리부(40)의 실장 형식을 나타내는 도면.
도 19는 은닉·완전성 보증 처리부(40)를 소프트웨어에 의해 실현하는 경우를 나타내는 도면.
도 20은 무선 통신 제어부(20)에 의해 동작하는 어플리케이션 프로그램(46)이 암호화 프로그램(47)을 호출하는 메카니즘을 나타내는 도면.
도 21은 RLC 비투과 모드일 때의 데이터(92, 93)의 구체예를 나타내는 도면.
도 22는 투과 데이터(95, 96)의 일례로서 음성 데이터의 구체예를 나타내는 도면.
도 23은 투과 데이터(95, 96)의 일례로서 비제한 디지털 데이터의 구체예를 나타내는 도면.
도 24는 종래의 휴대 전화기(500)를 나타내는 도면.
도 25는 제3 실시 형태의 은닉 처리의 암호화 방식 및 복호화 방식을 나타내는 도면.
도 26은 제3 실시 형태의 완전성 보증 처리부의 완전성 인증 방식을 나타내는 도면.
도 27은 제3 실시 형태의 무선 통신 제어부(20)와 은닉·완전성 보증 처리부(40)의 구성도.
도 28은 제3 실시 형태의 은닉 처리부(420)의 구성도.
도 29는 제3 실시 형태의 은닉 처리부(420)의 구성도.
도 30은 제3 실시 형태의 은닉 처리부(460)의 구성도.
도 31은 제3 실시 형태의 완전성 보증 처리부(430)의 구성도.
도 32는 제3 실시 형태의 완전성 보증 처리부(430)의 구성도.
도 33은 제3 실시 형태의 암호화부(422)가 복수의 버퍼를 갖는 구성도.
도 34는 제3 실시 형태의 암호화부(422)가 복수의 버퍼를 갖는 구성도.
도 35는 제3 실시 형태의 암호화부(422)가 복수의 버퍼를 갖는 구성도.
<발명을 실시하기 위한 최량의 형태>
<제1 실시 형태>
도 1은 이 실시 형태의 이동체 통신 시스템의 전체 구성도이다.
무선 단말(MS)(100)은 본 발명의 무선 통신 장치의 일례이다. 무선 단말(MS)(100)은 예를 들면, 휴대 전화기이다. 무선 단말(MS)(100)은 무선으로 무선 기지국(BTS)(110)과 접속된다. 무선 기지국(BTS)(110)은 무선 제어국(RNC)(120)과 접속된다. 무선 제어국(RNC)(120)은 다른 무선 제어국(RNC)(120)과 접속된다. 또한, 무선 제어국(RNC)(120)은 코어 네트워크(CN)(130)에 접속되며, 코어 네트워크(CN)(130)를 통해 다른 무선 제어국(RNC)(120)과 접속된다. 무선 기지국(BTS)(110)과 무선 제어국(RNC)(120) 중 어느 하나 또는 양쪽 모두를 무선국이라고도 한다.
도 2는 도 1과 동일한 이동체 통신 시스템의 구성도이다. 특히, 무선 제어국(RNC)(120)의 내부 구성을 나타내고 있다.
BTS IF부(121)는 무선 기지국(BTS)(110)을 접속한다. 핸드 오버 제어부(122)는 무선 기지국(BTS)(110) 사이를 무선 단말(MS)(100)이 이동하는 경우의 핸드 오버를 제어한다.
대(對) MS 신호 제어부(123)는 무선 단말(MS)(100)과의 사이에서의 무선 통신 제어 및 데이터의 은닉 처리 및 완전성 보증 처리를 행한다. 이하에 설명하는무선 단말기(MS)(100)의 은닉 처리 및 완전성 보증 처리는 대 MS 신호 제어부(123)의 은닉 처리 및 완전성 보증 처리에 대응하여 행해지는 것이다. 즉, 무선 단말(MS)(100)에서 암호화된 데이터는 대 MS 신호 제어부(123)에서 복호화된다. 반대로, 대 MS 신호 제어부(123)에서 암호화된 데이터는 무선 단말(MS)(100)에서 복호화된다. 또한, 무선 단말(MS)(100)에서 데이터의 완전성을 보증하기 위해 부가된 인증자는 대 MS 신호 제어부(123)에서 검증된다. 반대로, 대 MS 신호 제어부(123)에서 데이터의 완전성을 보증하기 위해 부가된 인증자는 무선 단말(MS)(100)에서 검증된다. 이 무선 단말(MS)(100)과 대 MS 신호 제어부(123)에서의 데이터의 은닉 처리 및 데이터의 완전성 보증 처리는 OSI의 7개의 계층 중 2번째의 층, 즉, 층 2(데이터 링크층)에서 행해진다. CN IF부(124)는 코어 네트워크(CN)(130)와의 인터페이스를 취한다.
RNC IF부(125)는 다른 무선 제어국(RNC)(120)과의 인터페이스를 취한다. 대 CN 신호 제어부(126)는 코어 네트워크(CN)(130)와의 사이에서의 제어를 행한다. 대 RNC 신호 제어부(127)는 다른 무선 제어국(RNC)(120)과의 사이에서 제어를 행한다. 제어부(128)는 무선 제어국(RNC)(120) 전체를 제어한다. 스위치(129)는 제어부(128)의 제어에 기초하여, 무선 기지국(BTS)(110)과 무선 제어국(RNC)(120)과 코어 네트워크(CN)(130)와의 사이에서 제어 신호 및 패킷 데이터를 스위칭한다. 즉, 스위치(129)는 패킷 데이터뿐만 아니라, 음성 등을 포함하는 모든 데이터를 스위칭함과 함께, 제어 신호도 스위칭한다.
도 3은 무선 단말(MS)(100)의 구성도이다.
무선 단말(MS)(100)은 단말 IF부(10)와 무선 통신 제어부(20)와 무선 통신부(30)와 은닉·완전성 보증 처리부(40)를 갖고 있다. 단말 IF부(10)는 카메라(1)와 비디오(2)와 B/T(Blue Tooth)(3)와 LCD(4)와 KEY(5)와 LED(6)와 USIM(Universal Subscriber Identity Module)(7)과 RECEIVER(8)와 MIC(9)와 HSJ(Head Set Jack)(0)를 접속하고 있다. 이들 카메라(1)로부터 HSJ(0)는 사용자(사람) 혹은 접속 대상이 되는 기기와의 인터페이스를 위한 처리를 행하여, 사용자(사람) 혹은 접속 대상이 되는 기기가 인식할 수 있는 정보를 입력 또는 출력하는 것이다.
단말 IF부(10)는 내부에 각 모듈 IF부(11)와 데이터 포맷 변환부(12)와 단말 IF 제어부(13)와 음성 부호화/복호화부(14)를 갖고 있다. 각 모듈 IF부(11)는 카메라(1)로부터 HSJ(0)와의 각 인터페이스를 취한다. 데이터 포맷 변환부(12)는 카메라(1) 내지 HSJ(0)에서 취급하는 각 데이터 포맷과 무선 단말(MS)(100) 내부에서 취급하는 각 데이터 포맷과의 사이에서의 변환을 행한다. 단말 IF 제어부(13)는 단말 IF부(10)의 동작을 제어한다. 음성 부호화/복호화부(14)는 MIC(9)로부터 입력된 음성 전기 신호를 음성 부호화한다. 또한, 음성 부호화/복호화부(14)는 음성 부호화된 신호를 복호하여 RECEIVER(8)에 대하여 음성 전기 신호를 출력한다.
무선 통신 제어부(20)는 무선 단말(MS)(100)의 전체 제어를 행한다. 무선 통신 제어부(20)에는 CPU, ROM, RAM, 펌웨어 등으로 이루어지는 하드웨어 회로, 혹은 소프트웨어 모듈이 포함되어 있다. 무선 통신 제어부(20)는 단말 IF부(10)와 무선 통신부(30)와의 사이에서 데이터를 처리하는 것이며, 규격 혹은 프로토콜에의해 정해진 규칙에 기초하여 데이터의 변환 처리를 행한다. 특히, 층 2 이상의 처리를 행한다. 예를 들면, 데이터의 패킷화나 데이터의 연결 등을 행한다. 무선 통신 제어부(20)는 층 2 이상의 데이터를 취급하기 때문에, 데이터의 종별을 판단할 수 있다. 그리고, 데이터의 종별에 따라, 그 데이터가 은닉 처리되어야 할 데이터인지, 또는 완전성 보증 처리되어야 할 데이터인지를 판단할 수 있다. 층 1의 데이터에서는 데이터의 종별을 판단할 수 없기 때문에, 그 데이터가 은닉 처리되어야 할 데이터인지, 또는 완전성 보증 처리되어야 할 데이터인지를 판단할 수 없다.
무선 통신부(30)는 통신로 부호화부(310)와 기저 대역 변복조부(320)와 무선부(330)와 안테나(34)를 포함하고 있다. 통신로 부호화부(310)는 각 통신로용의 부호화부와 복호화부를 갖고 있다. 부호화부로서, 에러 검출 부호화부(311)와 에러 정정 부호화부(312)와 물리 포맷 변환부(313)를 갖고 있다. 또한, 복호화부로서 물리 포맷 변환부(314), 에러 정정 복호화부(315), 에러 검출부(316)를 갖고 있다. 기저 대역 변복조부(320)는 대역의 변조 및 복조를 행한다. 기저 대역 변복조부(320)는 기저 대역 변조부(321)와 기저 대역 복조부(322)를 갖고 있다. 무선부(330)는 기저 대역의 신호를 전송 대역으로 변환 혹은 전송 대역의 신호를 기저 대역으로 변환한다. 무선부(330)는 업 컨버터(331)와 다운 컨버터(332)를 갖고 있다.
은닉·완전성 보증 처리부(40)는 무선 통신 제어부(20)에 접속되어 있다. 은닉·완전성 보증 처리부(40)는 무선 통신 제어부(20)로부터 데이터를 수취하여, 은닉 처리를 행한다. 또한, 데이터의 완전성 보증 처리를 행한다. 은닉·완전성보증 처리부(40)는 무선 통신 제어부(20)로부터 은닉 및 완전성 보증 처리를 위한 제어 신호(91)를 입력한다. 또한, 은닉·완전성 보증 처리부(40)는 무선 통신 제어부(20)로부터 층 2 이상의 임의의 계층에서의 은닉 처리의 대상이 되는 데이터 및/또는 완전성 보증 처리의 대상이 되는 데이터(92)를 입력한다. 은닉·완전성 보증 처리부(40)는 입력한 제어 신호(91)에 기초하여 데이터(92)에 대하여 은닉 처리 및/또는 완전성 보증 처리를 행하고, 무선 통신 제어부(20)에 출력한다. 제어 신호(91) 중에는 키나 초기값이나 은닉 처리와 완전성 보증 처리와의 선택 등의 파라미터가 포함되어 있다.
도 4는 은닉·완전성 보증 처리부(40)의 구성도이다.
은닉·완전성 보증 처리부(40)는 IF부(410)와 1개의 모듈(411)을 갖고 있다. 모듈(411)은 은닉 처리와 완전성 보증 처리를 1개의 동일한 회로 또는 1개의 동일한 알고리즘으로 행하는 것이다. 은닉 처리를 행할지, 완전성 보증 처리를 행할지는 제어 신호(91)에 의해 결정된다.
여기서, 은닉 처리란 데이터를 암호화, 혹은 복호화하는 것을 말한다. 또한, 완전성 보증 처리란 데이터의 개찬 유무를 검증하기 위해, 데이터에 대하여 인증자를 부가하는 처리, 혹은 인증자를 재생하여 비교함으로써 데이터의 개찬 유무를 판정하는 처리를 의미한다.
은닉 처리와 완전성 보증 처리는 동일한 회로 또는 동일한 알고리즘, 혹은 유사한 회로 또는 유사한 알고리즘을 이용하여 행할 수 있기 때문에, 도 4에 도시한 바와 같이, 은닉 처리와 완전성 보증 처리를 1개의 모듈(411)로 행하는 것이 가능하다. 도 4에 도시한 경우에는, 하드웨어 자원 및 소프트웨어 자원의 삭감이 가능하다. 이하, 모듈이란 하드웨어만으로 실현되는 것, 소프트웨어만으로 실현되는 것, 하드웨어와 소프트웨어와의 조합에 의해 실현되는 것 중 어느 하나를 말한다.
여기서, 휴대 전화기에 이용되는 은닉 처리와 완전성 보증 처리의 구체예에 대하여 설명한다.
도 14는 ARIB STD-T63 33. 102, 3G Security ; Security Architecture, Section 6.3.에 나타낸 도면이다.
도 15는 ARIB STD-T63 33.102,3G Security ; Security Architecture, Figure 16b에 나타낸 도면이다.
도 16은 ARIB STD-T63 33. 102, 3G Security ; Security Architecture, Figure 16에 나타낸 도면이다.
도 14는 무선 회선 상에서의 암호화 방법을 나타내고 있다. 도 14에서, 기호의 의미는 이하와 같다.
CK : cipher key(암호키)
F8: 데이터 은닉용 함수
IK : integrity key(메시지 인증키)
F9: 데이터 완전성용 함수
휴대 전화 사업자는 f1∼f5라는 함수를 사용하여, 인증 처리를 실현하고 있다. 이 처리 중에서 생성된 CK와 IK라 부르는 128 비트의 암호키를 데이터 은닉용 함수 f8과 데이터 완전성용 함수 f9로 전송하고 있다.
도 15는 무선 회선 상에서의 암호화 방법을 나타내고 있다. 도 15에서 기호의 의미는 이하와 같다.
f8 : 데이터 은닉용 함수
CK : cipher key(암호키)
MESSAGE : 사용자 데이터 및 신호 정보 등 송신자가 수신자에게 보내고자 하는 암호화 이전의 평문
COUNT-C : 송수신의 통산 횟수를 나타내는 수치 데이터. 송수신 시마다 1을 가산한다.
BEARER : 논리 채널을 식별하기 위한 비트
DIRECTION : 암호문의 송신 방향을 구별하기 위한 비트
LENGTH : MESSAGE 혹은 암호문의 비트 길이
도 15에 도시한 바와 같이, 데이터 은닉용 함수 f8에 의해 작성된 난수 열을 기초로 데이터 암호화/복호화를 행한다.
도 16은 메시지 인증자 생성 방법을 나타내고 있다. 도 16에서 기호의 의미는 이하와 같다.
f9 : 데이터 완전성용 함수
IK : integrity key(메시지 인증키)
COUNT-I : 송수신의 통산 횟수를 나타내는 수치 데이터. 송수신 시마다 1을 가산한다.
MESSAGE : 사용자 데이터 및 신호 정보 등 송신자가 수신자에게 보내고자 하는 암호화 이전의 평문
DIRECTION : 암호문의 송신 방향을 구별하기 위한 비트
FRESH : 사용자마다 생성하는 난수
MAC-I : message authentication code for integrity(송신자가 계산하는 메시지 인증자)
XMAC-I : expected message authentication code for integrity(수신자가 계산하는 메시지 인증자)
도 16에 도시한 바와 같이, 수신자측에서 2개의 메시지 인증자를 비교함으로써 데이터의 완전성을 체크할 수 있다.
다음으로, 동작에 대하여 설명한다.
무선 네트워크 내에서 단말과 네트워크 간의 암호화 통신을 행하기 위해서는 데이터를 교환하기 전에 양자 간에서 한쪽이 상대를 정당하거나, 혹은 쌍방이 통신 상대로서 정당하다고 확인하는 인증(authentication) 등의 처리가 필요해진다.
도 14에 도시한 바와 같이, 일련의 인증 처리에서 단말과 네트워크의 쌍방은 함수 f1∼f5라 하는 5개의 함수를 사용한다. 이 함수는 인증과 병행하여 단말과 네트워크의 양방에, 각각 128 비트의 암호키(CK=cipher key)와 메시지 인증키(IK=integrity key)를 생성한다.
이들 2개의 키는 서로 인증한 단말과 네트워크만이 동일한 것을 가질 수 있어서, 후술하는 f8과 f9와의 2개의 함수 내에서 사용된다. 이들 2개의 키는 통신마다 다르며, 더구나 이들 사이의 규칙성은 없다. 그리고, 통신이 종료된 시점에서 폐기된다.
또, 이 인증에 필요한 처리의 메카니즘(프로토콜)은 표준화되어 있지만, 인증 처리에서 이용되는 f1∼f5의 함수는 표준화되어 있지 않으며, 오퍼레이터가 독자적으로 정하는 것으로 되어 있다.
인증 처리가 완료한 후에는 은닉 처리에 이용되는 데이터 은닉(data confidentiality) 기술과 완전성 보증 처리에 이용되는 데이터 완전성 (data integrity) 기술에 의해, 데이터의 시큐러티를 유지하고 있다.
첫번째의 데이터 은닉 기술은, 무선 네트워크 상에서 음성을 포함하는 사용자 데이터나 신호 정보를 암호화하여, 도청을 방지하는 기술이다. 이 데이터 은닉을 실현하기 위해, 데이터 은닉용 함수(이하, f8이라 함) 등의 함수를 사용한다.
도 15에 도시한 데이터를 은닉하여 교환하는 경우, 송신자는 인증 시에 생성한 암호키(CK)를 사용한다. 또한, f8에는 CK 외에, 암호화/복호화 대상 데이터의 비트 길이(LENGTH), 업/다운 링크(DIRECTION), 카운터(COUNT-C), 논리 채널 식별자(BEARER)를 입력함으로써 난수 열이 생성된다.
여기서, 업/다운 링크란 암호문이 단말로부터 기지국으로 송신되는 것인지, 혹은 기지국으로부터 단말로 송신되는 것인지를 구별하는 비트를 말한다. 또한, 카운터란 송수신의 통산 횟수를 나타내는 데이터이다. 카운터에는 송수신 시마다 정해진 값을 가산한다. 카운터는 과거에 보내진 암호문을 후에 보내버리는 공격(attack)을 방지하기 위해 이용된다. 또한, 논리 채널의 식별자란 암호화를 행하는 논리 채널을 식별하는 비트이다.
생성된 난수 열과 암호화하고자 하는 데이터/신호 정보와의 배타적 논리합을 취하여 암호문을 생성하고, 수신자에게 송신한다.
CK 이외의 파라미터는 송신자로부터 암호화하지 않고 수신자에게 송부한다. 단, CK만은 인증 처리의 과정에서 수신자측에서도 동일한 것이 생성되어 있기 때문에, 송신할 필요가 없다.
CK 이외의 파라미터가 제삼자에 전송되었다고 하여도, CK가 비밀이면 암호문을 해독하기 위한 난수 열을 생성할 수 없기 때문에, 원래의 메시지의 안전성은 유지된다.
수신자측은 전송된 파라미터와 미리 가지고 있었던 CK를 사용하여 난수 열을 생성하고, 전송된 암호문과 배타적 논리합을 취하여 원래의 메시지를 복호한다.
이것은 ISO/IEC10116에 의해 정의된 블록 암호의 이용 모드의 하나인 OFB(output feedback) 모드의 변형이다. OFB 모드는 암호문에 전송노 상에서 발생한 노이즈가 혼입되어도, 복호 시점에서 그 노이즈 부분을 확대하지 않기 때문에, 특히 무선 음성 통신에서 채용되는 경우가 많다.
2번째의 데이터 완전성 기술은, 무선 회선 상의 신호 정보에 메시지 인증자(완전성 인증자)를 부가함으로써 신호의 정보의 개찬 유무를 검출하는 기술이다. 메시지 인증 기술이라고도 한다. 이러한 데이터 완전성을 실현하기 위해, 데이터 완전성용 함수(이하, f9라 함)를 이용한다. 이 f9의 코어 부분에도 f8과 동일한 암호 알고리즘이 이용되고 있다.
먼저, 인증 시에 메시지 인증키 생성 함수 f4를 사용하여 메시지 인증키(lK)를 생성하고, f9로 넘어간다. 도 16에 도시한 바와 같이, f9에 메시지 인증키 이외의, 데이터(MESSAGE), 업/다운 링크(DIRECTION), 카운터(COUNT-C), 사용자마다 생성하는 난수(FRESH)를 입력하면, 메시지 인증자(MAC-I 또는 XMAC-I)가 생성된다.
이들 파라미터도 송신자로부터 암호화되지 않은 데이터 포맷 에리어를 사용하여 수신자에게 전송된다. 이들 파라미터가 제삼자에게 획득되더라도, 메시지 인증키(IK)가 비밀이면, 안전성이 유지되는 것은 데이터의 은닉인 경우와 동일하다
송신자는 이 메시지 인증자(MAC-I)를 데이터에 부가하여, 수신자에게 송신한다. 수신자는 마찬가지로, f9를 사용하여 메시지 인증자(XMAC-I)를 계산한다. MAC-I와 XMAC-I를 비교하여, 동일하면 개찬이 없었던 것을 확인할 수 있다.
또, 개찬이 있었다고 검출된 경우의 처리의 일례로서,
(1) 상대에게 재송신을 요구하여, 재차 수신된 메시지 인증자가 정당한지를 확인한다.
(2) 계속해서 여러번 개찬이 있었다고 검출된 경우에는 접속을 절단하는 등의 대응을 취한다.
3Gpp 사양(상세는 http://www.3gpp.org/About_3GPP/3gpp.htm을 참조할 것)에 의하면, 암호화/복호화 모듈은 도 15와 같이, 입력된 평문(암호화되는 데이터)을 암호문(암호화된 데이터)으로 암호화하여 출력하는 기능, 또한, 암호문을 평문으로 복호화하여 출력하는 기능을 갖는다. 3Gpp 사양에 기초한다고 하면, 도 3의 제어 신호(91)의 구체예는 상기 COUNT/BERARER/DIRECTION/CK/LENGTH가 해당된다.
또한, 도 3의 데이터(92, 93)의 구체예로서는 예를 들면, 도 21에 도시한 바와 같이, 「MACSDU」또는「RLCPDU(data part)」로 된다. 여기서, 「RLCPDU(data part)」란 RLCPDU의 상위 1 Oct 혹은 2 Oct(1 바이트 혹은 2 바이트)를 삭제한 부분(도 21의「DATA FOR CIPHERING」의 부분)으로 된다. 「MACSDU」또는「RLCPDU(data part)」는 도 15의 MESSAGE의 일례이다. 또한, MACSDU는 Media Access Control Service Data Unit을 말한다. RLCPDU는 Radio Link Control Protocol Data Unit을 말한다. 메시지 흐름의 각 메시지는 RLC 헤더 삭제 이후, 층 3에서 RLCPDU로부터 조립된 것으로 된다.
RLCPDU에서, 1 Oct 혹은 2 Oct의 은닉 대상 이외의 부분이 존재하지만, RLCPDU 모두를 은닉·완전성 보증 처리부(40)에 입력하여, 은닉·완전성 보증 처리부(40)에서, 1 Oct 혹은 2 Oct 은닉을 행하지 않도록 하고 있다. 그 이유는 은닉 처리를 행하는 모든 데이터 단위(RLCPDU)로부터 1 Oct 혹은 2 Oct의 은닉 대상 이외의 부분을 제거하기 위해, 1 Oct 혹은 2 Oct의 시프트 처리를 무선 통신 제어부(20)에서 실행시킴으로써 발생하는 무선 통신 제어부(20)의 부하를 저감하기 위해서이다.
도 5는 은닉·완전성 보증 처리부(40)의 다른 예를 나타내는 도면이다.
도 5에서 특징이 되는 점은 은닉 처리부(420)와 완전성 보증 처리부(430)를 개별적으로 제공한 점이다. 은닉 처리부(420)의 내부에는 암호화/복호화부(421)가 제공되어 있다. 완전성 보증 처리부(430)의 내부에는 완전성 인증자 부가/완전성 확인부(431)가 제공되어 있다. 암호화/복호화부(421)는 암호화와 복호화를 1개의 동일한 모듈을 이용하여 행하는 경우를 나타내고 있다. 완전성 인증자 부가/완전성 확인부(431)는 완전성 인증자의 부가와 완전성의 확인을 1개의 동일한 모듈로 행하는 경우를 나타내고 있다. 도 5에 도시한 경우에는, 암호화와 복호화가 동일한 함수이었던 경우 및 완전성 증자 부가와 완전 확인이 동일한 함수이었던 경우에 취할 수 있는 구성이다. 도 5에 도시한 경우에는, 도 6에 도시한 경우에 비해, 하드웨어 자원 및 소프트웨어 자원의 삭감이 가능하다.
도 6은 은닉·완전성 보증 처리부(40)의 다른 구성을 나타내는 도면이다.
도 6의 특징은 은닉 처리부(420)에서, 암호화부(422)와 복호화부(423)를 개별적으로 제공한 점이다. 또한, 완전성 보증 처리부(430)에서, 완전성 인증자 부가부(432)와 완전성 확인부(433)를 개별적으로 제공한 점이다. 도 6에 도시한 경우에는, 암호화와 복호화가 동일하거나 또는 다른 함수이었던 경우 및 완전성 인증자 부가와 완전성 확인이 동일하거나 또는 다른 함수이었던 경우에 취하는 구성이다. 도 6의 경우에는, 암호화, 복호화, 완전성 인증자, 부가 완전성 확인을 개별적으로 실행할 수 있어서, 송수신되는 데이터가 동시에 병렬로 은닉 처리, 혹은 완전성 보증 처리되기 때문에, 처리의 고속화가 가능하다.
도 7은 은닉 처리부(420)에서, 복수의 암호화부(422)와 복수의 복호화부(423)를 제공한 경우를 나타내고 있다. 또한, 완전성 보증 처리부(430)에서, 복수의 완전성 인증자 부가부(432)와 복수의 완전성 확인부(433)를 제공한 경우를 나타내고 있다. 무선 단말(MS)(100)이 동작하고 있는 경우에, 복수의 채널이 동시에 처리되지 않으면 안되는 경우가 있다. 예를 들면, 음성과 팩시밀리 데이터의 2 종류의 데이터가 동시에 전송되도록 한 경우에는, 적어도 2 채널의 데이터가동시에 처리될 필요가 있다. 이러한 경우에는, 음성 데이터를 암호화부(1)에서 암호화하여, 팩시밀리 데이터를 암호화부(2)에서 암호화할 수 있다.
또한, 복호하는 경우에도, 동시에 복수 채널의 데이터를 복호화할 수 있다. 암호화부(422)와 복호화부(423)와 완전성 인증자 부가부(432)와 완전성 확인부(433)의 수(도 7에서는 n개)는 전부 동일할 필요는 없으며, 무선 단말(MS)(100)에서 동시에 처리해야 할 채널 수에 따라 각 부분의 수를 결정하면 된다. 혹은, 각 채널에 대응하는 것은 아니라, 임의의 1개의 채널에 대량 데이터의 고속 처리를 행할 필요가 있게 되는 경우에, 그 1개의 채널에 할당된 대량 데이터를 2개의 암호화부에 의해 처리하도록 하여도 상관없다. 즉, 암호화부(422)와 복호화부(423)와 완전성 인증자 부가부(432)와 완전성 확인부(433)의 각부의 수는 동시에 처리해야 할 채널의 수 및/또는 데이터량에 의해 결정하면 된다.
또한, 암호화부(422)의 최대수와 복호화부(423)의 최대수는 달라도 된다.
또한, 완전성 인증자 부가부(432)의 최대수와 완전성 확인부(433)의 최대수는 달라도 된다.
도 8은 은닉 처리부(420)에 복수의 암호화/복호화부(421)를 제공한 경우를 나타내고 있다. 또한, 완전성 보증 처리부(430)에 복수의 완전성 인증자 부가/완전성 확인부(431)를 제공한 경우를 나타내고 있다.
도 8은 도 5에 도시한 암호화/복호화부(421)와 완전성 인증자 부가/완전성 확인부(431)를 복수로 한 것이다. 도 8에 도시한 경우에는, 암호화와 복호화가 동일한 함수이었던 경우에, 복수의 채널에 대응하여 복수의 암호화/복호화부(421)를제공한 경우를 나타내고 있다. 마찬가지로, 완전성 인증자 부가와 완전성 확인이 동일한 함수이었던 경우에, 복수의 채널에 대응하여 완전성 인증자 부가/완전성 확인부(431)를 복수 제공한 경우를 나타내고 있다. 도 8의 경우에는, 도 7의 경우에 비해 하드웨어 자원 및 소프트웨어 자원의 삭감을 행하는 것이 가능하다.
도 4 내지 도 8에서는 은닉·완전성 보증 처리부(40)가 은닉 처리부(420)와 완전성 보증 처리부(430)를 양쪽 다 포함하고 있는 경우를 나타내었지만, 은닉·완전성 보증 처리부(40)가 은닉 처리부(420) 또는 완전성 보증 처리부(430) 중 어느 한 쪽만 포함하고 있는 경우이어도 된다. 은닉·완전성 보증 처리부(40)가 은닉 처리부(420) 또는 완전성 보증 처리부(430) 중 한쪽만 포함하고 있는 경우에는 다른 쪽의 처리는 무선 통신 제어부(20)가 행하면 된다.
<제2 실시 형태>
도 9는 무선 단말(MS)(100)의 다른 예를 나타내는 구성도이다.
도 9가 도 3과 다른 점은 단말 IF부(10)와 은닉·완전성 보증 처리부(40)와의 사이에서 데이터의 입출력이 행해지는 점이다. 또한, 무선 통신부(30)와 은닉·완전성 보증 처리부(40)와의 사이에서 데이터의 입출력이 행해지는 점이다. 도 9에서, 비투과 데이터(97)는 패킷 데이터 등의 비투과 데이터이다. 또한, 투과 데이터(95, 96)는 음성 데이터나 비제한 디지털 데이터 등의 투과 데이터이다. 투과 데이터란, OSI에 의해 정의되어 있는 있는 층, 혹은 임의의 층의 서브 층에서 입력부터 출력까지 그 데이터가 일체 변경되지 않는 데이터를 말한다. 한편, 비투과 데이터란, 임의의 층, 혹은 임의의 층의 서브 층에서 입력부터 출력까지 그 데이터의 포맷 변환 처리 등의 어떠한 데이터 처리가 필요한 데이터를 의미한다. 예를 들면, 층 2의 RLC(Radio Link Control) 서브 층에서, SDU(Service Data Unit)와 PDU(ProtocoI Data Unit)가 다른 경우에는 그 데이터는 비투과 데이터이며, 층 2의 MAC(Media Access Control) 서브 층에서 SDU와 PDU가 동일한 경우, 그 데이터는 투과 데이터이다. 도 9에 도시한 경우에는, 무선 통신부(30)와의 사이에서 입출력되는 층 1의 데이터에 대하여 어떠한 처리를 행하지 않고 단말 IF부(10)에 보낼 수 있는 데이터, 예를 들면, 음성 데이터를 투과 데이터로 하고 있다. 한편, 무선 통신부(30)로부터 출력되는 층 1의 데이터에 대하여 어떠한 처리를 행해야만 하는 데이터, 예를 들면, 패킷 데이터를 비투과 데이터로 하고 있다.
도 9의 투과 데이터(95, 96)의 구체예는 상술된 바와 같이, 음성 데이터나 비제한 디지털 데이터이지만, 각각의 데이터는 층 1과 층 2 사이에 정의되는 단위(Transport Block)로 분할된 것이며, 이들 Transport Block으로 분할된 데이터는 투과 데이터이기 때문에, 상술한 바와 같이 MACPDU(또한, MACSDU)와 등가이기 때문에, Transport Block으로 분할된 데이터 각각이 은닉 단위와 동일해진다.
또한, 음성 데이터 등은 사용자 데이터이며, 사용자 데이터는 RLC 서브 층에서도 투과 데이터이기 때문에, 이 전송 형태를 직렬 인터페이스로 하여, ARIB 규정의 MT(Mobile Terminal)-TA(Terminal Adaptor I/F(도 22, 도 23)로 하면, MT-TA I/F의 직렬 포맷에 대하여 그대로, 은닉을 실시하는 것이 가능한 전송 형태로 된다.
또한, 도 9의 비투과 데이터(97)의 구체예는 상술한 바와 같이, 패킷 데이터나 시그널링을 위한 데이터이지만, 각 데이터는 층 1과 층 2와의 사이에 정의되는 단위(Transport Block)로 분할된 것이다.
도 9에 도시한 은닉·완전성 보증 처리부(40)는 무선 통신 제어부(20)와의 사이에서 비투과 데이터에 대하여 은닉 처리와 완전성 보증 처리를 선택적으로 행함과 함께, 단말 IF부(10)와 무선 통신부(30)와의 사이에서 입출력되는 투과 데이터에 대하여, 예를 들면, 은닉 처리를 반드시 행하는 것이다. 은닉·완전성 보증 처리부(40)는 투과 데이터에 대해서는 완전성 보증 처리를 행하지 않는다. 만일, 투과 데이터 내에 은닉 처리를 행하지 않고자 하는 것이 있는 경우에는 무선 통신 제어부(20)는 그 은닉 처리를 행하지 않고자 하는 투과 데이터를 은닉·완전성 보증 처리부(40)에 입력시키지 않고 무선 통신 제어부(20)에 입력시키면 된다. 혹은, 그 은닉 처리를 행하지 않고자 하는 투과 데이터를 은닉·완전성 보증 처리부(40)에 입력시키지만, 무선 통신 제어부(20)로부터의 제어 신호를 이용하여 그 투과 데이터에 은닉 처리를 행하게 하지 않도록 하여도 된다.
도 10은 은닉·완전성 보증 처리부(40)의 구성도이다.
도 10에서, 도 5와 다른 점은 새롭게 은닉 처리부(460)가 제공된 점이다. 은닉 처리부(460)에는 암호화부(462)와 복호화부(463)가 제공되어 있다. 암호화부(462)는 단말 IF부(10)로부터의 투과 데이터(95)를 입력하고, 입력한 데이터를 암호화하여, 투과 데이터(96)로서 무선 통신부(30)에 출력한다. 한편, 복호화부(463)는 무선 통신부(30)로부터 투과 데이터(96)를 입력하고 복호화하여, 투과 데이터(95)로서 단말 IF부(10)에 출력한다. 은닉 처리부(460)의 이들 처리는IF부(410)로부터의 제어 신호(99)에 기초하여 행해진다. 제어 신호(99)는 제어 신호(91)로부터 생성된 제어 신호이다. 따라서, 은닉 처리부(460)는 무선 통신 제어부(20)로부터의 제어 신호에 기초하여 은닉 처리를 행하는 것으로 된다. 도 10에서, 데이터(92)는 버스를 통한 병렬 인터페이스를 이용하여 입출력된다. 한편, 투과 데이터(95, 96)는 직렬 인터페이스를 통해 은닉 처리부(460)에 대하여 입출력된다. 이와 같이, 도 10은 은닉·완전성 보증 처리부(40)가 병렬 인터페이스와 직렬 인터페이스의 2계통의 입출력 인터페이스를 포함하고 있는 경우를 나타내고 있다.
도 11은 도 7에 도시한 은닉·완전성 보증 처리부(40)의 구성에 은닉 처리부(460)를 부가한 경우를 나타내고 있다. 도 11에 도시한 바와 같은 은닉 처리부(460)의 구성은 도 12에 도시한 바와 같이, 암호화부 또는 복호화부가 키 스트림을 발생시켜서, 직렬 데이터와 배타적 논리합을 취한 경우에 유효한 구성이다.
도 11은 투과 데이터(95, 96)가 직렬 인터페이스를 통해 은닉 처리부(460)에 입출력되는 경우로서, 또한, 그 직렬 인터페이스를 통해 입출력되는 직렬 데이터에, 복수 채널의 데이터가 다중화되어 있는 경우를 나타내고 있다. 예를 들면, 채널 1의 데이터 다음에 채널 2의 데이터가 직렬 데이터로서 입력된 경우, 채널 1에 대응하는 암호화부(1)로부터 키 스트림을 발생시켜 데이터 다중부(481)에 출력하고, 채널 2에 대응하는 암호화부(2)로부터 키 스트림을 발생시켜서 데이터 다중부(481)에 출력하며, 데이터 다중부(481)에서, 이들 키 스트림을 입력하는 데이터(95)의 데이터 계열과 동일한 포맷으로 다중한다. 이 다중된 키 스트림과 입력되는 데이터(95)의 데이터 계열과의 배타적 논리합을 배타적 논리합 회로(483)에의해 연산한다. 은닉 처리부(460)의 이들 동작은 제어 신호(99)에 기초하여, 즉, 무선 통신 제어부(20)로부터 전송되어 온 제어 신호(91)에 기초하여 행해진다. 도 11의 구성에 따르면, 직렬 데이터의 지연이 배타적 논리합 회로(483)의 연산만으로도, 고속 처리를 행하는 것이 가능하다.
도 13은 도 10의 은닉 처리부(420)와 은닉 처리부(460)를 합쳐 1개의 은닉 처리부(470)로 한 경우를 나타내고 있다.
은닉 처리부(470)는 병렬 인터페이스로부터 입출력되는 데이터(92)와 직렬 인터페이스로부터 입출력되는 데이터(95, 96) 양방을 처리한다. 은닉 처리부(470)는, 은닉 처리부(420)와 은닉 처리부(460)를 1개로 통합한 것이기 때문에, 하드웨어 자원의 삭감이 가능하다. 은닉 처리부(470)에서의 투과 데이터와 비투과 데이터의 처리 동작의 스위칭은 제어 신호(99), 즉, 무선 통신 제어부(20)로부터 출력된 제어 신호(91)에 기초하여 행해진다.
<제3 실시 형태>
도 25는 제3 실시 형태의 은닉 처리부의 암호화 방식 및 복호화 방식을 나타내는 도면이다. 도 25의 좌측은 송신측의 암호화 장치를 나타내고 있다. 도 25의 우측은 수신측의 복호화 장치를 나타내고 있다.
도 25가 도 15와 다른 점은 데이터 은닉용 함수 f8에 의해 작성한 난수 열을 일시 기억하는 난수 열 기억부(버퍼)를 구비하고 있는 점이다. 난수 열 기억부는 데이터 은닉용 함수 f8에 의해 작성된 난수 열을 미리 기억해 두는 것이다. 즉, 데이터 은닉용 함수 f8은 난수 열을 생성하기 위한 정보가 획득된 후, 난수 열의생성을 개시하여 난수 열 기억부에 난수 열을 출력한다. 난수 열 기억부는 메시지(평문)가 도착할 때까지 난수 열을 일시적으로 보존해 두고, 메시지(평문)의 입력에 동기시켜서 기억한 난수 열을 출력한다.
한편, 복호할 경우에는 데이터 은닉용 함수 f8은 난수 열을 생성하기 위한 정보를 정리한 후, 난수 열의 생성을 개시하여, 난수 열 기억부에 난수 열을 출력한다. 난수 열 기억부는 메시지(평문)가 도착할 때까지 난수 열을 일시적으로 보존해 두고, 암호문의 입력에 동기시켜 난수 열 기억부에 기억한 난수 열을 출력한다.
이와 같이, 도 25의 좌측에 도시한 암호화 장치의 특징은 데이터 은닉용 함수 f8에 의한 난수 열의 생성과, 메시지와 난수 열의 연산을 비동기로 행하는 것을 특징으로 한다. 즉, 데이터 은닉용 함수 f8은 평문과 난수 열과의 연산보다 전에 난수 열을 생성하여, 난수 열 기억부에 미리 보존해 두는 것이 특징이다.
또한, 도 25의 우측에 도시한 복호화 장치는 데이터 은닉용 함수 f8에 의한 난수 열의 생성과, 암호문과 난수 열과의 연산을 비동기로 행하는 것을 특징으로 한다. 즉, 데이터 은닉용 함수 f8은 암호문의 입력 전에 난수 열의 생성을 개시하여, 생성한 난수 열을 난수 열 기억부에 미리 보존해 두는 것을 특징으로 한다.
도 25의 암호화 장치와 복호화 장치는 예를 들면, ISO/IEC10116에 의해 정의된 블록 암호의 이용 모드 중 하나인 OFB(output feedback) 모드의 암호화·복호화를 행하는 것이다. 혹은, 그 변형 모드를 이용하는 경우이어도 된다. 혹은, 평문 혹은 암호문 없이 난수 열을 생성할 수 있는 모드를 이용하는 경우이면 된다. 그러나, 도 25의 암호화 장치와 복호화 장치는 평문 혹은 암호문 없이 먼저 난수 열을 생성하는 것이기 때문에, 평문 혹은 암호문을 입력하여 난수 열을 생성하는 모드를 이용할 수는 없다.
또, 평문이란 암호화하는 데이터를 의미하며, 반드시 사람이 기입 및 판독할 수 있는 것에 한하지 않는다. 예를 들면, 텍스트 데이터, 문자 데이터는 평문이다. 또한, 음성 데이터, 화상 데이터, 부호화 데이터, 압축 데이터 등도 암호화되는 데이터이면 평문이다.
또한, 암호문이란 암호화된 데이터를 의미한다. 텍스트 데이터, 문자 데이터, 음성 데이터, 화상 데이터, 부호화 데이터, 압축 데이터 등의 암호화되기 전의 평문 데이터 형식은 묻지 않는다.
도 26은 제3 실시 형태의 완전성 보증 처리부의 완전성 보증 방식을 나타내는 도면이다.
도 26이 도 16과 다른 점은 데이터 완전성용 함수 f9의 전단에 데이터 기억부(버퍼)가 제공되어 있다는 점이다. 데이터 기억부는 X(X≥2)개의 데이터와 X개의 제어 신호 데이터를 입력하여 기억하는 것이다. 데이터 완전성용 함수 f9는 데이터 기억부에 기억된 X개의 데이터와 X개의 제어 신호 데이터를 입력하여 X개의 데이터에 대한 X개의 완전성 인증자를 생성하고, X개의 완전성 인증자를 통합하여 출력하는 것이다.
메시지 인증키(IK)가 X개의 데이터에 대하여 공통인 경우, 도 26에 도시한 바와 같이, 메시지 인증키(IK)를 데이터 기억부에 기억시키지 않고 데이터 완전성용 함수 f9에 직접 입력시키도록 하여도 된다. 메시지 인증키(IK)가 각 데이터에 대하여 상이할 때에는 다른 제어 신호 데이터와 함께 데이터 기억부에 기억시키도록 하면 된다.
이하, 도 25에 도시한 은닉 처리부와 완전성 보증 처리부의 구체예에 대하여 도면을 참조하여 설명한다.
도 27은 제3 실시 형태의 무선 통신 제어부(20)와 은닉·완전성 보증 처리부(40)를 나타내는 도면이다.
그 밖의 구성은 제2 실시 형태의 도 9에 도시한 무선 단말(100)과 동일하기 때문에, 이하, 도 27을 중심으로 제2 실시 형태와 다른 점에 대하여 설명한다.
무선 통신 제어부(20)의 내부에는 CPU(29)가 제공되어 있다. 또한, 은닉·완전성 보증 처리부(40)의 내부에는 병렬 인터페이스를 갖는 은닉 처리부(420)와, 직렬 인터페이스를 갖는 은닉 처리부(460)와, 완전성 보증 처리부(430)가 제공되어 있다. 은닉 처리부(420)에는 암호화부(422)와 복호화부(423)가 제공되어 있다. 은닉 처리부(460)에는 암호화부(462)와 복호화부(463)가 제공되어 있다. 완전성 보증 처리부(430)에는 완전성 인증자 부가부(432)와 완전성 확인부(433)가 제공되어 있다. 무선 통신 제어부(20)와 은닉·완전성 보증 처리부(40)는 버스(90)에 의해 접속되어 있다. 버스(90)는 무선 통신 제어부(20) 내부의 CPU(29)와, 은닉·완전성 보증 처리부(40) 내부의 은닉 처리부(420)와, 은닉 처리부(460)와, 완전성 보증 처리부(430)를 접속하고 있으며, 제어 신호(91) 및 데이터(92) 및 그 밖의 데이터를 전송하는 것이다. CPU(29)는 ROM(Read Only Memory) 등의 기록 매체에 기억된 프로그램을 판독 프로그램의 실행에 의해 무선 통신 제어부(20)의 전체 처리를 담당하는 것이다. 버스(90)는 무선 통신 제어부(20)와 은닉·완전성 보증 처리부(40)와 내부 혹은 외부에 있는 다른 처리부(도시 생략)를 접속하는 범용의 버스이다.
도 28은 은닉 처리부(420)의 암호화부(422)와 복호화부(423)의 상세도이다.
암호화부(422)는 암호화기(610)와 버퍼(620)와 배타적 논리합 연산부(630)에 의해 구성되어 있다. 복호화부(423)는 복호화기(611)와 버퍼(621)와 배타적 논리합 연산부(631)에 의해 구성되어 있다. 암호화기(610)는 도 25의 송신측의 데이터 은닉용 함수 f8에 상당하는 것이다. 버퍼(620)는 도 25의 송신측의 난수 열 기억부에 상당하는 것이다. 여기서, 버퍼(620)는 선입 선출 메모리를 이용하고 있다. 배타적 논리합 연산부(630)는 예를 들면, 64 비트의 병렬 데이터의 배타적 논리합 연산을 동시에 행하는 것이다. 복호화기(611)는 도 25의 수신측의 데이터 은닉용 함수 f8에 상당하는 것이다. 버퍼(621)는 도 25의 수신측의 난수 열 기억부에 상당하는 것이다. 배타적 논리합 연산부(631)는 예를 들면, 64 비트의 병렬 데이터의 배타적 논리합 연산을 동시에 행하는 것이다.
은닉 처리부(420)는 버스(90)를 통해 CPU(29)로부터 제어 신호(91)를 입력한다. 이 시점에서는, 아직 평문(950)은 입력되지 않는다. CPU(29)는 미리 제어 신호(91)를 알 수 있어서, 평문(950)보다도 전에 제어 신호(91)를 CPU(29)로부터 은닉 처리부(420)에 대하여 전송하는 것이 가능하다. 제어 신호(91)는 적어도 암호키(CK)를 포함하며, 또한, 이 예에서는 CK 이외에, 암호화/복호화 대상 데이터의비트 길이(LENGTH, 도 28에서는 비트 길이=256 비트의 경우를 나타내고 있음), 업/다운 링크(DIRECTION), 카운터(COUNT-C), 논리 채널 식별자(BEARER)를 포함하고 있다. 암호키(CK), 암호화/복호화 대상 데이터의 비트 길이(LENGTH), 업/다운 링크(DIRECTION), 카운터(COUNT-C), 논리 채널 식별자(BEARER)는 제어 신호(600) 또는 제어 신호(601)로서 암호화부(422) 또는 복호화부(423)에 입력된다. 암호화기(610)에서는 제어 신호(600)가 입력되면, 난수 열의 생성을 개시하여, 난수 열을 버퍼(621)에 출력한다. 여기서, 암호화기(610)가 64 비트 단위로 난수 열을 발생하는 것으로 한다. 이 경우에는, 암호화기(610)로부터는 64 비트 단위의 난수 열이 출력되어, 버퍼(620)에 일시적으로 기억된다. 상술한 바와 같이, 암호화 대상 데이터의 비트 길이(LENGTH)가 256 비트인 경우에는 암호화기(610)는 64 비트의 난수 열을 4개 발생시켜서, 암호화 대상 데이터의 비트 길이(256 비트)에 충분한 길이의 난수 열(64 비트×4)을 생성한다.
도 28에서는 버퍼(620)에 4개의 64 비트 길이의 난수 열이 보존되어 있는 경우를 나타내고 있다.
그 후, CPU(29)는 256 비트의 비트 길이의 평문(950)을 64 비트 단위로 버스(90)를 통해 암호화부(422)에 전송한다. 배타적 논리합 연산부(630)가 64 비트 단위로 평문(950)을 입력하면, 버퍼(620)는 64 비트의 난수 열(650)을 순차 출력한다. 배타적 논리합 연산부(630)는 64 비트 단위로 평문(950)과 난수 열(650)의 배타적 논리합 연산을 동시에 행하여, 64 비트 단위의 암호문(960)을 생성한다. 암호문(960)은 CPU(29)에 반송된다.
복호화부(423)의 동작은 배타적 논리합 연산부(631)로의 입력이 암호문(960)이고, 출력이 평문(950)인 점을 제외하고는, 암호화부(422)의 동작과 동일하기 때문에 설명을 생략한다.
또, 배타적 논리합 연산부(630)가 평문(950)을 입력하는 것은 버퍼(620)에 4개의(256 비트의) 난수 열을 생성한 후가 아니어도 되며, 버퍼(620)에 64 비트의 난수 열이 1개 이상 저장된 경우에, 배타적 논리합 연산부(630)에 의한 배타적 논리합 연산을 개시하여도 상관없다. 이 경우에는 암호화기(610)에 의한 난수 열의 생성과, 배타적 논리합 연산부(630)에 의한 배타적 논리합 연산이 병렬로 동시에 행해지게 된다. 암호화기(610)는 배타적 논리합 연산부(630)에서, 평문(950)의 배타적 논리합 연산을 행하고 있는 동안에, 다음 제어 신호(600)를 입력하며, 다음에 입력되는 평문(950)에 대한 난수 열을 생성하여 버퍼(620)에 대하여 미리 다음의 평문에 대한 난수 열을 기억시킨다.
이와 같이, 암호화부(422)는 CPU(29)로부터 평문(950)을 입력하기에 앞서서, 미리 버퍼(620)에 난수 열을 저장해 두기 때문에, 배타적 논리합 연산부(630)에서의 연산의 대기 시간이 생기지 않아서, 암호화를 고속으로 행할 수 있다. 마찬가지의 이유에 의해, 복호화부(423)에서도 복호화를 고속으로 행할 수 있다.
또, 버퍼(620, 621)의 사이즈는 암호화기(610), 복호화기(611)가 출력하는 난수 열의 단위 사이즈 이상 있으면 되지만, 이 시스템 내에서 지정될 수 있는 암호화/복호화 대상 데이터의 비트 길이(LENGTH)의 최대값 이상인 것이 바람직하다. 예를 들면, 암호화기(610), 복호화기(611)가 출력하는 난수 열의 단위 사이즈가 64비트이고, 암호화/복호화 대상 데이터의 비트 길이(LENGTH)의 최대값이 5114 비트이면, 버퍼(620, 621)의 사이즈는 5120(64×80) 비트 이상 있는 것이 바람직하다.
또한, 배타적 논리합 연산부(631)는 예를 들면, 64 비트의 배타적 논리합 연산을 행하는 것으로 하였지만, 32 비트, 128 비트 등의 다른 비트 사이즈의 병렬 데이터 처리를 하여도 된다.
또한, 암호화기(610), 복호화기(611)가 출력하는 난수 열의 단위 사이즈가 64 비트인 경우를 설명하였지만, 32 비트, 128 비트 등의 다른 비트 단위 사이즈의 난수 열을 출력하여도 된다.
또한, 암호화기(610), 복호화기(611)가 출력하는 난수 열의 단위 사이즈와 버퍼(620, 621)의 판독 및 기입 사이즈와 배타적 논리합 연산부(631)의 병렬 데이터의 비트 사이즈는 동일하지 않아도 된다.
도 29는 무선 통신 제어부(20)와 은닉 처리부(420)의 다른 예를 나타내는 도면이다.
도 29가 도 28과 다른 점은 배타적 논리합 연산부(630)와 배타적 논리합 연산부(631)가 은닉 처리부(420)가 아니라, 무선 통신 제어부(20)에 제공되어 있는 점이다.
CPU(29)는 버스(90)를 통해, 평문(950)에 대한 난수 열을 (가능한 한 통합하여) 버퍼(620)로부터 판독하여, 배타적 논리합 연산부(630)에 공급한다. 배타적 논리합 연산부(630)에서는 평문(950)과 난수 열(650)의 배타적 논리합 연산을 행하여, 암호문(960)을 생성한다.
마찬가지로, 배타적 논리합 연산부(631)에서도, CPU(29)에 의해 버스(90)를 통해 버퍼(621)로부터 난수 열(65l)이 판독되고, 암호문(960)과의 배타적 논리합 연산이 행해져서, 평문(950)이 출력된다.
도 29의 경우에는, CPU(29)가 난수 열을 버퍼(620)로부터 판독할 뿐이며, 평문(950)과 암호문(960)이 버스(90)를 왕복할 필요가 없어지기 때문에, 버스(90)에 흐르는 데이터량을 도 28의 구성에 비해 1/2 이하로 할 수 있다. 또한, 버스(90)를 사용하기 위한 대기 시간을 줄일 수 있다. 또한, 버스(90)의 경합을 줄일 수 있다.
또, 도 28과 도 29 중 어느 하나의 경우에서도, 배타적 논리합 연산부(630)와 배타적 논리합 연산부(631)는 하드웨어로 실현하여도 되며, 소프트웨어로 실현하여도 되고, 하드웨어와 소프트웨어와의 조합에 의해 실현하여도 된다.
도 30은 직렬 인터페이스를 갖는 은닉 처리부(460)의 암호화부(462)와 복호화부(463)의 상세도이다.
도 30이 도 28과 다른 점은 병렬 데이터의 배타적 논리합 연산부(630) 대신에, 1 비트의 직렬 데이터의 배타적 논리합 연산을 행하는 배타적 논리합 연산부(632)를 포함하고 있다는 점이다. 또한, 병렬 데이터의 배타적 논리합 연산부(631) 대신에, 1 비트의 직렬 데이터의 배타적 논리합 연산을 행하는 배타적 논리합 연산부(633)를 포함하고 있는 점이다. 배타적 논리합 연산부(632)에서는 투과 데이터(95)가 입력되며, 난수 열(650)과 1 비트씩 직렬로 배타적 논리합 연산이 행해져서, 암호화된 투과 데이터(96)가 출력된다. 한편, 배타적 논리합연산부(633)에서는 투과 데이터(96)가 입력되고, 난수 열(651)과 1 비트씩 직렬로 배타적 논리합 연산이 행해져서, 복호화된 투과 데이터(95)가 출력된다.
도 30에 도시한 경우에서도, 미리 버퍼(620)와 버퍼(621)에 난수 열이 생성되어 있기 때문에, 배타적 논리합 연산부(632)와 배타적 논리합 연산부(633)에서는 대기 시간이 생기지 않아서 고속의 배타적 논리합 연산을 행할 수 있다.
또, 도 30의 경우에서도, 배타적 논리합 연산부(632)와 배타적 논리합 연산부(633)는 하드웨어로 실현하여도 되며, 소프트웨어로 실현해도 되고, 하드웨어와 소프트웨어와의 조합에 의해 실현하여도 된다.
또한, 배타적 논리합 연산부(632)와 배타적 논리합 연산부(633)는 은닉 처리부(460)의 외부에 있어도 무방하다.
도 31은 완전성 보증 처리부(430)의 완전성 인증자 부가부(432)와 완전성 확인부(433)의 상세를 나타내는 도면이다.
완전성 인증자 부가부(432)에는 버퍼(660)와 완전성 인증자 생성기(670)와 완전성 인증자 부가기(680)가 구비되어 있다. 완전성 확인부(433)에는 버퍼(661)와 완전성 인증자 생성기(671)와 완전성 확인기(681)가 포함되어 있다. 버퍼(660)와 버퍼(661)는 선출 선입 메모리이다. 버퍼(660)와 버퍼(661)는 도 26의 데이터 기억부에 상당한다. 완전성 인증자 생성기(670)와 완전성 인증자 생성기(671)는 도 26의 데이터 완전성용 함수 f9에 상당한다. 완전성 인증자 부가기(680)는 완전성 인증자를 데이터에 부가하는 것이다. 완전성 확인기(681)는 송신측으로부터 수취한 완전성 인증자와 수신측에서 생성한 완전성 인증자와의 비교를 행하여, 일치한 경우에 데이터의 완전성을 확인하는 것이다.
도 31에서, CPU(29)는 완전성 인증자 부가부(432)에 대하여 완전성을 보증하고자 하는 4개의 데이터(92)를 통합하여 송신하고 있다. 또한, CPU(29)는 완전성 을 보증하고자 하는 4개의 데이터(92)에 대응하는 4개의 제어 신호(91)를 통합하여 송신하고 있다. 제어 신호(91)는 적어도 메시지 인증키(IK)를 포함하며, 또한, 업/다운 링크(DIRECTION), 카운터(COUNT-C), 사용자마다 생성하는 난수(FRESH)를 갖고 있다. CPU(29)는 4개의 데이터에 대응하여, 각각 적어도 업/다운 링크(DIRECTION), 카운터(COUNT-C), 사용자마다 생성하는 난수(FRESH)를 제어 신호(91)로서 버퍼(660)에 전송한다. 또, 메시지 인증키(IK)에 대해서는 4개의 데이터에 대응한 개별적인 4개의 메시지 인증키(IK)를 버퍼(660)에 전송하여도 되며, 메시지 인증키(IK)가 4개의 데이터에 공통의 고정값인 경우에는 메시지 인증키(IK)를 버퍼(660)에 기억하지 않으며, 완전성 인증자 생성기(670)에 직접 입력하도록 하여도 된다.
제어 신호(91)는 제어 신호로서 버스(90)의 제어 신호 라인을 통해 전송하여도 되며, 데이터로서 버스(90)의 데이터 신호 라인을 통해 전송하여도 된다. 4개의 제어 신호(91)는 4개의 데이터와 함께 송신되어도 되며, 별도로 송신되어도 상관없다. 버퍼(660)는 4개의 데이터와 4개의 제어 신호를 통합하여 입력하여 기억한다. 여기서, CPU(29)가 4개의 데이터 혹은 4개의 제어 신호를 통합하여 전송한다는 의미는 1회의 전송 명령에 의해 4개의 데이터 혹은 4개의 제어 신호가 전송되는 것을 의미하고 있다. 이하, 「통합」이란, 「하나의 명령에 의해」 혹은 「복수의 것을 개별적이 아니라 한 그룹으로 하여」와 같은 것을 의미하는 것으로 한다. 「하나의 명령에 의해」 실행함으로써, CPU(29) 또는 각 처리기의 부하가 감소한다. 또한, 「복수의 것을 개별적이 아니라 한 그룹으로 하여」 전송 또는 입출력함으로써, 버스(90) 또는 각 전송선(도시 생략)의 전송 횟수가 감소한다.
버퍼(660)는 데이터와 제어 신호를 대응시켜, 대응 데이터로서 기억하고 있다. 완전성 인증자 생성기(670)는 대응 데이터를 입력하고, 제어 신호에 기초하여 데이터의 완전성 인증자를 생성한다. 완전성 인증자 생성기(670)는 소정의 알고리즘을 이용하여 4개의 대응 데이터로부터 4개의 완전성 인증자를 각각 생성하며, 완전성 인증자 부가기(680)에 통합하여 출력한다. 완전성 인증자 생성기(670)는 여기서는, 32 비트 길이의 완전성 인증자를 4개 생성하는 것으로 한다. 완전성 인증자 부가기(680)는 4개의 완전성 인증자를 각각 데이터에 부가하여, CPU(29)에 1개의 전송 명령에 기초하여 전송한다.
완전성 인증자 부가부(432)가 256 비트 길이의 데이터를 4개 입력한 경우에는 완전성 인증자 부가부(432)는 (256+32)×4 비트의 데이터를 CPU(29)에 반송하게 된다.
한편, 완전성 확인부(433)에서는 완전성 인증자가 부가된 데이터를 4개 통합하여 입력한다. 또한, 제어 신호(91)도 4개 통합하여 입력한다. 상술한 바와 같이, 메시지 인증키(IK)는 버퍼(661)에 기억되어도 되며, 완전성 인증자 생성기(671)에 직접 입력되어도 된다.
버퍼(661)는 이들 4개의 데이터를 대응시켜서, 대응 데이터로서 기억한다.완전성 인증자 생성기(671)는 버퍼(661)에 기억된 4개의 대응 데이터를 판독하고, 송신측의 완전성 인증자 생성기(670)와 동일한 알고리즘을 이용하여 4개의 완전성 인증자를 생성한다. 완전성 확인기(681)는 4개의 데이터에 부가되어 입력된 4개의 완전성 인증자와 완전성 인증자 생성기(671)가 생성한 4개의 완전성 인증자를 각각 비교하여, 일치하고 있는 경우에 완전성을 확인할 수 있었던 것으로 하여 정상이라는 취지의 응답을 전송한다.
완전성 확인부(433)가 256 비트 길이의 데이터와 32 비트 길이의 완전성 인증자를 4개씩 ((256+32) 비트×4)의 데이터를 입력한 경우, 완전성 확인기(681)는, 1 비트×4의 응답을 CPU(29)에 전송한다.
종래에는 각 데이터마다 CPU(29)로부터 완전성 보증 처리부(430)에 데이터 전송이 행해지고 있는 반면에, 도 31에 도시한 경우에는, 4개의 데이터가 통합되어 한번에 전송되기 때문에 버스(90)의 사용 효율이 좋아진다. 즉, 버스(90)의 대기 시간을 적게 할 수 있다. 또한, 버스(90)의 경합을 적게 할 수 있다.
도 31에 도시한 경우에는, 4개의 데이터가 통합되어 한번에 전송되는 경우를 나타내었지만, 그 개수는 4개에 한정되지 않는다. 또한, 버퍼의 데이터 유지 개수도 4개에 한하지 않는다.
또한, 데이터의 비트 길이는 256 비트에 한하지 않는다. 예를 들면, 512 비트이어도 되며, 5114 비트이어도 된다. 또한, 버퍼(660, 661)의 사이즈는 데이터의 비트 길이와 제어 신호의 비트 길이를 가산한 합계 비트 길이의 2배 이상이면 된다. 즉, 대응 데이터를 2개 이상 기억할 수 있는 것이면 된다. 예를 들면, 이시스템 내에서 지정될 수 있는 데이터의 비트 길이의 최대값이 5114 비트인 경우, 버퍼(660, 661)의 사이즈는 각각 (5114 비트+제어 신호의 비트 길이)×2 이상인 것이 바람직하다.
도 32는 무선 통신 제어부(20)와 완전성 보증 처리부(430)의 다른 예를 나타내는 도면이다. 도 32에 도시한 완전성 보증 처리부(430)는 완전성 인증자 생성부(434, 435)를 갖고 있다.
도 32가 도 31과 다른 점은 완전성 인증자 부가기(680)와 완전성 확인기(681)가 완전성 보증 처리부(430)에는 없으며, 무선 통신 제어부(20)에 제공되어 있다는 점이다. 도 32의 경우에는 CPU(29)로부터의 한번의 전송 명령에 의해 완전성 인증자 생성기(670)가 4개의 완전성 인증자를 완전성 인증자 부가기(680)에 대하여 전송한다. 한편, 완전성 인증자 생성기(671)는 CPU(29)로부터의 한번의 전송 명령에 의해 4개의 완전성 인증자를 완전성 확인기(681)에 전송한다.
도 32의 경우에는, 완전성 인증자 생성기(670)로부터 완전성 인증자 부가기(680)로의 버스(90)의 데이터 전송량은 32 비트×4로 된다. 또한, 완전성 인증자 생성기(671)의 버스(90)의 데이터 전송량도 32 비트×4로 된다.
도 32의 완전성 보증 처리부(430)로부터 무선 통신 제어부(20)로의 데이터 전송량은 도 31과 같이, 완전성 인증자 생성기(670)로부터 완전성 인증자 부가기(680)에 대하여 데이터를 반송할 필요가 없기 때문에, 도 31의 반송 데이터 전송량에 비해 대폭 삭감되게 된다.
또, 도 32에 도시한 완전성 보증 처리부(430)의 완전성 인증자 생성부(434)와 완전성 인증자 생성부(435)는 동일한 구성이기 때문에 하나로 통합하여도 된다.
또한, 도 31 및 도 32의 경우에는 버스(90)의 데이터 전송 처리와, 버퍼(660, 661)의 입출력 처리와, 완전성 인증자 생성기(670, 671)의 인증자 생성 처리와, 완전성 인증자 부가기(680)의 인증자 부가 처리와, 완전성 확인기(681)의 확인 처리가 복수의 데이터를 「통합하여」 처리하는 경우를 나타내었지만, CPU(29)와 버스(90)와의 사용 효율로부터 보았을 때, 버스(90)의 데이터 송신 처리 또는 데이터 수신 처리 중 적어도 한쪽을, 「하나의 명령에 의해」 혹은「복수의 데이터를 개별적이 아니라 한 그룹으로 하여」행하는 것이 바람직하다.
또한, 도 31 및 도 32 중 어느 하나의 경우에서도, 완전성 인증자 생성기(670)와 완전성 인증자 생성기(671)와 완전성 인증자 부가기(680)와 완전성 확인기(681)는 하드웨어로 실현하여도 되며, 소프트웨어로 실현하여도 되고, 하드웨어와 소프트웨어의 조합에 의해 실현하여도 된다.
도 33은 암호화부(422)의 다른 구성을 나타내는 도면이다.
도 33은 복수의 버퍼를 제공하여 스위치 SW에 의해 전환하는 경우를 나타내고 있다. 스위치 SW는 예를 들면, 논리 채널 식별자에 의해 전환할 수 있다. 즉, 논리 채널이 n개 있는 경우에, 버퍼를 n개 제공함으로써, 각 논리 채널마다 난수 열을 미리 준비해 둘 수 있다.
도 34는 버퍼를 n개 제공하고, 배타적 논리합 연산 회로를 n개 제공한 경우를 나타내고 있다.
도 35의 경우는 버퍼를 n개 제공하고, 암호기를 복수개 제공한 경우를 나타내고 있다.
이와 같이, 논리 채널마다 버퍼 등을 복수개 준비해 둠으로써, 채널마다의 은닉 처리를 고속으로 행하는 것이 가능해진다.
또, 도시하지 않지만, 복호화부도 도 33, 도 34, 도 35와 같이 채널마다 복수의 버퍼 등을 포함하도록 하여도 상관없다. 또한, 완전성 인증자 부가부(432), 완전성 확인부(433)에서도 도 33, 도 34, 도 35와 같이 채널마다 복수의 버퍼를 제공하도록 하여도 상관없다.
제3 실시 형태에서의 구성은 도 27에 도시한 것에 한정되는 것이 아니라, 예를 들면, 도 4, 도 5, 도 6, 도 7, 도 8, 도 10, 및 도 11 등에 도시한 바와 같은 구성을 취하도록 하여도 상관없다. 예를 들면, 도 4에 도시한 바와 같이, 은닉 처리와 완전성 보증 처리를 1개의 모듈로 행하여도 상관없다. 또한, 암호화와 복호화를 1개의 모듈로 행하여도 상관없다. 또한, 완전성 인증 부가와 완전성 확인을 1개의 모듈로 행하여도 상관없다. 또한, 각 모듈을 복수개 포함하도록 하여도 상관없다.
또, 버퍼(620, 621, 660, 661)는 선입 선출 메모리가 아니어도 되며, 시프트 메모리, 어드레스 맵드 메모리, 캐쉬 메모리, 및 레지스터이어도 된다.
또한, 버퍼(620, 621, 660, 661)가 CPU(29)로부터 액세스되는 경우에는, 메모리 어드레스에 의해 액세스되어도 되며, 입출력 어드레스에 의해 액세스되어도 된다.
또한, 제3 실시 형태에서 설명한 암호화 장치, 복호화 장치, 완전성 인증자부가부(장치), 완전성 확인부(장치), 및 완전성 인증자 생성부(장치)는 무선 통신 장치에 이용되는 것에 한하지 않으며, 유선 통신 장치, 컴퓨터, 그 밖의 전자 기기에도 이용할 수 있다.
상술한 은닉·완전성 보증 처리부(40)는 하드웨어로 구성할 수 있다. 예를 들면, FPGA나 커스텀 LSI로 실현할 수 있다. 또, 은닉·완전성 보증 처리부(40)는 소프트웨어 프로그램으로 실현할 수도 있다. 은닉·완전성 보증 처리부(40)가 소프트웨어 프로그램으로 실현되는 경우, 소프트웨어 프로그램은 무선 통신 제어부(20)에 있는 CPU에 의해 실행되게 된다.
또한, 은닉·완전성 보증 처리부(40)는 하드웨어와 소프트웨어의 조합에 의해 실현할 수 있다. 예를 들면, DSP(Digital Signal Processor)와 그 DSP에 의해 실행되는 마이크로 프로그램이나 펌웨어 프로그램에 의해 실현할 수 있다.
이하, 도 17 내지 도 20을 참조하여 구체예를 설명한다.
도 17은 암호화/복호화부(421) 중에서 이용되는 암호화 모듈(51)(또는, 복호화 모듈(71))의 구성도이다.
암호화 모듈(51)은 키 스케쥴러(511)와 데이터 랜덤화 유닛(512)을 갖고 있다. 키 스케쥴러(511)는 1개의 키 K를 입력하여 n개의 확대 키 ExtK1∼ExtKn을 생성한다. 데이터 랜덤화 유닛(512)은 함수 F와 XOR 회로에 의해 난수를 발생시킨다. 함수 F는 확대 키를 입력하여 비선형 데이터 변환을 행한다.
암호 모듈(51)에서는 예를 들면,
(1) DES(Data Encryption Standard), 또는
(2) 국제 공개 번호 WO97/9705(미국 특허 출원 번호 08/83640)에 개시된 블록 암호 알고리즘인 MISTY, 또는
(3) 상기 블록 암호 알고리즘 MISTY를 베이스로 한 64 비트 블록 암호이며, 차세대 휴대 전화용 국제 표준 암호(IMT2000)로서 채용되는 것이 결정된 블록 암호 알고리즘인 KASUMI, 또는
(4) 일본 특허 출원 번호 2000-64614(출원일 2000년 3월 9일)에 기재된 블록 암호 알고리즘인 Camellia 등의 블록 암호 알고리즘을 이용할 수 있다. 또한, 복호 모듈(71)에서도, DES, MISTY, KASUMI 또는 Camellia 등의 블록 암호 알고리즘을 이용할 수 있다.
도 18은 상술한 은닉·완전성 보증 처리부(40)의 실장 형식을 나타내는 도면이다.
도 18은 FPGA 또는 IC 또는 LSI 중에 상술한 은닉·완전성 보증 처리부(40)가 실현되어 있는 경우를 나타내고 있다. 즉, 상술한 은닉·완전성 보증 처리부(40)는 하드웨어로 실현할 수 있다. 또, 프린트 서킷 보드(도시 생략)에 의해 실현하는 것도 가능하다.
도 19는 상술한 은닉·완전성 보증 처리부(40)를 소프트웨어로 실현하는 경우를 나타내고 있다.
상술한 은닉·완전성 보증 처리부(40)는 암호화 프로그램(47)에 의해 실현할 수 있다. 암호화 프로그램(47)은 ROM(Read Only Memory)(42)(기록 매체의 일례)에기억되어 있다. 암호화 프로그램(47)은 RAM(Random Access Memory) 또는 플렉시블 디스크 또는 고정 디스크 등의 다른 기록 매체에 기록되어 있더라도 된다. 또한, 암호화 프로그램(47)은 서버 컴퓨터로부터 다운로드되어도 된다. 암호화 프로그램(47)은 서브 루틴으로서 기능한다. 암호화 프로그램(47)은 RAM(45)에 기억된 어플리케이션 프로그램(46)으로부터 서브 루틴 콜에 의해 호출되어 실행된다. 혹은, 암호화 프로그램(47)은 인터럽트 제어부(43)에서 접수하는 인터럽트의 발생에 의해 기동되도록 하여도 상관없다. 메모리(55)는 RAM(45)의 일부이어도 상관없다. 어플리케이션 프로그램(46), 암호화 프로그램(47)은 CPU(41)에 의해 실행되는 프로그램이다.
도 20은 무선 통신 제어부(20)에 의해 동작하는 어플리케이션 프로그램(46)이 암호화 프로그램(47)을 호출하는 메카니즘을 나타내고 있다.
어플리케이션 프로그램(46)은 키 K와 이니셜 밸류 IV와 평문 M과 암호문 C를 파라미터로 하여 암호화 프로그램(47)을 호출한다. 암호화 프로그램(47)은 키 K와 이니셜 밸류 IV와 평문 M을 입력하여, 암호문 C를 반환하는 것이다. 암호화 프로그램(47)과 복호 프로그램이 동일할 때에는 키 K와 이니셜 밸류 IV와 암호문 C와 평문 M을 파라미터로 하여 암호화 프로그램(47)을 호출한다.
또한, 도시하지 않지만, 암호화 프로그램(47)은 디지털 시그널 프로세서와, 그 디지털 시그널 프로세서에 의해 판독되어 실행되는 프로그램에 의해 실현하여도 상관없다. 즉, 하드웨어와 소프트웨어의 조합에 의해 암호화 프로그램(47)을 실현하여도 상관없다.
도 18, 도 19, 및 도 20은 주로, 암호화의 경우를 설명하였지만, 복호화에서도 마찬가지의 방식으로 실현할 수 있다.
도 18 및 도 19에 도시한 바와 같은 암호화 형태 및 복호화 형태는 전자 기기에 대하여 인스톨할 수 있다. 예를 들면, 퍼스널 컴퓨터나 팩시밀리 장치나 휴대 전화나 비디오 카메라나 디지털 카메라나 텔레비전 카메라 등의 모든 전자 기기에 인스톨할 수 있다. 특히, 이 실시 형태에서의 특징을 발휘할 수 있는 것은 복수의 채널로부터의 데이터를 암호화 복호화하는 경우에 유효하다. 혹은, 복수의 사용자로부터의 데이터가 랜덤하게 도착하여 복호화하는 경우에, 혹은 복수의 사용자에 대한 데이터가 랜덤하게 발생하여, 각각의 데이터를 리얼 타임으로 암호화하는 경우에 유효하다. 즉, 암호화 복호화하는 데이터의 수에 비해 암호화 복호화하는 장치 수가 적은 경우에, 상술한 실시 형태의 암호화, 복호화가 매우 유효하다. 예를 들면, 많은 클라이언트 컴퓨터를 서포트해야만 하는 서버 컴퓨터나 많은 휴대 전화기로부터의 데이터를 집배해야만 하는 기지국이나 회선 컨트롤러 등에, 상술한 암호화 방식이나 복호화 방식이 매우 유효하다.
또한, 상술한 예에서는 무선 통신 제어부(20)와 은닉·완전성 보증 처리부(40)가 버스를 통한 병렬 인터페이스로 연결되어 있는 경우를 나타내었지만, 직렬 인터페이스를 이용하여도 상관없다. 또한, 단말 IF부(10)와 은닉·완전성 보증 처리부(40) 및 무선 통신부(30)와 은닉·완전성 보증 처리부(40)가 직렬 인터페이스로 접속되는 경우를 나타내었지만, 보다 고속 처리를 행하기 위해서는 직렬 인터페이스가 아니고, 병렬 인터페이스를 이용하여도 상관없다.
또한, 도 9 및 도 10에서는 은닉 처리부(460)를 은닉·완전성 보증 처리부(40)의 내부에 제공하는 경우를 도시하였지만, 은닉 처리부(460)를 은닉·완전성 보증 처리부(40)로부터 외부로 독립시켜서, 은닉 처리부(460)를 단말 IF부(10)와 무선 통신부(30)와의 사이에 제공하여도 된다.
이상과 같이, 상술한 실시 형태에 따르면, 버퍼를 이용하여 복수 데이터를 미리 보존하도록 하였기 때문에, 은닉 처리와 완전성 보증 처리를 고속으로 실행하는 것이 가능해진다.
또한, 은닉 처리와 완전성 보증 처리를 위한 데이터 전송 횟수가 적어져서, CPU와 버스의 부하를 경감시킬 수 있다.
또한, 상기 실시 형태에 따르면, 은닉·완전성 보증 처리부의 내부에 채널 수나 데이터량에 따라 복수의 은닉 처리부와 복수의 완전성 보증 처리부를 제공하고 있기 때문에, 동시 병렬 처리에 의한 고속 데이터 처리가 가능해진다.

Claims (19)

  1. 난수 열을 생성하는 암호화기와,
    상기 암호화기에 의해 생성된 난수 열을 기억하는 난수 열 기억부와,
    평문을 입력하고, 입력한 평문과, 상기 난수 열 기억부에 기억된 난수 열을 연산하여 암호문을 출력하는 연산부를 포함하며,
    상기 난수 열 기억부에 의해 난수 열을 미리 기억함으로써, 상기 암호화기에 의한 난수 열의 생성과, 상기 연산부에 의한 평문과 난수 열과의 연산을 비동기로 행하는 것을 특징으로 하는 암호화 장치.
  2. 제1항에 있어서,
    상기 암호화기는 상기 연산부의 평문의 입력 전에 난수 열의 생성을 개시하는 것을 특징으로 하는 암호화 장치.
  3. 제1항에 있어서,
    상기 암호화기는 적어도 암호키와 평문의 길이를 입력하며, 암호키를 이용하여 평문 길이의 난수 열을 생성하여 생성한 난수 열을 상기 난수 열 기억부에 기억시키고,
    상기 난수 열 기억부는 연산부에 평문이 입력된 경우에, 기억한 난수 열을 출력하는 버퍼를 갖는 것을 특징으로 하는 암호화 장치.
  4. 제1항에 있어서,
    상기 연산부는 복수의 채널에 대응하여 평문을 입력하며,
    상기 암호화기는 채널을 식별하는 채널 식별 정보를 입력하여, 채널마다 난수 열을 생성하고,
    상기 난수 열 기억부는 상기 암호화기가 채널마다 생성한 난수 열을 기억하며,
    상기 연산부는 평문을 입력한 채널에 대응하는 난수 열을 상기 난수 열 기억부로부터 입력하여, 평문을 암호화하는 것을 특징으로 하는 암호화 장치.
  5. 난수 열을 생성하는 복호화기와,
    상기 복호화기에 의해 생성된 난수 열을 기억하는 난수 열 기억부와,
    암호문을 입력하고, 입력한 암호문과 상기 난수 열 기억부에 기억된 난수 열을 연산하여 평문을 출력하는 연산부를 포함하여,
    상기 난수 열 기억부에 의해 난수 열을 미리 기억함으로써, 상기 복호화기에 의한 난수 열의 생성과, 상기 연산부에 의한 암호문과 난수 열과의 연산을 비동기로 행하는 것을 특징으로 하는 복호화 장치.
  6. 제5항에 있어서,
    상기 복호화기는 상기 연산부의 암호문의 입력 전에 난수 열의 생성을 개시하는 것을 특징으로 하는 복호화 장치.
  7. 제5항에 있어서,
    상기 복호화기는 적어도 복호키와 암호문의 길이를 입력하며, 복호키를 이용하여 암호문 길이의 난수 열을 생성하며 생성한 난수 열을 상기 난수 열 기억부에 기억시키며,
    상기 난수 열 기억부는 연산부에 암호문이 입력된 경우에, 기억한 난수 열을 출력하는 버퍼를 갖는 것을 특징으로 하는 복호화 장치.
  8. 제5항에 있어서,
    상기 연산부는 복수의 채널에 대응하여 암호문을 입력하며,
    상기 복호화기는 채널을 식별하는 채널 식별 정보를 입력하여, 채널마다 난수 열을 생성하고,
    상기 난수 열 기억부는 상기 복호화기가 채널마다 생성한 난수 열을 기억하며,
    상기 연산부는 암호문을 입력한 채널에 대응하는 난수 열을 상기 난수 열 기억부로부터 입력하여, 암호문을 복호화하는 것을 특징으로 하는 복호화 장치.
  9. X(X≥2)개의 데이터와 X개의 제어 신호 데이터를 입력하여 기억하는 데이터 기억부와,
    상기 데이터 기억부가 기억한 X개의 데이터와 X개의 제어 신호 데이터를 입력하여, X개의 데이터에 대한 X개의 완전성 인증자를 생성하고, X개의 완전성 인증자를 통합하여 출력하는 완전성 인증자 생성기를 포함하는 것을 특징으로 하는 완전성 인증자 생성 장치.
  10. 제9항에 있어서,
    상기 완전성 인증자 생성 장치는 버스를 통해, 중앙 처리 장치와 접속되며,
    상기 데이터 기억부는 X개의 데이터와 X개의 제어 신호 데이터를 버스를 통해 중앙 처리 장치로부터 통합하여 입력하고,
    상기 완전성 인증자 생성기는 생성한 X개의 완전성 인증자를 버스를 통해 중앙 처리 장치로 통합하여 출력하는 것을 특징으로 하는 완전성 인증자 생성 장치.
  11. X(X≥2)개의 데이터와 X개의 제어 신호 데이터를 입력하여 기억하는 데이터 기억부와,
    상기 데이터 기억부가 기억한 X개의 데이터와 X개의 제어 신호 데이터를 입력하여, X개의 데이터에 대한 X개의 완전성 인증자를 생성하며, X개의 완전성 인증자를 통합하여 출력하는 완전성 인증자 생성기와,
    상기 완전성 인증자 생성기가 통합하여 출력한 X개의 완전성 인증자를 입력하여, X개의 완전성 인증자를 X개의 데이터에 부가하고, X개의 완전성 인증자가 부가된 X개의 데이터를 출력하는 완전성 인증자 부가기
    를 포함하는 것을 특징으로 하는 완전성 인증자 부가 장치.
  12. X(X≥2)개의 완전성 인증자가 부가된 X개의 데이터와 X개의 제어 신호 데이터를 입력하여 기억하는 데이터 기억부와,
    상기 데이터 기억부가 기억한 X개의 데이터와 X개의 제어 신호 데이터를 입력하여, X개의 데이터에 대한 X개의 완전성 인증자를 생성하며, X개의 완전성 인증자를 통합하여 출력하는 완전성 인증자 생성기와,
    상기 완전성 인증자 생성기가 통합하여 출력한 X개의 완전성 인증자를 입력하고, 입력한 X개의 완전성 인증자와 상기 X개의 데이터에 부가된 X개의 완전성 인증자를 각각 비교하여, X개의 데이터의 완전성을 확인하는 완전성 확인기
    를 포함하는 것을 특징으로 하는 완전성 확인 장치.
  13. 데이터를 입력하는 단말 인터페이스부와,
    단말 인터페이스부가 입력한 데이터를 입력하며, 프로토콜에 기초하여 데이터를 처리하여 출력하는 무선 통신 제어부와,
    무선 통신 제어부로부터 제어 신호와 데이터를 입력하고, 입력한 제어 신호에 기초하여, 입력한 데이터에 대하여 데이터를 암호화하는 은닉 처리를 행하며, 처리한 데이터를 무선 통신 제어부로 출력하는 은닉 처리부와,
    무선 통신 제어부로부터 출력된 데이터를 입력하고 변조하여 송신하는 무선 통신부
    를 포함하며,
    상기 은닉 처리부는,
    데이터를 암호화하는 난수 열의 생성을 데이터의 입력 전에 개시하여 생성한 난수 열을 출력하는 암호화기와,
    암호화기로부터 출력되는 난수 열을 데이터의 입력 전에 일시적으로 저장하는 난수 열 기억부와,
    데이터를 입력하고, 입력한 데이터와 상기 난수 열 기억부에 기억된 난수 열을 연산하여 데이터를 암호화하는 연산부
    를 포함하는 것을 특징으로 하는 무선 통신 장치.
  14. 데이터를 입력하는 단말 인터페이스부와,
    단말 인터페이스부가 입력한 데이터를 입력하며, 프로토콜에 기초하여 데이터를 처리하여 출력하는 무선 통신 제어부와,
    무선 통신 제어부로부터 제어 신호와 데이터를 입력하고, 입력한 제어 신호에 기초하여, 입력한 데이터에 대하여 데이터의 개찬(改竄)을 검출하기 위한 완전성 인증자를 생성하는 완전성 보증 처리를 행하며, 처리한 데이터를 무선 통신 제어부로 출력하는 완전성 보증 처리부와,
    무선 통신 제어부로부터 출력된 데이터를 입력하고 변조하여 송신하는 무선 통신부
    를 포함하며,
    상기 완전성 보증 처리부는,
    무선 통신 제어부로부터 제어 신호와 데이터를 복수 통합하여 입력하여, 일시적으로 저장하는 데이터 기억부와,
    데이터 기억부가 기억한 복수의 데이터에 대하여 제어 신호를 이용하여 완전성 인증자를 생성하고 복수의 완전성 인증자를 통합하여 출력하는 완전성 인증자 생성기
    를 포함하는 것을 특징으로 하는 무선 통신 장치.
  15. 데이터를 수신하여 복조하는 무선 통신부와,
    무선 통신부에 의해 복조된 데이터를 입력하며, 프로토콜에 기초하여 데이터를 처리하여 출력하는 무선 통신 제어부와,
    무선 통신 제어부로부터 제어 신호와 데이터를 입력하고, 입력한 제어 신호에 기초하여, 입력한 데이터에 대하여 데이터를 복호화하는 은닉 처리를 행하며, 처리한 데이터를 무선 통신 제어부로 출력하는 은닉 처리부와,
    무선 통신 제어부에 의해 처리된 데이터를 입력하여 출력하는 단말 인터페이스부
    를 포함하며,
    상기 은닉 처리부는,
    입력한 데이터를 복호화하는 난수 열을 데이터의 입력 전에 생성하여 출력하는 복호화기와,
    복호화기로부터 출력되는 난수 열을 데이터의 입력 전에 일시적으로 저장하는 난수 열 기억부와,
    데이터를 입력하고, 입력한 데이터와 상기 난수 열 기억부에 기억된 난수 열을 연산하여 평문을 출력하는 연산부
    를 포함하는 것을 특징으로 하는 무선 통신 장치.
  16. 데이터를 수신하여 복조하는 무선 통신부와,
    무선 통신부에 의해 복조된 데이터를 입력하여, 프로토콜에 기초하여 데이터를 처리하여 출력하는 무선 통신 제어부와,
    무선 통신 제어부로부터 제어 신호와 데이터를 입력하고, 입력한 제어 신호에 기초하여, 입력한 데이터에 대하여 데이터의 개찬을 검증하는 완전성 보증 처리를 행하며, 처리한 데이터를 무선 통신 제어부로 출력하는 완전성 보증 처리부와,
    무선 통신 제어부에 의해 처리된 데이터를 입력하여 출력하는 단말 인터페이스부
    를 포함하며,
    상기 완전성 보증 처리부는,
    무선 통신 제어부로부터 제어 신호와 데이터를 복수 통합하여 입력하고, 일시적으로 저장하는 데이터 기억부와,
    데이터 기억부가 기억한 복수의 데이터에 대하여 제어 신호를 이용하여 완전성 인증자를 생성하고 복수의 완전성 인증자를 통합하여 출력하는 완전성 인증자생성기
    를 포함하는 것을 특징으로 하는 무선 통신 장치.
  17. 평문을 입력하기 전에 난수 열의 생성을 개시하고, 생성한 난수 열을 미리 난수 열 기억부에 기억하며,
    난수 열 생성의 개시 이후 평문을 입력하고, 입력한 평문과 상기 난수 열 기억부에 미리 기억한 난수 열을 연산하여 암호문을 출력하는 것을 특징으로 하는 암호화 방법.
  18. 암호문을 입력하기 전에 난수 열의 생성을 개시하고, 생성한 난수 열을 미리 난수 열 기억부에 기억하며,
    난수 열 생성의 개시 이후 암호문을 입력하고, 입력한 암호문과 상기 난수 열 기억부에 미리 기억한 난수 열을 연산하여 평문을 출력하는 것을 특징으로 하는 복호화 방법.
  19. X(X≥2)개의 데이터와 X개의 제어 신호 데이터를 입력하여 데이터 기억부에 기억하며,
    상기 데이터 기억부가 기억한 X개의 데이터와 X개의 제어 신호 데이터를 입력하여, X개의 데이터에 대한 X개의 완전성 인증자를 생성하고, X개의 완전성 인증자를 통합하여 출력하는 것을 특징으로 하는 완전성 인증자 생성 방법.
KR10-2003-7013024A 2001-04-03 2001-04-03 암호화 장치 KR20030085094A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2001/002880 WO2002082715A1 (en) 2001-04-03 2001-04-03 Encrypting device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020067018334A Division KR20060103289A (ko) 2006-09-08 2001-04-03 완전성 인증자 장치

Publications (1)

Publication Number Publication Date
KR20030085094A true KR20030085094A (ko) 2003-11-01

Family

ID=11737221

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-7013024A KR20030085094A (ko) 2001-04-03 2001-04-03 암호화 장치

Country Status (12)

Country Link
US (1) US7333609B2 (ko)
EP (1) EP1376922B1 (ko)
JP (1) JP4464046B2 (ko)
KR (1) KR20030085094A (ko)
CN (1) CN100431292C (ko)
AU (1) AU2001244712B2 (ko)
CA (1) CA2441392C (ko)
DK (1) DK1376922T3 (ko)
ES (1) ES2523136T3 (ko)
MX (1) MXPA03009056A (ko)
NO (1) NO336550B1 (ko)
WO (1) WO2002082715A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015064890A1 (ko) * 2013-10-30 2015-05-07 에스케이텔레콤 주식회사 양자 키 분배 프로토콜을 구현함에 있어 더블 버퍼링 방식을 이용한 원시 키 생성 방법 및 장치
KR20190143196A (ko) 2018-06-20 2019-12-30 시옷랩주식회사 양자 난수열 기반의 암호 장치

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2385951A (en) * 2001-09-21 2003-09-03 Sun Microsystems Inc Data encryption and decryption
JP4128395B2 (ja) * 2002-05-23 2008-07-30 三菱電機株式会社 データ変換装置
KR100516548B1 (ko) * 2003-02-05 2005-09-22 삼성전자주식회사 이동 통신 시스템에서 최적화된 암호화 함수를 설계하는방법과 최적화된 암호화 장치
US7543142B2 (en) 2003-12-19 2009-06-02 Intel Corporation Method and apparatus for performing an authentication after cipher operation in a network processor
US7512945B2 (en) * 2003-12-29 2009-03-31 Intel Corporation Method and apparatus for scheduling the processing of commands for execution by cryptographic algorithm cores in a programmable network processor
US7636857B2 (en) * 2004-05-24 2009-12-22 Interdigital Technology Corporation Data-mover controller with plural registers for supporting ciphering operations
JP4517732B2 (ja) * 2004-06-02 2010-08-04 日本電気株式会社 無線制御装置及びそれを用いた移動通信システム並びにその動作制御方法
US20060101310A1 (en) * 2004-10-22 2006-05-11 Nimrod Diamant Device, system and method for verifying integrity of software programs
US7675509B2 (en) * 2005-01-13 2010-03-09 Sony Corporation Methods and apparatus for optical wireless communication
US7869590B2 (en) * 2005-04-12 2011-01-11 Broadcom Corporation Method and system for hardware accelerator for implementing f9 integrity algorithm in WCDMA compliant handsets
US20100046755A1 (en) * 2005-12-07 2010-02-25 Fiske Software Llc Cryptography related to keys with signature
US8660145B2 (en) * 2006-02-08 2014-02-25 Agere Systems Llc MAC-HS processing in an HSDPA-compatible receiver in a 3G wireless network
US8627092B2 (en) * 2006-03-22 2014-01-07 Lg Electronics Inc. Asymmetric cryptography for wireless systems
US8832449B2 (en) * 2006-03-22 2014-09-09 Lg Electronics Inc. Security considerations for the LTE of UMTS
JP4960446B2 (ja) * 2006-06-19 2012-06-27 インターデイジタル テクノロジー コーポレーション 初期の信号メッセージにおいて初期のユーザ識別情報のセキュリティを保護する方法および装置
JP2008035431A (ja) * 2006-07-31 2008-02-14 Hitachi Kokusai Electric Inc 画像圧縮装置
TW200832424A (en) * 2007-01-19 2008-08-01 Holtek Semiconductor Inc Security structure and method for non-volatile memory
US9025770B1 (en) * 2007-06-28 2015-05-05 Trend Micro Incorporated Dynamic encryption arrangement with a wireless device and methods therefor
TR201905017T4 (tr) 2007-12-27 2019-05-21 Nec Corp Radyo Haberleşme Sistemi, Radyo Haberleşme Aygıtı Ve Şifreleme Yöntemi
JP4390842B1 (ja) * 2008-08-15 2009-12-24 株式会社エヌ・ティ・ティ・ドコモ 移動通信方法、無線基地局及び移動局
EP2357753A1 (en) * 2008-11-14 2011-08-17 Oki Semiconductor Co., Ltd. Confidential information transmission method, confidential information transmission system, and confidential information transmission device
JP5414346B2 (ja) * 2009-04-28 2014-02-12 三菱電機株式会社 データ処理装置
US20110091035A1 (en) * 2009-10-20 2011-04-21 Sun Microsystems, Inc. Hardware kasumi cypher with hybrid software interface
KR101612518B1 (ko) * 2009-11-26 2016-04-15 삼성전자주식회사 병렬 처리 가능한 암복호화기 및 그것의 암복호 방법
US20120039185A1 (en) * 2010-08-12 2012-02-16 Futurewei Technologies, Inc. System and Method for Providing Security in a Wireless Communications System
JP5017439B2 (ja) * 2010-09-22 2012-09-05 株式会社東芝 暗号演算装置及びメモリシステム
EP2461613A1 (en) 2010-12-06 2012-06-06 Gemalto SA Methods and system for handling UICC data
US9408066B2 (en) 2010-12-06 2016-08-02 Gemalto Inc. Method for transferring securely the subscription information and user data from a first terminal to a second terminal
TWI450525B (zh) * 2011-07-25 2014-08-21 Acer Inc 偵測無線傳輸錯誤之方法
KR102036348B1 (ko) * 2012-02-27 2019-10-24 삼성전자 주식회사 메모리 컨트롤러 및 이의 동작 방법
KR101330071B1 (ko) 2013-07-01 2013-11-18 (주)아울시스템즈 데이터베이스의 숫자형 데이터의 보안 방법 및 장치
JP6340769B2 (ja) * 2013-10-11 2018-06-13 カシオ計算機株式会社 物体位置推定装置、物体位置推定方法及びプログラム
CN103645882A (zh) * 2013-12-09 2014-03-19 中颖电子股份有限公司 基于单片机的批量乱序随机数的生成方法
JP6232303B2 (ja) * 2014-01-31 2017-11-15 株式会社日立製作所 情報処理装置
SG11201608601TA (en) * 2014-04-23 2016-11-29 Agency Science Tech & Res Method and system for generating / decrypting ciphertext, and method and system for searching ciphertexts in a database
EP3131230B1 (en) * 2014-04-28 2019-12-25 Ichiro Kazawa Encryption method, program, and system
CN105893861A (zh) * 2014-09-28 2016-08-24 伊姆西公司 用于生成二维码的方法和系统
US20160316373A1 (en) * 2015-04-27 2016-10-27 Qualcomm Incorporated Techniques for managing security mode command (smc) integrity failures at a user equipment (ue)
JP2017005412A (ja) * 2015-06-08 2017-01-05 国立大学法人京都大学 データ処理装置、データ送信方法、コンピュータプログラム、及びデータサーバ
JP6454614B2 (ja) * 2015-07-10 2019-01-16 日立オートモティブシステムズ株式会社 車載システム、その制御装置および制御方法
JP2017005682A (ja) * 2016-02-16 2017-01-05 国立大学法人京都大学 データ処理装置、データ送信方法、コンピュータプログラム、及びデータサーバ
WO2018216512A1 (ja) * 2017-05-25 2018-11-29 日本電信電話株式会社 秘密改ざん検知システム、秘密改ざん検知装置、秘密改ざん検知方法、およびプログラム
KR20210128240A (ko) * 2020-04-16 2021-10-26 에스케이하이닉스 주식회사 컨트롤러 및 이의 동작 방법
CN116318738B (zh) * 2023-05-18 2023-09-05 北京信安世纪科技股份有限公司 签名方法、系统、电子设备及存储介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4663500A (en) * 1982-02-22 1987-05-05 Nec Corporation Cryptographic system
JPS6032454A (ja) * 1983-08-03 1985-02-19 Nec Corp 時分割多重化通信装置の簡易秘話回路
JPS61224531A (ja) * 1985-03-29 1986-10-06 Nec Corp アウトプツト・フイ−ドバツク・モ−ド方式による暗号装置
JP2675032B2 (ja) * 1987-12-21 1997-11-12 株式会社日立製作所 伝票圧縮文の作成方法
JPH02165186A (ja) * 1988-12-19 1990-06-26 Matsushita Electric Ind Co Ltd Icカード装置
SE465797B (sv) * 1990-03-07 1991-10-28 Ericsson Telefon Ab L M Foerfarande att oeverfoera synkroniseringsinformation vid krypterad oeverfoering i ett mobilradiosystem
JP2979057B2 (ja) * 1990-08-30 1999-11-15 榮治 渡邊 無線式の秘話システム
US5444781A (en) * 1993-08-23 1995-08-22 Apple Computer Inc. Method and apparatus for decryption using cache storage
US5345508A (en) * 1993-08-23 1994-09-06 Apple Computer, Inc. Method and apparatus for variable-overhead cached encryption
JP3029381B2 (ja) * 1994-01-10 2000-04-04 富士通株式会社 データ変換装置
US5796836A (en) * 1995-04-17 1998-08-18 Secure Computing Corporation Scalable key agile cryptography
TW432326B (en) 1995-05-02 2001-05-01 Hitachi Ltd Microcomputer
JPH1022994A (ja) * 1996-07-04 1998-01-23 Hitachi Ltd 暗号化装置および復号化装置、暗号化方法および復号化方法、ならびにそれらを用いた通信システム
JP2993429B2 (ja) * 1996-07-17 1999-12-20 日本電気株式会社 携帯無線端末の暗号化システム
JPH11355268A (ja) * 1998-06-09 1999-12-24 Sony Corp 情報処理装置および方法、情報処理システム、並びに提供媒体
TW494306B (en) * 1998-10-27 2002-07-11 Winbond Electronics Corp Secret code protection circuit capable of protecting read only memory data
EP1063811B1 (en) * 1999-06-22 2008-08-06 Hitachi, Ltd. Cryptographic apparatus and method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015064890A1 (ko) * 2013-10-30 2015-05-07 에스케이텔레콤 주식회사 양자 키 분배 프로토콜을 구현함에 있어 더블 버퍼링 방식을 이용한 원시 키 생성 방법 및 장치
US9847876B2 (en) 2013-10-30 2017-12-19 Sk Telecom Co., Ltd. Method and apparatus for generating raw key using double buffering scheme in implementing quantum key distribution protocol
KR20190143196A (ko) 2018-06-20 2019-12-30 시옷랩주식회사 양자 난수열 기반의 암호 장치

Also Published As

Publication number Publication date
CA2441392C (en) 2009-11-17
NO20034408L (no) 2003-11-18
WO2002082715A1 (en) 2002-10-17
NO20034408D0 (no) 2003-10-02
AU2001244712B2 (en) 2005-03-24
DK1376922T3 (da) 2014-10-27
NO336550B1 (no) 2015-09-28
JPWO2002082715A1 (ja) 2004-07-29
EP1376922B1 (en) 2014-09-03
EP1376922A1 (en) 2004-01-02
EP1376922A4 (en) 2009-03-18
CN1568597A (zh) 2005-01-19
US7333609B2 (en) 2008-02-19
CA2441392A1 (en) 2002-10-17
US20040131186A1 (en) 2004-07-08
CN100431292C (zh) 2008-11-05
JP4464046B2 (ja) 2010-05-19
ES2523136T3 (es) 2014-11-21
MXPA03009056A (es) 2004-02-12

Similar Documents

Publication Publication Date Title
JP4464046B2 (ja) 暗号化装置及び復号化装置及び無線通信装置
KR100430358B1 (ko) 무선 통신 장치 및 무선 통신 방법
JP4094216B2 (ja) 暗号同期情報の自動再同期
US6449473B1 (en) Security method for transmissions in telecommunication networks
KR101387799B1 (ko) 메시지 인증 방법
JPH05227152A (ja) 機密通信リンクを確立する方法および装置
JP2005244534A (ja) 暗号通信装置および暗号通信方法
JP4856380B2 (ja) 暗号同期(cryptosync)を生成する方法
KR100551992B1 (ko) 어플리케이션 데이터의 암호화 및 복호화 방법
KR20060103289A (ko) 완전성 인증자 장치
AU2005201858B2 (en) Authentication apparatus
TWI287767B (en) Encryption device and method, decryption device and method, integrity authentication code generation device and method, integrity authentication code auxiliary device, integrity recognition device, and wireless communication device
Pathak et al. Towards the Proposal of Mobile Security Encryption Algorithm:“RHINO256”
MXPA01008590A (en) Radio communication device and radio communication method
JP2003143127A (ja) セキュリティ保持方法及びその実施システム並びにその処理プロセス
KR20080086050A (ko) 이동 통신 시스템에서 패킷을 비화 및 역비화하는 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E801 Decision on dismissal of amendment
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE AMENDMENT REQUESTED 20051024

Effective date: 20051229

S901 Examination by remand of revocation
E902 Notification of reason for refusal
AMND Amendment
S601 Decision to reject again after remand of revocation
AMND Amendment
J201 Request for trial against refusal decision
A107 Divisional application of patent
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20060818

Effective date: 20070730