DOI QR코드

DOI QR Code

Vulnerability Analysis on User Authentication Protocol with User Anonymity for IoT-Based Healthcare

익명성을 보장하는 IoT 기반 헬스케어 사용자 인증 프로토콜의 취약점 분석

  • 성재현 (인제대학교 컴퓨터공학부) ;
  • 이학준 (경남대학교 컴퓨터공학부) ;
  • 최윤성 (인제대학교 AI소프트웨어학부 )
  • Received : 2024.05.09
  • Accepted : 2024.07.03
  • Published : 2024.10.31

Abstract

With the development of the Internet, we have reached the era of IoT that communicates with various things beyond PCs and mobiles. In particular, its use in medical services, ㄴㄴ in line with the growth of the wearable device market, easily collects various health information such as heart rate, exercise, and sleep patterns in real time, and doctors use it to analyze the patient's information and prescribe it for treatment. In this process, the security of communication that prevents the patient's personal information and collected biometric information between communications has also become an important part to be managed. Among them, Masud et al. proposed a protocol for the security of the IoT medical system. Since then, Chen Chien-Ming et al. have confirmed that there are various vulnerabilities in the protocol proposed by Masud et al., and proposed an improved lightweight IoT protocol by deleting duplicate parameters and reducing communication. In this paper, by analyzing the operation process and vulnerabilities of the protocol proposed by Chen Chien-Ming et al., it was revealed that the protocol proposed by Chen Chien-Ming et al. is vulnerable to Offline Password Guessing Attack, Lack of Perfect Forward Secrecy, Bit Mismatch, User Specific Error at Multi User, and Weak Anonymity at Update.

인터넷의 발전으로 PC, 모바일을 넘어 다양한 사물과 통신하는 IoT의 시대에 이르렀다. 특히 의료 서비스에서의 활용은 웨어러블 기기 시장의 성장과 맞물려 심박수, 운동량, 수면 패턴과 같은 다양한 건강정보를 쉽게 실시간으로 수집하고 의사는 이를 활용해 환자의 정보를 분석하여 진료와 처방하고 있다. 이 과정에서 통신 간의 환자의 개인정보와 수집한 생체 정보가 노출되지 않도록 하는 통신의 보안성 또한 중요하게 관리해야 하는 부분이 되었다. 그중 IoT 의료 시스템의 보안성을 위한 프로토콜을 Masud 등이 제안하였다. 이후 Chen, Chien-Ming 등은 Masud 등이 제안한 프로토콜에 다양한 취약점이 있음을 확인하고 중복된 매개 변수를 삭제하고 통신을 경량화하여 향상된 경량화 IoT 프로토콜을 제안하였다. 본 논문에서는 Chen, Chien-Ming 등이 제안한 프로토콜의 동작 과정과 취약점을 분석하여, Chen, Chien-Ming 등이 제안한 프로토콜이 Offline Password Guessing Attack, Lack of Perfect Forward Secrecy, Bit Mismatch, User Specific Error at multi User, Weak Anonymity at Update에 취약하다는 것을 밝혔다.

Keywords

1. 서론

인터넷의 등장 이후, 컴퓨터 간에 일어나던 통신은 기술의 발전으로 모바일을 거쳐 IoT 시대로 발전하였다. 사람 간의 통신과 정보 교환이라는 역할을 컴퓨터와 모바일을 거쳐 다양한 사물도 상호 교환을 거쳐 통신이 가능한 시대가 되었다[1][2].

IoT는 가정을 넘어 전력, 교통, 화재 대응과 같은 큰 규모의 공적 설비 분야에도 녹아들었으며, 이제는 의료 서비스를 포함한 기타 서비스에도 조금씩 활용이 되어가면서, 점점 그 범위를 넓히며 활용되고 있다[3]. 특히 의료 및 보건 분야에서 큰 잠재력을 가지고 있다[4]. 웨어러블 기기 시장의 성장과 맞물려 손목시계 형태의 워치가 대표적이며, 다양한 종류의 기기들이 자원 및 장비 정보, 약물 정보와 환자 정보의 디지털 처리와 공유를 편리하게 해주며 심박수 체크, 수면 패턴과 같은 생체 정보를 모니터링하고 이 정보들을 병원과 의사가 빠르고 다양하게 볼 수 있게 되며, 이를 통해 환자에게 더 알맞은 처방을 내릴 근거가 된다. 또한 비대면으로 진단과 처방을 통해 직접적인 접촉을 효과적으로 줄이고 진료 단계의 간소화에 큰 역할을 한다[5][6]. 그와 동시에 IoT를 기반으로 한 의료서비스의 도입으로 환자의 개인정보와 생체 정보 등의 보안과 안전한 전송, 개인정보 유출 등에 대한 우려 또한 주요 관심사로 부상하였다.

He et al[7].은 저전력의 모바일 기기로 사용이 가능한 원격 의료 정보 시스템 구성에 더 적합한 프로토콜을 제안했다. 이후 Wei et al.[8]은 위 프로토콜의 취약점을 발견하고 원격 의료 정보 시스템에 대한 개선된 인증 프로토콜을 제안했으며, sharma et al[9].은 간단한 사용자 인증 프로토콜을 제안하였다. Canetti et al[10].은 sharma et al[9].의 프로토콜이 privilege insider attacks에 취약점이 존재하는 것을 발견했다. 이후 IoT 의료 시스템의 보안성을 위한 프로토콜을 Masud et al[11]이. 제안했으나, 제안한 프로토콜이 Replay Attack, sensor node capture attacks에 취약하다는 것을 Chen, Chien- Ming, et al[12].이 발견하고 이를 보완한 프로토콜을 제안하였다.

그러나 본 논문에서 위의 공격들이 Offline password Guessing attack, Bit Mismatch, Specific Error at multi User, Weak Anonymity at Update 등의 취약점이 있으며, Perfect forward secrecy를 보장하지 못하는 것을 발견했다. 본 논문에서는 먼저 Chen, Chien-Ming, et al[12]. 이 제안한 프로세스의 동작 과정을 분석하고 프로세스의 동작 과정이 앞서 언급한 5가지 취약점을 분석한다.

2. 관련 연구

2.1 IoT-based Healthcare Environment

IoT 기술이 출현하고 발전함에 따라 건축, 전력, 화재 예방과 같은 다양한 분야로 확장되어 활용되고 있다. 그중에서도 IoT를 기반으로 하는 헬스케어는 웨어러블 기기를 비롯한 스마트 디바이스와 IoT 기기들을 활용하여 아래의 (그림 1)과 센서들을 통해 내원하지 않고 진단하는 시스템 모델들이 제안되고 시험 운영되고 있다[13].

SOBTCQ_2024_v24n4_49_2_f0001.png 이미지

(그림 1) IoT Architecture for Healthcare System

환자 주변의 IoT 기기로부터 정보를 실시간으로 수집하고, 이를 병원에 있는 Gateway에 전송하며, 의사는 Gateway로 전송된 환자의 정보를 바탕으로 효과적인 진료가 가능하다. 이때, Gateway에 등록된 환자와 의사는 신원의 검증을 거치고 등록된 인증된 사용자이며, 개인정보의 보호를 위하여 다양한 보안 방법들이 제안되고 있다.

2.2 Perfect Forward Secrecy

Perfect forward secrecy(이하 PFS)란, A, B라는 사람 사이에서 일어난 통신을 공격자 C가 탈취하더라도 과거의 일어난 통신의 내용을 해석하지 못하게 하는 것을 말한다.

IoT라는 이름에 걸맞게 다양한 전자기기와의 실시간 통신을 통해 정보를 취합하고 관리하는 목적에 맞게 여러 가지 환경으로 발전하고 있지만, 그만큼 보안 또한 고려해야 한다[14].

보안성을 높이기 위해 장기적으로 사용되는 키(Long-term Key)의 유출을 경계해야 하며, 만약 이 킷값이 유출되어 공격자 C가 과거 통신을 유추할 수 있게 되면, 이 통신은 PFS를 만족하지 못하는 것이다.

2.3 통신의 익명성

익명성이란, 인터넷의 통신 과정에서 개인정보가 유출되거나 특정 못 하도록 하는 것을 말한다. 그 강도의 차이에 따라 강 약을 구분할 수 있다. IoT에서도 적용되는 개념이다[15].

‘강한 익명성’은 사용자의 신원 혹은 개인정보를 완전히 숨겨 노출 혹은 추적이 불가능하도록 하는 것이다.

‘약한 익명성은’ ID와 같은 일부 정보가 노출 혹은 공개되어 있고, 이를 통해 추적 또는 사용자 정보의 유추가 되는 것을 말한다.

3. 프로토콜 동작 분석

