KR101220166B1 - Data access privilege managing method - Google Patents

Data access privilege managing method Download PDF

Info

Publication number
KR101220166B1
KR101220166B1 KR1020110003940A KR20110003940A KR101220166B1 KR 101220166 B1 KR101220166 B1 KR 101220166B1 KR 1020110003940 A KR1020110003940 A KR 1020110003940A KR 20110003940 A KR20110003940 A KR 20110003940A KR 101220166 B1 KR101220166 B1 KR 101220166B1
Authority
KR
South Korea
Prior art keywords
terminal
data
cipher text
header
symmetric key
Prior art date
Application number
KR1020110003940A
Other languages
Korean (ko)
Other versions
KR20120091507A (en
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 KR1020110003940A priority Critical patent/KR101220166B1/en
Publication of KR20120091507A publication Critical patent/KR20120091507A/en
Application granted granted Critical
Publication of KR101220166B1 publication Critical patent/KR101220166B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/3017Runtime instruction translation, e.g. macros
    • G06F9/30178Runtime instruction translation, e.g. macros of compressed or encrypted instructions
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Abstract

데이터 파일의 헤더와 본문의 분리를 통해서 데이터의 기밀성을 보장하고, 비밀 분산과 타입 기반 프록시 재 암호화를 도입하여 클라우드 컴퓨팅 환경에 적합한 데이터 접근 권한 관리 방법이 제공된다. 데이터 소유자 단말이 대칭키로 데이터 파일을 암호화하여 헤더 및 본문으로 이루어진 암호문을 얻고 상기 대칭키를 KP-ABE 방식으로 암호화하여 상기 암호문의 헤더에 포함하고, 상기 암호화된 대칭 키가 포함된 암호문의 헤더 및 상기 암호문의 본문을 권한 관리자 단말 및 클라우드 서비스 제공자 단말로 각각 제공하여 저장한다. 사용자 집단 단말이 상기 권한 관리자 단말에 상기 데이터 파일에 대한 접근을 요구함에 따라 상기 권한 관리자 단말이 시스템 사용자 리스트의 확인을 통해 상기 사용자 집단 단말의 사용자의 정당성을 인증하여 정당한 사용자인 경우, 상기 클라우드 서비스 제공자 단말로 하여금 상기 암호문의 본문을 전송하도록 지시하고 상기 암호화된 대칭키가 포함된 암호문의 헤더를 상기 사용자 집단 단말로 제공한다. 상기 권한 관리자 단말로부터의 상기 암호문의 본문 전송 지시에 따라 상기 클라우드 서비스 제공자 단말이 상기 암호문의 본문을 상기 사용자 집단 단말로 제공한다. 상기 사용자 집단 단말이 상기 암호문의 헤더에 포함된 상기 암호화된 대칭키로 상기 암호문의 본문을 복호하여 상기 데이터 파일을 획득한다.By separating the header and the body of the data file, the confidentiality of the data is ensured, and data access rights management method suitable for cloud computing environment is provided by introducing secret distribution and type-based proxy re-encryption. The data owner terminal encrypts the data file with a symmetric key to obtain a cipher text consisting of a header and a body, and encrypts the symmetric key by KP-ABE to include it in the header of the cipher text, the header of the cipher text including the encrypted symmetric key, and The body of the cipher text is provided to and stored in the authority manager terminal and the cloud service provider terminal, respectively. When the user group terminal requests the authority manager terminal to access the data file, when the authority manager terminal authenticates the validity of the user of the user group terminal through the confirmation of a system user list, the cloud service. Instructs the provider terminal to transmit the body of the cipher text and provides the header of the cipher text including the encrypted symmetric key to the user group terminal. The cloud service provider terminal provides the body of the cipher text to the user group terminal according to the instruction to transmit the body of the cipher text from the authority manager terminal. The user group terminal obtains the data file by decoding the body of the cipher text with the encrypted symmetric key included in the header of the cipher text.

Description

데이터 접근 권한 관리 방법{Data access privilege managing method}Data access privilege managing method

본 발명은 데이터 접근 권한 관리 방법에 관한 것으로서, 더 상세하게는 클라우드 스토리지에서 타입 정보 기반 프록시 재 암호화를 이용한 데이터 접근 권한 관리 방법에 관한 것이다.
The present invention relates to a method for managing data access rights, and more particularly, to a method for managing data access rights using type information based proxy re-encryption in cloud storage.

인터넷을 통해서 컴퓨팅 자원(Computing Resources)을 활용하는 클라우드 컴퓨팅(Cloud Computing)은 학계와 산업계에서 주목하고 있는 새로운 컴퓨팅 패러다임이다. 클라우드 컴퓨팅은 컴퓨팅 자원을 서비스로 제공하는 인터넷 비즈니스, 특히 데이터의 저장 관리 및 제공 서비스에 이용된다.Cloud computing, leveraging computing resources over the Internet, is a new computing paradigm that academia and industry are drawing attention. Cloud computing is used in internet businesses that provide computing resources as services, in particular storage management and provision services for data.

클라우드 컴퓨팅의 특성은 자원의 공유성(Multitenancy), 자원의 규모성(Massive scalability), 자원을 얻는 탄력성(Elasticity), 사용한 만큼 대가를 지불하는 과금 방식(Pay-as-you-go), 자원의 조직성(Self-provisioning resources)으로 5가지가 있다. 이러한 클라우드 컴퓨팅의 특성을 이용하여 기업은 신속한 업무처리와 효율적인 투자로 수익을 창출한다.Cloud computing features include resource sharing, massive scalability, elasticity to obtain resources, and pay-as-you-go for resources. There are five self-provisioning resources. Leveraging these characteristics of cloud computing, companies can profit from rapid business processes and efficient investments.

이러한 장점에도 불구하고 클라우드 컴퓨팅을 비즈니스 환경에 도입하여 활용하기 위해서는 여러 가지 보안 위협을 고려해야 한다. 한편, 데이터의 기밀성뿐만 아니라 정보를 열람함에 있어서 사용자 속성에 따른 유연성있는 접근 제어(fine-grained access control), 예를 들어 사장과 부장, 과장 등 직책과 같은 각 개인의 사용자 속성에 따른 데이터 접근권한이 차별적으로 부여 가능해야 한다. 또한, 특정 사용자의 데이터 열람 권한을 철회하는 기능이 있어야 한다. 예를 들면, 어떤 사용자가 2010년 11월 1일에 서비스 이용 라이센스가 만료되는 경우, 철회 대상인 사용자를 시스템상에서 효율적으로 제거할 수 있는 방법이 필요하다.Despite these advantages, there are a number of security threats to consider in order to introduce and use cloud computing in a business environment. On the other hand, in accessing the information as well as the confidentiality of the data, fine-grained access control according to the user's attributes, for example, the right to access the data according to the user's attributes of each individual such as positions such as the president, manager and manager This must be available for discrimination. In addition, there should be a function to revoke the authority to view a specific user's data. For example, if a user expires on November 1, 2010, there is a need for a method to efficiently remove a user who is withdrawn from the system.

이러한 방법을 제시하기 위해서 Yu, S. C., Wang, C., Ren, K. I., and Lou, W. J., “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp.321-334.에서는 KP-ABE(Key Policy-Attribute Based Encryption)를 활용하여 데이터 기밀성과 fine-grained access control을 보장하고, PRE(Proxy Re-Encryption)를 통해서 클라우드 서버에 업무를 위임하는 방식을 구체화하여 다수의 사용자 이용에 따른 키 생성 등의 계산상 과부하 문제를 해결했다. 또한, 시스템상의 특정 사용자를 철회할 수 있는 방법도 제시했다.To present this approach, Yu, SC, Wang, C., Ren, KI, and Lou, WJ, “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, In pp.321-334, KP-ABE (Key Policy-Attribute Based Encryption) ensures data confidentiality and fine-grained access control, and delegates work to cloud servers through Proxy Re-Encryption (PRE). In this paper, we solved the computational overload problem such as key generation by multiple users. It also presented a way to withdraw a particular user from the system.

그러나 상기 종래 방식은 철회된 사용자와 클라우드 서버 간의 공모를 통한 불법 데이터 접근(예를 들면, 라이센스가 만료된 사용자의 데이터 열람)이 가능하다. 또한, 정당한 사용자에 대한 접근 권한을 판별하여 승인하는 절차인 권한 관리(privilege management) 기능이 결여되어 있기 때문에 정보 공유 및 활용을 위한 사용자 권한관리 문제가 있다. 부가적으로 위임자가 피 위임자를 신뢰하는 수준에 따라서 메시지의 전문 혹은 일부분을 선택적으로 위임할 수 있는 방법이 필요하다. 예를 들어, 환자(서비스 대상자)의 진료 기록을 보험 회사 A와 연구 기관 B에 각각 다르게 선택적으로 위임하고 나머지 정보는 노출되지 않아야 한다.However, the conventional method allows illegal data access (e.g., viewing data of an expired user) through collusion between the withdrawn user and the cloud server. In addition, since there is a lack of a privilege management function, which is a procedure for determining and approving an access right for a legitimate user, there is a problem of user rights management for information sharing and utilization. In addition, there is a need for a method to selectively delegate the full or partial portion of a message, depending on the level at which the delegate trusts the delegate. For example, the medical records of patients (services) should be selectively delegated to insurance company A and research institution B separately, and the rest of the information should not be exposed.

본 발명은 이상과 같은 종래의 문제점을 개선하기 위하여 창출된 것으로서, 클라우드 서버에 저장되는 데이터 파일의 헤더와 본문(body)의 분리를 통해서 데이터의 기밀성을 보장하고, 비밀 분산(Secret Sharing)과 타입 기반 프록시 재 암호화를 도입하여 클라우드 컴퓨팅 환경에 적합한 데이터 접근 권한 관리 방법을 제공함에 그 목적이 있다.
The present invention was created to improve the above-mentioned conventional problems, and ensures the confidentiality of data through the separation of the header and the body of the data file stored in the cloud server, secret sharing and type The purpose of this paper is to provide data access authority management method suitable for cloud computing environment by introducing based proxy re-encryption.

본 발명에 따른 데이터 접근 권한 관리 방법은 (i) 데이터 소유자 단말이 대칭키로 데이터 파일을 암호화하여 헤더 및 본문으로 이루어진 암호문을 얻고 상기 대칭키를 KP-ABE(Key Policy Attribute Based Encryption) 방식으로 암호화하여 상기 암호문의 헤더에 포함하고, 상기 암호화된 대칭 키가 포함된 암호문의 헤더 및 상기 암호문의 본문을 권한 관리자 단말 및 클라우드 서비스 제공자 단말로 각각 제공하여 저장하는 단계; (ii) 사용자 집단 단말이 상기 권한 관리자 단말에 상기 데이터 파일에 대한 접근을 요구함에 따라 상기 권한 관리자 단말이 시스템 사용자 리스트의 확인을 통해 상기 사용자 집단 단말의 사용자의 정당성을 인증하여 정당한 사용자인 경우, 상기 클라우드 서비스 제공자 단말로 하여금 상기 암호문의 본문을 전송하도록 지시하고 상기 암호화된 대칭키가 포함된 암호문의 헤더를 상기 사용자 집단 단말로 제공하는 단계; (iii) 상기 권한 관리자 단말로부터의 상기 암호문의 본문 전송 지시에 따라 상기 클라우드 서비스 제공자 단말이 상기 암호문의 본문을 상기 사용자 집단 단말로 제공하는 단계; 및 (iv) 상기 사용자 집단 단말이 상기 암호문의 헤더에 포함된 상기 암호화된 대칭키로 상기 암호문의 본문을 복호하여 상기 데이터 파일을 획득하는 단계를 포함하는 것을 특징으로 한다.Data access authority management method according to the present invention (i) the data owner terminal encrypts the data file with a symmetric key to obtain a cipher text consisting of a header and the body and encrypts the symmetric key by KP-ABE (Key Policy Attribute Based Encryption) method Providing the header of the ciphertext including the encrypted symmetric key and the body of the ciphertext to the authority manager terminal and the cloud service provider terminal; (ii) when the user group terminal requests the authority manager terminal to access the data file, the authority manager terminal authenticates the validity of the user of the user group terminal by checking a system user list and is a legitimate user. Instructing the cloud service provider terminal to transmit the body of the cipher text and providing a header of the cipher text including the encrypted symmetric key to the user group terminal; (iii) providing, by the cloud service provider terminal, the body of the ciphertext to the user group terminal according to an instruction to transmit the body of the ciphertext from the authority manager terminal; And (iv) the user group terminal obtaining the data file by decoding the body of the cipher text with the encrypted symmetric key included in the header of the cipher text.

클라우드 컴퓨팅은 기업입장에서 컴퓨팅 자원에 대한 효율적인 투자와 신속한 업무처리로 수익을 창출하는 획기적인 컴퓨팅 패러다임이다. 이 때문에 기존 비즈니스는 컴퓨팅 자원을 서비스로 제공받는 클라우드 비즈니스로 변화되어갈 것이다. 그러나 클라우드 사업자를 데이터 보안 관리상 전적으로 신뢰할 수 없기 때문에 데이터 보안 위협 및 프라이버시 침해 요소를 고려해야 한다. 특히, 데이터 기밀성을 보장하는 것이 필요하다. 이러한 문제를 해결하기 위해서 Yu, S. C., Wang, C., Ren, K. I., and Lou, W. J., “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp.321-334.는 데이터 기밀성을 보장하면서 fine-grained access control한 방식을 제안했다. 그러나 철회된 사용자와 클라우드 서버 간의 공모 공격과 프록시 재 암호화 키에 대한 변조 공격 취약성에 의해 데이터 기밀성을 침해하게 된다. 이러한 문제점을 해결하기 위해서 본 발명에서는 클라우드 서버에 저장되는 데이터 파일에 수정을 가하여 데이터의 기밀성을 보장했다. 또한, 비밀 분산 방식의 적용을 통해서 사용자의 데이터 열람 권한을 판별하여 승인하는 절차를 수행하고, 타입 기반 프록시 재 암호화를 활용하여 위임자가 피 위임자를 신뢰하는 수준에 따라 메시지의 전문 혹은 일부분을 선택적으로 위임할 수 있는 방법을 구체화했다. 표 1은 Yu, S. C., Wang, C., Ren, K. I., and Lou, W. J., “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp.321-334.의 방식과 본 발명에서 제안한 방식과의 특성을 비교하는 표이다.Cloud computing is a revolutionary computing paradigm that generates profits from efficient investments and rapid business processes for enterprise resources. Because of this, existing businesses will be transformed into cloud businesses that receive computing resources as services. However, cloud providers are not entirely trusted for data security management, so data security threats and privacy breaches must be considered. In particular, it is necessary to ensure data confidentiality. To address these issues, Yu, SC, Wang, C., Ren, KI, and Lou, WJ, “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp. 321-334 proposed a fine-grained access control scheme that ensures data confidentiality. However, data confidentiality is violated by collusion attacks between revoked users and cloud servers and by tampering vulnerability to proxy re-encryption keys. In order to solve this problem, in the present invention, by modifying the data file stored in the cloud server to ensure the confidentiality of the data. In addition, through the application of a secret distribution method, a procedure for determining and approving a user's authority to view data is performed, and type-based proxy re-encryption is used to selectively select the whole or part of the message depending on the level of trust of the delegator. I specified a way to delegate. Table 1 shows Yu, SC, Wang, C., Ren, KI, and Lou, WJ, “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp. 321. This table compares the characteristics of the method of -334. And the method proposed by the present invention.

Figure 112011003227987-pat00001
Figure 112011003227987-pat00001

도 1은 본 발명에 적용될 수 있는 접근 구조의 일예를 나타낸 도면.
도 2는 본 발명의 실시예에 따른 데이터 접근 권한 관리 장치 및 방법을 설명하는 구성도.
도 3은 본 발명의 실시예에 따른 데이터 파일 형식을 나타낸 도면이다.
1 is a view showing an example of an access structure that can be applied to the present invention.
2 is a block diagram illustrating an apparatus and method for managing data access rights according to an embodiment of the present invention.
3 is a diagram illustrating a data file format according to an embodiment of the present invention.

이하 첨부된 도면을 참조하면서 본 발명의 실시예를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions of the present invention, and may be changed according to the intentions or customs of the user, the operator, and the like. Therefore, the definition should be based on the contents throughout this specification.

본 발명에서는 CSA, Security Guidance for Critical Areas of Focus Cloud Computing, Vol.2.1, 2009.에서 분류한 클라우드 컴퓨팅 7대 보안 위협 중 데이터 손실 및 유출, 즉 클라우드 서버(Cloud server)에 저장되는 데이터의 기밀성(data confidentiality) 문제에 초점을 맞추어 클라우드 컴퓨팅 환경에 적합한 시스템 모델을 구성한다.In the present invention, data loss and leakage among seven cloud computing security threats classified in CSA, Security Guidance for Critical Areas of Focus Cloud Computing, Vol.2.1, 2009. That is, the confidentiality of data stored in the cloud server ( Focusing on data confidentiality issues, we construct a system model that is suitable for cloud computing environments.

쌍선형Bilinear 사상( thought( BilinearBilinear MappingMapping ))

2개의 순환군(Cyclic Group) G1, G2에 대해 쌍선형 사상

Figure 112011003227987-pat00002
(GT는 쌍선형 사상의 출력 공간)는 다음의 성질을 갖는다.Bilinear mapping for two cyclic groups G 1 and G 2
Figure 112011003227987-pat00002
(G T is an output space of bilinear mapping) has the following properties.

① 쌍선형성(Bilinear) : 모든 u∈G1, u∈G2, 및 모든 a,b∈Z에 대해

Figure 112011003227987-pat00003
가 성립된다.Bilinear: for all u∈G 1 , u∈G 2 , and all a, b∈Z
Figure 112011003227987-pat00003
.

② 비퇴화성(Non-degenerate) : GX(X=1,2)의 생성원 g∈GX에 대해 e(g,g)≠1이다.Non-degenerate: e (g, g) ≠ 1 for the source g∈G X of G X (X = 1,2).

③ 계산 가능성(Computable) : 모든 u∈G1, u∈G2에 대해서 e(u, v)를 계산하는 효율적인 알고리즘이 존재한다.3. Computable: There is an efficient algorithm that calculates e (u, v) for all u∈G 1 and u∈G 2 .

본 발명의 방식은 Yu, S. C., Wang, C., Ren, K. I., and Lou, W. J., “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp.321-334.의 방식에서 클라우드 서버에 저장되는 데이터 파일을 헤더와 본문으로 나누어 각각 권한 관리자와 클라우드 사업자에게 분산 저장한다. 헤더에는 본문의 메시지를 암호화하는데 사용된 비밀키가 KP-ABE로 암호화되어 있다. 다시 말해서 사용자는 권한 관리자에게 정당성을 인정받지 못하면 헤더 내의 비밀키 정보를 얻을 수 없고 실제적으로 사용자가 얻고자 하는 메시지가 포함된 본문의 복호가 원천적으로 불가능하다. 즉, 클라우드 서버에 저장된 데이터 파일을 헤더와 본문으로 나누어 분산 저장함으로써 데이터의 기밀성을 보장한다.The inventive scheme is described in Yu, SC, Wang, C., Ren, KI, and Lou, WJ, “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp. In the method of .321-334., Data files stored in the cloud server are divided into header and body and distributed to the authority manager and the cloud provider, respectively. In the header, the private key used to encrypt the message in the body is encrypted with KP-ABE. In other words, the user cannot obtain the secret key information in the header unless the user is justified by the authority manager, and the user cannot actually decrypt the body containing the message that the user wants to obtain. In other words, the data files stored in the cloud server are divided and stored in the header and the body to ensure confidentiality of the data.

또한, 클라우드 내에 권한 관리자를 두어 사용자 접근에 대한 정당성을 판별하고, 데이터 소유자가 정한 가중치(타입 정보)에 따른 선택적 위임이 가능하게 한다. 이러한 기능을 구체화하기 위해서 비밀 분산과 타입 기반 프록시 재 암호화를 활용한다.In addition, the authority manager is placed in the cloud to determine the legitimacy of user access, and enable selective delegation according to the weight (type information) determined by the data owner. To refine these features, we use secret distribution and type-based proxy re-encryption.

Yu, S. C., Wang, C., Ren, K. I., and Lou, W. J., “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp.321-334.의 방식에서의 프록시 재 암호화 키 rki ↔i' ← ti'/ti = R을 (k, n) 방식으로 분할하여 각 쉐어 R(1≤ℓ≤n)을 권한 관리자에게 전송한다. 권한 관리자는 피 위임자가 데이터를 열람하고자 할 때 사용자의 권한이 정당하다면 프록시 재 암호화 키 쉐어 R를 k개 만큼 모아서 R을 재구성하고 정당하지 않다면 연산을 중지한다.Yu, SC, Wang, C., Ren, KI, and Lou, WJ, “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp. 321-334. The proxy re-encryption key rk i i ' ← t i ' / t i = R is divided into (k, n) schemes and each share R (1 ≦ ≦ n) is transmitted to the authority manager. The privilege manager reconstructs R by collecting k proxy re-encryption key shares, R l , if the user wants to access the data, and if not, reconstructs R.

타입 기반 프록시 재 암호화를 활용하여 데이터 소유자가 사용자 집단을 신뢰하는 수준에 따라 메시지를 전문 혹은 일부분으로 나누고 각각 타입 정보를 부여하여 암호화한다. 이를 통해서 데이터 소유자는 사용자 집단에 메시지의 전문 혹은 일부분에 대한 복호 권한을 선택적으로 위임 가능하다.Type-based proxy re-encryption is used to encrypt messages by dividing the message into full or partial parts, depending on the level of trust that the data owner trusts the user population. This allows the data owner to selectively delegate decryption of the full or partial message to the user group.

도 2는 본 발명의 실시예에 따른 데이터 접근 권한 관리 장치 및 방법을 설명하는 구성도이다. 도 2를 참조하면, 본 발명의 실시예에 따른 데이터 접근 권한 관리 장치는 데이터 소유자 단말(100), 권한 관리자(Privilege Manager) 단말(210), 클라우드 서비스 제공자(Cloud Service Provider: CSP) 단말(220)로 이루어진 클라우드 서버(200), 및 사용자 집단(User Group) 단말(300) 총 3개의 집단으로 구성된다.2 is a block diagram illustrating an apparatus and method for managing data access rights according to an embodiment of the present invention. Referring to FIG. 2, the apparatus for managing data access rights according to an embodiment of the present invention includes a data owner terminal 100, a privilege manager terminal 210, and a cloud service provider (CSP) terminal 220. The cloud server 200, and a user group (300) composed of a total of three groups.

데이터 소유자 단말(100)은 대칭키로 데이터 파일을 암호화하여 헤더 및 본문으로 이루어진 암호문을 얻고 상기 대칭키를 KP-ABE(Key Policy Attribute Based Encryption; KP-ABE) 방식으로 암호화하여 상기 암호문의 헤더에 포함하고, 상기 암호화된 대칭키가 포함된 암호문의 헤더 및 상기 암호문의 본문을 개별적으로 전송한다.The data owner terminal 100 encrypts the data file with a symmetric key to obtain a ciphertext consisting of a header and a body, and encrypts the symmetric key in a key policy attribute based encryption (KP-ABE) scheme to include in the header of the ciphertext. The header of the ciphertext and the body of the ciphertext are transmitted separately.

권한 관리자 단말(210)은 상기 데이터 소유자 단말(100)로부터의 상기 암호화된 대칭키가 포함된 암호문의 헤더를 수신받아 저장하고, 사용자로부터 상기 데이터 파일에 대한 접근 요구에 따라 시스템 사용자 리스트의 확인을 통해 상기 사용자의 정당성을 인증하여 정당한 사용자인 경우, 상기 암호문의 본문을 전송하도록 지시하고 상기 암호화된 대칭키가 포함된 암호문의 헤더를 전송한다. The authority manager terminal 210 receives and stores a header of a cipher text including the encrypted symmetric key from the data owner terminal 100 and confirms a system user list according to a request for access to the data file from a user. If the legitimate user is authenticated through the user's legitimacy, the user is instructed to transmit the body of the cipher text and the header of the cipher text including the encrypted symmetric key is transmitted.

클라우드 서비스 제공자 단말(220)은 상기 데이터 소유자 단말(100)로부터의 상기 암호문의 본문을 수신받아 저장하고, 상기 권한 관리자 단말(210)로부터의 상기 암호문의 본문 전송 지시에 따라 상기 암호문의 본문을 상기 사용자로 제공한다.The cloud service provider terminal 220 receives and stores the body of the cipher text from the data owner terminal 100, and stores the body of the cipher text according to the instruction to transmit the body of the cipher text from the authority manager terminal 210. Provide as a user.

사용자 집단 단말(300)은 상기 권한 관리자 단말(210)에 상기 데이터 파일에 대한 접근을 요구하고, 상기 암호문의 헤더에 포함된 상기 암호화된 대칭키로 상기 암호문의 본문을 복호하여 상기 데이터 파일을 획득한다.The user group terminal 300 requests the authority manager terminal 210 to access the data file, and obtains the data file by decoding the body of the cipher text with the encrypted symmetric key included in the header of the cipher text. .

상기 데이터 소유자 단말(100)은 삭제할 데이터 파일의 ID에 자신의 서명을 첨부하여 상기 권한 관리자 단말(210)로 전송하여 해당 데이터 파일의 삭제를 요구한다. 상기 권한 관리자 단말(210)은 상기 데이터 소유자 단말(100)로부터의 상기 ID에 포함된 서명을 확인하여 정당성이 입증되면 상기 클라우드 서비스 제공자 단말(220)에 저장된 데이터 파일의 본문을 삭제할 것을 요구한다. 상기 클라우드 서비스 제공자 단말(220)은 상기 권한 관리자 단말(210)로부터의 상기 데이터 삭제 요구에 따라 해당 데이터 파일의 본문을 삭제한다.The data owner terminal 100 attaches its signature to the ID of the data file to be deleted and sends it to the authority manager terminal 210 to request the deletion of the data file. The authority manager terminal 210 confirms the signature included in the ID from the data owner terminal 100 and requests the deletion of the body of the data file stored in the cloud service provider terminal 220 when validity is verified. The cloud service provider terminal 220 deletes the body of the data file according to the data deletion request from the authority manager terminal 210.

Yu, S. C., Wang, C., Ren, K. I., and Lou, W. J., “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp.321-334.의 방식은 클라우드 서버의 명령에 따른 6개의 시스템 레벨과 시스템 레벨 내에서 구체적으로 작동하는 8개의 알고리즘 레벨로 구성된다. 본 발명은 Yu, S. C., Wang, C., Ren, K. I., and Lou, W. J., “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp.321-334.의 방식에 3가지의 알고리즘 레벨(APrivilegeMgt, AEncryptB, ADecryptB)을 추가한다.Yu, SC, Wang, C., Ren, KI, and Lou, WJ, “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp. 321-334. The scheme consists of six system levels according to the command of the cloud server and eight algorithm levels that operate specifically within the system level. The invention is described in Yu, SC, Wang, C., Ren, KI, and Lou, WJ, “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp. 321. Three algorithm levels (APrivilegeMgt, AEncryptB, ADecryptB) are added to the method of -334.

(1) 시스템 설정: 데이터 소유자 단말(100)이 시스템 유니버스 U = {1,2,...., N}와 보안 파라미터 k를 입력하여 PK 및 MK, 사용자 집단을 위한 타입 정보 집합 T를 정의하여 출력하는 시스템 레벨(PK, MK←ASetup(k)).(1) System setting: The data owner terminal 100 inputs the system universe U = {1,2, ...., N} and the security parameter k to define the type information set T for PK and MK, user group. Level (PK, MK ← ASetup (k)).

생성자 g를 가지는 소수 위수 p의 쌍선형 그룹(bilinear group) G와 쌍선형 사상 e: G1 × G1 → G2, 해쉬 함수 H = {0, 1}* → Zp *를 정의한다. 사용자 집단 단말(300)을 위한 타입 정보 집합 T(T=(t1, t2, ...., tN))를 정의한다(t∈{0,1}*).

Figure 112011003227987-pat00004
, 속성 i에 대한 ai∈Zp,
Figure 112011003227987-pat00005
를 생성한다. 시스템 공개키 PK = (Y, Ai, A2,...,AN)와 시스템 마스터 키 MK = (y, ai, a2,...,aN, T)를 생성하고 PK에 서명을 덧붙인
Figure 112011003227987-pat00006
를 권한 관리자 단말(210)에게 전송한다.The bilinear group G of the decimal order p with the constructor g and the bilinear mapping e: G 1 × G 1 → G 2 , define the hash function H = {0, 1} * → Z p * . The type information set T (T = (t 1 , t 2 ,..., T N )) for the user group terminal 300 is defined (t ∈ {0,1} * ).
Figure 112011003227987-pat00004
, A i ∈Z p for attribute i,
Figure 112011003227987-pat00005
. Create a system public key PK = (Y, A i , A 2 , ..., A N ) and a system master key MK = (y, a i , a 2 , ..., a N , T) Signed
Figure 112011003227987-pat00006
To the authority manager terminal 210.

(2) 새로운 파일 생성: 권한 관리자 단말(210)과 CSP 단말(220)에 데이터 파일을 전송하기 전에 데이터 소유자 단말(100)이 데이터 파일을 암호화하는 시스템 레벨:(2) Create new file: The system level at which the data owner terminal 100 encrypts the data file before transmitting the data file to the authority manager terminal 210 and the CSP terminal 220:

데이터 m에 대한 ID를 선택, 임의로 r∈ZP *를 선택하고 r과 임의의 타입 정보 t를 입력하여 대칭키

Figure 112011003227987-pat00007
를 계산하고, 대칭키 DEK로 데이터 m을 암호화한다
Figure 112011003227987-pat00008
.Select ID for data m, select r∈Z P * arbitrarily, and input r and arbitrary type information t.
Figure 112011003227987-pat00007
Compute and encrypt data m with symmetric key DEK
Figure 112011003227987-pat00008
.

속성 기반 암호화 개요Attribute Based Encryption Overview

속성 기반 암호화(Attribute Based Encryption)는 접근구조(Access Structure)가 비밀키나 암호문 중 어느 것과 관련되는가에 따라 KP-ABE(Key Policy Attribute Based Encryption: KP-ABE) 및 CP-ABE (Ciphertext Policy Attribute Based Encryption)로 구분된다.Attribute Based Encryption uses Key Policy Attribute Based Encryption (KP-ABE) and Ciphertext Policy Attribute Based Encryption depending on whether the access structure is associated with a secret key or ciphertext. Separated by).

본 발명에서는 KP-ABE를 다루고 있으므로 CP-ABE에 대한 소개는 생략한다. KP-ABE에서 사용자의 비밀키는 접근구조와 관련되고 암호문은 속성 집합과 관련되어있다. 즉, 암호문 내의 속성 집합이 사용자 비밀키의 특정 복호 정책을 만족하면 암호문이 복호되는 구조이다. 이러한 복호 구조는 도 1의 접근구조와 같이 구성될 수 있다. Since the present invention deals with KP-ABE, the introduction of CP-ABE is omitted. In KP-ABE, a user's private key is associated with an access structure and a ciphertext is associated with a set of attributes. That is, the ciphertext is decrypted when the attribute set in the ciphertext satisfies the specific decryption policy of the user secret key. This decoding structure may be configured as the access structure of FIG.

데이터 m에 대한 속성 집합 I를 정의하고

Figure 112011003227987-pat00009
를 KP-ABE로 암호화. 즉,
Figure 112011003227987-pat00010
이다.Define a set of properties I for data m
Figure 112011003227987-pat00009
Encrypted with KP-ABE. In other words,
Figure 112011003227987-pat00010
to be.

도 3과 같은 형식으로 헤더는 권한 관리자 단말(210), 본문은 CSP 단말(220)에 저장한다. In the format as shown in FIG. 3, the header is stored in the authority manager terminal 210 and the body is stored in the CSP terminal 220.

(3) 새로운 사용자 승인: 새로운 사용자 ω가 시스템에 참가를 원할 때, 데이터 소유자 단말(100)이 사용자 ω의 접근 구조 P를 할당하는 시스템 레벨:(3) New User Approval: When the new user ω wants to join the system, the system level to which the data owner terminal 100 assigns the access structure P of the user ω:

접근 구조 P의 각 노드 i에 대한 pi(x)를 정의. 접근 구조 P의 root 노드는 pr(0) = y, leaf 노드는 pj(0)로 정의하고 비밀키

Figure 112011003227987-pat00011
를 생성(SK←AKeyGen(P,MK))한다. 접근 구조의 첫 번째 게이트는 AND 게이트로 시작하고 더미 속성 AttD을 추가한다.
Figure 112011003227987-pat00012
를 사용자 ω의 공개 키로 암호화하고 C로 표시. (Q, C, δO,(Q, C))를 권한 관리자 단말(210)에 전송한다(Q는 접근 구조 P의 더미 속성을 제외한 접근 구조). 권한 관리자 단말(210)은 (Q, C, δO,(Q, C))를 받는 즉시 δO,(Q, C)가 맞는지 확인. 시스템 사용자 리스트 UL에 Q를 저장하고 사용자 ω에게 C를 전달한다. 사용자 ω는 C를 자신의 비밀키로 복호한 후, δO,(P, SK , PK )가 맞는지 확인하고 P, SK, PK를 자신의 것으로 받아들인다.Define p i (x) for each node i in access structure P. Define the root node of access structure P as p r (0) = y and the leaf node as p j (0)
Figure 112011003227987-pat00011
Create (SK ← AKeyGen (P, MK)). The first gate of the access structure starts with an AND gate and adds a dummy attribute Att D.
Figure 112011003227987-pat00012
Encrypted with the public key of user ω and denoted by C. (Q, C, δ O, (Q, C) ) is transmitted to the authority manager terminal 210 (Q is an access structure excluding the dummy attribute of the access structure P). The authority manager terminal 210 checks whether δ O, (Q, C) is correct as soon as it receives (Q, C, δ O, (Q, C) ). Store Q in the system user list UL and pass C to user ω. User ω decodes C with his private key, checks that δ O, (P, SK , PK ) is correct and accepts P, SK, PK as his.

(4) 사용자 철회: 사용자 v의 데이터 열람권한을 철회하고, 시스템 마스터키와 공개키의 콤포넌트가 업데이트됨에 따라 재정의된 프록시 재 암호화 키를 출력하는 시스템 레벨:(4) User revocation: System level to revoke user v's right to view data and output the redefined proxy re-encryption key as the components of the system master and public keys are updated:

접근 구조의 CNF(Conjunctive Normal Form)을 설계하고 최소한의 속성 집합이 있을 때, CNF 형태의 짧은 절에서 속성 집합 D를 선택한다(D←AMinimalSet(P)).데이터 소유자 단말(100)이 ai' ← ZP를 선택하고 Ai' = aa'i와 rki i' ← ai'/ai = R을 (k, n) 방식으로 분할하여 각 쉐어 R(1≤ℓ≤n)을 계산(R←AUpdateAtt(i, MK)). R(1≤ℓ≤n)과 Att = (u, D, {i, Ai',δO,(i, A'i )}i∈L)를 권한 관리자 단말(210)로 전송한다. 권한 관리자 단말(210)은 시스템 사용자 리스트 UL에서 사용자 v를 제거. (i, Ai',δO,(i, A'i ))를 저장하고 속성 i의 히스토리 리스트 ALHi에 R을 추가한다.Designing CNF (Conjunctive Normal Form) the access structure, and when there is a minimum set of attributes, selects a set of attributes D at a short section of CNF form (D ← AMinimalSet (P)). Data owner terminal 100 a i '← Z P and select A i ' = a a'i and rk i i ' ← a i ' / a i Calculate each share R 1 (1 ≦ L ≦ n) by dividing R by the (k, n) method (R ← AUpdateAtt (i, MK)). R 1 (1 ≦ L ≦ n) and Att = (u, D, {i, A i ', δ O, (i, A'i ) } i L ) are transmitted to the authority manager terminal 210. The authority manager terminal 210 removes the user v from the system user list UL. Store (i, A i ', δ O, (i, A'i ) ) and add R to the history list ALH i of attribute i.

(5) 파일 접근: 사용자 u가 데이터에 접근할 때 수행되는 시스템 레벨:(5) File access: System level performed when user u accesses data:

사용자 u가 사용자 집단 단말(300)을 이용하여 데이터에 대한 접근 요구 REQ를 생성하여 권한 관리자 단말(210)로 전송한다.User u generates an access request REQ for the data using the user group terminal 300 and transmits to the authority manager terminal 210.

비밀 분산Secret dispersion

비밀 분산(Secret Sharing) 방식은 모든 쉐어(share)가 모여야 평문이 복원되는 (n, n) 방식과 임계치 k개만큼의 쉐어만 있으면 복원 가능한 (n, k) 방식이 있다. (n, n) 방식은 쉐어의 변조 및 소실 등으로 인한 복원 불가능 문제가 발생하지만 (k, n) 방식은 쉐어의 변조 및 소실에 영향을 받지 않는다.Secret sharing has two (n, n) schemes in which plain text is restored when all shares are gathered, and (n, k) schemes that can be restored with as many as k thresholds. The (n, n) method causes an unrecoverable problem due to the modulation and loss of the share, but the (k, n) method is not affected by the modulation and loss of the share.

본 발명의 방식에서는 권한 관리자(Privilege Manager)가 사용자의 데이터 열람권한을 판별하여 승인하는 절차를 구현하기 위해서 비밀 분산을 활용한다. 즉, 프록시 재 암호화 키를 (n, k) 방식으로 여러 개의 쉐어로 분할한 후 사용자의 데이터 열람권한을 판별하여 정당하다면 k개의 쉐어로 프록시 재 암호화 키를 재구성하고 정당하지 않다면 연산을 중지한다. 또한, 모든 쉐어가 있어야 평문이 복원되는 (n, n) 방식이 아닌 n개의 쉐어 중 개만 있으면 평문을 복원 가능한 (n, k) 방식을 활용하여 복원에 필요한 쉐어 정보량에 따라 복원 가능성이 결정될 수 있도록 한다. In the scheme of the present invention, the secret manager utilizes secret distribution to implement a procedure for determining and approving a user's right to view data. That is, after splitting the proxy re-encryption key into multiple shares in the (n, k) manner, the user's right to view the data is determined. If it is legitimate, the proxy re-encryption key is reconfigured into k shares, and if not, the operation is stopped. In addition, if only one share of n shares is needed, instead of the (n, n) method in which the plain text is restored only when all the shares are present, the possibility of restoration can be determined according to the amount of share information required for restoration. do.

권한 관리자 단말(210)은 UL에서 사용자 u를 확인하고 상기한 바와 같이, 프록시 재 암호화 키 R을 (k, n) 방식으로 분할하여 얻은 각 쉐어 R(1≤ℓ≤n)를 k개 모아서 (k, n) 방식으로 rki i' ← ai'/ai = R로 재구성한다(R←APrivilegeMgt({R}ℓ∈k)). UL에 사용자 u가 있으면 사용자 u가 정당한 사용자인 것으로 인증하는데 반해, UL에 사용자 u가 없다면 이하의 모든 연산을 중지한다.The authority manager terminal 210 checks the user u in the UL and collects k shares of each share R 1 (1 ≦ ≦ n) obtained by dividing the proxy re-encryption key R in the (k, n) manner as described above. rk i i ' ← a i ' / a i = Reconstitute with R (R ← APrivilegeMgt ({R l } l∈k )). If the user u is present in the UL, the user u is authenticated as a legitimate user. If the user u is not present in the UL, all the following operations are suspended.

프록시 재 암호화Proxy re-encryption

프록시 재 암호화 기법은 프록시 서버가 평문에 대한 어떠한 정보의 습득없이 A의 암호문을 B가 복호 가능하도록 재 암호화하는 방식이다. 즉, A는 B에게 자신의 암호문에 대한 복호 권한을 위임하는 재 암호화 키(Re-encryption key)를 생성한 후, 프록시 서버에 송신한다. 그러면 프록시 서버는 재 암호화 키를 통해서 A의 암호문을 B의 비밀키로 복호 가능한 암호문으로 변환하여 B에게 전달한다. 그러면 B는 자신의 비밀키로 암호문을 복호한다.Proxy re-encryption is a method in which the proxy server re-encrypts A's ciphertext so that B can decrypt it without obtaining any information about the plain text. That is, A generates a re-encryption key for delegating decryption authority for its ciphertext and transmits it to the proxy server. The proxy server converts A's ciphertext into B's secret key and decrypts it with B's secret key. B then decrypts the ciphertext with its private key.

본 발명의 방식은 Blaze, M., Bleumer, G. and Strauss, M., “Divertible protocols and atomic proxy cryptography”, Proceedings of Eurocrypt ’98, Volume 1403, 1998.에 개시된 atomic proxy cryptography(이하 BBS 방식)와 L.Ibraimi, Q.Tang, P.Hartel, W.Jonker, A 타입-and-Identity-based Proxy Re-Encryption Scheme and its Application in Healthcare, In: 5th VLDB Workshop on Secure Data Management, SDM, August 24, 2008, pp.185-198.에 개시된 타입 기반 프록시 재암호화(타입-based Proxy Re-encryption)를 활용하여 구성된다. BBS는 A의 암호문을 B의 암호문으로 변환하는 방식이다. 타입 기반 프록시 재 암호화는 기존의 프록시 재 암호화에서 한 단계 더 발전된 형태로서 A가 B에게 복호 권한을 선택적으로 위임(selectively delegate decryption right)할 수 있는 방식이다.The method of the present invention is an atomic proxy cryptography (BBS method) disclosed in Blaze, M., Bleumer, G. and Strauss, M., “Divertible protocols and atomic proxy cryptography”, Proceedings of Eurocrypt '98, Volume 1403, 1998. And L.Ibraimi, Q.Tang, P.Hartel, W.Jonker, Type-and-Identity-based Proxy Re-Encryption Scheme and its Application in Healthcare, In: 5th VLDB Workshop on Secure Data Management, SDM, August 24 , 2008, pp. 185-198. It utilizes type-based proxy re-encryption. BBS converts A's ciphertext into B's ciphertext. Type-based proxy re-encryption is a further step in the existing proxy re-encryption, in which A can selectively delegate decryption right to B.

본 발명에서는 데이터 소유자의 키 생성 등에 대한 계산상 과부하를 줄이기 위해서 BBS 방식을 활용하여 클라우드 사업자에게 업무를 위임하고, 위임자가 피 위임자에 대해 신뢰하는 수준에 따라 메시지의 전문 혹은 일부분의 복호권한을 선택적으로 위임하는 타입 기반 프록시 재 암호화의 개념을 활용하여 메시지를 암호화한다.In the present invention, in order to reduce the computational overload of the data owner's key generation, the BBS scheme is used to delegate tasks to cloud operators, and the decryption authority of the full or partial message of the message is selectively selected according to the level of trust of the delegate. Encrypt the message by taking advantage of the concept of type-based proxy re-encryption that delegates.

권한 관리자 단말(210)은 AHLi에서 모든 프록시 재 암호화 키를 검색(i가 최신 버전이라면 연산을 수행하지 않음. 가장 최근의 MK는 ai (n)이라고 가정). 검색된 프록시 재 암호화 키로 rki ↔i(n) ← rki i'ㆍrki i'' , ..., rki (n-1)↔i(n) = ai/ai (n)를 계산하여 Ei (n) ← (Ei)rki ↔i(n) = g ai (n)S을 계산한다. 그리고 (rki ↔i(n))-1 ← rki i'ㆍrki i'' , ..., rki (n-1)↔i(n) = ai/ai (n)를 계산하여 CSP 단말(220)에 (rki ↔i(n))-1 및 {ski}i∈ Lp를 전송하면 CSP 단말(220)은 ski' ← (sk)rki ↔i(n) = g( pi (0)/ ai )ㆍ( ai / ai (n)) = g( pin (0)/ ai (n))을 계산한다(Ei (n) ← AUpdateAtt4File(i, Ei, AHLi)), ski' ← AUpdateSK(i, ski, AHLi)). 권한 관리자 단말(210)은 암호화된 대칭키가 포함된 암호문의 헤더

