1 |
1
사용자 단말, 복수의 사물인터넷 기기, 클라우드 서버, 및 신뢰기관 서버를 포함하는 데이터 공유 시스템에서의 데이터 공유 방법에 있어서,신뢰기관 서버가 임의의 g∈G0, , ∈Zp를 선택하여 마스터키(MK)와 공개키(PK)를 생성하는 셋업 단계;상기 신뢰기관 서버가 상기 마스터키(MK), 상기 공개키(PK), 각각의 사물인터넷 기기(u)의 ID(idu), 및 사물인터넷 기기(u)의 속성집합(Lu)을 입력으로 하고, k+2개의 임의의 a, c∈Zp*, {r1, r2,…, rk}∈Zp를 선택하여 비밀키(SKu)를 생성하고 해당 사물인터넷 기기(u)에 전송하는 키 생성 단계;(이때, 를 만족함)상기 신뢰기관 서버가 상기 비밀키(SKu) 생성을 위해 선택한 고유값(c) 및 상기 사물인터넷 기기(u)의 ID(idu)를 사물인터넷 기기 식별자 테이블(T)에 저장하는 단계;상기 클라우드 서버가 상기 사용자 단말로부터 상기 공개키(PK) 및 접근제어를 위한 속성집합(W)을 입력으로 데이터(M)를 암호화하여 생성된 암호문(CT)을 수신하는 단계;상기 복수의 사물인터넷 기기(u) 중 어느 하나가 상기 클라우드 서버에 상기 암호문(CT)에 대한 접근을 요청하는 단계;상기 클라우드 서버가 상기 공개키(PK)와 상기 사물인터넷 기기 식별자 테이블(T)을 입력으로 하여 부분복호키(TK)를 생성하는 단계;상기 클라우드 서버가 상기 부분복호키(TK)와 상기 암호문(CT)을 입력으로 하여 부분복호 결과(CT')를 생성하는 부분복호 단계;상기 클라우드 서버가 상기 부분복호 결과(CT')를 상기 암호문(CT)에 대한 접근을 요청한 사물인터넷 기기(u)에 송신하는 단계; 및상기 부분복호 결과(CT')를 수신한 상기 사물인터넷 기기(u)가 상기 사물인터넷 기기(u)의 비밀키(SKu)와 상기 부분복호 결과(CT')를 입력으로 하여 데이터(M)를 추출하는 최종복호 단계를 포함하는 데이터 공유 방법
|
2 |
2
제1항에 있어서, 상기 클라우드 서버가 상기 부분복호키(TK)를 생성하는 단계는,상기 사물인터넷 기기 식별자 테이블(T)을 이용하여 암호문에 대한 접근을 요청한 사물인터넷 기기(u)의 ID(idu)에 대응하는 고유값(c)을 탐색하는 단계; 및상기 고유값(c)을 이용하여 부분복호키(TK)를 생성하는 단계를 포함하는,데이터 공유 방법
|
3 |
3
제1항에 있어서,상기 암호문(CT)은,임의의 t∈Zp를 선택하여 대칭키(Key)를 생성하고,상기 공개키(PK), 상기 접근제어를 위한 속성집합(W), 및 대칭키 암호문()을 입력하여 생성하는,데이터 공유 방법
|
4 |
4
마스터키(MK), 공개키(PK), 및 각각의 사용자 ID에 대응하는 비밀키(SKu)를 생성하고, 상기 마스터키(MK), 상기 공개키(PK), 상기 비밀키(SKu), 및 전체 사물인터넷 기기 식별자 테이블(T)을 관리하는 신뢰기관 서버;메시지(M)를 암호화하여 암호문(CT)을 생성하는 암호화 모듈, 및 네트워크를 통해 클라우드 서버에 암호문(CT)을 송신하는 통신 모듈을 구비한 적어도 하나 이상의 사용자 단말;상기 공개키(PK)와 상기 사물인터넷 기기 식별자 테이블(T)을 입력으로 하여 부분복호키(TK)를 생성하는 부분복호화키 생성부, 상기 부분복호키(TK)와 상기 암호문(CT)을 입력으로 하여 상기 암호문(CT)을 부분적으로 복호화한 부분복호 결과(CT')를 생성하는 부분복호부, 네트워크를 통해 상기 사용자 단말로부터 상기 암호문(CT)을 수신하거나 사물인터넷 기기에 상기 부분복호 결과(CT')를 송신하는 통신부 및 상기 암호문(CT)을 저장하는 저장부를 포함하는 클라우드 서버; 및부분복호 결과(CT')를 최종 복호화하는 복호화 모듈, 및 네트워크를 통해 부분복호 결과(CT')를 수신하는 통신 모듈을 구비한 복수의 사물인터넷 기기를 포함하되,상기 신뢰기관 서버는,임의의 g∈G0, ,∈Zp를 선택하여 상기 마스터키(MK) 및 상기 공개키(PK)를 생성하고,상기 마스터키(MK), 상기 공개키(PK), 각각의 사물인터넷 기기(u)의 ID(idu), 및 사물인터넷 기기(u)의 속성집합(Lu)을 입력으로 하고, k+2개의 임의의 a, c∈Zp*, {r1, r2,…, rk}∈Zp를 선택하여 상기 비밀키(SKu)를 생성하고 해당 사물인터넷 기기(u)에 전송하고,(이때, 를 만족함)신뢰기관 서버가 상기 비밀키(SKu) 생성을 위해 선택한 고유값(c) 및 상기 사물인터넷 기기(u)의 ID(idu)를 사물인터넷 기기 식별자 테이블(T)에 저장하며,상기 사용자 단말의 상기 암호화 모듈은,임의의 t∈Zp를 선택하여 대칭키(Key)를 생성하고, 상기 대칭키(Key)를 이용하여 대칭키 암호문()을 생성하고,상기 공개키(PK), 접근제어를 위한 속성집합(W), 상기 대칭키 암호문()을 입력하여 상기 암호문(CT)를 생성하는,데이터 공유 시스템
|
5 |
5
제4항에 있어서, 상기 클라우드 서버의 상기 부분복호화키 생성부는,상기 사물인터넷 기기 식별자 테이블(T)을 이용하여 암호문에 대한 접근을 요청한 사물인터넷 기기(u)의 ID(idu)에 대응하는 고유값(c)을 찾고,상기 고유값(c)을 이용하여 상기 부분복호키(TK)를 생성하는,데이터 공유 시스템
|
6 |
6
제5항에 있어서, 상기 클라우드 서버의 상기 부분복호부는,상기 사물인터넷 기기(u)의 속성집합(Lu)을 상기 암호문(CT)의 접근제어를 위한 속성집합(W)과 비교하여 상기 부분복호키(TK)가 상기 암호문(CT)의 접근정책을 만족하는 경우 상기 부분복호 결과(CT')를 반환하는,데이터 공유 시스템
|