Chien-Ming chen의 논문에서는 사용한 용어 및 기호 정보는 아래의 <표 1>과 같다. 해당 논문의 프로토콜은 총 4가지 단계로 구성 되어있으며, 동작 분석은 배포 전 단계, 사용자등록 단계, 센서 등록 단계, 로그인 및 인증 단계의 순서로 진행한다.

<표 1> 프로토콜의 기호 정의

SOBTCQ_2024_v24n4_49_3_t0001.png 이미지

3.1 배포 전 단계

프로토콜의 가장 최우선 단계이며, Gateway는 최초 생성 키값 RG를 생성하고 안전한 비밀 채널을 통해 사용자와 센서에 해당 값을 전송한다.

3.2 사용자등록 단계

프로토콜을 사용할 사용자의 등록 과정이다. 아래의 (그림 2)와 같이 사용자와 Gateway의 통신을 통해 사용자를 등록하게 된다.

SOBTCQ_2024_v24n4_49_3_f0001.png 이미지

(그림 2) 사용자등록 단계[12]

① User는 사용할 ID, PW을 입력한다. 이후 사용할 임의의 N1을 선정하고, 아래의 3가지 연산을 수행한다.

RID = ID⊕RG ........................(1)

RPW = h(PW||N1||ID) .........(2)

X = N1⊕ID ..............................(3)

이후, 사용자는 사용자등록 요청(Rreq)을 생성 후, RID, RPW, Rreq을 Gateway에 전송한다.

② Gareway는 비밀 난수값 G1을 생성하고 사용자로부터 받은 값으로 아래의 식을 수행한다.

A1 = RG⊕(RID||RPW) ........................(1)

A2 = (RID||RPW)⊕G1⊕RG ..............(2)

GTID = G1⊕RID .....................................(3)

이를 통해 얻은 A1, A2, DTID와 사용자에게 받은 RID을 Gateway에 저장하고, 사용자에게 A2을 전송한다. G1을 바로 전송하지 않고, A2라는 값으로 전송하는 이유는 통신 과정에서 G1을 노출하지 않기 위해서이다.

③ 사용자는 받은 A2을 역산하여 G1을 획득한다. 이후 아래의 2가지 식을 수행하여 사용자는 DTID, D을 계산하고 G1, DTID, D, X을 사용자의 메모리에 저장한다.

GTID = G1⊕RID .....................................(1)

D = h(RPW||G1)⊕DTID .......................(2)

3.2 센서 등록 단계

사용자등록 단계 이후, 센서 등록 단계로 진행된다. 앞선 단계와 마찬가지로 Gateway와 통신으로 진행되며 과정은 아래의 (그림 3)과 같다.

SOBTCQ_2024_v24n4_49_4_f0001.png 이미지

(그림 3) 센서 등록 단계[12]

① 센서는 사용할 센서의 ID(SID)와 무작위 난수값 S1을 선정한다. 이후 SID′ = SID⊕RG을 계산하고, Gateway로 SID′, S1을 전송한다.

② Gateway는 랜덤 비밀 값 G2을 선정하고 B = RG⊕G2을 수행한다. B의 계산이 끝나면 아래의 식 (1), (2)을 연산한다.

