KR101357026B1 - 무선 네트워크들을 위한 공중-인터페이스 애플리케이션 층보안 - Google Patents

무선 네트워크들을 위한 공중-인터페이스 애플리케이션 층보안 Download PDF

Info

Publication number
KR101357026B1
KR101357026B1 KR1020087010041A KR20087010041A KR101357026B1 KR 101357026 B1 KR101357026 B1 KR 101357026B1 KR 1020087010041 A KR1020087010041 A KR 1020087010041A KR 20087010041 A KR20087010041 A KR 20087010041A KR 101357026 B1 KR101357026 B1 KR 101357026B1
Authority
KR
South Korea
Prior art keywords
data
cryptosync
data block
stream
receiver
Prior art date
Application number
KR1020087010041A
Other languages
English (en)
Other versions
KR20080059601A (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 KR20080059601A publication Critical patent/KR20080059601A/ko
Application granted granted Critical
Publication of KR101357026B1 publication Critical patent/KR101357026B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 무선 링크를 통한 전송을 위해 데이터를 암호화하는 방법을 제공한다. 상기 방법은 입력으로서 크립토싱크를 수신하는 암호화 알고리즘을 사용하여 공중-인터페이스 애플리케이션 층에서 적어도 하나의 데이터 블록을 암호화하는 단계를 포함한다. 크립토싱크의 값은 다른 데이터 블록들에 대한 적어도 하나의 데이터 블록의 순서에 기초한다. 크립토싱크의 값은 데이터 블록들의 순서에 기초하여 수신기에 의해 복구 가능하다. 적어도 하나의 암호화된 데이터 블록이 다른 데이터 블록들에 대한 적어도 하나의 데이터 블록의 순서를 보존하도록 동작 가능한 수신기에 전송된다.
Figure R1020087010041
무선 링크, 데이터 암호화, 암호화 알고리즘, 크립토싱크, 데이터 블록.

Description

무선 네트워크들을 위한 공중-인터페이스 애플리케이션 층 보안{AIR-INTERFACE APPLICATION LAYER SECURITY FOR WIRELESS NETWORKS}
본 발명은 일반적으로 통신 시스템들에 관한 것이며, 특히 무선 통신 시스템들에 관한 것이다.
무선 통신 시스템들은 통상적으로 음성 및/또는 데이터 통신들을 제공하기 위하여 채용된다. 예를 들어, 도1을 참조하면, 무선 통신 시스템(100)은 일반적으로 하나 이상의 무선 장치들(108)과 통신하도록 동작 가능한 무선 네트워크(104)를 포함한다. 이 예에서, 무선 네트워크(104) 및 무선 장치(108)는 무선 링크(110)를 통하여 통신한다. 도시되어 있지 않을지라도, 무선 링크(110)는 무선 네트워크(104) 및 무선 장치(108) 사이의 무선 통신을 용이하게 하는 임의의 수의 중간 장치들을 포함할 수 있다. 예를 들어, 무선 링크(110)는 리피터(repeater)들, 안테나들, 라우터들, 위성들, 등을 포함할 수 있다.
기존 및 최근 무선 통신 시스템들은 일반적으로 공중-인터페이스 기술들(air-interface technologies), 네트워크 아키텍처(network architecture)들, 및 무선 프로토콜들의 이종 집합(heterogeneous collection)들로 이루어진다. 예를 들어, 무선 통신 시스템들은 근거리 및 "핫스폿(hotspot)" 네트워크들로의 액세스를 제공하는 IEEE-802.11(WiFi) 무선 네트워크들과, 고정된 무선 및 이동 광대역 액세스를 제공하는 IEEE-802.16(WiMax) 네트워크들, 제3 세대(3G) 이동 데이터 사용자들로의 액세스를 제공하는 에볼루션 데이터 최적화된 네트워크(1xEVDO)들, 등을 사용하여 동작할 수 있다. 상이한 무선 기술들에서 존재하는 다양성(diversity)은 일반적으로 상기 기술들이 서비스하는 시장들 및 상황에 기인한다.
예를 들어, 도1에서, 무선 네트워크(104)는 이동 데이터 사용자들로의 광대역 데이터 액세스를 제공하는 1xEVDO 네트워크일 수 있다. 이 예에서, 무선 네트워크(104)의 인프라스트럭처는 기지국 송수신기들(BTS), 무선 네트워크 제어기들(RNC), 패킷 데이터 서비싱 노드(PDSN), 등을 포함할 수 있다. 이 동일한 예에서, 무선 장치(108)는 셀룰러 전화, PDA(personal data assistant), 문자 메시지 장치, 랩톱 등과 같은 이동 유닛일 수 있다. 또 다른 예에서, 무선 네트워크(104)는 근거리 네트워크와 데이터 통신하는 적어도 하나의 무선 액세스 포인트를 포함하는 IEEE 802.11 네트워크일 수 있다. 일반적으로, 무선 통신 시스템들(100)은 임의의 공지된, 최근의, 또는 아직 개발되지 않은 무선 기술들을 사용하여 구성될 수 있고, 이러한 무선 통신 시스템들(100)은 임의의 수의 고정 또는 이동 무선 장치들(108)과 함께 동작할 수 있다.
개방형 시스템간 상호접속(OSI)은 데이터(예를 들어, 메시지들, 패킷들, 데이터그램, 프레임들, 등)가 통신 시스템 내의 2개의 포인트들 사이에서 전송되는 방법에 대한 설명을 제공하는 일반적으로 인정된 기준 모델이다. 간소화를 위하여, 용어들 "패킷", "데이터 패킷", 및 "프레임"은 일반적으로 IP 프레임, 포인트-투-포인트 프로토콜(PPP) 프레임, 무선 링크 프로토콜(RLP) 프레임, 시그널링 링크 프로토콜(SLP) 프레임과 같이, 공지된 방식으로 구성되는 데이터, 또는 임의의 다른 공지되거나 개발될 데이터 포맷을 일반적으로 칭하기 위하여 본원에서 교환 가능하게 사용될 것이다. 예를 들어, 도1에서, 데이터 패킷들은 무선 네트워크(104) 및 무선 장치(108) 사이에서 어느 한 방향으로 전송될 수 있다. 이 예에서, 패킷들은 음성, 비디오, 시그널링 메시지들, 또는 임의의 다른 유형의 정보를 포함할 수 있다. 데이터 패킷들을 전송하는데 사용되는 프로토콜은 통상적으로 특정 프레임 포맷(예를 들어, RLP, IP, SLP, 등)을 규정한다.
당업자들은 OSI 기준 모델이 전형적으로 통신 세션의 각 종점에서 발생하는 기능적인 층들을 규정한다는 것을 인식할 것이다. 편의상, 통신 프로세스들 및/또는 애플리케이션들은 종종 OSI 기능 층들 중 하나로 분류된다. 예를 들어, OSI 모델에서의 층 4, 즉, 전송 층은 특히, 소정 통신 세션에서 모든 패킷들이 도착되었는지를 결정할 책임이 있는 프로세스들 및/또는 애플리케이션들을 포함한다. 그러나, OSI 모델이 양호하게 규정된 층에서 관련 기능들을 함께 유지하는 면에서 항상 엄격하게 고수되지는 않는다는 것이 인식되어야 한다. 더구나, 소정 통신 세션은 OSI 기준 모델의 각 층으로부터의 기능 성분을 포함할 수 없다.
무선 통신 시스템 내의 액세스 네트워크들은 통상적으로 OSI 모델의 물리 및 매체 액세스 제어(MAC) 층들과 가장 밀접하게 관련된다. 그러나, 무선 네트워크들은 종종 에러 복구 및 대역폭 관리와 관련된 특정 요건들을 갖는다. 이와 같이, 물리 및 MAC 층들은 종종 무선 통신 세션에서의 부가적인 기능들과 관련된 다른 층들 로 보충된다. 게다가, 무선 네트워크 시그널링 메커니즘들은 종종 IP 기반으로 하지 않고, 통상적으로 특정 액세스 기술에 특정하게 맞춰진다. 결과적으로, 무선 액세스 네트워크들은 종종 액세스 기술에 특정되는 네트워크 층 아래에 한 세트의 기능 층들을 사용한다.
도2는 1xEVDO 네트워크에 적용 가능한 설명적인 공중-인터페이스 계층화 아키텍처(200)를 도시한다. 간결성을 위하여, 이와 같은 공증-인터페이스 계층화는 본원에서 1xEVDO 네트워크에 대해서만 설명된다. 그러나, 다른 액세스 네트워크들이 유사한 원리를 사용하지만, 기술적 차이들, 구현 고려사항들, 등으로 인하여 변형들이 가능하다는 것이 이해되어야 한다. 요컨대, 공중-인터페이스 계층화는 무선 통신 시스템에서의 무선 링크를 통한 전송 이전에, 데이터 패킷이 트래버싱(traversing)하는 논리적 단계들의 시퀀스로서 간주될 수 있다.
블록(204)은 일반적으로 특정 공중-인터페이스와 무관한 프레임 포맷들을 포함하는 공중-인터페이스 애플리케이션 층을 나타낸다. 공중-인터페이스 애플리케이션 층 프레임 포맷은 통상적으로 IP 또는 PPP이다. 다른 프레임 포맷들이 또한 사용될 수 있다. 1xEVDO 네트워크의 상황에서, 공중-인터페이스 프레임들은 RLP 프레임들 및 SLP 프레임들을 포함한다. RLP는 옥텟(octet)들이 상위층, 통상적으로 IP 또는 PPP로부터 수신되는 순서를 반영하는 바이트-지향 시퀀스 번호를 사용한다. 다수의 RLP 패킷 크기들은 표준에 의해 지원된다.
공중-인터페이스 애플리케이션 층은 전형적으로 무선 네트워크의 입구 및 출구 포인트(ingress and egress point)(들)와 관련된 기능 층들로서 간주된다. 무선 네트워크를 통하여 데이터 패킷을 전송하는 상황에서(예를 들어, 입구), 공중-인터페이스 애플리케이션 층은 전형적으로 상위의 기능 층으로부터 IP 또는 PPP 프레임을 수신한다. 예를 들어, 공중-인터페이스 애플리케이션 층은 VoIP 애플리케이션으로부터 IP 패킷을 수신할 수 있다. 이 경우에, 공중-인터페이스 애플리케이션 층은 자신의 프로세싱을 수행하고, 데이터를 하위의 다음 층으로 통과시킨다. 출구에 대하여, 공중-인터페이스 애플리케이션 층은 전형적으로 하위 기능 층으로부터 데이터를 수신한다. 이 경우에, 데이터는 통상적으로 무선 링크를 통하여 전송되고, 하위 기능 층들에 의해 프로세싱된 후에 공중-인터페이스 애플리케이션 층으로 핸드오프된다. 공중-인터페이스 애플리케이션 층은 데이터를 프로세싱하고 이를 VoIP 애플리케이션과 같은 상위층(도시되지 않음)에 제공한다.
데이터 스트림 층은 박스(208)로 도시되어 있다. 데이터 스트림 층은 소정 통신 세션에서의 데이터 패킷들에 2-비트 스트림 식별자 헤더를 추가함으로써 상이한 공중-인터페이스 애플리케이션들 간을 구별하는 메커니즘을 제공한다. 박스(212)로 표현된 세션 층은 어드레스 관리, 공중-인터페이스 프로토콜 협상 및 구성, 및 상태 유지 서비스들을 제공한다. 박스(216)로 표시된 접속 층은 공중-링크 접속 설정 및 유지 서비스들을 제공한다.
박스(220)로 도시된 보안 층은 링크 층 보안 지원을 제공한다. 1xEVDO 네트워크에서 링크 층 보안에 대한 하나의 종래의 방법은 접속 층 패킷에 헤더로서 추가된 2-바이트 크립토싱크(cryptosynch)를 사용한다. 전송 전에, 크립토싱크는 데이터 패킷을 암호화하기 위하여 아마도 키와 같은 다른 파라미터들과 함께 암호화 알고리즘(예를 들어, DES 또는 AES)으로의 입력으로서 제공된다. 이 방법에 의하면, 크립토싱크는 통상적으로 데이터 패킷에 추가되어 수신기에 전송된다. 그 후, 수신기는 패킷을 해독하기(decrypt) 위하여 아마도 이전에 동의된 키와 같은 다른 파라미터와 함께 크립토싱크를 사용할 수 있다. 그 후, 용어들 "크립토싱크" 및 "크립토그래픽 동기 파라미터들"은 패킷 암호화 및/또는 인증과 함께 사용될 임의의 보안 파라미터를 일반적으로 칭하기 위하여 교환 가능하게 사용될 수 있다.
패킷이 인증되어야 하는 경우, 메시지 인증 태그가 계산되어 접속 층 패킷의 종단을 향해 추가될 수 있다. 메시지 인증 태그의 추가는 일반적으로 명시적인 메시지 인증이라 칭해진다. 이는 인증 태그가 패킷에 부가되어 수신기에 전송되기 때문이다. 수신기는 메시지를 인증하기 위하여 메시지 인증 알고리즘(예를 들어, 반복된 크립토그래픽 해시 함수)과 함께 태그를 사용한다. 후술되는 바와 같이, 데이터 패킷들로의 크립토싱크 및/또는 인증 태그의 추가는 바람직하지 못하게도 대역폭 용량을 감소시키고, 통신 세션에서 필요로 되는 엔드 프로세싱(end processing)의 량을 증가시킨다. 이것은 특히 VoIP(Voice over IP)와 같은 시간에 민감한 애플리케이션들에 대해서 그러하다.
박스(224)로 이동하면, MAC 층은 (네트워크에 의하여) 공중-인터페이스 스케줄링 기능들을 지원한다. 게다가, 다수의 MAC 층 페이로드 크기들이 지원된다. 박스(226)로 도시된 물리 층은 채널 및 에러 코딩 기능들을 제공한다. 상술된 공중-인터페이스 계층화 아키텍처는 다수의 프로토콜들을 지원하며, 세션 및 접속 층들(박스들(212 및 216))을 제외하면, 각각의 층은 전형적으로 공중-인터페이스 층들 을 기능적으로 트래버싱하는 패킷에 헤더를 추가한다.
보안은 모두는 아니지만 대부분의 통신 시스템들에서 전형적으로 중요한 특성이다. 예를 들어, 뱅킹(banking) 상황에서, 금융 업무(financial undertaking)에 종사하는 참가자들은 자신들의 전자 거래들이 어드버서리(adversary)들(즉, 통신들로의 인증되지 않은 액세스를 얻고자 하는 사람들)에 의한 변경 없이, 의도된 바와 같이 완료된다고 기대한다. 어드버서리는 뱅킹 거래들의 값 및/또는 목적지를 변경하도록 시도하여, 거래들이 참가자들에 의해 의도되지 않은 방식으로 프로세싱되도록 한다. 어드버서리들이 통신 공급자 및/또는 통신 참가자들이 모르는 사이에 통신의 정보를 변경하지 못하도록 하기 위하여 무결성 보호 메커니즘들이 사용된다.
무선 통신들은 종래의 지상 기반 시스템(land-based system)에 비하여 새로운 보안 위험도를 도입한다. 무선 환경에서, 어드버서리들은 정보가 종래의 지상 기반 채널들보다 더 용이하게 액세스 가능하다라고 간주되는 무선 링크를 통하여 전송되기 때문에, 더 용이하게 도청할 수 있다. 도2에 도시된 바와 같이, 무선 통신 시스템은 전형적으로 어드버서리들로부터의 공격들에 대해 보호하기 위하여 어떤 형태의 링크 층 보안을 채용한다. 대부분의 무선 네트워크들이 네트워크 층 프로토콜로서 인터넷 프로토콜(IP)을 사용할지라도, 무선 통신 시스템들(예를 들어, 802.11, CDMA, WiMax, UMTS, 등)에는 링크 층 보안에 대한 공통 프레임워크(framework)가 없으므로, 각종 시스템들이 서로 호환 불가능하게 된다. 즉, 각각의 무선 통신 시스템은 전형적으로 자신의 링크 층 보안 표준을 갖는다.
링크 층 보안 메커니즘들의 역할은 종종 IPsec와 같은 네트워크 층 보안 프 로토콜들, 뿐만 아니라, 전송 층 보안 및 보안 소켓 층(TLS/SSL)과 같은 전송 층 프로토콜들에 우호적(complimentary)이다. 전형적으로, 네트워크 및 전송 층 프로토콜들은 도청 및 변경으로부터 사용자 데이터를 보호하기 위하여 "종단간(end-to-end)" 보안을 제공하는 경향이 있다. IPsec와 같은 네트워크 층 보안은 구현하는데 있어서 상대적으로 자원 부담적인 메커니즘(resource taxing mechanism)이다.
링크 층 보안 프로토콜들은 종종 프라이버시를 제공할 뿐만 아니라, 네트워크를 보호하는 것 이외에, 액세스 층에서 네트워크 공급자들 및 사용자들을 사기로부터 보호하도록 설계된다. 예를 들어, 링크 층 암호화 및/또는 패킷 인증이 없을 시에, 종단간 IPsec가 존재할 때에도, 어드버서리는 합법적인 사용자인 체함으로써 서비스를 훔칠 수 있다. 이것은 특히 데이터 네트워크들이 "패킷 교환되고" 많은 사용자들에 의해 공유된다는 사실에 기인한다. 엔티티 인증 및 인가는 합법적인 사용자들에게 입장을 허가하는데 유용하지만, 사기꾼(imposter)이 서비스를 훔치는 것을 방지하지 못하는데, 그 이유는 데이터 트래픽이 연속적으로 서비스되지 않고, 버스트들로 서비스되기 때문이다.
상술된 바와 같이, 링크 층 보안 메커니즘들은 일반적으로 액세스 기술에 특정된다. 예를 들어, 1xEVDO 네트워크들에 대해 사용된 링크 층 보안은 802.11 네트워크들과 호환 불가능하므로, 사용자가 하나의 액세스 기술로부터 또 다른 액세스 기술로 끊김없이 전이되도록 하는 것을 불가능하지 않다면 더 도전하도록 한다. 이 비호환성으로 인해, 공급자들은 소프트웨어, 하드웨어, 및 유지/관리 비용들에서 부가적인 투자들을 행하게 된다.
VoIP 및 비디오와 같은 시간에 민감한 애플리케이션들의 경우에, 보안 및 효율 사이에 균형이 요구된다. 이와 같은 애플리케이션들은 데이터가 적절하게 기능을 하는 미리 결정된 타이밍 가이드라인들 내에서 전달 및 프로세싱되는 것을 필요로 한다. 종래의 보안 메커니즘들은 시간에 민감한 애플리케이션들에 대한 타이밍 지연들에 기여하는 바람직하지 않은 결과를 갖는다. 보안으로 인한 타이밍 지연들은 통상적으로 보안 메커니즘을 구현하는데 필요로 되는 자원들의 소비 및 부가적인 프로세싱의 결과이다. 더구나, 종래의 링크 층 보안 메커니즘들은 전송 전에, 데이터 패킷으로의 크립토싱크의 추가를 수용하기 위하여 패킷 확장을 필요로 한다. 설명된 바와 같이, 크립토싱크는 암호화 및/또는 메시지 인증에 사용될 수 있다.
패킷 확장은 후술되는 바와 같이, 암호화된 링크 층 VoIP 패킷들이 물리적 링크 프레임에 맞지 않을 수 있기 때문에 특히 풀-레이트 음성 패킷(full rate voice packet)들에 대해 문제가 된다. 도3은 1xEVDO 네트워크에서 종래의 링크 층 보안 메커니즘을 사용함으로써 겪게 될 수 있는 상술된 패킷 확장 문제를 도시한다. 이 예에서, VoIP 패킷은 도2에 도시된 1xEVDO 보안 층을 포함하는 각종 공중-인터페이스 층들을 트래버싱하는 것으로 도시되어 있다. 설명의 용이성을 위하여, 참조 번호들(1 내지 5)이 어떤 단계들을 용이하게 식별하기 위하여 도면에 추가되었다. 그러나, 도3이 단지 패킷 확장의 문제를 설명하기 위한 간소화된 표현이라는 것이 인식되어야 한다. 마찬가지로, 도3은 패킷이 무선 링크를 통한 전송에 대비하여 취할 수 있는 모든 단계들을 철저하게 표현하지는 않는다.
단계 1에서, VoIP 패킷이 공중 인터페이스 애플리케이션 층에 의해 수신된다. 로버스트 헤더 압축(RoHC)이 적용되고, 단계 2에서, 패킷은 208 비트로 감소된 것으로 도시되어 있다. 단계 3에서, 1xEVDO 표준이 RLP에 대해 14-비트 헤더의 사용을 제안하는 것으로 도시되어 있다. 일 실시예에서, RLP 헤더는 링크흐름ID(LinkflowID)에 대해 5 비트, 방향에 대해 1 비트, 최종 및 최초 프레임들을 나타내는 2비트, 및 패킷의 시퀀스 번호를 나타내는 6비트로 이루어진다.
상술된 바와 같이, 단계 4에서, 1xEVDO 내의 링크 층 보안은 오버헤드로서 명시적인 2-바이트 크립토싱크(300)를 수용하기 위하여 패킷 확장을 필요로 한다. 크립토싱크는 데이터 패킷에 부가되며, 데이터 패킷과 함께 수신기(예를 들어, 무선 장치)에 전송된다. 수신기는 데이터 패킷을 해독하기 위하여 크립토싱크 및 아마도 비밀 키를 사용한다.
단계 5에서, 일단 순환 리던던시 코드(CRC) 및 2-비트 MAC 헤더가 패킷에 추가되면, 패킷은 272 비트의 길이를 갖는다. 이와 같이, 풀 레이트 음성 프레임들은 256-비트 물리 층 프레임에 맞지 않지만, 동일한 패킷이 암호화되지 않은 채로(즉, 2-바이트 크립토싱크 없이) 전송되는 경우, 256-비트 프레임에 정확하게 맞을 것이다. 1xEVDO 시스템들의 경우에, 패킷 확장은 하나의 애플리케이션에서 512 바이트인 다음의 상위 물리 층 패킷 크기의 사용을 강요하므로, 이 도시된 예에서 물리 층 패킷 크기를 두 배로 한다.
시간에 민감한 애플리케이션들에 대한 지연 요건들을 충족시키기 위해, 링크 층 보안 메커니즘들은 전형적으로 물리 층에 가깝게 구현된다. 이것은 예를 들어, 도2의 1xEVDO 공중 인터페이스 계층화 아키텍처에서 도시되어 있다. 불행히도, 이 방식으로 구현되는 링크 층 보안 메커니즘들은 통상적으로 다른 사용자 데이터 애플리케이션들로부터 시그널링 애플리케이션을 효율적으로 분리할 수 없다. 결과적으로, 공급자들은 상이한 데이터 스트림들에 대하여 암호화 및 인증을 커스터마이징(customizing)하는데 있어서 제한된 능력을 갖는다. 예를 들어, 무선 액세스 제공자들은 모든 시그널링 메시지를 인증하도록 선택하지만, 사용자 데이터 패킷들에 대해 명시적인 인증을 갖지 않는 암호화를 제공할 수 있다. 더구나, 사용자는 최선형 패킷(best effort packet)들이 무선 링크를 통해 암호화 및 인증되는 것을 주장할 수 있지만, 모든 VoIP 패킷을 인증하지는 않도록 선택할 수 있다. 물리 층에 가깝게 적용된 현재의 링크 층 보안 메커니즘들의 경우에, 이와 같은 분리는 층 위반(layer violation)을 초래함이 없이는 불가능하지는 않지만, 어렵다.
따라서, 종래의 보안 메커니즘들에 비하여, 기본적인 액세스 기술(underlying access technology)에 비교적 무관하게 동작하는 보안 메커니즘이 요구된다. 보안 메커니즘은 모두는 아니지만 대부분의 무선 액세스 기술들에 적용 가능해야 한다. 더구나, 보안 메커니즘은 종래의 보안 및/또는 인증 메커니즘들에 의해 요구되는 오버헤드를 감소시키면서, 어느 정도의 유연성을 제공해야 한다.
다음은 본 발명의 일부 양상들의 기본적인 이해를 제공하기 위하여 본 발명의 간소화된 요약을 제공한다. 이 요약은 본 발명의 전반적인 개요가 아니다. 이 요약은 본 발명의 핵심 또는 중요 요소들을 식별하거나 본 발명의 범위를 서술하고자 하는 것이 아니다. 이 요약의 유일한 목적은 후술되는 더 상세한 설명에 대한 서문으로서 일부 개념들을 간소화된 형태로 제공하는 것이다.
본 발명의 일 실시예에서, 무선 링크를 통한 전송을 위해 데이터를 암호화하는 방법이 제공된다. 상기 방법은 입력으로서 크립토싱크를 수신하는 암호화 알고리즘을 사용하여 공중-인터페이스 애플리케이션 층에서 적어도 하나의 데이터 블록을 암호화하는 단계를 포함한다. 크립토싱크의 값은 다른 데이터 블록들에 대한 적어도 하나의 데이터 블록의 순서에 기초한다. 크립토싱크의 값은 적어도 하나의 데이터 블록의 순서에 기초하여 수신기에 의해 복구 가능하다. 적어도 하나의 암호화된 데이터 블록은 다른 데이터 블록들에 대해 적어도 하나의 데이터 블록의 순서를 유지하도록 동작 가능한 수신기로 전송된다.
본 발명의 또 다른 실시예에서, 무선 링크를 통하여 수신된 데이터를 해독하는 방법이 제공된다. 상기 방법은 무선 링크를 통하여 적어도 하나의 암호화된 데이터 블록을 전송하는데 사용된 적어도 하나의 패킷을 수신하는 단계를 포함한다. 데이터 블록들은 입력으로서 크립토싱크를 수신하는 암호화 알고리즘을 사용하여 암호화된다. 크립토싱크의 값은 다른 데이터 블록들에 대한 적어도 하나의 데이터 블록의 순서에 기초한다. 공중-인터페이스 애플리케이션 층에서, 적어도 하나의 암호화된 데이터 블록에 대한 크립토싱크는 다른 데이터 블록들에 대한 적어도 하나의 데이터 블록의 순서로부터 복구된다.
본 발명은 동일한 요소들에는 동일한 참조 번호들이 병기되어 있는 첨부 도면들과 함께 다음의 설명을 참조함으로써 이해된다.
도1은 예시적인 무선 통신 시스템의 간소화된 박스도.
도2는 1xEVDO 네트워크에 적용 가능한 예시적인 공중-인터페이스 계층화 아키텍처를 개념적으로 도시한 도면.
도3은 패킷 확장의 간소화된 표현.
도4는 본 발명의 일 실시예에 따른, 무선 링크를 통한 전송을 위해 데이터를 암호화하는 방법의 하나의 예시적인 실시예를 개념적으로 도시한 도면.
도5는 본 발명의 일 실시예에 따른 1xEVDO 보안 층을 트래버싱하는 비디오 패킷의 간소화된 표현.
본 발명이 각종 변경들 및 대안적인 형태들을 허용하지만, 본 발명의 특정 실시예들은 도면들에서 예로서 제시되었고, 본원에 상세히 설명된다. 그러나, 특정 실시예들에 대한 본원의 설명이 본 발명을 개시된 특정 형태들로 국한하고자 하는 것이 아니라, 그 반대로, 첨부된 청구항들에 의해 규정된 바와 같은 본 발명의 정신 및 범위 내에 존재하는 모든 변형들, 등가물들, 및 대안들을 커버하도록 의도된다는 것이 이해되어야 한다.
본 발명의 설명적인 실시예들이 이하에 설명된다. 명확화의 관점에서, 실제 구현예의 모든 특성들이 본 명세서에 기술되는 것은 아니다. 임의의 이와 같은 실제 실시예의 개발에서, 실시예들마다 변동되는 시스템-관련 및 비즈니스-관련 제약들에 따라 개발자의 특정 목적들을 성취하기 위하여 다수의 구현-특정된 판정들이 행해져야 한다는 것이 물론 인식될 것이다. 더구나, 이와 같은 개발 노력이 복잡하고 시간을 소비할 수 있지만, 그럼에도 불구하고, 본 명세서의 이점을 갖는 당업자들에게는 일상적인 업무라는 것이 인식될 것이다.
본 발명 및 대응하는 상세한 설명의 부분들은 컴퓨터 메모리 내에서의 데이터 비트들 상에서 소프트웨어, 알고리즘들 및 동작들의 기호 표현들로 제공된다. 이러한 설명들 및 표현들은 당업자들이 자신들의 작업의 내용을 다른 당업자들에게 효율적으로 전달하는 것들이다. 본원에 사용되며 일반적으로 사용되는 바와 같은 용어인 알고리즘은 희망하는 결과를 발생시키는 단계들의 일관된 시퀀스라고 여겨진다. 단계들은 물리적 량들의 물리적 조종들을 필요로 하는 것들이다. 통상적으로, 필수적이지는 않을지라도, 이러한 량들은 저장되고, 전달되고, 결합되고, 비교되거나, 조종될 수 있는 광, 전기, 또는 자기 신호들의 형태를 취한다. 이러한 신호들을 비트들, 값들, 요소들, 심벌들, 문자들, 용어들, 숫자들, 등이라 칭하는 것이 원칙적으로 통상적인 관례상 종종 편리하다는 것이 입증되었다.
그러나, 이러한 용어들 및 유사한 용어들 모두가 적절한 물리적 량들과 관련되어야 하고 이러한 량들에 적용되는 단지 편리한 라벨들이라는 것을 기억해야 한다. 특별히 달리 언급되지 않는다면, 또는 논의로부터 명백할 때, "프로세싱" 또는 "계산" 또는 "결정" 또는 "디스플레잉" 등과 같은 용어들은 컴퓨터 시스템의 레지스터들 및 메모리들 내에서 물리적 전자 량들로서 표현되는 데이터를 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 이와 같은 정보 저장, 전송 또는 디스플레이 장치들 내에서 물리적 량들로서 유사하게 표현되는 다른 데이터로 조종 및 변환 하는 컴퓨터 시스템, 또는 유사한 전자 계산 장치의 동작 및 프로세스들을 칭한다.
본 발명의 소프트웨어 구현된 양상들이 전형적으로 어떤 형태의 프로그램 저장 매체 상에서 인코딩되거나 어떤 유형의 전송 매체를 통하여 구현된다는 것을 또한 주의한다. 프로그램 저장 매체는 자기(예를 들어, 플로피 디스크 또는 하드 드라이브) 또는 광(예를 들어, 콤팩트 디스크 판독 전용 메모리, 즉, "CD ROM") 매체일 수 있고, 판독 전용 또는 랜덤 액세스 매체일 수 있다. 유사하게, 전송 매체는 트위스티드 배선 쌍들, 동축 케이블, 광 섬유, 또는 당업계에 공지되어 있는 어떤 다른 적절한 전송 매체일 수 있다. 본 발명은 임의의 소정 구현예의 이러한 양상들에 의해 국한되지 않는다.
본 발명은 이제 첨부 도면들을 참조하여 설명될 것이다. 각종 구조들, 시스템들 및 장치들은 단지 설명을 위하여, 그리고 당업자들에게 널리 공지되어 있는 세부사항들로 본 발명을 모호하지 않게 하기 위하여 도면들에서 개략적으로 도시되어 있다. 그럼에도 불구하고, 첨부 도면들은 본 발명의 설명적인 예들을 기술 및 설명하기 위하여 포함된다. 본원에 사용된 단어들 및 구들은 당업자들이 이러한 단어들 및 구들을 이해하는 것과 일관된 의미를 가지도록 이해 및 해석되어야 한다. 용어 또는 구의 특별한 정의, 즉, 당업자들이 이해하는 바와 같은 통상적이고 통례적인 의미와 상이한 정의는 본원의 용어 또는 구의 일관된 사용에서 수반되지 않게 된다. 용어 또는 구가 특별한 의미, 즉, 당업자들이 이해하는 것 이외의 의미를 갖게 되는 한에는, 이와 같은 특별한 정의는 상기 용어 또는 구에 대한 특별한 정의를 직접적으로, 그리고 명확하게 제공하는 정의 방식으로 명세서에서 명확히 설명 될 것이다.
공중-인터페이스 애플리케이션 층 보안(A2LS)은 시그널링을 포함하는, 모두는 아니지만, 대부분의 공중-인터페이스 애플리케이션들에 대해 암호화 및 명시적인 메시지 인증을 지원한다. 더구나, 상기 층은 또한 이하에 더 충분히 설명되는 바와 같이, 특별한 암호화 모드로서 간주될 수 있는 암시적인 메시지 인증을 지원한다. 명칭이 나타내는 바와 같이, A2LS는 종래의 링크 층 보안 메커니즘들에 비하여, 물리 층으로부터 부가적으로 제거되는 기능 층에서 동작한다. 이와 같이, A2LS는 비교적 더 유연하고, 모두는 아니지만 대부분의 무선 액세스 기술들에 걸쳐 적용될 수 있다.
일반적으로, 명시적인 메시지 인증 메커니즘들은 메시지의 크립토그래픽 해시를 계산하고 이를 패킷의 종단에 태그로서 부착하는 것을 포함한다. 전형적으로, 태그들은 메시지의 무결성(integrity)을 보장하기 위하여 패킷들에 부착된다. VoIP와 같은 시간에 민감한 애플리케이션들에 대해 설명된 바와 같이, 태그들의 추가는 양호하지 않은 지연 증가들을 초래하고, 네트워크의 전체 용량을 감소시킬 수 있다. 암시적인 메시지 인증은 여분의 태그를 추가하지 않음으로써 이 문제를 피한다. 더구나, 암시적인 메시지 인증은 A2LS의 상황에서, 패킷에 크립토싱크를 부가하는 것을 필요로 하지 않아서, 메시지는 수신기에 의해 해독될 수 있다. 그러나, 크립토싱크가 패킷에 부가되어 수신기에 전송될 때에도, 암시적인 메시지 인증은 명 시적인 메시지 인증 태그의 전송을 제거하는 장점을 제공한다.
후술되는 바와 같이, 크립토싱크는 다른 데이터 블록들에 대한 데이터 블록의 순서에 기초하여 소정 데이터 블록에 대해 수신기에서 도출될 수 있다. 예를 들어, 1xEVDO 네트워크의 프로토콜은 수신기에서 데이터의 순서가 자신이 전송된 순서와 동기되는 것을 보장하기 위하여 링크 층 시퀀스 번호에 의존한다. 이 설명적인 예에서, 링크 층 시퀀스 번호는 보안 및/또는 인증 고려사항들로 인한 부가적인 오버헤드를 추가하지 않는다. 다른 무선 프로토콜들은 수신기에서의 데이터의 순서가 자신이 전송된 순서와 동기되는 것을 보장하기 위하여 제어 채널들, 헤더 정보, 또는 다른 순서 파라미터들과 같은 유사한 메커니즘을 사용할 수 있다. A2LS는 수신기에서 적용 가능한 크립토싱크를 도출하여 이것이 명시적으로 전송될 필요가 없도록 모두는 아니지만 대부분의 무선 프로토콜들에 존재하는 이 순서 특성의 장점을 이용한다.
도4는 A2LS의 하나의 예시적인 실시예를 개념적으로 도시한다. 도시된 실시예에서, 전송기(400) 및 수신기(404)는 무선 통신 시스템에서 데이터 통신하고 있다. 상술된 바와 같이, 무선 통신 시스템은 CDMA, IEEE-802.11, IEEE-802.16, 1xEVDO, 등과 같은 임의의 수의 상이한 무선 기술들을 사용하여 구현될 수 있다. 마찬가지로, 수신기는 셀룰러 전화, PDA, 문자 메시지 장치, 랩톱, 등과 같은 임의의 수의 무선 장치들로 이루어질 수 있다. 설명의 용이성을 위하여, 본 명세서 전체에 걸쳐 1xEVDO 네트워크의 어떤 컴포넌트들에 대한 특정한 참조들이 행해질 수 있다. 이와 같은 참조들은 다음 예들에 용이성을 제공하기 위한 것이며, 본 발명을 국한하고자 하는 것이 아니다.
순방향 링크에서, 전송기(400)는 무선 네트워크일 수 있고, 수신기(404)는 무선 장치일 수 있다. 역방향 링크에서, 전송기(400)는 무선 장치일 수 있고, 수신기(404)는 무선 네트워크일 수 있다. 요약하면, "수신기" 및/또는 "전송기"의 지정은 무선 통신 시스템의 데이터 통신 방향에 따라서 변동될 수 있는 편리한 것이다.
모두는 아니지만 대부분의 무선 통신 시스템들에서, 전송기(400) 및 수신기(404)는 통상적으로 대역외(out of band)로 동의되는 패스워드를 공유한다. 예를 들어, 무선 사용자는 무선 반송파와 가입 계약을 맺을 수 있고, 새로운 활동 시에, 패스워드가 사용자의 무선 장치에 저장될 수 있다. 통상적으로, 각각의 통신 세션에 대하여, 전송기(400) 및 수신기(404)는 키를 생성한다. 일반적으로, 포함된 네트워크 요소들 및 정확한 메시지 포맷들과 함께, 키 교환용 파라미터는 설계 선택에 관한 문제로서 변동될 수 있다.
도4에서, 키 동의는 블록(408)에 도시되어 있다. 키 동의(408) 이후에, 키는 예를 들어, 무선 장치를 무선 네트워크에 인증하기 위하여 사용될 수 있다. 하나의 설명적인 실시예에서, 전송기(400) 및 수신기(404)는 패스워드 인증 키(PAK) 버전 교환을 실행한다. PAK는 디피-헬만 키 교환(Diffie-Hellman key exchange)에 기초한 패스워드 인증 키 동의 프로토콜(password authenticated key agreement protocol)이다. 바람직한 경우, PAK는 기존 인가 메커니즘들과 관련될 수 있다.
키 동의(408) 이후에, 전송기(400) 및 수신기(404)는 블록(412)으로 나타낸 바와 같이, 보안 및/또는 인증과 관련된 다수의 초기화 파라미터들을 협상한다. 초기화 파라미터들은 예를 들어, 보안 레벨들, 보안 알고리즘들, 가상 카운터들의 값 들, 및 임의의 다른 파라미터들을 포함할 수 있다. 보안 레벨들의 경우에, 협상은 어떤 레벨들이 어떤 데이터 스트림들에 적용되어야 하는지에 관한 결정을 포함할 수 있다. 설명된 바와 같이, A2LS는 공중-인터페이스 애플리케이션들을 분리하고 이들을 상이하게 보안화(securing)하는 유연성을 제공한다. 하나의 설명적인 실시예에서, 보안의 레벨들은 널(null)(암호화 및 메시지 인증이 없음), 간단한 암호화(메시지 인증이 없는 암호화), 암시적인 메시지 인증(인증 태그가 없고 명시적인 암호화 헤더를 갖거나 갖지 않는 암호화 및 인증), 및 암호화 및 인증(간단한 암호화 및 명시적인 메시지 인증)을 포함할 수 있다.
어떤 초기화 파라미터들은 디폴트 값(default value)들로 세팅되어, 성공적인 협상(412) 없이도, 전송기(400) 및 수신기(404)는 디폴트 값들을 사용하여 통신할 수 있다. 하나의 설명적인 실시예에서, 음성, 비디오, 및 다른 시간에 민감한 멀티미디어 서비스들은 암시적인 메시지 인증을 사용하도록 세팅될 수 있다. 이하에 더 충분히 설명되는 바와 같이, 암시적인 메시지 인증은 데이터 패킷과 함께 전송된 명시적인 크립토싱크 및/또는 인증 태그를 필요로 하지 않으므로, 네트워크 용량을 증가시키며 전송기(400) 및 수신기(404)에 의한 프로세싱 부담(processing burden)을 감소시킨다. 이 동일한 예에서, 모든 다른 유형의 데이터 서비스들은 암호화 및 명시적인 인증을 사용하도록 세팅될 수 있다.
암호화 알고리즘들이 또한 어떤 디폴트 값으로 세팅될 수 있다. 임의의 암호화 알고리즘이 사용될 수 있을지라도, 하나의 설명적인 실시예에서, 개선된 암호화 표준(AES; Advanced Encryption Standard) 및 보안 해시 알고리즘(SHA-1; Secure Hash Algorithm)이 암호화 및 인증을 각각 지원하기 위하여 디폴트 값들로서 세팅될 수 있다. 후술되는 바와 같이, 가상 카운터들이 크립토싱크의 변동부를 도출하는데 사용될 수 있다. 디폴트 세팅으로서, 가상 카운터들은 각각의 통신 세션의 시작에서 제로로 세팅될 수 있다.
전송기(400)에서, 데이터 스트림이 수신기(404)로의 전송을 위해 수신된다. 통상적으로, 데이터 스트림은 시그널링 및 베어러 데이터 애플리케이션들로부터의 패킷들(예를 들어, IP, PPP, 등)로 구성된다. 1xEVDO 네트워크의 상황에서, 데이터 스트림은 도2에 도시된 공중-인터페이스 애플리케이션 층(204)에 의해 수신되는 VoIP 데이터 스트림일 수 있다. 편의상, 데이터 스트림은 자신이 아직 암호화 및/또는 인증 알고리즘에 의해 프로세싱되지 않은 상부 층으로부터 수신된 데이터를 포함한다는 것을 나타내기 위하여 평문 스트림(plaintext stream)이라 칭해질 수 있다.
블록(416)에서, 수신기(404)로의 전송을 위한 데이터 스트림을 준비하기 위하여 암호화 알고리즘 및/또는 인증 알고리즘에 의해 사용될 수 있는 크립토싱크가 계산된다. 크립토싱크를 계산하기 위하여 임의의 수의 알고리즘들이 사용될 수 있고, 비트 길이, 랜덤성(randomness), 등과 같은 크립토싱크의 특정 특성들이 설계 선택에 관한 문제로서 변동될 수 있다는 것이 인식되어야 한다. 하나의 설명적인 실시예에서, 크립토싱크는 수신기(404)로 전송될 각각의 데이터 스트림에 대해 계산된다.
특정 포맷이 요구되지는 않을지라도, 크립토싱크는 고정 성분 및 변동 성분을 사용하여 계산될 수 있다. 변동 성분을 사용하면, 크립토싱크에 랜덤성 팩터가 도입될 수 있고, 이는 어드버서리가 모방하는 것을 더 어렵게 하며, 또한 전송된 데이터가 딕셔너리 공격들(dictionary attacks)에 덜 민감하도록 한다. 크립토싱크의 고정 및 변동 성분들을 구성하는 특정 데이터는 설계 선택에 관한 문제로서 변동될 수 있다. 그러나, 후술되는 바와 같이, 크립토싱크는 통상적으로 무선 링크를 통해 전송된 데이터 패킷들에 수반되는 제어 정보와 미리 결정된 관계를 갖도록 도출될 수 있다. 예를 들어, 크립토싱크는 CDMA, 1xEVDO, 등과 같은 무선 표준에 따른 패킷에 수반되는 패킷 헤더 정보와 같은 제어 파라미터들과 미리 결정된 관계를 가지도록 도출될 수 있다. 그렇게 함으로써, 크립토싱크는 수신기(404)에 의해 복구되고, 수신기에 명시적으로 전송될 필요 없이 해독 및/또는 인증에 사용될 수 있다.
크립토싱크의 고정 성분은 특정 무선 표준에 따른 패킷에 수반되는 제어 정보로부터 추론될 수 있다. 하나의 설명적인 실시예에서, 크립토싱크의 고정된 성분은 애플리케이션 스트림 식별자이며, 소정 데이터 스트림에 대해 고정된다. 애플리케이션 스트림 식별자는 임의의 수의 비트로 이루어질 수 있다. 그러나, 1xEVDO 네트워크에서, 애플리케이션 스트림 식별자는 길이가 7 비트인 RLP 흐름 식별자일 수 있다. 제 8 비트가 방향 비트로서 고정 성분에 추가될 수 있다. 방향 비트는 전송이 순방향 링크(또한 다운링크로서 공지됨)인지 또는 역방향 링크(또한 업링크로서 공지됨)인지를 나타내는데 사용될 수 있다. 하나의 설명적인 예에서, 0은 순방향 링크로 사용되며, 1은 역방향 링크로 사용된다. 통상적으로, 크립토싱크의 고정 성 분은 8의 어떤 배수인 비트 길이를 포함할 것이다.
크립토싱크의 변동 성분은 수신된 데이터 스트림으로부터의 미리 결정된 비트 블록이 수신된 이후에 블록 수를 증분시키도록 구성되는 가상 카운터로부터 도출될 수 있다. 예를 들어, 1xEVDO 네트워크에서, 공중-인터페이스 애플리케이션 층은 일정 순서로 데이터를 수신하며, 데이터가 수신기(404)로의 전송을 위해 링크 층으로 전달되기 전에 암호화 및 인증에 대해 통상적으로 동일한 순서가 유지된다. 따라서, 데이터 스트림은 미리 결정된 비트 길이의 "블록들"("b")로 분해될 수 있다. 일례에서, 가상 카운터는 b 비트당 1씩 증분된다.
블록들의 비트 길이(즉, 변동 b의 값)는 임의의 값을 할당받을 수 있고, 설계 선택에 관한 문제로서 변동될 수 있다. 일 실시예에서, b에 대한 디폴트 선택은 예시적인 디폴트 암호화 알고리즘 AES의 블록 길이와 일치하는 128이다. 이 경우에, 가상 카운터는 데이터 스트림에서의 128 비트의 각 블록에 대해 증분될 수 있다. 바이트 경계들로 동작하는 것이 효율적이기 때문에, b에 대한 디폴트 최소 크기는 8 비트로 규정될 수 있다.
크립토싱크의 변동 성분은 임의의 비트 길이로 세팅될 수 있다. 그러나, 변동 성분의 비트 길이가 가상 카운터가 소정 데이터 스트림에 대해 얼마나 자주 재활용되는지에 영향을 준다는 것이 인식되어야 한다. 예를 들어, 하나의 설명적인 실시예에서, 변동 성분은 7 바이트의 비트 길이로 세팅될 수 있다. 따라서, 256 비트 블록들이 수신된 후에, 임의의 소정 데이터 스트림에 대하여, 가상 카운터가 재활용될 것이다. 7 바이트보다 큰 가상 카운터가 필요한 경우, 이것은 예를 들어, 블록(412)에서 협상되거나, 디폴트 값으로서 사전-지정될 수 있다. 이와 같이, 크립토싱크에 대한 64 비트(고정 성분에 대한 8비트 및 변동 성분에 대한 56 비트)는 본 발명과 함께 사용될 수 있는 단지 하나의 예시적인 실시예이라는 것이 인식되어야 한다.
가상 카운터를 사용하면, 데이터 스트림 내의 각 바이트는 블록 내의 바이트 수 및 블록 수를 사용하여 식별될 수 있다. b(블록 비트 길이)가 128 비트와 동일한 상기 예를 계속 사용하면, 소정 데이터 스트림의 바이트(173)는 제로로부터 카운팅할 때, 데이터 스트림의 바이트(173)가 블록(10)의 바이트(12)이라는 것을 지정이 나타내는 10.12로서 식별될 수 있다. 마찬가지로, 데이터 스트림의 바이트(174)는 블록(10)의 바이트(13)이며, 이런 식으로 진행된다.
b가 128 비트로 설정되는 경우, 결과적인 블록은 16 바이트(즉, 바이트 0-15)로 이루어진다는 것이 인식되어야 한다. 이 경우를 상기의 1xEVDO 예에 적용하면, 소정 데이터 스트림의 바이트들(173, 174, 175, 및 176)은 10과 동일한 블록 수와, RLP 흐름 식별자, 방향 비트로부터 도출된 크립토싱크 값을 사용하여 암호화될 수 있다. 마찬가지로, 바이트들(177 내지 192)은 11과 동일한 블록 수와, RLP 흐름 식별자, 방향 비트로부터 도출된 크립토싱크 값을 사용하여 암호화될 수 있다.
수신기의 링크 층에 전달된 데이터는 자신이 무선 링크를 통하여 전송되었던 것과 동일한 순서로 전달된다고 보장되지 않는다. 상기 문제는 전형적으로 무선 프 로토콜에서의 순서화 메커니즘을 통하여 무선 표준들에서 해결된다. 예를 들어, 1xEVDO 네트워크에서, 데이터는 링크 층 패킷들과 관련된 명시적인 시퀀스 번호를 사용하여 순서화된다. 1xEVDO 예를 계속 사용하면, RLP 패킷은 시퀀스 번호로서 RLP 스트림의 바이트 번호를 포함한다. 예를 들어, 시퀀스 번호(173)를 갖는 RLP 패킷이 수신되는 경우, 수신기(404)는 상술된 예시적인 협정에 따라 입중계 데이터 스트림의 제1 바이트를 10.12로서 식별할 것이다. 즉, 무선 표준에 따른 패킷과 이미 관련된 시퀀스 번호를 사용하여, 수신기는 자신의 블록 카운트를 전송기에 동기시키고 입중계 데이터 블록들에 대한 크립토싱크를 복구할 수 있다. 블록(412)에 도시된 바와 같이, 카운터의 초기 값들, (변수 b로서 위에서 지정된) 블록들의 비트 길이, 및 임의의 다른 보안 파라미터가 협상되거나, 이전에 동의된 디폴트 값으로 세팅될 수 있다.
수신기(404)에서, 링크 층 프로토콜들은 데이터가 자신이 전송되었던 것과 동일한 순서로 배열된다(즉, 수신기(404)가 전송기(400)와 동기된다)는 것을 보장하기 위하여 시퀀스 번호를 사용한다. 그 후, 시퀀스 번호는 해독을 위한 가상 카운터 값을 도출하기 위하여 1xEVDO 네트워크에서의 공중-인터페이스 애플리케이션 층과 같은 공중-인터페이스 프로토콜에서의 상위 층에 의해 사용될 수 있다. 다시, 데이터가 자신이 전송된 것과 실질적으로 동일한 순서로 수신기(404)에서 배열되기 때문에, 수신기(404) 및 전송기(400)는 동기되며, 수신기(404)에 의해 복구된 가상 카운터 값들은 전송기(400)에서 블록들을 암호화하는데 사용되는 것과 동일한 값들일 것이다. 상기의 1xEVDO 예에서, 바이트들(173-176)(카운트 값 10) 및 바이트들(177-192)(카운트 값 11)에 대해 블록 카운트를 복구하는 설명이 제공되었다. 따라서, AES가 암호화 알고리즘으로서 사용되는 경우, 바이트들(173-176)은 10과 같은 블록 수와, RLP 흐름 식별자, 방향 비트로부터 도출된 크립토싱크 값을 사용하여 출력된 AES 카운터의 12번째 내지 15번째 바이트들을 사용하여 해독될 수 있다. 마찬가지로, 바이트들(177 및 192)은 11과 같은 블록 수와, RLP 흐름 식별자, 방향 비트로부터 도출된 크립토싱크 값을 사용하여 출력된 AES 카운터의 0번째 내지 15번째 바이트들을 사용하여 해독될 수 있다.
도4를 다시 참조하면, 블록(420)에서, 계산된 크립토싱크는 자신이 무선 링크를 통하여 전송되기 전에 데이터 스트림을 암호화하는데 사용될 수 있다. 임의의 동의된 암호화 알고리즘이 평문 스트림을 암호화하는데 사용될 수 있다. 후술되는 바와 같이, 메시지 인증이 명시적이지 않을지라도, 암호화 및 메시지 인증 둘 모두를 성취하는 암시적인 메시지 인증 알고리즘이 사용될 수 있다. 그러나, 다수의 다른 암호화 알고리즘들이 또한 채용될 수 있다.
하나의 설명적인 실시예에서, AES와 같은 암호화 알고리즘은 입력으로서 도출된 크립토싱크를 사용하여 비트들의 의사랜덤 스트림을 발생시킨다. 암호화 알고리즘은 또한 키 동의(408) 동안 전송기(400) 및 수신기(404)에 의해 선택되는 키와 같은 임의의 수의 부가적인 파라미터들을 입력들로서 사용할 수 있다. 일례에서, 키는 전송기(400) 및 수신기(404)에 의해서만 인식되는 128 비트의 의사랜덤 시퀀스일 수 있다.
암호문 스트림(즉, 암호화된 데이터 스트림)은 평문 스트림 및 의사랜덤 스 트림의 대응하는 바이트들의 논리적 XOR을 수행함으로써 획득될 수 있다. 그 후, 암호문 스트림은 수신기(404)로의 전송을 위해 링크 층 상으로 통과될 수 있다. 수신기로의 전송은 도4에서 화살표(424)로 표시되어 있다.
상술된 바와 같이, 수신기(404)는 순서를 벗어난 바이트들을 수신할 수 있지만, 수신된 데이터를 상위 층들에 전송하기 전에 순서화하는 것이 링크 층 프로토콜의 역할이다. 더구나, 1xEVDO에서의 RLP와 같은 무선 링크 층 프로토콜들은 패킷들의 전달을 보장하지 않고, 이러한 프로토콜들은 전형적으로 에러들로부터 복구하기 위하여 이를 TCP와 같은 전송 층 프로토콜들에 남겨 둔다. 예를 들어, 링크 층 패킷이 손실되는 경우, 링크 층은 그 길이가 손실된 패킷과 동일한 비트들의 시퀀스를 전달한다고 기대된다. 예를 들어, 상기 프로토콜은 손실된 패킷의 길이와 동일한 비트 길이를 갖는 제로 비트들의 시퀀스를 전달하도록 구성될 수 있다. 이러한 절차는 공중-인터페이스 애플리케이션 층과 같은 상위 층들이 전송기(400) 및 수신기(404) 사이에서 동기를 유지한다는 것을 보장한다. 1xEVDO 네트워크들에 대해 상기 예에서 설명된 바와 같이, 수신기는 수신된 패킷들의 시퀀스 번호들을 사용하여 크립토싱크를 복구할 수 있다. 수신기(404) 및 전송기(400)가 동기되기 때문에, 수신기는 동일한 크립토싱크 값들, 키, 및/또는 임의의 다른 암호화 파라미터를 사용하여 의사랜덤 스트림을 발생시킬 수 있다. 이 암호화 예에서, 의사랜덤 스트림은 암호문 스트림과 XOR-연산되어 평문 스트림을 획득한다.
카운터 모드 암호화의 선택이 많은 가능성들 중 단지 하나이며, 선택된 암호화 알고리즘이 설계 선택에 관한 문제로서 변동될 수 있다는 것이 인식되어야 한다. 예를 들어, 출력 피드백모드와 같은 다른 암호화 모드들이 동등하게 적용 가능하다. 더구나, 어떤 암호화 알고리즘들은 입력들이 일정 비트 길이인 것을 필요로 한다. 예를 들어, AES는 자신의 입력들이 길이가 128 비트인 것을 필요로 한다. 상술된 예에서, 64-비트 크립토싱크가 설명되었다. 이 경우, 크립토싱크에는 128-비트 입력 값을 생성하기 위하여 64 비트의 트레일링 또는 리딩 세트(trailing or leading set)가 패딩(padding)될 수 있다. 패딩은 트레일링 제로 비트들 또는 임의의 다른 값과 같은 임의의 공지된 량일 수 있다.
상술된 바와 같이, 명시적인 메시지 인증 메커니즘들은 전형적으로 패킷의 종점에 계산된 인증 태그를 부착하는 것을 포함한다. 통상적으로, 태그들은 메시지의 무결성을 보장하기 위하여 모든 패킷에 부착된다. 명시적인 메시지 인증은 데이터의 순서로부터 수신기에서 크립토싱크를 복구하는 상술된 방법과 함께 사용될 수 있다. 이 설명적인 예에서, 명시적인 인증 태그가 계산되어 수신기에 전송된 데이터에 부가된다. 수신기는 수신된 데이터 블록들의 순서로부터 크립토싱크를 복구하고, 명시적인 메시지 인증 태그를 사용하여 데이터를 인증한다.
암시적인 메시지 인증은 A2LS의 상황에서, 패킷에 태그가 부가되는 것을 필요로 하지 않는 암시적인 인증 컴포넌트를 또한 포함하는 암호화 모드이다. 암시적인 메시지 인증의 경우에, 평문 스트림이 수신기로의 전송을 위해 수신된다. 제1 의사랜덤 스트림 및 제2 의사랜덤 스트림을 발생시키기 위하여 암호화 알고리즘이 사용된다. 참조의 용이성을 위하여, 제1 의사랜덤 스트림은 변수 'A'를 사용하여 참조되는 반면, 제2 의사랜덤 스트림은 변수 'B'를 사용하여 참조될 수 있다.
제1 및 제2 의사랜덤 스트림들을 발생시키기 위하여, 크립토싱크는 공지되거나 수신기(404)에 의해 결정될 수 있는 변경 파라미터에 의해 변경될 수 있다. 예를 들어, 변경 파라미터는 블록(412)에서 협상되거나, 디폴트 값들로 세팅될 수 있다. 하나의 설명적인 실시예에서, 크립토싱크는 상술된 방법으로 도출되며, 제1 및 제2 의사랜덤 스트림들을 발생시키기 위하여, 크립토싱크는 0 또는 1보다 각각 선행할 수 있다. 즉, 변경 파라미터는 0(제1 의사랜덤 스트림) 또는 1(제2 의사랜덤 스트림)로 세팅될 수 있는 하나의 비트 값이다.
상술된 바와 같이, 크립토싱크는 평문 스트림으로부터 미리 결정된 비트 블록이 수신된 후에 블록 수를 증분시키도록 구성되는 가상 카운터로부터 도출될 수 있다. 이 경우에, 암호문 스트림(즉, 암호화된 데이터 스트림)은 변수 'X'를 사용하여 참조될 수 있는 평문의 블록을 취하고, 연산 Y = AX + B를 수행함으로써 생성되며, 여기서 상기 연산은 순서 pn의 유한 필드(즉, 갈루아 필드(Galois Field))에서 수행되며, 여기서 p는 소수이고, n은 정수이다. 연산자 '+'는 당업자들이 유한 필드 2n에서 가산과 동일하다고 인식하는 불(Boolean) 연산 XOR이다.
암호화 알고리즘이 AES이고 블록 비트 길이가 128 비트인 1xEVDO 네트워크에 대해 상술된 예에서, 암호문 스트림은 GF(2128)에서 상술된 연산을 수행함으로써 생성될 수 있다. 이 예에서, 평문 스트림은 128 비트 블록들로 분해되며, 상술된 바와 같이, 가상 카운터는 각각의 데이터 스트림의 블록 카운트를 식별한다. 제1 및 제2 의사 랜덤 스트림들은 제1 의사랜덤 스트림에 대해 0 및 제2 의사랜덤 스트림에 대해 1이 부가된 크립토싱크를 AES 암호화 알고리즘에 적용함으로써 생성될 수 있다.
암시적인 메시지 인증이 없는 암호화는 모든 블록들에 대해 A = 1과 등가이다. 이 경우에, 암호문은 연산 Y = X + B에 의해 생성되며, 여기서 +는 불 연산 XOR이다. 이 암호화 모드는 바람직하지 못하게도, 어드버서리가 어떤 값을 암호문에 추가함으로써 평문의 선택된 비트들을 변경하도록 한다. 예를 들어, 어드버서리는 암호문에 값(Δ)을 추가할 수 있다. 결과적으로, 암호문은 평문과 의미 있게 관련되는 X + Δ로서 해독될 수 있다.
암시적인 메시지 인증에서의 상술된 동작을 사용하면, 어드버서리는 Y + Δ가 X + ΔA-1로서 해독될 것이기 때문에, 더 이상 암호문의 선택된 비트들을 변경할 수 없고, 여기서 A는 어드버서리에게 공지되지 않는다. 즉, 암호문의 변경 이후에, 해독된 값은 A가 의사랜덤이기 때문에, 더 이상 평문과 의미 있게 관련되지 않는다. 예를 들어, VoIP의 경우에, 음성 데이터는 리던던시를 가져서, 랜덤 변화는 음성 데이터가 무의미해지도록 하므로, 암시적인 인증이 제공된다. 이 특성은 일반적으로 비-적응형 암호화(non-malleable encryption)라 칭해진다.
통상적으로, 공중-인터페이스 애플리케이션 층에서 수신된 데이터 스트림들은 IP 패킷들, PPP 패킷들, 시그널링 패킷들, 등과 같은 패킷들이다. 일부 경우들에서, 공중 인터페이스 애플리케이션 층 패킷이 단일 링크 층 패킷에 맞지 않을 수 있다. 예를 들어, 암시적인 메시지 인증에서 규정된 블록 비트 길이(변수 b로 표시됨)는 128 비트일 수 있지만, 전송을 위해 수신된 데이터 스트림은 128의 배수가 아닐 수 있다. 이와 같은 경우에, 암호문을 생성하는데 사용된 의사랜덤 스트림들(A 및 B)의 길이는 이 경우를 고려하기 위하여 조정될 수 있다.
설명을 위하여, 데이터 패킷은 K*b + L과 동일한 비트 길이를 갖는 공중-인터페이스 애플리케이션 층에서 수신될 수 있고, 여기서 L은 양이며 b보다 더 작다. 이 경우에, 제1 K 데이터 블록들은 의사랜덤 스트림들(A 및 B)에 대한 b-비트 값들을 사용하여 암호화될 수 있다. 최종 L 비트들은 각각의 의사랜덤 스트림들로부터의 의사랜덤 스트림들(A 및 B)에 대한 L-비트 값들을 사용하여 암호화된다. 그러나, 패킷이 길이(b)의 짝수 배수가 아닌 수신기에 시그널링하기 위하여 어떤 메커니즘이 사용되어야 한다. 하나의 설명적인 실시예에서, 일단 패킷에 대해 암호문이 준비되면, 패킷 길이 표시자가 패킷의 길이를 시그널링하기 위하여 추가될 수 있다. 예를 들어, 길이 표시자는 패킷에 추가된 2-바이트 프리엠블(preamble)(즉, 헤더)일 수 있다. 대안적으로, 길이 표시자는 패킷에 포스트-엠블(post-amble)(즉, 푸터(footer))로서 추가될 수 있다. 그 후, 길이 표시자를 포함한 암호문 패킷은 전송을 위해 링크 층 상으로 통과된다.
길이 표시자는 어떤 오버헤드를 초래한다. 상기 예에서, 모든 애플리케이션 층 패킷에 대해 2-바이트 오버헤드가 초래된다(예를 들어, 모든 PPP 패킷 또는 비디오 프레임에 대해 2-바이트 오버헤드가 초래된다). 그러나, 이 오버헤드는 종래의 보안 메커니즘을 사용하여 암호화되는 경우에 모든 MAC 패킷에 대해 초래되는 2-바이트 오버헤드보다 상당히 적다.
수신기(404)는 암호문 데이터가 전송되는 것과 동일한 순서로 링크 층으로부터 암호문 데이터를 수신한다. 다시, 데이터를 상부 층들로 전송하기 전에 적절한 순서화를 보장하는 것은 링크 층 프로토콜들의 역할이다. 상술된 바와 같이, 크립토싱크의 변동 성분은 복구될 수 있다. 복구된 값에 의하여, 수신기는 나중에 암호문 패킷을 해독하는데 사용되는 동일한 키 및 크립토싱크 값들을 사용하여 의사랜덤 스트림들을 발생시킬 수 있다. 명시적인 메시지 인증의 경우에, 연산(Y + B)A-1을 사용하여 평문 스트림이 획득될 수 있고, 여기서 Y는 암호문 블록이며, A 및 B는 각각 A 및 B 의사랜덤 스트림들로부터의 의사랜덤 블록들이다.
명시적인 길이 표시자를 암호문 스트림에 추가하는 것에 대한 대안으로서, 개시 플래그 및 종료 플래그가 프레임에 추가될 수 있다. 개시 및 종료 플래그들은 미리규정된 값을 갖는 임의의 비트 길이로 이루어진 비트 시퀀스일 수 있다. 하나의 설명적인 실시예에서, 개시 플래그 및 종료 플래그는 동일한 고정된 값을 공유하며, 길이가 8 비트이다(즉, 개시 플래그는 개시 바이트이며 종료 플래그는 종료 바이트이다). 이 예를 계속 설명하면, 개시/종료 바이트의 값이 프레임의 페이로드에서 발견되는 경우, 프레임의 페이로드 내의 비트들을 개시 및 종료 플래그들과 상이한 어떤 미리 결정된 비트 시퀀스와 교체함으로써 "충돌(collision)"이 해결된다. 수신기에서, 페이로드 데이터는 자신의 원래 상태로 복원된다. 이 절차는 일반적으로 바이트 스터핑(byte stuffing)이라 칭해진다. 이 방법의 하나의 장점은 수신기(404)가 후속 패킷들에서 개시 및 종료 플래그들을 찾음으로써 손실된 패킷들을 복구할 수 있다는 것이다. 일단 패킷이 수신되면, 수신기는 개시 및 종료 플래그들 사이의 비트의 수를 카운팅함으로써 패킷의 길이를 도출할 수 있다. 특정 애플리케이션에 따라, 패킷 길이의 도출은 헤더 데이터, 제어 데이터, 또는 임의의 다른 갖가지의 비트들을 고려하기 위하여 조정 계산들을 포함할 수 있다.
도5에서, 비디오 프레임 패킷에 적용된 암시적인 메시지 인증의 예가 도시되어 있다. 이 예에서, 무선 통신 시스템은 1xEVDO 네트워크이며, 단계3에서 도시된 공중-인터페이스 프레임은 하나의 물리적 층 프레임에 맞지 않을 것이다. 상술된 바와 같이, 명시적인 길이 표시자를 사용하기보다는 오히려, 개시 및 종료 플래그들(500 및 504)이 각각 패킷에 추가된다. 공중-인터페이스 애플리케이션 층 패킷의 크기로 인하여, 단계4에서, RLP는 무선 링크를 통한 전송 이전에, 패킷을 단편화(fragmenting)한다.
상술된 암호화 메커니즘들은 예를 들어, SHA-1와 같은 명시적인 메시지 인증 메커니즘들에 동등하게 적용 가능하다. 통상적으로 지연 요건들이 부담이 되지 않는 최선형 데이터에 대하여, 이것은 아마도 명시적인 메시지 인증에 대한 바람직한 대안일 것이다. 이 방법 하에서, 명시적인 인증 태그가 계산되고 수신기에 전송되는 패킷들에 부가된다. 그러나, 상술된 바와 같이, 암호화 메커니즘은 상술된 크립토싱크 절차들을 사용하므로, 명시적인 크립토싱크를 패킷들에 추가하지 않아도 된다는 이점들을 제공한다.
본 발명이 상이하지만, 본원의 내용들의 이점을 갖는 당업자들에게는 명백한 등가의 방식들로 변경 및 실행될 수 있기 때문에, 상술된 특정 실시예들은 단지 설명적인 것이다. 더구나, 이하의 청구항들에서 설명되는 것 이외의, 본원에 제시된 구성 또는 설계의 세부사항들로만 국한되지 않는다. 따라서, 상술된 특정 실시예들이 변화 또는 변경될 수 있고, 모든 이와 같은 변화들이 본 발명의 정신 및 범위 내에 있는 것으로 간주된다는 것이 명백하다. 따라서, 본원이 추구하는 보호범위는 이하의 청구항들에서 설명된 바와 같다.

Claims (10)

  1. 무선 링크를 통한 전송을 위해 데이터를 암호화하는 방법에 있어서:
    입력으로서 크립토싱크(cryptosynch)를 수신하는 암호화 알고리즘을 사용하여 공중-인터페이스 애플리케이션 층에서 적어도 하나의 데이터 블록을 암호화하는 단계로서, 상기 크립토싱크의 값은 다른 데이터 블록들에 대한 상기 적어도 하나의 데이터 블록의 순서에 기초하고, 상기 크립토싱크의 값은 상기 데이터 블록들의 순서에 기초하여 수신기에 의해 복구 가능한, 상기 적어도 하나의 데이터 블록을 암호화하는 단계;
    상기 다른 데이터 블록들에 대한 상기 적어도 하나의 데이터 블록의 순서를 보존하도록 동작 가능한 수신기에 상기 적어도 하나의 암호화된 데이터 블록을 전송하는 단계를 포함하며,
    상기 적어도 하나의 데이터 블록은 전체 데이터 블록에 대한 상기 크립토싱크를 생성하기 위해 오직 하나의 시퀀스 번호만을 사용하는, 상이한 시퀀스 번호들을 갖는 다수의 바이트들을 포함하는, 데이터 암호화 방법.
  2. 제1항에 있어서, 상기 적어도 하나의 데이터 블록은 데이터 스트림으로부터의 미리 결정된 수의 비트들로 이루어지고, 상기 방법은:
    상기 적어도 하나의 데이터 블록에 대한 상기 크립토싱크를 계산하는 단계로서, 상기 크립토싱크는 가상 카운터의 블록 수로부터 도출되는 변동 성분으로 이루어지는, 상기 크립토싱크 계산 단계를 더 포함하는, 데이터 암호화 방법.
  3. 제2항에 있어서, 상기 적어도 하나의 데이터 블록은 상기 미리 결정된 수의 비트들로 이루어지는 선택 가능한 비트 길이를 포함하는, 데이터 암호화 방법.
  4. 제3항에 있어서, 상기 미리 결정된 수의 비트들은 128 비트들인, 데이터 암호화 방법.
  5. 제2항에 있어서, 상기 가상 카운터는 상기 미리 결정된 수의 비트들이 수신된 이후에, 상기 데이터 스트림 내의 상기 적어도 하나의 블록들 각각에 대해, 블록 수를 증분시키도록 구성되는, 데이터 암호화 방법.
  6. 제2항에 있어서, 상기 수신기와의 통신 세션 동안 상기 가상 카운터를 미리 결정된 초기 값으로 리셋하는 단계를 더 포함하는, 데이터 암호화 방법.
  7. 제2항에 있어서, 상기 크립토싱크는 상기 적어도 하나의 데이터 블록을 수반하는 제어 정보에 기초하는 고정 성분으로 이루어지는, 데이터 암호화 방법.
  8. 제1항에 있어서, 상기 적어도 하나의 데이터 블록을 암호화하는 단계는:
    상기 암호화 알고리즘으로부터 의사랜덤 스트림(pseudo random stream)을 발생시키는 단계로서, 상기 의사랜덤 스트림은 대응하는 암호화 알고리즘 및 상기 크립토싱크의 복구된 값을 사용하여 상기 수신기에 의해 재생될 수 있는, 상기 의사랜덤 스트림 발생 단계; 및
    상기 의사랜덤 스트림의 대응하는 바이트들과 상기 적어도 하나의 데이터 블록 사이에서 논리적 XOR을 실행하는 단계를 더 포함하는, 데이터 암호화 방법.
  9. 제1항에 있어서, 상기 적어도 하나의 데이터 블록을 암호화하는 단계는:
    상기 크립토싱크의 제1 값을 사용하여 상기 암호화 알고리즘으로부터 제1 의사랜덤 스트림을 발생하는 단계;
    상기 크립토싱크의 제2 값을 사용하여 상기 암호화 알고리즘으로부터 제2 의사랜덤 스트림을 발생하는 단계; 및
    유한 필드에서 연산 Y = AX + B를 수행함으로써 상기 적어도 하나의 데이터 블록을 암호화하는 단계를 더 포함하며, 여기서, A는 상기 제1 의사랜덤 스트림이고, B는 상기 제2 의사랜덤 스트림이고, X는 상기 적어도 하나의 데이터 블록이고, Y는 상기 연산으로부터 생성되는 암호화된 데이터 블록인, 데이터 암호화 방법.
  10. 제9항에 있어서, 개시 플래그 및 종료 플래그를 상기 적어도 하나의 암호화된 데이터 블록에 부가하는 단계를 더 포함하며, 상기 개시 및 종료 플래그들은 상기 적어도 하나의 암호화된 데이터 블록의 시작 및 끝을 상기 수신기에 시그널링하도록 동작 가능한, 데이터 암호화 방법.
KR1020087010041A 2005-10-28 2006-10-16 무선 네트워크들을 위한 공중-인터페이스 애플리케이션 층보안 KR101357026B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/261,399 2005-10-28
US11/261,399 US8447968B2 (en) 2005-10-28 2005-10-28 Air-interface application layer security for wireless networks
PCT/US2006/040693 WO2007053302A2 (en) 2005-10-28 2006-10-16 Air-interface application layer security for wireless networks

Publications (2)

Publication Number Publication Date
KR20080059601A KR20080059601A (ko) 2008-06-30
KR101357026B1 true KR101357026B1 (ko) 2014-02-03

Family

ID=37882259

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087010041A KR101357026B1 (ko) 2005-10-28 2006-10-16 무선 네트워크들을 위한 공중-인터페이스 애플리케이션 층보안

Country Status (6)

Country Link
US (1) US8447968B2 (ko)
EP (1) EP1941650B1 (ko)
JP (1) JP5089599B2 (ko)
KR (1) KR101357026B1 (ko)
CN (1) CN101310473B (ko)
WO (1) WO2007053302A2 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7328350B2 (en) * 2001-03-29 2008-02-05 Arcot Systems, Inc. Method and apparatus for secure cryptographic key generation, certification and use
US7660996B2 (en) * 2005-11-29 2010-02-09 Canon Kabushiki Kaisha Electronic apparatus and unit utilized in electronic system
US8565217B2 (en) * 2006-06-07 2013-10-22 Qualcomm Incorporated Methods and apparatus for supporting tunneling related to wireless downlink signaling flows
US8565216B2 (en) * 2006-06-07 2013-10-22 Qualcomm Incorporated Methods and apparatus for supporting tunneling related to wireless uplink signaling flows
US7978677B2 (en) * 2006-06-07 2011-07-12 Qualcomm Incorporated Methods and apparatus for using control values to control communications processing
US20070297369A1 (en) * 2006-06-21 2007-12-27 Innovative Sonic Limited Method and apparatus for data framing in a wireless communications system
US7715439B2 (en) * 2007-02-05 2010-05-11 Sharp Laboratories Of America, Inc. Systems and methods for shifting the position of a symbol to reduce transmission overhead
GB0713787D0 (en) * 2007-07-16 2007-08-22 Cellfire Security Technologies Security protocol, secure communication system and method
US8411862B2 (en) * 2008-04-25 2013-04-02 Alcatel Lucent Timing adjustment for session security protocol
WO2010056756A2 (en) * 2008-11-11 2010-05-20 Aeronix, Inc. Method and apparatus for improved secure transmission between wireless communication components
CN102318313B (zh) * 2009-02-16 2015-04-01 瑞典爱立信有限公司 不加密的网络操作解决方案
US8824681B2 (en) * 2011-12-06 2014-09-02 Motorola Solutions, Inc. Method and device for link layer decrypting and/or encrypting a voice message stream already supporting end to end encryption
US10057250B2 (en) * 2013-05-14 2018-08-21 Kara Partners Llc Technologies for enhancing computer security
US10601781B2 (en) * 2015-10-12 2020-03-24 Servicenow, Inc. Selective encryption delineation
US11575524B2 (en) 2015-10-12 2023-02-07 Servicenow, Inc. Selective encryption delineation
US10728743B2 (en) * 2016-01-19 2020-07-28 Huawei Technologies Co., Ltd. System and method of air interface capability exchange
WO2017185312A1 (zh) * 2016-04-28 2017-11-02 华为技术有限公司 加密、解密方法及装置
DE102016009279B4 (de) * 2016-07-29 2019-10-17 Bundesrepublik Deutschland, vertreten durch das Bundesministerium der Verteidigung, dieses vertreten durch das Bundesamt für Ausrüstung, Informationstechnik und Nutzung der Bundeswehr Sendeverfahren und Empfangsverfahren zur verschleierten Unterwasser-Telefonie, und entsprechende Sender, Empfänger und Computerprogrammprodukte
US11423401B2 (en) * 2018-02-28 2022-08-23 Visa International Service Association Message delay estimation system and method
JP7106964B2 (ja) * 2018-04-24 2022-07-27 京セラドキュメントソリューションズ株式会社 パスワード認証装置、パスワード認証プログラム及びパスワード認証方法
CN111368316B (zh) * 2020-03-02 2022-08-09 中国邮政储蓄银行股份有限公司 文件加解密的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4754482A (en) * 1985-11-26 1988-06-28 Samco Investment Company Method and apparatus for synchronizing encrypting and decrypting systems
US5638448A (en) * 1995-10-24 1997-06-10 Nguyen; Minhtam C. Network with secure communications sessions
US5689563A (en) * 1993-06-29 1997-11-18 Motorola, Inc. Method and apparatus for efficient real-time authentication and encryption in a communication system
US5719862A (en) * 1996-05-14 1998-02-17 Pericom Semiconductor Corp. Packet-based dynamic de-skewing for network switch with local or central clock

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0671270B2 (ja) * 1982-01-26 1994-09-07 株式会社日立製作所 データ伝送ネットワーク
US4654480A (en) 1985-11-26 1987-03-31 Weiss Jeffrey A Method and apparatus for synchronizing encrypting and decrypting systems
FR2595522A1 (fr) * 1986-03-06 1987-09-11 Cimsa Sintra Procede et dispositif de transmission de donnees numeriques par messages organises en trames
US5412730A (en) * 1989-10-06 1995-05-02 Telequip Corporation Encrypted data transmission system employing means for randomly altering the encryption keys
US5164941A (en) * 1990-01-24 1992-11-17 Canai Computer And Network Architecture Inc. System for implementing improved attempt-and-defer access contention protocol
US5237610A (en) * 1990-02-01 1993-08-17 Scientific-Atlanta, Inc. Independent external security module for a digitally upgradeable television signal decoder
JPH05122196A (ja) 1991-10-24 1993-05-18 Mitsubishi Electric Corp スクランブル/デスクランブル・システム
JPH0738559A (ja) 1993-07-22 1995-02-07 Matsushita Electric Ind Co Ltd 音声スクランブル・デスクランブル方法およびその装置
US5931961A (en) * 1996-05-08 1999-08-03 Apple Computer, Inc. Discovery of acceptable packet size using ICMP echo
US6980658B1 (en) 1999-09-30 2005-12-27 Qualcomm Incorporated Method and apparatus for encrypting transmissions in a communication system
AU2005201982B2 (en) 1999-09-30 2007-10-25 Qualcomm Incorporated Method and apparatus for encrypting transmissions in a communication system
US6999429B1 (en) * 2000-03-03 2006-02-14 Telefonaktiebolaget Lm Ericsson Access technology integrated header compression
US7143289B2 (en) * 2000-10-30 2006-11-28 Geocodex Llc System and method for delivering encrypted information in a communication network using location identity and key tables
US7185362B2 (en) 2001-08-20 2007-02-27 Qualcomm, Incorporated Method and apparatus for security in a data processing system
US7006628B2 (en) 2002-01-04 2006-02-28 Avaya Technology Corp. Efficient packet encryption method
JP2003330366A (ja) 2002-05-09 2003-11-19 Fdk Corp 暗号生成装置および復号装置および暗号/復号装置
CN1372192A (zh) * 2002-04-02 2002-10-02 成都三零盛安信息系统有限公司 一种通用安全加密接口
US20030200459A1 (en) * 2002-04-18 2003-10-23 Seeman El-Azar Method and system for protecting documents while maintaining their editability
AU2002309126A1 (en) 2002-06-12 2003-12-31 Nokia Corporation Synchronization of a counter value employed as a parameter for ciphering and deciphering in a mobile communication system
JP4385900B2 (ja) * 2004-09-10 2009-12-16 セイコーエプソン株式会社 通信設定プログラム、起動プログラム、通信設定方法およびアプリケーションの起動方法
US7675895B2 (en) * 2004-09-14 2010-03-09 Alcatel-Lucent Usa Inc. Method and apparatus for wireless communication using voice over internet protocol
US8086519B2 (en) * 2004-10-14 2011-12-27 Cfph, Llc System and method for facilitating a wireless financial transaction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4754482A (en) * 1985-11-26 1988-06-28 Samco Investment Company Method and apparatus for synchronizing encrypting and decrypting systems
US5689563A (en) * 1993-06-29 1997-11-18 Motorola, Inc. Method and apparatus for efficient real-time authentication and encryption in a communication system
US5638448A (en) * 1995-10-24 1997-06-10 Nguyen; Minhtam C. Network with secure communications sessions
US5719862A (en) * 1996-05-14 1998-02-17 Pericom Semiconductor Corp. Packet-based dynamic de-skewing for network switch with local or central clock

Also Published As

Publication number Publication date
JP2009514356A (ja) 2009-04-02
US20070101120A1 (en) 2007-05-03
EP1941650A2 (en) 2008-07-09
EP1941650B1 (en) 2017-12-27
JP5089599B2 (ja) 2012-12-05
US8447968B2 (en) 2013-05-21
CN101310473B (zh) 2012-12-12
WO2007053302A2 (en) 2007-05-10
CN101310473A (zh) 2008-11-19
WO2007053302A3 (en) 2007-06-14
KR20080059601A (ko) 2008-06-30

Similar Documents

Publication Publication Date Title
KR101357026B1 (ko) 무선 네트워크들을 위한 공중-인터페이스 애플리케이션 층보안
RU2341028C2 (ru) Эффективная передача криптографической информации в протоколе безопасности реального времени
AU2002342014C1 (en) Method and apparatus for security in a data processing system
JP4659839B2 (ja) 通信システムにおける信号暗号化/解読装置及び方法
US20080170691A1 (en) Encryption And Decryption Device In Wireless Portable Internet System,And Method Thereof
JP5527906B2 (ja) セキュリティアソシエーションに関連した多数の接続パケットを連結し、暗号化オーバーヘッドを減少させるシステム及び方法
WO2006086554A2 (en) Methods and systems for incremental crypto processing of fragmented packets
JP2002044135A (ja) 暗号装置及び暗号通信システム
JP2007140566A (ja) 効率的なパケット暗号化方法
WO2007059558A1 (en) Wireless protocol for privacy and authentication
US9872175B2 (en) Packet processing method, apparatus, and system
US20080320302A1 (en) Method, apparatus, and manufacture for decryption of network traffic in a secure session
US20100031015A1 (en) IP Network Communication Method Having Security Function, And Communication System
US8122247B2 (en) Processing method for message integrity with tolerance for non-sequential arrival of message data
EP1510017B1 (en) Synchronizing method and apparatus using error detection of sequence numbers to avoid synchronizing failure
US10298386B1 (en) Method and apparatus for secure communications in networks
US8300824B1 (en) System and method for encrypting data using a cipher text in a communications environment
Abdelsalam et al. Robust security framework for DVB‐RCS satellite networks (RSSN)
EP4346255A1 (en) Encrypted satellite communications
Roepke et al. A Survey on Protocols securing the Internet of Things: DTLS, IPSec and IEEE 802.11 i
Abdelsalam Degree of Philosophy Doctor in Space Systems and Technologies XXVII Cycle
Fu-Yuli Cryptographic Method of 3G Firewall Based on IXA2850
Lindskog et al. The design and implementation of secure socket SCTP
Liang et al. ULE security implementation in PLATINE

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: 20170113

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180112

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190103

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20200103

Year of fee payment: 7