KR20230135490A - Detailed access control system in cloud and permissioned blockchain environment and the method thereof - Google Patents

Detailed access control system in cloud and permissioned blockchain environment and the method thereof Download PDF

Info

Publication number
KR20230135490A
KR20230135490A KR1020220080199A KR20220080199A KR20230135490A KR 20230135490 A KR20230135490 A KR 20230135490A KR 1020220080199 A KR1020220080199 A KR 1020220080199A KR 20220080199 A KR20220080199 A KR 20220080199A KR 20230135490 A KR20230135490 A KR 20230135490A
Authority
KR
South Korea
Prior art keywords
data
server
cloud
user
authentication
Prior art date
Application number
KR1020220080199A
Other languages
Korean (ko)
Inventor
이임영
라경진
Original Assignee
순천향대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 순천향대학교 산학협력단 filed Critical 순천향대학교 산학협력단
Publication of KR20230135490A publication Critical patent/KR20230135490A/en

Links

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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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/602Providing cryptographic facilities or services
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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/104Peer-to-peer [P2P] networks
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • 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/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명의 일 실시 예에 따른 포함하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템은, 허가형 블록체인 네트워크에 대한 합의 벡터를 생성하고, 인증 등록된 개체 서버들에게 공개 키를 생성하여 제공하는 통합 시스템 관리 서버; 상기 통합 시스템 관리 서버에 인증 등록하고, 사용자 데이터 공개 범위를 지정하여 데이터 라벨링한 후 연결 키워드를 추출한 사용자 속성 데이터를 암호화하여 전송하는 사용자 단말; 상기 통합 시스템 관리 서버에 인증 등록하고, 데이터 획득 기반의 키워드 인증을 통해 상기 사용자 단말로부터 전송된 사용자 속성 데이터를 저장하고, 상기 사용자 단말의 데이터 연결 키워드로부터 데이터 접근 서비스의 유효성을 검증하기 위한 트랩도어를 생성하여 상기 사용자 속성 데이터를 제공하는 클라우드 운영 서버; 및 상기 통합 시스템 관리 서버 및 상기 클라우드 운영 서버에 인증 등록하고, 상기 클라우드 운영 서버에 트랩도어를 제출한 후, 사용자 데이터에 대한 검색 쿼리를 요청하는 서비스 제공 서버;를 포함하는 점에 그 특징이 있다.A detailed access control system in a cloud and permissioned blockchain environment according to an embodiment of the present invention generates a consensus vector for the permissioned blockchain network and generates and provides a public key to the authentication registered entity servers. integrated system management server; A user terminal that registers for authentication with the integrated system management server, specifies a user data disclosure scope, labels the data, and then encrypts and transmits the user attribute data from which the connection keyword is extracted; A trapdoor for registering authentication with the integrated system management server, storing user attribute data transmitted from the user terminal through data acquisition-based keyword authentication, and verifying the validity of the data access service from the data connection keyword of the user terminal. A cloud operating server that generates and provides the user attribute data; and a service providing server that registers authentication with the integrated system management server and the cloud operation server, submits a trapdoor to the cloud operation server, and then requests a search query for user data. .

Description

클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템 및 그 방법{Detailed access control system in cloud and permissioned blockchain environment and the method thereof}Detailed access control system in cloud and permissioned blockchain environment and the method thereof}

본 발명은 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템 및 그 방법에 관한 것으로, 특히 허가형 블록체인을 기반으로 클라우드에 접근하여 데이터 서비스 제공에 대하여, 서비스 제공자 서버가 클라우드 운영자 서버에 암호화된 사용자 데이터를 선택적으로 사용하도록 액세스 권한을 제공 및 관리하는 P-FIPS(Privacy-enhanced Federated Identity Provider System) 프로토콜을 적용하여 정보 보호 및 효율적인 데이터 프레임워크를 제공할 수 있는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템 및 그 방법에 관한 것이다. The present invention relates to a detailed access control system and method for cloud and permissioned blockchain environments. In particular, for providing data services by accessing the cloud based on permissioned blockchain, the service provider server is encrypted on the cloud operator server. Cloud and permissioned blockchain environments that can provide information protection and an efficient data framework by applying the P-FIPS (Privacy-enhanced Federated Identity Provider System) protocol, which provides and manages access rights to selectively use user data. It relates to a detailed access control system and method.

일상적인 환경에서 IoT 기기의 폭발적인 증가와 함께 많은 글로벌 서비스들이 '디지털화' 과정과 지능적인 빅데이터 분석을 통해 숨겨진 데이터 인 사이트를 발굴하여 사용자 데이터를 중심으로 혁신적인 변화를 만들고 있으며, 이러한 변화의 속도는 계속해서 증가하고 있다. 그러나 문제는 매일 발생하는 원시 데이터의 양이 지능형 빅데이터 분석에 관한 특별 섹션 실로 엄청나고 가장 분명한 문제는 다양한 복잡한 시스템을 관리하고 최적화하는 것이다. 중앙 집중식 접근 방식은 처리 효율성을 극대화할 수 있지만 레거시 시스템에 적용하는 것은 어렵다. 데이터 사일로는 고급 분석에 필요한 데이터를 통합하기 어렵고, 데이터의 한계는 인공 지능(AI)이 사용하는 데이터의 품질과 모델 예측의 신뢰성에 큰 영향을 미치게 된다. 분산 학습과 같은 새로운 기술은 앞으로 나아갈 길을 제공하지만 투명성 부족은 분석에 사용되는 데이터에 대한 신뢰를 약화시키는 문제점이 있다. 또한 데이터가 개인정보로 구성되거나 제작된 콘텐츠로 구성되더라도 서비스 사용자에 의해 데이터에 대한 제어는 서비스 제공자가 독점하게 되는 문제점이 있다. With the explosive increase in IoT devices in everyday environments, many global services are creating innovative changes centered on user data by discovering hidden data insights through the 'digitization' process and intelligent big data analysis, and the speed of these changes is It continues to increase. However, the problem is that the amount of raw data generated every day is truly enormous, and the most obvious problem is managing and optimizing various complex systems. A centralized approach can maximize processing efficiency, but is difficult to apply to legacy systems. Data silos make it difficult to integrate the data needed for advanced analytics, and data limitations have a significant impact on the quality of data used by artificial intelligence (AI) and the reliability of model predictions. New technologies such as distributed learning provide a way forward, but lack of transparency undermines trust in the data used for analysis. In addition, even if the data consists of personal information or produced content, there is a problem in that control of the data by the service user is monopolized by the service provider.

한국특허출원 제10- 2013-0082745호Korean Patent Application No. 10- 2013-0082745

본 발명은 상기와 같은 문제점을 해결하기 위해 허가형 블록체인을 기반으로 클라우드에 접근하여 데이터 서비스 제공에 대하여, 서비스 제공자 서버가 클라우드 운영자 서버에 암호화된 사용자 데이터를 선택적으로 사용하도록 액세스 권한을 제공 및 관리하는 P-FIPS(Privacy-enhanced Federated Identity Provider System) 프로토콜을 적용하여 정보 보호 및 효율적인 데이터 프레임워크를 제공할 수 있는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템 및 그 방법을 제공하는 것을 목적으로 한다. In order to solve the above problems, the present invention provides access to the cloud based on permissioned blockchain to provide data services, and provides access rights for the service provider server to selectively use encrypted user data on the cloud operator server. The purpose is to provide a detailed access control system and method for cloud and permissioned blockchain environments that can provide information protection and an efficient data framework by applying the managed P-FIPS (Privacy-enhanced Federated Identity Provider System) protocol. Do it as

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.However, the technical challenge that this embodiment aims to achieve is not limited to the technical challenges described above, and other technical challenges may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시 예에 따른 포함하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템은, 허가형 블록체인 네트워크에 대한 합의 벡터를 생성하고, 인증 등록된 개체 서버들에게 공개 키를 생성하여 제공하는 통합 시스템 관리 서버; 상기 통합 시스템 관리 서버에 인증 등록하고, 사용자 데이터 공개 범위를 지정하여 데이터 라벨링한 후 연결 키워드를 추출한 사용자 속성 데이터를 암호화하여 전송하는 사용자 단말; 상기 통합 시스템 관리 서버에 인증 등록하고, 데이터 획득 기반의 키워드 인증을 통해 상기 사용자 단말로부터 전송된 사용자 속성 데이터를 저장하고, 상기 사용자 단말의 데이터 연결 키워드로부터 데이터 접근 서비스의 유효성을 검증하기 위한 트랩도어를 생성하여 상기 사용자 속성 데이터를 제공하는 클라우드 운영 서버; 및 상기 통합 시스템 관리 서버 및 상기 클라우드 운영 서버에 인증 등록하고, 상기 클라우드 운영 서버에 트랩도어를 제출한 후, 사용자 데이터에 대한 검색 쿼리를 요청하는 서비스 제공 서버;를 포함하는 점에 그 특징이 있다.As a technical means for achieving the above-described technical problem, a detailed access control system in a cloud and permissioned blockchain environment, including according to an embodiment of the present invention, generates a consensus vector for a permissioned blockchain network and provides authentication. an integrated system management server that generates and provides public keys to registered entity servers; A user terminal that registers for authentication with the integrated system management server, specifies a user data disclosure scope, labels the data, and then encrypts and transmits the user attribute data from which the connection keyword is extracted; A trapdoor for registering authentication with the integrated system management server, storing user attribute data transmitted from the user terminal through data acquisition-based keyword authentication, and verifying the validity of the data access service from the data connection keyword of the user terminal. A cloud operating server that generates and provides the user attribute data; and a service providing server that registers authentication with the integrated system management server and the cloud operation server, submits a trapdoor to the cloud operation server, and then requests a search query for user data. .

여기서, 특히 상기 사용자 단말은 상기 사용자 연결 키워드, 인덱스 및 암호 서명을 포함하는 사용자 속성 데이터를 전송하는 점에 그 특징이 있다.Here, the user terminal is particularly characterized in that it transmits user attribute data including the user connection keyword, index, and cryptographic signature.

여기서, 특히 클라우드 운영 서버는, 상기 서비스 제공 서버가 데이터 접근 서비스를 수행하기 위한 트랩 도어를 포함하는 암호화 데이터를 생성하여 제공하고, 상기 서비스 제공 서버의 검색 쿼리 요청에 따른 데이터 검색 유효성을 검증을 위한 데이터 접근 토큰을 생성하여 제공하는 아웃소싱 서버; 및 상기 사용자 단말에서 전송된 사용자 속성 데이터를 저장하고, 상기 아웃소싱 서버에서 요청한 리소스를 반환하는 리소스 서버;를 포함하는 점에 그 특징이 있다.Here, in particular, the cloud operation server generates and provides encrypted data including a trap door for the service providing server to perform a data access service, and verifies the validity of data search according to the search query request of the service providing server. An outsourced server that generates and provides data access tokens; and a resource server that stores user attribute data transmitted from the user terminal and returns resources requested by the outsourcing server.

여기서, 특히 상기 통합 시스템 관리 서버는 개체의 공개 파라미터 및 정수를 통해 공개 키/비밀 키 쌍을 생성하는 점에 그 특징이 있다.Here, the integrated system management server is particularly characterized in that it generates a public key/private key pair through the public parameters and integers of the entity.

여기서, 특히 상기 서비스 제공 서버는, 상기 클라우드 운영 서버에서 데이터 접근 서비스 요청을 승인하면 데이터 연결 토큰을 전송하는 점에 그 특징이 있다.Here, the service providing server is particularly characterized in that it transmits a data connection token when the cloud operation server approves the data access service request.

또한, 상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시 예에 따른 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법은, 통합 시스템 관리 서버에서 허가형 블록체인 네트워크에 대한 합의 벡터를 생성하고, 인증 등록된 개체 서버들에게 공개 키를 생성하여 제공하는 단계; 사용자 단말은 상기 통합 시스템 관리 서버에 인증 등록하고, 사용자 데이터 공개 범위를 지정하여 데이터 라벨링한 후 연결 키워드를 추출한 사용자 속성 데이터를 암호화하는 단계; 클라우드 운영 서버는 상기 통합 시스템 관리 서버에 인증 등록하고, 데이터 획득 기반의 키워드 인증을 통해 상기 사용자 단말로부터 전송된 사용자 속성 데이터를 저장하는 단계; 클라우드 운영 서버는 상기 사용자 단말의 데이터 연결 키워드로부터 데이터 접근 서비스의 유효성을 검증하기 위한 트랩도어를 생성하여 상기 사용자 속성 데이터를 제공하는 단계; 서비스 제공 서버는 상기 통합 시스템 관리 서버 및 상기 클라우드 운영 서버에 인증 등록하고, 상기 클라우드 운영 서버에 트랩도어를 제출한 후, 사용자 데이터에 대한 검색 쿼리를 요청하는 단계; 및 상기 클라우드 운영 서버는 상기 서비스 제공 서버의 요청된 검색 쿼리에 대한 유효성을 검증하는 단계를 포함하는 점에 그 특징이 있다.In addition, as a technical means for achieving the above-described technical problem, a detailed access control method in the cloud and permissioned blockchain environment according to an embodiment of the present invention is a consensus vector for the permissioned blockchain network in the integrated system management server. generating and providing a public key to entity servers registered for authentication; Registering the user terminal for authentication with the integrated system management server, specifying a user data disclosure range, labeling the data, and then encrypting the user attribute data from which the connection keyword is extracted; A cloud operation server registering authentication with the integrated system management server and storing user attribute data transmitted from the user terminal through data acquisition-based keyword authentication; A cloud operation server providing the user attribute data by creating a trapdoor for verifying the validity of a data access service from the data connection keyword of the user terminal; The service providing server registers for authentication with the integrated system management server and the cloud operation server, submits a trapdoor to the cloud operation server, and then requests a search query for user data; And the cloud operation server is characterized in that it includes a step of verifying the validity of the search query requested by the service providing server.

여기서, 특히 상기 인증 등록된 개체 서버들에게 공개 키를 생성하여 제공하는 단계에서, 개체의 공개 파라미터 및 정수를 통해 공개 키/비밀 키 쌍을 생성하여 제공하는 점에 그 특징이 있다.Here, in particular, in the step of generating and providing a public key to the entity servers registered for authentication, a feature is that a public key/private key pair is generated and provided through the public parameters and integers of the entity.

여기서, 특히 상기 사용자 속성 데이터를 암호화하는 단계에서, 사용자 단말은 상기 사용자 연결 키워드, 인덱스 및 암호 서명을 포함하는 사용자 속성 데이터를 암호화하는 점에 그 특징이 있다.Here, in particular, in the step of encrypting the user attribute data, the user terminal is characterized in that it encrypts the user attribute data including the user connection keyword, index, and cryptographic signature.

여기서, 특히 상기 사용자 속성 데이터를 제공하는 단계에서, 상기 서비스 제공 서버가 데이터 접근 서비스를 수행하기 위한 트랩 도어를 포함하는 암호화 데이터를 생성하여 제공하고, 상기 서비스 제공 서버의 검색 쿼리 요청에 따른 데이터 검색 유효성을 검증을 위한 데이터 접근 토큰을 생성하여 제공하는 점에 그 특징이 있다.Here, especially in the step of providing the user attribute data, the service providing server generates and provides encrypted data including a trap door for performing a data access service, and retrieves data according to a search query request from the service providing server. Its characteristic is that it generates and provides a data access token for validation.

여기서, 특히 상기 검색 쿼리에 대한 유효성을 검증하는 단계에서 상기 클라우드 운영 서버에서 유효성을 검증하여 검색 쿼리에 대한 데이터 접근 서비스 요청을 승인하면 상기 서비스 제공 서버에서 데이터 연결 토큰을 전송하는 점에 그 특징이 있다.Here, in particular, in the step of verifying the validity of the search query, if the cloud operation server verifies the validity and approves the data access service request for the search query, the service providing server transmits a data connection token. there is.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 허가형 블록체인을 기반으로 클라우드에 접근하여 데이터 서비스 제공에 대하여, 서비스 제공자가 클라우드에서 암호화된 데이터를 지능형 빅데이터 분석 등 다양한 용도로 선택적으로 사용할 수 있도록 연합 아웃소싱 클라우드 P-FIPS에서 데이터 소유자는 첫째, 클라우드의 각 암호화된 데이터에 사용 범위(예: 사용자 연결, 사용자 연결 해제, 사용자 추적)에 레이블을 지정하여 클라우드에서 암호화된 데이터에 대한 서비스 제공자의 액세스 권한을 관리할 수 있다. According to one of the above-described means of solving the problem of the present invention, in relation to providing data services by accessing the cloud based on a permissioned blockchain, the service provider selectively uses the encrypted data in the cloud for various purposes such as intelligent big data analysis. In a federated outsourced cloud P-FIPS, data owners first label each encrypted data in the cloud with the scope of its use (e.g., user connection, user disconnection, user tracking) to enable services for encrypted data in the cloud. Provider access rights can be managed.

둘째, 데이터 소유자에 관한 정보를 서비스 제공자에게 선택적으로 제공함으로써. 레이블에는 데이터 소유자의 ID와 관련된 속성도 포함되어 있으며 이를 통해 서비스 제공자는 클라우드 아웃소싱 서버에서 사용 범위에 따라 암호화 계산을 통해 대상 데이터를 찾을 수 있다. Second, by selectively providing information about the data owner to the service provider. The label also contains attributes related to the identity of the data owner, which allows service providers to find the target data through cryptographic calculations based on usage scope on cloud outsourced servers.

셋째, 클라우드에서 서비스 제공자에 이르기까지 P-FIPS와 통합된 DAO(Decentralized Audit and Ordering) 체인 메커니즘으로, 획득한 데이터의 정확성을 서비스 제공자에게 제공할 뿐만 아니라 소유자의 데이터가 승인된 목적으로만 사용되도록 보장할 수 있으며, 프레임워크를 보다 효율적으로 제공할 수 있다. Third, the Decentralized Audit and Ordering (DAO) chain mechanism integrated with P-FIPS from the cloud to the service provider, which not only provides the service provider with the accuracy of the acquired data, but also ensures that the owner's data is used only for authorized purposes. guarantees, and the framework can be provided more efficiently.

도 1은 본 발명의 일 실시예에 따른 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템의 구성을 개략적으로 도시한 도면.
도 2는 본 발명의 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템의 전반적인 구성 요소를 개략적으로 보여주는 개념도.
도 3은 본 발명의 일 실시예에 따른 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법에 대한 순서도.
도 4는 본 발명의 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법의 워크 플로우를 개략적으로 보여주는 개념도.
Figure 1 is a diagram schematically showing the configuration of a detailed access control system in a cloud and permissioned blockchain environment according to an embodiment of the present invention.
Figure 2 is a conceptual diagram schematically showing the overall components of the detailed access control system in the cloud and permissioned blockchain environment of the present invention.
Figure 3 is a flowchart of a detailed access control method in a cloud and permissioned blockchain environment according to an embodiment of the present invention.
Figure 4 is a conceptual diagram schematically showing the workflow of the detailed access control method in the cloud and permissioned blockchain environment of 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, the present invention may be implemented in many different forms and is not limited to the embodiments described herein. In order to clearly explain the present invention, parts unrelated to the description have been omitted from the drawings, and similar parts have been assigned similar reference numerals throughout the specification. In addition, while explaining with reference to the drawings, even if the configuration is shown with the same name, the drawing number may vary depending on the drawing, and the drawing number is merely written for convenience of explanation, and the concept, feature, and function of each component are determined by the drawing number. Alternatively, the effect is not interpreted as limited.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Throughout the specification, when a part is said to be "connected" to another part, this includes not only the case where it is "directly connected," but also the case where it is "electrically connected" with another element in between. . In addition, when a part is said to "include" a certain component, this does not mean excluding other components unless specifically stated to the contrary, but may further include other components, and means that it may further include one or more other components. It should be understood that this does not exclude in advance the possibility of the presence or addition of features, numbers, steps, operations, components, parts, or combinations thereof.

본 명세서에 있어서 '부(部)' 또는 '모듈'이란, 하드웨어 또는 소프트웨어에 의해 실현되는 유닛(unit), 양방을 이용하여 실현되는 유닛을 포함하며, 하나의 유닛이 둘 이상의 하드웨어를 이용하여 실현되어도 되고, 둘 이상의 유닛이 하나의 하드웨어에 의해 실현되어도 된다. In this specification, 'part' or 'module' includes a unit realized by hardware or software, and a unit realized using both, and one unit is realized using two or more hardware. This may be possible, or two or more units may be realized by one hardware.

도 1은 본 발명의 일 실시예에 따른 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템의 구성을 개략적으로 도시한 도면이고, 도 2는 본 발명의 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템의 전반적인 구성 요소를 개략적으로 보여주는 개념도이다.Figure 1 is a diagram schematically showing the configuration of a detailed access control system in a cloud and permissioned blockchain environment according to an embodiment of the present invention, and Figure 2 is a detailed access control system in a cloud and permissioned blockchain environment according to an embodiment of the present invention. This is a conceptual diagram that schematically shows the overall components of the system.

도 1 및 도 2에 도시된 바와 같이, 본 발명에 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템은, 통합 시스템 관리 서버(100), 사용자 단말(200), 클라우드 운영 서버(300) 및 서비스 제공 서버(400)를 포함하여 구성된다. As shown in Figures 1 and 2, the detailed access control system of the cloud and permissioned blockchain environment in the present invention includes an integrated system management server 100, a user terminal 200, a cloud operation server 300, and a service. It is configured to include a provision server 400.

상기 통합 시스템 관리 서버(100)는 허가형 블록체인 네트워크에 대한 합의 벡터를 생성하고, 인증 등록된 개체 서버들에게 공개 키를 생성하여 제공하게 된다.The integrated system management server 100 generates a consensus vector for the permissioned blockchain network and generates and provides a public key to the entity servers registered for authentication.

보다 구체적으로, 통합 시스템 관리 서버(100)는 전체 개체 서버를 관리하는 것으로 각 개체 서버는 모든 사용자 서버, 클라우드 운영 서버 및 서비스 제공 서버를 포함하여 등록 및 관리하게 된다.More specifically, the integrated system management server 100 manages all object servers, and each object server registers and manages all user servers, cloud operation servers, and service provision servers.

상기 통합 시스템 관리 서버(100)는 전역 설정 및 키 생성을 수행하게 되고, 공개 매개변수와 정수를 통해 공개/비밀 키 쌍을 생성하여 전체 객체에 대한 공개 키를 유지한다. 또한, 허가형 블록체인 네트워크에 대한 합의 벡터를 생성하고, 기존 블록체인 시스템은 승인 피어 및 블록 생성 리더와 같은 모든 환경적 요인을 포함할 수 있다.The integrated system management server 100 performs global settings and key generation, generates a public/private key pair through public parameters and integers, and maintains public keys for all objects. It also creates a consensus vector for a permissioned blockchain network, and existing blockchain systems can include all environmental factors such as permissioning peers and block generation leaders.

상기 사용자 단말(200)은 상기 통합 시스템 관리 서버(100)에 인증 등록하고, 사용자 데이터 공개 범위를 지정하여 데이터 라벨링을 수행한 후 연결 키워드를 추출하여 인덱스를 포함한 데이터를 암호화하게 된다. 그런 다음 인덱스와 암호 서명을 상기 클라우드 운영 서버(300)로 전송하게 된다. 즉, 사용자 속성 데이터를 암호화하여 상기 클라우드 운영 서버(300)에 전송하게 된다.The user terminal 200 registers for authentication with the integrated system management server 100, specifies a user data disclosure scope, performs data labeling, extracts a connection keyword, and encrypts the data including the index. Then, the index and cryptographic signature are transmitted to the cloud operation server 300. That is, user attribute data is encrypted and transmitted to the cloud operation server 300.

또한 블록 체인 네트워크의 참여자로서 블록의 헤더만 가지고 있다. 각 데이 터를 암호화하는데 사용되는 구체적인 알고리즘은 일반적인 공개키 암호화 알고리즘이 적용될 수 있다.Additionally, as a participant in the blockchain network, it only has the header of the block. The specific algorithm used to encrypt each data may be a general public key encryption algorithm.

다시 말해, 상기 사용자 단말(200)은 데이터 소유자 및 서비스 소비자로서 상기 사용자 연결 키워드, 인덱스 및 암호 서명을 포함하는 사용자 속성 데이터를 상기 클라우드 운영 서버(CO)(300)에 전송하고, 이를 통해 서비스 제공자인 서비스 제공 서버(400)에게 데이터를 제공하게 된다.In other words, the user terminal 200, as a data owner and service consumer, transmits user attribute data including the user connection keyword, index, and cryptographic signature to the cloud operation server (CO) 300, and through this, the service provider Data is provided to the in-service provision server 400.

상기 클라우드 운영 서버(CO)(300)는 상기 통합 시스템 관리 서버(100)에 인증 등록하고, 데이터 획득 기반의 키워드 인증을 통해 상기 사용자 단말(200)로부터 전송된 사용자 속성 데이터를 저장하고, 상기 사용자 단말(200)의 데이터 연결 키워드로부터 데이터 접근 서비스의 유효성을 검증하기 위한 트랩도어를 생성하여 상기 사용자 속성 데이터를 제공하게 된다.The cloud operation server (CO) 300 registers authentication with the integrated system management server 100, stores user attribute data transmitted from the user terminal 200 through data acquisition-based keyword authentication, and stores user attribute data transmitted from the user terminal 200 through data acquisition-based keyword authentication. A trapdoor is created to verify the validity of the data access service from the data connection keyword of the terminal 200, and the user attribute data is provided.

보다 구체적으로, 상기 클라우드 운영 서버(300)는, 아웃소싱 서버와 리소스 서버로 구분될 수 있으며, 데이터 획득 기반의 키워드 인증을 통해 인가된 클라우드 클라이언트(사용자 및 서비스 제공자)에게 데이터 저장 및 자원 접근 서비스를 제공할 수 있다. 사용 가능한 민감한 정보를 유추하고 다양한 동기로 거짓 검색자를 반환하는 것이 가능하다. 암호화 작업으로 운영되며 블록 체인 네트워크 내에서 성과 내역을 기록 및 공유할 수 있다. More specifically, the cloud operation server 300 can be divided into an outsourcing server and a resource server, and provides data storage and resource access services to authorized cloud clients (users and service providers) through data acquisition-based keyword authentication. can be provided. It is possible to infer available sensitive information and return false searchers with various motivations. It operates as a cryptographic operation and its performance details can be recorded and shared within the blockchain network.

상기 아웃소싱 서버는 상기 서비스 제공 서버(400)가 데이터 접근 서비스를 수행하기 위해 사용자 단말의 데이터 연결 키워드에서 생성된 서비스 제공 서버의 트랩도어를 포함하는 암호화 데이터를 생성하여 제공하고, 상기 서비스 제공 서버(400)의 검색 쿼리 요청에 따른 데이터 검색 유효성을 검증을 위한 데이터 접근 토큰을 생성하여 제공하게 된다. 여기서, 아웃소싱 서버는 사용자 단말과 서비스 제공 서버 간의 데이터 접근 작업을 수행하는 클라우드 운영 서버의 프로비저닝 시스템에 해당될 수 있다. The outsourcing server generates and provides encrypted data including a trapdoor of the service providing server generated from the data connection keyword of the user terminal in order for the service providing server 400 to perform the data access service, and the service providing server ( A data access token is generated and provided to verify the validity of data search according to the search query request (400). Here, the outsourcing server may correspond to a provisioning system of a cloud operation server that performs data access tasks between the user terminal and the service providing server.

또한, 상기 리소스 서버는 상기 사용자 단말(200)에서 전송된 사용자 속성 데이터를 저장하고, 상기 아웃소싱 서버에서 요청한 리소스를 반환하게 된다. 즉, 리소스 서버는 클라우드 운영 서버의 프로비저닝 시스템으로 사용자 단말의 속성 데이터로 사용자 인덱스, 암호 및 데이터 연결 키워드를 저장하고, 아웃소싱 서버에서 생성한 데이터 연결 암호를 저장하게 된다. 또한, 아웃소싱 서버에서 요청한 대로 리소스를 반환하게 된다. Additionally, the resource server stores user attribute data transmitted from the user terminal 200 and returns resources requested from the outsourcing server. In other words, the resource server is a provisioning system for the cloud operation server that stores the user index, password, and data connection keyword as attribute data of the user terminal, and stores the data connection password generated by the outsourcing server. Additionally, resources are returned as requested by the outsourcing server.

상기 서비스 제공 서버(400)는 상기 통합 시스템 관리 서버(100) 및 상기 클라우드 운영 서버(300)에 인증 등록하고, 상기 클라우드 운영 서버(300)에 트랩도어를 제출한 후, 사용자 데이터에 대한 검색 쿼리를 요청하게 된다. The service providing server 400 registers authentication with the integrated system management server 100 and the cloud operation server 300, submits a trapdoor to the cloud operation server 300, and then executes a search query for user data. is requested.

이때, 상기 서비스 제공 서버(400)는 상기 클라우드 운영 서버(300)에서 데이터 접근 서비스 요청을 승인하면 데이터 연결 토큰을 전송할 수 있다. At this time, the service providing server 400 may transmit a data connection token when the cloud operating server 300 approves the data access service request.

즉, 클라우드 운영 서버(300)를 통해 사용자 단말의 사용자 데이터 접근의 허가를 받은 후, 상기 클라우드 운영 서버(300)에 트랩도어를 제출하여 관심있는 사용자 데이터에 대한 검색 쿼리를 요청하고 이후에 사용자 데이터를 이용할 수 있다. That is, after receiving permission to access user data of the user terminal through the cloud operation server 300, a trapdoor is submitted to the cloud operation server 300 to request a search query for user data of interest, and then user data can be used.

또한, 도 3은 본 발명의 일 실시예에 따른 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법에 대한 순서도이고, 도 4는 본 발명의 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법의 워크 플로우를 개략적으로 보여주는 개념도이다.In addition, Figure 3 is a flowchart of a detailed access control method in a cloud and permissioned blockchain environment according to an embodiment of the present invention, and Figure 4 is a work diagram of a detailed access control method in a cloud and permissioned blockchain environment of the present invention. This is a conceptual diagram that schematically shows the flow.

도 3 및 도 4에 도시된 바와 같이, 본 발명의 일 실시 예에 따른 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법은, 먼저 통합 시스템 관리 서버(100)에서 허가형 블록체인 네트워크에 대한 합의 벡터를 생성하고, 인증 등록된 개체 서버들에게 공개 키를 생성하여 제공하는 단계가 수행된다(S310).As shown in Figures 3 and 4, the detailed access control method of the cloud and permissioned blockchain environment according to an embodiment of the present invention first involves reaching an agreement on the permissioned blockchain network in the integrated system management server 100. Steps are performed to generate a vector and generate and provide a public key to the entity servers registered for authentication (S310).

보다 구체적으로, 상기 통합 시스템 관리 서버(100)는 상기 개체의 공개 파라미터 및 정수를 통해 공개 키/비밀 키 쌍을 생성하여 제공하게 된다.More specifically, the integrated system management server 100 generates and provides a public key/private key pair through the public parameters and integers of the entity.

이때, 통합 시스템 관리 서버(100)는 보안 매개변수 k 와 정수 n이 주어지면 공개 매개변수 pp를 출력하게 된다. 그리고, 쌍선형 지도 시스템 를 선택하게 된다.At this time, the integrated system management server 100 outputs the public parameter pp when the security parameter k and the integer n are given. And, the bilinear map system You will choose .

그런 다음, 두 개의 해쉬 함수 를 선택한다. Then, the two hash functions Select .

이후, 공개 매개변수 pp를 로 설정하게 된다.Afterwards, the public parameter pp It is set to .

그리고, 각 사용자 단말의 에 대해 , 를 무작위로 선택한다. And, each user terminal About , is selected randomly.

상기 클라우드 운영 서버의 두 개의 요소 를 첫 번째 선택하고, 를 계산하고 발급자의 공개/ 개인 키 쌍인 를 제공한다.Two elements of the cloud operating server Select first, Calculate the issuer's public/private key pair. provides.

상기 서비스 제공 서버의 요소를 선택하고, 를 계산한 다음, 특정 사용자의 공개/ 개인 키 쌍인 를 설정한다.of the service providing server select an element, , which is then the public/private key pair of a specific user. Set .

한편, 하기 표 1은 각 용어의 정의에 대한 정리를 나타내고 있으므로 참조하기로 한다. Meanwhile, Table 1 below shows a summary of the definitions of each term, so please refer to it.

[표 1][Table 1]

그 다음으로, 사용자 단말(200)은 상기 통합 시스템 관리 서버(100)에 인증 등록하고, 사용자 데이터 공개 범위를 지정하여 데이터 라벨링한 후 연결 키워드를 추출한 사용자 속성 데이터를 암호화하는 단계가 수행된다(S320). Next, the user terminal 200 registers for authentication in the integrated system management server 100, specifies a user data disclosure range, labels the data, and then encrypts the user attribute data from which the connection keyword is extracted (S320) ).

보다 구체적으로, 상기 사용자 단말은 상기 사용자 연결 키워드, 인덱스 및 암호 서명을 포함하는 사용자 속성 데이터를 암호화하게 된다.More specifically, the user terminal encrypts user attribute data including the user connection keyword, index, and cryptographic signature.

먼저, 사용자 단말(200)은 의 크기 로 표시하는 데이터 연결 키워드 를 선택하게 된다.First, the user terminal 200 and size of Data connection keywords denoted by You will choose .

사용자 단말은 클라우드 운영 서버가 나중에 사용할 ID를 검색하기 위해 키워드를 암호화하게 된다. 데이터 연결 키워드 필드는 크기가 n 인 KW 로 표시된다. 각 데이터에는 연결된 데이터 연결 키워드가 연합되어 있다. 데이터 , 키워드 ,가 주어지면 사용자 단말은 를 선택하고 암호화된 데이터 EN을 다음과 같이 계산한다.The user terminal encrypts the keyword so that the cloud operation server can retrieve the ID to be used later. The data connection keyword field is denoted by KW with size n. Each data has associated data connection keywords associated with it. data , keyword If , is given, the user terminal Select and calculate the encrypted data EN as follows.

<수학식 1><Equation 1>

그리고, 가 있는 각 항등식 에 대해 각 사용자 단말 는 자신의 서명 를 생성하고, 생성된 서명을 사용자 단말은 다음 수학식 2와 같이 설정한다. and, Each identity with For each user terminal is his signature , and the user terminal sets the generated signature as shown in Equation 2 below.

<수학식 2><Equation 2>

이어서, 상기 클라우드 운영 서버(300)는 상기 통합 시스템 관리 서버(100)에 인증 등록하고, 데이터 획득 기반의 키워드 인증을 통해 상기 사용자 단말(200)로부터 전송된 사용자 속성 데이터를 저장하는 단계가 수행된다(S330).Subsequently, the cloud operation server 300 registers authentication with the integrated system management server 100 and stores user attribute data transmitted from the user terminal 200 through data acquisition-based keyword authentication. (S330).

그리고, 클라우드 운영 서버는 상기 사용자 단말의 데이터 연결 키워드로부터 데이터 접근 서비스의 유효성을 검증하기 위한 트랩도어를 생성하여 상기 사용자 속성 데이터를 제공하는 단계가 수행된다(S340).Then, the cloud operation server creates a trapdoor to verify the validity of the data access service from the data connection keyword of the user terminal and provides the user attribute data (S340).

여기서, 상기 서비스 제공 서버가 데이터 접근 서비스를 수행하기 위한 트랩 도어를 포함하는 암호화 데이터를 생성하여 제공하고, 상기 서비스 제공 서버의 검색 쿼리 요청에 따른 데이터 검색 유효성을 검증을 위한 데이터 접근 토큰을 생성하여 제공할 수 있다. Here, the service providing server generates and provides encrypted data including a trap door for performing a data access service, and generates a data access token to verify the validity of data retrieval according to the search query request of the service providing server. can be provided.

이어서, 서비스 제공 서버는 상기 통합 시스템 관리 서버 및 상기 클라우드 운영 서버에 인증 등록하고, 상기 클라우드 운영 서버에 트랩도어를 제출한 후, 사용자 데이터에 대한 검색 쿼리를 요청하는 단계가 수행된다(S350).Next, the service providing server registers for authentication with the integrated system management server and the cloud operation server, submits a trapdoor to the cloud operation server, and then requests a search query for user data (S350).

보다 구체적으로, 클라우드 운영 서버는 각 인덱스 에 대한 키워드 필드 를 전송한다. More specifically, the cloud operating server Keyword field for transmit.

다음 방정식 를 이용하여 m 차 다항식을 작성하게 된다. 는 방정식의 m 근이다. 하기 수학식 3과 같이 를 선택하고 를 선택하여 평가하게 된다. the following equation An m-order polynomial is created using . is the m root of the equation. As shown in Equation 3 below: Is select is selected and evaluated.

<수학식 3><Equation 3>

클라우드 운영 서버는 을 서명으로 설정하여 저장하고, 를 인덱스 설정, 아웃소싱 서버에서 암호화된 데이터를 저장한다. 여기서, 이다.Cloud operating server Set it as your signature and save it, Set up the index, encrypted data on the outsourced server Save it. here, am.

승인된 키워드 세트 , 키워드 , 공개 키 가 주어진 클라우드 운영 서버는 개인 키 를 선택하고 토큰 및 증명 을 다음 수학식 4와 같이 계산한다.Approved keyword sets , keyword , public key Given a cloud operating server has a private key as select token and Proof: Calculate as shown in Equation 4 below.

<수학식 4><Equation 4>

튜플 및 공개 키 가 주어지면 서비스 제공 서버는 다음 수학식 5에서와 같이 확인할 수 있다. 두 방정식이 모두 성립하면 사용자 단말은 수신된 키워드 토큰을 수락하게 된다. 그리고 로 표시하거나 로 표시할 수 있다.tuple and public key If is given, the service providing server can be confirmed as shown in Equation 5 below. If both equations are satisfied, the user terminal accepts the received keyword token. and or It can be displayed as .

<수학식 5><Equation 5>

그리고, 클라우드 운영 서버가 서비스 제공 서버에 를 제공하면 다음 수학식 6으로 트랩도어 를 계산하고 클라우드 운영 서버는 트랩도어 를 서비스 제공 서버로 반환한다.And, the cloud operation server is connected to the service provision server. and If you provide a trapdoor with the following equation 6: Calculate the cloud operation server trapdoor is returned to the service providing server.

<수학식 6><Equation 6>

서비스 제공 서버는 쿼리된 키워드 세트 가 주어지면 먼저 두 개의 요소 를 선택하고 를 설정하게 된다. The serving server sets the queried keywords Given, first two elements select is set.

서비스 제공 서버는 다음 수학식 7에 따라 를 계산하고, 데이터 접근 토큰 을 클라우드 운영 서버로 전송하게 된다.The service providing server follows Equation 7: Calculate the data access token is transmitted to the cloud operation server.

<수학식 7><Equation 7>

그 다음으로, 상기 클라우드 운영 서버는 상기 서비스 제공 서버의 요청된 검색 쿼리에 대한 유효성을 검증하는 단계가 수행된다(S360).Next, the cloud operating server performs a step of verifying the validity of the search query requested by the service providing server (S360).

여기서, 상기 클라우드 운영 서버에서 유효성을 검증하여 검색 쿼리에 대한 데이터 접근 서비스 요청을 승인하면 상기 서비스 제공 서버에서 데이터 연결 토큰을 전송하게 된다. Here, when the cloud operation server verifies validity and approves the data access service request for the search query, the service provision server transmits a data connection token.

데이터 접근 토큰 을 얻은 후, 서비스 제공 서버는 를 계산하고, 클라우드 운영 서버는 데이터 검색 및 아이디 를 DAO 로 검색하고, 아니면 로 반환한다.data access token After obtaining the , the service providing server Calculates and cloud operation servers retrieve data and ID Search for DAO, otherwise returns as

처음에 트랩도어 및 각 레코드에 인덱스 가 주어지면 발급자는 m 지수 연산을 수행하여 검색 쿼리를 전처리 하게 된다trap door at first and each record index to Given, the issuer preprocesses the search query by performing m exponentiation.

이후 클라우드 운영 서버(CO)는 제출된 트랩도어가 인덱스 와 일치하는지 확인하게 된다. 클라우드 운영 서버는 해당 암호화된 데이터 를 반환한다. 그렇지 않으면

Figure pat00082
를 반환하게 된다. Afterwards, the cloud operating server (CO) indexes the submitted trapdoor. Check to see if it matches. The cloud operation server stores the encrypted data returns . Otherwise
Figure pat00082
is returned.

마지막으로 클라우드 운영 서버는 전체 관련 암호화 데이터 세트 및 해당 ID 세트 또는

Figure pat00085
를 DAO로 반환하게 된다. Finally, the cloud operating server stores the entire relevant encrypted data set. and corresponding ID sets or
Figure pat00085
is returned to DAO.

실제로 m의 값이 매우 작기 때문에 검증 계산이 DAO 에 많은 계산 부담을 가하지 않게 된다. In reality, the value of m is very small, so the verification calculation does not impose much computational burden on the DAO.

따라서 상술한 검색 알고리즘은 실현 가능하고 실용적인 효과가 있게 된다.Therefore, the above-described search algorithm becomes feasible and practical.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The description of the present invention described above is for illustrative purposes, and those skilled in the art will understand that the present invention can be easily modified into other specific forms without changing the technical idea or essential features of the present invention. will be. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive. For example, each component described as unitary may be implemented in a distributed manner, and similarly, components described as distributed may also be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the claims described below rather than the detailed description above, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention. do.

100: 통합 시스템 관리 서버
200: 사용자 단말
300: 클라우드 운영 서버
400: 서비스 제공 서버
100: Integrated system management server
200: user terminal
300: Cloud operation server
400: Service provision server

Claims (10)

허가형 블록체인 네트워크에 대한 합의 벡터를 생성하고, 인증 등록된 개체 서버들에게 공개 키를 생성하여 제공하는 통합 시스템 관리 서버;
상기 통합 시스템 관리 서버에 인증 등록하고, 사용자 데이터 공개 범위를 지정하여 데이터 라벨링한 후 연결 키워드를 추출한 사용자 속성 데이터를 암호화하여 전송하는 사용자 단말;
상기 통합 시스템 관리 서버에 인증 등록하고, 데이터 획득 기반의 키워드 인증을 통해 상기 사용자 단말로부터 전송된 사용자 속성 데이터를 저장하고, 상기 사용자 단말의 데이터 연결 키워드로부터 데이터 접근 서비스의 유효성을 검증하기 위한 트랩도어를 생성하여 상기 사용자 속성 데이터를 제공하는 클라우드 운영 서버; 및
상기 통합 시스템 관리 서버 및 상기 클라우드 운영 서버에 인증 등록하고, 상기 클라우드 운영 서버에 트랩도어를 제출한 후, 사용자 데이터에 대한 검색 쿼리를 요청하는 서비스 제공 서버;를 포함하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템.
An integrated system management server that generates a consensus vector for the permissioned blockchain network and generates and provides public keys to authentication registered entity servers;
A user terminal that registers for authentication with the integrated system management server, specifies a user data disclosure scope, labels the data, and then encrypts and transmits the user attribute data from which the connection keyword is extracted;
A trapdoor for registering authentication with the integrated system management server, storing user attribute data transmitted from the user terminal through data acquisition-based keyword authentication, and verifying the validity of the data access service from the data connection keyword of the user terminal. A cloud operating server that generates and provides the user attribute data; and
A cloud and permissioned blockchain environment that includes a service providing server that registers authentication with the integrated system management server and the cloud operation server, submits a trapdoor to the cloud operation server, and then requests a search query for user data. Detailed access control system.
제1항에 있어서,
상기 사용자 단말은 상기 사용자 연결 키워드, 인덱스 및 암호 서명을 포함하는 사용자 속성 데이터를 전송하는 것을 특징으로 하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템.
According to paragraph 1,
A detailed access control system in a cloud and permissioned blockchain environment, wherein the user terminal transmits user attribute data including the user connection keyword, index, and cryptographic signature.
제1항에 있어서,
클라우드 운영 서버는,
상기 서비스 제공 서버가 데이터 접근 서비스를 수행하기 위한 트랩 도어를 포함하는 암호화 데이터를 생성하여 제공하고, 상기 서비스 제공 서버의 검색 쿼리 요청에 따른 데이터 검색 유효성을 검증을 위한 데이터 접근 토큰을 생성하여 제공하는 아웃소싱 서버; 및
상기 사용자 단말에서 전송된 사용자 속성 데이터를 저장하고, 상기 아웃소싱 서버에서 요청한 리소스를 반환하는 리소스 서버;를 포함하는 것을 특징으로 하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템.
According to paragraph 1,
The cloud operation server is,
The service providing server generates and provides encrypted data including a trap door for performing the data access service, and generates and provides a data access token to verify the validity of data search according to the search query request of the service providing server. Outsourcing servers; and
A detailed access control system in a cloud and permissioned blockchain environment, comprising a resource server that stores user attribute data transmitted from the user terminal and returns resources requested by the outsourcing server.
제1항에 있어서,
상기 통합 시스템 관리 서버는 개체의 공개 파라미터 및 정수를 통해 공개 키/비밀 키 쌍을 생성하는 것을 특징으로 하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템.
According to paragraph 1,
The integrated system management server is a detailed access control system in a cloud and permissioned blockchain environment, characterized in that it generates a public key/private key pair through the public parameters and integers of the object.
제1항에 있어서,
상기 서비스 제공 서버는
상기 클라우드 운영 서버에서 데이터 접근 서비스 요청을 승인하면 데이터 연결 토큰을 전송하는 것을 특징으로 하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 시스템.
According to paragraph 1,
The service providing server is
A detailed access control system in the cloud and permissioned blockchain environment, characterized in that a data connection token is transmitted when the cloud operation server approves the data access service request.
통합 시스템 관리 서버에서 허가형 블록체인 네트워크에 대한 합의 벡터를 생성하고, 인증 등록된 개체 서버들에게 공개 키를 생성하여 제공하는 단계;
사용자 단말은 상기 통합 시스템 관리 서버에 인증 등록하고, 사용자 데이터 공개 범위를 지정하여 데이터 라벨링한 후 연결 키워드를 추출한 사용자 속성 데이터를 암호화하는 단계;
클라우드 운영 서버는 상기 통합 시스템 관리 서버에 인증 등록하고, 데이터 획득 기반의 키워드 인증을 통해 상기 사용자 단말로부터 전송된 사용자 속성 데이터를 저장하는 단계;
클라우드 운영 서버는 상기 사용자 단말의 데이터 연결 키워드로부터 데이터 접근 서비스의 유효성을 검증하기 위한 트랩도어를 생성하여 상기 사용자 속성 데이터를 제공하는 단계;
서비스 제공 서버는 상기 통합 시스템 관리 서버 및 상기 클라우드 운영 서버에 인증 등록하고, 상기 클라우드 운영 서버에 트랩도어를 제출한 후, 사용자 데이터에 대한 검색 쿼리를 요청하는 단계; 및
상기 클라우드 운영 서버는 상기 서비스 제공 서버의 요청된 검색 쿼리에 대한 유효성을 검증하는 단계를 포함하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법.
Generating a consensus vector for a permissioned blockchain network in an integrated system management server and generating and providing a public key to authentication registered entity servers;
Registering the user terminal for authentication with the integrated system management server, specifying a user data disclosure range, labeling the data, and then encrypting the user attribute data from which the connection keyword is extracted;
A cloud operation server registering authentication with the integrated system management server and storing user attribute data transmitted from the user terminal through data acquisition-based keyword authentication;
A cloud operation server providing the user attribute data by creating a trapdoor for verifying the validity of a data access service from the data connection keyword of the user terminal;
The service providing server registers for authentication with the integrated system management server and the cloud operation server, submits a trapdoor to the cloud operation server, and then requests a search query for user data; and
A detailed access control method in a cloud and permissioned blockchain environment including the step of the cloud operating server verifying the validity of a search query requested by the service providing server.
제6에 있어서,
상기 인증 등록된 개체 서버들에게 공개 키를 생성하여 제공하는 단계에서, 개체의 공개 파라미터 및 정수를 통해 공개 키/비밀 키 쌍을 생성하여 제공하는 것을 특징으로 하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법.
In article 6,
In the step of generating and providing a public key to the authentication registered entity servers, details of the cloud and permissioned blockchain environment are characterized in that a public key/private key pair is generated and provided through the public parameters and integers of the entity. Access control methods.
제6에 있어서,
상기 사용자 속성 데이터를 암호화하는 단계에서, 사용자 단말은 상기 사용자 연결 키워드, 인덱스 및 암호 서명을 포함하는 사용자 속성 데이터를 암호화하는 것을 특징으로 하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법.
In article 6,
In the step of encrypting the user attribute data, the user terminal encrypts the user attribute data including the user connection keyword, index, and cryptographic signature. A detailed access control method in a cloud and permissioned blockchain environment.
제6에 있어서,
상기 사용자 속성 데이터를 제공하는 단계에서,
상기 서비스 제공 서버가 데이터 접근 서비스를 수행하기 위한 트랩 도어를 포함하는 암호화 데이터를 생성하여 제공하고, 상기 서비스 제공 서버의 검색 쿼리 요청에 따른 데이터 검색 유효성을 검증을 위한 데이터 접근 토큰을 생성하여 제공하는 것을 특징으로 하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법.
In article 6,
In the step of providing the user attribute data,
The service providing server generates and provides encrypted data including a trap door for performing the data access service, and generates and provides a data access token to verify the validity of data search according to the search query request of the service providing server. Detailed access control method in cloud and permissioned blockchain environments, characterized by:
제6에 있어서,
상기 검색 쿼리에 대한 유효성을 검증하는 단계에서 상기 클라우드 운영 서버에서 유효성을 검증하여 검색 쿼리에 대한 데이터 접근 서비스 요청을 승인하면 상기 서비스 제공 서버에서 데이터 연결 토큰을 전송하는 것을 특징으로 하는 클라우드와 허가형 블록체인 환경의 세부 접근 제어 방법.
In article 6,
In the step of verifying the validity of the search query, if the cloud operation server verifies the validity and approves the data access service request for the search query, the service providing server transmits a data connection token. Detailed access control method in blockchain environment.
KR1020220080199A 2022-03-16 2022-06-30 Detailed access control system in cloud and permissioned blockchain environment and the method thereof KR20230135490A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220032538 2022-03-16
KR20220032538 2022-03-16

Publications (1)

Publication Number Publication Date
KR20230135490A true KR20230135490A (en) 2023-09-25

Family

ID=88190642

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220080199A KR20230135490A (en) 2022-03-16 2022-06-30 Detailed access control system in cloud and permissioned blockchain environment and the method thereof

Country Status (1)

Country Link
KR (1) KR20230135490A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130082745A (en) 2011-12-15 2013-07-22 한국전자통신연구원 Method for reserving seat realtime using qr code

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130082745A (en) 2011-12-15 2013-07-22 한국전자통신연구원 Method for reserving seat realtime using qr code

Similar Documents

Publication Publication Date Title
JP2022509104A (en) Systems and methods for efficient and secure processing, access, and transmission of data over blockchain networks
Sun et al. Research on logistics information blockchain data query algorithm based on searchable encryption
CN112000632A (en) Ciphertext sharing method, medium, sharing client and system
Guo et al. Using blockchain to control access to cloud data
Ra et al. A federated framework for fine-grained cloud access control for intelligent big data analytic by service providers
CN116777476A (en) Medicine credible tracing method based on public key searchable encryption
Wang et al. Blockchain-based public auditing scheme for shared data
Verma et al. Secure document sharing model based on blockchain technology and attribute-based encryption
Raj et al. Enhanced encryption for light weight data in a multi-cloud system
CN107360252B (en) Data security access method authorized by heterogeneous cloud domain
Poornima Devi et al. Secure data management using IPFs and Ethereum
Guo et al. Iot data blockchain-based transaction model using zero-knowledge proofs and proxy re-encryption
Nie et al. Time‐enabled and verifiable secure search for blockchain‐empowered electronic health record sharing in IoT
KR20230135490A (en) Detailed access control system in cloud and permissioned blockchain environment and the method thereof
Srinivasa Rao et al. A secure and efficient temporal features based framework for cloud using MapReduce
Bisht et al. Personal health record storage and sharing using searchable encryption and blockchain: A comprehensive survey
Ng et al. Blockchain-based multi-keyword search on encrypted COVID-19 contact tracing data
Tyagi et al. A framework for data storage security in cloud
Patel et al. An approach to analyze data corruption and identify misbehaving server
Thiyagarajan et al. Ensuring Security for Data Storage in Cloud Computing using HECC-ElGamal Cryptosystem and GSO Optimization
Mounnan et al. Efficient distributed access control using blockchain for big data in clouds
Wang et al. A multi-keyword searchable encryption sensitive data trusted sharing scheme in multi-user scenario
Shen et al. BMSE: Blockchain-based multi-keyword searchable encryption for electronic medical records
Zhou et al. Access control mechanism in distributed smart power plants based on blockchain and ciphertext updatable functional encryption
Li et al. Secure and Efficient k-Nearest Neighbor Query with Privacy-Preserving Authentication