KR20140090571A - Method and device for privacy-respecting data processing - Google Patents
Method and device for privacy-respecting data processing Download PDFInfo
- Publication number
- KR20140090571A KR20140090571A KR1020140001877A KR20140001877A KR20140090571A KR 20140090571 A KR20140090571 A KR 20140090571A KR 1020140001877 A KR1020140001877 A KR 1020140001877A KR 20140001877 A KR20140001877 A KR 20140001877A KR 20140090571 A KR20140090571 A KR 20140090571A
- Authority
- KR
- South Korea
- Prior art keywords
- script
- data
- attributes
- processing
- privacy
- Prior art date
- Legal status (The legal status 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 status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
사용자 디바이스(110)는 데이터와, 이 데이터와 연관된 프라이버시 속성들(privacy attributes)을 암호화(encrypt)한다. 프로세싱 디바이스(140)는 암호화된 데이터 및 프라이버시 속성들을 수신하고(S202), 요청자로부터 서명된 스크립트(signed script)를 수신하고(S204), 서명(signature)을 검증한다(S208). 성공적으로 검증되는 경우, 프라이빗 키는 개봉되고(S210), 프라이버시 속성들(S212) 및 스크립트 속성들(S214)을 암호 해독(decrypt)하도록 사용되며, 이들은 스크립트가 프라이버시 속성들을 고려하는지를 결정하도록 비교된다(S216). 만약 그렇다면, 암호화된 데이터는 암호 해독되고(S218), 스크립트는 프라이빗 데이터를 프로세싱하여(S220), 요청자의 키를 사용하여 암호화되는(S222) 결과를 생성하고 나서, 암호화된 결과가 출력된다(S224). 디바이스는 데이터가 암호화되지 않는 동안에 임의의 정보의 출력을 금지하도록 바람직하게 구성된다. 이런 식으로, 사용자에게는 프라이빗 데이터의 프로세싱이 사용자에 의해 설정된 프라이버시 속성들을 고려하는 것이 보장될 수 있다. The user device 110 encrypts data and privacy attributes associated with the data. The processing device 140 receives the encrypted data and privacy attributes (S202), receives a signed script from the requestor (S204), and verifies the signature (S208). If successfully verified, the private key is opened (S210) and used to decrypt the privacy attributes (S212) and script attributes (S214), which are compared to determine if the script considers privacy attributes (S216). If so, the encrypted data is decrypted (S218), the script processes the private data (S220), generates a result of being encrypted using the requestor's key (S222), and then the encrypted result is output ). The device is preferably configured to inhibit the output of any information while the data is not encrypted. In this way, it can be ensured to the user that the processing of private data takes into account the privacy attributes set by the user.
Description
본 발명은 일반적으로 데이터 프로세싱에 관한 것이며, 특히 프라이버시를 고려하는 프로세싱(privacy-respecting processing)에 관한 것이다.The present invention relates generally to data processing, and more particularly to privacy-respecting processing.
본 절은 아래에 설명 및/또는 주장된 본 발명의 다양한 양상들에 관한 것일 수 있는 기술의 다양한 양상들을 독자에게 도입하는 것으로 의도된다. 이 논의는 본 발명의 다양한 양상들에 대한 더 나은 이해를 촉진하도록 독자에게 배경 정보를 제공하는 것에 있어서 도움을 줄 것이라고 생각된다. 따라서, 이들 진술들은 종래 기술의 용인(admissions)으로서가 아닌 이러한 견지에서 읽혀질 것임이 이해될 것이다.This section is intended to introduce the reader to various aspects of the technology that may be related to the various aspects of the invention described and / or claimed below. This discussion is believed to be helpful in providing background information to the reader to facilitate a better understanding of the various aspects of the invention. Accordingly, it will be appreciated that these statements will be read in this light, and not as admissions of the prior art.
사용자가 제3자에 의한 사용에 대한 프라이버시를 고려하는 제한을 설정할 수 있는 경우, 특정 집단(particular aggregation)에 있어서 제3자에 의한 분석을 위한 프라이빗 사용자 데이터(private user data)를 사용자가 기꺼이 제공하는 사례들이 존재한다. 이러한 사례의 예시는 사용자의 가정에서의 네트워크 트래픽이다. 서비스 제공자가 사용자 데이터의 분석 시에 사용자의 필요를 더 적합시키도록 서비스들을 수정하는 것이 발생할 수 있다. 다른 예시들은 권장자 시스템(recommender systems) 및 의학 통계(medical statistics)를 포함한다.If the user is able to set a restriction that considers privacy for use by a third party, then the user is willing to provide private user data for analysis by a third party in a particular aggregation There are cases of An example of this case is network traffic in the user's home. It may occur that the service provider modifies the services to better suit the user's needs in analyzing the user data. Other examples include recommender systems and medical statistics.
하지만, 당업자는 보안이 중요한 사안이라는 것을 실감한다. 데이터의 프라이버시가 고려되는 것이 사용자에게 어떻게 보장될 수 있는가?However, those skilled in the art realize that security is an important issue. How can the privacy of the data be taken into account by the user?
한 가지 해법은 US 2004/054918에 설명되며, 여기서 제1 사용자 디바이스는 서명된 요청(signed request)을 제2 사용자 디바이스로 전송할 수 있는데, 요청은 제2 사용자 디바이스에 의해 저장된 데이터에 대한 요청이다. 서명이 성공적으로 인증되는 경우, 제2 디바이스는 요청된 데이터를 제1 사용자 디바이스에 제공한다. 하지만, 해법의 주요 단점은 이것이 데이터를 프로세싱하지 않고, 단지 요청된 데이터를 반환한다는 것이다. 따라서, 이는 데이터 프로세싱 또는 분석을 위해 사용될 수 없다.One solution is described in US 2004/054918 wherein a first user device can send a signed request to a second user device, the request being a request for data stored by a second user device. If the signature is successfully authenticated, the second device provides the requested data to the first user device. However, the main disadvantage of the solution is that it does not process the data, but just returns the requested data. Thus, it can not be used for data processing or analysis.
다른 기존의 해법은 준동형 암호화(homomorphic encryption)이지만, 이는 종종 많은 이유들로 부적절하다. 첫째로, 스크립트는 준동형 암호화와 호환될 수 없는 프로세싱, 예를 들어 입력 데이터에 대해 어폴리노미얼(apolynomial)하지 않은 프로세싱을 요구할 수 있다. 둘째로, 입력 데이터는 매우 클 수 있으며, 이러한 경우 준동형 암호화는 느리다. 셋째로, 프로세싱은 때때로 준동형 암호화를 위해 모두 적응 또는 재기입될 수 없는 제3자로부터의 (예컨대, 라이브러리로부터의) 소프트웨어를 사용한다.Another existing solution is homomorphic encryption, which is often inadequate for many reasons. First, the script may require processing that is incompatible with perceptual encryption, for example, processing that is not apolynomial to the input data. Second, the input data can be very large, in which case the perturbed encryption is slow. Third, processing sometimes uses software (e.g., from a library) from a third party that can not be all adapted or rewritten for perturbative encryption.
이 문제에 대한 추가적인 기존의 해법은 철저한 팔러시 -기반의 암호화 및 클라우드에서의 데이터 관리( End - to - End Policy - Based Encryption and Management of Data in the Cloud ); 클라우드 컴퓨팅 기술 및 과학에 대한 2011 제3 IEEE 국제 회의(2011 Third IEEE International Conference on Cloud Computing Technology and Science)에서 Siani Pearson, Marco Casassa Mont 및 Liqun Chen에 의해 설명된다. 이들의 해법은 암호화된 데이터를 데이터에 대한 프라이버시 선호도들을 규명하는 '스틱키 팔러시들(sticky policies)'로 속박하고(bind), 맞춤화된 스틱키 팔러시들에 대한 자발적인 이행(fulfill)을 주장하는 클라우드 서비스 제공자(CSP)에 의존한다. 하지만, CSP가 프라이버시를 고려하고, CSP가 암호화를 위해 사용되는 대칭의 키들 및 인 더 클리어(in the clear) 데이터 모두에 대한 액세스를 가진다는 것에 대한 추가적인 보장이 없다.Additional existing solutions to this problem include thorough parcel -based encryption and data management in the cloud ( End - to - End Policy - Based Encryption and Management of Data in the Cloud ) ; Is described by Siani Pearson, Marco Casassa Mont and Liqun Chen in the 2011 Third IEEE International Conference on Cloud Computing Technology and Science. These solutions bind the encrypted data to "sticky policies" that identify privacy preferences for the data, and claim voluntary fulfillment of customized sticky key parlories It relies on a cloud service provider (CSP). However, there is no additional guarantee that the CSP considers privacy and that the CSP has access to both symmetric keys and in the clear data used for encryption.
또 다른 기존의 해법은 P.Maniatis 외 등의 HotOS 2011, 2011의 당신의 데이터가 어디에 있는지를 알고 있습니까?(Do You Know Where your Data Are?) 전개 가능한 데이터 보호를 위한 안전한 데이터 캡슐(Secure Data Capsules for Deployable Data Protection)에서 발견된다. 해법은 사용자들이 계속적으로 그들의 데이터 및 데이터의 모든 파생물들(복사 및 변형된 데이터)을 추적 및 제어하는 것을 가능하게 하며, 데이터를 조작하는 임의의 비신뢰 레거시바이너리들(legacybinaries)을 지원한다. 요약하자면, 저자들은 데이터, 연관된 팔러시, 및 컨테이너의 히스토리로 구성된 암호로(cryptographically) 보호되는 컨테이너인 "데이터 캡슐"의 개념을 도입한다. 데이터 캡슐을 조작하는 주최는 신뢰 컴퓨팅 기반(TCB)을 요구한다. TCB는 데이터 캡슐을 디캡슐레이팅하고, 연관된 팔러시를 검증하고, 비신뢰 바이너리들을 실행하고, 새로운 데이터 캡슐들을 출력으로 생성한다. 비신뢰 바이너리들의 실행 중에, TCB는 시스템 호출을 가로채고, 정보 흐름 추적을 구현한다. 실제로, 정보 흐름 추적은 금지의 오버헤드(prohibitive overhead)를 더하고, {사이드 채널들, 또는 "아날로그 홀(analog hole)"로서도 알려진 "데이터-인-더-클리어 홀(data-in-the-clear hole)"을 착취하는} 강력한 공격자들에 대항하여 실패할 수 있다. 저자들에 의해 지적된 바와 같이, 정보 흐름 추적을 통해 확장 가능한 팔러시 시맨틱(extensible policy semantics)을 지원하는 것은 또한 어렵다.Another traditional solution is to know where your data is located on HotOS 2011 and 2011 (P. Maniatis et al.). Secure data capsules for deployable data protection (Secure Data Capsules for Deployable Data Protection). The solution allows users to continuously track and control all their derivatives of data and data (copied and modified data), and supports any untrusted legacy binaries that manipulate the data. In summary, authors introduce the concept of "data encapsulation", a container that is cryptographically protected consisting of data, associated parcels, and the history of the container. Organizers that manipulate data capsules require a Trusted Computing Base (TCB). The TCB decapsulates the data encapsulation, verifies the associated parcels, executes untrusted binaries, and generates new data capsules as output. During execution of untrusted binaries, the TCB intercepts system calls and implements information flow tracking. Indeed, the information flow tracking adds a prohibitive overhead and is also called a "data-in-the-clear" (also known as side channels or "analog holes" hole "to attack powerful attackers. As pointed out by the authors, it is also difficult to support extensible policy semantics through information flow tracking.
따라서, 종래 기술 해법들의 단점들 중 적어도 일부를 극복하는 해법이 필요하다는 것이 이해될 것이다.Thus, it will be appreciated that solutions are needed that overcome at least some of the disadvantages of prior art solutions.
제1 양상에서, 본 발명은 데이터 프로세싱 방법에 관한 것이다. 디바이스는 프로세싱할 암호화된 데이터, 암호화된 데이터와 연관된 프라이버시 속성들로서, 데이터 프로세싱 과제가 암호화된 데이터를 프로세싱하거나, 또는 암호화된 데이터의 데이터 프로세싱의 결과를 출력하도록 허용되기 위해 고려할 프로세싱 요구 사항들을 한정하는, 프라이버시 속성들, 스크립트, 및 스크립트에 대한 서명을 획득하고; 서명을 검증하고; 서명이 성공적으로 검증되는 경우: 암호 해독된 데이터를 획득하기 위해 암호화된 데이터를 암호 해독하고; 결과를 획득하도록, 암호 해독된 데이터를 프로세싱하기 위해 스크립트를 실행하고; 결과를 출력한다. 디바이스는 또한 프라이버시 속성들과 스크립트의 프로세싱 속성들을 비교하되, 프로세싱 속성들은 스크립트가 프라이버시 속성들을 고려하는지를 결정하기 위해 스크립트에 의해 고려된 프로세싱 요구 사항들을 한정한다.In a first aspect, the invention relates to a data processing method. A device is a device that encrypts data to be processed, privacy attributes associated with the encrypted data, the data processing task defining processing requirements to be considered to be processed to process the encrypted data or to output the result of data processing of the encrypted data Obtaining a signature for the privacy attributes, the script, and the script; Verify the signature; If the signature is successfully verified: decrypt the encrypted data to obtain decrypted data; Execute a script to process the decrypted data to obtain a result; Print the result. The device also compares the processing attributes of the script with the privacy attributes, where the processing attributes define the processing requirements considered by the script to determine if the script considers privacy attributes.
제1의 선호되는 실시예에서, 비교는 서명이 성공적으로 검증되는 경우, 암호 해독 단계 이전에 수행되고, 암호 해독은 스크립트가 프라이버시 속성들을 고려한다는 것을 결정할 때에 수행된다.In a first preferred embodiment, the comparison is performed prior to the decryption step if the signature is successfully verified, and decryption is performed when determining that the script considers privacy attributes.
제2의 선호되는 실시예에서, 비교는 프로세싱 이후에 수행되고, 출력은 스크립트가 프라이버시 속성들을 고려한다는 것을 결정할 때에 수행된다.In a second preferred embodiment, the comparison is performed after processing, and the output is performed when determining that the script considers privacy attributes.
제3의 선호되는 실시예에서, 프라이빗 키는 디바이스 내에서 봉인되고, 디바이스는 스크립트가 프라이버시 속성들을 고려한다는 것을 결정할 때에 프라이빗 키를 개봉한다.In a third preferred embodiment, the private key is sealed within the device, and the device opens the private key when it decides that the script considers privacy attributes.
제4의 선호되는 실시예에서, 디바이스는 비교 이후에 프라이버시 속성들과 프로세싱 속성들 중 적어도 하나를 삭제한다.In a fourth preferred embodiment, the device deletes at least one of the privacy attributes and the processing attributes after the comparison.
제5의 선호되는 실시예에서, 스크립트는 요청자로부터 획득되고, 디바이스는 암호화된 폼으로 결과가 출력되도록 요청자의 키를 사용하여 결과를 암호화한다.In a fifth preferred embodiment, the script is obtained from the requester, and the device encrypts the result using the requestor's key such that the result is output in an encrypted form.
제2 양상에서, 본 발명은 데이터 프로세싱을 위한 디바이스에 관한 것이다. 디바이스는 프로세싱할 암호화된 데이터를 획득하도록 구성된 적어도 하나의 인터페이스를 포함하고; 암호화된 데이터와 연관된 프라이버시 속성들을 획득하되, 프라이버시 속성들은 데이터 프로세싱 과제가 암호화된 데이터를 프로세싱하거나, 또는 암호화된 데이터의 데이터 프로세싱의 결과를 출력하도록 허용되기 위해 고려할 프로세싱 요구 사항들을 한정하고; 스크립트 및 스크립트에 대한 서명을 획득하고; 결과를 출력한다. 디바이스는: 서명을 검증하고; 서명이 성공적으로 검증되는 경우, 프라이버시 속성들 및 스크립트의 프로세싱 속성들을 비교하되, 프로세싱 속성들은 스크립트가 프라이버시 속성들을 고려하는지를 결정하기 위해 스크립트에 의해 고려된 프로세싱 요구 사항들을 한정하고; 암호 해독된 데이터를 획득하기 위해 암호화된 데이터를 암호 해독하고; 결과를 획득하도록, 암호 해독된 데이터를 프로세싱하기 위해 스크립트를 실행하도록 구성된 프로세서를 더 포함한다.In a second aspect, the invention relates to a device for data processing. The device comprising at least one interface configured to obtain encrypted data for processing; Obtaining privacy attributes associated with the encrypted data, wherein the privacy attributes define processing requirements to be considered to be allowed to process the encrypted data or to output the result of data processing of the encrypted data; Obtain signatures for scripts and scripts; Print the result. The device: verifies the signature; Comparing the processing attributes of the privacy attributes and the script if the signature is successfully verified, wherein the processing attributes define processing requirements considered by the script to determine if the script considers privacy attributes; Decrypting the encrypted data to obtain decrypted data; And a processor configured to execute the script to process the decrypted data to obtain a result.
제1의 선호되는 실시예에서, 프라이빗 키는 디바이스 내에서 봉인되고, 프로세서는 스크립트가 프라이버시 속성들을 고려한다는 것을 결정할 때에 프라이빗 키를 개봉하도록 더 구성된다.In a first preferred embodiment, the private key is sealed in the device, and the processor is further configured to open the private key when determining that the script considers privacy attributes.
제2의 선호되는 실시예에서, 프로세서는 프로세싱 요구 사항들과 프로세싱 속성들의 비교 이후에, 프라이버시 속성들과 프로세싱 속성들 중 적어도 하나를 삭제하도록 더 구성된다.In a second preferred embodiment, the processor is further configured to delete at least one of the privacy attributes and the processing attributes after a comparison of the processing requirements and the processing attributes.
제3의 선호되는 실시예에서, 인터페이스는 요청자로부터 스크립트를 획득하도록 구성되며, 요청자의 키를 더 획득하도록 구성되며, 프로세서는 암호화된 폼으로 결과가 출력되도록 요청자의 키를 사용하여 결과를 암호화하도록 더 구성된다.In a third preferred embodiment, the interface is configured to obtain a script from a requestor, and is further configured to obtain a requestor's key, and the processor uses the requestor's key to encrypt the result so that the result is output in an encrypted form Lt; / RTI >
제4의 선호되는 실시예에서, 디바이스는 데이터가 암호 해독되는 동안에 임의의 정보의 출력을 금지하도록 구성된다.In a fourth preferred embodiment, the device is configured to prohibit the output of any information while the data is decrypted.
제5의 선호되는 실시예에서, 디바이스는 신뢰 플랫폼 모듈(Trusted Platform Module)을 이용하여 구현된다. 신뢰 플랫폼 모듈이 최신-출시(late-launch) 신뢰 플랫폼 모듈 성능(capabilities)을 이용하여 출시된 신뢰 컴퓨팅 기반(Trusted Computing Base)에 의존하는 것이 유리하다.In a fifth preferred embodiment, the device is implemented using a Trusted Platform Module. It is advantageous for the trusted platform module to rely on a trusted computing base that is released using late-launch trusted platform module capabilities.
제6의 선호되는 실시예에서, 프로세서는 암호화된 데이터를 암호 해독하고, 스크립트가 프라이버시 속성들을 고려한다는 것을 성공적으로 결정할 때에만 암호 해독된 데이터를 프로세싱하도록 더 구성된다.In a sixth preferred embodiment, the processor is further configured to decrypt the encrypted data and to process the decrypted data only when the script successfully determines that it considers the privacy attributes.
제7의 선호되는 실시예에서, 프로세서는 스크립트가 프라이버시 속성들을 고려한다는 것을 성공적으로 결정할 때에만 결과를 출력하도록 더 구성된다.In a seventh preferred embodiment, the processor is further configured to output the result only when the script successfully determines that it considers the privacy attributes.
본 발명의 선호되는 특징들은 이제 첨부 도면들을 참조하여 비-제한적인 예시에 의해 설명될 것이다.Preferred features of the present invention will now be described by way of non-limiting example with reference to the accompanying drawings.
본 발명의 이용을 통해, 데이터 소유자들에게는 프로세싱, 저장, 및 네트워크의 보안에 관한 보장이 제공될 수 있다.Through the use of the present invention, data owners can be assured of processing, storage, and security of the network.
도 1은 본 발명의 선호되는 실시예에 따라 데이터 프로세싱을 위한 시스템을 도시하는 도면.
도 2는 본 발명의 선호되는 실시예에 따라 프라이빗 데이터를 프로세싱하기 위한 방법을 도시하는 도면.1 illustrates a system for data processing in accordance with a preferred embodiment of the present invention.
Figure 2 illustrates a method for processing private data in accordance with a preferred embodiment of the present invention.
도 1은 본 발명의 선호되는 실시예에 따라 데이터 프로세싱을 위한 시스템을 도시한다. 시스템(100)은 바람직하게도 다음의 엔티티들(entities)을 포함한다:Figure 1 illustrates a system for data processing in accordance with a preferred embodiment of the present invention. The
비( bee ): 각 사용자는 "비"라고 부르는 어플리케이션(110)을 가진다. 비(110)는 최종-사용자의 게이트웨이에서 유리하게 실행되지만, 또한 다른 네트워크 디바이스에서 또는 전용 박스에서 실행될 수도 있다. 비는 프라이빗 데이터 (ClearBeeData i )(i는 비의 색인), 예컨대 네트워크 트래픽에 관한 정보를 수집하고, 그것의 퍼블릭 키(K i bee )를 사용하여, 수집된 데이터를 암호화하도록 구성된다. Ratio (bee): Each user has an
비(110)는 또한 프라이버시 속성들(priv _ attr i )을 포함하는 사용자-정의된 프라이버시 팔러시를 저장하거나, 그렇지 않으면 사용자-정의된 프라이버시 팔러시에 액세스할 수 있다. 프라이버시 속성들은, 프라이빗 데이터를 프로세싱하는 분석 스크립트가 고려할 프라이버시 특성들에 관한 제한들(constraints)을 미리 정의된 포맷으로 표현한다. 속성들은, 예를 들어 프라이빗 데이터에 대해 실행될 수 있는 동작의 종류를 제한하거나, 또는 사용될 수 있는 데이터의 부분(들)을 규명할 수 있다.The
속성들은 프라이빗 데이터의 소유자가 데이터의 사용을 제한하기 위해 규명할 수 있는 불리안 조건들(Boolean conditions) 및 키워드들의 수집물로 뷰잉될 수 있다. 프라이버시 속성들은 스크립트가 데이터를 프로세싱하는 것을 허용 또는 금지하도록 스크립트의 프로세싱 속성들에 매칭될 수 있다. 속성이 하나의 조건일 때, 조건은 또한 스크립트의 실행 이후에 매칭될 수 있으며: 스크립트의 출력이 조건을 만족하는 경우, 출력은 결과로서 사용될 수 있다. 그렇지 않은 경우, 소유자 선호도들 및 조건의 표현도(expressivity)에 의존하는 적어도 두 가지의 경우들이 가능하다: 그것이 조건에 매칭될 때까지, 출력에 대한 거부 및 자동 수정. 자동 수정의 알려진 예시는 익명 조건(anonymity condition)이 충족될 때까지의 잡음의 추가이다.Attributes may be viewed as a collection of Boolean conditions and keywords that the owner of the private data can identify to limit the use of the data. The privacy attributes may be matched to the processing attributes of the script to allow or disallow the script to process the data. When an attribute is a condition, the condition can also be matched after execution of the script: if the output of the script satisfies the condition, the output can be used as a result. Otherwise, there are at least two possible cases where owner preferences and expressions depend on the expressiveness: rejection and automatic correction of the output until it matches the condition. A known example of automatic correction is the addition of noise until an anonymity condition is met.
가능한 프라이버시 속성들의 비-제한적인 목록은:A non-limiting list of possible privacy attributes is:
● 노-페이로드(No-payload): 스크립트는 어느 페이로드 데이터든지 무시함: 예컨대, IP/UDP, IP/TCP 헤더 이후의 모든 것.No-payload: The script ignores any payload data: everything after the IP / UDP, IP / TCP header, for example.
● 어그리게이트-아웃풋-온니(Aggregate-output-only): 스크립트는 입력 데이터로부터의 플레인 데이터(plain data)가 아닌 평균(means) 또는 변위치(quantiles)와 같은 글로벌 통계치들만을 출력함.Aggregate-output-only: The script outputs only global statistics, such as means or quantiles, rather than plain data from the input data.
● j-결합: 스크립트의 출력은 j개의 분명한(distinct) 데이터세트들의 적어도 한 결합임.● j-join: The output of the script is at least one combination of j distinct sets of data.
● k-결합: 스크립트의 출력은 적어도 k개의 독특한 데이터세트들의 결합이며; 추가적인 속성 데이터 값은 나머지 속성들의 세트의 값들이 적어도 k-1개의 다른 데이터세트들의 값들과 동일할 때까지 억제됨.K-join: the output of the script is a combination of at least k unique data sets; The additional attribute data value is suppressed until the values of the remaining set of attributes are equal to the values of at least k-1 other data sets.
● K-익명(anonymous): (2007, 인포메이션 시큐리티의 진보, 스프링거 US, 4페이지, V.Ciriani 외 등에 의한 "k-익명"으로부터) 스크립트의 출력은 보통 "데이터의 각각의 공개(release)는 유사-식별자들(quasi-identifiers)의 값들의 모든 결합이 적어도 k개의 응답자들에 불분명하게 매칭될 수 있도록 되어야 한다"는 하나의 k-익명 요구 사항에 매칭됨. K-익명은 k-결합.스트릭트-|-업퍼스케이션(k-combination.strict-|-obfuscation)보다 더 강한 특성이며: 질문(query)에 대한 어느 대답이라도 적어도 |기록들을 포함해야 함.● K-anonymous: (2007, information The output of the script is usually "the release of each of the data is the value of the quasi-identifiers,""k-anonymity" by security advances , Springer US, page 4, V.Ciriani et al. All associations should be made unclearly matched to at least k responders ". K-anonymity is a stronger characteristic than the k-combination. Strictive-obfuscation (k-combination.strict- | -obfuscation): any answer to a query must include at least | records.
● |-업퍼스케이션: 질문이 잇따라 일어나고(succeed) 데이터가 적어도 |기록들을 포함하는 경우에 |기록들, 또는 그렇지 않은 경우에 0기록을 포함함. • Upper-case: if the query succeeds and the data contains at least | records, the records contain records, or 0 otherwise.
을 포함한다..
비(110)는, 예컨대 h가 해시 함수(hash function) {또는 다른 적절한 일방 함수(one-way function)}인 암호의 속박(cryptographicbind): attr i =( priv _ attr i , h(clearBeeData i ))에 의해 팔러시를 프라이빗 데이터와 연관시키도록 구성된다. 속박된 팔러시(bound policy)(attr i )는 프라이빗 데이터와 함께 바람직하게 저장된다.
비(110)는 비의(bee's) 암호화 키(K i bee )를 사용하여 속박된 팔러시(attr i ) 및 프라이빗 데이터(ClearBeeData i )를 암호화하고, 클라우드에 유리하게 위치된 '하이브(hive)'(120)라고 부르는 저장 디바이스에 암호화된 데이터({clearBeeData i }K i bee , {attr i }K i bee })를 출력하도록 더 구성된다.The
비의 키(K i bee )와 연관된 프라이빗 키의 소유자만이 암호화된 데이터를 암호 해독할 수 있다. 시스템에서의 유연성을 허용하기 위해, 비(110)는 또한 프록시 재-암호화 키(proxy re-encryption key)(K i bee → Bk )를 생성한다. 이 키는 비의 퍼블릭 키(K i bee )를 통해 암호화되는 것을 대신하여, 평문(plaintext)을 통과(passing)하지 않고, 소위 비-키퍼(bee-keeper)(140)의 퍼블릭 키를 통해 암호화되도록 암호화된 데이터의 재-암호화를 허용한다. 프록시 재-암호화에 대한 추가적인 세부사항들은 G.Ateniese 외 등의 Improved Proxy Re-encryption Schemes with Applications to Secure Distributed Storage, ACM Transactions of Information and System Security, 9(1):1-30, Fe. 2006에서 발견될 수 있다. ElGamal 암호화에 기초한 적절한 프록시 재-암호화 체계는 M.Blaze 외 등의 "Divertible protocols and atomic proxy cryptography"에 설명된다. 이에 따라, 재-암호화는 비신뢰 제3자에 의해 수행될 수 있다. 한 선호되는 실시예에서, 재-암호화 키(K i bee → Bk )는 하이브(120)에 출력된다.Only the owner of the private key associated with the key K i bee can decrypt the encrypted data. To allow for flexibility in the system,
하이브 ( hive ): 하이브(120)는 비(110)로부터 수신된 암호화된 데이터를 저장하고, 암호화된 데이터를 프록시 재-암호화하고, 재-암호화된 데이터({clearBeeData i }K i Bk , {attr i }K i Bk })를 저장하도록 구성된 장치이다. 따라서, 특히 하이브(120)가 프록시 재-암호화 동안 암호화되지 않은 데이터에 액세스할 수 없기 때문에, 하이브(120)에 대한 신뢰 요구 사항이 매우 낮다는 것이 이해될 것이다. 하이브(120)는 잘-알려진 클라우드 저장 및 프로세싱을 이용하여 유리하게 구현된다. Hives (hive): hive 120 stores the encrypted data received from the non-110, and the encrypted data proxy re-encrypts and re-encrypted data ({clearBeeData i} K i Bk, {attr i } K i Bk }. Thus, it will be appreciated that the trust requirement for hive 120 is very low, especially since hive 120 can not access unencrypted data during proxy re-encryption. The hive 120 is advantageously implemented using well-known cloud storage and processing.
스크립트 증명 권한( Script Certification Authority ): 스크립트 증명 권한(130)은 비(bee) 프라이빗 데이터를 프로세싱하도록 실행될 요청자들(150)로부터 수신된 데이터 프로세싱 과제들("스크립트들")을 평가(assessing)하는 것을 담당한다. 스크립트 증명 권한(130)은 주어진 스크립트가 그것의 주장된 프로세싱 속성들을 위배 또는 충족하는지를 검증한다. 스크립트(135)의 성공적인 검증 시에, 스크립트 증명 권한(130)은 스크립트(135)가 순응하는 프로세싱 속성들을 포함하는 스크립트(135)에 대한 디지털 증명서(certificate)를 발행한다. 보다 더 공식적으로, 스크립트 증명 권한(130)의 출력은: {script , priv _ attr script , K script }K CA -1 , 즉 브라켓들(brackets) 내에서의 데이터에 대한(over) 키(K CA -1 )를 사용한 서명이며, 여기서 K script 는 요청자(150)의 퍼블릭 키이며, K CA - 1 는 스크립트 증명 권한(130)의 퍼블릭 키이다. Script proof authority ( Script Certification Authority): proof of
스크립트 증명 권한(130)이 주장된 프로세싱 속성들에 대한 스크립트의 순응(compliance)을 어떻게 검증하는지는 본 발명의 범주를 넘어선다. 가장 간단한 폼에 있어서, 권한은 서명을 첨부하기 전에 스크립트들을 수동으로 조사하는 기술 위원회(technical committee)로 구성될 수 있다. 기술 위원회의 회원들은, 부분적인 키(partial key)를 사용하여 각 회원이 서명하는 서명 체계를 사용하는 것이 가능하기 때문에, 물리적으로 소집될 필요가 있다. 스크립트 분석이 또한 적절한 종래 기술의 스크립트 분석 프로그램을 실행하는 스크립트 증명 권한 디바이스(130)에 의해 자동으로 수행될 수 있다는 것을 당업자는 이해할 것이다.How the
비키퍼: 비키퍼(140)는 하이브(120)로부터의 다운로드 이후에 암호화 또는 재-암호화된 데이터의 실행을 위해 요청자(150)로부터 하나 이상의 스크립트들을 수신하는 디바이스이다. 비키퍼(140)는 신뢰 플랫폼 모듈(TPM)을 사용하여 바람직하게 구현된다. TPM은 스크립트에 대한 안전한 실행 환경의 설정 및 봉인된 저장을 이용하여 비키퍼들의 프라이빗 키(K -1 Bk )의 안전한 저장을 가능하게 한다. Non-keeper : The non-keeper 140 is a device that receives one or more scripts from the requestor 150 for execution of encrypted or re-encrypted data after downloading from the hive 120. The non-keeper 140 is preferably implemented using a Trusted Platform Module (TPM). The TPM enables secure storage of non-keeper private keys ( K -1 Bk ) using the secure execution environment for the script and sealed storage.
스크립트에 대한 안전한 실행 환경은 {예컨대, Intel용 senter 및 AMD용 skinit을 이용하여 - Intel® Trusted Execution Technology (Intel® TXT), Software Development Guide Measured Launched Environment Developer's Guide, March 2011, section 1.8, page 12 및 AMD Platform for Trustworthy Computing® 2003 Advanced Micro Devices, Inc., page 17을 각각 확인} 소위 최신-출시(late-launch) TPM 성능을 이용하여 출시된 신뢰 컴퓨팅 기반(TCB)에 의존하여 바람직하게 획득된다. 최신-출시(skinit 또는 senter)는 PCR17의 값을 0으로 리셋하며, TCB:PCR17←H(0||H(TCB)의 측정(measurement)(해시)을 통해 PCR17의 값을 확장한다. 이러한 측정은, 이것이 옳은 경우, 비키퍼의 프라이빗 키의 개봉: Unseal(C) K-1 Bk 을 허용한다. (더 상세하게는, Jonathan M. McCune 외 등의 "Flicker: An Execution Infrastructure for TCB Minimization", section 2.4을 확인한다.) 비키퍼의 키-쌍(key-pair)은 (예컨대, 비키퍼의 셋업 시에) 미리 생성 및 봉인되었다.The secure execution environment for the scripts is provided in the Intel ® Trusted Execution Technology (Intel ® TXT), Software Development Guide Measured Launched Environment Developer's Guide, March 2011, section 1.8, page 12 preferably obtained, depending on the market (late-launch) a trusted computing base (TCB) released by the TPM performance - AMD Platform for Trustworthy computing ® 2003 Advanced Micro Devices, Inc., check page 17}, respectively, the so-called date. The latest-release (skinit or senter) resets the value of PCR17 to 0 and expands the value of PCR17 through the measurement (hash) of TCB: PCR 17 ← H (0 || H (TCB) The measurement allows Unkealer 's private key unpacking: Unseal ( C ) K -1 Bk if this is true (more specifically, Jonathan M. McCune et al., "Flicker: An Execution Infrastructure for TCB Minimization" , see section 2.4.) The key-pair of a non-keeper has been previously created and sealed (eg, at the time of non-keeper setup).
TCB는 도 2에 도시된 프라이빗 데이터를 프로세싱하기 위한 방법에 있어서 적어도 다음의 행위들을 수행하도록 구성된다:The TCB is configured to perform at least the following actions in a method for processing the private data shown in Figure 2:
(ⅰ) 암호화된 프라이빗 데이터 및 팔러시들({clearBeeData i }K i bee ,{attr i }K i bee )의 수신(S202);(I) receiving encrypted private data and parcels { clearBeeData i } K i bee , { attr i } K i bee ( S 202 );
(ⅱ) 서명된 스크립트 및 서명된 속성들{(script, priv _ attr script )K CA }의 수신(S204);(Ⅱ) receiving (S204) the signature of the script and the signature property {(script, priv _ attr script ) K CA};
(ⅲ) (아마도, 스크립트와 분리된) 요청자(150)의 퍼블릭 키의 수신(S206);(Iii) receiving (S206) the public key of the requester 150 (perhaps separate from the script);
(ⅳ) 스크립트 증명 권한(130)의 퍼블릭 키를 사용한 스크립트 서명의 검증(S208). 서명이 성공적으로 검증되지 않는 경우, 본 방법이 중단된다는 것이 주목될 것이다.(Iv) Verifying the script signature using the public key of the script proof authority 130 (S208). It will be noted that if the signature is not successfully verified, the method is discontinued.
(ⅴ) 비키퍼들의 프라이빗 키(K -1 Bk )의 개봉(S210);( V ) opening the private key ( K- 1 Bk ) of the non-keepers (S210);
(ⅵ) 팔러시, 즉 각 비의(bee's) 프라이빗 데이터의 프라이버시 속성들의 추출 및 암호 해독(단계 S212), 및 스크립트 속성들의 추출 및 암호 해독(단계 S214), 스크립트의 프라이버시 속성들과의 비교(S216), 및 암호 해독된 프라이버시 속성들의 삭제;(Vi) extracting and decrypting the privacy properties of the parity, i.e., bee's private data (step S212), and extracting and decrypting the script attributes (step S214) S216), and deleting the decrypted privacy attributes;
(ⅶ) 스크립트가 비의 데이터에 속박된 프라이버시 팔러시를 고려하는 경우에만, 비의 프라이빗 데이터의 암호 해독(S218);(Iii) decrypt private data of non-use only (S218) only when the script considers privacy parcels bound to non-data;
(ⅷ) 암호 해독된 데이터에 대한 스크립트의 실행(S220);(Iii) execution of a script on decrypted data (S220);
(ⅸ) 스크립트에 포함된 요청자(150)의 퍼블릭 키(K script )를 사용한 결과의 암호화(S222); 및( C ) encrypting the result of using the public key (Kscript) of the requester 150 included in the script (S222); And
(ⅹ) 암호화된 결과의 출력(S224)(X) output of the encrypted result (S224)
어떤 데이터도 인 더 클리어인 동안에는, TCB가 어떤 시스템 상호 작용도 허용하지 않는 것이 바람직하다. 시스템 상호 작용은 데이터 부분(portion)을 스크린에 디스플레이하기, 출력 파일과는 상이한 자원을 기입하기, 및 네트워크에 액세스하기를 포함한다. 이러한 방식으로 (그리고 최신-출시로 인한 안전한 실행 환경을 이용하여), 심지어 데이터 프로세싱 과제를 실행하는 운영 체제를 손상(compromise)시키는 강력한 공격자들, 또는 데이터 프로세싱 과제들을 대체 또는 업데이트하려고 시도하는 공격자들 조차도 프라이빗 데이터에 액세스할 수 없다. 이는 스크립트가 어떤 시스템 상호 작용도 허용하지 않는 증명 권한에 의한 체킹(checking)을 포함하는 여러 수단에 의해, 또는 리눅스 2.6.23에 포함된 SECCOMP와 같은 외부 메커니즘들을 이용하여 수행될 수 있으며, 이는 나중에 프로세스의 시스템 상호 작용 성능을 철저하게 제한한다. 이러한 메커니즘에 대한 추가적인 세부 사항들은 리눅스 prctlcommand의 맨(man) 페이지 내의 PR_SET_SECCOMP의 설명에서 발견될 수 있다.While any data is in-clear, it is desirable that the TCB does not allow any system interaction. System interaction includes displaying a data portion on the screen, writing a different resource than the output file, and accessing the network. Powerful attackers that compromise an operating system that even implements a data processing task in this way (and using the latest run-time safe execution environment), or attackers attempting to replace or update data processing tasks Even private data can not be accessed. This can be done by several means, including checking by the proof authority that the script does not allow any system interaction, or by using external mechanisms such as SECCOMP included in Linux 2.6.23, It strictly limits the system interaction performance of the process. Further details on these mechanisms can be found in the description of PR_SET_SECCOMP in the man page of the Linux prctlcommand.
프라이빗 데이터가 비키퍼의 중앙 메모리에 저장하기에 너무 크며, 이러한 경우에 TCB가 비신뢰의 외부 저장소에 세션 암호화된 청크들(session encrypted chunks)을 임시로 저장하도록 사용하기 위한 대칭 세션 키(symmetricsession key)를 획득하도록 구성되는 것이 일어날 수 있다고 이해될 것이다. 이는 TCB 내의 암호화/암호 해독 루틴들에 의해, 또는 저장 키를 사용한 TPM_Seal 및 TPM_unseal 동작들에 의해 수행될 수 있다.The private data is too large to be stored in the non-keeper's central memory and in this case the symmetric session key for use by the TCB to temporarily store session encrypted chunks in untrusted external storage ≪ RTI ID = 0.0 > and / or < / RTI > This can be done by encryption / decryption routines in the TCB, or by TPM_Seal and TPM_unseal operations using the store key.
다음의 알고리즘은 비키퍼의 TCB에 대한 의사-코드의 한 예시이다:The following algorithm is an example of a pseudocode for a non-keeper TCB:
procedure VERIFYANDRUNSCRIPT((script, priv _ attr script , K script ), signature script , {(data i ; attr i ), 0≤i<n}) procedure V ERIFY A ND R UN S CRIPT ((script, priv _ attr script, K script), signature script, {(data i; attr i), 0≤ i <n})
scriptInputData = //스크립트에 의해 프로세싱될 데이터. 초기에는 비어있음(Empty) scriptInputData = // The data to be processed by the script. Initially Empty
if !Verify KCA (signature script , (script, priv _ attr script , K script )) then if ! Verify KCA (signature script, (script , priv _ attr script, K script)) then
//K CA 를 이용하여 스크립트 서명을 검증// Validate script signature using K CA
return //서명이 무효인 경우 종료 return // End if signature is invalid
endend ifif
Unseal(C)→ -1 Bk . //비키퍼의 프라이빗 키를 개봉 Unseal ( C ) → -1 Bk . // Unlock the private key of the non-keeper
for all i = 0 →ndo //모든 비(bee) 데이터에 걸쳐 반복 for all i = 0 → n do // iterate over all the bee data
(priv _ attr data , hash) = {attr i }K-1 Bk //비 데이터 프라이버시 속성들을 판독 (Priv _ attr data, hash) = {attr i} K -1 Bk // reading non-data privacy attributes
if priv _ attr data ^ priv _ attr script then if priv _ attr data _ priv _ attr script then
//데이터 프라이버시 속성들 vs 스크립트 프라이버시 속성들을 검증// validate data privacy attributes vs script privacy attributes
clearBeeData i = {data i }K-1 Bk clearBeeData i = { data i } K -1 Bk
//속성들이 호환 가능한 경우, 비 데이터를 암호 해독// If the attributes are compatible, decrypt the non-data
if hash! = h(clearBeeData i ) then if hash ! = h ( clearBeeData i ) then
//속성들이 데이터에 속하는 지를 검증// Verify that the attributes belong to the data
return //속성들이 데이터에 속하지 않는 경우 종료 return // end if the attributes do not belong to the data
endend ifif
scriptInputData= scriptInputData∪clearBeeData i scriptInputData = scriptInputData ∪ clearBeeData i
//스크립트의 입력 데이터에 암호 해독된 비 데이터를 더함// Add the decrypted data to the script's input data
endend ifif
endend forfor
out = Run(script; scriptInputData) //집합된 데이터에 대한 스크립트를 실행 out = Run ( script ; scriptInputData ) // Run the script for the aggregated data
out = {out}K script //K script 를 통해 스크립트 출력을 암호화 out = { out } K script // Encrypt script output through K script
endend procedureprocedure
비록 명료함을 목적으로 도시되지 않았을지라도, 본 시스템의 디바이스는, 예를 들어 프로세서들, 메모리, 사용자 인터페이스들, 통신 인터페이스들, 및 운영 체제들과 같은 적절한 기능을 위해 요구되는 필수 하드웨어 및 소프트웨어 구성 요소들을 포함한다는 것이 이해될 것이다.Although not shown for purposes of clarity, a device of the present system may include the necessary hardware and software components required for proper functionality, such as, for example, processors, memory, user interfaces, communication interfaces, and operating systems ≪ / RTI >
따라서, 본 발명이, 용량을 검증 및 제한한 신뢰 환경 내에서를 제외하고, 데이터를 암호화되게 유지하는 것과, 데이터 프라이버시 속성들 및 스크립트 프라이버시 속성들이 호환 가능한 경우, 그리고 이러한 경우에만 데이터를 프로세싱하는 것을 제안한다는 것이 확인될 것이다.Thus, it should be understood that the present invention can be used to maintain data confidential, except in trusted environments where capacity is verified and limited, and when data privacy attributes and script privacy attributes are compatible, and in this case only data processing It will be confirmed that it proposes.
본 발명의 이용을 통해, 데이터 소유자들에게는 프로세싱, 저장, 및 네트워크의 보안에 관한 보장이 제공될 수 있다. 프로세싱 보안은 데이터가 소유자에 의해 허용된 방식으로만 프로세싱되는 것을 의미하며; 이는 프라이버시 속성들을 이용하여 성취된다. 저장 및 네트워크 보안은 데이터가, 권한이 부여된 스크립트들을 실행하는 신뢰 부분(trusted part)을 제외하고, 시스템의 어느 부분에도 액세스될 수 없음을 의미한다.Through the use of the present invention, data owners can be assured of processing, storage, and security of the network. Processing security means that the data is processed only in a manner allowed by the owner; This is accomplished using privacy attributes. Storage and network security means that data can not be accessed anywhere in the system except for the trusted part that executes the authorized scripts.
본 발명이 프라이버시 팔러시들이 고려되는 것의 보장을 증가시키는 해법을 제공할 수 있다는 것을 당업자는 이해할 것이다.It will be appreciated by those skilled in the art that the present invention can provide a solution to increase the assurance of what the privacy parcels are being considered.
본 설명, 및 (적절한 경우) 청구항들 및 도면들에 개시된 각 특징은 독립적으로, 또는 임의의 적절한 결합으로 제공될 수 있다. 하드웨어로 구현되는 것으로 설명된 특징들은 또한 소프트웨어로도 구현될 수 있으며, 그 반대일 수도 있다. 청구항들에 나타나는 참조 부호들은 단지 예시의 목적일 뿐이며, 청구항들의 범주에 어떤 제한적인 영향도 미치지 않을 것이다.Each feature described in this description, and (where appropriate) the claims and drawings may be provided independently or in any suitable combination. Features described as being implemented in hardware may also be implemented in software, and vice versa. The reference signs in the claims are for illustrative purposes only and are not to be construed as limiting the scope of the claims.
110: 비(bee) 120: 하이브
130: 스크립트 증명 권한 140: 비키퍼
150: 요청자110: Bee 120: Hive
130: Script Proof Authorization 140: Non-Keeper
150: Requestor
Claims (15)
상기 방법은, 프로세서를 포함하는 디바이스(140)에서,
프로세싱할 암호화된 데이터(encrypted data)를 획득하는 단계(S202)와,
암호화된 데이터와 연관된 프라이버시 속성들(privacy attributes)을 획득하는 단계(S202)로서, 프라이버시 속성들은 데이터 프로세싱 과제가 암호화된 데이터를 프로세싱하거나, 또는 암호화된 데이터의 데이터 프로세싱의 결과를 출력하도록 허용되기 위해 고려(respect)할 프로세싱 요구 사항들을 한정하는, 프라이버시 속성들을 획득하는 단계(S202)와,
스크립트 및 스크립트에 대한 서명(signature)을 획득하는 단계(S204)와,
서명을 검증하는 단계(S206)와,
서명이 성공적으로 검증되는 경우,
암호 해독된 데이터(decrypted data)를 획득하기 위해 암호화된 데이터를 암호 해독하는 단계(S218)와,
결과를 획득하도록, 암호 해독된 데이터를 프로세싱하기 위해 스크립트를 실행하는 단계(S220)와,
결과를 출력하는 단계(S224)
를 포함하고,
상기 방법은 프라이버시 속성들과 스크립트의 프로세싱 속성들을 비교하는 단계(S216)를 더 포함하며, 프로세싱 속성들은 스크립트가 프라이버시 속성들을 고려하는지를 결정하기 위해 스크립트에 의해 고려된 프로세싱 요구 사항들을 한정하는, 데이터 프로세싱 방법.CLAIMS 1. A data processing method comprising:
The method includes, in a device (140) comprising a processor,
Obtaining encrypted data (S202) to be processed,
Obtaining privacy attributes associated with the encrypted data (S202), the privacy attributes indicating that the data processing task is allowed to process the encrypted data or to output the result of the data processing of the encrypted data Obtaining (S202) privacy attributes that define processing requirements to respect,
Acquiring a signature for the script and the script (S204)
(S206) of verifying the signature,
If the signature is successfully verified,
Decrypting the encrypted data (S218) to obtain decrypted data,
Executing a script to process the decrypted data to obtain a result (S220)
The step of outputting the result (S224)
Lt; / RTI >
The method further comprises comparing (S216) the processing attributes of the script with the privacy attributes, wherein the processing attributes define the processing requirements considered by the script to determine if the script considers privacy attributes, Way.
적어도 하나의 인터페이스로서,
프로세싱할 암호화된 데이터를 획득하고,
암호화된 데이터와 연관된 프라이버시 속성들을 획득하되, 프라이버시 속성들은 데이터 프로세싱 과제가 암호화된 데이터를 프로세싱하거나, 또는 암호화된 데이터의 데이터 프로세싱의 결과를 출력하도록 허용되기 위해 고려(respect)할 프로세싱 요구 사항들을 한정하는, 프라이버시 속성들을 획득하고,
스크립트 및 스크립트에 대한 서명을 획득하고,
결과를 출력하도록 구성된 적어도 하나의 인터페이스와,
프로세서로서,
서명을 검증하고,
서명이 성공적으로 검증되는 경우, 프라이버시 속성들과 스크립트의 프로세싱 속성들을 비교하되, 프로세싱 속성들은 스크립트가 프라이버시 속성들을 고려하는지를 결정하기 위해 스크립트에 의해 고려된 프로세싱 요구 사항들을 한정하는, 프라이버시 속성들과 스크립트의 프로세싱 속성들을 비교하고,
암호 해독된 데이터를 획득하기 위해 암호화된 데이터를 암호 해독하고,
결과를 획득하도록, 암호 해독된 데이터를 프로세싱하기 위해 스크립트를 실행하도록 구성된 프로세서
를 포함하는, 데이터 프로세싱을 위한 디바이스.A device (140) for data processing,
At least one interface,
Acquiring encrypted data to be processed,
Privacy attributes associated with the encrypted data are obtained, the privacy attributes defining the processing requirements to be considered to be allowed to process encrypted data or to output the result of data processing of the encrypted data. To obtain privacy attributes,
Obtain signatures for scripts and scripts,
At least one interface configured to output a result,
A processor,
Verifying the signature,
Comparing the privacy attributes and the processing attributes of the script when the signature is successfully verified, wherein the processing attributes define the processing requirements considered by the script to determine if the script considers the privacy attributes, Lt; RTI ID = 0.0 >
Decrypting the encrypted data to obtain decrypted data,
A processor configured to execute the script to process the decrypted data to obtain a result,
/ RTI > A device for data processing, comprising:
상기 적어도 하나의 인터페이스는 요청자로부터 스크립트를 획득하도록 구성되고, 요청자의 키를 더 획득하도록 구성되며, 프로세서는 암호화된 폼으로 결과가 출력되도록 요청자의 키를 사용하여 결과를 암호화하도록 더 구성되는, 데이터 프로세싱을 위한 디바이스.8. The method of claim 7,
Wherein the at least one interface is configured to obtain a script from a requestor and is further configured to obtain a requestor's key and wherein the processor is further configured to encrypt the result using the requestor's key such that the result is output in an encrypted form, Devices for processing.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP13305014.6 | 2013-01-09 | ||
EP13305014.6A EP2755158A1 (en) | 2013-01-09 | 2013-01-09 | Method and device for privacy-respecting data processing |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20140090571A true KR20140090571A (en) | 2014-07-17 |
Family
ID=47678650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140001877A Withdrawn KR20140090571A (en) | 2013-01-09 | 2014-01-07 | Method and device for privacy-respecting data processing |
Country Status (5)
Country | Link |
---|---|
US (1) | US20140195818A1 (en) |
EP (2) | EP2755158A1 (en) |
JP (1) | JP2014134799A (en) |
KR (1) | KR20140090571A (en) |
CN (1) | CN103973443A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200107538A (en) * | 2019-03-08 | 2020-09-16 | 한국전자통신연구원 | System and method for generating secure profile of container instance |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105408913B (en) * | 2013-08-21 | 2019-03-15 | 英特尔公司 | Process data privately in the cloud |
CN106104549A (en) * | 2014-03-07 | 2016-11-09 | 诺基亚技术有限公司 | Method and apparatus for the data of verification process |
US9710672B2 (en) * | 2014-09-08 | 2017-07-18 | Uri Jacob Braun | System for and method of controllably disclosing sensitive data |
US9935995B2 (en) * | 2014-12-23 | 2018-04-03 | Mcafee, Llc | Embedded script security using script signature validation |
US20170293913A1 (en) * | 2016-04-12 | 2017-10-12 | The Governing Council Of The University Of Toronto | System and methods for validating and performing operations on homomorphically encrypted data |
JP6595959B2 (en) * | 2016-07-13 | 2019-10-23 | 株式会社Kddi総合研究所 | Privacy authentication system, privacy authentication method, and privacy authentication program |
EP3270321B1 (en) * | 2016-07-14 | 2020-02-19 | Kontron Modular Computers SAS | Technique for securely performing an operation in an iot environment |
KR102467596B1 (en) | 2016-07-29 | 2022-11-16 | 엔체인 홀딩스 리미티드 | Blockchain implementation method and system |
CN106878327A (en) * | 2017-03-22 | 2017-06-20 | 江苏金易达供应链管理有限公司 | Towards the login method of auto service platform |
US10635570B2 (en) * | 2017-09-29 | 2020-04-28 | Oracle International Corporation | Memory leak profiling events |
CN108737371A (en) * | 2018-04-08 | 2018-11-02 | 努比亚技术有限公司 | Hive data access control methods, server and computer storage media |
US20190332814A1 (en) * | 2018-04-27 | 2019-10-31 | Nxp B.V. | High-throughput privacy-friendly hardware assisted machine learning on edge nodes |
EP3667512A1 (en) | 2018-12-11 | 2020-06-17 | Siemens Aktiengesellschaft | A cloud platform and method for efficient processing of pooled data |
CN110619226A (en) * | 2019-09-12 | 2019-12-27 | 秒针信息技术有限公司 | Platform-based data processing method, system, equipment and storage medium |
US12099997B1 (en) | 2020-01-31 | 2024-09-24 | Steven Mark Hoffberg | Tokenized fungible liabilities |
CN112948884B (en) * | 2021-03-25 | 2022-12-09 | 中国电子科技集团公司第三十研究所 | A method and system for implementing big data access control on application-level users |
US12190112B2 (en) | 2022-01-24 | 2025-01-07 | Oracle International Corporation | Cooperative garbage collection barrier elision |
CN115037711B (en) * | 2022-06-07 | 2024-03-29 | 元心信息科技集团有限公司 | Data processing method, device, electronic equipment and computer readable storage medium |
US12197324B1 (en) | 2023-08-01 | 2025-01-14 | Oracle International Corporation | Thread-local garbage collection |
US12355770B2 (en) * | 2023-10-03 | 2025-07-08 | strongDM, Inc. | Identity and activity based network security policies |
US12399820B1 (en) | 2024-02-22 | 2025-08-26 | Oracle International Corporation | Selecting garbage collection processes |
US12306750B1 (en) | 2024-02-22 | 2025-05-20 | Oracle International Corporation | Selecting garbage collection processes |
US12242599B1 (en) | 2024-09-27 | 2025-03-04 | strongDM, Inc. | Fine-grained security policy enforcement for applications |
US12348519B1 (en) | 2025-02-07 | 2025-07-01 | strongDM, Inc. | Evaluating security policies in aggregate |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6292899B1 (en) * | 1998-09-23 | 2001-09-18 | Mcbride Randall C. | Volatile key apparatus for safeguarding confidential data stored in a computer system memory |
US20020144109A1 (en) * | 2001-03-29 | 2002-10-03 | International Business Machines Corporation | Method and system for facilitating public key credentials acquisition |
US7478157B2 (en) * | 2001-11-07 | 2009-01-13 | International Business Machines Corporation | System, method, and business methods for enforcing privacy preferences on personal-data exchanges across a network |
US20040003248A1 (en) * | 2002-06-26 | 2004-01-01 | Microsoft Corporation | Protection of web pages using digital signatures |
US7401352B2 (en) * | 2002-08-30 | 2008-07-15 | International Business Machines Corporation | Secure system and method for enforcement of privacy policy and protection of confidentiality |
US20040123105A1 (en) * | 2002-12-19 | 2004-06-24 | International Business Machines Corporation | Security object with CPU attributes |
US7206758B2 (en) * | 2003-11-12 | 2007-04-17 | International Business Machines Corporation | Method, system and computer program product for identifying and implementing collected privacy policies as aggregate privacy policies in electronic transactions |
US20050283826A1 (en) * | 2004-06-22 | 2005-12-22 | Sun Microsystems, Inc. | Systems and methods for performing secure communications between an authorized computing platform and a hardware component |
US7634085B1 (en) * | 2005-03-25 | 2009-12-15 | Voltage Security, Inc. | Identity-based-encryption system with partial attribute matching |
US9537960B2 (en) * | 2005-04-01 | 2017-01-03 | Telefonaktiebolaget L M Ericsson (Publ) | Multi-operator telecommunication distribution of service content |
US20080270802A1 (en) * | 2007-04-24 | 2008-10-30 | Paul Anthony Ashley | Method and system for protecting personally identifiable information |
US8156159B2 (en) * | 2009-02-11 | 2012-04-10 | Verizon Patent And Licensing, Inc. | Data masking and unmasking of sensitive data |
US8312272B1 (en) * | 2009-06-26 | 2012-11-13 | Symantec Corporation | Secure authentication token management |
JPWO2011081104A1 (en) * | 2010-01-04 | 2013-05-09 | 日本電気株式会社 | Communication system, authentication device, control server, communication method, and program |
US9118666B2 (en) * | 2010-06-30 | 2015-08-25 | Google Inc. | Computing device integrity verification |
US8527748B2 (en) * | 2010-10-01 | 2013-09-03 | Schneider Electric USA, Inc. | System and method for hosting encrypted monitoring data |
WO2012073409A1 (en) * | 2010-12-01 | 2012-06-07 | Nec Corporation | Communication system, control device, communication method, and program |
JP5606344B2 (en) * | 2011-01-25 | 2014-10-15 | 三菱電機株式会社 | Signature processing system, key generation device, signature device, verification device, signature processing method, and signature processing program |
US9357331B2 (en) * | 2011-04-08 | 2016-05-31 | Arizona Board Of Regents On Behalf Of Arizona State University | Systems and apparatuses for a secure mobile cloud framework for mobile computing and communication |
US9049023B2 (en) * | 2011-05-24 | 2015-06-02 | Zeutro Llc | Outsourcing the decryption of functional encryption ciphertexts |
US8868654B2 (en) * | 2011-06-06 | 2014-10-21 | Microsoft Corporation | Privacy-preserving matching service |
CN102244659A (en) * | 2011-06-30 | 2011-11-16 | 成都市华为赛门铁克科技有限公司 | Execution method and apparatus of security policy script and security policy system |
WO2013009290A1 (en) * | 2011-07-11 | 2013-01-17 | Hewlett-Packard Development Company, Lp | Policy based data management |
US8898478B2 (en) * | 2012-06-15 | 2014-11-25 | Mitsubishi Electric Research Laboratories, Inc. | Method for querying data in privacy preserving manner using attributes |
US8856789B2 (en) * | 2012-09-06 | 2014-10-07 | Assured Information Security, Inc. | Facilitating execution of a self-modifying executable |
US8880885B2 (en) * | 2012-10-09 | 2014-11-04 | Sap Se | Mutual authentication schemes |
-
2013
- 2013-01-09 EP EP13305014.6A patent/EP2755158A1/en not_active Withdrawn
-
2014
- 2014-01-03 EP EP14150171.8A patent/EP2755159A1/en not_active Withdrawn
- 2014-01-06 US US14/147,942 patent/US20140195818A1/en not_active Abandoned
- 2014-01-07 KR KR1020140001877A patent/KR20140090571A/en not_active Withdrawn
- 2014-01-09 JP JP2014002673A patent/JP2014134799A/en active Pending
- 2014-01-09 CN CN201410010538.0A patent/CN103973443A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200107538A (en) * | 2019-03-08 | 2020-09-16 | 한국전자통신연구원 | System and method for generating secure profile of container instance |
US11449600B2 (en) | 2019-03-08 | 2022-09-20 | Electronics And Telecommunications Research Institute | System and method for generating security profile of container instance |
Also Published As
Publication number | Publication date |
---|---|
EP2755158A1 (en) | 2014-07-16 |
EP2755159A1 (en) | 2014-07-16 |
CN103973443A (en) | 2014-08-06 |
US20140195818A1 (en) | 2014-07-10 |
JP2014134799A (en) | 2014-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20140090571A (en) | Method and device for privacy-respecting data processing | |
US9946884B2 (en) | System and method for cryptographic suite management | |
US8261091B2 (en) | Solid-state memory-based generation and handling of security authentication tokens | |
US9602549B2 (en) | Establishing trust between applications on a computer | |
US9710659B2 (en) | Methods and systems for enforcing, by a kernel driver, a usage restriction associated with encrypted data | |
Ongtang et al. | Porscha: Policy oriented secure content handling in Android | |
US8356361B2 (en) | Secure co-processing memory controller integrated into an embedded memory subsystem | |
US20220114249A1 (en) | Systems and methods for secure and fast machine learning inference in a trusted execution environment | |
KR101883816B1 (en) | Technologies for supporting multiple digital rights management protocols on a client device | |
US9973480B2 (en) | Multi-level security enforcement utilizing data typing | |
CN110199284A (en) | Crossover-platform surrounds area's identity | |
US20230198765A1 (en) | Multi-directional zero-knowledge attestation systems and methods | |
CN112041838A (en) | Safe Zone Interaction | |
KR20230098156A (en) | Encrypted File Control | |
JP7465043B2 (en) | Method and apparatus for purpose-specific access control based on data encryption - Patents.com | |
US20240152641A1 (en) | Secure collaborative laboratory data analytics system | |
Itani et al. | SNUAGE: an efficient platform-as-a-service security framework for the cloud | |
Lee-Thorp | Attestation in trusted computing: Challenges and potential solutions | |
Mazmudar | Mitigator: Privacy policy compliance using Intel SGX | |
Arshad et al. | Attribute-based encryption with enforceable obligations | |
US20240078321A1 (en) | Function-based service framework based on trusted execution environment | |
Simpson et al. | Digital Key Management for Access Control of Electronic Records. | |
Cabianca | Ensuring Data Protection | |
Gurav et al. | Improved sun flow optimization (I-SFO) algorithm based de-centralized information flow control for multi-tenant cloud virtual machines | |
Spyra | Embedded document security using sticky policies and identity based encryption. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20140107 |
|
PG1501 | Laying open of application | ||
PC1203 | Withdrawal of no request for examination | ||
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |