KR20210058313A - 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템 - Google Patents

클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템 Download PDF

Info

Publication number
KR20210058313A
KR20210058313A KR1020190145613A KR20190145613A KR20210058313A KR 20210058313 A KR20210058313 A KR 20210058313A KR 1020190145613 A KR1020190145613 A KR 1020190145613A KR 20190145613 A KR20190145613 A KR 20190145613A KR 20210058313 A KR20210058313 A KR 20210058313A
Authority
KR
South Korea
Prior art keywords
user
data
attribute
server
access
Prior art date
Application number
KR1020190145613A
Other languages
English (en)
Other versions
KR102298266B1 (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 순천향대학교 산학협력단
Priority to KR1020190145613A priority Critical patent/KR102298266B1/ko
Publication of KR20210058313A publication Critical patent/KR20210058313A/ko
Application granted granted Critical
Publication of KR102298266B1 publication Critical patent/KR102298266B1/ko

Links

Images

Classifications

    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0847Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving identity based encryption [IBE] schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos

Abstract

본 발명은 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템을 개시한다. 본 발명의 일 측면에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법은, TTP 서버가, 사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하는 단계; TTP 서버가, 상기 생성된 공개키와 마스터 키 및 비밀키를 데이터 소유자부 및 사용자부로 전송하는 단계; 데이터 소유자부가, TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 단계; 사용자부가, TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 단계; AC 서버가, 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 사용자부로 암호문과 함께 전송하는 단계; 및 AC 서버가, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지에 접근하는 것을 차단하는 단계;를 포함한다.

Description

클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템{Data access control method and system using attribute-based password for secure and efficient data sharing in cloud environment}
본 발명은 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템에 관한 것으로, 더욱 상세하게는 속성기반 암호의 한 종류인 CP-ABE를 활용하여 클라우드 환경에서 효율적인 데이터 공유를 할 수 있는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템에 관한 것이다.
최근 아마존 및/또는 구글과 같은 클라우드 컴퓨팅의 발달로 인해 사람들은 많은 비용이 소요되는 스토리지 공간을 임대하는 대신 클라우드 환경에 데이터를 저장하거나 필요에 따라 다른 사람들과 공유할 수 있다. 무엇보다 클라우드 컴퓨팅은 인터넷을 통해 사용할 수 있기 때문에 사용자 측면에서 편리하다. 하지만, 클라우드 환경에서는 다양한 보안 위협이 존재한다. 특히, 서비스 제공업체를 완전히 신뢰할 수 없다. 예컨대, 사용자는 한 회사에서 제공하는 클라우드를 사용하여 데이터를 안전하게 저장하기 때문에 데이터를 보호할 수 있지만, 클라우드를 제공하는 회사는 언제든지 데이터를 악용할 수 있다. 또한, 공격자에 의해 데이터가 유출 및/또는 손실될 수 있는 보안 위협이 존재한다. 따라서, 클라우드 환경에서 데이터 소유자의 데이터를 보호하기 위한 보안 기술이 필요하다. 다양한 보안 기술 중 CP-ABE(Ciphertext Policy-Attribute-Based Encryption) 방식이 가장 적합한 암호 기술이다. 현재까지 CP-ABE는 지속적으로 연구되어지고 있지만, 일부 보안 위협에 취약하거나 비효율적인 문제점이 존재한다. 특히, 보안 측면에서 사용자가 기존 클라우드 환경에서 탈퇴시 사용자 속성이 완전히 제거되어, 탈퇴 후 기존 클라우드에 접근할 수 없어야 한다. 하지만, 탈퇴한 사용자가 기존 속성 및 비밀키로 클라우드 환경에 접근할 수 있는 문제점이 발생한다. 또한, 탈퇴한 사용자가 다른 사용자의 속성을 가지고 접근할 수 있는 위장공격 및/또는 공모공격 등과 같은 다양한 보안 위협이 발생할 수 있다.
한국공개특허 제2018-0101870호(2018.09.14 공개)
본 발명은 상기와 같은 문제점을 해결하기 위해 제안된 것으로서, 속성기반 암호의 한 종류인 CP-ABE를 활용하여 클라우드 환경에서 데이터를 효율적으로 공유할 수 있는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템을 제공하는데 그 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 일 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허청구범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기와 같은 목적을 달성하기 위한 본 발명의 일 측면에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법은, TTP 서버가, 사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하는 단계; TTP 서버가, 상기 생성된 공개키와 마스터 키 및 비밀키를 데이터 소유자부 및 사용자부로 전송하는 단계; 데이터 소유자부가, TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 단계; 사용자부가, TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 단계; AC 서버가, 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 사용자부로 암호문과 함께 전송하는 단계; 및 AC 서버가, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지에 접근하는 것을 차단하는 단계;를 포함한다.
상기 TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 단계는, 데이터 소유자부가, 자신이 공유할 데이터에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조를 생성하는 단계; 및 데이터 소유자부가, 공개 파라미터와 접근구조로 데이터를 암호화하여, 클라우드 스토리지에 전송하는 단계;를 포함하는 것을 특징으로 한다.
상기 TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 단계는, 암호화된 데이터 접근을 요청하는 사용자부가, TTP 서버로부터 받은 사용자 정보(nonce value)로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰을 생성하고, 자신의 식별자와 함께 AC 서버로 전송하는 단계; AC 서버가, 사용자부로부터 받은 클라우드에 접근하기 위한 토큰을 가지고 있는 사용자 정보(nonce value)로 복호화하여 사용자부의 속성을 획득하는 단계; 및 AC 서버가, 사용자부가 원하는 암호데이터를 클라우드 스토리지에 요청한 후 암호문을 전송받는 단계;를 포함하는 것을 특징으로 한다.
상기 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 사용자부로 암호문과 함께 전송하는 단계는, AC 서버가, 사용자부의 속성과 암호문에 지정된 접근구조를 비교하여 만족하는 경우, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 생성하는 단계; AC 서버가, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 사용자 정보(nonce value)로 암호화하여 사용자부로 전송하는 단계; 사용자부가 AC 서버로부터 전송받은 사용자 정보를 복호화하여 부분 복호화 진행 후 생성되는 최종 복호화 키 요소를 획득하는 단계; 및 사용자부가 암호화문을 비밀키, 부분 복호화 진행 후 생성되는 최종 복호화 키 요소, 공개 파라미터를 통해 최종 복호화를 진행하여 메시지를 획득하는 단계;를 포함하는 것을 특징으로 한다.
상기 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지에 접근하는 것을 차단하는 단계는, 사용자부가 TTP 서버에 탈퇴등록을 요청하는 단계; TTP 서버가 탈퇴할 사용자부의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자 정보를 변경하는 단계; TTP 서버가 탈퇴한 사용자부가 기존에 가지고 있던 사용자 정보를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰을 만들어 AC 서버에게 접근을 요청하는 단계; 및 AC 서버가 접근실패 메시지를 사용자부로 전송하여 탈퇴한 사용자부에 대한 접근을 차단하는 단계;를 포함하는 것을 특징으로 한다.
상기와 같은 목적을 달성하기 위한 본 발명의 다른 측면에 따른 데이터를 저장 및 관리하는 클라우드 스토리지를 포함하는 데이터 접근 제어 시스템은, 사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하며, 생성된 공개키와 마스터 키 및 비밀키를 데이터 소유자부 및 사용자부로 전송하는 TTP 서버; TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 데이터 소유자부; TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 사용자부; 및 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 사용자부로 암호문과 함께 전송하고, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지에 접근하는 것을 차단하는 AC 서버;를 포함한다.
상기 데이터 소유자부는, 자신이 공유할 데이터에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조를 생성하고, 공개 파라미터와 접근구조로 데이터를 암호화하여, 클라우드 스토리지에 전송하는 것을 특징으로 한다.
상기 사용자부는, TTP 서버로부터 받은 사용자 정보(nonce value)로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰을 생성하고, 자신의 식별자와 함께 AC 서버로 전송하며, 암호화문을 비밀키, 부분 복호화 진행 후 생성되는 최종 복호화 키 요소, 공개 파라미터를 통해 최종 복호화를 진행하여 메시지를 획득하고, TTP 서버에 탈퇴등록을 요청하는 것을 특징으로 한다.
AC 서버는, 사용자부로부터 받은 클라우드에 접근하기 위한 토큰을 가지고 있는 사용자 정보(nonce value)로 복호화하여 사용자부의 속성을 획득하고, 사용자부가 원하는 암호데이터를 클라우드 스토리지에 요청한 후 암호문을 전송받으며, 사용자부의 속성과 암호문에 지정된 접근구조를 비교하여 만족하는 경우, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 생성하고, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 사용자 정보(nonce value)로 암호화하여 사용자부로 전송하고, 접근실패 메시지를 사용자부로 전송하여 탈퇴한 사용자부에 대한 접근을 차단하는 것을 특징으로 한다.
TTP 서버는, 탈퇴할 사용자부의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자 정보를 변경하고, 탈퇴한 사용자부가 기존에 가지고 있던 사용자 정보를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰을 만들어 AC 서버에게 접근을 요청하는 것을 특징으로 한다.
본 발명의 일 측면에 따르면, 탈퇴된 사용자의 접근을 차단하고, 속성의 개수에 따라 증가되는 암호문 크기를 고정하여 출력시킴으로써 스토리지의 공간의 효율을 증대시킬 수 있는 효과가 있다.
또한, 아웃소싱 기법을 통한 부분 복호화 기법을 통해 사용자의 복호화 연산의 부담을 최소화하여 연산의 효율성을 증대시킬 수 있는 효과가 있다.
또한, 다수의 사용자들이 자신의 속성을 기반으로 클라우드에 저장된 데이터 중 원하는 데이터를 안전하고 효율적으로 공유할 수 있는 환경을 제공할 수 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명을 실시하기 위한 구체적인 내용들과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시예에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 시스템의 개략적인 구성도,
도 2는 본 발명의 일 실시예에 따른 초기 설정 및 키 생성 단계의 흐름을 개략적으로 도시한 도면,
도 3은 본 발명의 일 실시예에 따른 데이터 암호화 단계의 흐름을 개략적으로 도시한 도면,
도 4는 본 발명의 일 실시예에 따른 사용자 데이터 접근 단계 및 데이터 복호화 단계의 흐름을 개략적으로 도시한 도면,
도 5는 본 발명의 일 실시예에 따른 사용자 탈퇴 시 단계의 흐름을 개략적으로 도시한 도면이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 “…부” 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1은 본 발명의 일 실시예에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 시스템의 개략적인 구성도이다.
본 실시예를 설명함에 있어서, 데이터 소유자부 및 사용자부는 클라우드를 통해 데이터를 공유하고자 하는 개체이다. 데이터 소유자부 및 사용자부는 PC, 태블릿 등과 같은 사용자 단말을 포함할 수 있다. 즉, 데이터 소유자부는 데이터 소유자가 소지한 사용자 단말일 수 있으며, 사용자부는 데이터의 사용자가 소지한 단말일 수 있다.
도 1을 참조하면, 본 실시예에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 시스템은, TTP 서버(100), 데이터 소유자부(200), 사용자부(300) 및 AC 서버(400)를 포함한다. 이때, TTP 서버(100)는 클라우드 환경하에서 클라우드 스토리지(500)와 연결되어 통신을 수행할 수 있다. 이때, 클라우드 스토리지(500)는 데이터를 저장 및 관리하는 역할을 할 수 있다.
TTP 서버(100)는, 신뢰할 수 있는 객체로, 초기 설정 및 키를 생성할 수 있다. 즉, TTP 서버(100)는, 사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하며, 생성된 공개키와 마스터 키 및 비밀키를 데이터 소유자부(200) 및 사용자부(300)로 전송할 수 있다.
데이터 소유자부(200)는, 데이터를 암호화하는 객체일 수 있다. 즉, TTP 서버(100)로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부(300)의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지(500)에 업로드할 수 있다.
사용자부(300)는, 데이터에 접근하려는 객체일 수 있다. 즉, 사용자부(300)는, TTP 서버(100)로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지(500)에 접근할 수 있다.
AC 서버(400)는, 사용자의 접근차단 및 암호문의 부분 복호화를 진행해주는 아웃소싱 기법이 지원되는 객체일 수 있다. 즉, AC 서버(400)는, 사용자부(300)가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 사용자부(300)로 암호문과 함께 전송하고, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지(500)에 접근하는 것을 차단할 수 있다.
상술한 바에 따른 데이터 접근 제어 시스템에 대해 정리하면 아래와 같다.
탈퇴된 사용자를 TTP 서버(100)의 속성 해지리스트에 등록하고, 일부 사용자 정보를 AC(Access Control) 서버에게 공유함으로써, AC 서버(400)는 사용자의 접근시 탈퇴된 사용자인지 아닌지 여부를 파악하여 탈퇴한 사용자의 접근권한을 차단할 수 있다. 여기서, TTP(Trusted third party)는 신뢰된 기관으로써 공개키, 마스터키를 출력하고, 등록된 사용자의 속성과 이에 대응하는 비밀키를 생성할 수 있으며, 속성 해지리스트를 통해 탈퇴된 사용자의 정보를 관리한다. 속성의 개수에 따라 암호문의 크기가 증가되는 문제를 해결하기 위해서는 암호문 생성과정에서 다수의 속성의 개수 연산을 통해 한 가지 속성으로 나타냄으로써 암호문 크기를 고정된 크기로 출력할 수 있으며, 이에 클라우드 스토리지(500) 공간을 효율적으로 사용할 수 있다. 또한, 아웃소싱 기법이 지원되는 AC 서버(400)를 통해 데이터에 접근하는 사용자의 속성과 암호문에 지정된 접근구조의 속성이 일치하면 암호문의 부분 복호화가 진행된다. 이후, 사용자는 부분 복호화가 진행된 암호문을 자신의 비밀키를 통해 최종복호화 연산만을 수행함으로써 데이터를 획득할 수 있기 때문에 연산량 측면에서 효율성이 제공될 수 있다.
이하, 도 2 내지 도 5를 참조하여, 본 발명에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법에 대해 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 초기 설정 및 키 생성 단계의 흐름을 개략적으로 도시한 도면, 도 3은 본 발명의 일 실시예에 따른 데이터 암호화 단계의 흐름을 개략적으로 도시한 도면, 도 4는 본 발명의 일 실시예에 따른 사용자 데이터 접근 단계 및 데이터 복호화 단계의 흐름을 개략적으로 도시한 도면, 도 5는 본 발명의 일 실시예에 따른 사용자 탈퇴 시 단계의 흐름을 개략적으로 도시한 도면이다.
한편, 본 실시예를 설명함에 있어서, 데이터 소유자 및 사용자는 각각 데이터 소유자부(200) 및 사용자부(300)를 소지한 사용자로, 데이터 소유자부(200) 및 사용자부(300)를 그 객체로 하여 각 단계의 흐름을 제어함은 자명하다.
먼저, 본 발명에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법에 대해에 대해 설명하기 이전에 본 발명의 개념에 대해 간략하게 설명하기로 한다.
본 발명은 본 발명에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법에 관한 것으로, 상술한 도 1에 도시된 바와 같은 요소들로 구성될 수 있다. 전체적인 데이터 접근 제어 방법에 대한 시나리오는 초기 설정 및 키 생성단계, 데이터 암호화 단계, 사용자 데이터 접근단계 및 데이터 복호화 단계 등으로 구성될 수 있다. 한편, 사용자의 탈퇴 시, 사용자 탈퇴 등록 및 접근차단 단계를 더 포함할 수 있다.
한편, 본 실시예에 따른 데이터 접근 제어 방법을 설명함에 앞서, 이하 내용에서 사용되는 기호들에 대해 다음과 같이 정의하기로 한다.
Figure pat00001
: 신뢰할 수 있는 3기관(관리자)
Figure pat00002
: 데이터를 관리하는 서버
Figure pat00003
: 사용자 접근제어 관리
Figure pat00004
: 공개 파라미터, 마스터키
Figure pat00005
: 사용자 비밀키(암호문 복호화키)
Figure pat00006
: 사용자 식별자
Figure pat00007
: 사용자 각 속성 데이터, 속성 데이터 집합
AS : 접근구조(Access policy or Access Structure)
Figure pat00008
: 각 속성이 가진 멀티 값
Figure pat00009
: 클라우드에 접근하기 위한 토큰
Figure pat00010
: 부분복호화 진행 후 생성되는 최종복호화 키 요소
Figure pat00011
: 사용자마다 주어지는 랜덤값
Figure pat00012
: 암호데이터
Figure pat00013
: 타임스탬프
도 2를 참조하면, 먼저, 초기 설정 및 키 생성 단계에서는 사용자를 TTP에 등록하는 초기설정(셋업) 단계 및 TTP 서버(100)에서 공개키와 마스터키 및 사용자 속성에 대응되는 비밀키를 생성하는 단계를 포함할 수 있다(S210, S220).
초기 설정 및 키 생성 단계에서, 사용자부(300)는 초기에 TTP 서버(100)에 등록 단계 절차를 수행하고, TTP 서버(100)는 사용자 정보를 관리할 수 있다. 이후, 공개키와 마스터키, 사용자 속성에 대응되는 비밀키를 생성하여 데이터 소유자부(200)와 사용자부(300)에게 안전한 채널로 정보를 송신하는 단계를 포함할 수 있으며, 보다 구체적인 단계는 아래와 같다.
<아 래>
1. TTP 서버(100)는 셋업 과정을 통해 초기 설정 및 공개키와 마스터키를 생성한다.
[수학식 1]
Figure pat00014
Figure pat00015
Figure pat00016
여기서, 겹선형 사상 그룹 G의 소수는 p이며, 랜덤 생성자는
Figure pat00017
로 생성
2. 사용자부(300)가 TTP 서버(100)에 등록한 후, TTP 서버(100)는 사용자부(300)의 속성을 가지고 비밀키(
Figure pat00018
)를 생성한다.
[수학식 2]
Figure pat00019
Figure pat00020
(각 속성의 번호),
Figure pat00021
(
Figure pat00022
는 각 속성에 대해 주어진 임의의 값)
Figure pat00023
Figure pat00024
3. TTP 서버(100)는 안전한 채널을 통해 데이터 소유자부(200)에게는 공개 파라미터(
Figure pat00025
)를 사용자부(300)에게 공개 파라미터(
Figure pat00026
)와 사용자 리스트에 등록된 사용자 식별자, 사용자 정보, 사용자 비밀키(
Figure pat00027
)를 전송한다.
다음으로, 데이터 암호화 단계에서는 데이터 소유자가 사용자 속성을 기반을 접근구조를 생성하는 단계 및 메시지를 암호화하는 단계를 포함할 수 있다(S310, S320).
데이터 암호화 단계에서, 데이터 소유자부(200)는 TTP 서버(100)로부터 받은 정보와 클라우드 환경 내에서 자신의 데이터에 접근 가능한 사용자부(300)의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고, 클라우드 스토리지(500)에 업로드하여 저장할 수 있다. 이때, 암호문의 크기는 속성의 개수에 비례하지 않고 일정크기가 출력되기 때문에 클라우드 스토리지(500)의 공간을 효율적으로 사용할 수 있다. 한편, 데이터 암호화 단계의 보다 구체적인 단계는 아래와 같다.
<아 래>
1. 데이터 소유자부(200)는 자신이 공유할 데이터(
Figure pat00028
)에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조(
Figure pat00029
)를 생성한다.
[수학식 3]
Figure pat00030
여기서, Vi는 각 속성이 가진 멀티값
Figure pat00031
,
Figure pat00032
여기서, AS는 접근구조
2. 공개 파라미터와 접근구조(
Figure pat00033
)로 데이터(
Figure pat00034
)를 암호화하여, 클라우드 스토리지(500)에 전송한다.
[수학식 4]
Figure pat00035
Figure pat00036
(랜덤값 생성)
Figure pat00037
3. 클라우드 스토리지(500)는 전송받은 암호화된 데이터를 저장한다.
다음으로, 데이터 접근 단계에서는, 사용자가 TTP 서버(100)로부터 받은 정보를 가지고 데이터에 접근할 수 있는 토큰을 생성하는 단계 및 AC 서버(400)에 접근요청을 하는 단계를 포함할 수 있다(S410, S420).
데이터 접근 단계에서, 사용자부(300)는 TTP 서버(100)로부터 전송받은 정보를 통해 클라우드에 접근하기 위한 토큰(
Figure pat00038
)을 생성하여 클라우드 스토리지(500)에 접근한다. 한편, 데이터 접근 단계의 보다 구체적인 단계는 아래와 같다.
<아 래>
1. 암호화된 데이터에 접근을 요청하는 사용자부(300)는 TTP 서버(100)로부터 받은 사용자 정보(
Figure pat00039
)로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰(
Figure pat00040
)을 생성하고, 자신의 식별자와 함께 AC 서버(400)에게 전송한다.
<수학식 5>
Figure pat00041
2. AC 서버(400)는 사용자부(300)로부터 받은 클라우드에 접근하기 위한 토큰(
Figure pat00042
)을 가지고 있는 사용자 정보(
Figure pat00043
)로 복호화하여 사용자부(300)의 속성을 획득한다. 이후, AC 서버(400)는 사용자부(300)가 원하는 암호데이터를 클라우드 스토리지(500)에 요청한 후 암호문을 전송받는다.
다음으로, 데이터 복호화 단계에서는, AC 서버(400)가 접근하는 사용자를 인증하는 단계, 데이터를 부분 복호화하는 단계를 포함할 수 있다(S430, S440).
데이터 복호화 단계에서, AC 서버(400)에서 사용자부(300)가 접근하려는 암호문에 지정된 접근구조(
Figure pat00044
)의 속성과 사용자 속성을 비교하여 일치하면 부분 복호화가 진행하여 최종 복호화에 필요한 키요소(
Figure pat00045
)를 생성하여 사용자부(300)에게 암호문과 함께 전송한다. 사용자부(300)는 자신이 가지고 있는 비밀키(
Figure pat00046
)를 가지고 최종 복호화를 진행하여 암호문을 복호화하여 데이터(
Figure pat00047
)를 획득한다. 한편, 데이터 복호화 단계의 보다 구체적인 단계는 아래와 같다.
<아 래>
1. 사용자의 속성과 암호문에 지정된 접근구조(
Figure pat00048
)를 비교하여 만족하면 암호문을 부분 복호화하여 최종 복호시 필요한 키(
Figure pat00049
)를 생성한다.
[수학식 6]
Figure pat00050
Figure pat00051
2. AC 서버(400)는 최종 복호시 필요한 키(
Figure pat00052
)를 사용자부(300)의 사용자 정보(
Figure pat00053
)로 암호화하여 사용자부(300)에게 전송한다.
[수학식 7]
Figure pat00054
3. 사용자부(300)는 AC 서버(400)로부터 받은
Figure pat00055
를 복호화하여 최종 복호시 필요한 키(
Figure pat00056
)를 획득한다.
4. 암호문(
Figure pat00057
)을 비밀키(
Figure pat00058
), 최종 복호시 필요한 키(
Figure pat00059
), 공개 파라미터(
Figure pat00060
)를 통해 최종 복호화를 진행하여 메시지(
Figure pat00061
)를 획득한다
[수학식 8]
Figure pat00062
Figure pat00063
다음으로, 사용자 탈퇴 등록 및 접근차단 단계에서는, 사용자 탈퇴 요청 및 등록 단계를 포함할 수 있으며, 이로 인해 탈퇴된 사용자의 접근을 접근토큰의 검증을 통해 AC 서버(400)가 차단할 수 있다(S510, S520).
사용자 탈퇴 등록 및 접근차단 단계에서, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지(500)에 접근하는 것을 차단한다. 사용자 탈퇴 시, TTP 서버(100)는 속성 해지리스트에서 탈퇴된 사용자의 정보를 등록하고, 탈퇴된 사용자의 사용자 정보(
Figure pat00064
)를 변경한다. 그리고, 사용자 리스트와 동기화를 진행한 후 이를 AC 서버(400)와 공유한다. 이후, 탈퇴된 사용자가 기존에 가지고 있던 사용자 정보(
Figure pat00065
)를 기반으로 접근 요청 시 AC 서버(400)는 사용자의 사용자 정보(
Figure pat00066
)를 모르기 때문에 사용자로부터 받은
Figure pat00067
를 복호화 할 수 없다. 이에, AC 서버(400)는 사용자에게 접근실패 메시지를 전송함으로써 탈퇴된 사용자의 접근을 차단한다. 한편, 사용자 탈퇴 등록 및 접근차단 단계의 보다 구체적인 단계는 아래와 같다.
<아 래>
1. 사용자부(300)는 TTP 서버(100)에 탈퇴 등록을 요청한다.
2. TTP 서버(100)는 탈퇴할 사용자의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자의 사용자 정보(
Figure pat00068
)를 변경한다. 이때, 등록된 사용자 목록에서의 사용자 정보(
Figure pat00069
)는 사용자 해지목록과 동기화되면서 변경되고, 이 정보는 AC 서버(400)와 공유된다.
3. 탈퇴한 사용자가 기존에 가지고 있던 사용자 정보(
Figure pat00070
)를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰(
Figure pat00071
)을 만들어 AC 서버(400)에게 접근을 요청한다. AC 서버(400)는 사용자의 식별자를 통해 대응되는 사용자 정보(
Figure pat00072
)를 찾는데, 이때, AC 서버(400)가 찾은 사용자 정보(
Figure pat00073
)와 사용자가 대칭키로 사용한 사용자 정보(
Figure pat00074
)가 다르기 때문에 AC 서버(400)는 사용자로부터 받은 클라우드에 접근하기 위한 토큰(
Figure pat00075
)을 복호화하지 못한다.
4. AC 서버(400)는 접근실패 메시지를 사용자에게 전송하여 탈퇴한 사용자에 대한 접근을 차단한다. 타임스탬프(
Figure pat00076
)가 속성해지 목록에 등록되면, 등록된 타임스탬프(
Figure pat00077
) 기간 동안 사용자의 사용자 정보(
Figure pat00078
)가 변경되기 때문에 사용자는 타임스탬프(
Figure pat00079
) 기간 동안 클라우드 스토리지(500)에 접근할 수 없다.
상술한 바와 같은 본 발명에 따르면, 데이터를 CP-ABE와 같은 속성기반 암호로 암호화하여 클라우드에 업로드하면 다수의 사용자가 암호화된 데이터에 접근이 가능하다. 특히 TTP 서버(100)에서 비밀키 생성시 속성과 랜덤함수를 기반으로 비밀키를 생성하기 때문에 제 3자가 사용자의 속성정보만으로 비밀키(
Figure pat00080
)를 유추할 수 없다. 또한, 사용자와 AC만이 알고 있는 사용자 정보(nonce value)를 대칭키로 사용하여 데이터 접근을 요청하고, 데이터 복호시 최종 복호화키(
Figure pat00081
)도 같이 사용하기 때문에 사용자들 간의 공모를 통해 데이터(
Figure pat00082
)를 복호화하기 어렵다. 이에 따르면, 기존 클라우드 환경에서 발생되는 공모공격을 방지할 수 있으며, 클라우드에 저장된 데이터에 대한 무결성 및 기밀성을 보장할 수 있다. 사용자가 탈퇴 시 사용자 속성 해지리스트에서 사용자를 등록하고 사용자 정보(nonce value) 중 변경한 정보를 AC 서버(400)와 공유한다. 그리고, 사용자와 AC 서버(400) 간의 통신은 사용자 속성 해지리스트에 등록된 사용자의 사용자 정보(nonce value)를 대칭키로 사용하여 통신하기 때문에 탈퇴 된 사용자가 다른 사용자의 속성을 가지고 AC 서버(400)에 접근하더라도 AC 서버(400)는 접근요청 메시지를 알 수 없다. 이에 따라, 다른 사람의 속성을 사칭에서 접근하는 위장공격에 안전하며, 탈되 된 사용자의 접근을 차단할 수 있다. 또한, 효율성 측면에서는 암호화하는 과정에서
Figure pat00083
연산을 통해 증가되는 속성의 수를 한가지의 속성의 수로 나타내어 암호문의 크기를 일정하게 출력할 수 있으며, 이로 인해 클라우드 스토리지(500) 저장 공간을 효율적으로 사용할 수 있다. 또한, 아웃소싱 기법을 지원하는 AC 서버(400)에서 부분 복호화 연산을 처리함으로써 사용자가 암호문을 복호화 시 처리할 수 있는 연산량을 감소시켜 연산의 효율성을 증대시킬 수 있다. 이를 통해, 클라우드 환경에서 안전하고 효율적인 데이터 공유 서비스를 제공할 수 있다.
본 발명의 실시예에 따른 방법들은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는, 본 발명을 위한 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 아니 된다. 또한, 본 명세서의 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서의 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 앱 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것은 아니다.
100 : TTP 서버
200 : 데이터 소유자부
300 : 사용자부
400 : AC 서버
500 : 클라우드 스토리지

Claims (10)

  1. TTP 서버가, 사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하는 단계;
    TTP 서버가, 상기 생성된 공개키와 마스터 키 및 비밀키를 데이터 소유자부 및 사용자부로 전송하는 단계;
    데이터 소유자부가, TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 단계;
    사용자부가, TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 단계;
    AC 서버가, 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 사용자부로 암호문과 함께 전송하는 단계; 및
    AC 서버가, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지에 접근하는 것을 차단하는 단계;를 포함하는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.
  2. 제 1 항에 있어서,
    상기 TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 단계는,
    데이터 소유자부가, 자신이 공유할 데이터에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조를 생성하는 단계; 및
    데이터 소유자부가, 공개 파라미터와 접근구조로 데이터를 암호화하여, 클라우드 스토리지에 전송하는 단계;를 포함하는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.
  3. 제 1 항에 있어서,
    상기 TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 단계는,
    암호화된 데이터 접근을 요청하는 사용자부가, TTP 서버로부터 받은 사용자 정보(nonce value)로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰을 생성하고, 자신의 식별자와 함께 AC 서버로 전송하는 단계;
    AC 서버가, 사용자부로부터 받은 클라우드에 접근하기 위한 토큰을 가지고 있는 사용자 정보(nonce value)로 복호화하여 사용자부의 속성을 획득하는 단계; 및
    AC 서버가, 사용자부가 원하는 암호데이터를 클라우드 스토리지에 요청한 후 암호문을 전송받는 단계;를 포함하는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.
  4. 제 1 항에 있어서,
    상기 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 사용자부로 암호문과 함께 전송하는 단계는,
    AC 서버가, 사용자부의 속성과 암호문에 지정된 접근구조를 비교하여 만족하는 경우, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 생성하는 단계;
    AC 서버가, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 사용자 정보(nonce value)로 암호화하여 사용자부로 전송하는 단계;
    사용자부가 AC 서버로부터 전송받은 사용자 정보를 복호화하여 부분 복호화 진행 후 생성되는 최종 복호화 키 요소를 획득하는 단계; 및
    사용자부가 암호화문을 비밀키, 부분 복호화 진행 후 생성되는 최종 복호화 키 요소, 공개 파라미터를 통해 최종 복호화를 진행하여 메시지를 획득하는 단계;를 포함하는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.
  5. 제 1 항에 있어서,
    상기 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지에 접근하는 것을 차단하는 단계는,
    사용자부가 TTP 서버에 탈퇴등록을 요청하는 단계;
    TTP 서버가 탈퇴할 사용자부의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자 정보를 변경하는 단계;
    TTP 서버가 탈퇴한 사용자부가 기존에 가지고 있던 사용자 정보를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰을 만들어 AC 서버에게 접근을 요청하는 단계; 및
    AC 서버가 접근실패 메시지를 사용자부로 전송하여 탈퇴한 사용자부에 대한 접근을 차단하는 단계;를 포함하는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.
  6. 데이터를 저장 및 관리하는 클라우드 스토리지를 포함하는 데이터 접근 제어 시스템에 있어서,
    사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하며, 생성된 공개키와 마스터 키 및 비밀키를 데이터 소유자부 및 사용자부로 전송하는 TTP 서버;
    TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 데이터 소유자부;
    TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 사용자부; 및
    사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 사용자부로 암호문과 함께 전송하고, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지에 접근하는 것을 차단하는 AC 서버;를 포함하는 데이터 접근 제어 시스템.
  7. 제 6 항에 있어서,
    상기 데이터 소유자부는,
    자신이 공유할 데이터에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조를 생성하고, 공개 파라미터와 접근구조로 데이터를 암호화하여, 클라우드 스토리지에 전송하는 것을 특징으로 하는 데이터 접근 제어 시스템.
  8. 제 6 항에 있어서,
    상기 사용자부는,
    TTP 서버로부터 받은 사용자 정보(nonce value)로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰을 생성하고, 자신의 식별자와 함께 AC 서버로 전송하며, 암호화문을 비밀키, 부분 복호화 진행 후 생성되는 최종 복호화 키 요소, 공개 파라미터를 통해 최종 복호화를 진행하여 메시지를 획득하고, TTP 서버에 탈퇴등록을 요청하는 것을 특징으로 하는 데이터 접근 제어 시스템.
  9. 제 6 항에 있어서,
    AC 서버는, 사용자부로부터 받은 클라우드에 접근하기 위한 토큰을 가지고 있는 사용자 정보(nonce value)로 복호화하여 사용자부의 속성을 획득하고, 사용자부가 원하는 암호데이터를 클라우드 스토리지에 요청한 후 암호문을 전송받으며, 사용자부의 속성과 암호문에 지정된 접근구조를 비교하여 만족하는 경우, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 생성하고, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 사용자 정보(nonce value)로 암호화하여 사용자부로 전송하고, 접근실패 메시지를 사용자부로 전송하여 탈퇴한 사용자부에 대한 접근을 차단하는 것을 특징으로 하는 데이터 접근 제어 시스템.
  10. 제 6 항에 있어서,
    TTP 서버는, 탈퇴할 사용자부의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자 정보를 변경하고, 탈퇴한 사용자부가 기존에 가지고 있던 사용자 정보를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰을 만들어 AC 서버에게 접근을 요청하는 것을 특징으로 하는 데이터 접근 제어 시스템.

KR1020190145613A 2019-11-14 2019-11-14 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템 KR102298266B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190145613A KR102298266B1 (ko) 2019-11-14 2019-11-14 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190145613A KR102298266B1 (ko) 2019-11-14 2019-11-14 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20210058313A true KR20210058313A (ko) 2021-05-24
KR102298266B1 KR102298266B1 (ko) 2021-09-06

Family

ID=76153303

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190145613A KR102298266B1 (ko) 2019-11-14 2019-11-14 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR102298266B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157424A (zh) * 2021-12-03 2022-03-08 福建师范大学 无密钥托管且支持用户撤销的属性基加密系统及方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230127696A (ko) 2022-02-25 2023-09-01 부경대학교 산학협력단 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101380278B1 (ko) * 2012-09-26 2014-04-02 동국대학교 경주캠퍼스 산학협력단 데이터 접근 철회 방법 및 이를 이용한 클라우드 서비스 시스템
KR20180101870A (ko) 2017-03-06 2018-09-14 고려대학교 산학협력단 클라우드 컴퓨팅 환경에서의 속성 기반 암호화를 이용한 데이터 공유 방법 및 시스템
KR20190063193A (ko) * 2017-11-29 2019-06-07 고려대학교 산학협력단 사물인터넷 관리를 위한 클라우드 컴퓨팅 환경에서의 데이터 공유 방법 및 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101380278B1 (ko) * 2012-09-26 2014-04-02 동국대학교 경주캠퍼스 산학협력단 데이터 접근 철회 방법 및 이를 이용한 클라우드 서비스 시스템
KR20180101870A (ko) 2017-03-06 2018-09-14 고려대학교 산학협력단 클라우드 컴퓨팅 환경에서의 속성 기반 암호화를 이용한 데이터 공유 방법 및 시스템
KR20190063193A (ko) * 2017-11-29 2019-06-07 고려대학교 산학협력단 사물인터넷 관리를 위한 클라우드 컴퓨팅 환경에서의 데이터 공유 방법 및 시스템

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Changehee Hahn 외 2명, Trustworthy Delegation Toward Securing Mobile Healthcare Cyber-Physical Systems, IEEE INTERNET OF THINGS JOURNAL, VOL.6 NO.4 (2019.08.)* *
Runhua Xu 외 2명, A Tree-based CP-ABE Scheme with Hidden Policy Supporting Secure Data Sharing in Cloud Computing, 2013 International Confernece on Advanced Clound and Big Data (2013.)* *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157424A (zh) * 2021-12-03 2022-03-08 福建师范大学 无密钥托管且支持用户撤销的属性基加密系统及方法
CN114157424B (zh) * 2021-12-03 2023-05-05 福建师范大学 无密钥托管且支持用户撤销的属性基加密系统及方法

Also Published As

Publication number Publication date
KR102298266B1 (ko) 2021-09-06

Similar Documents

Publication Publication Date Title
US10803194B2 (en) System and a method for management of confidential data
JP6949972B2 (ja) ブロックチェーンに基づくデジタル権利管理
Khanezaei et al. A framework based on RSA and AES encryption algorithms for cloud computing services
Kaaniche et al. A secure client side deduplication scheme in cloud storage environments
US20030081774A1 (en) Method and apparatus for dynamic generation of symmetric encryption keys and exchange of dynamic symmetric key infrastructure
Swathy et al. Providing advanced security mechanism for scalable data sharing in cloud storage
CN103780607B (zh) 基于不同权限的重复数据删除的方法
WO2017036146A1 (zh) 授权访问方法以及使用该方法的设备
US20030210791A1 (en) Key management
CN106797316B (zh) 路由器、数据设备、分发数据的方法和系统
CN108809633B (zh) 一种身份认证的方法、装置及系统
CA2921740A1 (en) Enabling access to data
CN110688666B (zh) 一种分布式存储中数据加密保存方法
CN106685919A (zh) 一种具有被动式动态密钥分发机制的安全云存储方法
JP2022542095A (ja) 強化された安全な暗号化及び復号化システム
KR102298266B1 (ko) 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템
Ramachandran et al. Secure and efficient data forwarding in untrusted cloud environment
Rukavitsyn et al. The method of ensuring confidentiality and integrity data in cloud computing
Suthar et al. EncryScation: A novel framework for cloud iaas, daas security using encryption and obfuscation techniques
US10015143B1 (en) Methods for securing one or more license entitlement grants and devices thereof
Mohit et al. Confidentiality and storage of data in cloud environment
Chandramohan et al. MSRCC–mitigation of security risks in cloud computing
Charanya et al. Attribute based encryption for secure sharing of E-health data
KR100989371B1 (ko) 개인 홈 도메인을 위한 디지털 저작권 관리방법
Pitchay et al. Mobile application design for protecting the data in cloud using enhanced technique of encryption

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant