KR20050102785A - 비동기식 이동통신시스템에서 상향 링크 데이터의 암호화처리 방법 및 시스템 - Google Patents
비동기식 이동통신시스템에서 상향 링크 데이터의 암호화처리 방법 및 시스템 Download PDFInfo
- Publication number
- KR20050102785A KR20050102785A KR1020040028044A KR20040028044A KR20050102785A KR 20050102785 A KR20050102785 A KR 20050102785A KR 1020040028044 A KR1020040028044 A KR 1020040028044A KR 20040028044 A KR20040028044 A KR 20040028044A KR 20050102785 A KR20050102785 A KR 20050102785A
- Authority
- KR
- South Korea
- Prior art keywords
- hfn
- cfn
- uplink
- value
- downlink
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/12—Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
- H04L63/0457—Network 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 wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption
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
본 발명은 비-동기식 IMT-2000 시스템 또는 WCDMA 시스템에서 3GPP TS(3th Generation Partnership Project Technical Specifications)에서 제시된 방법을 적용하는 보안 절차(Security Procedure)와 관련된다. 본 발명에 따른 암호화 시작 시간의 도달 여부의 결정 방법은 특정 시간에서 상향링크 및 하향링크 데이터의 COUNT-C의 CFN 및 HFN을 결정하는 단계 및 상기 두 개의 HFN 값의 차이를 비교하는 단계를 포함하고, 상기에서 하향링크의 CFN과 상향링크의 CFN은 1 주기 이상 차이가 나지 않는 것을 특징으로 한다. 또한, 본 발명에 따른 상항링크 데이터의 HFN을 갱신하는 방법은 특정 시간에서 상향 링크와 하향 링크의 HFN 값의 차이를 결정하는 단계, 특정 시간에서 상향링크 COUNT-C의 CFN과 하향링크 COUNT-C의 CFN을 비교하는 단계 및 상기 CFN의 비교 값에 따라 HFN 값의 차이의 크기를 판단하는 단계를 포함한다. 상기와 같은 방법으로 이루어지는 본 발명에 따른 방법은 FP 정지 모드의 사용으로 상향링크 데이터를 수신하는 RNC에서 부하를 감소시키는 효과를 가진다.
Description
본발명은 비-동기식 IMT-2000 시스템 또는 WCDMA 시스템에서 3GPP TS(3th Generation Partnership Project Technical Specifications)에서 제시된 방법을 적용하는 보안 절차(Security Procedure)와 관련되며, 보다 구체적으로 RLC(Radio Link Control) 모드 가 투명 모드(Transparent Mode)로서 UE(User Equipment)와 RNC(Radio Network Controller) 사이 또는 RNC와 UE 사이의 프레임 프로토콜(Frame Protocol)을 정지 모드(Silent Mode)로 사용하는 경우 상향 링크에 대한 암호화의 시작 시간을 결정하고 HFN(Hyper Frame Number)을 갱신하는 방법 및 시스템과 관련된다.
비동기 IMT-2000 시스템, 특히 UMTS(Universal Mobile Telecommunications System)을 규정하고 있는 3GPP 규격에 의하면 TM RLC에 대한 암호화(Ciphering/Deciphering)는 MAC(Medium Access Control) 계층에서 이루어진다. 상기 암호화 과정에서 암호화 알고리즘을 위한 입력 매개변수의 하나로서 도 1A에 도시된 것과 같은 32 비트 길이의 암호화 서열 번호(Ciphering Sequence Number) COUNT-C가 주어진다. 3GPP TS에 규정된 상기 COUNT-C는 RLC AM(Acknowledged Mode) 또는 RLC UM(Unacknowledged Mode)를 사용하는 상향 링크 무선 베어러(Radio Bearer) 및 하향 링크 무선 베어러 마다 하나의 값이 존재한다. 또한, 동일한 코어 네크워크(CN) 영역의 모든 TM 모드 RLC 무선 베어러에 대하여 상기 COUNT-C는 동일하고, 또한 상향 링크와 하향 링크에 대해서도 동일하다.
도 1A에 도시된 것처럼 COUNT-C는 두 개의 부분으로 "짧은(Short)" 서열번호와 "긴(Long)" 서열번호로 나누어진다. 상기 "짧은" 서열 번호는 하위 비트(the least significant bits), 그리고 "긴" 서열 번호는 상위 비트(the most significant bits)를 형성하며, 상기 "짧은" 서열 번호는 COUNT-C의 8-비트 연결 프레임 번호(Connection Frame Number : CFN)로서 기능을 한다. 상기 CFN은 ME(Mobile Equipment) MAC-d 엔터티(entity)와 SRNC(Servicing Radio Network Controller) 엔터티(entity) 내에서 독립적으로 유지된다. 이에 비하여, 상기 "긴" 서열 번호는 24-비트 MAC-d HFN(Hyper Frame Number)로서 각각의 CFN 사이클 마다 증가된다. 데이터의 전송 과정에서 상기 CFN은 10 msec 마다 증가하며 8-비트이므로 0 내지 255 범위의 값을 가질 수 있다. 상기와 같은 CFN의 증가에 대하여 HFN은 CFN 1주기가 증가할 때마다 그 값이 1씩 증가하게 된다. 그러므로, TM RLC에 대하여 암호화가 진행되는 경우 CFN의 주기 증가 여부가 판단되어야 한다. 상기 CFN은 암호화가 수행되는 제어국( RNC)과 UE(User Equipment)에서 각각 관리가 이루어져야 하므로 제어국에서는 COUNT-C를 구성하는 HFN과 CFN의 정확한 값을 결정할 수 있어야 한다.
암호화 제어(Ciphering Control)를 위한 RRC(Radio Resource Control) 기능의 진행과정이 도 1B에 도시되어 있다.
3GPP TS에 정의된 규격에 따르면, 단말기와 시스템 사이의 RLC TM(Transparent Mode)에서 암호화의 시작 시점을 제어국 또는 단말기에서 결정하도록 되어 있다. 도 1B에 도시된 것처럼 RNC에서 UE(User Equipment)로 RRC 계층에서 보안 모드 명령(Security Mode Command) 메시지를 UE에 전송한다. 상기 메시지를 전송할 때 CN(Core Network) 영역을 위한 TM 무선 베어러의 경우 IE(Information Element) "암호화 모드 정보"에는 DPCH(Dedicated Physical CHannel)을 위한 암호화 시작 시간(activation) IE가 포함되고, 상기 시작 시간은 IE에 대한 새로운 암호화 구성에 적용되고 하나의 CFN 값이 특정되는 시간을 의미한다. 상기와 같은 암호화 모드 정보(Ciphering Mode Info)가 포함된 보안 모드 명령을 수신한 UE는 RLC-TM을 사용하는 무선 베어러에 대하여 IE "DPCH를 위한 암호화 시작 시간" 내에서 지시된 번호에 따라 필요한 CFN을 적용한 후 RNC의 RRC 계층으로 보안 모드 완성 메시지를 전송한다. 또한, 상기와 같은 절차는 도 1B에 도시된 것처럼 무선 베어러 설정 절차(Radio Bearer Setup Procedures)에서 전송되는 메시지에 포함된 IE 시작 시간을 이용하여 이루어지기도 한다.
상기와 같은 IE 시작 시간을 수신한 UE 또는 RNC는 제어국 또는 UE에서 결정한 해당 CFN이 되는 시점부터 하향링크/상향링크에 대한 데이터 암호화 기능을 수행하게 된다. CFN(Connection Frame Number)은 해당 CN 영역에서 UE와 RNC 사이의 데이터 프레임을 연결시키는 번호가 된다. 상기 UE에서 수신되는 CFN과 송신되는 CFN은 동일한 시간대에서는 동일한 값을 가지게되고 이로 인하여 기지국(Node B)에서는 기지국으로부터 무선국(MS)으로 전송되는 하향링크와 무선국에서 기지국으로 전송되는 상향링크 사이에는 시간 차이가 발생하게 된다. 본 명세서에서 "UE"는 무선국(MS)을 포함하고, 또한 RNC는 UTRAN에 포함된다. 도 1C는 상기와 같은 기지국(Node B)에서의 시간 차이의 발생 과정을 도시한 것이다. 도 1C에 도시된 것처럼, 기지국에서 특정 CFN에서 해당 데이터 를 전송할 수 있도록 RNC에서는 전송해야할 CFN 시간(CFN=150) 이전에 해당 데이터를 기지국으로 전송한다. 상기 해당 데이터와 관련된 데이터는 MS와 기지국 사이의 CFN 차이 및 기지국 수신 처리 능력으로 인하여 지연된 시간 이후에 RNC에서 수신하게 된다. 따라서, 3GPP TS에서는 상기와 같은 CFN의 차이를 구분하기 위하여 기지국과 RNC 사이에 데이터 전송을 위한 프로토콜인 프레임 프로토콜 내에 CFN 값을 통보하도록 정하고 있다. 도 1C에서 DL은 하향 링크를 의미하고 UL은 상향 링크를 의미한다.
상기와 같은 암호화 제어 및 실행에 있어서, 하향링크 데이터에 대해서는 RNC에서 데이터의 CFN을 결정하고 10 msec 마다 CFN을 증가시킨다. 또한, CFN 한 사이클에 대하여 HFN을 1씩 증가시키게 된다. 그러므로, 상기 하향링크 데이터에 대해서는 암호화의 위한 특별한 기법이 요구되지 않는다. 그러나, 상향 링크에 대해서는 MS의 위치 및 기지국의 해당 데이터의 처리 상태에 따라 CFN 값이 MS마다 서로 다른 시간대에 수신되게 되므로 상기와 같은 서로 다른 CFN 값을 관리하기 위한 특별한 방식이 필요하게 된다.
기지국과 제어국 사이의 프레임 프로토콜은 정상 모드(Normal Mode)와 정지 모드(Silent Mode) 두 가지 동작 모드를 가지도록 3GPP TS에 규정되어 있다. 정상 모드로 동작하는 경우 기지국은 MS로부터 수신된 데이터가 없는 경우에도 상향링크 데이터 프레임을 구성하여 RNC로 전송하여야 한다. 이에 비하여, 정지 모드로 동작되는 경우에는 MS로부터 데이터가 수신되지 않는 경우에는 기지국은 상향링크 데이터 프레임을 전송하지 않는다. 그러므로, 정상 모드로 동작하는 경우 RNC에서 기지국으로부터 수신되는 CFN 값에 대한 정보를 가지지만, 정지 모드로 동작하는 경우에는 RNC에서는 데이터가 수신되는 경우에만 CFN 값에 대한 정보를 가진다. 즉, 정지 모드로 동작하는 경우 RNC에서는 MS로부터 데이터가 수신되지 않는 구간에서는 상향링크 CFN 값에 대한 별도로 수신하지 못하므로 상향링크 CFN에 대한 특별한 방법 또는 관리 기법을 사용하지 않으면 CFN 사이클의 증가 여부를 결정할 수 없다. 상기와 같은 결과로 인하여 TM RLC에서의 암호화 과정에서 시작 시점을 결정할 수 없어 HFN을 증가시킬 수 없는 문제가 발생한다. 예를 들어, 상향 링크의 시작 시점이 CFN=100(시작 시간=100)이고 정지 모두로 동작하는 경우 RNC에서 수신된 상향링크 데이터의 CFN이 32가 되는 경우, 상기 데이터가 예정된 CFN=100 이 되는 시점 이전에 발생한 데이터인지 아니면 CFN 한 사이클 또는 주기가 지난 시점의 데이터인지 여부를 결정할 수 없다. 마찬가지로, 이미 암호화 과정이 시작된 경우에도 현재 수신된 CFN이 CFN의 주기가 몇 번 지난 후에 수신된 데이터인지 결정할 수 없다.
상기와 같은 상향 링크의 CFN에 해당 시점을 결정하기 위한 종래의 방법으로, 호(Call) 연결 시점부터 상향링크 데이터의 CFN을 알 수 있도록 정상 모드 프레임 프로토콜을 사용하는 것이 제안되었다. 또 다른 방법으로는, RNC에서 각각의 단말에 대한 상향링크 CFN 값을 독립적으로 증가시키거나 현재 하향링크 CFN 값에 대한 오프셋(Offset)을 계산하여 상향링크 데이터에 대한 CFN 값을 결정하는 방법이 제안되었다.
상기와 같은 상향링크 CFN을 관리하는 종래의 방법은 아래와 같은 문제점을 가진다.
(1) 정상 모드 프레임 프로토콜을 사용하는 방법의 문제점
위에서 설명한 것처럼, 정상 모드의 프레임 프로토콜을 사용하여 동작하는 경우 MS로부터 상향링크에 대한 데이터가 수신되지 않는 경우에도 기지국으로부터 RNC에 프레임을 전송하게 된다. 따라서, 유휴 구간에서도 기지국과 RNC 사이에는 프레임 처리가 이루어지므로 이로 인하여 기지국 및 RNC의 부하가 증가한다는 문제가 발생한다. 상기와 같은 프레임의 전송은 기지국과 RNC 사이의 전송로에 데이터가 지속적으로 존재하도록 만들며 결국 정지 모드를 사용하는 경우에 비하여 자원 사용 효율이 현저하게 낮아지게 된다.
(2) 상향링크 CFN을 독립적으로 관리하는 방법의 문제점
MS으로부터 상향링크 데이터의 수신 여부와 무관하게 RNC에서 상향링크 CFN을 10msec 마다 증가시키는 방법을 사용하게 되면 각각의 MS에 대하여 서로 다른 10msec 단위의 시간 관리 방법을 사용하여야 한다. 그러므로, 상기와 같은 방법은 시스템의 부하 증가를 가져오게 된다. 또한, 이미 관리되고 있는 다운링크 CFN 값에 대하여 일정한 오프셋을 가감하는 방법으로 상향링크 CFN을 관리하는 방법을 사용하면, MS의 위치 및 기지국과 RNC 사이의 전송로의 상태에 따라 하향링크와 상향링크 사이의 CFN의 차이가 변하게 되면 MS와 시스템 사이의 암호화 기능이 정상적으로 수행되지 않아 데이터의 해석이 불가능하게 되는 경우가 발생할 수 있다.
본 발명은 상기와 같은 문제를 해결하기 위한 방법과 시스템을 제공하기 위한 것이다. 그러므로, 본 발명은 아래와 같은 목적을 가진다.
본 발명의 첫 번째 목적은 정지 모드(Silent Mode) 프레임 프로토콜을 사용하면서 TM RLC의 암호화와 과정에서 RNC에서 상향 링크 데이터의 CFN의 값을 결정할 수 있는 방법을 제공하는 것이다. 본 발명에서 제공하는 방법에 따르면, RNC에서 MS와 독립적으로 상향링크 CFN을 10msec 마다 증가시키거나 또는 다운링크 CFN에 대한 오프셋을 이용하여 추정하는 방법을 사용하지 않고 TM RLC의 암호화 수행이 가능하도록 한다.
본 발명의 두 번째 목적은 상기와 같은 방법을 실행하는 UMTS의 UTRAN(Universal Terrestrial Radio Access Network)를 제공하는 것을 목적으로 한다.
본 발명에 따른 방법 및 시스템이 아래에서 첨부된 도면을 이용하여 상세하게 설명된다. 발명의 이해를 위하여 제시되는 실시 예에 관한 설명에서 공지된 사항이나 자명한 사항은 생략되거나 간결하게 설명되지만 이는 이해의 명확성을 위한 것이며 이러한 것들이 본 발명의 범위에서 제외된다는 것을 의미하는 것은 아니다.
본 발명에 따른 방법에 의하면, 비동기 IMT-2000 시스템에 해당하는 WCDMA의 제어국(RNC)에서 FP 정지 모드가 사용되는 경우 암호화(Ciphering)가 시작되는 시간을 결정하고 HFN을 갱신하기(Update) 위하여 하향링크 데이터의 CFN, 수신된 상향링크 데이터의 CFN, 하향링크 HFN과 상향링크 HFN 및 시작 시간(Activation Time)의 비교가 필요하다. 그러므로, 본 명세서 및 첨부된 도면에서는 아래와 같은 매개 변수를 사용하여 본 발명에 따른 방법 및 시스템을 설명한다.
- 특정 시간 t에서 RNC에서의 하향링크/상향링크 CFN은 다음 식으로 표현된다:
하향링크 CFN : DL_CFN(t),
상향링크 CFN : UL_CFN(t).
상기에서 CFN은 연결 프레임 번호(Connection Frame Number)를 나타내며, 상기 프레임 또는 무선 프레임은 15개의 슬롯(slot)으로 구성되고 다시 하나의 슬롯은 0.666msec의 시간 길이를 가진다. 그러므로, RLC TM의 경우 COUNT-C의 CFN이 8비트로 이루어지므로 각각의 CFN은 10msec를 단위로 하여 0 내지 255의 값을 가질 수 있고 상기 값은 CFN 한 사이클에 해당한다. 본 발명에 따른 방법에서는 하향링크 CFN과 상향링크 CFN은 1주기 이상으로 차이가 나지 않는 것으로 가정한다. 예를 들어, 시간 t에서 DL_CFN(t)의 값이 100이 되고 UL_CFN(t)가 80이 되는 경우 상기 두 개의 프레임 사이의 CFN의 차이는 20이 되고 CFN 주기 또는 2 주기가 경과한 276 또는 542가 되는 것은 아니라고 가정한다.
- 암호화의 시작 시간을 나타내는 시작 시간(Activation Time)은 아래와 같이 나타낸다:
시작 시간 : CFN_act.
상기 시작 시간을 나타내는 CFN_act는 10msec 단위로서 0 내지 255 사이의 값을 가지게 된다.
- 특정 시간 t에서 암호화(Ciphering/Deciphering)에 사용되는 하향링크/상향링크 HFN은 아래와 같은 방법으로 나타낸다:
하향링크 HFN : DL_HFN(t),
상향링크 HFN : UL_HFN(t).
RLC TM의 경우, 상기 HFN은 COUNT_C의 최상위 24비트로 구성되고, CFN이 한 주기 경과함에 따라 값이 1만큼 증가하게 된다. 또한 하향링크 HFN과 상향링크 HFN의 차이는 아래와 같은 식으로 표현된다:
DF_HFN(t) = DL_HFN(t) - UL_HFN(t).
위와 같은 표현을 사용하여 아래에서 본 발명에 따른 방법을 설명하며, 먼저 시작 시점(Activation Time) 도달 여부 결정 방법을 설명한다.
1. 시작 시간 도달 여부의 결정 방법
본 발명에 따른 방법에 의하면, RNC에서 FP(Frame Protocol) 정지 모두로 동작하는 경우 투명 모드(TM) RLC의 상향링크 암호화가 시작되는 시간을 결정하기 위하여 하향링크 CFN, 수신된 상향 링크 CFN, 하향링크 HFN, 상향링크 HFN 및 시작 시작(Activation Time)과의 비교하는 과정이 필요하다.
상기에서 하향링크의 경우 CFN을 RNC가 관리하게 되므로 시작 시간 이전 및 이후의 데이터에 대한 암호화 처리 방법이 달라질 수 있다. 그러나, 프레임 프로토콜이 정지 모드로 동작하면, RNC에서 수신되는 상향 링크 프레임은 MS로부터의 데이터의 존재 유무에 의존하게 된다. 즉, 데이터가 없으면 RNC에서는 수신되는 상향링크 프레임이 존재하지 않게 되고 이에 다라 상향링크의 CFN도 수신되지 않는다. 상기와 같은 결과로 인하여, 암호화 시작 시간으로 지정된 시각에 MS로부터 송신 데이터가 존재하지 않으면 RNC는 상향링크 시작 시간에 해당하는 UL_CFN(t) 값을 수신하지 못하게 되며, 상기에서 t는 시작 시간을 나타낸다. 상기와 같은 상황에서 MS로부터의 데이터가 CFN이 1주기 이상 지난 시점부터 전송되기 시작하면 RNC는 상향링크 시작 시간이 되지 않은 것으로 판단하여 해독 기능(Deciphering)을 실행하지 않거나 또는 해독 과정을 실행하기 위하여 필요한 COUNT_C 내의 HFN을 증가시키지 않음으로서 데이터의 복원이 비정상적으로 될 수 있다.
위와 같이 RNC에서는 정지모드로 동작하는 경우에는 상하링크 데이터의 암호화 시작 시점의 도달 여부를 결정할 필요가 있다. 상기 도달 여부의 결정은 아래와 같은 단계로 나누어 이루어진다.
- 하향링크에 대한 암호화의 시작 이전 단계
상향 링크 데이터가 RNC에 수신되면 먼저 하향링크의 암호화의 시작 여부를 판단한다. 상기 점검의 결과 하향링크의 암호화가 시작되지 않은 경우에는 상향링크의 암호화도 시작되지 않는 것으로 판단할 수 있다. 위에서 설명한 것처럼 하향링크 CFN은 RNC에서 관리되고 상기 하향링크 CFN과 관련된 상향링크 CFN보다 절대 시간(Absolute Time)의 관점에서 RNC에서 먼저 수행되게 된다. 그러므로, 하향링크에 대한 암호화가 시작되지 않았다면 상향 링크에 대한 암호화도 시작되지 않은 것으로 볼 수 있다. 상기와 같이 하향링크의 암호화가 시작되지 않은 경우에는 RNC에서 수신되는 상향 링크 CFN의 값을 고려할 필요없이 상향링크에 대한 암호화 시작 시간에 도달하지 않은 것으로 판단할 수 있다.
도 2A는 상기와 같은 DL_CFN(t)가 시작 시간보다 작은 경우 본 발명에 따른 방법에 의하여 상향링크의 암호화 시작 시간의 도달 여부를 결정하는 한 가지 실시 예를 도시한 것이다.
도 2A의 첫 번째 경우에서 DL_CFN(t) = 120, UL_CFN(t) = 114 그리고 CFN_act = 126이 된다고 가정하고, 두 번째 경우에서 DL_CFN(t) = 10, UL_CFN (t) = 250 그리고 CFN_act = 16이라고 가정한다. 두 가지 경우에서 모두 DL_CFN(t) 값이 CFN_act 보다 작으므로 하향링크의 데이터에 대한 암호화가 개시되지 않은 것을 알 수 있다. 그러므로, 상향링크의 데이터에 대한 암호화가 개시되지 않았다고 판단한다.
- 하향링크 암호화가 시작된 이후의 단계
RNC에서 하향링크의 암호화가 시작된 경우에는 하향링크 HFN과 상향링크 HFN을 비교한 후 시작 시간(Activation Time)을 참조로 하여 수신된 상향링크 CFN의 데이터가 시작 시작 이전의 데이터인지 또는 이후의 데이터인지 여부를 판단한다. UL_HFN(t)와 DL_HFN(t) 값이 차이 여부에 따라 여러 판단 방법이 나누어질 수 있다.
(1) UL_HFN(t)가 DL_HFN(t)와 같은 경우의 판단
상향링크에 대한 암호화 시작 시점에 도달되지 않은 경우에는 UL_HFN(t)의 값은 항상 초기값을 유지한다. 상기 DL_HFN(t)이 값이 UL_HFN(t) 와 동일하다면 하향링크 CFN이 255에서 0으로 변경되는 한 주기가 지나지 않았음을 나타낸다. 그러므로, UL_CFN(t)와 시작 시간인 CFN_act를 비교하여 상향링크 암호화의 시작 여부를 판단할 수 있다. 만약, UL_CFN(t)가 CFN_act 보다 큰 경우라면, 상향링크 암호화가 시작된 것으로 판단하고, UL_CFN(t)가 CFN_act 보다 작은 경우라면, 상향링크 암호화가 시작되지 않는 것으로 판단한다.
도 2B는 UL_HFN(t)가 DL_HFN(t)가 같은 경우 본 발명에 따른 상향링크의 데이터의 대한 암호화 시작 시간의 도달 여부의 판단 방법에 대한 하나의 실시 예를 도시한 것이다.
도 2B의 첫 번째 경우에 DL_HFN(t) = UL_HFN(t), DL_CFN(t) = 120, UL_CFN(t) = 114 그리고 CFN_act = 110이라고 가정한다. 그리고, 도 2B의 두 번째 경우에는 DL_HFN(t) = UL_HFN(t), DL_CFN(t) = 120, UL_CFN(t) = 114 그리고 CFN_act = 116이라고 가정한다. 상기 첫 번째 경우는 UL_CFN(t)가 CFN_act 보다 큰 값을 가지므로 암호화 시작 시간이 경과한 것으로 판단하고 상기 두 번째 경우는 UL_CFN(t)이 CFN_act 보다 작은 경우에 해당하므로 상향링크의 암호화 시작 시간이 도달하지 않은 것으로 판단한다.
(2) DL_HFN(t)와 UL_HFN(t)이 차이가 1인 경우의 판단 방법
상향링크 암호화가 시작되지 않았다면 UL_HFN(t)의 값은 항상 초기값을 유지한다. 그러므로, DL_HFN(t) 가 UL_HFN(t) 보다 1 이 크면 하향링크 CFN은 현재 시점 이전에 255에서 0으로 변경되었음을 알 수 있다. 상기 경우에는 수신한 UL_CFN(t)와 CFN_act를 비교하여 상향링크 암호화 시작 시간의 도달여부를 판단해야 한다. 그러므로, UL_CFN(t)와 CFN_act의 값에 따라 두 가지 경우로 나누어 질 수 있다.
(i) UL_CFN(t)가 CFN_act 보다 크거나 같은 경우
DF_HFN(t) 가 1이라면 하향링크의 암호화 시작 시간이 이미 도달되고, 다음 주기로 이행되었음을 알 수 있다. 그러므로, 수신된 상향링크 CFN이 시작 시간보다 큰 값이라면 상향링크 시작 시간도 이미 도달하였다고 판단할 수 있다. 이때 UL_CFN(t) 가 DL_CFN(t) 보다 작은 경우에는 UL_CFN 과 DL_CFN 이 한 주기 이상 차이나지 않아야 하므로 상향링크 HFN의 값을 1 증가시켜 주어야 정확한 데이터의 해독이 이루어진다. 상기와 같은 상향링크 HFN의 값의 갱신(Update) 방법은 아래에서 상세히 설명된다.
도 2C는 본 발명에 따른 DL_HFN(t)와 UL_HFN(t)의 차가 1이 되는 경우 본 발명의 방법에 따른 상향링크의 데이터의 대한 암호화 시작 시간의 도달 여부의 판단 하는 하나의 실시 예를 도시한 것이다.
도 2C의 첫 번째 경우에 DL_HFN(t) - UL_HFN(t) = DF_HFN(t) = 1, DL_CFN(t) = 120, UL_CFN(t) = 114 및 CFN_act = 110 이라고 가정한다. 그리고, 두 번째 경우 DL_HFN(t) - UL_HFN(t) = DF_HFN(t) = 1, DL_CFN(t) = 120, UL_CFN(t) = 250 그리고 CFN_act = 110이라고 가정한다. 상기 두 경우 모두 DF_HFN(t) = 1이 되고, 동시에 UL_CFN(t)가 CFN_act 보다 큰 값이 되므로 암호화 시작 시간은 도달하였다고 판단할 수 있다. 그러나, 첫 번째 경우에는 DL_CFN 과 UL_CFN 이 한 주기 이상 차이 나지 않아야 하므로 UL_CFN 도 주기 경계(255로부터 0으로 넘어가고 HFN의 값이 1이 증가되는 경우)를 넘어섰다고 판정할 수 있으나 두 번째 경우에는 DL_CFN 과 UL_CFN 이 한 주기 이상 차이나지 않으므로 UL_CFN 이 주기 경계(255로부터 0으로 넘어가고 HFN의 값이 1이 증가되는 경우)는 넘어서지 않은 것을 알 수 있다.
(ii) UL_CFN(t)가 CFN_act 보다 작은 값을 가지는 경우
하향링크의 HFN의 값인 DL_HFN(t)가 UL_HFN(t) 보다 1 크다면 하향링크의 데이터에 대한 암호화 도달 시간이 경과한 상태이고, 이때 수신된 상향링크 CFN이 시작 시간 이전의 값이라면 상향링크 암호화 시작 시간의 도달 여부는 UL_CFN(t)와 DL_CFN(t)의 값을 비교해야 한다.
도 2D는 UL_CFN(t)가 CFN_act 보다 작은 경우 본 발명에 따른 상향링크 데이터에 대한 암호화 시작 시간의 도달 여부를 판단하는 방법에 대한 실시 예를 도시한 것이다.
도 2D의 첫 번째 경우에서 DF_HFN(t) = 1, DL_CFN(t) = 120, UL_CFN(t) = 110, CFN_act = 250이라고 가정한다. 암호화와 관련된 매개 변수가 상기와 같은 값을 가지는 경우 UL_CFN(t)는 DL_CFN(t) 보다 작은 값을 가진 경우에 해당하고 상향링크 CFN은 이미 시작 시간을 경과하여 CFN의 주기 경계(CFN의 값이 255에서 0으로 변경되면서 HFN의 값이 1이 증가되는 지점)를 지난 것으로 판단할 수 있다. 그러므로, UL_HFN(t)의 값은 1이 되도록 갱신되어야 한다. 상기 UL_HFN(t)의 값을 갱신하는 방법은 아래에서 상세히 설명한다. 이와는 달리, 도 2D의 두 번째 경우에서 DL_HFN(t) - UL_HFN(t) = DF_HFN(t) = 1, DL_CFN(t) = 120, UL_CFN(t) = 240 그리고, CFN_act = 250이라면, UL_CFN(t)가 DL_CFN(t)보다 큰 경우에 해당하고 상향링크 시작 시간이 도달하지 않은 것으로 결정한다.
(3) DL_HFN(t)와 UL_HFN(t)의 차이가 2 이상이 되는 경우
상향링크 데이터에 대한 암호화가 시작되지 않은 경우에는 UL_HFN(t)의 값은 항상 초기값을 유지한다. 만약 DL_HFN(t) - UL_HFN(t) ?? 2 인 경우라면 하향링크 CFN이 255에서 0으로 두 번 이상 변경되었다는 것을 의미한다. 본 발명에 따른 방법에서는 UL_CFN(t)와 DL_CFN(t)의 차이가 최대 1 주기 또는 1 사이클 이상의 차이가 나지 않는 것으로 가정하였다. 그러므로, UL_HFN(t)의 값은 초기값이 아닌 값으로 갱신되어야 하며, 이는 상향링크 데이터에 대한 암호화 시작 시간이 도달되었다는 것을 의미한다. 상기와 같은 경우 UL_HFN(t)의 값을 갱신하는 방법은 아래에서 상세히 설명한다.
2. HFN(Hyper Frame Number)을 갱신하는 방법
위에서 상세히 설명한 것처럼 RNC에서 상향링크 데이터를 수신한 경우 이미 암호화 시작 시점의 도달 여부가 결정되어야 한다. 상기 결정에서 상향링크 데이터에 대한 암호화 시작 시점이 도달되었다고 결정되었지만 UL_HFN(t)의 값이 초기값이면 DL_HFN(t)의 값에 따라 UL_HFN(t)의 값이 갱신되어야 할 경우가 발생한다. 특히, UTRAN의 RNC에서 FP 정지 모드(Frame Protocol Silent Mode)를 사용하는 경우 수신된 투명 모드(Transparent Mode : TM)의 RLC 데이터에 대한 해독 과정(Deciphering)을 정상적으로 수행하기 위해서는 정확한 상향 링크 HFN의 값이 결정되어야 한다. 상기 결정은 하향링크 CFN, 수신된 상향링크 CFN, 하향링크 HFN 및 상향링크 HFN에 기초하여 이루어진다.
이미 설명한 것처럼 하향링크의 데이터에 대한 CFN은 RNC가 관리하므로 하향링크 HFN의 값을 RNC에서 정확하게 결정될 수 있다. 즉, 하향링크 CFN의 값이 255로부터 0으로 변경되는 경우 하향링크 HFN의 값을 1씩 증가시키게 된다. 그러나, 만약 FP 정지 모두로 동작하는 경우라면, MS로부터 RNC로 전송되는 상향링크 프레임이 존재하지 않는 경우에는 상기 프레임에 포함되는 상향링크의 CFN이 RNC에 수신되지 않는다. 그러므로, 상기와 같은 경우에는 RNC에서 상향링크에 대한 HFN의 값을 정확하게 결정할 수 없다. RNC에 수신된 상향링크 데이터가 주기 경계를 지난 경우의 데이터라면 COUNT-C를 구성하는 HFN 값이 MS와 RNC에서 서로 다른 값을 가지게 되고, 이로 인하여 데이터의 복원 또는 해독이 정확하게 이루어지지 않을 수 있다.
상기와 같은 상황을 방지하기 위하여 본 발명에서는 아래와 같은 방법으로 RNC에서 상향 링크 데이터의 HFN이 갱신되도록 한다.
(1) 상향링크 CFN이 하향링크 CFN보다 작은 경우
RNC에서 상향링크 데이터가 수신된 경우, 상향링크 CFN의 값과 하향링크 CFN을 비교한다. 상기 비교의 결과, 상향링크 CFN이 하향링크 CFN보다 작은 경우라면 상항링크 데이터는 하향링크 데이터와 동일한 주기에 속하는 것으로 판단할 수 있다. 그러므로, DL_HFN(t) = UL_HFN(t)가 되어야 한다. RNC에서 관리하는 DL_HFN(t)가 초기값이 아닌 값이 되고, DF_HFN(t)가 1 이상이 된다면 UL_HFN(t)의 값을 DL_HFN(t)의 값과 일치되도록 UL_HFN(t)의 값을 갱신하여야 한다.
도 3A는 본 발명에 따른 방법을 사용하여 UL_HFN(t)의 값을 갱신하는 방법에 대한 실시 예를 도시한 것이다. 도 3A에서 만약 DL_CFN(t) = 100이 되고 UL_CFN(t) = 80이 된다면 상향링크의 CFN은 주기의 경계를 지난 것으로 판단된다. 그러므로, 상기와 같은 경우에 DF_HFN(t) = 0이 아닌 경우라면 UL_HFN(t)의 값을 갱신하여 DF_HFN(t)의 값이 0이 되도록 한다.
(2) 상향링크 CFN이 하향링크 CFN보다 크거나 같은 경우
상향링크 CFN이 하향링크 CFN보다 크거나 같은 경우라면, 상향링크 테이터는 하향링크 데이터와 동일한 주기에 속하지 않는 것으로 판단된다. 본 발명에 따른 방법에서는 하향링크의 CFN과 상향링크의 CFN은 한 주기 이상 차이가 나지 않는 것으로 가정한다. 그러므로, 상향링크의 HFN과 하향링크의 HFN이 차이로 표시되는 DF_HFN(t)도 1보다 큰 값을 가질 수 없다. 상기와 같은 경우에는 DF_HFN(t)가 1이 아니라면 UL_HFN(t)의 값을 갱신하여 상기 DF_HFN(t)의 값이 1이 되도록 하여야 한다.
도 3B는 본 발명에 따른 방법을 사용하여 UL_HFN(t)의 값을 갱신하는 다른 하나의 실시 예를 도시한 것이다. 도 3B에 도시된 실시 예에서 만약 DL_CFN(t) = 50이 되고, 그리고 UL_CFN(t)의 값이 200이라면 상향링크 데이터와 하향링크 데이터는 동일한 주기에 속하지 않는다. 그러므로, UL_CFN(t)의 값을 갱신하여 DF_HFN(t)의 값이 1이 되도록 설정한다.
3. 상향링크 암호화 수행 방법
RNC에서 상향링크 데이터가 수신된 경우, 상향링크 데이터의 암호화 시작 시간의 결정되고, 그리고 상기 결정에 따라 상향링크 데이터의 HFN이 갱신되어야 데이터의 복원이 이루어질 수 있다. FP 정지 모드로 동작하는 TM RLC에서의 본 발명에 따른 암호화 해독 과정은 아래와 같이 이루어진다.
MS 또는 UE로부터 RNC에 상향링크 데이터가 수신되면 먼저 상향링크 암호화 시작 시간에 도달했는지 여부가 결정되어야 한다. 만약 상향링크 데이터를 수신하기 이전에 이미 상향링크 암호화 시작 시간이 도달된 경우에는 본 발명의 방법에 따라 상향링크 데이터의 HFN이 갱신(Update)되어야 한다. 상기 갱신 절차를 통하여 RNC에서 HFN 값을 결정한 후 상향링크 데이터의 해독과정을 실행한다. 이와는 달리, 만약 RNC에서 상향링크 시작 시간에 도달한 적이 없다면, 본 발명의 방법에 따라 현재 수신한 데이터에 대하여 시작 시점 도달 여부가 결정되어야 한다. 상기 결정 절차를 통하여 상향링크 암호화 시작 시점 도달 여부가 결정되고, 상기 결정이 상향링크 시작 시점의 도달에 해당한다면 다시 본 발명의 방법에 따라 HFN 갱신 방법을 추가로 적용하여 상향링크 데이터의 해독 과정을 진행한다. 그러나, 상향링크 시작 시점이 도달하지 않았다고 결정되었다면 상향링크의 HFN값을 초기값으로 유지하고 해당 도달 시간에서 암호화 해독 과정을 진행한다.
위에서 본 발명에 따른 상향링크 데이터에 대한 암호화 시작 시점의 도달 여부의 결정 방법 및 상향링크 HFN의 갱신 방법에 대하여 상세히 설명하였다. 상기와 같은 본 발명에 따른 방법은 WCDMA 시스템에서 구체적으로 아래와 같은 실행된다.
도 4는 3GPP TS에서 규정된 암호화 방법을 도시한 것이다.
도 4에 도시된 암호화 알고리즘 f8은 키스트림(Keystream)을 적용하는 것에 의하여 일반텍스트(Plaintext)를 암호화하기 위한 것이다. 상기 방법으로 암호화된 일반텍스트는 동일한 입력 매개 변수를 사용하는 동일한 키스트림을 생성하는 것에 의하여 다시 회복된다.
도 4에서 COUNT_C는 32 비트의 길이를 가지는 암호화 서열 번호라는 것은 이미 설명한 바와 같다. CK는 128비트의 길이를 가지는 암화화 키(Cipher Key), 베어러는 5비트의 길이를 가지는 무선 베어러 식별자(Radio Bearer Identifer), 방향은 1비트 길이를 가지는 방향 식별자(Direction Identifier) 그리고, 16비트의 길이를 가지는 길이는 길이 표지(Length Indicator)를 각각 나타낸다.
상기와 같은 암호화 절차는 핵심망(Core Network)이 UTRAN에 포함되는 RNC로 보안 모드 명령 메시지를 전달함으로서 개시된다. 상기 메시지는 RNC에서 RRC 계층을 통해 UE에 전달된다. 상기 RRC 계층은 RNC와 UE를 연결하는 프로토콜 계층을 형성하며 RLC, MAC 등과 같은 서브-계층을 포함한다. 본 발명에 따른 암호화 방법은 RNC를 포함하는 UTRAN에서 수행될 수 있으며, 특히 RLC 서브-계층 또는 MAC 서브-계층에서 실행될 수 있다. 특히, 본 발명에 따른 방법은 투명 RLC 모드에 해당하는 경우에는 MAC 서브-계층에서 실행될 수 있다. 3GPP TS에서 규정된 것처럼, 본 발명에 따른 암호화 시작 시점의 결정은 오직 S-RNC(Serving-RNC) 및 ME(Mobile Equipment)에서만 알려질 수 있다.
도 5A는 도 4에 도시된 시스템에서 본 발명에 따른 시작 시점 도달 여부 결정 방법이 실행되는 절차를 도시한 것이다.
하향링크 및 상향링크 암호화 시작 시간 도달여부와 관련되는 dl_actFlag 및 ul_actFlag의 초기값은 0으로 설정된다.
RNC에 상향링크 데이터가 수신된 경우 DL 시작 도달여부를 확인하기 위하여 dl_actFlag의 값을 확인한다(S10). 상기 dl_actFlag 값이 0이되는 경우라면 상향링크 암호화 시작 시점이 개시되지 않은 것을 의미하므로 ul_actFlag 값을 0으로 유지하고(P10), 상향링크 데이터에 대한 암호화 개시 시점이 도달하지 않은 것이므로 절차를 종료한다. 상기 판단 과정(S10)에서 dl_actFlag 값이 0이 아니라면 DL_HFN(t)가 UL_HFN(t) 값과 동일하지 여부를 판단한다(S11). 상기 판단 과정(S11)에서 비교된 두 값이 동일하다면 UL_CFN(t)와 CFN_act가 비교된다(S111). 상기 비교 과정(S111)에서 UL_CFN(t)가 CFN_act 보다 크거나 같은 경우라면 UL 시작 시간이 도달한 것을 나타낸다. 그러므로, ul_actFlag 값을 1로 설정하고(P11) 절차를 종료한다. 그러나, 상기 비교 과정(S111)에서 UL_CFN(t)가 CFN_act 보다 작은 경우라면 UL 시작 시간이 도달하지 않은 것을 의미한다. 그러므로, ul_actFlag 값을 0으로 유지하고(P10) 절차를 종료한다.
DL_HFN(t)와 UL_HFN(t)의 비교 과정(S11)에서 비교 값이 동일하지 않다면 두 비교값의 차인 DF_HFN(t) = DL_HFN(t) - UL_HFN(t) 값이 1이 되는지 여부가 판단된다(S12). 상기 DF_HFN(t)가 1이 되는 경우에는 UL_CFN(t)와 CFN_act 값이 비교된다(S121). 상기 판단 과정(S121)에서 만약 UL_CFN(t)가 CFN_act(t)보다 크거나 같은 경우라면 UL 시작 시간이 이미 도달한 것을 나타내므로 ul_actFlag 값을 1로 설정하고(P11) 절차를 종료한다. 그러나, 상기 비교 과정(S121)에서 UL_CFN(t)가 CFN_act(t)보다 작은 경우라면 다시 UL_CFN(t)와 DL_CFN(t) 값이 비교된다(S122). 상기 비교 과정(S122)에서 UL_CFN(t)가 DL_CFN(t)보다 크거나 같은 경우라면 UL 시작 시간이 도달하지 않은 것이므로 ul_actFlag 값을 0으로 유지하고(P10) 절차를 종료한다. 그러나, 상기 비교 과정(S122)에서 UL_CFN(t) 값이 DL_CFN(t)보다 작은 경우라면 UL 시작 시간이 도달한 것을 의미하므로 ul_actFlag를 1로 설정하고(P11) 절차를 종료한다. 본 발명에 따른 도달 시간의 결정 방법에서는 DF_HFN(t)는 0보다 작은 값을 가질 수 없다. 즉, DL_HFN 이 UL_HFN 보다 항상 같거나 크게 되므로 DF_HFN(t) 가 0 이 아니고 (S11) DF_HFN(t)가 1 도 아니고 (S12) DF_HFN(t)가 2 보다 크거나 같지도 않은 경우에는 (S13) DF_HFN(t) 가 0 보다 작은 값을 의미하므로 각 변수 관리의 예기하지 못한 문제가 발생한 경우이므로 오류 내용을 출력하고 (P13) 절차를 종료한다. 만약 상기 DF_HFN(t)가 2 보다 같거나 큰 경우에는 UL_시작 시간이 도달한 것을 의미하므로 ul_actFlag 값을 1로 설정하고(P11) 절차를 종료한다. 상기 절차가 종료된 후에 아래에서 설명하는 UL_HFN(t)이 갱신 절차가 진행되어야 한다.
도 5B는 본 발명의 방법에 따른 UL_HFN(t)의 갱신 절차가 RNC에서 실행되는 과정을 도시한 것이다.
도 5B에 도시된 것처럼 본 발명에 따른 UL_HFN(t)의 갱신 절차는 DF_HFN(t) = DL_HFN(t) - UL_HFN(t)로 설정한(S20) 후 진행된다. 상기 설정(S20) 후, UL_CFN(t)와 DL_CFN(t)가 비교된다(S21). 상기 비교 과정(S21)에서 UL_CFN(t)가 DL_CFN(t)보다 크거나 같다면 DF_HFN(t)가 1인지 여부를 판단하여야 한다(S211). 상기 DF_HFN(t)가 1이라면 현재 UL_HFN(t) 값을 유지하고(P20) 절차를 종료한다. 그러나, 상기 DF_HFN(t)가 1이 아니라면 다시 DF_HFN(t)가 2와 같거나 또는 큰 값이 되는지 여부를 판단하여야 한다(S212). 상기 판단이 거짓(No)이 되는 경우라면 도 5A에서 설명한 것과 동일한 이유로 오류를 출력하여야 한다(P23). 그리고, 절차를 종료한다. 그러나, 상기 판단 과정(S212)에서 참(Yes)이 되는 경우라면 DF_HFN(t)의 값이 2 또는 2보다 큰 값이라는 것을 의미한다. 상기와 같은 경우에는 UL_HFN(t) 값을 UL_HFN(t) + DF_HFN(t) - 1로 설정하고(P22) 절차를 종료한다. UL_CFN(t)와 DL_CFN(t) 값의 비교 과정(S21)에서 UL_CFN(t)가 DL_CFN(t)보다 작은 경우라면 DF_HFN(t) 값이 0이 되는지 여부가 판단되어야 한다(S22). 상기 비교 과정(S22)에서 참(Yes)이 되는 경우라면 현재 UL_HFN(t) 값을 유지하고(P20) 절차를 종료한다. 그러나, 상기 비교 과정(S22)에서 거짓(No)으로 되는 경우라면 다시 DF_HFN(t)가 1보다 크거나 같은지 여부가 판단되어야 한다(S23). 상기 비교 과정(S23)에서 거짓이 된다면 DF_HFN(t) 가 0 보다 작은 값을 의미하므로 오류가 발생한 것이 된다. 그러므로, 오류를 출력하고(P23) 절차를 종료한다. 그러나, 상기 비교 과정(S23)이 참이 되는 경우에는 UL_HFN(t) 값은 갱신되어야 한다. 갱신된 UL_HFN(t) 값은 UL_HFN(t) + DF_HFN(t)가 되고(P21), 상기 갱신 과정(P21) 후 절차가 종료된다.
도 5C는 도 5A 및 도 5B에서 제시된 본 발명에 따른 방법을 사용하여 상향링크에 대한 암호화가 시스템에서 실행되는 과정을 도시한 것이다. 상기 실행은 이미 설명한 것처럼 RNC의 서브-계층에 해당하는 MAC에서 실행된다. 도 5A의 제시된 본 발명에 따른 방법이 실행되면 ul_actFlag 값은 0으로 유지되거나 새로운 값인 1로 설정된다. 본 발명에 따른 상향링크에 대한 해독 과정 또는 일반텍스트로의 회복 과정은 ul_actFlag 값이 1이 되는지 여부를 판단하는 것에 의하여 시작된다(S30). 상기 판단 과정(S30)이 참이 되는 경우이면 도 5B에서 제시된 UL 암호화 HFN 갱신 과정을 진행한다(S31). 상기 과정의 진행(S31) 후, UL HFN 값이 갱신되어 결정되면 RNC에서는 해독과정을 진행한다. 그러나, 상기 판단 과정(S30)에서 거짓이 되는 경우라면 도 5A에서 제시된 것과 같은 UL 암호화 시작 시간 도달 여부 결정함수를 실행하여야 한다(S32). 상기 함수의 실행(S32) 후 다시 ul_actFlag 값이 1이 되는지 여부가 판단된다(S33). 상기 판단 과정(S33)에서 ul_actFlag 값이 1이되는 경우라면 UL 암호화 HFN 갱신 함수를 실행하여(S31) UL_HFN(t)를 갱신하여야 한다. 상기 갱신 절차의 진행 후 해독 과정이 진행되는 것은 위와 동일하다. 상기 판단 과정(S33)이 거짓이 되는 경우라면 UL_HFN(t) 값은 갱신될 필요가 없으며 RNC에서는 UL 암호화 Activation Time 이 도달되지 않은 것으로 판단한다.
위에서 본 발명에 따른 UL 암호화 시작 시간의 도달 여부를 결정하는 방법 및 상향링크 데이터의 COUNT-C의 상위 24비트를 구성하는 HFN을 갱신하는 방법에 대하여 상세히 설명하였다. 또한, 상기 방법이 실행되는 시스템에 대해서도 함께 설명하였다. 상기와 같은 설명에서 제시된 실시 예는 예시적이 것으로서 다양한 변형 및 수정이 가능하다는 것은 자명하다. 그러므로, 본 발명의 범위는 상기와 같은 변형 및 수정에 의하여 제한되지 않는 것으로 이해되어야 한다.
본 발명에 따른 방법 및 시스템은 비동기 방식의 IMT-2000 시스템 또는 WCDMA 시스템에서 3GPP에서 정의된 투명 모드 RLC 데이터에 대한 암호화 기법을 적용할 때 FP 정지 모드를 이용할 수 있도록 한다. 상기와 같은 FP 정지 모드의 사용으로 인하여, 상향링크 데이터를 수신하는 RNC에서 부하를 감소시키는 것이 가능하다. 또한, 본 발명에 따른 방법 및 시스템을 적용함으로서 RNC에서는 정확한 상향링크 HFN 값을 결정할 수 있도록 하고, 이로 인하여 암호화된 일반 텍스트를 오류없이 회복시킬 수 있도록 함으로서 보다 나은 QoS가 제공된다.
도 1a은 3GPP TS에서 규정된 COUNT-C를 도시한 것이다.
도 1b는 암호화 제어(Ciphering Control)를 위한 RRC(Radio Resource Control) 기능의 진행과정을 도시한 것이다.
도 1c는 기지국(Node B)에서의 시간 차이의 발생 과정을 도시한 것이다.
도 2a는 DL_CFN(t)가 시작 시간보다 작은 경우 본 발명에 따른 방법에 의하여 상향링크의 암호화 시작 시간의 도달 여부를 결정하는 한 가지 실시 예를 도시한 것이다.
도 2b는 UL_HFN(t)가 DL_HFN(t)가 같은 경우 본 발명에 따른 상향링크의 데이터의 대한 암호화 시작 시간의 도달 여부의 판단 방법에 대한 하나의 실시 예를 도시한 것이다.
도 2c는 본 발명에 따른 DL_HFN(t)와 UL_HFN(t)의 차가 1이 되는 경우 본 발명의 방법에 따른 상향링크의 데이터에 대한 암호화 시작 시간 도달 여부를 판단하는 하나의 실시 예를 도시한 것이다.
도 2d는 UL_CFN(t)가 CFN_act 보다 작은 경우 본 발명에 따른 상향링크 데이터에 대한 암호화 시작 시간의 도달 여부를 판단하는 방법에 대한 실시 예를 도시한 것이다.
도 3a는 본 발명에 따른 방법을 사용하여 UL_HFN(t)의 값을 갱신하는 방법에 대한 실시 예를 도시한 것이다.
도 3b는 본 발명에 따른 방법을 사용하여 UL_HFN(t)의 값을 갱신하는 다른 실시 예를 도시한 것이다.
도 4는 3GPP TS에서 규정된 암호화 방법을 도시한 것이다.
도 5a는 도 4에 도시된 시스템에서 본 발명에 따른 시작 시간 도달 여부 결정 방법이 실행되는 과정을 도시한 것이다.
도 5b는 본 발명의 방법에 따른 UL_HFN(t) 갱신 절차가 RNC에서 실행되는 과정을 도시한 것이다.
도 5c는 도 5A 및 도 5B에서 제시된 본 발명에 따른 방법을 사용하여 상향링크에 대한 암호화가 시스템에서 실행되는 과정을 도시한 것이다.
Claims (22)
- WCDMA 시스템의 보안 절차에서 RLC 투명 모드(Transparent Mode)로서 정지 모드(Silent Mode)로 동작하는 경우 RNC에서 상향링크 데이터에 대한 암호화 시작 시간(Activation Time)의 도달 여부를 결정하는 방법에 있어서,특정 시간에서 상향링크 및 하향링크 데이터의 COUNT-C의 CFN 및 HFN을 결정하는 단계 및 상기 두 개의 HFN 값의 차이를 비교하는 단계를 포함하고,상기에서 하향링크의 CFN과 상향링크의 CFN은 1 주기 이상 차이가 나지 않는 것을 특징으로 하는 암호화 시작 시간 도달 여부를 결정하는 방법.
- 제1항에 있어서,상향링크 암호화 시작 시간에 대한 도달 여부를 나타내는 플랙을 설정하고, 상기 두 개의 HFN 값의 차이를 비교하는 단계는 상기 플랙 값에 따라 개시 여부가 결정되는 것을 특징으로 하는 도달 여부를 결정하는 방법.
- 제2항에 있어서,상기 플랙 값의 판단에 의하여 암호화 시작 시간이 도달하지 않은 것으로 판단되는 경우에는 플랙 값을 유지하고 도달 여부 결정 절차를 종료하는 것을 특징으로 하는 도달 여부를 결정하는 방법.
- 제1항에 있어서,두 개의 HFN 값이 차이를 비교하는 단계는 0이 되는 단계, 1이 되는 단계 및 2보다 크거나 같게 되는지 여부를 판단하는 단계로 순차적으로 진행되는 것을 특징으로 하는 도달 여부를 결정하는 방법.
- 제4항에 있어서,상기 순차적으로 진행되는 단계는 해당 단계에서 판단 여부에 따라 특정 시간에서 상향링크 CFN과 RNC에서 수신한 암호화 시작 시간을 비교하는 단계를 포함하는 도달 여부를 결정하는 방법.
- 제5항에 있어서,상기 상향링크 CFN과 암호화 시작 시간을 비교하는 단계에의 판단여부에 따라 상향링크 CFN과 하향링크 CFN을 비교하는 단계를 포함하는 도달 여부를 결정하는 방법.
- 제2항에 있어서,암호화 시작 시간의 도달여부의 결정 과정에서 시작 시간이 도달한 것으로 판단되는 경우에는 상기 플랙 값을 1로 설정하는 것을 특징으로 하는 도달 여부를 결정하는 방법.
- WCDMA 시스템의 보안 절차에서 RLC 투명 모드(Transparent Mode)로서 정지 모드(Silent Mode)로 동작하는 경우 RNC에서 상향링크 데이터에 대한 COUNT-C의 HFN을 갱신하는 방법에 있어서,특정 시간에서 상향 링크와 하향 링크의 HFN 값의 차이를 결정하는 단계;특정 시간에서 상향링크 COUNT-C의 CFN과 하향링크 COUNT-C의 CFN을 비교하는 단계; 및상기 CFN의 비교 값에 따라 HFN 값의 차이의 크기를 판단하는 단계를 포함하는 상향링크 데이터의 COUNT-C의 HFN을 갱신하는 방법.
- 제8항에 있어서,상기 HFN 값의 차이의 크기를 판단하는 단계는 크기 순서에 따라 순차적으로 진행되는 것을 특징으로 하는 HFN을 갱신하는 방법.
- 제9항에 있어서,상향링크 CFN 값이 하향 링크 CFN 값보다 작은 경우에는 상기 크기 순서는 0부터 진행되는 것을 특징으로 하는 HFN을 갱신하는 방법.
- 제10항에 있어서,상향링크 HFN의 갱신은 상향링크 HFN의 현재 값에 하향링크 HFN 값과 상향링크 HFN 값의 차를 더한 값으로 이루어지는 것을 특징으로 하는 HFN을 갱신하는 방법.
- 제9항에 있어서,상향링크 CFN 값이 하향링크 CFN 값보다 크거나 같은 경우에는 상기 크기 순서는 1부터 진행되는 것을 특징으로 하는 HFN을 갱신하는 방법.
- 제12항에 있어서,상향링크 HFN의 갱신은 상향링크 HFN의 현재 값에 하향링크 HFN 값과 상향링크 HFN 값의 차를 더하여 1을 감소시킨 값으로 이루어지는 것을 특징으로 하는 HFN을 갱신하는 방법.
- WCDMA 시스템의 보안 절차에서 RLC 투명 모드(Transparent Mode)로서 정지 모드(Silent Mode)로 동작하는 경우 RNC에서 상향링크 데이터에 대한 암호화를 수행하는 방법에 있어서,상향링크 암호화 시작 시점을 도달여부가 설정된 플랙값을 판단하는 단계;상기 플랙 값의 판단에 따라 상향링크 암호화 시작 시간의 도달에 대한 판단 여부를 결정하는 단계; 및상향링크 데이터의 COUNT-C를 구성하는 HFN을 갱신하는 단계를 포함하고,상기에서 암호화 시작 시간의 도달은 특정 시간에서 상향링크 및 하향링크 데이터의 COUNT-C의 CFN 및 HFN을 결정하는 단계 및 상기 두 개의 HFN 값의 차이를 비교하는 단계를 포함하는 암호화를 수행하는 방법.
- 제14항에 있어서,상기 HFN을 갱신하는 단계는,특정 시간에서 상향 링크와 하향 링크의 HFN 값의 차이를 결정하는 단계;특정 시간에서 상향링크 COUNT-C의 CFN과 하향링크 COUNT-C의 CFN을 비교하는 단계; 및상기 CFN의 비교 값에 따라 HFN 값의 차이의 크기를 판단하는 단계를 포함하는 암호화를 수행하는 방법.
- 제14항에 있어서,상기 플랙 값의 판단에서 암호화 시작 시간이 도달된 것으로 판단되는 경우에는 HFN을 갱신하는 단계로 진행되는 것을 특징으로 하는 암호화를 수행하는 방법.
- 제14항에 있어서,상기 플랙 값의 판단에서 암호화 시작 시간이 도달되지 않은 것으로 판단되는 경우에는 상향링크 암호화 시작 시간의 도달여부를 결정하는 단계로 진행되는 것을 특징으로 하는 암호화를 수행하는 방법.
- WCDMA 시스템의 보안 절차에서 RLC 투명 모드(Transparent Mode)로서 정지 모드(Silent Mode)로 동작하는 경우 상향링크 데이터에 대한 암호화 시작 시간(Activation Time)의 도달 여부를 결정하는 UTRAN 시스템에 있어서,하향링크 및 상향링크 암호화 시작 시간 도달 여부를 나타내는 플랙을 설정하고, 상기 설정된 플랙에 따라 특정 시간에서 상향링크 및 하향링크 데이터의 COUNT-C의 CFN 및 HFN을 결정하는 단계 및 상기 두 개의 HFN 값의 차이를 비교하는 단계를 실행하여 암호화 시작 시간의 도달여부를 결정하는 RNC를 포함하는 UTRAN 시스템.
- 제18항에 있어서,상기 RNC는 특정 시간에서 상향 링크와 하향 링크의 HFN 값의 차이를 결정하고,특정 시간에서 상향링크 COUNT-C의 CFN과 하향링크 COUNT-C의 CFN을 비교하는 단계, 상기 CFN의 비교 값에 따라 HFN 값의 차이의 크기를 판단하는 단계 및 상기 판단에 따라 상향링크 COUNT-C의 HFN을 갱신하는 단계를 실행하는 RNC를 포함하는 UTRAN 시스템.
- 제19항에 있어서,상기 RNC는 갱신된 HFN을 사용하여 수신된 상향링크 데이터를 해독하는 것을 특징으로 하는 URTAN 시스템.
- 제18항에 있어서,상기 RNC는 RRC 계층으로 ME(Mobile Equipment)와 연결되는 것을 특징으로 하는 UTRAN 시스템.
- 제18항에 있어서,상기 암호화 시작 시간의 도달여부의 결정은 RLC 서브 계층 또는 MAC 계층에서 이루어지는 것을 특징으로 하는 UTRAN 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040028044A KR101069751B1 (ko) | 2004-04-23 | 2004-04-23 | 비동기식 이동통신시스템에서 상향링크 데이터의 암호화 처리 방법 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040028044A KR101069751B1 (ko) | 2004-04-23 | 2004-04-23 | 비동기식 이동통신시스템에서 상향링크 데이터의 암호화 처리 방법 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050102785A true KR20050102785A (ko) | 2005-10-27 |
KR101069751B1 KR101069751B1 (ko) | 2011-10-04 |
Family
ID=37280873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040028044A KR101069751B1 (ko) | 2004-04-23 | 2004-04-23 | 비동기식 이동통신시스템에서 상향링크 데이터의 암호화 처리 방법 및 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101069751B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101541079B1 (ko) * | 2009-02-09 | 2015-07-31 | 삼성전자주식회사 | 이동통신시스템에서 상향 링크 데이터의 암호화처리 장치 및 방법 |
-
2004
- 2004-04-23 KR KR1020040028044A patent/KR101069751B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101541079B1 (ko) * | 2009-02-09 | 2015-07-31 | 삼성전자주식회사 | 이동통신시스템에서 상향 링크 데이터의 암호화처리 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR101069751B1 (ko) | 2011-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1264506B1 (en) | Counter initialization, particularly for radio frames | |
JP4688808B2 (ja) | 移動体通信システムにおける暗号化の強化セキュリティ構成 | |
TWI262010B (en) | Ciphering activation during an inter-rat handover procedure | |
US7233671B2 (en) | Method for storing a security start value in a wireless communications system | |
US8565432B2 (en) | Communications system | |
JP5774096B2 (ja) | エアインターフェースキーの更新方法、コアネットワークノード及び無線アクセスシステム | |
US20050265551A1 (en) | Wireless communication system and encryption control method | |
JP4856380B2 (ja) | 暗号同期(cryptosync)を生成する方法 | |
KR101069751B1 (ko) | 비동기식 이동통신시스템에서 상향링크 데이터의 암호화 처리 방법 및 시스템 | |
KR101541079B1 (ko) | 이동통신시스템에서 상향 링크 데이터의 암호화처리 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20140828 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20150828 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20160830 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |