KR102664379B1 - A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain - Google Patents

A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain Download PDF

Info

Publication number
KR102664379B1
KR102664379B1 KR1020220025287A KR20220025287A KR102664379B1 KR 102664379 B1 KR102664379 B1 KR 102664379B1 KR 1020220025287 A KR1020220025287 A KR 1020220025287A KR 20220025287 A KR20220025287 A KR 20220025287A KR 102664379 B1 KR102664379 B1 KR 102664379B1
Authority
KR
South Korea
Prior art keywords
attribute
secret key
user
agency
smart contract
Prior art date
Application number
KR1020220025287A
Other languages
Korean (ko)
Other versions
KR20230127696A (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 KR1020220025287A priority Critical patent/KR102664379B1/en
Publication of KR20230127696A publication Critical patent/KR20230127696A/en
Application granted granted Critical
Publication of KR102664379B1 publication Critical patent/KR102664379B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 참여자들이 상호 간에 공통으로 신뢰하는 중앙신뢰기관의 참여없이 각종 데이터를 공유할 수 있는 시스템에 관한 것으로, 보다 상세하게는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호 시스템에 관한 것이다. 이를 위해, 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법에 있어서, 중앙기관(30)이 블록체인 네트워크(10) 상에 스마트 계약(SC)을 배포하는 단계(S1); 사용자가 사용자단말(12)을 통해 스마트 계약(SC)에 대응하여 예치금을 예치하는 단계(S2); 중앙기관(30)이 복수의 속성기관(50)에 대해 키를 발급하는 단계(S3); 복수의 속성기관(50)이 발급된 키에 기초하여 고유의 속성비밀키(70)를 각각 발급하는 단계(S4); 사용자에 의해 사용자 비밀키(uGID)(25)가 선택되고, 사용자 비밀키(uGID)(25)의 해시 연산 결과가 예치금의 출금조건(hvalue)(60)이 되는 단계(S5); 및 사용자단말(12)이 고유의 속성비밀키(70)들을 결합하여 기관비밀키(cGID)(22)를 생성하고, 기관비밀키(cGID)(22)에 사용자 비밀키(uGID)(25)를 결합하여 속성비밀키(GID)(20)를 생성하는 단계(S6);를 포함하는 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법이 제공된다.The present invention relates to a system that allows participants to share various data without the participation of a central trust agency that mutually trusts each other. More specifically, it relates to a decentralized data sharing system and a multi-agency safe from collusion attacks based on blockchain technology. It is about an attribute-based encryption system. To this end, in a multi-agency attribute-based encryption method that is safe from collusion attacks based on a decentralized data sharing system and blockchain technology, the central agency 30 distributes a smart contract (SC) on the blockchain network 10. (S1); A step (S2) in which the user deposits a deposit in response to a smart contract (SC) through the user terminal 12; A step (S3) in which the central organization 30 issues keys to a plurality of attribute organizations 50; A step (S4) in which a plurality of attribute agencies (50) each issue a unique attribute secret key (70) based on the issued key; A step (S5) in which the user secret key (uGID) 25 is selected by the user, and the hash operation result of the user secret key (uGID) 25 becomes the withdrawal condition (hvalue) 60 of the deposit; And the user terminal 12 combines the unique attribute secret keys 70 to generate an organization secret key (cGID) 22, and the organization secret key (cGID) 22 is combined with a user secret key (uGID) 25. A multi-agency attribute-based encryption method that is safe from collusion attacks based on blockchain technology and a decentralized data sharing system comprising a step (S6) of combining attribute secret keys (GID) 20 is provided. do.

Description

탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호 시스템{A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain}A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain}

본 발명은 참여자들이 상호 간에 공통으로 신뢰하는 중앙신뢰기관없이 각종 데이터를 공유할 수 있는 시스템에 관한 것으로, 보다 상세하게는 탈중앙 데이터 공유 시스템에서 다중기관의 속성에 기반한 암호의 안전성을 강화할 수 있는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호 시스템에 관한 것이다. The present invention relates to a system that allows participants to share various data without a central trust agency that mutually trusts each other. More specifically, it relates to a system that can strengthen the security of passwords based on the properties of multiple organizations in a decentralized data sharing system. It is about a decentralized data sharing system and a multi-agency attribute-based encryption system that is safe from collusion attacks based on blockchain technology.

일반적으로, 사용자가 하나의 조직에만 소속되어 있는 경우, 단일기관의 속성에 기반한 암호 모델이 구현될 수 있다. 그런데 만약 사용자가 하나 이상의 조직에 소속하여 각 조직으로부터 고유의 속성을 검증받아 사용할 경우가 있다. 이때, 다중기관의 속성에 기반한 암호 모델이 구현된다. 그리고, 사용자는 다중기관의 각 기관이 부여한 고유의 속성 비밀키(복수의 속성)들을 보유하게 되며, 사용자는 이러한 고유의 속성비밀키를 조합하여 새로운 속성 비밀키를 생성하는 것이 가능하다. In general, if a user belongs to only one organization, a password model based on the attributes of a single organization can be implemented. However, if a user belongs to more than one organization, there are cases where unique attributes are verified and used by each organization. At this time, a cryptographic model based on the properties of multiple organizations is implemented. In addition, the user holds unique attribute secret keys (plural attributes) granted by each organization of the multi-organization, and the user can create a new attribute secret key by combining these unique attribute secret keys.

이와 마찬가지로 데이터 역시 기관에서 관리하는 속성들로 암호화될 수 있다. 예를 들어 특정한 데이터의 복호화에 (1) 정부기관 소속, (2) 부장 급 이상 직위, (3) 특정 자격증(예 : 운전면허증) 보유가 요구될 수 있으며 사용자는 시스템 내의 정부 기관 A로부터 (1),(2)에 해당하는 속성 비밀키를 발급받고, 해당 자격증(예 : 운전면허증)을 관리하는 기관(예 : 도로교통공단)으로부터 (3)에 해당하는 속성 비밀키를 발급받아 이들을 결합하여 (1),(2),(3)의 속성에 해당하는 속성비밀키를 새로 생성할 수 있다.Similarly, data can also be encrypted with attributes managed by the organization. For example, decryption of specific data may require (1) belonging to a government agency, (2) a position of manager or higher, and (3) holding a specific qualification (e.g. driver's license), and the user may be required to obtain (1) from government agency A in the system. ), obtain the attribute secret key corresponding to (2), and issue the attribute secret key corresponding to (3) from the organization (e.g., Road Traffic Authority) that manages the relevant certificate (e.g. driver's license), and combine them You can create a new attribute secret key corresponding to the attributes (1), (2), and (3).

그런데, 데이터 복호화를 위해 필요한 속성들을 실제로 보유하지 않은 사용자(예 : 공모공격자)가 속성을 보유한 사용자들로부터 해당하는 고유의 속성비밀키를 양도받아 이를 결합한 뒤, 데이터에 접근하는 공모공격이 가능하다. 단일기관 모델에서 기관은 “사용자의 신원정보와 속성발급정보”를 가지고 있으므로 본인이 소유하지 않는 속성을 복호화 과정에 사용하는 공모공격의 실현이 어렵다. 즉, 누구에게 어떤 속성을 발급했는지를 알고 있으며 동일한 사용자의 속성값들 사이에서만 결합이 가능하도록 암호학적 방법으로 보장한다. 하지만 다중기관 모델의 경우 각 기관은 타 기관의 검증정보를 가지고 있지 않기에 복호화를 위한 해당 속성값들의 결합과정에서 각 기관에서 사용자에게 부여하는 식별정보에 기반한 공모공격 방지 방법은 적용이 불가능하다. However, a collusion attack is possible in which a user (e.g. a collusion attacker) who does not actually possess the attributes required for data decryption obtains the corresponding unique attribute secret key from users who possess the attributes, combines them, and then accesses the data. . In the single agency model, the agency has “user identity information and attribute issuance information,” so it is difficult to implement a collusion attack that uses attributes that are not owned by the user in the decryption process. In other words, it knows who has issued which attribute and uses cryptographic methods to ensure that only attribute values belonging to the same user can be combined. However, in the case of a multi-agency model, each organization does not have the verification information of other organizations, so the collusion attack prevention method based on the identification information provided to the user by each organization during the process of combining the corresponding attribute values for decryption is not applicable.

예를 들어 앞선 예시에서 데이터가 (1) 정부기관 소속, (2) 부장급 이상 직위, (3) 특정 자격증(예 : 운전면허증) 보유로 암호화되어 있을 때, 공모공격자는 정부기관 A의 부장급 이상 직위로 (1), (2)의 속성을 만족하고 해당하는 고유의 속성비밀키를 가지고 있으나 복호화에서 요구하는 특정 자격증(3)을 보유하고 있지 않을 수 있다. 이때 공모공격자는 (3)의 자격증(예 : 운전면허증)을 보유한 다른 사용자로부터 해당하는 고유의 속성비밀키를 양도받아 (1),(2),(3)의 속성에 해당하는 속성비밀키를 새로 생성할 수 있다. For example, in the previous example, when the data is encrypted as (1) belonging to a government agency, (2) holding a manager-level or higher position, and (3) holding a specific qualification (e.g. driver's license), the colluding attacker is a manager-level or higher position in government agency A. Although it satisfies the properties of (1) and (2) and has the corresponding unique property secret key, it may not possess the specific certificate (3) required for decryption. At this time, the colluding attacker receives the corresponding unique attribute secret key from another user holding the certificate (e.g. driver's license) of (3) and uses the attribute secret key corresponding to the attributes of (1), (2), and (3). You can create a new one.

이는 결합에 사용되는 고유의 속성비밀키들이 모두 동일한 사용자에게 부여된 것인지를 확인하는 방법이 없기 때문에 발생하는 것이다. 이러한 문제점을 해결하기 위한 대표적인 방법으로는 시스템의 모든 조직이 공통으로 신뢰하는 중앙의 시스템 관리기관을 두는 것이다. 그러면 중앙의 관리기관이 모든 사용자에게 글로벌 식별자를 부여하여 사용자가 동일한지를 확인할 수 있다. 또한 모든 기관은 고유의 속성비밀키 발급에 사용자의 글로벌 식별자를 사용하게 되므로 키의 결합단계에서는 반드시 결합하려는 키들이 모두 동일한 글로벌 식별자로부터 생성되었음을 보장할 수 있다. 하지만 이와 같이 중앙의 관리기관을 시스템으로 두는 방식은 시스템 확장성 문제 등으로 인해 탈중앙 시스템에 적합하지 않다. This occurs because there is no way to check whether the unique attribute secret keys used for combining are all given to the same user. A representative way to solve this problem is to establish a central system management agency that is commonly trusted by all organizations in the system. Then, the central management agency can assign a global identifier to all users to check whether the users are the same. In addition, since all organizations use the user's global identifier to issue unique attribute secret keys, it can be guaranteed that all keys to be combined are generated from the same global identifier in the key combining stage. However, this method of having a central management agency as the system is not suitable for a decentralized system due to system scalability issues.

즉, 신뢰하는 중앙기관을 가정하는 방법은 전체 시스템의 안전성이 중앙기관에 전적으로 의존하는 문제로 인해, 해당 기관이 절대적으로 외부의 위협에 안전하다는 가정(Fully Trusted)을 비현실적이라고 판단할 때 여러 위협(프라이버시 침해 등)이 존재하고(단일지점장애), 시스템에 새로운 기관이 참여할 때마다 해당 정보를 업데이트하고 공유하는 문제(확장성의 문제)가 존재한다.In other words, the method of assuming a trusted central authority causes the safety of the entire system to be completely dependent on the central authority, and when the assumption that the authority is absolutely safe from external threats (Fully Trusted) is judged to be unrealistic, it is judged to be unrealistic. There are issues (privacy violations, etc.) (single point failures), and there are issues with updating and sharing relevant information each time a new organization participates in the system (problems of scalability).

1. 대한민국 특허등록 제 10-2170672 호(블록체인 자가인증 프로세스를 이용하는 블록체인 암호 화폐 전송 방법),1. Republic of Korea Patent Registration No. 10-2170672 (Blockchain cryptocurrency transfer method using blockchain self-authentication process), 2. 대한민국 특허등록 제 10-2298266 호(클라우드 환경에서 안전하고 효율적인 데이터 공유를 위한 속성기반 암호를 활용한 데이터 접근 제어 방법 및 시스템),2. Republic of Korea Patent Registration No. 10-2298266 (Data access control method and system using attribute-based encryption for safe and efficient data sharing in a cloud environment),

따라서, 본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 해결하고자 하는 과제는 참여자들이 상호 간에 공통으로 신뢰하는 중앙신뢰기관의 참여없이 각종 데이터를 공유할 수 있고, 탈중앙 데이터 공유 시스템에서 다중기관의 속성에 기반한 암호의 안전성을 강화할 수 있는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호 시스템을 제공하는 것이다.Therefore, the present invention was created to solve the above problems, and the problem to be solved by the present invention is to enable participants to share various data without the participation of a central trust institution that they commonly trust, and to provide decentralized data. It provides a decentralized data sharing system that can strengthen the safety of passwords based on multi-agency attributes in a shared system and a multi-agency attribute-based encryption system that is safe from collusion attacks based on blockchain technology.

그리고, 여러 조직에서 동일한 사용자에게 부여한 속성인지(정상) 혹은 여러 조직에서 서로 다른 사용자에게 부여한 속성인지(공모공격)를 구별할 수 있어야 한다. 글로벌식별자(GID)는 여러 기관이 참여하는 전체 시스템의 관리자가 각 사용자에게 고유한 식별자(GID)를 발급하고 각 기관에서는 속성의 발급에 해당 GID를 사용함으로써 속성의 결합과정에서 서로 다른 GID에 기반한 속성값의 결합을 암호학적으로 방지하는 것을 목적으로 한다.Additionally, it must be possible to distinguish whether an attribute has been granted to the same user by multiple organizations (normal) or an attribute has been granted to different users by multiple organizations (collusive attack). A global identifier (GID) is a unique identifier (GID) issued to each user by the administrator of the entire system in which multiple organizations participate, and each organization uses the corresponding GID to issue properties. The purpose is to cryptographically prevent the combination of attribute values.

다만, 본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.However, the technical problems to be achieved in the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly apparent to those skilled in the art from the description below. It will be understandable.

상기의 기술적 과제를 달성하기 위하여, 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법에 있어서, 중앙기관(30)이 블록체인 네트워크(10) 상에 스마트 계약(SC)을 배포하는 단계(S1); 사용자가 사용자단말(12)을 통해 스마트 계약(SC)에 대응하여 예치금을 예치하는 단계(S2); 중앙기관(30)이 복수의 속성기관(50)에 대해 키를 발급하는 단계(S3); 복수의 속성기관(50)이 발급된 키에 기초하여 고유의 속성비밀키(70)를 각각 발급하는 단계(S4); 사용자에 의해 사용자 비밀키(uGID)(25)가 선택되고, 사용자 비밀키(uGID)(25)의 해시 연산 결과가 예치금의 출금조건(hvalue)(60)이 되는 단계(S5); 및 사용자단말(12)이 고유의 속성비밀키(70)들을 결합하여 기관비밀키(cGID)(22)를 생성하고, 기관비밀키(cGID)(22)에 사용자 비밀키(uGID)(25)를 결합하여 속성비밀키(GID)(20)를 생성하는 단계(S6);를 포함하는 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법이 제공된다.In order to achieve the above technical task, in the multi-agency attribute-based encryption method that is safe from collusion attacks based on decentralized data sharing system and blockchain technology, the central agency 30 creates a smart contract ( Step (S1) of distributing SC); A step (S2) in which the user deposits a deposit in response to a smart contract (SC) through the user terminal 12; A step (S3) in which the central organization 30 issues keys to a plurality of attribute organizations 50; A step (S4) in which a plurality of attribute agencies (50) each issue a unique attribute secret key (70) based on the issued key; A step (S5) in which the user secret key (uGID) 25 is selected by the user, and the hash operation result of the user secret key (uGID) 25 becomes the withdrawal condition (hvalue) 60 of the deposit; And the user terminal 12 combines the unique attribute secret keys 70 to generate an organization secret key (cGID) 22, and the organization secret key (cGID) 22 is combined with a user secret key (uGID) 25. A multi-agency attribute-based encryption method that is safe from collusion attacks based on blockchain technology and a decentralized data sharing system comprising a step (S6) of combining attribute secret keys (GID) 20 is provided. do.

또한, S5단계에서 사용자는 복수의 속성기관(50)에 대해 각각 사용자 비밀키(uGID)(25)를 선택한다.Additionally, in step S5, the user selects a user secret key (uGID) 25 for each of the plurality of attribute organizations 50.

또한, 속성비밀키(GID)(20)는 사용자의 데이터를 암호화하거나 복호화하는데 사용된다.Additionally, the attribute secret key (GID) 20 is used to encrypt or decrypt the user's data.

또한, 스마트계약(SC)은, 키에 의해 갱신되어 활성화되는 제 1 상태; 사용자의 출금에 의해 비활성화되는 제 2 상태; 공모공격자의 출금에 의해 비활성화되는 제 3 상태; 중앙기관(30)에 의해 이용중단되는 제 4 상태; 및 스마트계약(SC)의 유효기간이 만료되는 제 5 상태; 중 하나의 상태로 전이될 수 있다.In addition, the smart contract (SC) has a first state that is updated and activated by a key; a second state that is deactivated by the user's withdrawal; a third state deactivated by a colluding attacker's withdrawal; a fourth state, deactivated by the central authority 30; and the fifth state when the validity period of the smart contract (SC) expires; It can transition to one of the following states:

또한, 예치금은 블록체인 토큰이다.Additionally, the deposit is a blockchain token.

또한, S5단계에서 사용자는 사용자 비밀키(uGID)(25)를 랜덤으로 선택할 수 있다. Additionally, in step S5, the user can randomly select the user secret key (uGID) 25.

또한, 사용자는 자신이 소유한 데이터를 판매하는 판매자 또는 다른 사용자의 데이터를 구매하기 위한 구매자이다.Additionally, users are either sellers who sell their own data or buyers who purchase data from other users.

또한, 예치금의 예치 단계(S2)는 스마트 계약(SC)을 활성화하는 제 1 상태로 전이하는 단계를 더 포함한다.Additionally, the deposit deposit step (S2) further includes transitioning to a first state for activating the smart contract (SC).

본 발명의 목적은 또 다른 실시예로써, 전술한 암호화 방법으로 생성된 속성비밀키를 이용한 데이터 거래 방법에 있어서, 판매자의 암호화된 데이터를 저장하고 있는 클라우드 서비스 제공자(16)가 블록체인 네트워크(10) 상에 거래지원 스마트계약(TSC)(90)을 배포하는 단계(S①); 구매자가 구매자 단말(14)을 통해 판매자 단말(12)로 암호화된 데이터의 공유를 요청하는 단계(S②); 판매자 단말(12)이 판매자에 의해 선택된 랜덤값(R)의 해시값(hproof)을 산출한 뒤, 해시값(hproof)을 접근권한증명(hproof)으로 설정하여 구매자단말(14)과 클라우드 서비스 제공자(16)에서 전송하는 단계(S③); 구매자가 구매자 단말(14)을 통해 거래지원 스마트계약(TSC)(90)에 판매대금을 예치하는 단계(S④); 판매자 단말(12)이 거래지원 스마트계약(TSC)(90)에 랜덤값(R)을 제출하여 판매대금을 수령하고, 랜덤값(R)이 구매자 단말(14)로 전송되어 공개되는 단계(S⑤); 구매자 단말(14)이 클라우드 서비스 제공자(160)로 랜덤값(R)을 제출하고 암호화된 데이터를 획득하는 단계(S⑥); 및 구매자 단말(14)이 구매자의 속성비밀키(GID)(20)로 암호화된 데이터를 복호화하는 단계(S⑦);를 포함하는 것을 특징으로 하는 다중기관 속성기반의 속성비밀키를 이용한 데이터 거래 방법이 제공된다. The purpose of the present invention is another embodiment, in a data transaction method using an attribute secret key generated by the above-described encryption method, the cloud service provider 16 storing the seller's encrypted data is connected to the blockchain network 10. ) Step (S①) of distributing a transaction support smart contract (TSC) (90) on the platform; A step (S②) in which the buyer requests sharing of encrypted data with the seller terminal 12 through the buyer terminal 14; After the seller terminal 12 calculates the hash value (hproof) of the random value (R) selected by the seller, the hash value (hproof) is set as the access rights proof (hproof) to communicate with the buyer terminal 14 and the cloud service provider. Transmitting step (S③) in (16); A step (S④) in which the buyer deposits the sales amount into the transaction support smart contract (TSC) (90) through the buyer terminal (14); The seller terminal 12 submits a random value (R) to the transaction support smart contract (TSC) 90 to receive the sales payment, and the random value (R) is transmitted to the buyer terminal 14 and made public (S⑤) ); A step (S⑥) in which the purchaser terminal 14 submits a random value (R) to the cloud service provider 160 and obtains encrypted data; And a step (S⑦) in which the buyer terminal 14 decrypts the data encrypted with the buyer's attribute secret key (GID) 20. A data transaction method using an attribute secret key based on multi-institution attributes. This is provided.

또한, 거래지원 스마트계약(TSC)(90)은 해시 타임락 계약이다. Additionally, the Transaction Support Smart Contract (TSC) 90 is a hash time-lock contract.

또한, 공개단계(S⑤)에서, 판매자 단말(12)은 거래지원 스마트계약(TSC)(90)에 랜덤값(R)의 해시값(hproof)을 제출하여 판매대금을 수령하고, 랜덤값(R)의 해시값(hproof)이 구매자 단말(14)로 전송되어 공개되며, 그리고 데이터 획득단계(S⑥)에서 구매자 단말(14)은 클라우드 서비스 제공자(160)로 랜덤값(R)의 해시값(hproof)을 제출하여 암호화된 데이터를 획득한다.In addition, in the disclosure stage (S⑤), the seller terminal 12 receives the sales payment by submitting the hash value (hproof) of the random value (R) to the transaction support smart contract (TSC) 90, and the random value (R ) of the hash value (hproof) is transmitted to the buyer terminal 14 and made public, and in the data acquisition step (S⑥), the buyer terminal 14 sends the hash value (hproof) of the random value (R) to the cloud service provider 160. ) to obtain encrypted data.

본 발명의 일실시예에 따르면, 탈중앙 데이터 공유 시스템에서 데이터소유자는 특정한 속성으로 암호화된 데이터를 공유하고 사용자들은 시스템에 존재하는 여러 기관으로부터 자신이 보유한 속성에 대해 증명하고 해당하는 속성 비밀키를 발급받아 데이터 복호화에 사용할 수 있다. 즉, 암호화된 데이터는 데이터 소유자가 암호화 과정에서 지정한 속성을 만족하는 누구나 접근할 수 있다. According to an embodiment of the present invention, in a decentralized data sharing system, the data owner shares data encrypted with specific attributes, and users prove the attributes they possess from various organizations existing in the system and provide the corresponding attribute secret key. It can be issued and used to decrypt data. In other words, encrypted data can be accessed by anyone who satisfies the properties specified by the data owner during the encryption process.

또한, 여러 고유의 속성비밀키들의 결합단계에서 결합에 사용된 예치금의 출금조건이 결합을 시도하는 사용자(예 : 공모공격자)에게 노출되도록 함으로써 공모공격을 하려는 다른 사용자에게 자신의 속성비밀키를 제공하는 것을 주저하게 하거나 망설이게 할 수 있다. 만약 자신의 속성비밀키를 제공하는 경우 예치금을 상실할 수 있기 때문이다. 이로써 예치금의 상실 위험성을 사용자에게 부담토록 하여 탈중앙 시스템에서 공모공격의 저항성을 보장하는 효과가 있다. In addition, in the stage of combining several unique attribute secret keys, the withdrawal conditions of the deposit used for combination are exposed to the user attempting the combination (e.g. collusion attacker), thereby providing the attribute secret key to other users who want to carry out a collusion attack. It can make you hesitate or hesitate to do something. This is because if you provide your attribute secret key, you may lose your deposit. This has the effect of ensuring resistance to collusion attacks in a decentralized system by forcing users to bear the risk of losing their deposits.

또한, 예치금을 보관한 스마트계약(SC)은 사용자 예치금의 상태에 따라 전이되며 계약의 상태 전이를 통해 시스템에서 사용자의 시스템 이용에 제약을 가할 수 있다.In addition, the smart contract (SC) that holds the deposit is transitioned according to the state of the user's deposit, and the system can impose restrictions on the user's use of the system through the state transition of the contract.

특히, 블록체인 스마트 계약(SC)은 블록체인 네트워크 상에 실행되는 프로그램이기 때문에 블록체인 네트워크의 신뢰성과 보안성에 따르게 되어 제3자의 개입이 확률적으로 거의 불가능하다는 특징이 있다. In particular, because a blockchain smart contract (SC) is a program that runs on a blockchain network, it is subject to the reliability and security of the blockchain network, making intervention by a third party stochastically almost impossible.

또한, 본 발명은 암호문 정책 속성기반 암호(Ciphertext-Policy Attribute-Based Encryption, CP-ABE)의 환경뿐만 아니라 다양한 악의적인 사용자의 행동에 대해 통제가 필요한 시스템에 활용될 수 있는 장점이 있다. Additionally, the present invention has the advantage of being able to be used not only in a Ciphertext-Policy Attribute-Based Encryption (CP-ABE) environment but also in systems that require control over the actions of various malicious users.

본 발명에서 사용하는 속성기반 암호는 암호화에 비밀키 대신 특정한 속성을 사용하는 것으로 이때 사용자는 이러한 속성의 집합으로 표현될 수 있다. 이때 사용자의 속성은 사용자가 속한 조직(기관)에 의해 검증된 후 해당 기관의 비밀키를 사용한 암호학 연산의 결과물로 발급될 수 있으며 암호문의 복호화 과정에서 사용자는 복호화에 필요한 속성값들을 암호학적으로 결합하여 복호화키로 사용할 수 있다(단일기관 속성기반암호 시스템). 이를 확장하여 시스템 내에 복수의 기관이 존재하고 사용자가 여러 속성기관에 소속될 수 있는 경우(다중기관 속성기반암호 시스템) 사용자는 각 속성기관에서 서로 다른 식별정보로 관리되며 속성 검증 및 발급 관리(이때 각 기관이 발급하는 속성은 고정적) 또한 각 기관에서 개별적으로 수행하나 암호화 및 복호화 과정에서는 시스템상의 모든 속성값을 사용하는 것이 가능하다. The attribute-based encryption used in the present invention uses specific attributes instead of secret keys for encryption, and in this case, the user can be expressed as a set of these attributes. At this time, the user's properties can be verified by the organization (institution) to which the user belongs and then issued as the result of a cryptographic operation using the organization's secret key. In the process of decrypting the ciphertext, the user cryptographically combines the property values required for decryption. It can be used as a decryption key (single agency attribute-based encryption system). Extending this, if there are multiple organizations in the system and a user can belong to multiple property organizations (multi-agency attribute-based password system), the user is managed with different identification information in each property organization and manages property verification and issuance (in this case, The attributes issued by each institution are fixed) and are performed individually by each institution, but it is possible to use all attribute values in the system during the encryption and decryption process.

다만, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.However, the effects that can be obtained from the present invention are not limited to the effects mentioned above, and other effects not mentioned above will be clearly understood by those skilled in the art from the description below. You will be able to.

본 명세서에서 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 후술하는 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어서 해석되어서는 아니된다.
도 1은 본 발명의 일실시예에 따른 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호 시스템의 시스템 블록도,
도 2는 본 발명의 일 실시예 중 예치금의 설정을 나타내는 설명도,
도 3은 본 발명의 일 실시예 중 암호문 획득 과정을 나타내는 설명도,
도 4는 본 발명에 따른 스마트계약(SC)의 상태 전이 모델을 나타내는 상태도이다.
The following drawings attached to this specification illustrate preferred embodiments of the present invention, and serve to further understand the technical idea of the present invention together with the detailed description of the invention described later. Therefore, the present invention includes the matters described in such drawings. It should not be interpreted as limited to only .
Figure 1 is a system block diagram of a multi-agency attribute-based encryption system that is safe from collusion attacks based on blockchain technology and a decentralized data sharing system according to an embodiment of the present invention;
Figure 2 is an explanatory diagram showing the setting of a deposit in one embodiment of the present invention;
Figure 3 is an explanatory diagram showing the process of obtaining ciphertext in one embodiment of the present invention;
Figure 4 is a state diagram showing the state transition model of a smart contract (SC) according to the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Below, with reference to the attached drawings, embodiments of the present invention will be described in detail so that those skilled in the art can easily implement the present invention. However, since the description of the present invention is only an example for structural or functional explanation, the scope of the present invention should not be construed as limited by the examples described in the text. In other words, since the embodiment can be modified in various ways and can have various forms, the scope of rights of the present invention should be understood to include equivalents that can realize the technical idea. In addition, the purpose or effect presented in the present invention does not mean that a specific embodiment must include all or only such effects, so the scope of the present invention should not be understood as limited thereby.

본 발명에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.The meaning of terms described in the present invention should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.Terms such as “first” and “second” are used to distinguish one component from another component, and the scope of rights should not be limited by these terms. For example, a first component may be named a second component, and similarly, the second component may also be named a first component. When a component is referred to as being “connected” to another component, it should be understood that it may be directly connected to the other component, but that other components may also exist in between. On the other hand, when a component is referred to as being “directly connected” to another component, it should be understood that there are no other components in between. Meanwhile, other expressions that describe the relationship between components, such as "between" and "immediately between" or "neighboring" and "directly neighboring" should be interpreted similarly.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions should be understood to include plural expressions, unless the context clearly indicates otherwise, and terms such as “comprise” or “have” refer to the specified features, numbers, steps, operations, components, parts, or them. It is intended to specify the existence of a combination, and should be understood as not excluding in advance the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein, unless otherwise defined, have the same meaning as commonly understood by a person of ordinary skill in the field to which the present invention pertains. Terms defined in commonly used dictionaries should be interpreted as consistent with the meaning they have in the context of the related technology, and cannot be interpreted as having an ideal or excessively formal meaning unless clearly defined in the present invention.

이하, 첨부된 도면을 참조하여 바람직한 실시예의 구성을 상세히 설명하기로 한다. 도 1은 본 발명의 일실시예에 따른 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호 시스템의 시스템 블록도이다. Hereinafter, the configuration of the preferred embodiment will be described in detail with reference to the attached drawings. Figure 1 is a system block diagram of a decentralized data sharing system and a multi-agency attribute-based encryption system that is safe from collusion attacks based on blockchain technology according to an embodiment of the present invention.

시스템의 구성System configuration

도 1에 도시된 바와 같이, 중앙기관(Central Authority, 30)은 시스템 관리를 위한 서버장치일 수 있고, 속성기관(50)과 협업하여 사용자(12, 14)에게 키를 발급하고, 주기적으로 키의 갱신과 폐기를 수행한다. 또한, 중앙기관(30)은 각 사용자(12, 14)마다 예치금 스마트 계약(Smart Contract, SC)을 배포한다. As shown in FIG. 1, the central authority (Central Authority) 30 may be a server device for system management, collaborates with the attribute authority (50) to issue keys to users (12, 14), and periodically exchanges the keys. Perform renewal and disposal of . Additionally, the central agency 30 distributes a deposit smart contract (SC) to each user 12 and 14.

속성기관(50)은 소속된 사용자(12, 14)의 속성을 검증하고, 해당하는 고유의 속성비밀키(70)를 발급한다. 예를 들어, 속성기관(50)은 정부기관(50a), 운전면허기관(50b) 등이 될 수 있다. The attribute agency 50 verifies the attributes of the belonging users 12 and 14 and issues a corresponding unique attribute secret key 70. For example, the attribute agency 50 may be a government agency 50a, a driver's license agency 50b, etc.

사용자는 데이터의 판매자와 구매자가 될 수 있고, 구체적으로는 판매자가 보유하는 판매자 단말(12) 및 구매자가 보유하는 구매자 단말(14)이다. 판매자 단말(12) 및 구매자 단말(14)은 휴대폰, 노트북, 태블릿, PC, 클라이언트 컴퓨터 등이 될 수 있다. 사용자 단말(12, 14)에는 본 발명에 따라 동작될 수 있는 응용프로그램(앱)이 설치되고 실행된다. 사용자는 판매자 단말(12)이나 구매자 단말(14)을 통해 본 발명의 시스템에 참여할 수 있다. 그리고, 사용자는 스마트계약(SC)(40)에 예치금을 예치하여야 한다. Users can be sellers and buyers of data, and specifically, the seller terminal 12 owned by the seller and the buyer terminal 14 owned by the buyer. The seller terminal 12 and the buyer terminal 14 may be mobile phones, laptops, tablets, PCs, client computers, etc. An application program (app) that can be operated according to the present invention is installed and executed on the user terminals 12 and 14. Users can participate in the system of the present invention through the seller terminal 12 or the buyer terminal 14. Additionally, the user must deposit a deposit into the smart contract (SC) 40.

블록체인 네트워크(10)에는 스마트계약(40)이라는 동작 프로그램이 실행된다. 스마트계약(40)은 단일 서버장치에서 동작하는 것이 아니라 블록체인 네트워크(10)에 존재하는 모든 노드(Node, 참여자)에 의해 실행되고 검증되며, 합의에 의해 그 결과가 반영되므로 신뢰할 수 있는 결과를 반환할 수 있다. 본 발명의 일실시예에서 사용자의 예치금을 관리하는 스마트계약(40) 및 시스템에서 사용자 간의 거래 관리를 처리하는 거래 지원 스마트계약(Trade Support Smart Contract, TSC, 90)이 존재한다. 특히, 거래 지원 스마트계약(TSC, 90)는 해시타임락 계약(Hashed Time Lock Contracts)으로써 유효기간을 갖는다. An operation program called a smart contract 40 is executed in the blockchain network 10. The smart contract (40) does not operate on a single server device, but is executed and verified by all nodes (participants) existing in the blockchain network (10), and the results are reflected by consensus, providing reliable results. It can be returned. In one embodiment of the present invention, there is a smart contract 40 that manages the user's deposit and a trade support smart contract (TSC, 90) that handles transaction management between users in the system. In particular, transaction support smart contracts (TSC, 90) have an expiration date as Hashed Time Lock Contracts.

클라우드 서비스 제공자(Cloud Service Provider, 160)는 데이터의 거래(공유)를 위해 사용되며, 데이터의 거래는 사용자 간의 직접적인 데이터 공유 방식이 아니라 클라우드 서버에 저장된 데이터에 대한 접근권한의 거래로 이루어진다. 거래를 통해 데이터 접근권한을 획득한 구매자(14)는 클라우드 서버에 접근권한을 증명한 후, 해당 암호문을 획득하고 자신의 속성비밀키를 사용하여 암호문을 복호화한다. 클라우드 서버는 사용자들의 거래를 지원하기 위한 거래 지원 스마트계약(TSC)를 블록체인 네트워크(10)에 배포한다. Cloud Service Provider (160) is used for data trading (sharing), and data trading is not done through direct data sharing between users, but through trading access rights to data stored in the cloud server. The buyer (14), who obtained data access rights through a transaction, proves access rights to the cloud server, obtains the corresponding ciphertext, and decrypts the ciphertext using his attribute secret key. The cloud server distributes a transaction support smart contract (TSC) to the blockchain network (10) to support users' transactions.

예치금의 설정과 속성비밀키의 생성Setting the deposit and generating the attribute secret key

도 2는 본 발명의 일 실시예 중 예치금의 설정을 나타내는 설명도이다. 도 2에 도시된 바와 같이, 먼저 중앙기관(30)이 블록체인 네트워크(10) 상에 스마트 계약(40)을 배포한다(S1). Figure 2 is an explanatory diagram showing the setting of a deposit in one embodiment of the present invention. As shown in Figure 2, first, the central agency 30 distributes the smart contract 40 on the blockchain network 10 (S1).

그 다음, 사용자는 사용자단말(12)을 통해 스마트 계약(SC)에 대응하여 예치금(예 : 블록체인 토큰)을 예치한다(S2). 그러면, 스마트 계약(SC)이 활성화를 의미하는 제 1 상태로 전이된다.Next, the user deposits a deposit (e.g. blockchain token) in response to the smart contract (SC) through the user terminal 12 (S2). Then, the smart contract (SC) transitions to the first state, meaning activation.

그 다음, 중앙기관(30)이 복수의 속성기관(50)에 대해 각각 키(Key)를 발급한다(S3).Next, the central organization 30 issues a key to each of the plurality of attribute organizations 50 (S3).

그 다음, 복수의 속성기관(50)은 발급받은 키에 기초하여 고유의 속성비밀키(70)를 각각 발급한다(S4).Next, the plurality of attribute agencies 50 each issue a unique attribute secret key 70 based on the issued key (S4).

그 다음, 사용자에 의해 사용자 비밀키(user Group Identifier, uGID, 25)가 선택되고, 사용자 비밀키(uGID)(25)의 해시 연산 결과가 예치금의 출금조건(hvalue)(60)이 된다(S5). 구체적으로는 사용자는 복수의 속성기관(50)에 대해 각각 비밀키를 랜덤으로 선택하고, 이들을 모두 결합하여 사용자 비밀키(uGID)(25)를 생성한다. 사용자 비밀키(uGID)(25)는 사용자가 보유한 속성들에 대한 비밀키의 집합으로 구성되며 그리고, 다음과 같이 사용자 비밀키(uGID)(25)의 해시 연산 결과가 예치금의 출금조건(hvalue)(60)이 된다. 즉, 예치금을 출금하기 위해서는 사용자 비밀키(uGID)(25)를 스마트계약(40)에 제출하여야 한다.Next, the user secret key (user Group Identifier, uGID, 25) is selected by the user, and the hash operation result of the user secret key (uGID) (25) becomes the deposit withdrawal condition (hvalue) (60) (S5 ). Specifically, the user randomly selects a secret key for each of the plurality of attribute organizations 50 and combines them to generate a user secret key (uGID) 25. The user secret key (uGID) 25 is composed of a set of secret keys for the attributes held by the user, and the hash operation result of the user secret key (uGID) 25 is the withdrawal condition (hvalue) of the deposit as follows. It becomes (60). In other words, in order to withdraw the deposit, the user secret key (uGID) (25) must be submitted to the smart contract (40).

[수학식 1][Equation 1]

hvalue = Hash(uGID)hvalue = Hash(uGID)

스마트계약(40)의 블록체인 상태 데이터베이스에는 사용자 비밀키(uGID, 25)의 해시 연산결과인 hvalue만 기록되므로 공모공격을 제외하면 시스템의 그 누구도 사용자 비밀키(uGID, 25)를 알 수 없게 된다.Since only the hvalue, which is the hash operation result of the user secret key (uGID, 25), is recorded in the blockchain state database of the smart contract (40), except for collusion attacks, no one in the system can know the user secret key (uGID, 25). .

그 다음, 사용자단말(12)은 고유의 속성비밀키(70)들을 모두 결합하여 기관비밀키(cGID)(22)를 생성하고, 생성된 기관비밀키(cGID)(22)에 사용자 비밀키(uGID)(25)를 다시 결합하여 속성비밀키(GID)(20)를 생성한다(S6). 이러한 속성비밀키(GID)(20)는 사용자의 데이터를 암호화하거나 복호화하는데 사용된다.Next, the user terminal 12 combines all of the unique attribute secret keys 70 to generate an organization secret key (cGID) 22, and the user secret key (cGID) 22 is added to the generated organization secret key (cGID) 22. The attribute secret key (GID) (20) is generated by combining the uGID (25) again (S6). This attribute secret key (GID) 20 is used to encrypt or decrypt the user's data.

도 4는 본 발명에 따른 스마트계약(SC)의 상태 전이 모델을 나타내는 상태도이다. 도 4에 도시된 바와 같이, 스마트계약(SC)은, 예치금이 설정(예 : 입금)된 후, 여러 가지 상태들 중 하나로 전이될 수 있다. 예를 들어, 키에 의해 주기적으로 갱신되어 활성화되는 제 1 상태, 사용자의 출금에 의해 비활성화되는 제 2 상태(Close), 공모공격자의 출금에 의해 비활성화되는 제 3 상태(Close), 중앙기관(30)에 의해 이용중단되는 제 4 상태(Revoke, 폐기) 및 스마트계약(SC)의 유효기간이 만료되는 제 5 상태(Revoke, 폐기) 중 하나의 상태로 전이될 수 있다.Figure 4 is a state diagram showing the state transition model of a smart contract (SC) according to the present invention. As shown in Figure 4, a smart contract (SC) can transition to one of several states after the deposit is set (e.g., deposited). For example, the first state is periodically updated and activated by a key, the second state is deactivated by the user's withdrawal (Close), the third state is deactivated by the collusion attacker's withdrawal (Close), and the central authority (30) It can be transferred to one of the fourth state (Revoke, discard), where use is discontinued, and the fifth state (Revoke, discard), when the validity period of the smart contract (SC) expires.

암호문의 획득Obtaining the ciphertext

도 3은 본 발명의 일 실시예 중 암호문 획득 과정을 나타내는 설명도이다. 도 3에 도시된 바와 같이, 판매자 단말(12)에서 판매자의 속성비밀키를 이용하여 거래하고자 하는 데이터를 암호화한다. 그리고, 암호화된 데이터를 클라우드 서비스 제공자(16)의 클라우드 서버에 저장한다. 그러면, 클라우드 서비스 제공자(16)가 블록체인 네트워크(10) 상에 거래지원 스마트계약(TSC)(90)을 배포한다(S①).Figure 3 is an explanatory diagram showing the process of obtaining ciphertext in one embodiment of the present invention. As shown in Figure 3, the seller terminal 12 encrypts the data to be traded using the seller's attribute secret key. Then, the encrypted data is stored on the cloud server of the cloud service provider 16. Then, the cloud service provider 16 distributes the transaction support smart contract (TSC) 90 on the blockchain network 10 (S①).

그 다음, 거래지원 스마트계약(TSC)(90)을 본 구매자가 구매자 단말(14)을 통해 판매자 단말(12)로 암호화된 데이터의 공유(구매)를 요청한다(S②).Next, the buyer who has seen the transaction support smart contract (TSC) 90 requests sharing (purchase) of the encrypted data with the seller terminal 12 through the buyer terminal 14 (S②).

그 다음, 판매자 단말(12)은 [수학식 2]와 같이 판매자에 의해 선택된 랜덤값(R)의 해시값(hproof)을 산출한 뒤, 해시값(hproof)을 접근권한증명(hproof)으로 설정하여 구매자단말(14)과 클라우드 서비스 제공자(16)에서 각각 전송한다(S③).Next, the seller terminal 12 calculates the hash value (hproof) of the random value (R) selected by the seller as shown in [Equation 2], and then sets the hash value (hproof) as the access rights proof (hproof). This is transmitted from the purchaser terminal 14 and the cloud service provider 16, respectively (S③).

[수학식 2][Equation 2]

hproof = Hash(R)hproof = Hash(R)

그 다음, 구매자 단말(14)을 통해 거래지원 스마트계약(TSC)(90)에 판매대금을 예치한다(S④).Next, the sales price is deposited into the transaction support smart contract (TSC) (90) through the buyer terminal (14) (S④).

그 다음, 판매자 단말(12)이 거래지원 스마트계약(TSC)(90)에 랜덤값(R)의 해시값(hproof)을 제출하여 판매대금을 수령하고, 이와 동시에 자동으로 랜덤값(R)과 랜덤값(R)의 해시값(hproof)이 구매자 단말(14)로 전송되어 공개된다(S⑤). 거래지원 스마트계약(TSC)(90)은 해시타임락 계약(Hashed Time Lock Contracts)이므로 판매대금의 수령과 랜덤값(R)의 공개가 동시에 이루어지도록 한다. 본 발명의 데이터 거래와 실제 데이터 공유는 신뢰하는 중개인을 통하지 않기 때문에 서로 다른 시점에 발생한다. 즉, 권한을 획득하고 이후에 실제 암호문을 획득하게 된다. 해시타임락 계약은 여기서 발생하는 불공정성을 해결하기 위한 것으로, 클라우드 서버를 포함한 3명 사이에 순차적으로 발생하게 된다. 판매자(데이터 소유자)는 구매자에게 접근권한을 판매하는 시점에서 이익을 얻지만, 구매자는 판매자에게 대가를 지불하고 권한을 얻은 뒤 서버에 저장된 데이터를 획득한 뒤에 거래에서의 이익을 얻을 수 있다. 즉, 거래의 두 참여자가 이익을 획득하는 단계가 동기화되어 있지 않다. 본 발명의 해시타임락 기술은 거래에서 이익(구매자-데이터, 판매자-판매대금)을 얻는 시점을 동기화시키기 위해 사용된다. Next, the seller terminal 12 receives the sales payment by submitting the hash value (hproof) of the random value (R) to the transaction support smart contract (TSC) 90, and at the same time automatically The hash value (hproof) of the random value (R) is transmitted to the buyer terminal 14 and made public (S⑤). Since the Transaction Support Smart Contract (TSC) 90 is a Hashed Time Lock Contract, it ensures that the receipt of the sales payment and the disclosure of the random value (R) occur simultaneously. The data trading and actual data sharing of the present invention occur at different times because they do not go through a trusted intermediary. In other words, permission is obtained and the actual ciphertext is obtained later. The hash time lock contract is intended to resolve the unfairness that arises here, and occurs sequentially between three people, including the cloud server. The seller (data owner) makes a profit when selling access rights to the buyer, but the buyer can only profit from the transaction after paying a price to the seller, obtaining permission, and obtaining the data stored on the server. In other words, the steps in which the two participants in a transaction obtain profits are not synchronized. The hash time lock technology of the present invention is used to synchronize the timing of obtaining profits (buyer-data, seller-sale payment) from the transaction.

그 다음, 구매자 단말(14)은 클라우드 서비스 제공자(160)로 랜덤값(R)의 해시값(hproof)을 제출하고 암호화된 데이터를 획득한다(S⑥). 즉, 암호화된 데이터를 획득하기 위한 권한증명과 판매대금을 획득하기 위한 권한증명 조건이 동일하다.Next, the buyer terminal 14 submits the hash value (hproof) of the random value (R) to the cloud service provider 160 and obtains the encrypted data (S⑥). In other words, the conditions for proving authority for obtaining encrypted data and for obtaining sales proceeds are the same.

그 다음, 구매자 단말(14)이 구매자의 속성비밀키(GID)(20)로 암호화된 데이터를 복호화한다(S⑦). 이러한 과정을 통해 구매자는 원하는 데이터를 수령할 수 있다. Next, the buyer terminal 14 decrypts the encrypted data with the buyer's attribute secret key (GID) 20 (S⑦). Through this process, buyers can receive the desired data.

상술한 바와 같이 개시된 본 발명의 바람직한 실시예들에 대한 상세한 설명은 당업자가 본 발명을 구현하고 실시할 수 있도록 제공되었다. 상기에서는 본 발명의 바람직한 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 본 발명의 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 예를 들어, 당업자는 상술한 실시예들에 기재된 각 구성을 서로 조합하는 방식으로 이용할 수 있다. 따라서, 본 발명은 여기에 나타난 실시형태들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여하려는 것이다.A detailed description of preferred embodiments of the invention disclosed above is provided to enable any person skilled in the art to make or practice the invention. Although the present invention has been described above with reference to preferred embodiments, those skilled in the art will understand that various modifications and changes can be made to the present invention without departing from the scope of the present invention. For example, a person skilled in the art may use each configuration described in the above-described embodiments by combining them with each other. Accordingly, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다. 본 발명은 여기에 나타난 실시형태들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여하려는 것이다. 또한, 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함할 수 있다.The present invention may be embodied in other specific forms without departing from the spirit and essential features of the present invention. Accordingly, the above detailed description should not be construed as restrictive in all respects and should be considered illustrative. The scope of the present invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the present invention are included in the scope of the present invention. The present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein. In addition, claims that do not have an explicit reference relationship in the patent claims can be combined to form an embodiment or included as a new claim through amendment after filing.

10 : 블록체인 네트워크,
12 : 사용자 단말,
14 : 구매자 단말,
16 : 클라우드 서비스 제공자,
20 : 속성비밀키,
22 : 기관비밀키(cGID),
25 : 사용자 비밀키,
30 : 중앙기관,
40 : 스마트 계약(SC),
50 : 속성기관,
50a : 정부기관,
50b : 운전면허기관,
60 : 출금조건(hvalue).
70 : 고유의 속성비밀키,
90 : 거래지원 스마트계약(TSC).
10: Blockchain network,
12: user terminal,
14: Buyer terminal,
16: Cloud service provider,
20: attribute secret key,
22: Institutional secret key (cGID),
25: user secret key,
30: Central agency,
40: Smart Contract (SC),
50: attribute agency,
50a: government agency,
50b: Driver's licensing agency,
60: Withdrawal conditions (hvalue).
70: Unique attribute secret key,
90: Transaction Support Smart Contract (TSC).

Claims (11)

탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법에 있어서,
중앙기관(30)이 블록체인 네트워크(10) 상에 스마트 계약(SC)을 배포하는 단계(S1);
사용자가 사용자단말(12)을 통해 상기 스마트 계약(SC)에 대응하여 예치금을 예치하는 단계(S2);
상기 중앙기관(30)이 복수의 속성기관(50)에 대해 키를 발급하는 단계(S3);
상기 복수의 속성기관(50)이 발급된 키에 기초하여 고유의 속성비밀키(70)를 각각 발급하는 단계(S4);
상기 사용자에 의해 사용자 비밀키(uGID)(25)가 선택되고, 상기 사용자 비밀키(uGID)(25)의 해시 연산 결과가 상기 예치금의 출금조건(hvalue)(60)이 되는 단계(S5); 및
상기 사용자단말(12)이 상기 고유의 속성비밀키(70)들을 결합하여 기관비밀키(cGID)(22)를 생성하고, 상기 기관비밀키(cGID)(22)에 상기 사용자 비밀키(uGID)(25)를 결합하여 속성비밀키(GID)(20)를 생성하는 단계(S6);를 포함하는 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법.
In the multi-agency attribute-based encryption method that is safe from collusion attacks based on decentralized data sharing system and blockchain technology,
A step (S1) in which the central agency 30 distributes a smart contract (SC) on the blockchain network 10;
A step (S2) of the user depositing a deposit in response to the smart contract (SC) through the user terminal 12;
A step (S3) of the central organization 30 issuing keys to a plurality of attribute organizations 50;
A step (S4) in which each of the plurality of attribute agencies (50) issues a unique attribute secret key (70) based on the issued key;
A step (S5) in which a user secret key (uGID) 25 is selected by the user, and the hash operation result of the user secret key (uGID) 25 becomes the withdrawal condition (hvalue) 60 of the deposit; and
The user terminal 12 combines the unique attribute secret keys 70 to generate an organization secret key (cGID) 22, and the user secret key (uGID) is added to the organization secret key (cGID) 22. A decentralized data sharing system and multi-institution attribute-based encryption that is safe from collusion attacks based on blockchain technology, comprising a step (S6) of combining (25) to generate an attribute secret key (GID) (20); method.
제 1 항에 있어서,
상기 S5단계에서 상기 사용자는 상기 복수의 속성기관(50)에 대해 각각 상기 사용자 비밀키(uGID)(25)를 선택하는 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법.
According to claim 1,
In step S5, the user selects the user secret key (uGID) 25 for each of the plurality of attribute institutions 50 and is safe from collusion attacks based on blockchain technology and a decentralized data sharing system. Multi-agency attribute-based encryption method.
제 1 항에 있어서,
상기 속성비밀키(GID)(20)는 상기 사용자의 데이터를 암호화하거나 복호화하는데 사용되는 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법.
According to claim 1,
The attribute secret key (GID) 20 is a multi-agency attribute-based encryption method that is safe from collusion attacks based on a decentralized data sharing system and blockchain technology, characterized in that it is used to encrypt or decrypt the user's data.
제 1 항에 있어서,
상기 스마트계약(SC)은,
상기 키에 의해 갱신되어 활성화되는 제 1 상태;
상기 사용자의 출금에 의해 비활성화되는 제 2 상태;
공모공격자의 출금에 의해 비활성화되는 제 3 상태;
상기 중앙기관(30)에 의해 이용중단되는 제 4 상태; 및
상기 스마트계약(SC)의 유효기간이 만료되는 제 5 상태; 중 하나의 상태로 전이될 수 있는 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법.
According to claim 1,
The smart contract (SC) is,
a first state updated and activated by the key;
a second state deactivated by the user's withdrawal;
a third state deactivated by a colluding attacker's withdrawal;
a fourth state in which use is discontinued by the central agency 30; and
A fifth state in which the validity period of the smart contract (SC) expires; A decentralized data sharing system that can transition to one of the following states and a multi-agency attribute-based encryption method that is safe from collusion attacks based on blockchain technology.
제 1 항에 있어서,
상기 예치금은 블록체인 토큰인 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법.
According to claim 1,
A decentralized data sharing system in which the deposit is a blockchain token and a multi-agency attribute-based encryption method that is safe from collusion attacks based on blockchain technology.
제 1 항에 있어서,
상기 S5단계에서 상기 사용자는 상기 사용자 비밀키(uGID)(25)를 랜덤으로 선택하는 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법.
According to claim 1,
In step S5, the user randomly selects the user secret key (uGID) 25. A multi-agency attribute-based encryption method that is safe from collusion attacks based on a decentralized data sharing system and blockchain technology.
제 1 항에 있어서,
상기 사용자는 자신이 소유한 데이터를 판매하는 판매자 또는 다른 사용자의 데이터를 구매하기 위한 구매자인 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법.
According to claim 1,
A multi-agency attribute-based encryption method that is safe from collusion attacks based on a decentralized data sharing system and blockchain technology, characterized in that the user is a seller who sells the data he or she owns or a buyer who purchases the data of other users.
제 1 항에 있어서,
상기 예치금의 예치 단계(S2)는 상기 스마트 계약(SC)을 활성화하는 제 1 상태로 전이하는 단계를 더 포함하는 것을 특징으로 하는 탈중앙 데이터 공유 시스템과 블록체인 기술 기반의 공모공격에 안전한 다중기관 속성기반 암호화 방법.
According to claim 1,
The depositing step (S2) of the deposit further includes a step of transitioning to a first state activating the smart contract (SC). A multi-agency safe from collusion attacks based on a decentralized data sharing system and blockchain technology. Attribute-based encryption method.
제 1 항 내지 제 8 항 중 어느 한 항에 의한 암호화 방법으로 생성된 속성비밀키를 이용한 데이터 거래 방법에 있어서,
판매자의 암호화된 데이터를 저장하고 있는 클라우드 서비스 제공자(16)가 블록체인 네트워크(10) 상에 거래지원 스마트계약(TSC)(90)을 배포하는 단계(S①);
구매자가 구매자 단말(14)을 통해 판매자 단말(12)로 상기 암호화된 데이터의 공유를 요청하는 단계(S②);
상기 판매자 단말(12)이 상기 판매자에 의해 선택된 랜덤값(R)의 해시값(hproof)을 산출한 뒤, 상기 해시값(hproof)을 접근권한증명(hproof)으로 설정하여 상기 구매자단말(14)과 상기 클라우드 서비스 제공자(16)에서 전송하는 단계(S③);
상기 구매자가 상기 구매자 단말(14)을 통해 상기 거래지원 스마트계약(TSC)(90)에 판매대금을 예치하는 단계(S④);
상기 판매자 단말(12)이 상기 거래지원 스마트계약(TSC)(90)에 상기 랜덤값(R)을 제출하여 상기 판매대금을 수령하고, 상기 랜덤값(R)이 상기 구매자 단말(14)로 전송되어 공개되는 단계(S⑤);
상기 구매자 단말(14)이 상기 클라우드 서비스 제공자(16)로 상기 랜덤값(R)을 제출하여 상기 암호화된 데이터를 획득하는 단계(S⑥); 및
상기 구매자 단말(14)이 상기 구매자의 속성비밀키(GID)(20)로 상기 암호화된 데이터를 복호화하는 단계(S⑦);를 포함하는 것을 특징으로 하는 다중기관 속성기반의 속성비밀키를 이용한 데이터 거래 방법.
In a data transaction method using an attribute secret key generated by the encryption method according to any one of claims 1 to 8,
A step (S①) in which the cloud service provider (16), which stores the seller's encrypted data, distributes a transaction support smart contract (TSC) (90) on the blockchain network (10);
A step (S②) in which the buyer requests sharing of the encrypted data with the seller terminal 12 through the buyer terminal 14;
After the seller terminal 12 calculates the hash value (hproof) of the random value (R) selected by the seller, the hash value (hproof) is set as the access right proof (hproof) to the buyer terminal 14. and a transmission step (S③) from the cloud service provider 16;
A step (S④) of the buyer depositing the sales amount into the transaction support smart contract (TSC) 90 through the buyer terminal 14;
The seller terminal 12 receives the sales payment by submitting the random value (R) to the transaction support smart contract (TSC) 90, and the random value (R) is transmitted to the buyer terminal 14. Step where it is made public (S⑤);
A step (S⑥) of the buyer terminal 14 submitting the random value (R) to the cloud service provider 16 to obtain the encrypted data; and
A step (S⑦) of the buyer terminal 14 decrypting the encrypted data using the buyer's attribute secret key (GID) 20; data using a multi-agency attribute-based attribute secret key, comprising: How to trade.
제 9 항에 있어서,
상기 거래지원 스마트계약(TSC)(90)은 해시 타임락 계약인 것을 특징으로 하는 다중기관 속성기반의 속성비밀키를 이용한 데이터 거래 방법.
According to clause 9,
The transaction support smart contract (TSC) 90 is a data transaction method using a multi-agency attribute-based attribute secret key, characterized in that it is a hash time lock contract.
제 9 항에 있어서,
상기 공개단계(S⑤)에서,
상기 판매자 단말(12)은 상기 거래지원 스마트계약(TSC)(90)에 상기 랜덤값(R)의 해시값(hproof)을 제출하여 상기 판매대금을 수령하고,
상기 랜덤값(R)의 해시값(hproof)이 상기 구매자 단말(14)로 전송되어 공개되며, 그리고
상기 데이터 획득단계(S⑥)에서 상기 구매자 단말(14)은 상기 클라우드 서비스 제공자(16)로 상기 랜덤값(R)의 해시값(hproof)을 제출하여 상기 암호화된 데이터를 획득하는 것을 특징으로 하는 다중기관 속성기반의 속성비밀키를 이용한 데이터 거래 방법.
According to clause 9,
In the disclosure step (S⑤),
The seller terminal 12 receives the sales amount by submitting the hash value (hproof) of the random value (R) to the transaction support smart contract (TSC) 90,
The hash value (hproof) of the random value (R) is transmitted to the purchaser terminal 14 and made public, and
In the data acquisition step (S⑥), the buyer terminal 14 submits a hash value (hproof) of the random value (R) to the cloud service provider 16 to obtain the encrypted data. Data transaction method using attribute secret key based on institutional attributes.
KR1020220025287A 2022-02-25 2022-02-25 A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain KR102664379B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220025287A KR102664379B1 (en) 2022-02-25 2022-02-25 A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220025287A KR102664379B1 (en) 2022-02-25 2022-02-25 A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain

Publications (2)

Publication Number Publication Date
KR20230127696A KR20230127696A (en) 2023-09-01
KR102664379B1 true KR102664379B1 (en) 2024-05-08

Family

ID=87975098

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220025287A KR102664379B1 (en) 2022-02-25 2022-02-25 A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain

Country Status (1)

Country Link
KR (1) KR102664379B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117640255B (en) * 2024-01-25 2024-04-09 齐鲁工业大学(山东省科学院) Anti-35820 trap searchable data sharing method and system for Internet of things

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020004915A1 (en) 2018-06-26 2020-01-02 경호연 Blockchain cryptocurrency transmission method using blockchain self-authentication process
KR102298266B1 (en) 2019-11-14 2021-09-06 순천향대학교 산학협력단 Data access control method and system using attribute-based password for secure and efficient data sharing in cloud environment

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Meamari, Ehsan, et al. "Collusion attacks on decentralized attributed-based encryption: analyses and a solution." arXiv preprint arXiv:2002.07811 (2020)
Qin, Xuanmei, et al. "A Blockchain-based access control scheme with multiple attribute authorities for secure cloud data sharing." Journal of Systems Architecture 112 (2021)

Also Published As

Publication number Publication date
KR20230127696A (en) 2023-09-01

Similar Documents

Publication Publication Date Title
CN108418680B (en) Block chain key recovery method and medium based on secure multi-party computing technology
US10673632B2 (en) Method for managing a trusted identity
CN111213147B (en) Systems and methods for blockchain-based cross-entity authentication
JP6942136B2 (en) How to be implemented by the blockchain for the control and distribution of digital content
US11196573B2 (en) Secure de-centralized domain name system
US20190372965A1 (en) Template-based distributed certificate issuance in a multi-tenant environment
US20190158275A1 (en) Digital containers for smart contracts
US8843415B2 (en) Secure software service systems and methods
CN109741039A (en) Bookkeeping methods, terminal device, digs mine node and mine pond at mine pool server
CN109450843B (en) SSL certificate management method and system based on block chain
CN115699000A (en) Method, apparatus and computer readable medium for secure multilateral data exchange over a computer network
US20080209575A1 (en) License Management in a Privacy Preserving Information Distribution System
US20060212270A1 (en) Auditing of secure communication sessions over a communications network
CN110020541B (en) Reputation evaluation method and system based on block chain privacy protection
US20190238319A1 (en) Rights management of content
US11405198B2 (en) System and method for storing and managing keys for signing transactions using key of cluster managed in trusted execution environment
US9967091B2 (en) Method for enhancing security in distributed systems
CN112908442A (en) Medical data sharing method, device, equipment and computer readable medium
KR102664379B1 (en) A decentralized data sharing system and Collusion-Resistant Multi-Authority Attribute-Based Encryption Scheme based on a Blockchain
KR102195830B1 (en) System for security enforced crypto currency based on block chain
Noh et al. Pyros: A state channel-based access control system for a public blockchain network
CN114679473A (en) Financial account management system and method based on distributed digital identity
Elagin et al. Development and analysis of a blockchain system based on JavaScript
CN115170132B (en) Payment method suitable for high-speed post network member system
Alharbi et al. A Blockchain Review: A Comparative Study Between Public Key Infrastructure and Identity Based Encryption

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant