KR102298266B1 - Data access control method and system using attribute-based password for secure and efficient data sharing in cloud environment - Google Patents
Data access control method and system using attribute-based password for secure and efficient data sharing in cloud environment Download PDFInfo
- Publication number
- KR102298266B1 KR102298266B1 KR1020190145613A KR20190145613A KR102298266B1 KR 102298266 B1 KR102298266 B1 KR 102298266B1 KR 1020190145613 A KR1020190145613 A KR 1020190145613A KR 20190145613 A KR20190145613 A KR 20190145613A KR 102298266 B1 KR102298266 B1 KR 102298266B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- data
- server
- attribute
- unit
- Prior art date
Links
Images
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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key 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/0847—Key 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
-
- 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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network 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
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/083—Key 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]
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- 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/32—Cryptographic 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/321—Cryptographic 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/3213—Cryptographic 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
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)
- Storage Device Security (AREA)
Abstract
본 발명은 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템을 개시한다. 본 발명의 일 측면에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법은, TTP 서버가, 사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하는 단계; 상기 TTP 서버가, 상기 생성된 공개키를 데이터 소유자부 및 사용자부로 각각 전송하고 상기 마스터 키 및 비밀키를 상기 사용자부로 전송하는 단계; 상기 데이터 소유자부가, 상기 TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 단계; 상기 사용자부가, 상기 TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 단계; AC 서버가, 상기 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 상기 사용자부로 암호문과 함께 전송하는 단계; 및 상기 AC 서버가, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 상기 클라우드 스토리지에 접근하는 것을 차단하는 단계;를 포함하며; 상기 AC 서버는 상기 암호문의 크기를 속성의 개수에 비례하지 않고 일정 크기로 출력시키는 것을 특징으로 한다.The present invention discloses a data access control method and system using attribute-based encryption for safe and efficient data sharing in a cloud environment. In a data access control method using attribute-based encryption for safe and efficient data sharing in a cloud environment according to an aspect of the present invention, a TTP server manages user information registered by a user, and includes a public key and a master key and generating a secret key; transmitting, by the TTP server, the generated public key to a data owner unit and a user unit, respectively, and transmitting the master key and the private key to the user unit; encrypting, by the data owner unit, the data transmitted from the TTP server and uploading the data to the cloud storage by creating an access structure based on the information received from the TTP server and the attribute of the user unit capable of accessing its own data in the cloud environment; generating, by the user unit, a token for accessing the cloud using the information received from the TTP server and accessing the cloud storage; When the AC server compares and matches the attribute of the access structure specified in the cipher text to be accessed by the user unit and the user attribute, partial decryption proceeds to generate a key element necessary for final decryption and transmits it to the user unit together with the cipher text; and blocking, by the AC server, from accessing the cloud storage with information previously owned by the withdrawn user by canceling the attribute of the withdrawn user; The AC server is characterized in that the size of the cipher text is not proportional to the number of attributes and outputs a predetermined size.
Description
본 발명은 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템에 관한 것으로, 더욱 상세하게는 속성기반 암호의 한 종류인 CP-ABE를 활용하여 클라우드 환경에서 효율적인 데이터 공유를 할 수 있는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템에 관한 것이다.The present invention relates to a data access control method and system using attribute-based encryption for safe and efficient data sharing in a cloud environment, and more particularly, to a data access control method and system using CP-ABE, a type of attribute-based encryption It relates to a data access control method and system using attribute-based encryption for safe and efficient data sharing in a cloud environment that can share data.
최근 아마존 및/또는 구글과 같은 클라우드 컴퓨팅의 발달로 인해 사람들은 많은 비용이 소요되는 스토리지 공간을 임대하는 대신 클라우드 환경에 데이터를 저장하거나 필요에 따라 다른 사람들과 공유할 수 있다. 무엇보다 클라우드 컴퓨팅은 인터넷을 통해 사용할 수 있기 때문에 사용자 측면에서 편리하다. 하지만, 클라우드 환경에서는 다양한 보안 위협이 존재한다. 특히, 서비스 제공업체를 완전히 신뢰할 수 없다. 예컨대, 사용자는 한 회사에서 제공하는 클라우드를 사용하여 데이터를 안전하게 저장하기 때문에 데이터를 보호할 수 있지만, 클라우드를 제공하는 회사는 언제든지 데이터를 악용할 수 있다. 또한, 공격자에 의해 데이터가 유출 및/또는 손실될 수 있는 보안 위협이 존재한다. 따라서, 클라우드 환경에서 데이터 소유자의 데이터를 보호하기 위한 보안 기술이 필요하다. 다양한 보안 기술 중 CP-ABE(Ciphertext Policy-Attribute-Based Encryption) 방식이 가장 적합한 암호 기술이다. 현재까지 CP-ABE는 지속적으로 연구되어지고 있지만, 일부 보안 위협에 취약하거나 비효율적인 문제점이 존재한다. 특히, 보안 측면에서 사용자가 기존 클라우드 환경에서 탈퇴시 사용자 속성이 완전히 제거되어, 탈퇴 후 기존 클라우드에 접근할 수 없어야 한다. 하지만, 탈퇴한 사용자가 기존 속성 및 비밀키로 클라우드 환경에 접근할 수 있는 문제점이 발생한다. 또한, 탈퇴한 사용자가 다른 사용자의 속성을 가지고 접근할 수 있는 위장공격 및/또는 공모공격 등과 같은 다양한 보안 위협이 발생할 수 있다. Recent advances in cloud computing such as Amazon and/or Google allow people to store data in a cloud environment or share it with others as needed instead of renting out expensive storage space. Above all, cloud computing is convenient for users because it can be used over the Internet. However, various security threats exist in the cloud environment. In particular, the service provider cannot be completely trusted. For example, users can protect their data because they use the cloud provided by a company to securely store their data, but the company that provides the cloud can abuse the data at any time. In addition, there is a security threat in which data may be leaked and/or lost by an attacker. Therefore, there is a need for a security technology to protect the data of the data owner in the cloud environment. Among various security technologies, CP-ABE (Ciphertext Policy-Attribute-Based Encryption) is the most suitable encryption technology. Until now, CP-ABE has been continuously studied, but it is vulnerable to some security threats or has inefficiency problems. In particular, in terms of security, when a user leaves the existing cloud environment, the user attributes are completely removed, so that the user cannot access the existing cloud after leaving. However, there is a problem that a user who has withdrawn can access the cloud environment with the existing attribute and secret key. In addition, various security threats such as spoofing attacks and/or collusion attacks in which a departed user can access with the attributes of other users may occur.
본 발명은 상기와 같은 문제점을 해결하기 위해 제안된 것으로서, 속성기반 암호의 한 종류인 CP-ABE를 활용하여 클라우드 환경에서 데이터를 효율적으로 공유할 수 있는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템을 제공하는데 그 목적이 있다. The present invention has been proposed to solve the above problems, and it is an attribute for safe and efficient data sharing in a cloud environment that can efficiently share data in a cloud environment by using CP-ABE, which is a type of attribute-based encryption. An object of the present invention is to provide a data access control method and system using a base password.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 일 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허청구범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.Other objects and advantages of the present invention may be understood by the following description, and will be more clearly understood by an embodiment of the present invention. Further, it will be readily apparent that the objects and advantages of the present invention can be realized by the means and combinations thereof indicated in the claims.
상기와 같은 목적을 달성하기 위한 본 발명의 일 측면에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법은, TTP 서버가, 사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하는 단계; 상기 TTP 서버가, 상기 생성된 공개키를 데이터 소유자부 및 사용자부로 각각 전송하고 상기 마스터 키 및 비밀키를 상기 사용자부로 전송하는 단계; 상기 데이터 소유자부가, 상기 TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 단계; 상기 사용자부가, 상기 TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 단계; AC 서버가, 상기 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 상기 사용자부로 암호문과 함께 전송하는 단계; 및 상기 AC 서버가, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 상기 클라우드 스토리지에 접근하는 것을 차단하는 단계;를 포함하며; 상기 AC 서버는 상기 암호문의 크기를 속성의 개수에 비례하지 않고 일정 크기로 출력시키는 것을 특징으로 한다.In a data access control method using attribute-based encryption for safe and efficient data sharing in a cloud environment according to an aspect of the present invention for achieving the above object, a TTP server manages user information registered by a user and generating a public key, a master key, and a private key; transmitting, by the TTP server, the generated public key to a data owner unit and a user unit, respectively, and transmitting the master key and the private key to the user unit; encrypting, by the data owner unit, the data transmitted from the TTP server and uploading the data to the cloud storage by creating an access structure based on the information received from the TTP server and the attribute of the user unit capable of accessing its own data in the cloud environment; generating, by the user unit, a token for accessing the cloud using the information received from the TTP server and accessing the cloud storage; When the AC server compares and matches the user attribute with the attribute of the access structure specified in the cipher text to be accessed by the user unit, partial decryption is performed to generate a key element necessary for final decryption, and transmitting it to the user unit together with the cipher text; and blocking, by the AC server, from accessing the cloud storage with information previously owned by the withdrawn user by canceling the attribute of the withdrawn user; The AC server is characterized in that the size of the cipher text is output in a predetermined size without being proportional to the number of attributes.
상기 TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 상기 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 상기 클라우드 스토리지에 업로드하는 단계는, 상기 데이터 소유자부가, 자신이 공유할 데이터에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조를 생성하는 단계; 및 상기 데이터 소유자부가, 공개 파라미터와 접근구조로 데이터를 암호화하여, 상기 클라우드 스토리지에 전송하는 단계;를 포함하는 것을 특징으로 한다. The step of creating an access structure based on the information received from the TTP server and the properties of the user unit capable of accessing own data in the cloud environment, encrypting the data, and uploading the data to the cloud storage includes: creating a tree-type access structure based on the attributes of a user who can access data; and encrypting, by the data owner unit, data using public parameters and access structures, and transmitting the data to the cloud storage.
상기 TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 상기 클라우드 스토리지에 접근하는 단계는, 암호화된 데이터 접근을 요청하는 상기 사용자부가, 상기 TTP 서버로부터 받은 사용자 정보(nonce value)로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰을 생성하고, 자신의 식별자와 함께 상기 AC 서버로 전송하는 단계; 상기 AC 서버가, 상기 사용자부로부터 받은 클라우드에 접근하기 위한 토큰을 가지고 있는 사용자 정보(nonce value)로 복호화하여 사용자부의 속성을 획득하는 단계; 및 상기 AC 서버가, 상기 사용자부가 원하는 암호데이터를 상기 클라우드 스토리지에 요청한 후 암호문을 전송받는 단계;를 포함하는 것을 특징으로 한다. The step of generating a token for accessing the cloud by using the information received from the TTP server and accessing the cloud storage includes, by the user unit requesting access to encrypted data, user information (nonce value) received from the TTP server generating a token for accessing the cloud by encrypting its own attribute set, and transmitting it to the AC server together with its own identifier; deciphering, by the AC server, user information (nonce value) having a token for accessing the cloud received from the user unit to obtain attributes of the user unit; and receiving, by the AC server, the encrypted text after requesting the encrypted data desired by the user to the cloud storage.
상기 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 상기 사용자부로 암호문과 함께 전송하는 단계는, 상기 AC 서버가, 상기 사용자부의 속성과 암호문에 지정된 접근구조를 비교하여 만족하는 경우, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 생성하는 단계; 상기 AC 서버가, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 사용자 정보(nonce value)로 암호화하여 사용자부로 전송하는 단계; 상기 사용자부가 상기 AC 서버로부터 전송받은 사용자 정보를 복호화하여 부분 복호화 진행 후 생성되는 최종 복호화 키 요소를 획득하는 단계; 및 상기 사용자부가 암호화문을 비밀키, 부분 복호화 진행 후 생성되는 최종 복호화 키 요소, 공개 파라미터를 통해 최종 복호화를 진행하여 메시지를 획득하는 단계;를 포함하는 것을 특징으로 한다.When the user attribute compares and matches the attribute of the access structure specified in the cipher text to be accessed by the user unit, partial decryption proceeds to generate a key element necessary for final decryption and transmits it together with the cipher text to the user unit, the AC server (a), if satisfied by comparing the properties of the user unit with the access structure specified in the cipher text, partially decrypting the cipher text to generate a key required for final decryption; The AC server partially decrypts the cipher text, encrypts the key required for final decryption as user information (nonce value) and transmits it to the user unit; obtaining, by the user unit, a final decryption key element generated after partial decryption by decrypting the user information transmitted from the AC server; and obtaining, by the user, a message by performing final decryption of the encrypted text using a private key, a final decryption key element generated after partial decryption, and a public parameter.
상기 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 상기 클라우드 스토리지에 접근하는 것을 차단하는 단계는, 상기 사용자부가 상기 TTP 서버에 탈퇴등록을 요청하는 단계; 상기 TTP 서버가 탈퇴할 사용자부의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자 정보를 변경하는 단계; 상기 TTP 서버가 탈퇴한 상기 사용자부가 기존에 가지고 있던 사용자 정보를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰을 만들어 상기 AC 서버에게 접근을 요청하는 단계; 및 상기 AC 서버가 접근실패 메시지를 사용자부로 전송하여 탈퇴한 사용자부에 대한 접근을 차단하는 단계;를 포함하는 것을 특징으로 한다.The step of canceling the attribute of the withdrawn user to block the withdrawn user from accessing the cloud storage with the information previously possessed may include: requesting, by the user, a withdrawal registration from the TTP server; adding, by the TTP server, information of the user to be withdrawn to the user attribute revocation list and changing the information of the user to withdraw from; making, by the TTP server, a token for accessing the cloud by using the user information previously owned by the user unit as a symmetric key, and requesting access to the AC server; and blocking, by the AC server, an access failure message to the user unit to block access to the withdrawn user unit.
상기와 같은 목적을 달성하기 위한 본 발명의 다른 측면에 따른 데이터를 저장 및 관리하는 클라우드 스토리지를 포함하는 데이터 접근 제어 시스템은, 사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하며, 상기 생성된 공개키를 데이터 소유자부 및 사용자부로 각각 전송하고 상기 생성된 마스터 키 및 비밀키를 상기 사용자부로 전송하는 TTP 서버; 상기 TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 상기 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 상기 클라우드 스토리지에 업로드하는 상기 데이터 소유자부; 상기 TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 상기 클라우드 스토리지에 접근하는 사용자부; 및 상기 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 상기 사용자부로 암호문과 함께 전송하고, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 상기 클라우드 스토리지에 접근하는 것을 차단하는 AC 서버;를 포함하며; 상기 AC 서버는 상기 암호문의 크기를 속성의 개수에 비례하지 않고 일정 크기로 출력시키는 것을 특징으로 한다.Data access control system including cloud storage for storing and managing data according to another aspect of the present invention for achieving the above object, manages user information registered by a user, public key, master key and secret a TTP server that generates a key, transmits the generated public key to a data owner unit and a user unit, respectively, and transmits the generated master key and private key to the user unit; the data owner unit for encrypting data and uploading to the cloud storage by creating an access structure based on the information transmitted from the TTP server and the attribute of the user unit capable of accessing its own data in a cloud environment; a user unit that generates a token for accessing the cloud using the information received from the TTP server and accesses the cloud storage; and if the user attribute is matched with the attribute of the access structure specified in the cipher text to be accessed by the user unit, partial decryption proceeds to generate a key element necessary for final decryption and transmits it to the user unit along with the cipher text, and and an AC server that blocks access to the cloud storage with information that a user who has withdrawn by canceling an attribute has previously owned information; The AC server is characterized in that the size of the cipher text is output in a predetermined size without being proportional to the number of attributes.
상기 데이터 소유자부는, 자신이 공유할 데이터에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조를 생성하고, 공개 파라미터와 접근구조로 데이터를 암호화하여, 상기 클라우드 스토리지에 전송하는 것을 특징으로 한다. The data owner unit generates a tree-type access structure based on the properties of the user who can access the data to be shared, encrypts the data with public parameters and the access structure, and transmits it to the cloud storage do.
상기 사용자부는, 상기 TTP 서버로부터 받은 사용자 정보(nonce value)로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰을 생성하고, 자신의 식별자와 함께 상기 AC 서버로 전송하며, 암호화문을 비밀키, 부분 복호화 진행 후 생성되는 최종 복호화 키 요소, 공개 파라미터를 통해 최종 복호화를 진행하여 메시지를 획득하고, 상기 TTP 서버에 탈퇴등록을 요청하는 것을 특징으로 한다. The user unit generates a token for accessing the cloud by encrypting its attribute set with user information (nonce value) received from the TTP server, transmits it to the AC server together with its identifier, and transmits the encrypted text as a secret key , a final decryption key element and public parameter generated after partial decryption to obtain a message through final decryption, and to request withdrawal registration from the TTP server.
상기 AC 서버는, 상기 사용자부로부터 받은 클라우드에 접근하기 위한 토큰을 가지고 있는 사용자 정보(nonce value)로 복호화하여 상기 사용자부의 속성을 획득하고, 상기 사용자부가 원하는 암호데이터를 상기 클라우드 스토리지에 요청한 후 암호문을 전송받으며, 상기 사용자부의 속성과 암호문에 지정된 접근구조를 비교하여 만족하는 경우, 상기 암호문을 부분 복호화하여 최종 복호시 필요한 키를 생성하고, 상기 암호문을 부분 복호화하여 최종 복호시 필요한 키를 상기 사용자 정보(nonce value)로 암호화하여 상기 사용자부로 전송하고, 접근실패 메시지를 상기 사용자부로 전송하여 탈퇴한 사용자부에 대한 접근을 차단하는 것을 특징으로 한다. The AC server decrypts the user information (nonce value) having a token for accessing the cloud received from the user unit to obtain the attributes of the user unit, and after requesting the encrypted data desired by the user unit to the cloud storage, the encrypted text is transmitted, and if it is satisfied by comparing the attribute of the user part with the access structure specified in the cipher text, the cipher text is partially decrypted to generate a key required for final decryption, and the cipher text is partially decrypted to obtain the key required for final decryption by the user It is characterized in that the information (nonce value) is encrypted and transmitted to the user unit, and an access failure message is transmitted to the user unit to block access to the withdrawn user unit.
상기 TTP 서버는, 탈퇴할 사용자부의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자 정보를 변경하고, 탈퇴한 사용자부가 기존에 가지고 있던 사용자 정보를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰을 만들어 AC 서버에게 접근을 요청하는 것을 특징으로 한다. The TTP server adds the information of the user part to withdraw to the user attribute revocation list, changes the user information to withdraw, and creates a token for accessing the cloud using the user information previously owned by the withdrawn user part as a symmetric key. It is characterized by requesting access to the server.
본 발명의 일 측면에 따르면, 탈퇴된 사용자의 접근을 차단하고, 속성의 개수에 따라 증가되는 암호문 크기를 고정하여 출력시킴으로써 스토리지의 공간의 효율을 증대시킬 수 있는 효과가 있다. According to one aspect of the present invention, there is an effect that can increase the efficiency of the storage space by blocking the access of the withdrawn user and outputting the ciphertext size that is increased according to the number of attributes by fixing it.
또한, 아웃소싱 기법을 통한 부분 복호화 기법을 통해 사용자의 복호화 연산의 부담을 최소화하여 연산의 효율성을 증대시킬 수 있는 효과가 있다. In addition, there is an effect of increasing the efficiency of the operation by minimizing the user's burden on the decryption operation through the partial decryption method through the outsourcing method.
또한, 다수의 사용자들이 자신의 속성을 기반으로 클라우드에 저장된 데이터 중 원하는 데이터를 안전하고 효율적으로 공유할 수 있는 환경을 제공할 수 있다.In addition, it is possible to provide an environment in which multiple users can safely and efficiently share desired data among data stored in the cloud based on their properties.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtainable in the present invention are not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those of ordinary skill in the art to which the present invention belongs from the following description. .
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명을 실시하기 위한 구체적인 내용들과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시예에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 시스템의 개략적인 구성도,
도 2는 본 발명의 일 실시예에 따른 초기 설정 및 키 생성 단계의 흐름을 개략적으로 도시한 도면,
도 3은 본 발명의 일 실시예에 따른 데이터 암호화 단계의 흐름을 개략적으로 도시한 도면,
도 4는 본 발명의 일 실시예에 따른 사용자 데이터 접근 단계 및 데이터 복호화 단계의 흐름을 개략적으로 도시한 도면,
도 5는 본 발명의 일 실시예에 따른 사용자 탈퇴 시 단계의 흐름을 개략적으로 도시한 도면이다. The following drawings attached to this specification illustrate preferred embodiments of the present invention, and serve to further understand the technical spirit of the present invention together with specific contents for carrying out the invention, so the present invention is in such drawings It should not be construed as being limited only to the stated matters.
1 is a schematic configuration diagram of a data access control system using attribute-based encryption for safe and efficient data sharing in a cloud environment according to an embodiment of the present invention;
2 is a diagram schematically showing the flow of initial setting and key generation steps according to an embodiment of the present invention;
3 is a diagram schematically showing the flow of a data encryption step according to an embodiment of the present invention;
4 is a diagram schematically illustrating the flow of a user data access step and a data decryption step according to an embodiment of the present invention;
5 is a diagram schematically illustrating a flow of steps when a user leaves a user according to an embodiment of the present invention.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.The above-described objects, features, and advantages will become more apparent through the following detailed description in relation to the accompanying drawings, and accordingly, those of ordinary skill in the art to which the present invention pertains can easily implement the technical idea of the present invention. There will be. In addition, in the description of the present invention, if it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. Hereinafter, a preferred embodiment according to the present invention will be described in detail with reference to the accompanying drawings.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 “…부” 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated. In addition, the “… The term “unit” means a unit that processes at least one function or operation, which may be implemented as hardware or software or a combination of hardware and software.
도 1은 본 발명의 일 실시예에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 시스템의 개략적인 구성도이다.1 is a schematic configuration diagram of a data access control system using attribute-based encryption for safe and efficient data sharing in a cloud environment according to an embodiment of the present invention.
본 실시예를 설명함에 있어서, 데이터 소유자부 및 사용자부는 클라우드를 통해 데이터를 공유하고자 하는 개체이다. 데이터 소유자부 및 사용자부는 PC, 태블릿 등과 같은 사용자 단말을 포함할 수 있다. 즉, 데이터 소유자부는 데이터 소유자가 소지한 사용자 단말일 수 있으며, 사용자부는 데이터의 사용자가 소지한 단말일 수 있다. In the description of the present embodiment, the data owner unit and the user unit are entities that want to share data through the cloud. The data owner unit and the user unit may include a user terminal such as a PC or a tablet. That is, the data owner unit may be a user terminal owned by the data owner, and the user unit may be a terminal owned by the data user.
도 1을 참조하면, 본 실시예에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 시스템은, TTP 서버(100), 데이터 소유자부(200), 사용자부(300) 및 AC 서버(400)를 포함한다. 이때, TTP 서버(100)는 클라우드 환경하에서 클라우드 스토리지(500)와 연결되어 통신을 수행할 수 있다. 이때, 클라우드 스토리지(500)는 데이터를 저장 및 관리하는 역할을 할 수 있다.Referring to FIG. 1 , the data access control system using attribute-based encryption for safe and efficient data sharing in a cloud environment according to the present embodiment includes a
TTP 서버(100)는, 신뢰할 수 있는 객체로, 초기 설정 및 키를 생성할 수 있다. 즉, TTP 서버(100)는, 사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하며, 생성된 공개키와 마스터 키 및 비밀키를 데이터 소유자부(200) 및 사용자부(300)로 전송할 수 있다. The
데이터 소유자부(200)는, 데이터를 암호화하는 객체일 수 있다. 즉, TTP 서버(100)로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부(300)의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지(500)에 업로드할 수 있다. The
사용자부(300)는, 데이터에 접근하려는 객체일 수 있다. 즉, 사용자부(300)는, TTP 서버(100)로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지(500)에 접근할 수 있다. The
AC 서버(400)는, 사용자의 접근차단 및 암호문의 부분 복호화를 진행해주는 아웃소싱 기법이 지원되는 객체일 수 있다. 즉, AC 서버(400)는, 사용자부(300)가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 사용자부(300)로 암호문과 함께 전송하고, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지(500)에 접근하는 것을 차단할 수 있다. The
상술한 바에 따른 데이터 접근 제어 시스템에 대해 정리하면 아래와 같다.The data access control system according to the above-mentioned bar is summarized as follows.
탈퇴된 사용자를 TTP 서버(100)의 속성 해지리스트에 등록하고, 일부 사용자 정보를 AC(Access Control) 서버에게 공유함으로써, AC 서버(400)는 사용자의 접근시 탈퇴된 사용자인지 아닌지 여부를 파악하여 탈퇴한 사용자의 접근권한을 차단할 수 있다. 여기서, TTP(Trusted third party)는 신뢰된 기관으로써 공개키, 마스터키를 출력하고, 등록된 사용자의 속성과 이에 대응하는 비밀키를 생성할 수 있으며, 속성 해지리스트를 통해 탈퇴된 사용자의 정보를 관리한다. 속성의 개수에 따라 암호문의 크기가 증가되는 문제를 해결하기 위해서는 암호문 생성과정에서 다수의 속성의 개수 연산을 통해 한 가지 속성으로 나타냄으로써 암호문 크기를 고정된 크기로 출력할 수 있으며, 이에 클라우드 스토리지(500) 공간을 효율적으로 사용할 수 있다. 또한, 아웃소싱 기법이 지원되는 AC 서버(400)를 통해 데이터에 접근하는 사용자의 속성과 암호문에 지정된 접근구조의 속성이 일치하면 암호문의 부분 복호화가 진행된다. 이후, 사용자는 부분 복호화가 진행된 암호문을 자신의 비밀키를 통해 최종복호화 연산만을 수행함으로써 데이터를 획득할 수 있기 때문에 연산량 측면에서 효율성이 제공될 수 있다. By registering the withdrawn user to the attribute revocation list of the
이하, 도 2 내지 도 5를 참조하여, 본 발명에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법에 대해 설명하기로 한다. Hereinafter, a data access control method using attribute-based encryption for safe and efficient data sharing in a cloud environment according to the present invention will be described with reference to FIGS. 2 to 5 .
도 2는 본 발명의 일 실시예에 따른 초기 설정 및 키 생성 단계의 흐름을 개략적으로 도시한 도면, 도 3은 본 발명의 일 실시예에 따른 데이터 암호화 단계의 흐름을 개략적으로 도시한 도면, 도 4는 본 발명의 일 실시예에 따른 사용자 데이터 접근 단계 및 데이터 복호화 단계의 흐름을 개략적으로 도시한 도면, 도 5는 본 발명의 일 실시예에 따른 사용자 탈퇴 시 단계의 흐름을 개략적으로 도시한 도면이다. 2 is a diagram schematically illustrating the flow of initial setting and key generation steps according to an embodiment of the present invention, FIG. 3 is a diagram schematically illustrating a flow of data encryption steps according to an embodiment of the present invention; 4 is a diagram schematically illustrating a flow of a user data access step and a data decryption step according to an embodiment of the present invention, and FIG. am.
한편, 본 실시예를 설명함에 있어서, 데이터 소유자 및 사용자는 각각 데이터 소유자부(200) 및 사용자부(300)를 소지한 사용자로, 데이터 소유자부(200) 및 사용자부(300)를 그 객체로 하여 각 단계의 흐름을 제어함은 자명하다.Meanwhile, in the description of the present embodiment, the data owner and the user are users having the
먼저, 본 발명에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법에 대해에 대해 설명하기 이전에 본 발명의 개념에 대해 간략하게 설명하기로 한다. First, before explaining the data access control method using attribute-based encryption for safe and efficient data sharing in a cloud environment according to the present invention, the concept of the present invention will be briefly described.
본 발명은 본 발명에 따른 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법에 관한 것으로, 상술한 도 1에 도시된 바와 같은 요소들로 구성될 수 있다. 전체적인 데이터 접근 제어 방법에 대한 시나리오는 초기 설정 및 키 생성단계, 데이터 암호화 단계, 사용자 데이터 접근단계 및 데이터 복호화 단계 등으로 구성될 수 있다. 한편, 사용자의 탈퇴 시, 사용자 탈퇴 등록 및 접근차단 단계를 더 포함할 수 있다.The present invention relates to a data access control method using attribute-based encryption for safe and efficient data sharing in a cloud environment according to the present invention, and may be composed of the elements shown in FIG. 1 described above. A scenario for the overall data access control method may consist of initial setting and key generation steps, data encryption steps, user data access steps, and data decryption steps. On the other hand, when the user withdraws, the user withdrawal registration and access blocking step may be further included.
한편, 본 실시예에 따른 데이터 접근 제어 방법을 설명함에 앞서, 이하 내용에서 사용되는 기호들에 대해 다음과 같이 정의하기로 한다.Meanwhile, before describing the data access control method according to the present embodiment, symbols used in the following description will be defined as follows.
: 신뢰할 수 있는 3기관(관리자) : 3 trusted organizations (administrators)
: 데이터를 관리하는 서버 : Server that manages data
: 사용자 접근제어 관리 : User access control management
: 공개 파라미터, 마스터키 : public parameters, master key
: 사용자 비밀키(암호문 복호화키) : User secret key (cipher text decryption key)
: 사용자 식별자 : user identifier
: 사용자 각 속성 데이터, 속성 데이터 집합 : Each user attribute data, attribute data set
AS : 접근구조(Access policy or Access Structure)AS: Access policy or Access Structure
: 각 속성이 가진 멀티 값 : Multiple values of each attribute
: 클라우드에 접근하기 위한 토큰 : Token to access the cloud
: 부분복호화 진행 후 생성되는 최종복호화 키 요소 : Final decryption key element generated after partial decryption
: 사용자마다 주어지는 랜덤값 : A random value given to each user
: 암호데이터 : password data
: 타임스탬프 : timestamp
도 2를 참조하면, 먼저, 초기 설정 및 키 생성 단계에서는 사용자를 TTP에 등록하는 초기설정(셋업) 단계 및 TTP 서버(100)에서 공개키와 마스터키 및 사용자 속성에 대응되는 비밀키를 생성하는 단계를 포함할 수 있다(S210, S220). Referring to FIG. 2 , first, in the initial setting and key generation stage, the initial setting (setup) stage of registering a user to the TTP and the
초기 설정 및 키 생성 단계에서, 사용자부(300)는 초기에 TTP 서버(100)에 등록 단계 절차를 수행하고, TTP 서버(100)는 사용자 정보를 관리할 수 있다. 이후, 공개키와 마스터키, 사용자 속성에 대응되는 비밀키를 생성하여 데이터 소유자부(200)와 사용자부(300)에게 안전한 채널로 정보를 송신하는 단계를 포함할 수 있으며, 보다 구체적인 단계는 아래와 같다. In the initial setting and key generation steps, the
<아 래><below>
1. TTP 서버(100)는 셋업 과정을 통해 초기 설정 및 공개키와 마스터키를 생성한다. 1. The
[수학식 1][Equation 1]
여기서, 겹선형 사상 그룹 G의 소수는 p이며, 랜덤 생성자는 로 생성Here, the prime of the bilinear mapping group G is p, and the random generator is created with
2. 사용자부(300)가 TTP 서버(100)에 등록한 후, TTP 서버(100)는 사용자부(300)의 속성을 가지고 비밀키()를 생성한다. 2. After the
[수학식 2][Equation 2]
(각 속성의 번호), ( 는 각 속성에 대해 주어진 임의의 값) (number of each attribute), ( is a given random value for each attribute)
3. TTP 서버(100)는 안전한 채널을 통해 데이터 소유자부(200)에게는 공개 파라미터()를 사용자부(300)에게 공개 파라미터()와 사용자 리스트에 등록된 사용자 식별자, 사용자 정보, 사용자 비밀키()를 전송한다. 3.
다음으로, 데이터 암호화 단계에서는 데이터 소유자가 사용자 속성을 기반을 접근구조를 생성하는 단계 및 메시지를 암호화하는 단계를 포함할 수 있다(S310, S320).Next, the data encryption step may include the data owner creating an access structure based on user attributes and encrypting the message (S310, S320).
데이터 암호화 단계에서, 데이터 소유자부(200)는 TTP 서버(100)로부터 받은 정보와 클라우드 환경 내에서 자신의 데이터에 접근 가능한 사용자부(300)의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고, 클라우드 스토리지(500)에 업로드하여 저장할 수 있다. 이때, 암호문의 크기는 속성의 개수에 비례하지 않고 일정크기가 출력되기 때문에 클라우드 스토리지(500)의 공간을 효율적으로 사용할 수 있다. 한편, 데이터 암호화 단계의 보다 구체적인 단계는 아래와 같다. In the data encryption step, the
<아 래><below>
1. 데이터 소유자부(200)는 자신이 공유할 데이터()에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조()를 생성한다.1. The
[수학식 3][Equation 3]
여기서, Vi는 각 속성이 가진 멀티값 Here, V i is the multi-value of each property.
, 여기서, AS는 접근구조 , Here, AS is the access structure
2. 공개 파라미터와 접근구조()로 데이터()를 암호화하여, 클라우드 스토리지(500)에 전송한다. 2. Public parameters and access structures ( ) as data( ) is encrypted and transmitted to the
[수학식 4][Equation 4]
(랜덤값 생성) (Generate random values)
3. 클라우드 스토리지(500)는 전송받은 암호화된 데이터를 저장한다.3. The
다음으로, 데이터 접근 단계에서는, 사용자가 TTP 서버(100)로부터 받은 정보를 가지고 데이터에 접근할 수 있는 토큰을 생성하는 단계 및 AC 서버(400)에 접근요청을 하는 단계를 포함할 수 있다(S410, S420).Next, in the data access step, the user may include the step of generating a token that can access the data with the information received from the
데이터 접근 단계에서, 사용자부(300)는 TTP 서버(100)로부터 전송받은 정보를 통해 클라우드에 접근하기 위한 토큰()을 생성하여 클라우드 스토리지(500)에 접근한다. 한편, 데이터 접근 단계의 보다 구체적인 단계는 아래와 같다.In the data access step, the
<아 래><below>
1. 암호화된 데이터에 접근을 요청하는 사용자부(300)는 TTP 서버(100)로부터 받은 사용자 정보()로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰()을 생성하고, 자신의 식별자와 함께 AC 서버(400)에게 전송한다.1. The
<수학식 5><Equation 5>
2. AC 서버(400)는 사용자부(300)로부터 받은 클라우드에 접근하기 위한 토큰()을 가지고 있는 사용자 정보()로 복호화하여 사용자부(300)의 속성을 획득한다. 이후, AC 서버(400)는 사용자부(300)가 원하는 암호데이터를 클라우드 스토리지(500)에 요청한 후 암호문을 전송받는다.2. The
다음으로, 데이터 복호화 단계에서는, AC 서버(400)가 접근하는 사용자를 인증하는 단계, 데이터를 부분 복호화하는 단계를 포함할 수 있다(S430, S440). Next, in the data decryption step, the
데이터 복호화 단계에서, AC 서버(400)에서 사용자부(300)가 접근하려는 암호문에 지정된 접근구조()의 속성과 사용자 속성을 비교하여 일치하면 부분 복호화가 진행하여 최종 복호화에 필요한 키요소()를 생성하여 사용자부(300)에게 암호문과 함께 전송한다. 사용자부(300)는 자신이 가지고 있는 비밀키()를 가지고 최종 복호화를 진행하여 암호문을 복호화하여 데이터()를 획득한다. 한편, 데이터 복호화 단계의 보다 구체적인 단계는 아래와 같다.In the data decryption step, the access structure ( ) and user attributes are compared, and if they match, partial decryption proceeds and the key element ( ) is generated and transmitted to the
<아 래><below>
1. 사용자의 속성과 암호문에 지정된 접근구조()를 비교하여 만족하면 암호문을 부분 복호화하여 최종 복호시 필요한 키()를 생성한다.1. The access structure specified in the user's attributes and passphrase ( ), the ciphertext is partially decrypted and the key ( ) is created.
[수학식 6][Equation 6]
2. AC 서버(400)는 최종 복호시 필요한 키()를 사용자부(300)의 사용자 정보()로 암호화하여 사용자부(300)에게 전송한다.2. The
[수학식 7][Equation 7]
3. 사용자부(300)는 AC 서버(400)로부터 받은 를 복호화하여 최종 복호시 필요한 키()를 획득한다.3. The
4. 암호문()을 비밀키(), 최종 복호시 필요한 키(), 공개 파라미터()를 통해 최종 복호화를 진행하여 메시지()를 획득한다4. Passphrase ( ) with the secret key ( ), the key required for final decryption ( ), public parameters ( ) through the final decryption to ) to get
[수학식 8][Equation 8]
다음으로, 사용자 탈퇴 등록 및 접근차단 단계에서는, 사용자 탈퇴 요청 및 등록 단계를 포함할 수 있으며, 이로 인해 탈퇴된 사용자의 접근을 접근토큰의 검증을 통해 AC 서버(400)가 차단할 수 있다(S510, S520). Next, the user withdrawal registration and access blocking step may include a user withdrawal request and registration step, whereby the
사용자 탈퇴 등록 및 접근차단 단계에서, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 클라우드 스토리지(500)에 접근하는 것을 차단한다. 사용자 탈퇴 시, TTP 서버(100)는 속성 해지리스트에서 탈퇴된 사용자의 정보를 등록하고, 탈퇴된 사용자의 사용자 정보()를 변경한다. 그리고, 사용자 리스트와 동기화를 진행한 후 이를 AC 서버(400)와 공유한다. 이후, 탈퇴된 사용자가 기존에 가지고 있던 사용자 정보()를 기반으로 접근 요청 시 AC 서버(400)는 사용자의 사용자 정보()를 모르기 때문에 사용자로부터 받은 를 복호화 할 수 없다. 이에, AC 서버(400)는 사용자에게 접근실패 메시지를 전송함으로써 탈퇴된 사용자의 접근을 차단한다. 한편, 사용자 탈퇴 등록 및 접근차단 단계의 보다 구체적인 단계는 아래와 같다.In the user withdrawal registration and access blocking step, the attribute of the withdrawn user is canceled to block the withdrawn user from accessing the
<아 래><below>
1. 사용자부(300)는 TTP 서버(100)에 탈퇴 등록을 요청한다.1. The
2. TTP 서버(100)는 탈퇴할 사용자의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자의 사용자 정보()를 변경한다. 이때, 등록된 사용자 목록에서의 사용자 정보()는 사용자 해지목록과 동기화되면서 변경되고, 이 정보는 AC 서버(400)와 공유된다.2. The
3. 탈퇴한 사용자가 기존에 가지고 있던 사용자 정보()를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰()을 만들어 AC 서버(400)에게 접근을 요청한다. AC 서버(400)는 사용자의 식별자를 통해 대응되는 사용자 정보()를 찾는데, 이때, AC 서버(400)가 찾은 사용자 정보()와 사용자가 대칭키로 사용한 사용자 정보()가 다르기 때문에 AC 서버(400)는 사용자로부터 받은 클라우드에 접근하기 위한 토큰()을 복호화하지 못한다.3. User information ( ) to access the cloud using the symmetric key ( ) to request access to the
4. AC 서버(400)는 접근실패 메시지를 사용자에게 전송하여 탈퇴한 사용자에 대한 접근을 차단한다. 타임스탬프()가 속성해지 목록에 등록되면, 등록된 타임스탬프() 기간 동안 사용자의 사용자 정보()가 변경되기 때문에 사용자는 타임스탬프() 기간 동안 클라우드 스토리지(500)에 접근할 수 없다.4. The
상술한 바와 같은 본 발명에 따르면, 데이터를 CP-ABE와 같은 속성기반 암호로 암호화하여 클라우드에 업로드하면 다수의 사용자가 암호화된 데이터에 접근이 가능하다. 특히 TTP 서버(100)에서 비밀키 생성시 속성과 랜덤함수를 기반으로 비밀키를 생성하기 때문에 제 3자가 사용자의 속성정보만으로 비밀키()를 유추할 수 없다. 또한, 사용자와 AC만이 알고 있는 사용자 정보(nonce value)를 대칭키로 사용하여 데이터 접근을 요청하고, 데이터 복호시 최종 복호화키()도 같이 사용하기 때문에 사용자들 간의 공모를 통해 데이터()를 복호화하기 어렵다. 이에 따르면, 기존 클라우드 환경에서 발생되는 공모공격을 방지할 수 있으며, 클라우드에 저장된 데이터에 대한 무결성 및 기밀성을 보장할 수 있다. 사용자가 탈퇴 시 사용자 속성 해지리스트에서 사용자를 등록하고 사용자 정보(nonce value) 중 변경한 정보를 AC 서버(400)와 공유한다. 그리고, 사용자와 AC 서버(400) 간의 통신은 사용자 속성 해지리스트에 등록된 사용자의 사용자 정보(nonce value)를 대칭키로 사용하여 통신하기 때문에 탈퇴 된 사용자가 다른 사용자의 속성을 가지고 AC 서버(400)에 접근하더라도 AC 서버(400)는 접근요청 메시지를 알 수 없다. 이에 따라, 다른 사람의 속성을 사칭에서 접근하는 위장공격에 안전하며, 탈되 된 사용자의 접근을 차단할 수 있다. 또한, 효율성 측면에서는 암호화하는 과정에서 연산을 통해 증가되는 속성의 수를 한가지의 속성의 수로 나타내어 암호문의 크기를 일정하게 출력할 수 있으며, 이로 인해 클라우드 스토리지(500) 저장 공간을 효율적으로 사용할 수 있다. 또한, 아웃소싱 기법을 지원하는 AC 서버(400)에서 부분 복호화 연산을 처리함으로써 사용자가 암호문을 복호화 시 처리할 수 있는 연산량을 감소시켜 연산의 효율성을 증대시킬 수 있다. 이를 통해, 클라우드 환경에서 안전하고 효율적인 데이터 공유 서비스를 제공할 수 있다.According to the present invention as described above, when data is encrypted with an attribute-based encryption such as CP-ABE and uploaded to the cloud, a plurality of users can access the encrypted data. In particular, since the
본 발명의 실시예에 따른 방법들은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는, 본 발명을 위한 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Methods according to an embodiment of the present invention may be implemented as an application or implemented in the form of program instructions that may be executed through various computer components and recorded in a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the computer-readable recording medium are specially designed and configured for the present invention, and may be known and used by those skilled in the art of computer software. Examples of the computer-readable recording medium include a hard disk, a magnetic medium such as a floppy disk and a magnetic tape, an optical recording medium such as a CD-ROM, a DVD, and a magneto-optical medium such as a floppy disk. media) and hardware devices specially configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules to perform processing according to the present invention, and vice versa.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 아니 된다. 또한, 본 명세서의 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서의 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.While this specification contains many features, such features should not be construed as limiting the scope of the invention or the claims. Also, features described in individual embodiments herein may be implemented in combination in a single embodiment. Conversely, various features described in a single embodiment herein may be implemented in various embodiments individually, or may be implemented in appropriate combination.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 앱 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.Although operations have been described in a particular order in the drawings, it should not be understood that such operations are performed in the specific order as illustrated, or that all described operations are performed in a continuous sequence, or to obtain a desired result. Multitasking and parallel processing can be advantageous in certain circumstances. In addition, it should be understood that the division of various system components in the above-described embodiments does not require such division in all embodiments. The app components and systems described above may generally be implemented as a package in a single software product or multiple software products.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것은 아니다.The present invention described above, for those of ordinary skill in the art to which the present invention pertains, various substitutions, modifications and changes are possible without departing from the technical spirit of the present invention. It is not limited by the drawings.
100 : TTP 서버
200 : 데이터 소유자부
300 : 사용자부
400 : AC 서버
500 : 클라우드 스토리지100 : TTP server
200: data owner part
300: user part
400 : AC server
500 : cloud storage
Claims (10)
상기 TTP 서버가, 상기 생성된 공개키를 데이터 소유자부 및 사용자부로 각각 전송하고 상기 마스터 키 및 비밀키를 상기 사용자부로 전송하는 단계;
상기 데이터 소유자부가, 상기 TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 클라우드 스토리지에 업로드하는 단계;
상기 사용자부가, 상기 TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 클라우드 스토리지에 접근하는 단계;
AC 서버가, 상기 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 상기 사용자부로 암호문과 함께 전송하는 단계; 및
상기 AC 서버가, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 상기 클라우드 스토리지에 접근하는 것을 차단하는 단계;를 포함하며;
상기 AC 서버는 상기 암호문의 크기를 속성의 개수에 비례하지 않고 일정 크기로 출력시키는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.The TTP server, managing user information registered by the user, and generating a public key, a master key, and a private key;
transmitting, by the TTP server, the generated public key to a data owner unit and a user unit, respectively, and transmitting the master key and the private key to the user unit;
encrypting, by the data owner unit, the data transmitted from the TTP server and uploading the data to the cloud storage by creating an access structure based on the information received from the TTP server and the attribute of the user unit capable of accessing its own data in the cloud environment;
generating, by the user unit, a token for accessing the cloud using the information received from the TTP server and accessing the cloud storage;
When the AC server compares and matches the user attribute with the attribute of the access structure specified in the cipher text to be accessed by the user unit, partial decryption is performed to generate a key element necessary for final decryption, and transmitting it to the user unit together with the cipher text; and
and blocking, by the AC server, from accessing the cloud storage with information previously owned by the withdrawn user by canceling the attribute of the withdrawn user;
Data access control method using attribute-based encryption for safe and efficient data sharing in a cloud environment, characterized in that the AC server outputs the size of the cipher text in a predetermined size, not proportional to the number of attributes.
상기 TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 상기 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 상기 클라우드 스토리지에 업로드하는 단계는,
상기 데이터 소유자부가, 자신이 공유할 데이터에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조를 생성하는 단계; 및
상기 데이터 소유자부가, 공개 파라미터와 접근구조로 데이터를 암호화하여, 상기 클라우드 스토리지에 전송하는 단계;를 포함하는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.The method of claim 1,
The step of creating an access structure based on the information received from the TTP server and the properties of the user unit capable of accessing own data in the cloud environment, encrypting the data, and uploading the data to the cloud storage,
generating, by the data owner, a tree-type access structure based on attributes of a user who can access the data to be shared; and
Data access control using attribute-based encryption for safe and efficient data sharing in a cloud environment, comprising: the data owner unit encrypting data with public parameters and access structure, and transmitting it to the cloud storage Way.
상기 TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 상기 클라우드 스토리지에 접근하는 단계는,
암호화된 데이터 접근을 요청하는 상기 사용자부가, 상기 TTP 서버로부터 받은 사용자 정보(nonce value)로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰을 생성하고, 자신의 식별자와 함께 상기 AC 서버로 전송하는 단계;
상기 AC 서버가, 상기 사용자부로부터 받은 클라우드에 접근하기 위한 토큰을 가지고 있는 사용자 정보(nonce value)로 복호화하여 사용자부의 속성을 획득하는 단계; 및
상기 AC 서버가, 상기 사용자부가 원하는 암호데이터를 상기 클라우드 스토리지에 요청한 후 암호문을 전송받는 단계;를 포함하는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.The method of claim 1,
Generating a token for accessing the cloud using the information received from the TTP server and accessing the cloud storage comprises:
The user unit requesting access to encrypted data encrypts its attribute set with user information (nonce value) received from the TTP server to generate a token for accessing the cloud, and transmits it to the AC server together with its identifier to do;
deciphering, by the AC server, user information (nonce value) having a token for accessing the cloud received from the user unit to obtain attributes of the user unit; and
Data access control using attribute-based encryption for safe and efficient data sharing in a cloud environment, comprising the step of, by the AC server, receiving the encrypted text after requesting the encrypted data desired by the user from the cloud storage Way.
상기 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 상기 사용자부로 암호문과 함께 전송하는 단계는,
상기 AC 서버가, 상기 사용자부의 속성과 암호문에 지정된 접근구조를 비교하여 만족하는 경우, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 생성하는 단계;
상기 AC 서버가, 암호문을 부분 복호화하여 최종 복호시 필요한 키를 사용자 정보(nonce value)로 암호화하여 사용자부로 전송하는 단계;
상기 사용자부가 상기 AC 서버로부터 전송받은 사용자 정보를 복호화하여 부분 복호화 진행 후 생성되는 최종 복호화 키 요소를 획득하는 단계; 및
상기 사용자부가 암호화문을 비밀키, 부분 복호화 진행 후 생성되는 최종 복호화 키 요소, 공개 파라미터를 통해 최종 복호화를 진행하여 메시지를 획득하는 단계;를 포함하는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.The method of claim 1,
When the attribute of the access structure specified in the cipher text to be accessed by the user unit and the user attribute are matched, partial decryption is performed to generate a key element necessary for final decryption and transmitting the cipher text to the user unit together with the cipher text,
generating, by the AC server, a key required for final decryption by partially decrypting the ciphertext, if it is satisfied by comparing the attribute of the user unit with the access structure specified in the ciphertext;
The AC server partially decrypts the cipher text, encrypts the key required for final decryption as user information (nonce value) and transmits it to the user unit;
obtaining, by the user unit, a final decryption key element generated after partial decryption by decrypting the user information transmitted from the AC server; and
Secure and efficient data sharing in a cloud environment, characterized in that it includes; the user unit performing final decryption of the encrypted text through a secret key, a final decryption key element generated after partial decryption, and a public parameter to obtain a message; Data access control method using attribute-based encryption for
상기 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 상기 클라우드 스토리지에 접근하는 것을 차단하는 단계는,
상기 사용자부가 상기 TTP 서버에 탈퇴등록을 요청하는 단계;
상기 TTP 서버가 탈퇴할 사용자부의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자 정보를 변경하는 단계;
상기 TTP 서버가 탈퇴한 상기 사용자부가 기존에 가지고 있던 사용자 정보를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰을 만들어 상기 AC 서버에게 접근을 요청하는 단계; 및
상기 AC 서버가 접근실패 메시지를 사용자부로 전송하여 탈퇴한 사용자부에 대한 접근을 차단하는 단계;를 포함하는 것을 특징으로 하는 클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법.The method of claim 1,
The step of canceling the attribute of the withdrawn user to block the user who has withdrawn from accessing the cloud storage with the information previously possessed includes:
requesting, by the user, a withdrawal registration from the TTP server;
adding, by the TTP server, information of the user to be withdrawn to the user attribute revocation list and changing the information of the user to withdraw from;
making, by the TTP server, a token for accessing the cloud by using the user information previously owned by the user unit as a symmetric key, and requesting access to the AC server; and
Data access control using attribute-based encryption for safe and efficient data sharing in a cloud environment, comprising: the AC server transmitting an access failure message to the user unit to block access to the withdrawn user unit Way.
사용자에 의해 등록된 사용자 정보를 관리하고, 공개키와 마스터 키 및 비밀키를 생성하며, 상기 생성된 공개키를 데이터 소유자부 및 사용자부로 각각 전송하고 상기 생성된 마스터 키 및 비밀키를 상기 사용자부로 전송하는 TTP 서버;
상기 TTP 서버로부터 전송받은 정보와 클라우드 환경 내에서 자신의 데이터 접근 가능한 상기 사용자부의 속성을 기반으로 접근구조를 만들어 데이터를 암호화하고 상기 클라우드 스토리지에 업로드하는 상기 데이터 소유자부;
상기 TTP 서버로부터 전송받은 정보를 이용하여 클라우드에 접근하기 위한 토큰을 생성하고 상기 클라우드 스토리지에 접근하는 사용자부; 및
상기 사용자부가 접근하려는 암호문에 지정된 접근구조의 속성과 사용자 속성을 비교하여 일치하는 경우, 부분 복호화가 진행하여 최종 복호화에 필요한 키요소를 생성하여 상기 사용자부로 암호문과 함께 전송하고, 탈퇴한 사용자의 속성을 해지하여 탈퇴한 사용자가 기존에 가지고 있던 정보를 가지고 상기 클라우드 스토리지에 접근하는 것을 차단하는 AC 서버;를 포함하며;
상기 AC 서버는 상기 암호문의 크기를 속성의 개수에 비례하지 않고 일정 크기로 출력시키는 데이터 접근 제어 시스템.In the data access control system including cloud storage for storing and managing data,
Manages user information registered by a user, generates a public key, a master key, and a private key, transmits the generated public key to a data owner unit and a user unit, respectively, and transmits the generated master key and private key to the user unit Transmitting TTP server;
the data owner unit for encrypting data and uploading to the cloud storage by creating an access structure based on the information transmitted from the TTP server and the attribute of the user unit capable of accessing its own data in a cloud environment;
a user unit that generates a token for accessing the cloud using the information received from the TTP server and accesses the cloud storage; and
When the attribute of the access structure specified in the cipher text to be accessed by the user unit is matched with the user attribute, partial decryption proceeds to generate a key element necessary for final decryption and transmits it to the user unit along with the cipher text, and the attribute of the user who has withdrawn and an AC server that blocks access to the cloud storage with the information that the user who has withdrawn by canceling the .
The AC server is a data access control system for outputting the size of the ciphertext in a predetermined size, not proportional to the number of attributes.
상기 데이터 소유자부는,
자신이 공유할 데이터에 접근할 수 있는 사용자의 속성들을 기반으로 트리형태의 접근구조를 생성하고, 공개 파라미터와 접근구조로 데이터를 암호화하여, 상기 클라우드 스토리지에 전송하는 것을 특징으로 하는 데이터 접근 제어 시스템.7. The method of claim 6,
The data owner unit,
A data access control system, characterized in that it creates a tree-type access structure based on the properties of a user who can access the data to be shared, encrypts the data with public parameters and access structure, and transmits it to the cloud storage .
상기 사용자부는,
상기 TTP 서버로부터 받은 사용자 정보(nonce value)로 자신의 속성집합을 암호화하여 클라우드에 접근하기 위한 토큰을 생성하고, 자신의 식별자와 함께 상기 AC 서버로 전송하며, 암호화문을 비밀키, 부분 복호화 진행 후 생성되는 최종 복호화 키 요소, 공개 파라미터를 통해 최종 복호화를 진행하여 메시지를 획득하고, 상기 TTP 서버에 탈퇴등록을 요청하는 것을 특징으로 하는 데이터 접근 제어 시스템.7. The method of claim 6,
The user unit,
Generates a token for accessing the cloud by encrypting its attribute set with the user information (nonce value) received from the TTP server, transmits it to the AC server along with its identifier, and proceeds with partial decryption of the encrypted text with the private key A data access control system, characterized in that the message is obtained by performing final decryption through the final decryption key element and public parameter generated afterward, and requesting a withdrawal registration from the TTP server.
상기 AC 서버는, 상기 사용자부로부터 받은 클라우드에 접근하기 위한 토큰을 가지고 있는 사용자 정보(nonce value)로 복호화하여 상기 사용자부의 속성을 획득하고, 상기 사용자부가 원하는 암호데이터를 상기 클라우드 스토리지에 요청한 후 암호문을 전송받으며, 상기 사용자부의 속성과 암호문에 지정된 접근구조를 비교하여 만족하는 경우, 상기 암호문을 부분 복호화하여 최종 복호시 필요한 키를 생성하고, 상기 암호문을 부분 복호화하여 최종 복호시 필요한 키를 상기 사용자 정보(nonce value)로 암호화하여 상기 사용자부로 전송하고, 접근실패 메시지를 상기 사용자부로 전송하여 탈퇴한 사용자부에 대한 접근을 차단하는 것을 특징으로 하는 데이터 접근 제어 시스템.7. The method of claim 6,
The AC server decrypts the user information (nonce value) having a token for accessing the cloud received from the user unit to obtain the attributes of the user unit, and after requesting the encrypted data desired by the user unit to the cloud storage, the encrypted text is transmitted, and if it is satisfied by comparing the attribute of the user part with the access structure specified in the cipher text, the cipher text is partially decrypted to generate a key required for final decryption, and the cipher text is partially decrypted to obtain the key required for final decryption by the user The data access control system, characterized in that the encrypted information (nonce value) is transmitted to the user unit, and an access failure message is transmitted to the user unit to block access to the withdrawn user unit.
상기 TTP 서버는, 탈퇴할 사용자부의 정보를 사용자 속성 해지목록에 추가하고 탈퇴할 사용자 정보를 변경하고, 탈퇴한 사용자부가 기존에 가지고 있던 사용자 정보를 대칭키로 사용하여 클라우드에 접근하기 위한 토큰을 만들어 AC 서버에게 접근을 요청하는 것을 특징으로 하는 데이터 접근 제어 시스템.7. The method of claim 6,
The TTP server adds the information of the user part to withdraw to the user attribute revocation list, changes the user information to withdraw, and creates a token for accessing the cloud using the user information previously owned by the withdrawn user part as a symmetric key. Data access control system, characterized in that requesting access to the server.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190145613A KR102298266B1 (en) | 2019-11-14 | 2019-11-14 | Data access control method and system using attribute-based password for secure and efficient data sharing in cloud environment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190145613A KR102298266B1 (en) | 2019-11-14 | 2019-11-14 | Data access control method and system using attribute-based password for secure and efficient data sharing in cloud environment |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210058313A KR20210058313A (en) | 2021-05-24 |
KR102298266B1 true KR102298266B1 (en) | 2021-09-06 |
Family
ID=76153303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190145613A KR102298266B1 (en) | 2019-11-14 | 2019-11-14 | Data access control method and system using attribute-based password for secure and efficient data sharing in cloud environment |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102298266B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230127696A (en) | 2022-02-25 | 2023-09-01 | 부경대학교 산학협력단 | A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114157424B (en) * | 2021-12-03 | 2023-05-05 | 福建师范大学 | Attribute-based encryption system and method without key escrow and supporting user revocation |
WO2024085728A1 (en) * | 2022-10-21 | 2024-04-25 | 삼성전자 주식회사 | Electronic device, and method for uploading data from external electronic device to electronic device |
CN118227698B (en) * | 2024-05-24 | 2024-08-09 | 山东工程职业技术大学 | Mathematical model calling system and method based on cloud service |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101380278B1 (en) * | 2012-09-26 | 2014-04-02 | 동국대학교 경주캠퍼스 산학협력단 | Revocation method of data access and cloud service system using the revocation method |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101982237B1 (en) | 2017-03-06 | 2019-05-24 | 고려대학교 산학협력단 | Method and system for data sharing using attribute-based encryption in cloud computing |
KR102050887B1 (en) * | 2017-11-29 | 2019-12-02 | 고려대학교 산학협력단 | METHOD AND SYSTEM FOR DATA SHARING FOR INTERNET OF THINGS(IoT) MANAGEMENT IN CLOUD COMPUTING |
-
2019
- 2019-11-14 KR KR1020190145613A patent/KR102298266B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101380278B1 (en) * | 2012-09-26 | 2014-04-02 | 동국대학교 경주캠퍼스 산학협력단 | Revocation method of data access and cloud service system using the revocation method |
Non-Patent Citations (2)
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 (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230127696A (en) | 2022-02-25 | 2023-09-01 | 부경대학교 산학협력단 | A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain |
Also Published As
Publication number | Publication date |
---|---|
KR20210058313A (en) | 2021-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102298266B1 (en) | Data access control method and system using attribute-based password for secure and efficient data sharing in cloud environment | |
CN110855671B (en) | Trusted computing method and system | |
Kaaniche et al. | A secure client side deduplication scheme in cloud storage environments | |
CN103138939B (en) | Based on the key access times management method of credible platform module under cloud memory module | |
Swathy et al. | Providing advanced security mechanism for scalable data sharing in cloud storage | |
CN106797316B (en) | Router, data equipment, the method and system for distributing data | |
CN102075544A (en) | Encryption system, encryption method and decryption method for local area network shared file | |
US20220014367A1 (en) | Decentralized computing systems and methods for performing actions using stored private data | |
CN105245328A (en) | User and file key generation and management method based on third party | |
CN108809633B (en) | Identity authentication method, device and system | |
CN110688666B (en) | Data encryption and preservation method in distributed storage | |
KR20110028968A (en) | Method for verifying the integrity of a user's data in remote computing and system thereof | |
US11783091B2 (en) | Executing entity-specific cryptographic code in a cryptographic coprocessor | |
CN101325483B (en) | Method and apparatus for updating symmetrical cryptographic key, symmetrical ciphering method and symmetrical deciphering method | |
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 | |
US20210111901A1 (en) | Executing entity-specific cryptographic code in a trusted execution environment | |
US10015143B1 (en) | Methods for securing one or more license entitlement grants and devices thereof | |
Charanya et al. | Attribute based encryption for secure sharing of E-health data | |
CN106790185B (en) | CP-ABE-based method and device for safely accessing authority dynamic update centralized information | |
KR100989371B1 (en) | DRM security mechanism for the personal home domain | |
KR100769439B1 (en) | Database Security System Using Key Profile based on Public Key Infrastructure Mechanism | |
CN107769915B (en) | Data encryption and decryption system and method with fine-grained user control | |
Pitchay et al. | Mobile application design for protecting the data in cloud using enhanced technique of encryption | |
JP7385025B2 (en) | Execution of Entity-Specific Cryptographic Code in a Cryptographic Coprocessor |
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 |