본 논문에서는 재전송공격과 가장 공격을 방지할 수 있는 하둡보안 프로토콜을 제안한다. 제안하는 하둡 보안 프로토콜은 사용자 인증 모듈, 공개키 기반 데이터노드 관리 모듈, 네임노드 인증 모듈, 그리고 데이터노드 인증 모듈로 구성된다. 사용자 인증모듈은 인증서버에서 사용자의 신분을 확인한 후에 TGS로부터 임시접속 ID를 발급받고, 공개키 기반 데이터 노드 관리 모듈은 네임노드와 데이터 노드간의 비밀키를 생성하고, 해시체인기법으로 OKTL(One-Time Key List)를 생성한다. 네임노드 인증 모듈은 임시접속 ID로 사용자의 신분을 확인하고 DT(Delegation Token)와 BAT(Block Access Token)를 사용자에게 발급해주고, 데이터 노드 인증 모듈은 BAT의 OwnerID을 검증하여 사용자의 신분을 확인하고 데이터를 암호화시켜 사용자에게 제공한다. 즉, 제안하는 하둡 보안 프로토콜에서는 OTKL, timestamp, OwnerID을 이용하여 데이터 노드의 비밀키 노출을 대비할 뿐만 아니라 재전송 공격과 가장 공격을 탐지하고, 데이터 노드의 데이터 접근을 강화시키고 데이터를 암호화하여 전달함으로써 데이터 보안을 강화시켰다.
본 논문에서는 재전송공격과 가장 공격을 방지할 수 있는 하둡 보안 프로토콜을 제안한다. 제안하는 하둡 보안 프로토콜은 사용자 인증 모듈, 공개키 기반 데이터노드 관리 모듈, 네임노드 인증 모듈, 그리고 데이터노드 인증 모듈로 구성된다. 사용자 인증모듈은 인증서버에서 사용자의 신분을 확인한 후에 TGS로부터 임시접속 ID를 발급받고, 공개키 기반 데이터 노드 관리 모듈은 네임노드와 데이터 노드간의 비밀키를 생성하고, 해시체인기법으로 OKTL(One-Time Key List)를 생성한다. 네임노드 인증 모듈은 임시접속 ID로 사용자의 신분을 확인하고 DT(Delegation Token)와 BAT(Block Access Token)를 사용자에게 발급해주고, 데이터 노드 인증 모듈은 BAT의 OwnerID을 검증하여 사용자의 신분을 확인하고 데이터를 암호화시켜 사용자에게 제공한다. 즉, 제안하는 하둡 보안 프로토콜에서는 OTKL, timestamp, OwnerID을 이용하여 데이터 노드의 비밀키 노출을 대비할 뿐만 아니라 재전송 공격과 가장 공격을 탐지하고, 데이터 노드의 데이터 접근을 강화시키고 데이터를 암호화하여 전달함으로써 데이터 보안을 강화시켰다.
This paper is proposed Hadoop security protocol to protect a reply attack and impersonation attack. The proposed hadoop security protocol is consists of user authentication module, public key based data node authentication module, name node authentication module, and data node authentication module....
This paper is proposed Hadoop security protocol to protect a reply attack and impersonation attack. The proposed hadoop security protocol is consists of user authentication module, public key based data node authentication module, name node authentication module, and data node authentication module. The user authentication module is issued the temporary access ID from TGS after verifing user's identification on Authentication Server. The public key based data node authentication module generates secret key between name node and data node, and generates OTKL(One-Time Key List) using Hash-chain. The name node authentication module verifies user's identification using user's temporary access ID, and issues DT(Delegation Token) and BAT(Block Access Token) to user. The data node authentication module sends the encrypted data block to user after verifing user's identification using OwerID of BAT. Therefore the proposed hadoop security protocol dose not only prepare the exposure of data node's secret key by using OTKL, timestamp, owerID but also detect the reply attack and impersonation attack. Also, it enhances the data access of data node, and enforces data security by sending the encrypted data.
This paper is proposed Hadoop security protocol to protect a reply attack and impersonation attack. The proposed hadoop security protocol is consists of user authentication module, public key based data node authentication module, name node authentication module, and data node authentication module. The user authentication module is issued the temporary access ID from TGS after verifing user's identification on Authentication Server. The public key based data node authentication module generates secret key between name node and data node, and generates OTKL(One-Time Key List) using Hash-chain. The name node authentication module verifies user's identification using user's temporary access ID, and issues DT(Delegation Token) and BAT(Block Access Token) to user. The data node authentication module sends the encrypted data block to user after verifing user's identification using OwerID of BAT. Therefore the proposed hadoop security protocol dose not only prepare the exposure of data node's secret key by using OTKL, timestamp, owerID but also detect the reply attack and impersonation attack. Also, it enhances the data access of data node, and enforces data security by sending the encrypted data.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
제안하는 하둡 보안 프로토콜에서는 임시접근 ID로 사용자의 신분을 확인하고 해시체인기반 OTKL(One-Time Key List) 생성하고, 이 OTKL를 이용하여 데이터 블록 접근 토큰의 검증하도록 설계하였다. 그리고 일회성 암복호화키인 OTEK(One-Time Ecrypt Key)/OTDK (One-Time Decrypt Key)로 데이터를 암호화시켜 전달하도록 설계하여 재전송공격과 가장 공격을 방지할 뿐만 아니라 데이터 보안을 강화시키고자 한다.
본 논문에서 하둡의 네임 노드와 데이터 노드, 사용자 사이의 상호 인증 및 데이터 암호화하여 하둡의 데이터를 보호하는 하둡 보안 프로토콜을 제안하였다.
본 논문에서 하둡의 네임 노드와 데이터 노드, 클라이언트 사이의 상호 인증 및 데이터 암호화하여 하둡의 데이터를 보호하는 하둡 보안 프로토콜을 제안하여 비밀키 노출로 인한 데이터 노드의 피해를 최소화시키고, 재전송 공격과 가장 공격을 차단하고자 한다. 그림 2는 제안하는 하둡 보안 프로토콜의 모듈 구성도와 전체 흐름도를 설명한 것이다.
본 논문에서는 네임 노드로부터 위임 토큰을 발급받은 인증된 사용자는 데이터 노드에 있는 데이터블록을 가져오거나 저장하기 위해 BAT를 데이터 노드에 전달한다. 이때 모든 데이터 노드들은 3.
본 논문에서는 네임노드와 데이터 노드에서 각각 사용자 인증에 활용할 수 있는 사용자 인증키를 생성하는 사용자 인증 모듈을 설계하였다.
본 논문에서는 이러한 문제를 보완할 수 있는 하둡 보안 프로토콜을 제안한다. 제안하는 하둡 보안 프로토콜에서는 임시접근 ID로 사용자의 신분을 확인하고 해시체인기반 OTKL(One-Time Key List) 생성하고, 이 OTKL를 이용하여 데이터 블록 접근 토큰의 검증하도록 설계하였다.
본 논문에서는 하둡 분산 파일 시스템의 서버 역할을 하는 네임 노드가 데이터가 분산 저장되는 데이터 노드를 관리하는 공개키 기반 데이터 노드 관리 모듈을 설계한다. 즉, 공개키 기반 데이터 노드 관리 모듈은 데이터 노드를 네임 노드에 등록하고, 네임 노드와 데이터 노드 사이의 비밀키를 생성한 다.
가설 설정
가 등록되어 있다고 가정한다. 또한 사용자는 하둡 파일 시스템을 사용하기전에 사전에 ID와 패스워드가 이미 인증 서버에 등록해야 한다고 가정한다.
본 논문에서 하둡 분산 시스템의 구성 요소인 인증서버(AS), 티켓 발행 서버(TGS), 네임 노드, 데이터노드는 각각 자신의 비밀키와 공개키를 가지고 있으며, 인증서버(AS)와 TGS 사이에는 공유 비밀키인 SKAS_TGS가 등록되어 있다고 가정한다. 또한 사용자는 하둡 파일 시스템을 사용하기전에 사전에 ID와 패스워드가 이미 인증 서버에 등록해야 한다고 가정한다.
제안 방법
[2 단계] 데이터 노드는 사용자로부터 수신한 블록접근토큰이 유효기간이내의 블록접근토큰인지, 블록 번호가 존재하는지, 그리고 OwnerID가 맞는지를 확인한다. 이때, 이 모든 확인 결과가 참이어야만 다음 단계를 진행하고, 그렇지 않으면 사용자에게 블록접근토큰이 유효하지 않다는 메시지를 전달한다.
[3 단계] 데이터 노드는 BAT의 KeyID= OTKL( index)에 해당하는 Key값을 가져와서 HMACSHA1로 해시값을 계산하고, BAT의 Token Authenticator와 비교하여 BAT의 무결성을 검증한다. 이때, 무결성 검증 결과가 참이면, BAT 와 사용자가 전달한 정보를 이용하여 데이터를 암호화하기 위한 OTEK(One Time Encrypt Key)를 생성하고 데이터를 암호화하여 사용자에게 전달한다.
)를 곱셈 연산하여 세션키(Session Key)를 생성 한다. 그리고 3단계에서 전달받은 데이터 노드의 세션키와 비교한다. 그리고 비교 결과가 참이면, 네임노드는 Hash-chain기법으로 생성할 One Time Key의 초기값인 StartKey를 랜덤한 수로 생성하고, 이 StartKey를 세션키로 암호화하여 데이터 노드에 전달한다.
제안하는 하둡 보안 프로토콜의 네임 노드 인증 모듈에서는 OTKL(One Time Key List)에 저장된 Key의 색인 값을 블록접근토큰의 KeyID로 사용하도록 설계하였다. 그리고 데이터 노드 인증 모듈에서는 데이터 노드가 블록접근토큰을 검증하는데 OTKL의 Key를 이용하여 BAT의 무결성을 검증함으로써 재전송 공격을 탐지할 수 있도록 하였다.
로 복호화시킨다. 그리고 사용자 ID와 nonceAS를 해시하고 Folding연산으로 64bit인 KIMSI 를 계산한다.
둘째, 해시 체인 기법을 이용하여 네임노드와 모든 데이터 노드가 동일한 OTKL를 갖도록 설계하였고, 주기적으로 OTKL를 갱신함으로써 OTKL의 노출로 인한 데이터 노출을 방지할 수 있다.
본 논문에서는 하둡 분산 파일 시스템에 접속하려는 사용자는 3.1절에서 취득한 임시 접속 ID로 네임노드에 접속하도록 설계한다. 네임노드는 이 임시 접속 ID로 사용자의 신분을 확인하고 위임토큰과 블록접근토큰을 생성하여 사용자에게 전달하도록 설계한다.
비교 결과, 총 라운드 수는 6회로 동일하지만 제안하는 기법에서는 네임노드는 공개키, 비밀키, OTKL, 그리고 StartKey를 사용하고, 데이터 노드는 공개키, 비밀키, OTKL, 그리고 OTEK을 사용하고, 사용자는 OTDK를 사용하도록 설계하였다. 즉, 기본의 하둡분산 파일 시스템의 네임 노드의 마스터 키와 랜덤 키, 데이터 노드의 랜덤 키보다 키 개수가 많지만, 하둡 분산 파일 시스템에 기밀성을 유지 하면서 재전송 공격을 방지할 수 있도록 하였다.
본 논문에서는 네임 노드로부터 위임 토큰을 발급받은 인증된 사용자는 데이터 노드에 있는 데이터블록을 가져오거나 저장하기 위해 BAT를 데이터 노드에 전달한다. 이때 모든 데이터 노드들은 3.2절에서 설계한 OTKL를 가지고 있으며, BAT를 수신한 데이터 노드는 자신이 보유하고 있는 OTKL의 Key를 이용하여 BAT의 무결성을 검증하고 데이터 재전송 공격을 탐지하는 데이터 노드 인증 모듈을 설계한다.
이때, 하둡은 보안과 성능, 비용 모두를 만족하기 위하여 공개키 시스템은 배제하였고, 기존 하둡에 대칭키 시스템인 커버로스(Kerberos)를 결합하는 방법을 선택하였다. 하지만, 네임노드와 데이터 노드, 하둡 클라이언트가 모두 커버로스를 통해 인증하게 되면 커버로스의 키 분배 센터에 병목 현상이 발생하기 때문에 하둡은 성능 향상을 위해 자체적으로 개발한 대칭키 기반 토큰 시스템을 함께 도입하였다[13].
제안하는 하둡 보안 프로토콜에서는 1회용으로 사용자가 데이터 노드에 데이터 블록을 요청할 경우에만 일시적으로 작성하는 키로써 OTEK, OTDK 를 생성한다. 이 OTEK, OTDK는 키 생성시의 timestamp를 이용하므로, 일정한 시간 이후에는 이 키를 이용하여 데이터를 암호화하거나 복호화할 수 없으므로 데이터의 기밀성을 유지할 수 있다.
본 논문에서는 이러한 문제를 보완할 수 있는 하둡 보안 프로토콜을 제안한다. 제안하는 하둡 보안 프로토콜에서는 임시접근 ID로 사용자의 신분을 확인하고 해시체인기반 OTKL(One-Time Key List) 생성하고, 이 OTKL를 이용하여 데이터 블록 접근 토큰의 검증하도록 설계하였다. 그리고 일회성 암복호화키인 OTEK(One-Time Ecrypt Key)/OTDK (One-Time Decrypt Key)로 데이터를 암호화시켜 전달하도록 설계하여 재전송공격과 가장 공격을 방지할 뿐만 아니라 데이터 보안을 강화시키고자 한다.
제안하는 하둡 보안 프로토콜은 첫째, 기본의 하둡 보안 기법인 커버로스, 위임토큰, 블록접근토큰을 활용하지만, 위임토큰과 블록접근토큰은 네임노드가 생성하여 사용자에게 전달하도록 설계하였다.
제안하는 하둡 보안 프로토콜은 하둡 분산 파일 시스템에 데이터 저장하거나 읽고자 하는 사용자 에게 사용자 인증키를 발급하는 사용자 인증 모듈, 네임노드와 데이터 노드 사이의 비밀키를 관리하는 공개키 기반 데이터 노드 관리 모듈, 하둡 분산 파일 시스템에서 데이터의 read/write를 요청하는 사용자의 신분을 확인하고 사용자가 하둡 분산 파일 시스템의 회원이면 데이터 블록 접근 토큰을 발급하는 네임 노드 인증 모듈, 그리고 사용자가 제시한 블록 접근 토큰을 확인한 후, 네임 노드가 발급한 블록 접근 토큰이면 사용자에게 데이터 블록을 제공하는 데이터 노드 인증 모듈로 구성된다.
제안하는 하둡 보안 프로토콜의 네임 노드 인증 모듈에서는 OTKL(One Time Key List)에 저장된 Key의 색인 값을 블록접근토큰의 KeyID로 사용하도록 설계하였다. 그리고 데이터 노드 인증 모듈에서는 데이터 노드가 블록접근토큰을 검증하는데 OTKL의 Key를 이용하여 BAT의 무결성을 검증함으로써 재전송 공격을 탐지할 수 있도록 하였다.
비교 결과, 총 라운드 수는 6회로 동일하지만 제안하는 기법에서는 네임노드는 공개키, 비밀키, OTKL, 그리고 StartKey를 사용하고, 데이터 노드는 공개키, 비밀키, OTKL, 그리고 OTEK을 사용하고, 사용자는 OTDK를 사용하도록 설계하였다. 즉, 기본의 하둡분산 파일 시스템의 네임 노드의 마스터 키와 랜덤 키, 데이터 노드의 랜덤 키보다 키 개수가 많지만, 하둡 분산 파일 시스템에 기밀성을 유지 하면서 재전송 공격을 방지할 수 있도록 하였다.
네임노드는 이 임시 접속 ID로 사용자의 신분을 확인하고 위임토큰과 블록접근토큰을 생성하여 사용자에게 전달하도록 설계한다. 특히, 본 논문에서는 3.2절에서 생성된 OTKL (One Time Key List)에 저장된 Key의색인 값을 블록접근토큰의 KeyID로 사용하도록 설계하여 데이터 노드가 블록접근토큰을 검증하는데 사용함으로써, 재전송 공격, 가장 공격을 탐지하도록 설계한다.
이때, 하둡은 보안과 성능, 비용 모두를 만족하기 위하여 공개키 시스템은 배제하였고, 기존 하둡에 대칭키 시스템인 커버로스(Kerberos)를 결합하는 방법을 선택하였다. 하지만, 네임노드와 데이터 노드, 하둡 클라이언트가 모두 커버로스를 통해 인증하게 되면 커버로스의 키 분배 센터에 병목 현상이 발생하기 때문에 하둡은 성능 향상을 위해 자체적으로 개발한 대칭키 기반 토큰 시스템을 함께 도입하였다[13]. 하지만, 이렇게 보안이 도입된 하둡 분산 파일 시스템이라도 재전송 공격 및 가장 공격에 취약하며, 임의로 토큰을 생성하여 데이 터에 접근하는 데이터 노드 해킹 공격이 가능하다는 문제점이 존재한다.
데이터처리
성능분석에서는 사용자가 데이터 블록에 접근을 요청하여 데이터를 전달받는 과정을 기존의 하둡 분산 파일 시스템과 제안하는 시스템을 비교하였다.
성능/효과
를 비교하여 전달받은 메시지의 무결성은 검증한다. 검증결과가 TRUE이면, TGS는 네임서버의 공유키인 PKeyN로 사용자의 ID를 암호화시켜 전달한다.
넷째, 데이터 노드의 데이터 블록을 암호화하고복호화하는 일회용 암복호키를 사용자와 데이터 노드가 각각 생성하도록 설계하였고, 데이터 노드가 데이터를 암호화하여 사용자에게 전달함으로써 데이터의 노출을 방지할 수 있다.
또한, 데이터 노드 인증 모듈에서는 BAT의 OwnerID을 검증함으로써 가장 공격을 탐지할 수 있으며, 네임노드는 OTKL에 있는 하나의 키 값으로 암호화하여 새로운 StartKey를 데이터 노드들에게 배포하여 주기적으로 OTKL를 갱신함으로써 OTKL 의 노출로 인한 데이터 손실을 방지할 수 있다.
셋째, OTKL의 Key로 데이터 재전송 공격을 탐지하고, BAT의 OwnerID을 검증함으로써 가장 공격을 탐지할 수 있다.
질의응답
핵심어
질문
논문에서 추출한 답변
하둡 보안 프로토콜의 각 모듈은 어떻게 수행되는가?
제안하는 하둡 보안 프로토콜은 사용자 인증 모듈, 공개키 기반 데이터노드 관리 모듈, 네임노드 인증 모듈, 그리고 데이터노드 인증 모듈로 구성된다. 사용자 인증모듈은 인증서버에서 사용자의 신분을 확인한 후에 TGS로부터 임시접속 ID를 발급받고, 공개키 기반 데이터 노드 관리 모듈은 네임노드와 데이터 노드간의 비밀키를 생성하고, 해시체인기법으로 OKTL(One-Time Key List)를 생성한다. 네임노드 인증 모듈은 임시접속 ID로 사용자의 신분을 확인하고 DT(Delegation Token)와 BAT(Block Access Token)를 사용자에게 발급해주고, 데이터 노드 인증 모듈은 BAT의 OwnerID을 검증하여 사용자의 신분을 확인하고 데이터를 암호화시켜 사용자에게 제공한다. 즉, 제안하는 하둡 보안 프로토콜에서는 OTKL, timestamp, OwnerID을 이용하여 데이터 노드의 비밀키 노출을 대비할 뿐만 아니라 재전송 공격과 가장 공격을 탐지하고, 데이터 노드의 데이터 접근을 강화시키고 데이터를 암호화하여 전달함으로써 데이터 보안을 강화시켰다.
하둡 보안 프로토콜의 강점은?
네임노드 인증 모듈은 임시접속 ID로 사용자의 신분을 확인하고 DT(Delegation Token)와 BAT(Block Access Token)를 사용자에게 발급해주고, 데이터 노드 인증 모듈은 BAT의 OwnerID을 검증하여 사용자의 신분을 확인하고 데이터를 암호화시켜 사용자에게 제공한다. 즉, 제안하는 하둡 보안 프로토콜에서는 OTKL, timestamp, OwnerID을 이용하여 데이터 노드의 비밀키 노출을 대비할 뿐만 아니라 재전송 공격과 가장 공격을 탐지하고, 데이터 노드의 데이터 접근을 강화시키고 데이터를 암호화하여 전달함으로써 데이터 보안을 강화시켰다.
하둡 보안 프로토콜은 어떻게 구성되어 있는가?
본 논문에서는 재전송공격과 가장 공격을 방지할 수 있는 하둡 보안 프로토콜을 제안한다. 제안하는 하둡 보안 프로토콜은 사용자 인증 모듈, 공개키 기반 데이터노드 관리 모듈, 네임노드 인증 모듈, 그리고 데이터노드 인증 모듈로 구성된다. 사용자 인증모듈은 인증서버에서 사용자의 신분을 확인한 후에 TGS로부터 임시접속 ID를 발급받고, 공개키 기반 데이터 노드 관리 모듈은 네임노드와 데이터 노드간의 비밀키를 생성하고, 해시체인기법으로 OKTL(One-Time Key List)를 생성한다.
참고문헌 (13)
Sung-Jae Jung, Yu-Mi Bae, "Trend analysis of Threats and Technololgies for Cloud Security," Journal of Security Engineering, vol.10, no.2, pp.199-212, 2013. 4.
Openstack, http://www.openstack.org/
D. Nurmi, et al., "Eucalyptus: A Technical Report on an Elastic Utility computing Architecture Linking Your Programs to Useful System," Technical Report 2008-10, UCSB Computer Science, 2008.
K. Schvachko, et al., "The Hadoop Distributed File System," in 26th IEEE Symposium on Massive Storage Systems and Technologies, May 2010.
Wikipedia, http://en.wikipedia.org/wiki/Hadoop
Seung-Je Park, Heeyoul Kim, "Improving Hadoop Security Through Hash-chain," The Journal of Korean Institute of Information Technology, vol.10, no.6, pp.65-73, 2012.06.
Apache Hadoop, http://hadoop.apache.org/
S. Ghemawat, H. Gobioff, and S. Leung, "The google file system," Proceedings of ACM Symposium on Operating Systems Principles, pp.29-43, Oct. 2003.
T. White, "Hadoop: the definition guide," O'Reilly edia, Yahoo! Press, Jun 2009.
So Hyeon Park, Ik Rae Jeong, "A Study on Security Improvement in Hadoop Distributed File System Based on Kerberos," Journal of The Korea Institute of Information Security & Cryptology(JKIISC), vol.23, no.5, pp.803-813, 2013.10.
O. O'Malley, K. Zhang, S. Radia, R. Marti, C. Harrell, "Hadoop security design," Oct. 2009. http://techcat.org/wp-content/uploads/2013/04/hadoop-security-design.pdf
So Won Jeong, Kee Sung Kim, Ik Rae Jeong, "Secure Authentication Protocol in Hadoop Distributed File System based on Hash Chan," Journal of The Korea Institute of Information Security & Cryptology(JKIISC), vol 23, no.5, pp.831-847, 2013.10.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.