Figure 112011003227987-pat00013
를, CSP 단말(220)은 암호문의 본문 RESP2 = ({i, ski', Ai',δO,(i, A'i )}i∈ Lp Attp, mㆍgH(r∥t))를 사용자 u의 사용자 집단 단말(300)로 전송한다.The authority manager terminal 210 retrieves all proxy re-encryption keys from AHL i (if i is the latest version, no operation is performed. Assuming that the most recent MK is a i (n) ). Rk i ↔i (n) ← rk i i ' ㆍ rk i i'' , ..., rk i (n-1) ↔i (n) = a i / a i (n ) calculation to calculate the E i (n) ← (E i) rki ↔i (n) = g ai (n) S. And (rk i ↔i (n) ) -1 ← rk i i ' ㆍ rk i i'' , ..., rk i (n-1) ↔i (n) = a i / a i (n ) And transmits (rk i i (n) ) -1 and {sk i } i ∈ Lp to the CSP terminal 220, the CSP terminal 220 is sk i '← (sk) rki i (n ) = g ( pi (0) / ai ) · ( ai / ai (n)) = g ( pin (0) / ai (n)) Calculate (E i (n) ← AUpdateAtt4File (i, E i , AHL i )), sk i '← AUpdateSK (i, sk i , AHL i )). The authority manager terminal 210 includes a header of a cipher text including an encrypted symmetric key.
Figure 112011003227987-pat00013
The CSP terminal 220 is the body of the cipher text RESP 2 = ({i, sk i ', A i ', δ O, (i, A'i ) } i ∈ Lp Attp , m · g H (r∥ t) ) is transmitted to the user group terminal 300 of the user u.

사용자 u는 상기 사용자 집단 단말(300)을 이용하여 상기 암호문의 본문 RESP2에서 δO,(i, A'i )와 ski'를 확인하고 SK안의 ski를 ski'로 대체하고 각 leaf node에 대한 e(Ei, ski) = e(g, g)pi (0)S를 계산하며, AND 게이트와 OR 게이트의 연산을 통해서 YS = e(g, g)ys를 계산한다. 헤더의 E를 YS로 계산. 즉, E/YS = DEK를 계산하고(DEK←ADecryptH(P,SK,E)), 본문의 mㆍgH (r∥t)를 DEK로 계산하여 데이터 m을 획득한다(m←ADecryptB(mㆍDEK, DEK)).User u is O δ, (i, A'i) and sk i RESP in the body 2 of the encrypted text by using the user group terminal 300 'and the check in sk sk SK i i' and replaced with each leaf Calculate e (E i , sk i ) = e (g, g) pi (0) S for node, and calculate Y S = e (g, g) ys through the operation of AND and OR gates. Calculate E in the header as Y S. That is, E / Y S = DEK is calculated (DEK ← ADecryptH (P, SK, E)), and m · g H (r∥t) in the body is calculated by DEK to obtain data m (m ← ADecryptB ( m. DEK, DEK)).

(6) 데이터 파일 삭제: 데이터 소유자 단말(100)이 CSP 단말(220)에 저장된 데이터 파일의 본문을 삭제하기 위해서 수행한다. 데이터 파일을 삭제하기 위해서 데이터 소유자 단말(100)은 삭제할 데이터 파일의 ID에 자신의 서명을 첨부하여 권한 관리자 단말(210)로 전송한다. 상기 권한 관리자 단말(210)은 데이터 소유자 단말(100)로부터의 상기 서명을 확인하여 정당성이 입증되면 CSP 단말(220)에 저장된 데이터 파일의 본문을 삭제할 것을 요구하고 CSP 단말(220)은 데이터를 삭제하는 시스템 레벨.(6) Data file deletion: The data owner terminal 100 performs the deletion of the body of the data file stored in the CSP terminal 220. In order to delete the data file, the data owner terminal 100 attaches its signature to the ID of the data file to be deleted and transmits it to the authority manager terminal 210. The authority manager terminal 210 confirms the signature from the data owner terminal 100 and if the validity is verified, requests that the authority manager delete the body of the data file stored in the CSP terminal 220 and the CSP terminal 220 deletes the data. System level.

철회된 사용자의 공모 공격에 대한 안정성 분석Stability Analysis of Collusion Attacks from Withdrawn Users

본 발명의 중요한 보안 특성은 공모 공격에 대한 안전성이다. 여기서 공모 공격이란 시스템상에서 철회된 사용자가 클라우드 서버와 공모하여 데이터를 불법적으로 열람하는 것이다.An important security feature of the present invention is its safety against collusion attacks. The collusion attack is a user withdrawn from the system conspiracy with the cloud server to illegally read the data.

Yu, S. C., Wang, C., Ren, K. I., and Lou, W. J., “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp.321-334.의 방식에서는 철회 이벤트가 발생해도 철회된 사용자가 소지하고 있는 비밀키 SK에 직접적인 변화가 없다. 여기서, 본문내의 데이터를 암호화하는데 사용된 대칭키 DEK가 KP-ABE로 암호화되어 헤더 내에 포함되어 있다. 따라서 클라우드 서버(200)가 보유하고 있는 데이터 파일의 헤더에 비밀키 성분의 업 데이트를 실행하지 않고 철회된 사용자에게 전송하면 자신의 비밀키 SK로 헤더를 복호할 수 있다. 즉, 대칭키 DEK를 획득함으로써 데이터 을 열람 가능하다.Yu, SC, Wang, C., Ren, KI, and Lou, WJ, “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp. 321-334. In this way, even if a withdrawal event occurs, there is no direct change to the private key SK possessed by the withdrawn user. Here, the symmetric key DEK used to encrypt data in the body is encrypted with KP-ABE and included in the header. Therefore, if the cloud server 200 transmits to the withdrawn user without executing the update of the secret key component in the header of the data file held by the cloud server 200, the header can be decrypted with its secret key SK. That is, the data can be viewed by obtaining the symmetric key DEK.

이러한 공모 공격에 대한 대책으로서 제안 방식은 데이터 파일을 헤더와 본문으로 나누어 각각 권한 관리자와 클라우드 사업자에 분산 저장한다. 사용자는 권한 관리자에게 정당성을 인정받지 못하면 헤더 내의 대칭키 DEK에 대한 정보를 얻을 수 없기 때문에 본문의 복호가 원천적으로 불가능하다. 즉, 제안 방식은 권한 관리자의 개입으로 철회된 사용자와 클라우드 서버 간의 공모 공격에 대해서 안전하다.As a countermeasure against such collusion attack, the proposed method divides the data file into header and body, and stores them in the authority manager and cloud provider, respectively. The user cannot obtain information about the symmetric key DEK in the header unless the user is justified by the authority manager. In other words, the proposed scheme is safe against collusion attacks between users who have been withdrawn by the authority manager and the cloud server.

또한, 권한 관리자에게 사용자의 데이터 접근 정당성에 대해 판별할 수 있는 권한을 부여한다. 정당성을 판별하여 승인하는 절차는 프록시 재 암호화 키를 개의 쉐어로 나누어 개의 쉐어가 모였을 때만 재구성되는 (k, n) 방식을 이용한다. 권한 관리자가 사용자의 데이터 접근 정당성을 판별하여 승인되었을 때만 k개의 쉐어로서 프록시 재 암호화 키를 재구성하여 다음 연산을 수행하고, 승인하지 않았을 때는 이하의 모든 연산을 중지한다.In addition, the authority manager is given the authority to determine the legitimacy of a user's data access. The procedure for determining and approving the legitimacy uses a method of dividing the proxy re-encryption key into (2) shares and reconstructing only when (1) shares are gathered. Only when the authority manager has determined and approved the user's data access legitimacy, reconfigures the proxy re-encryption key with k shares to perform the next operation.

프록시 재 암호화 키에 대한 변조 공격에 대한 안정성 분석Stability Analysis of Tampering Attacks on Proxy Re-Encryption Keys

프록시 재 암호화 키에 대한 변조 공격이란 프록시 재 암호화 키 R이 소실 또는 변조를 통해서 원래의 기능을 수행할 수 없게 만드는 공격이다. Yu, S. C., Wang, C., Ren, K. I., and Lou, W. J., “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp.321-334.의 방식에서 프록시 재 암호화 키가 유일하므로 소실되거나 유출되어 변조된다면 재 암호화를 수행할 수 없다. 이와 비교해서 제안 방식은 프록시 재 암호화 키에 대한 변조 공격에 대해서 비밀 분산을 활용하여 프록시 재 암호화 키 복원에 필요한 쉐어 정보량에 따라 복원 가능성이 결정된다.A tamper attack on a proxy re-encryption key is an attack that causes the proxy re-encryption key R to lose its original function through loss or tampering. Yu, SC, Wang, C., Ren, KI, and Lou, WJ, “Achieving Secure, Scalable, and Fine-grained Data Access Control in Cloud Computing,” INFOCOM, 2010 Proceedings IEEE, 2010, pp. 321-334. Since the proxy re-encryption key is unique in the scheme, the re-encryption cannot be performed if it is lost, leaked or tampered with. In comparison, the proposed scheme utilizes secret distribution for tampering attacks against proxy re-encryption keys, and the possibility of restoration is determined according to the amount of share information required for proxy re-encryption key restoration.

즉, 본 발명은 (k, n) 비밀 분산 방식으로 프록시 재 암호화 키 을 프록시 재 암호화 키 쉐어 R(1≤ℓ≤n)로 분할하여 재조합시 k개 만큼 쉐어가 모여야 프록시 재 암호화 키 R이 재구성된다. 예를 들어 R(1≤ℓ≤n)에 대해서 k=3, n=5, 라고 할 때 R1, R2, R3, R4, 및 R5 중 3개의 쉐어만 있어도 R을 도출할 수 있다. k개의 쉐어만 존재하면 프록시 재 암호화 키를 복원할 수 있다는 점에서 안전하다.That is, the present invention divides the proxy re-encryption key into the proxy re-encryption key share R (1≤ℓ≤n) in a (k, n) secret distribution method so that the number of k shares at the time of recombination is required to collect the proxy re-encryption key R. Is reconstructed. For example, when k = 3 and n = 5 for R 1 (1≤l≤n), only three shares of R 1 , R 2 , R 3 , R 4 , and R 5 will yield R. Can be. If only k shares exist, it is safe in that the proxy re-encryption key can be restored.

이상에서는 본 발명을 특정의 바람직한 실시예로서 설명하였으나, 본 발명은 상기한 실시예에 한정되지 아니하며, 특허 청구의 범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형이 가능할 것이다.Although the present invention has been described as a specific preferred embodiment, the present invention is not limited to the above-described embodiments, and the present invention is not limited to the above-described embodiments without departing from the gist of the present invention as claimed in the claims. Anyone with a variety of variations will be possible.

100: 데이터 소유자 단말 200: 클라우드 서버
210: 권한 관리자 단말 220: CSP 단말
300: 사용자 집단 단말
100: data owner terminal 200: cloud server
210: authority manager terminal 220: CSP terminal
300: user group terminal

Claims (6)

(i) 데이터 소유자 단말이 대칭키로 데이터 파일을 암호화하여 헤더 및 본문으로 이루어진 암호문을 얻고 상기 대칭키를 KP-ABE(Key Policy Attribute Based Encryption) 방식으로 암호화하여 상기 암호문의 헤더에 포함하고, 상기 암호화된 대칭 키가 포함된 암호문의 헤더 및 상기 암호문의 본문을 권한 관리자 단말 및 클라우드 서비스 제공자 단말로 각각 제공하여 저장하는 단계;
(ii) 사용자 집단 단말이 상기 권한 관리자 단말에 상기 데이터 파일에 대한 접근을 요구함에 따라 상기 권한 관리자 단말이 시스템 사용자 리스트의 확인을 통해 상기 사용자 집단 단말의 사용자의 정당성을 인증하여 정당한 사용자인 경우, 상기 클라우드 서비스 제공자 단말로 하여금 상기 암호문의 본문을 전송하도록 지시하고 상기 암호화된 대칭키가 포함된 암호문의 헤더를 상기 사용자 집단 단말로 제공하는 단계;
(iii) 상기 권한 관리자 단말로부터의 상기 암호문의 본문 전송 지시에 따라 상기 클라우드 서비스 제공자 단말이 상기 암호문의 본문을 상기 사용자 집단 단말로 제공하는 단계; 및
(iv) 상기 사용자 집단 단말이 상기 암호문의 헤더에 포함된 상기 암호화된 대칭키로 상기 암호문의 본문을 복호하여 상기 데이터 파일을 획득하는 단계를 포함하되,
상기 단계 (i)에서, 상기 데이터 파일의 데이터 m에 대한 ID를 선택, 임의로 r∈ZP *를 선택하고 r과 임의의 타입 정보 t를 입력하여 상기 대칭키 DEK = gH(r∥t)를 계산하고, 상기 대칭키 DEK로 상기 데이터 m을 암호화(mㆍgH(r∥t))←AEncryptB(m, DEK)하고, 상기 데이터 m에 대한 속성 집합 I를 정의하고 DEK= gH(r∥t)를 KP-ABE로 암호화하여 상기 암호문
Figure 112012065925273-pat00014
←AEncryptH(I, DEK, PK)을 얻는 것을 특징으로 하는 데이터 접근 권한 관리 방법.
(i) the data owner terminal encrypts the data file with a symmetric key to obtain a cipher text consisting of a header and a body, and encrypts the symmetric key by KP-ABE (Key Policy Attribute Based Encryption) to include it in the header of the cipher text. Providing and storing a header of the cipher text including the symmetric key and the body of the cipher text to the authority manager terminal and the cloud service provider terminal, respectively;
(ii) when the user group terminal requests the authority manager terminal to access the data file, the authority manager terminal authenticates the validity of the user of the user group terminal by checking a system user list and is a legitimate user. Instructing the cloud service provider terminal to transmit the body of the cipher text and providing a header of the cipher text including the encrypted symmetric key to the user group terminal;
(iii) providing, by the cloud service provider terminal, the body of the ciphertext to the user group terminal according to an instruction to transmit the body of the ciphertext from the authority manager terminal; And
(iv) the user group terminal obtaining the data file by decoding the body of the cipher text with the encrypted symmetric key included in the header of the cipher text,
In the step (i), the ID for the data m of the data file is selected, and r∈Z P * is arbitrarily selected, and r and arbitrary type information t are inputted so that the symmetric key DEK = g H (r∥t). , Encrypt the data m with the symmetric key DEK (m · g H (r∥t) ) AEncryptB (m, DEK), define an attribute set I for the data m and set DEK = g H ( r∥t) is encrypted with KP-ABE
Figure 112012065925273-pat00014
← AEncryptH (I, DEK, PK).
삭제delete 청구항 1에 있어서, 단계 (ii)에서 상기 권한 관리자 단말은 속성 i의 히스토리 리스트 AHLi에서 모든 프록시 재 암호화 키를 검색하여 얻은 프록시 재 암호화 키로 rki↔i(n) ← rki↔i'ㆍrki↔i'', ..., rki(n-1)↔i(n) = ai/ai(n)를 계산하여 Ei(n) ← (Ei)rki↔i(n) = g ai(n)S을 계산하고, (rki↔i(n))-1 ← rki↔i'ㆍrki↔i'', ..., rki(n-1)↔i(n) = ai/ai(n)를 계산하여 상기 클라우드 서비스 제공자 단말에 (rki↔i(n))-1 및 {ski}i∈Lp를 전송하며, 상기 암호화된 대칭키가 포함된 암호문의 헤더
Figure 112012065925273-pat00015
를 상기 사용자 집단 단말로 제공하고,
단계 (iii)에서, 상기 클라우드 서비스 제공자 단말은 ski' ← (sk)rki↔i(n) = g(pi(0)/ai)ㆍ(ai/ai(n)) = g(pin(0)/ai(n))을 계산(Ei(n) ← AUpdateAtt4File(i, Ei, AHLi)), ski' ← AUpdateSK(i, ski, AHLi))하고, 암호문의 본문 RESP2 = ({i, ski', Ai',δO,(i,A'i)}i∈Lp\Attp, mㆍgH(r∥t))를 상기 사용자 집단 단말로 전송하며,
단계 (iv)에서, 상기 사용자 집단 단말은 상기 암호문의 본문 RESP2에서 δO,(i,A'i)와 ski'를 확인하고 SK안의 ski를 ski'로 대체하고 각 leaf 노드에 대한 e(Ei, ski) = e(g, g)pi(0)S를 계산하고, AND 게이트와 OR 게이트의 연산을 통해서 YS = e(g, g)ys를 계산하고, E/YS = 대칭키를 계산(DEK←ADecryptH(P,SK,E)), 상기 본문의 mㆍgH(r∥t)를 상기 대칭키로 계산하여 데이터 m 획득(m←ADecryptB(mㆍDEK, DEK)) 하는 데이터 접근 권한 관리 방법.
The method according to claim 1, wherein in step (ii) the authority manager terminal is a proxy re-encryption key obtained by retrieving all the proxy re-encryption keys from the history list AHL i of attribute i rk i↔i (n) ← rk i↔i ' rk i↔i '', ..., rk i (n-1) ↔i (n) = a i / a i (n) by calculating E i (n) ← (E i ) rki↔i (n ) = g ai (n) S , and (rk i↔i (n) ) -1 ← rk i↔i ' ㆍ rk i↔i'', ..., rk i (n-1) ↔i (n) = a i / a i (n) is calculated and transmits ( rk i↔i (n) ) -1 and {sk i } i∈Lp to the cloud service provider terminal, and the encrypted symmetric key is Header of ciphertext included
Figure 112012065925273-pat00015
Provides to the user group terminal,
In step (iii), the cloud service provider terminal is sk i '← (sk) rki↔i (n) = g (pi (0) / ai) · (ai / ai (n)) = g (pin (0 ) / ai (n)) (E i (n) ← AUpdateAtt4File (i, E i , AHL i )), sk i '← AUpdateSK (i, sk i , AHL i )), and the body of the ciphertext RESP 2 = ({i, sk i ', A i ', δ O, (i, A'i) } i∈Lp\Attp , m · g H (r∥t) ) to the user group terminal,
In step (iv), the user group terminal checks δ O, (i, A'i) and sk i 'in the text RESP 2 of the ciphertext , and replaces sk i in SK with sk i ' Calculate e (E i , sk i ) = e (g, g) pi (0) S , calculate Y S = e (g, g) ys through the operation of AND and OR gates, and E / Y S = Compute symmetric key (DEK ← ADecryptH (P, SK, E)), and obtain m data by calculating m · g H (r∥t) of the text with the symmetric key (m ← ADecryptB (m · DEK, DEK)) How to manage data access rights.
청구항 1에 있어서, 데이터 소유자 단말은 삭제할 데이터 파일의 ID에 자신의 서명을 첨부하여 권한 관리자 단말로 전송하여 해당 데이터 파일의 삭제를 요구하는 단계;
상기 권한 관리자 단말은 데이터 소유자 단말로부터의 상기 ID에 포함된 서명을 확인하여 정당성이 입증되면 상기 클라우드 서비스 제공자 단말에 저장된 데이터 파일의 본문을 삭제할 것을 요구하는 단계; 및
상기 클라우드 서비스 제공자 단말은 상기 권한 관리자 단말로부터의 상기 데이터 삭제 요구에 따라 해당 데이터 파일의 본문을 삭제하는 단계를 더 포함하는 데이터 접근 권한 관리 방법.
The method of claim 1, wherein the data owner terminal attaches its signature to the ID of the data file to be deleted and sends the signature to the authority manager terminal to request deletion of the data file;
Requesting the authority manager terminal to delete the body of the data file stored in the cloud service provider terminal if the validity of the signature included in the ID from the data owner terminal is verified; And
The cloud service provider terminal further comprises the step of deleting the body of the data file in response to the data deletion request from the authority manager terminal.
삭제delete 삭제delete
KR1020110003940A 2011-01-14 2011-01-14 Data access privilege managing method KR101220166B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110003940A KR101220166B1 (en) 2011-01-14 2011-01-14 Data access privilege managing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110003940A KR101220166B1 (en) 2011-01-14 2011-01-14 Data access privilege managing method

Publications (2)

Publication Number Publication Date
KR20120091507A KR20120091507A (en) 2012-08-20
KR101220166B1 true KR101220166B1 (en) 2013-01-11

Family

ID=46883862

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110003940A KR101220166B1 (en) 2011-01-14 2011-01-14 Data access privilege managing method

Country Status (1)

Country Link
KR (1) KR101220166B1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
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
KR101423956B1 (en) * 2012-11-15 2014-08-01 고려대학교 산학협력단 System of attribute-based encryption and Method thereof
KR101412673B1 (en) * 2012-12-28 2014-07-01 동국대학교 경주캠퍼스 산학협력단 Method of data management and cloud service system using the method
CN103226670B (en) * 2013-01-18 2016-01-27 杭州华途软件有限公司 A kind of document access control system based on access control model
KR101475462B1 (en) * 2013-08-14 2014-12-23 브레인즈스퀘어(주) System for synchronizing cloud storage and files encrypted with an encryption key of the user
KR101464727B1 (en) * 2013-10-15 2014-11-27 순천향대학교 산학협력단 Cloud Data Access Control System and Method using CP-ABE
CN112328984B (en) * 2020-11-24 2024-02-09 深圳市鹰硕技术有限公司 Data security management method and system applied to big data

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100988198B1 (en) * 2010-05-31 2010-10-18 주식회사 아이넵 Coding method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100988198B1 (en) * 2010-05-31 2010-10-18 주식회사 아이넵 Coding method

Also Published As

Publication number Publication date
KR20120091507A (en) 2012-08-20

Similar Documents

Publication Publication Date Title
Thwin et al. Blockchain-based access control model to preserve privacy for personal health record systems
Do et al. Attribute based proxy re-encryption for data confidentiality in cloud computing environments
CN114513533B (en) Classified and graded body-building health big data sharing system and method
KR101220166B1 (en) Data access privilege managing method
KR101687945B1 (en) Identity-based encryption of data items for secure access thereto
Samanthula et al. An efficient and secure data sharing framework using homomorphic encryption in the cloud
CN105103119A (en) Data security service
Pradeep et al. An efficient framework for sharing a file in a secure manner using asymmetric key distribution management in cloud environment
CN105122265A (en) Data security service system
KR101220160B1 (en) Secure data management method based on proxy re-encryption in mobile cloud environment
KR101615137B1 (en) Data access method based on attributed
WO2012161417A1 (en) Method and device for managing the distribution of access rights in a cloud computing environment
Zichichi et al. Personal data access control through distributed authorization
Xu et al. Security theories and practices for big data
Yasmin et al. Decentralized Entrance Power with Secret Endorsement of Data Stored in Clouds
Mini et al. A comprehensive cloud security model with enhanced key management, access control and data anonymization features
Devassy Research Project Questions
Dabhade et al. Data security in cloud using aggregate key and Diffie-Hellman algorithm
Rahim et al. Secured Image Sharing and Deletion in the Cloud Storage Using Access Policies
Sarddar et al. Safety as a Service (SFaaS) Model-The New Invention in Cloud computing to establish a Secure Logical Communication Channel between Data Owner and the Cloud Service Provider before Storing, Retrieving or Accessing any Data in the Cloud
Barbàra et al. DLT-Based Personal Data Access Control with Key-Redistribution
Pol et al. Secured cloud data sharing using auditable aggregate key
Mamidisetti et al. A novel data sharing model for cloud environment using dual key authentication
Pavithra et al. Secure Data Storage in Cloud using Code Regeneration and public audition
Kulkarni et al. Privacy preserving health record system in cloud computing using attribute based encryption

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20161212

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171110

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20181210

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20191231

Year of fee payment: 8