O = (SID'⊕G2)⊕S1⊕RG .........(1)

STID = G2⊕SID' ...........................(2)

이후 Gateway에 O, B, STID, SID′ 을 저장하고, 센서로 O을 전송한다.

③ 센서는 Gateway로부터 수신한 O을 아래의 식 (1)과 같이 역산하여 G2을 도출한다. 연속해서 STID을 얻는 식(2)도 연산한다. 이후 센서는 S1과 STID을 저장한다.

G2 = (O⊕S1)⊕SID'⊕RG .........(1)

STID = G2⊕SID' ...........................(2)

3.3 로그인 및 인증 과정

사용자의 로그인 및 인증 과정이다. (그림 4)와와 같이 진행되며 앞선 등록 과정에서 각각에 저장된 값을 비교하고 활용하는 연산도 존재하며, ‘배포 전 단계’에서 배포된 RG을 제외하고 각 노드에 저장된 값은 아래의 <표 2>와 같다.

SOBTCQ_2024_v24n4_49_5_f0001.png 이미지

(그림 4) 로그인 및 인증 과정[12]

<표 2> 등록 과정 이후 각 노드에 저장된 값

SOBTCQ_2024_v24n4_49_5_t0001.png 이미지

① 사용자는 자신의 ID, PW을 입력한다. 입력한 두 값의 정상적인 사용자인지의 판별을 위해 아래의 식 5개를 수행한다.

N1 = X⊕ID .....................................(1)

RID = ID⊕RG .................................(2)

RPW = h(PW||N1||ID) ..................(3)

D1 = h(RPW||G1)⊕DTID ..............(4)

SID' = SID⊕RG ...............................(5)

이때, 연산을 진행하고 얻은 D1과 사용자등록 과정에서 사용자 메모리에 저장된 D을 비교 검증을 진행한다. 일치한 경우, 정상적인 사용자의 ID, PW라고 판단하고 다음의 식(6)을 연산하여 통해 K를 얻는다. 이후, Gateway로 SID′, K을 전송한다.

K = h(G1||RPW) ................(6)

② Gateway는 사용자로부터 받은 K의 검증을 위하여 계산식 K′ = h(G1||RPW)을 연산하고, K, K′을 비교 검증한다. 일치하는 경우, 센서로 전송할 세션키(SK)와 G1, G2을 통신 과정에서 숨겨 전송하기 위해 각각 SKS, Y1, Y2으로 아래의 3개의 식의 연산을 통해 변형한다.

Y1 = G1⊕STID ..................................(1)

Y2 = h(S1⊕G2) ..................................(2)

SKS = (SK⊕S1)⊕G1⊕O⊕G2 .......(3)

Gateway는 연산을 통해 얻은 SKS, Y1, Y2와 기존에 저장되어 있던 STID까지 총 4개의 값을 센서로 전송한다.

③ 센서는 수신한 값들을 정상적인 Gateway로부터 수신했는지 검증을 진행한다.

G1 = Y1⊕STID ..................................(1)

Y'2 = h(S1||G2) ..................................(2)

센서는 수신했던 Y1, STID으로 식(1)을 연산하고, 저장된 값으로 식(2)을 연산한다. 여기서 Y′2을 수신한 Y2와 비교하여 비교 검증을 진행한다. 참인 경우,

SK = (SKS⊕S1)⊕G1⊕G2⊕O ....(1)

Z = h(G1||S1||SK) ..............................(2)

SnewTID = G1⊕SID ............................(3)

식(1)을 통해 세션 키를 도출하고, 식(2)의 연산을 바로 진행한다. 식(3)은 STID을 새롭게 갱신하는 연산이며, 갱신한 STID는 저장하고, 식 (2)을 연산하여 얻은 Z을 Gateway로 전송하는데, Z라는 값으로 연산하여 전송하는 이유는 세션 키(SK)을 숨기기 위해서이다.

④ Gateway는 센서로부터 수신한 Z에 대한 검증을 가장 먼저 진행하게 된다. 검증을 위하여 Z′을 아래의 식(1)과 같이 연산하는데 연산에 필요한 G2, S1, SK는 앞선 과정에서 Gateway에 저장되어 있다.

Z' = h(G1||S1||SK) ....................(1)

이 과정은 자신이 보냈던 정상적인 센서로부터의 회신인지를 검증하는 것이다. 검증 결과가 참인 경우, Gateway도 SID의 갱신을 아래의 식(2), (3)을 통해 진행하고 갱신한 SIDnew을 저장한다.

SID = SID'⊕RG..............................(2)

SIDnew = G1⊕SID .........................(3)

이제 사용자에게도 세션 키(SK)을 전송하기 위해 아래의 3개의 식을 연산한다.

u = RID'⊕G1 .........................................................(4)

SKu = (SK⊕RPW)⊕G2⊕A2 ............................(5)

n = h(RID||RPW||SK||G1)....................................(6)

각각의 3개의 값은 각각 정상적인 Gateway인가를 판별하는 u, 사용자에게 보낼 세션 키를 숨기는 SKU, 세션 키의 변조 여부를 확인할 수 있는 n을 연산을 통해 구해진다. Gateway는 IDnew = G1⊕ID을 수행하여 ID을 갱신하고 저장한다. 이러한 갱신이 완료되면 사용자에게 n, u, SKu을 전송한다

⑤ 사용자는 받은 u에서 G'1을 도출하고 사용자 메모리에 저장되어 있던, G1과 비교 검증을 진행한다. 이상이 없다면 SKu에서 세션 키를 도출하는 식(1)과 n′을 계산하는 식(2)을 수행한다. 이때, 식(2)에서 사용하는 RID, G1, RPW는 사용자에게 이미 저장된 값들이다. 이를 통해 획득한 SK는 전송 받은 n을 이용하여 한번 더 검증을 진행한다. 아래의 식(3)을 통해 n′을 계산하고, 전송받은 n과 비교 검증을 진행한다.

G'1 = u⊕RID..........................................................(1)

SK = SKu⊕RPW⊕G1⊕A2 ..............................(2)

n' = h(RID||RPW||SK||G1)..................................(3)

비교검증 결과 문제가 없다면, 사용자는 ID 갱신한다. 이때, G1⊕ID을 수행하여 IDnew 계산하고 이를 저장한다.

4. 취약점 분석

4.1 Offline Password Guessing Attack

공격자가 사용자의 메모리 혹은 사용자의 정보가 담긴 스마트카드를 취득하고, 내부의 모든 정보를 얻어냈다고 가정할 때, 본 논문에서 제시하는 공격을 통해서 사용자의 패스워드를 추측할 수 있다.

위 프로토콜의 로그인 인증 단계에서 D값을 통해 사용자를 검증하게 되는데, 사용자 메모리의 저장된 값들과 입력한 ID, PW을 이용하여 계산한 D1과 저장된 D을 비교하여 유효성을 검증한다.

SOBTCQ_2024_v24n4_49_7_f0001.png 이미지

(그림 5) Offline Password Guessing attack

공격자가 스마트카드 혹은 메모리를 취득하여 {G1, DTID, D, X}을 알아내었다면 아래와 같은 식들을 활용하면, 식(3)을 변형하여 식(4‘)을 유도 해낼 수 있다.

N1 = X⊕ID ................................................(1)

RPW = h(PW||N1||ID) ............................(2)

D = h(RPW||G1)⊕DTID ..........................(3)

D = h(h(PW||N1||ID)||G1)⊕DTID

D = h(h(PW||(ID⊕X)||ID)||G1)⊕DTID ...(4')

즉, 공격자는 ID, PW을 제외한 G1, DTID, X을 사용자의 메모리를 취득하여 알아내었기 때문에 ID, PW을 유추할 수 있다.

4.2 Lack of Perfect Forward Secrecy

프로토콜의 인증 과정상에서 long-term key 집합 중 하나가 노출되어도 이전 세션 키의 기밀성은 유지되어야 하며, 이 경우, Perfect Forward Secrecy를 만족했다고 한다.

본 프로토콜에서는 RG을 공격자가 알게 되는 경우, 세션 키의 역산이 가능하므로 Perfect Forward Secrecy를 만족하지 못한다.

SOBTCQ_2024_v24n4_49_7_f0002.png 이미지

(그림 6) Lack of Perfect forward secrecy

공격자는 사용자와 Gateway 간의 인터넷 통신에서 SID′, Gateway와 센서 간의 통신에서 Y1, Y2, STID, SKS을 얻을 수 있다. 탈취한 값들을 활용하여 세션 키를 구하는 과정은 아래의 식 (2), (3), (4’)을 식(1)에 대입하여 진행된다.

SK = (SKS⊕S1)⊕G1⊕O⊕G2 ..........................................................(1)

G1 = Y1⊕STID ........................................................................................(2)

G2 = SID'⊕STID .....................................................................................(3)

O = SID'⊕G2⊕S1⊕RG ........................................................................(4)

=> S1⊕O = SID'⊕G2⊕RG ..................................................................(4')

∴ SK = SKS⊕Y1⊕STID⊕SID'⊕STID⊕SID'⊕SID'⊕STID⊕RG ..(5)

위의 식에서 long-term key인 RG을 알고 있다고 가정할 때, SID′ Y1, Y2, STID, SKS은 공개 통신망에서 얻을 수 있으므로, SK을 계산할 때 필요한 모든 정보를 알게 되어 연산할 수 있게 되므로 Perfect Forward Secrecy를 보장하지 못한다.

4.3 Bit Mismatch

본 논문에서 분석한 프로토콜은 여러 가지 값의 연산 과정에서 XOR 연산을 빈번하게 진행한다. 이때, XOR 연산을 위해서는 연산하는 2개의 값의 길이가 동일 해야 한다.

SOBTCQ_2024_v24n4_49_8_f0001.png 이미지

(그림 7) Bit Mismatch

RG값은 배포 전 단계에서 생성한 비밀 값이다. 하지만 RG을 활용하는 아래의 2개의 식에서 Bit Mismatch가 발생할 수 있다.

RID = ID⊕RG .................................(1)

A2 = (RID⊕RPW)⊕G1⊕RG .....(2)

RPW = h(PW||N1||ID) ..................(3)

RG는 RID, A2의 계산에서 각각 XOR 연산을 한다. 이때, RPW은 Hash 연산을 진행하기 때문에, 192, 256과 같은 고정된 길이의 bit를 가진다. 그러므로 RID와 RG도 같은 길이의 bit를 갖는다고 유추할 수 있다. 일반적으로 사용자가 입력하고 기억하는 ID의 길이는 Hash 연산을 진행한 결과의 길이인 192bit, 256bit보다 짧으므로, RG와는 길이가 일치하지 않아 Bit Mismatch가 발생할 수 있다. 반대로 ID와 RG의 길이가 같다면, A2의 계산을 진행할 때 Bit Mismatch가 발생할 것이다.

4.4 User Specific Error at Multi User

해당 프로토콜은 익명성을 보장한 IoT 통신에 관한 프로토콜이다. 특정 사용자만이 사용하는 경우는 상관없으나, 2명 이상의 사용자가 해당 통신하는 경우, 취약점이 발생할 수 있다.

로그인 인증 과정에서, Gateway는 사용자로부터 K, SID′을 수신한다. 이때, Gateway는 K′을 연산하여 수신한 K와 비교하는 과정을 진행하는 데 사용자가 1명으로 특정된 경우, Gateway에도 RPW가 저장이 되어 있다면 해당 RPW로 연산하여 사용자의 식별이 가능하나, 사용자가 2명 이상이 사용하는 경우, 사용자 A의 KA인지, 사용자 B의 KB인지 통신 과정에서 사용자 식별 불가능하다.

SOBTCQ_2024_v24n4_49_8_f0002.png 이미지

(그림 8) User Specific Error at multi User

4.5 Weak Anonymity at Update

위의 로그인 인증 과정의 후반에 ID, SID을 각각 갱신한다. 이때, Gateway가 사용자등록 과정에서 생성한 비밀 난수 값 G1과 XOR 연산한 값을 갱신한 값으로써 저장한다.

XOR 연산의 특징 중 하나로, A⊕B = C일 때, (A⊕B)⊕B=A와 같이 같은 값을 2번 XOR 연산하면 원문이 그대로 나오는 특징이 있다. 그러므로 처음 ID, STID에 G1을 XOR 연산을 수행했을 때는 IDnew, SnewTID로 갱신이 성공적으로 진행되지만, 거기에 한 번 더 G1과의 연산을 진행하면, 갱신되기 전의 값인 ID, STID으로 돌아오게 된다. 공격자가 이를 파악했을 경우, 이전 통신의 추측과 앞으로 진행될 통신을 예측할 수 있다.

위와 같이 통신 내용을 추측하게 되면 익명성의 보장되지 못하는 문제가 발생하는데, 익명성이란 통신 과정의 내용을 통해 개인의 신원 혹은 정보를 특정하지 못하도록 하는 것이다. 하지만 ID, SID가 2개의 값으로 반복되는 구조가 된다면 유추 가능해지고 ID를 통해 유추를 시도할 수 있는 ‘약한 익명성’이 된다.

또한, 공격자가 {ID, IDnew}, (STID, SnewTID)와 같이 변경 전후의 값을 얻었다면 해당 2개의 값을 XOR 연산하여 G1값을 도출할 수도 있다.

SOBTCQ_2024_v24n4_49_9_f0001.png 이미지

(그림 9) Weak Anonymity at Update

5. 결론

Chen, Chien-Ming, et al.은 Mashud, et al.이 제안한 IoT 의료 시스템의 보안을 위한 프로토콜을 분석하여, 내부 권한 공격, 센서 노드 캡처 공격, 도난 검증 공격에 대하여 저항성이 약하며, Perfect Forward Secrecy를 보장하지 못한다는 취약점을 발견하였고, 이를 보완한 프로토콜을 제시했다. 하지만 본 논문은 Chen, Chien-Ming, et al.이 보안성을 높여 제안한 프로토콜의 취약점을 분석하였고, Offline Password Guessing Attack, Lack of Perfect Forward Secrecy, Bit Mismatch, User Specific Error at multi User, Weak Anonymity at Update 취약점이 있는 것을 발견하였다.

다양한 분야에서 IoT를 활용하기 위한 연구가 진행되고 있다. 본 연구 결과를 바탕으로 앞으로 IoT를 기반으로 하는 의료, 헬스케어 서비스 프로토콜에서 통신 간의 보안성과 강한 익명성, 다중 사용자를 위한 Gateway 구성한 프로토콜이 제안될 수 있을 것으로 판단된다.

References

  1. 김재호, 윤재석, 최성찬, 류민우, "IoT 플랫폼 개발 동향 및 발전방향", 한국통신학회지 (정보와통신), 제30권, 제8호, pp.29-39, 2013.
  2. 표철식, 강호용, 김내수, 방효찬, "IoT (M2M) 기술 동향 및 발전 전망", 한국통신학회지 (정보와통신), 제30권, 제8호, pp.3-10, 2013.
  3. Y. B. Zikria, R. Ali, M. K. Afzal, and S. W. Kim, 'Next-generation internet of things (iot): Opportunities, challenges, and solutions.', Sensors, Vol 21, No. 4, pp.1174, 2021. https://doi.org/10.3390/s21041174
  4. C. M. Chen, C. T. Li, S. Liu, T. Y. Wu, and J. S. Pan, "A provable secure private data delegation scheme for mountaineering events in emergency system", IEEE Access, Vol.5, pp.3410–3422. 2017. https://doi.org/10.1109/ACCESS.2017.2675163
  5. Z. Shahbazi, and Y. C. Byun, "Towards a secure thermal-energy aware routing protocol in wireless body area network based on blockchain technology",Sensors, Vol.20, No.12, pp.3604, 2020. https://doi.org/10.3390/s20123604
  6. K. Hasan, K. Biswas, K. Ahmed, N. S. Nafi, and M. S. Islam, "A comprehensive review of wireless body area network", Journal of Network and Computer Applications, Vol.143, pp.178–198, 2019. https://doi.org/10.1016/j.jnca.2019.06.016
  7. H. Debiao, C. Jianhua, and Z. Rui "A more secure authentication scheme for telecare medicine information systems", Journal of Medical Systems, Vol.36, No.3, pp.1989–1995, 2012. https://doi.org/10.1007/s10916-011-9658-5
  8. J. Wei, X. Hu, and W. Liu, "An improved authentication scheme for telecare medicine information systems", Journal of Medical Systems, Vol.36, No.6, pp.3597–3604, 2012. https://doi.org/10.1007/s10916-012-9835-1
  9. G. Sharma, and S. Kalra, "A lightweight user authentication scheme for cloud-IoT based healthcare services. Iranian Journal of Science and Technology", Transactions of Electrical Engineering, Vol.43, No.1, pp.619–636, 2019. https://doi.org/10.1007/s40998-018-0146-5
  10. R. Canetti, and H. Krawczyk, "Universally composable notions of key exchange and secure channels", Advances in Cryptology—EUROCRYPT 2002: International Conference on the Theory and Applications of Cryptographic Techniques Amsterdam, The Netherlands, April 28–May 2, 2002 Proceedings 21. Springer Berlin Heidelberg, pp.337-351, 2002.
  11. M. Masud, G. S. Gaba, K. Choudhary, M. S. Hossain, M. F. Alhamid, M. F. and G. Muhammad, "Lightweight and anonymity-preserving user authentication scheme for IoT-based healthcare", IEEE Internet of Things Journal. Vol.9, No.4, pp.2649-2656, 2021.
  12. C. M. Chen, S. Liu, S. A. Chaudhry, Y. C. Chen, and M. A. Khan, "A lightweight and robust user authentication protocol with user anonymity for IoT-based healthcare", Computer Modeling in Engineering & Sciences, 2022. https://doi.org/10.32604/cmes.2022.018749
  13. N. Kumar, "IoT architectrue and system design for healthcare systems." IEEE, pp. 1118-1123, 2017.
  14. Z. Yang, J. He, Y. Tian, & J. Zhou, 'Faster authenticated key agreement with perfect forward secrecy for industrial internet-of-things', IEEE Transactions on Industrial Informatics, Vol. 16, No, 10, pp. 6584-6596, 2019.
  15. 김수빈, 송재승, "사물인터넷 (Internet-of-Things) 플랫폼에서의 익명성 확보 기술에 관한 연구", 한국통신학회 학술대회논문집, pp 1307-1308, 2020.