KR20140100986A - 데이터 보호를 위해 사이퍼 오브젝트를 사용하기 위한 시스템 및 방법 - Google Patents

데이터 보호를 위해 사이퍼 오브젝트를 사용하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20140100986A
KR20140100986A KR1020147018657A KR20147018657A KR20140100986A KR 20140100986 A KR20140100986 A KR 20140100986A KR 1020147018657 A KR1020147018657 A KR 1020147018657A KR 20147018657 A KR20147018657 A KR 20147018657A KR 20140100986 A KR20140100986 A KR 20140100986A
Authority
KR
South Korea
Prior art keywords
participant
computer
intelligent cipher
transport object
access
Prior art date
Application number
KR1020147018657A
Other languages
English (en)
Inventor
그레고리 스콧 스미스
멜라니 리 스미스 위드
다니엘 마이클 피셔
엘케 엠. 리드너
Original Assignee
이차지2 코포레이션
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 이차지2 코포레이션 filed Critical 이차지2 코포레이션
Publication of KR20140100986A publication Critical patent/KR20140100986A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

지능형 사이퍼 전송 오브젝트를 제공하도록 구성된 시스템, 방법 및 장치가 제공된다. 지능형 사이퍼 전송 오브젝트는 은닉 패턴에 의하여 보호되는 참가자 집합을 포함한다. 보호되는 참가자 집합으로의 접근을 수행하기 위한 실행가능한 코드를 포함하는 포터블 동적 규칙 집합이 지능형 사이퍼 전송 오브젝트 내에 포함된다. 주어진 사용자에 대하여 지능형 사이퍼 전송 오브젝트는 포터블 동적 규칙 집합에 기반하여 다른 참가자로의 접근을 방해하면서 일부 참가자로의 접근을 제공할 수 있다.

Description

데이터 보호를 위해 사이퍼 오브젝트를 사용하기 위한 시스템 및 방법{SYSTEMS AND METHODS FOR USING CIPHER OBJECTS TO PROTECT DATA}
관련 출원에 대한 상호-참조
본 출원은 전체 개시가 본 명세서에서 모든 목적으로 여기에 참조로 포함되는, 2011년 12월 9일에 출원된, 미합중국 특허 가출원 제61/569162호의 이점을 주장한다.
데이터 보호를 위한 현재의 기술은 특정 결함을 갖는다. 정보가 방화벽과 같은 신뢰할 수 있는 환경밖에 놓일 때, 보통은 암호화에 의하여 보호된다. 현재 기술에서는 암호화 키가 애플리케이션 내에 존재하거나 암호화된 데이터가 사용될 수 있도록 애플리케이션으로 노출됨으로써, 결과적으로 보호 및 비밀유지를 포기해야 한다. 암호화 키는 무시무시한 공격 또는 사회 공학(social engineering)이나 기타 수단을 통하여 훔칠 수 있다. 또한, 암호화 키는 한번 공유되고 데이터가 해제되면, 데이터의 제어는 상실되다. 심지어 데이터가 방화벽 및/또는 이와 유사한 것과 같은 신뢰된 환경 내에 존재할 때에도 파일이 이 저장 위치에 접근하는 모든 사람에게 이용가능하기 때문에, 공격 또는 악용에 취약하다. 정보의 보호는 통상적으로 보안 수준 - 그럼에도 존재하는 제품의 결함을 잘 활용하여 파괴할 수 있음 - 을 달성하기 위하여 기업 규모의 노력을 조직하는 네트워크, 원격통신 및 서버에 능통한 전문가 팀을 요구한다.
통상의 데이터 암호화는 암호화를 위하여 기결정된 순서로 동작한 후에 복호화를 위하여 역 순서로 동작하는 알고리즘에 의한다. 또한, 은닉을 위하여 개별 데이터를 정적 패턴에서 이동시키는 과정, 그리고 다음에 완전한 비암호화된 파일을 드러내기 위한 역과정이 존재할 수 있다. 이 방식으로, 데이터 암호화에 사용된 암호화 알고리즘을 이해하는 공격자는 암호화 과정을 역행함으로써 암호화를 파괴할 수 있다.
완전 동형 암호화는 관계의 신뢰 측면을 제거하여, 파티 사이에 신뢰를 비관련 인자로 만드는 시도를 한다. 예를 들면, 아웃소서는 복호화를 요하지 않는 처리를 수행하기 위하여 암호화 버전의 데이터에 단순히 접근할 수 있기 때문에, 한 측(party)은 아웃소서가 무슨 조작을 할지 신뢰하지 못하고 자신의 데이터를 저장 또는 처리를 위하여 아웃소서로 전송할 수 있다. 그러나 완전 동형 암호화는 너무 복잡하고 느려서 현실적이지 않다.
데이터 보호를 위한 또 다른 종래 기술은 동적 제어의 사용이다. 동적 제어는, Adobe에서 생성된 문서 보기 및 편집 소프트웨어에 의하여 생성되고 사용되는 보호 PDF 파일 및/또는 이와 유사한 것과 같이 애플리케이션 종속적이다. 종래의 동적 제어는 애플리케이션에 종속적이거나 애플리케이션 내에 존재한다. 규칙은 애플리케이션에 의하여 수행된다. 이 방법의 하나의 단점은 (Adobe Acrobat으로 열린 보호 PDF의 예에서와 같이) 애플리케이션-종속 규칙이 무시될 수 있거나, 또는 개발자가 저작 애플리케이션에 의하여 부과된 규칙을 무시하는 애플리케이션을 작성할 수 있다.
본 발명의 내용은 상세한 설명에서 더 후술할 단순한 형태에서 개념의 선택을 소개하기 위하여 제공된다. 본 내용은 청구된 발명적 주제의 주요 특징의 식별을 의도하지 않고; 청구된 발명적 주제의 범위 결정의 지원으로 사용되는 것도 의도하지 않는다.
저장된 지능형 사이퍼 전송 오브젝트를 포함하는 컴퓨터-판독가능한 매체가 제공된다. 지능형 사이퍼 전송 오브젝트는 포터블 동적 규칙 집합을 포함하는 참가자 집합을 포함한다. 컴퓨팅 장치의 하나 이상의 프로세서에 의한 실행에 대한 응답으로, 포터블 동적 규칙 집합은 상기 컴퓨팅 장치가, 에이전트로부터 참가자 집합 중 참가자의 일부분에의 접근 요청을 수신하는 단계; 상기 에이전트가 요청된 참가자 부분에의 접근에 승인됨을 확인하는 단계; 및 상기 에이전트에 대한 참가자 집합의 다른 부분에의 접근을 제공하지 않고 상기 에이전트에 대한 요청된 참가자 부분에의 접근을 제공하는 단계를 포함하는 동작을 수행하도록 한다. 이러한 지능형 사이퍼 전송 오브젝트를 생성하는 컴퓨터-실행된 방법 및 이러한 지능형 사이퍼 전송 오브젝트의 실행가능한 부분을 실행하도록 구성된 컴퓨팅 장치가 또한 제공된다.
참가자 집합을 보호하는 컴퓨터-실행된 방법이 제공된다. 보호될 참가자 집합은 컴퓨팅 장치에 의하여 획득된다. 참가자 집합을 보호하기 위한 하나 이상의 은닉 패턴이 결정된다. 제1 은닉 패턴은 참가자 집합의 제1 부집합을 보호하기 위하여 사용되고, 제1 은닉 패턴과 상이한 제2 은닉 패턴은 참가자 집합의 제2 부집합을 보호하기 위하여 사용된다. 결정된 은닉 패턴은 은닉 참가자 집합을 생성하기 위하여 컴퓨팅 장치에 의하여 참가자 집합으로 적용된다. 은닉 참가자 집합은 컴퓨팅 장치에 의하여 지능형 사이퍼 전송 오브젝트에 부가된다. 본 방법을 수행하도록 구성된 컴퓨팅 장치 및, 컴퓨팅 장치의 하나 이상의 프로세서에 의한 실행에 대한 응답으로, 컴퓨팅 장치가 이러한 방법을 수행하도록 하는 저장된 컴퓨터-실행가능한 명령을 포함하는 컴퓨터-판독가능한 매체 또한 제공된다.
지능형 사이퍼 전송 오브젝트에 의하여 보호되는 데이터로의 접근을 수행하는 컴퓨터-실행된 방법이 제공된다. 지능형 사이퍼 전송 오브젝트에 저장된 참가자의 부분에 접근하려는 에이전트로부터의 접근 요청이 컴퓨팅 장치에 의하여 수신된다. 지능형 사이퍼 전송 오브젝트 내의 포터블 동적 규칙 집합은 컴퓨팅 장치에 의하여 활성화된다. 포터블 동적 규칙 집합 내의 하나 이상의 규칙이 접근 요청을 평가하기 위하여 컴퓨팅 장치에 의하여 실행된다. 접근 요청이 허용가능하다는 결정에 대한 응답으로, 에이전트에 의하여 요청된 참가자 부분에의 접근이 다른 참가자 부분으로의 접근을 제공하지 않고 제공된다. 이러한 방법을 수행하도록 구성된 컴퓨팅 장치 및, 컴퓨팅 장치의 하나 이상의 프로세서에 의한 실행에 대한 응답으로, 컴퓨팅 장치가 이러한 방법을 수행하도록 하는 저장된 컴퓨터-실행가능한 명령을 포함하는 컴퓨터-판독가능한 매체 또한 제공된다.
전술한 본 개시의 실시예의 양태 및 수반하는 많은 이점은 첨부된 도면과 연계될 때에 후술하는 상세한 설명을 참조하여 더 잘 이해됨으로써 더 쉽게 이해될 것이다.
도 1은 본 개시의 다양한 양태에 따른 데이터 보호의 예시적 실시예를 도시하는 개략적 구성도이다;
도 2는 본 개시의 다양한 양태에 따른 지능형 사이퍼 전송 오브젝트(ICTO)를 구성하는 방법의 예시적 실시예를 도시하는 순서도이다;
도 3은 본 개시의 다양한 양태에 따른 ICTO에 의하여 보호되는 데이터에의 접근 방법의 예시적 실시예를 도시하는 순서도이다;
도 4는 본 개시의 일 실시예에 대한 예시적 사용 예를 도시하는 개략적 구성도이다;
도 5는 본 개시의 일 실시예에 대한 예시적 작업 흐름의 양태를 도시하는 개략적 구성도이다; 그리고
도 6은 본 개시의 실시예에 의한 사용에 적합한 컴퓨팅 장치의 예시적 하드웨어 아키텍처를 도시하는 블록도이다.
본 개시의 실시예들은 이전의 데이터 보호 시스템 및 방법이 갖는 이들 치명적 단점들을 다룬다. 본 기술은 존재하는 기술들이 외곽 방어(perimeter defense), 사용자 접근(사용자들 및 이들의 장치) 및 비정상 검출(anomaly detection)을 다루지만 데이터 자체에는 부착되지 않기 때문에 존재하는 보호 기술 내의 간극을 채운다. 만약 존재하는 암호화가 자체로 이용된다면, 키 코드 관리에서의 결함은 생산성을 감소시키거나 유사하게 보호될 필요가 있는 키를 노출함으로써 다른 취약성을 생산할 수 있다. 본 개시의 실시예들은 데이터 관리, 보호 및 운영을 위한 제어가, 각 데이터 집합으로 이식되어 그 일부로 되어 데이터 집합의 사용을 직접 감독함을 의미하는, 데이터-중심의 해결책을 제공한다. 비록 본 개시의 일부 실시예에서 일부 데이터가 승인된 에이전트에 의하여 사용가능하도록 보호로부터 제거되더라도, 보호의 제거는 그 보호 메커니즘의 역행(reversal)이 아니기 때문에 예측가능하지 않다. 본 개시는 데이터 존재의 생활 속에서의 동적, 포터블(portable), 독립, 일관된, 지능형의 데이터 소유를 유지하는 비예측 가능하고 비가역적인 시스템 및 관련 방법을 제공한다. 본 시스템은 데이터 저장 또는 이동 중에 그리고 신뢰된 데이터 사용자 또는 비신뢰된 데이터 사용자의 손에 있을 때에 데이터 보호를 가능하게 한다.
본 개시의 일부 실시예들에서 데이터 보호 기술은 데이터-집합 내에서 실행되고, 여기로 이식되며, 유지된다. 데이터 보호 기술은 또한 데이터에 접근하기 위한 시도의 감사 추적(audit trail)을 생성할 수 있다. 데이터의 알려진 또는 승인된 사용자는 로그(log)에 기록되고, 그동안에 미지의 파티 또는 다른 미승인된 데이터 접근 시도가 기록되어 실시간으로 데이터 소유자에게 디스플레이될 수 있다. 만약 미승인된 파티가 데이터에 접근을 시도하면, 보호 기술은 그 데이터를 보호하고, 침입에 대한 공격적 동작을 취하며, 데이터 소유자에게 미승인된 시도를 알리고/알리거나 임의의 다른 적절한 동작을 취할 수 있다.
데이터 소유자는 그 보호 기술이 그 데이터로 파티의 관계를 일관되게 승인하는 단순하고 가벼운 관리 도구라고 본다. 공격자의 관점에서, 본 시스템은 모든 승인된 파티가 그 보호 기술 내에 포함된 수립된 아이덴티티(identity)를 갖기 때문에 예측가능하지 않다. 특유의 보호 기술은 소유자, 사용자 및 데이터집합의 각 조합에 대하여 제공될 수 있다; 이는 데이터가 승인된 파티 A(Authorized Party A)에 노출되는 방법이 데이터가 승인된 파티 B(Authorized Party B)에 노출되는 방법이 아니라는 것을 의미한다.
일부 실시예들에서는 상이한 기술들이 데이터를 보호하고 그 보호된 데이터에 접근하기 위하여 사용될 수 있다. 예를 들면, 비가역 보호 기술이 단일 디지털 믹스처(mixture) 내로 데이터의 복수 조각을 결합하기 위하여 사용될 수 있고, 그동안에 선택적 탐색 기술이 디지털 믹스처 내의 다른 보호 데이터로의 접근을 획득하지 않고 단일 디지털 믹스처로부터 데이터의 조각을 선택적으로 탐색하기 위하여 사용될 수 있다. 이러한 실시예에서는, 데이터가 적절히 접근될 때에, 승인된 수령자(recipient)에 대한 소유자의 바람에 기반하여 선택적으로 노출된다; 어떠한 단계도 정보를 노출하기 위하여 역추적(retrace) 되지 않고 복수 조각의 데이터를 결합하기 위하여 사용된 본래의 보호 기술은 데이터의 개별적으로 요청된 조각에 관한 것 이외에는 되돌릴 수 없을 것이다. 다시 말해서, 비록 보호 기술에 의하여 저장된 데이터의 조각이 접근될 수 있다고 하더라도, 디지털 믹스처 전체는 본래의 콘텐츠 전체가 재구성되도록 하는 방식으로 접근가능하지 않다. 본 개시의 실시예들은 임의의 사용자를 적극적으로 식별하도록 구성되고, 데이터 소유자는 그 식별된 사용자가 접근 획득할 수 있는 데이터의 조각을 제어한다. 미승인된 파티는, 그 의도된 수령자의 내부 또는 외부 어느 쪽이든지 그 비보호된 형태에서 데이터에 결코 접근할 수 없다. 본 개시의 실시예들은 데이터 보안을 확보하기 위하여 접근을 제공하기 전에 신뢰된 파티의 아이덴티티를 모호하지 않게 확인한다. 보호 기술의 역행 또는 역 엔지니어링은 본래의 결과를 만들어낼 수 없다.
본 개시의 일부 실시예들에서, 규칙들은 디지털 믹스처의 실행가능한 부분에 의하여 실행되고, 데이터 소유자의 절대적 바람이 제3자에 의존하지 않고 강화되도록 보장한다. 보호 기술은 데이터를 보호하기 위하여 애플리케이션 또는 운영 시스템에 종속되지 않는다. 보호 기술은 운영 시스템, 환경 및 애플리케이션에 독립적이다. 프로토콜에서의 방법은 데이터 믹스처 내에 저장된 실행가능한 코드 내에서 실행되고, 구조화된 API를 통한 데이터 접근을 위하여 사용자에 의한 요청 검출에 대한 응답으로 실행된다. 또한, 그 데이터는 임의의 유형 - 텍스트, 오디오, 비디오 - 일 수 있고, 임의의 종류의 컨테이너 또는 환경 - 버퍼, 디렉터리 또는 파일 - 일 수 있다. API를 통하지 않은 임의의 데이터 접근 시도는, API를 실행하는 성분 외부의 임의의 성분에 의하여 확정할 수 없는(undeterminable) 적용된 은닉 패턴에 의하여 좌절될 것이다. API를 통하여 데이터에 접근을 시도할 때에, 본 보호 기술은 사용자들이 데이터 소유자에 의하여 허락될 때에만 데이터에 접근할 수 있음을 보장한다.
도 1은 본 개시의 다양한 양태에 따른 데이터 보호의 예시적 실시예를 도시하는 개략적 구성도이다. 동적 참가자 컨트롤러(110) 또는 “믹서(mixer)”는 승인된 에이전트, 장치 위치, 데이터를 사용하기 위한 규칙 및/또는 하기에서 더 설명되는 바의 기타 성분들에 대한 설명을 포함하는 디지털 성분(“참가자”)(101)의 집합을 식별한다. 이들 성분들을 혼합함으로써, 믹서(110)는 은닉 엔티티(cloaked entity), 지능형 사이퍼 전송 오브젝트(ICTO)(115)를 형성한다. ICTO(115)는 또한 “디지털 믹스처”라고 명명될 수 있다. 여기에서 설명된 바와 같이, 본 기술분야의 통상의 지식을 가진 자는 용어 “ICTO" 및 ”디지털 믹스처“가 상호교환적으로 사용될 수 있음을 이해할 것이다. ICTO(115)를 직접 관찰하는 제3자에게, ICTO(115)는 단순히 데이터의 집합으로 보일 것이다. ICTO(115)는 본래의 성분을 띄거나 또는 노출하지 않고 외부로 동종 믹스처로 보인다. 그러나 API[믹서(110), 클라이언트 애플리케이션(도시되지 않음) 및/또는 이와 유사한 것과 같은]를 실행하는 애플리케이션을 통하여 접근될 때, ICTO(115)의 실행가능한 부분은 ICTO(115)에 의하여 보호된 데이터로의 접근을 제공하기 위하여 접근가능하다.
일부 실시예들에서, ICTO(115)의 실행가능한 부분은 API를 실행하는 애플리케이션이 실행가능한 부분을 쉽게 찾을 수 있도록 ICTO(115) 내의 결정가능한 위치에 저장될 수 있다. 일부 실시예들에서, 부가적 보호가 ICTO(115) 내의 가변 위치에 ICTO(115)의 하나 이상의 실행가능한 부분을 저장함으로써 ICTO(115)에 적용될 수 있다. 이들 가변 위치는 ICTO(115)의 실행가능한 부분을 미승인 사용자가 찾기에 매우 어렵게 하는 한편, ICTO(115)에 접근하기 위한 API를 실행하는 보안 애플리케이션(secure application)은 ICTO(115)의 특성에 기반하여 주어진 ICTO(115)에 대한 가변 위치를 계산할 수 있다. 예를 들면, 보안 애플리케이션은 파일 크기, 생성 시간 및/또는 이와 유사한 것과 같은 ICTO(115)의 속성을 판독할 수 있고, 시드(seed)와 같은 속성을 사용하여 위치를 결정하는 계산을 수행할 수 있다. 계산 비밀의 세부사항을 유지함으로써, ICTO(115)의 실행가능한 부분의 위치는 같은 방식으로 비밀로 유지될 수 있다.
참가자(101)의 집합은 오브젝트 설명(102), 믹스처 메타데이터(104), 소유자 데이터(106), 은닉 패턴(107), 아이덴티티 모듈(109) 및 지능형 모듈(111)을 포함할 수 있다. 일부 실시예들에서, 아이덴티티 모듈(109) 및 지능형 모듈(111)의 조합은 포터블 동적 규칙 집합(108)으로 함께 고려될 수 있다. 오브젝트 설명(102)은 소유자-공급 및 소유자-정의 이어마크(earmark), 데이터 식별자 및/또는 성질을 포함할 수 있다. 소유자 데이터(106)는 문서, 파일, 버퍼, 디렉터리, 원격 저장된 데이터로의 포인터 및/또는 이와 유사한 것과 같은 ICTO(115) 내에서 보호될 데이터를 포함할 수 있다. 일부 실시예들에서, 만약 ICTO(115)가 예를 들어 기본 서명 데이터(signed data)와 연계되지 않은 시그니처 확인 방법을 위하여 단지 사용되는 경우, 소유자 데이터(106)는 선택사항일 수 있다. 일부 실시예들에서는, 소유자 데이터(106)의 복수 조각이 단일 ICTO(115) 내에 포함될 수 있다. 일부 실시예들에서는, 복수 소유자로부터의 소유자 데이터(106)가 단일 ICTO(115) 내에 포함될 수 있다.
은닉 패턴(107)은 믹서(110)에 의하여 지원되는 데이터 보호 및 접근 기술의 다양한 조합을 명시한다. 은닉 패턴(107)에 포함된 데이터 보호 및 접근 기술은 산업 표준 확인된 암호화, 압축, 무작위화(randomization), 정규화 및/또는 기타 기술 등의 기술을 포함할 수 있다. 은닉 패턴(107)으로 사용되기에 적합한 기술은 현재 알려진 기술에 한정되지 않고, 현재 알려지거나 또는 미래에 개발될, 임의의 사적 또는 공공에 사용가능한 암호화 및/또는 해독 기술을 포함할 수 있다. 데이터의 보호 및/또는 접근을 위한 은닉 패턴(107)의 사용은 데이터에 은닉 패턴(107)에 명시된 데이터 보호 및/또는 접근 기술의 조합을 적용하는 것을 포함할 수 있다.
믹스처 메타데이터(104)는 디렉터리, 키 코드, 사용자 파일, 시그니처 및/또는 이와 유사한 것을 포함하는 가상 파일 시스템 데이터와 같은 디지털 믹스처(115)에 대한 조직적 정보를 제공한다.
아이덴티티 모듈(109)은 처리과정에서 보호된 에이전트를 특유하게 식별하는 동적 아이덴티티 속성을 포함할 수 있다. 일부 실시예들에서, 아이덴티티 모듈(109)은 보호 오브젝트에 관한 특정 권리가 주어질 수 있는 컴퓨팅 장치의 구성을 나타내는 데이터를 포함할 수 있다. 아이덴티티 모듈(109)은 컴퓨팅 장치를 식별하기 위하여 사용될 수 있는 컴퓨팅 장치상에 설치된 하드웨어 또는 소프트웨어 구성에 관한 특정 정보를 포함할 수 있다. 아이덴티티 모듈(109)은 모델 번호, 코어의 수, 속도 및/또는 이와 유사한 것; 장치 시리얼넘버; 제조자 데이터; 휘발성 메모리 크기; 비휘발성 메모리 크기; 하나 이상의 저장 장치 시리얼넘버 및/또는 모델 번호; 설치된 소프트웨어 명칭 및/또는 버전 번호 및/또는 이와 유사한 것을 포함하는 CPU 정보를 포함할 수 있지만 이에 한정되지는 않는다.
일부 실시예들에서, 처리는 하나 이상의 에이전트가 주어진 컨텍스트 내에서 명시된 의도를 갖고 데이터를 안전하게 교환하는 ICTO(115)를 사용하는 일체적 동작(atomic action)이다. 승인된 에이전트는 인간 사용자, 특유한 기계적 오브젝트, 특유한 전자 오브젝트, 특유한 소프트웨어 또는 프로그램 오브젝트 및/또는 이와 유사한 것과 같은 인간 및 비-인간 실체(entity)를 포함할 수 있다. ICTO(115)를 포함하는 동적 아이덴티티 속성은 ICTO(115) 내 또는 이와의 작용 과정 중에 지능형 모듈(111)에 의하여 수정될 수 있고, 애플리케이션-명시의 식별자, 어카운트 식별자, 생체인증(biometric) 시그니처, 장치 및/또는 위치 시그니처, 일시 데이터, 암호 키 및/또는 이와 유사한 것을 포함할 수 있다. 일부 실시예들에서, 위치 시그니처는 GPS, GSM 네트워크 위치결정, IP 어드레스 위치결정, 추측 항법(dead reckoning) 및/또는 이와 유사한 것과 같은 지리위치결정 기술로부터의 데이터를 포함할 수 있다. 위치 시그니처는 위도, 경도, 고도, 근사적 도로 주소 및/또는 이와 유사한 것을 포함할 수 있다. 거리, 도시, 주, 나라, 우편 번호 및/또는 이와 유사한 것과 같은 부가적 위치 데이터 또한 존재할 수 있다. 일부 실시예들에서, 일시 데이터는 규칙 또는 기타 지능형 코드가 타이머, 시간만료, 동적 키 및/또는 이와 유사한 것을 강화하도록 할 수 있는 타임스탬프(timestamp) 및/또는 이와 유사한 것을 포함할 수 있다. 일시 데이터는 단순 데이터/시간 값을 포함할 수 있거나, 또는 타임스탬프 범위 및/또는 기타 스케줄링 가이드라인을 포함하는 복잡한 스케줄을 포함할 수 있다.
일부 실시예들에서, 각 ICTO(115)는 하나 이상의 디지털 시그니처 키를 포함한다. 디지털 시그니처 키는 믹서(110)에 사용할 수 있는 외부 디지털 인증을 사용하여 승인될 수 있다. ICTO(115)의 접근 중에, 믹서(110)는 외부 디지털 인증을 사용하여 디지털 시그니처 키를 승인하고 디지털 시그니처 키가 ICTO(115)로 현재 접근하는 에이전트에 대하여 유효하다고 확인한다. 일부 실시예들에서, 복수 에이전트는 ICTO(115) 상에서 서명 종료할 수 있다. 이러한 실시예에서, ICTO(115)는 일련의 시그니처 키를 포함할 수 있고, 각 시그니처 키는 승인을 위한 분리된 외부 디지털 인증과 연계될 수 있다. 예를 들면, ICTO(115)는 복수 에이전트로의 전송을 위한 보호된 파일을 생성하기 위하여 사용자에 의하여 사용될 수 있고 각 에이전트는 전체 파일이 아닌 파일의 다른 섹션에 동시에 또는 순차적으로 접근할 수 있다. 소유자 및 에이전트 양자는 처리가 진행되도록 유효한 디지털 시그니처를 제공해야 할 것이다.
지능형 모듈(111)은 ICTO(115)를 보호하는 동작을 수행하기 위한 설정가능한 기능을 제공하는 지능형 코드와 함께; 접근 데이터 및 기타 관련 히스토리를 기록할 수 있는 동적 규칙 집합을 포함할 수 있다. 규칙들은 오브젝트 생성 시간에서 제공될 수 있다. 그러나 일부 실시예들에서, 규칙은 자신 또는 이전에 생성된 ICTO(115)에 대한 다른 규칙을 수정하는 능력을 포함할 수 있다. 일부 실시예들에서, 규칙은 부가적 규칙을 생성하는 능력을 포함할 수 있다. 예를 들어 규칙은 아이덴티티 데이터로부터, 부가적 보호가 주어진 ICTO(115)에 대하여 바람직하다고 결정할 수 있다. 상기 규칙은 다음에 적용될 부가적 암호화 및/또는 해독 규칙을 생성할 수 있다. 상기 규칙은 ICTO(115) 내에 보호 및 포함된다. 일부 실시예들에서, 상기 규칙들은 지능형 모듈(111)의 실행가능한 부분에 의해서만 실행될 수 있고/있거나 적절한 언어로 기록되어 컴파일된 형태 또는 이진 형태로 저장될 수 있다. 아이덴티티 모듈(109)의 상기 규칙 및 요건에 기반하여, 지능형 모듈(111)은 그 규칙 및 요건에 따라 동작한다. 애플리케이션-명시된 식별자는 접근마다 다양하게 변할 수 있고, 에이전트의 유형에 의존하여 변할 수 있다. 예를 들면 인간 사용자에 대하여 애플리케이션-명시된 식별자는 어카운트 키, 처리 정보, 컨텍스트 키, 연계된 의도 및/또는 이와 유사한 것을 포함할 수 있다. 전자 오브젝트, 디지털 자산 또는 임의의 다른 잠재적 에이전트에 대하여, 애플리케이션-명시된 식별자는 또한 IP 어드레스, URL, 파일 명세 및/또는 이와 유사한 것을 포함할 수 있다.
일부 실시예들에서, 규칙들은 심지어 참가자(101)가 ICTO(115)에 의하여 보호되는 동안에도 참가자(101)로의 판독/기록 접근을 갖는다. 다시 말해서, 규칙은 ICTO(115)의 믹스처 메타데이터(104) 및 소유자 데이터(106)로 판독 및 기록할 수 있다. 이는 날짜, 시간, 장소 및 이와 유사한 것과 같은 접근 정보를 기록하는 데 유용할 수 있고/있거나, 공격이 검출되는 경우 데이터를 파괴하는 데 유용할 수 있다. 규칙 내의 지능형 코드에 의하여 만들어진 결정 또는 취해진 동작의 일부 예시는: 유효성을 위한 오브젝트 콘텐츠 및 컨텍스트를 평가하고; 아이덴티티의 증명을 위하여 참가자를 검사하고; 승인을 위하여 서버에 접속하고; ICTO(115)rk 자기-파괴되도록 하고; 오브젝트 접근의 히스토리를 유지하여 서버로 히스토리 정보를 전송하고; 온-라인 및/또는 오프-라인 오브젝트 접근을 허용하고; 동적 서버 갱신에 기반하여 새로운 규칙을 생성하고; 데이터를 암호화 및 해독하고; 데이터를 훼손 및 회복하는 것; 및/또는 이와 유사한 것을 포함할 수 있지만 이에 한정되지는 않는다.
포터블 동적 규칙의 사용은 다양한 이점을 가질 수 있다. 예들 들면, 사전-암호화 및 사전-해독 규칙은 참가자-명시된 기준에 기반하여 동적 설트(salt) 및 암호화 키를 제공할 수 있다. 이러한 동적 키는 임시 데이터, 환경 데이터 또는 사전-암호화 규칙에 명시된 임의의 다른 알고리즘에 기반할 수 있다. 또 다른 예시로서, 규칙들은 비예측된 데이터를 세상에 노출하지 않고 클라이언트를 승인하기 위하여 ICTO(115) 내에서 암호화된 아이덴티티 아티팩트(artifact)에 접근할 수 있다. 또 다른 예시로서, 상기 규칙들이 포터블하고 따라서 ICTO(115) 내에 포함되기 때문에, 규칙들은 심지어 오프라인일 때에도 ICTO(115)가 미승인된 접근으로부터 완전히 보호되도록 하는 방식으로 기록될 수 있다. 또 다른 예시로서, 규칙들은 내포(nesting)된 보호를 부가할 수 있다. 만약 ICTO(115)가 한 시간의 생성 시간 내에 단일 클라이언트에 의하여 판독되도록 예정되어 있는 문서를 보호한다면, 규칙은 타이머를 실행하고 자기-파괴 메커니즘을 생성할 수 있다.
전술한 바와 같이 믹서(110)는 오브젝트 설명(102), 믹스처 메타데이터(104), 소유자 데이터(106), 은닉 패턴(107), 아이덴티티 모듈(109) 및 ICTO(115)를 구성하는 지능형 모듈(111)의 믹스처를 형성하기 위하여 포터블 동적 규칙 집합(108)을 사용한다. 일부 실시예들에서, ICTO(115)의 다양한 성분이 탬퍼링(tampering)을 검출하기 위하여 암호화된 검사합(checksum)에 의하여 표시될 수 있다. 예를 들면 전체 ICTO(115), 규칙, 소유자 데이터 및/또는 사용자 데이터는 각각 검사합에 의하여 승인될 수 있다. 검사합은 검사합 대상의 콘텐츠에 기반하여 생성된 해시 값(hash value)일 수 있다. 일부 실시예들에서, 검사합을 생성하기 위하여 사용된 알고리즘은 심지어 대량 문서의 단일 비트 값의 변화를 신뢰할 수 있게 검출할 수 있을 정도로 충분히 민감하다. 일부 적절한 알고리즘은, 비록 임의의 다른 적절한 알고리즘이 사용될 수 있더라도, MD5 및 SHA를 포함한다. 각 검사합이 첨부, 프리펜드(prepend) 또는 저장소에 대한 검사합 대상과 결합할 수 있거나, 또는 개별 위치에 저장될 수 있다.
도 2는 본 개시의 다양한 양태에 따른 ICTO(115)를 구성하는 방법의 예시적 실시예를 도시하는 순서도이다. 도시된 방법(200)이 상대적으로 단순한 ICTO(115)의 생성을 설명하는 동안에, 본 기술분야의 통상의 지식을 가진 자는 유사한 기술이 훨씬 더 복잡한 ICTO(115)를 생성하기 위하여 사용될 수 있음을 이해할 것이다. 일부 실시예들에서, 믹서(110)는 방법(200)을 수행하도록 구성된다. 일부 실시예들에서, 방법(200)은 후술하는 바와 같이 믹서(110)의 기능을 제공하도록 구성된 컴퓨팅 장치에 의하여 수행된다. 본 기술분야의 통상의 지식을 가진 자는 ICTO(115)의 구성 및 이용이 상기 컴퓨팅 장치의 유형 또는 상기 컴퓨팅 장치가 연계된 임의의 운영 시스템에 의존하지 않고, 대신에 임의의 적절한 수단을 통하여 구성 및 이용될 수 있음을 이해할 것이다.
방법(200)은 시작 블록으로부터 출발하여 공통 디지털 성분(“참가자”)의 집합이 획득되는 블록(202)으로 진행한다. 공통 참가자는 하나 이상의 ICTO(115)에서 사용될 수 있거나, 또는 하나 이상의 ICTO(115) 내의 유사한 해당 성분을 가질 수 있는 참가자(101)이고, ICTO(115)에 포함하기 위한 믹서(110)에 의하여 명시 및/또는 생성된다. 예를 들어 오브젝트 설명(102), 믹스처 메타데이터(104), 은닉 패턴(107), 아이덴티티 모듈(109) 및 지능형 모듈(111)은 모두 공통 참가자들일 수 있다.
그 다음에 블록(204)에서 동적 참가자 컨트롤러(“믹서”)가 초기화된다. 일부 실시예들에서, 믹서(110)의 초기화는 믹서(110)가 노출되거나 그렇지 않으면 신뢰된 애플리케이션에 의하여 실행되는 것을 확인하는 것을 포함할 수 있다. 블록(206)에서 믹서(110)는 보호될 소유자 데이터(106)의 하나 이상의 조각을 수신한다. 전술한 바와 같이, 일부 실시예들에서 소유자 데이터(106)는 선택사항일 수 있고, ICTO(115)의 접근 보호 특성은 사용자 아이덴티티를 확인하고/확인하거나 사용자로부터 시그니처를 획득하기 위하여 사용될 수 있다.
방법(200)은 믹서(110)가 포터블 동적 규칙 집합(108)이 실행되도록 하는, 블록(208)으로 진행한다. 블록(210)에서는 포터블 동적 규칙 집합(108)의 지능형 모듈(111)이 참가자(101)를 보호하기 위하여 사용되는 하나 이상의 아이덴티티-기반의 은닉 패턴을 결정하고, 블록(212)에서는 믹서(110)가 하나 이상의 은닉 패턴을 참가자(101)에 적용하여 은닉 참가자 집합을 생성한다.
포터블 동적 규칙 집합(108)은 보호될 데이터의 사용자의 바람에 기반하여 각 참가자(101)에 적용될 은닉 패턴을 결정한다. 상이한 은닉 패턴이 각 참가자(101)에게 적용될 수 있다. 또한, 각 참가자(101)는 상이한 에이전트에 의한 접근을 위하여 개별 은닉 패턴을 이용하여 보호될 수 있다. 다시 말해서, 소유자 데이터(106)와 같은 참가자(101)는 제1 에이전트에 의한 접근을 위한 제1 은닉 패턴에 의하여 보호되고, 제2 에이전트에 의한 접근을 위한 제2 은닉 패턴에 의하여 보호될 수 있다. 은닉 패턴의 선택은 보호될 참가자(101)의 속성, 데이터로의 접근이 주어질 에이전트의 속성, 위치, 의도 및/또는 임의의 다른 정보의 조각에 기반할 수 있다. 은닉 패턴의 선택은 사전-존재 은닉 패턴으로부터의 선택을 포함할 수 있고/있거나, 믹서(110)에 의하여 지원된 보호 기술의 조합으로부터의 새로운 은닉 패턴의 생성을 포함할 수 있다. 적용된 은닉 패턴의 기록은 믹스처 메타데이터(104) 내에 저장될 수 있다.
은닉 패턴은 ICTO(115) 내에 참가자(101)를 보호하기 위하여 참가자(101)에 적용된 변환, 및 이들 변환이 참가자(101)에 접근하기 위하여 역행할 수 있는 방법을 설명한다. 변환은 데이터 압축, 데이터 정규화 및 암호화/해독을 포함할 수 있지만 이에 한정되지는 않는다. 주어진 은닉 패턴은 하나 이상의 이들 기술 또는 본원에 기재되지 않은 다른 기술을 포함할 수 있다. 데이터 압축은 ICTO(115)의 전체 크기를 줄일 수 있고, 따라서 전송 시간 및 대역폭 사용량을 개선할 수 있다. 데이터 압축은 DEFLATE, LZW, LZR, LZX, JBIG, DjVu 및/또는 이와 유사한 것을 포함하지만 이에 한정되지 않는 임의의 적절한 무손실 압축 알고리즘에 의하여 수행될 수 있다. 데이터 정규화는 효과적으로 처리될 수 있는 형태로 데이터를 배치하는 임의의 적절한 과정에 의하여 수행된다. 일부 실시예들에서, 데이터는 데이터를 2진 형태든지 텍스트 포맷이든지 상관없이 정규화된 영숫자(alphanumeric) 스트링으로 변환하기 위한 Base64 암호화 알고리즘을 통과할 수 있다. 이는 단지 하나의 예시에 불과하며, 한정으로 간주 되어서는 안 된다. 다른 실시예들에서는 다른 알고리즘이 데이터를 정규화하기 위하여 사용될 수 있다.
은닉 패턴은 또한 하나 이상의 암호화/해독 기술을 포함할 수 있다. 은닉 패턴은 암호화 키를 유도하는 방법을 명시할 수 있고, 특수한 암호화 알고리즘 또는 키 길이를 명시할 수 있고/있거나 시간 시드(time seed), Xor 암호화 및/또는 은닉 패턴을 생성하기 위한 다른 산업적 표준 암호화 및 해독 기술과 같은 다른 구성가능한 선택사항을 명시할 수 있다. 일부 실시예들에서, 암호화 기술은 참조되는 콘텐츠를 위한 해시 값의 유도 및/또는 이와 유사한 것과 같은 참조되는 콘텐츠에 기반하는 암호화 이외에 계산을 수행할 수 있다. 일부 실시예들에서, 은닉 패턴은 은닉 패턴 자체에 또는 그밖에 ICTO(115) 내에 사용된 암호화 키 또는 해독 키의 기록을 저장할 수 있다. 은닉 패턴이 보호된 정보에 접근하기 위해 사용될 때, 암호화/해독 키는 정보로의 접근을 제공하기 위하여 ICTO(115) 내의 규칙에 제공되지만, 요청하는 사용자에게 사용가능하게 되지는 않는다. 다시 말하자면, 암호화 키 및 해독 키가 사용자에게 사용가능하게 되지 않고, 따라서 비밀이 유지된다.
일부 실시예들에서, 은닉 패턴은 아이덴티티 모듈(109) 및 지능형 모듈(111)이 참가자(101)의 상이한 성분에 개별 암호화 기술을 적용하도록 한다. 예를 들면, 제1 암호화 규칙은 실행될 때에 암호화된 디지털 믹스처(115)의 제2 부분을 변경하지 않으면서 암호화된 디지털 믹스처(115)의 제1 부분을 식별하여 암호화할 수 있다. 제2 암호화 규칙은 실행될 때에 상이한 암호화 알고리즘, 상이한 암호화 키 및/또는 이와 유사한 것을 사용하여 암호화된 디지털 믹스처(115)의 제2 부분을 식별하여 암호화할 수 있다.
일부 실시예들에서, 은닉 패턴 및/또는 포터블 동적 규칙 집합(108)은 2 이상의 내포된 암호화 층을 수립할 수 있다. 예를 들면, 제1 암호화 규칙의 실행은 암호화 디지털 믹스처(115)의 제1 부분을 암호화할 수 있다. 제2 암호화 규칙의 실행은 이때 암호화된 디지털 믹스처(115)의 암호화된 제1 부분이 제1 암호화 규칙 및 해당 제1 해독 규칙에 따라 다시 암호화되도록 할 수 있다. 따라서, 암호화된 디지털 믹스처(115)의 제1 부분에 나중에 접근하기 위하여, 제2 암호화 규칙에 대응하는 제2 해독 규칙이 암호화된 디지털 믹스처(115)의 두 배로 암호화된 제1 부분을 해독하여 제1 해독 규칙을 획득하도록 실행된다. 제1 해독 규칙은 이때 디지털 믹스처(115)의 제1 부분의 원문(plaintext) 버전을 생성하기 위하여 암호화된 디지털 믹스처(115)의 제1 부분을 해독하도록 실행된다.
은닉 참가자의 집합을 생성하기 위하여 은닉 패턴이 참가자(101)에 한 번 적용되면, 방법(200)은 믹서(110)가 디지털 믹스처(ICTO)(115)를 생성하여 은닉 참가자의 집합을 디지털 믹스처(115)에 부가하는 블록(214)으로 진행한다. 일부 실시예들에서, 부가적 보호는 데이터 셔플링(shuffling), 부가적 암호화 또는 디지털 시그니처 및/또는 이와 유사한 것과 같은 일체로서의 디지털 믹스처(115)에 적용될 수 있다. 방법(200)은 이때 종단 블록으로 진행하여 종료된다.
본 기술분야의 통상의 지식을 가진 자라면 특정의 단계는 설명의 편의를 위하여 도 2에서 생략되었음을 이해할 것이다. 그러나 도 2에 명시적으로 도시되지 않은 다른 단계들은 또한 본 개시의 범위를 벗어나지 않고 방법(200)에 포함될 수 있을 것이다. 예를 들면, 만약 임의의 에러가 은닉 패턴 또는 실행 규칙을 적용하는 동안에 검출된다면, 방법(200)은 멈추고, 완료된 ICTO(115)를 생성하지 않을 수 있다. 또 다른 예시로서, 일부 실시예들에서, 소유자 데이터(106)는 내포된 보호를 제공하는 방식으로 하나 이상의 ICTO를 포함할 수 있다. 일부 실시예들에서, 내포된 ICTO 내의 규칙들은 외부 ICTO(115) 내의 참가자 데이터(101)로의 접근이 제공될 수 있다. 일부 실시예들에서, 제1 ICTO 내의 규칙은 제2 ICTO가 생성되도록 하고, 제1 ICTO가 제2 ICTO에 부가되도록 제1 ICTO가 제2 ICTO의 내부에 내포되게 할 수 있다. 이와 마찬가지로, 일부 실시예들에서 제1 ICTO 내의 규칙은 제2 ICTO가 생성되도록 하고, 제2 ICTO가 제1 ICTO의 내부에 내포되도록 제2 ICTO가 제1 ICTO에 부가되도록 할 수 있다.
도 3은 본 개시의 다양한 양태에 따른 ICTO(115)에 의하여 보호되는 데이터로의 접근 방법(300)의 예시적 실시예를 도시하는 순서도이다. ICTO(115)가 활성화된 후에, ICTO(115)는 현재 환경, 접근 시도, 승인된 에이전트 및 포터블 동적 규칙 집합(108)에 포함된 규칙 집합에 명시된 바의 다른 조건들의 확인 및 승인을 개시한다. 이러한 확인 및 승인은 개시에서 한 번, 활성 구간 동안에 연속하여, 활성 구간 동안에 주기적으로 또는 임의의 다른 적절한 간격으로 또는 임의의 적절한 상태의 변화에 대응하여 수행될 수 있다. 규칙 및 에이전트 아이덴티티가 긍정적으로 확인되었을 때, ICTO(115)는 나머지 데이터의 믹스처 및 보호의 동종 본질(homogeneous essence)을 유지하면서 그 자신의 승인된 부분에의 접근을 허용한다.
전술한 방법(200)에서와 같이, 일부 실시예들에서 믹서(110)는 방법(300)을 수행하도록 구성된다. 일부 실시예들에서, 방법(300)은 컴퓨팅 장치의 하나 이상의 프로세서가 컴퓨팅 장치를 실행하도록 하는 컴퓨터 실행가능한 명령을 실행한다면 컴퓨팅 장치에 의하여 수행된다. 본 기술분야의 통상의 지식을 가진 자에게 이해되는 바와 같이, ICTO(115)의 구성 및 이용은 상기 컴퓨팅 장치의 유형에도 상기 컴퓨팅 장치와 연계된 임의의 운영 시스템에도 종속되지 않는다. 데이터 보호 프로토콜이 데이터 집합에 부가된다. 활성화된 ICTO(115)는 데이터의 생애를 통하여 (접근 시도, 미승인된 위치 또는 미승인된 에이전트로의 경고, 자기-파괴 또는 자기-재생산의 통지와 같은 정보를) 데이터 소유자와 교환할 수 있다. 또한, ICTO(115) 내의 규칙이 자신 및 ICTO(115)의 다른 부분을 갱신할 수 있기 때문에, ICTO(115)는 그 환경으로부터 학습할 수 있고, 그 학습에 기반하여 미래의 거동을 변경할 수 있다. 보호 프로토콜은 커스터마이즈(customize)될 수 있고, 은닉 패턴에 명시된 바와 같이 각 소유자, 데이터 집합 및 사용자 조합에 대하여 특유하다.
방법(300)은 시작 블록으로부터 출발하여 디지털 믹스처(115) 내의 포터블 동적 규칙 집합(108)이 디지털 믹스처(115)로 접근하기 위한 에이전트에 의한 요청에 대한 응답으로 활성화되는 블록(302)으로 진행한다. 일부 실시예들에서, 슈퍼-아이덴티티는 ICTO(115)에 부가되고 ICTO(115)로의 접근을 시도하는 에이전트의 아이덴티티를 확인하기 위한 기준, 에이전트를 승인하고 데이터의 현재 상태를 결정하는 지능형 인지를 제공하기 위한 동적 규칙 및 은닉 패턴에 명시된 바의 데이터 은닉을 위한 알고리즘을 포함한다. 질의/응답 쌍(challenge/response pair), 디지털 시그니처, 생체인증 정보 및/또는 이와 유사한 것과 같은 확인 기준이 에이전트의 아이덴티티를 확인하기 위하여 사용될 수 있다. 블록(304)에서, 포터블 동적 규칙 집합(108)은 에이전트가 연관 컨텍스트에서 디지털 믹스처(115)로의 요청 접근이 허용되는지를 확인하기 위하여 실행된다. 아이덴티티 모듈(109) 및 지능형 모듈(111)은 활성화될 때에 확인된 에이전트에 의한 현재 접근 시도에 접근하여 신뢰 수준을 수립한다. 일부 실시예들에서, 이러한 평가는 각 참가자(101) - 데이터 소유자, 에이전트 (데이터 사용자) 및 데이터 자신 - 의 연속적인 확인 및 인증이 존재한다는 점에서 진행이 계속되는 과정이다. 일부 실시예들에서, 포터블 동적 규칙 집합(108)으로부터의 사전-접근 규칙은 믹서(110) 이외의 에이전트에 대한 해독 데이터로의 접근을 허용하지 않고 믹서(110)에 의한 내부적 사용을 위한 ICTO(115)의 적어도 일부분을 해독하기 위하여 믹서(110)에 의하여 실행될 수 있다. 사전-접근 규칙은, 아이덴티티 아티팩트를 검사하고 소유자 및 에이전트 데이터를 평가하는 능력을 포함하여, 참가자(101)에게 접근한다. 만약 신뢰 수준이 낮아지면, 프로토콜은 참가자(101)를 재평가한다. 일부 실시예들에서, 만약 ICTO(115)에의 접근을 시도하는 에이전트가 타당성을 재-수립할 수 없다면, 방어적 또는 공격적 동작이 초래될 수 있다. 만약 에이전트가 새로운 집합의 검사를 만족한다면, 접근이 진행 또는 계속되는 것이 허용될 것이다.
일부 실시예들에서, 사전-접근 규칙은 아이덴티티 데이터로의 판독 접근만이 허용되지만, 일부 실시예들에서 사전-접근 규칙은 예를 들면 ICTO(115)를 개방(또는 개방 시도)할 때의 접근 시도 속성을 기록하는 데 사용될 수 있는 기록 접근 또한 가질 수 있다.
방법(300)은 포터블 동적 규칙 집합(108)이 요청된 데이터를 보호하기 위하여 사용되는 은닉 패턴을 결정하는 블록(306)으로 진행한다. 포터블 동적 규칙 집합(108)은 에이전트의 아이덴티티, 데이터 요청, 데이터가 요청되는 컨텍스트 및/또는 이와 유사한 것에 기반하여 어느 은닉 패턴(107)이 적용되는지를 결정하기 위하여 믹스처 메타데이터(104)를 참고한다. 사용된 은닉 패턴(107)이 결정되면, 방법(300)은 은닉 패턴(107)이 에이전트로 요청된 접근을 제공하는 데 사용되는 블록(308)으로 진행한다. 은닉 패턴(107)이 요청된 데이터를 보호하는데 사용된 기술의 집합을 나타내는 방식과 유사하게, 은닉 패턴(107)은 또한 ICTO(115)에 저장된 보호된 버전으로부터 요청된 데이터를 재구성하는 데 사용된 기술의 집합을 나타낸다. 방법(300)은 다음에 종료 블록으로 진행하여 종료된다.
도 4는 본 개시의 하나의 실시예에 대한 예시적 사용 예를 도시하는 개략적 구성도이다. 본 기술분야의 통상의 지식을 가진 자라면 이 사용 예가 단지 예시이고 본 개시의 특정의 특징을 보여주기 위하여 설명되지만 이 사용 예는 여기에 개시된 기술의 모든 특징을 이용하거나 설명하는 것이 아님을 이해할 것이다. 도 4에서, 제1 사용자(418)는 제1 컴퓨팅 장치(416)를 사용하여, 데이터의 제1 조각(데이터 하나(404)) 및 데이터의 제2 조각(데이터 둘(406))을 보호하기 위하여 본 개시의 실시예를 사용한다. ICTO(408)는 데이터 하나(410)의 보호된 버전 및 데이터 둘(412)의 보호된 버전을 포함하도록 생성된다. ICTO(408)를 생성함에 있어서, 제1 사용자(418)는 제2 사용자(422)가 데이터 하나(404)로 접근할 수 있음을 명시하지만 제2 사용자(422)가 데이터 둘(406)에 접근할 수 있음을 명시하지는 않는다. 따라서, ICTO(408)는 사용자 둘(422)이 - 확인되었다면 - 데이터 하나(404)에 접근하도록 하는 포터블 동적 규칙 집합(108) 내의 규칙을 포함한다.
제1 컴퓨팅 장치(416)는 LAN, 무선 네트워크, 인터넷 및/또는 이와 유사한 것과 같은 네트워크를 통하여 제2 사용자(422)에 의하여 사용된 제2 컴퓨팅 장치(420)로 ICTO(408)를 전송한다. 제2 사용자(422)는 ICTO(408)가 활성화되도록 하고, 데이터 하나(404)로의 접근을 위한 요청(424)을 제출한다. ICTO(408)는 이 ICTO(408)에 저장된 질의/응답 쌍의 처리 및/또는 제2 사용자(422)가 누구를 목적하는지를 확인하기 위한 (인증 서버, RADIUS 또는 기타 승인 서버 및/또는 이와 유사한 것과 같은) 신뢰된 서비스(409)의 참고를 포함하는 제2 사용자(422)의 아이덴티티를 확인한다. 제2 사용자(422)의 아이덴티티가 확인되면, ICTO(408)는 보호된 데이터 하나(410)를 생성하는 데 사용된 은닉 패턴을 참고하고, 제2 사용자(422)에게 데이터 하나(404)로의 접근을 제공하기 위한 은닉 패턴을 사용한다. 제2 사용자(422)는 또한 데이터 둘(406)에 접근하기 위한 요청(426)을 제출한다. 그러나 ICTO(408)가 제2 사용자(422)를 위한 데이터 둘(406)로의 접근을 제공하도록 지시되지 않았기 때문에, ICTO(408)는 제2 사용자(422)에게 데이터 둘(406)로의 접근을 허용하지 않는다.
비록 승인 서비스를 제공하는 신뢰된 서비스(409)가 설명되지만, 신뢰된 서비스의 다른 유형도 사용될 수 있다. 예를 들면, 만약 규칙이 주어진 시간 구간 동안에만 접근을 허용하는 ICTO(408)를 포함한다면, 신뢰된 날짜-시간 값을 제공하는 신뢰된 서비스(409)가 사용될 수 있다. 또 다른 예시로서, 신뢰된 서비스(409)는 ICTO(408)가 에이전트로의 접근을 허락하는지를 결정하는 동안에 다른 사용자로부터 입력을 탐색할 수 있다. 도시된 바와 같이, 신뢰된 서비스(409)는 이메일, SMS 또는 임의의 다른 적절한 기술을 경유하여 제1 사용자(418)에게 접근 시도를 통지할 수 있고, 대응하는 수락이 제1 사용자(418)로부터 수신될 때까지 상기 시도된 접근을 허용하기를 기다릴 수 있다.
이러한 사용 예는 본 개시의 몇 가지 이점을 예시한다. ICTO(408)가 생성되면, 보호된 데이터 하나(410) 및 보호된 데이터 둘(412)은 ICTO(408)의 처리가 접근을 요청하도록 동작시키지 않고는 접속될 수 없다. 따라서, 데이터는 ICTO(408)가 제1 컴퓨팅 장치(416)에 저장될 때, ICTO(408)가 네트워크(402) 상에서 이동 중에 있을 때, ICTO(408)가 제2 컴퓨팅 장치(416)에 저장될 때 보호된다. 또한, 비록 ICTO(408)가 제2 사용자(422)로 데이터 하나(404)로의 접근을 제공하더라도, 데이터 둘(406)은 그럼에도 접근으로부터 보호된다.
이러한 단순한 사용 예가 본 개시의 몇 가지 특징을 예시하는 한편, 훨씬 더 복잡한 예들 또한 가능하다. 예를 들면, 도 5는 본 개시의 일 실시예를 위한 예시적 순서도의 양태를 도시하는 개략적 구성도이다. 제1 사용자(“사용자 A")는 제2 사용자(”사용자 B"), 제3 사용자(“사용자 C”) 및 제4 사용자(“사용자 D")에 의하여 사인될 문서(”문서 X, Y, 및 Z)의 집합을 포함할 수 있다. 문서 X는 사용자 B에 의하여 사인될 필요가 있다. 문서 Y는 사용자 B 및 사용자 C에 의하여 사인될 필요가 있지만, 문서 X가 사인된 이후에만 그렇다. 문서 Z는 사용자 D에 의하여 사인될 필요가 있지만, 문서 X 및 Y가 사인된 이후에만 그렇다. 또한, 문서 X 및 문서 Y는 필요한 경우 도움이 제공되도록 작업 시간(9AM 및 5PM) 동안에 사인되어야 하고, 반면에 문서 Z는 만료일 이전에 사인되어야 한다.
본 개시의 실시예들은 이러한 작업 흐름을 지원할 것이다. 사용자 A는 문서 X, Y 및 Z를 포함하는 ICTO를 생성한다. 사용자 A는 사용자 B가 문서 X를 재검토하여 사인하도록 허용하는 문서 X에 대한 접근 규칙을 생성한다. 문서 X 상의 시그니처가 획득되면 사용자 A는 사용자 B 및 사용자 C가 문서 Y를 재검토하여 사인하도록 허용하는 문서 Y에 대한 접근 규칙을 생성한다. 사용자 A는 사용자 C가 시그니처 검사를 위하여 문서 X를 재검토하도록 허용하는 문선 X에 대한 접근 규칙을 생성할 수 있거나, 또는 문서 X에 대한 접근 규칙은 문서 X에 적용된 시그니처를 검출할 수 있고, 시그니처가 검출되면 사인되도록 허용하는 문서 Y에 대한 접근 규칙을 동적으로 갱신할 수 있다. 사용자 A는 문서 X 및 Y 상의 시그니처에 대하여 검사하는 문서 Z에 대한 접근 규칙을 생성하고, 이러한 시그니처를 검출하면, 사용자 C는 문서 Z를 사인하도록 허용된다. 이들 규칙들 각각은 또한 연계된 시간 요건을 강화하고, 이러한 시간 요건이 충족되지 않으면 접근을 허용하지 않는다. 사용자 A는 또한 사용자 A가 상기 과정을 감시할 수 있도록, 다시 사용자 A로의 임의의 문서로의 임의의 접근을 보고하는 규칙을 생성할 수 있다. 각 규칙들은 각 사용자가 식별되는 방식, 관련된 우선권, 사용자가 문서로의 접근이 허용되는 장치 및 사용자가 문서로의 접근이 허용되는 위치를 명시할 수 있다.
예를 들어 사용자 B가 ICTO를 수신하면, 사용자 B는 ICTO 내의 실행가능한 코드를 활성화하도록 구성된 애플리케이션을 동작시킨다. 실행가능한 코드는 신뢰된 아이덴티티 서비스를 참고함으로써, 규칙에 포함된 질의에 대한 응답을 검사함으로써 또는 임의의 다른 방법에 의하여 사용자 B의 아이덴티티를 결정한다. 아이덴티티, 시간, 위치 및 다른 요건들이 충족되면, 사용자 B는 문서 X로의 접근이 허용되지만, 다른 문서로의 접근은 허용되지 않는다. 사용자 B가 문서 X를 사인한 후에 ICTO는 다음 사용자로 전송되고, ICTO가 나머지의 작업 흐름을 통과하면서 문서상의 보호를 강화한다.
본 기술분야의 통상의 지식을 가진 자라면 전술한 예들이 단지 예시적이고, 여기에 개시된 발명적 주제에 대한 많은 다른 예들도 가능하다는 것을 이해할 것이다. 예를 들면, 포터블 동적 규칙 집합이 실행가능한 코드를 포함하기 때문에, ICTO는 ICTO의 보안 검사를 만족할 때에만 실행가능한 ‘실행가능한 콘텐츠’를 보호할 수 있다. 또한, ICTO가 임의의 규칙의 성공 또는 실패에 대한 응답으로 이러한 콘텐츠를 실행할 수 있기 때문에, ICTO는 성공적 접근을 기록하거나 데이터 소유자로의 경고, 자기-파괴 순서의 개시 또는 미승인된 접근 시도의 검출시의 기타 동작과 같은 동작을 수행할 수 있다.
도 6은 본 개시의 실시예들에 사용하기에 적합한 컴퓨팅 장치(500)의 예시적 하드웨어 아키텍처를 도시하는 블록도이다. 본 기술분야의 통상의 지식을 가진 자 등은 컴퓨팅 장치(500)가 데스크톱 컴퓨터, 서버 컴퓨터, 랩톱 컴퓨터, 내장형 컴퓨팅 장치, ASIC(application-specific integrated circuit), 스마트폰, 태블릿 컴퓨터 및/또는 이와 유사한 것을 포함하지만, 이에 한정되지는 않는 임의의 수의 현재 이용가능하거나 아직 개발되지 않는 장치의 어느 하나일 수 있다는 것을 이해할 것이다. 가장 기본적 구성에서, 컴퓨팅 장치(500)는 통신 버스(506)에 의하여 연결된 하나 이상의 프로세서(502) 및 시스템 메모리(504)를 포함한다. 장치의 정확한 구성 및 유형에 의존하여, 시스템 메모리(504)는, ROM(read only memory), RAM(random access memory), EEPROM, 플래시 메모리 또는 유사한 메모리 기술과 같은 휘발성 또는 비휘발성 메모리일 수 있다. 본 기술분야의 통상의 지식을 가진 자 등은 전형적으로 시스템 메모리(504)가 프로세서(502)로 즉시 접근가능하고/접근가능하거나 현재 프로세서에 의하여 동작하고 있는 데이터 및/또는 프로그램 모듈을 저장한다는 것을 이해할 것이다. 이 점에서, 프로세서(502)는 명령의 실행을 지원함으로써 컴퓨팅 장치(500)의 계산 중심부로 제공된다.
도 6에 더 도시된 바와 같이, 컴퓨팅 장치(500)는 네트워크상의 다른 장치와 통신하기 위한 하나 이상의 컴포넌트를 포함하는 네트워크 인터페이스(510)를 포함할 수 있다. 본 개시의 실시예들은 공통 네트워크 프로토콜을 사용하여 통신을 수행하기 위하여 네트워크 인터페이스(510)를 이용하는 기본 서비스에 접근할 수 있다. 도 6에 도시된 예시적 실시예에서, 컴퓨팅 장치(500)는 또한 저장 매체(508)를 포함한다. 그러나 서비스는 데이터를 지속하기 위한 수단을 포함하지 않는 컴퓨팅 장치를 사용하여 지역 저장 매체에 접근될 수 있다. 따라서, 도 6에 도시된 저장 매체(508)는 저장 매체(508)가 선택사항임을 나타내기 위하여 파선으로 나타낸다. 임의의 이벤트에서 저장 매체(508)는 하드 드라이브, SSD(solid state drive), CD ROM, DVD 또는 기타 디스크 저장소, 자성 카세트, 자성 테이프, 자성 디스크 저장소 및 이와 유사한 것과 같은 것들이지만, 이에 한정되지 않고 정보를 저장할 수 있는 임의의 기술을 사용하여 실행되는 휘발성 또는 비휘발성, 분리형 또는 비분리형 저장 매체일 수 있다.
여기에 사용된 바와 같이, 용어 “컴퓨터 판독가능한 매체”는 컴퓨터 판독가능한 명령, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장할 수 있는 임의의 방법 또는 기술로 실행된 휘발성 및 비휘발성 및 분리형 및 비분리형 매체를 포함한다. 이 점에서 도 6에 도시된 시스템 메모리(504) 및 저장 매체(508)는 단지 컴퓨터 판독가능한 매체의 예시에 불과하다.
프로세서(502), 시스템 메모리(504), 통신 버스(506), 저장 매체(508) 및 네트워크 인터페이스(510)를 포함하는 컴퓨팅 장치의 적절한 실행이 알려져 있고 상업적으로 사용가능하다. 예시의 편의 및 청구된 발명적 주제의 이해에 중요한 것이 아니므로, 도 6은 많은 컴퓨팅 장치의 일부 전형적 컴포넌트를 보여주지 않는다. 이 점에서 컴퓨팅 장치(500)는 키보드, 마우스, 마이크, 터치 입력 장치 및/또는 이와 유사한 것과 같은 입력 장치를 포함할 수 있다. 유사하게, 컴퓨팅 장치(500)는 또한 디스플레이, 스피커, 프린터 및/또는 이와 유사한 것과 같은 출력 장치도 포함할 수 있다.
예시적 실시예들이 도시되고 설명되었지만, 본 청구된 발명적 주제의 뜻 및 범위를 벗어나지 않고 다양한 변경이 수행될 수 있음이 이해될 것이다.

Claims (50)

  1. 저장된 지능형 사이퍼 전송 오브젝트를 갖는 컴퓨터-판독가능한 매체로서,
    상기 지능형 사이퍼 전송 오브젝트는 포터블 동적 규칙 집합을 포함하는 참가자 집합을 포함하고,
    컴퓨팅 장치의 하나 이상의 프로세서에 의한 실행에 대한 응답으로, 상기 포터블 동적 규칙 집합은 상기 컴퓨팅 장치가:
    에이전트로부터 상기 참가자 집합 중 참가자의 일부분으로의 접근 요청을 수신하고;
    상기 에이전트는 상기 요청된 참가자 부분으로의 접근이 승인되고; 그리고
    상기 에이전트에 대하여 상기 참가자 집합의 다른 부분으로의 접근을 제공하지 않고 상기 에이전트에 대하여 상기 요청된 참가자 부분으로의 접근을 제공하는 동작을 수행하도록 하는, 컴퓨터-판독가능한 매체.
  2. 제1항에 있어서, 상기 포터블 동적 규칙 집합은 상기 지능형 사이퍼 전송 오브젝트 내의 가변 위치에 위치하고, 상기 포터블 동적 규칙 집합은 상기 지능형 사이퍼 전송 오브젝트의 속성에 기반하는 실행을 위하여 상기 지능형 사이퍼 전송 오브젝트 내에서 발견될 수 있는, 컴퓨터-판독가능한 매체.
  3. 제1항 또는 제2항에 있어서, 상기 포터블 동적 규칙 집합은 참가자에 접근할 수 있는 에이전트에게 지시하는 하나 이상의 규칙 및 상기 에이전트가 상기 참가자에 접근할 수 있는 컨텍스트를 포함하는, 컴퓨터-판독가능한 매체.
  4. 제3항에 있어서, 상기 에이전트가 상기 참가자에 접근할 수 있는 상기 컨텍스트는 기간, 위치 및 컴퓨팅 장치의 아이덴티티(identity) 중 하나 이상을 포함하는, 컴퓨터-판독가능한 매체.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 참가자 집합은 은닉 패턴(cloaking pattern) 집합 및 혼합 메타데이터를 포함하고, 상기 은닉 패턴 집합의 각 은닉 패턴은 상기 지능형 사이퍼 전송 오브젝트의 참가자에게 적용되는 변환 집합을 나타내며, 상기 혼합 메타데이터는 상기 은닉 패턴 집합의 어떤 은닉 패턴이 상기 참가자 집합의 각 참가자로의 접근에 사용가능한지를 나타내는 정보를 포함하는, 컴퓨터-판독가능한 매체.
  6. 제5항에 있어서, 제1 은닉 패턴은 주어진 참가자에 접근하는 제1 에이전트에 의하여 사용가능하고, 상기 제1 은닉 패턴과 상이한 제2 은닉 패턴은 상기 주어진 참가자에 접근하는 제2 에이전트에 의하여 사용가능한, 컴퓨터-판독가능한 매체.
  7. 제5항에 있어서, 제1 은닉 패턴이 제1 참가자에게 적용되고, 상기 제1 은닉 패턴과 상이한 제2 은닉 패턴이 제2 참가자에게 적용되는, 컴퓨터-판독가능한 매체.
  8. 제5항에 있어서, 상기 변환 집합은 데이터 압축 기술, 데이터 정규화 기술 및 데이터 암호화 기술 중 하나 이상을 포함하는, 컴퓨터-판독가능한 매체.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 포터블 동적 규칙 집합은 상기 컴퓨팅 장치가:
    상기 참가자 집합 중 참가자의 일부분에의 접근에 대한 요청이 승인되지 않았다는 결정에 대한 응답으로, 상기 포터블 동적 규칙 집합 내의 하나 이상의 규칙이 상기 미승인 접근 요청을 다루기 위하여 실행되도록 하는 동작을 더 수행하도록 하는, 컴퓨터-판독가능한 매체.
  10. 제9항에 있어서, 상기 미승인 접근 요청을 다루기 위하여 실행되는 하나 이상의 규칙은 상기 지능형 사이퍼 전송 오브젝트가 자기 파괴(self destruct)되도록 하는, 컴퓨터-판독가능한 매체.
  11. 제9항에 있어서, 상기 미승인 접근 요청을 다루기 위하여 실행되는 하나 이상의 규칙은 메시지가 데이터 소유자에게 전송되도록 하는, 컴퓨터-판독가능한 매체.
  12. 제9항에 있어서, 상기 미승인 접근 요청을 다루기 위하여 실행되는 하나 이상의 규칙은 상기 미승인 접근 요청의 기록이 상기 지능형 사이퍼 전송 오브젝트에 저장되도록 하는, 컴퓨터-판독가능한 매체.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서, 상기 포터블 동적 규칙 집합은 상기 컴퓨팅 장치가:
    상기 참가자 집합의 참자자의 일부분에의 접근에 대한 요청이 승인되었다는 결정에 대한 응답으로, 상기 포터블 동적 규칙 집합 내의 하나 이상의 규칙이 상기 승인 접근 요청을 다루기 위하여 실행되도록 하는 동작을 더 수행하도록 하는, 컴퓨터-판독가능한 매체.
  14. 제13항에 있어서, 상기 승인 접근 요청을 다루기 위하여 실행되는 하나 이상의 규칙은 상기 참가자의 상기 요청된 부분이 은닉해제되어 상기 요청 에이전트로 제공되는, 컴퓨터-판독가능한 매체.
  15. 제13항에 있어서, 상기 승인 접근 요청을 다루기 위하여 실행되는 하나 이상의 규칙은 메시지가 데이터 소유자에게 전송되도록 하는, 컴퓨터-판독가능한 매체.
  16. 제13항에 있어서, 상기 승인 접근 요청을 다루기 위하여 실행되는 하나 이상의 규칙은 상기 승인 접근 요청의 기록이 상기 지능형 사이퍼 전송 오브젝트에 저장되도록 하는, 컴퓨터-판독가능한 매체.
  17. 제13항에 있어서, 상기 승인 접근 요청을 다루기 위하여 실행되는 하나 이상의 규칙은 상기 요청 에이전트의 시그니처(signature)가 상기 참가자의 상기 요청 부분과 연계되도록 하는, 컴퓨터-판독가능한 매체.
  18. 제13항에 있어서, 상기 승인 접근 요청을 다루기 위하여 실행되는 하나 이상의 규칙은 상기 포터블 동적 규칙 집합의 적어도 하나의 규칙이 부가, 수정 또는 삭제되도록 하는, 컴퓨터-판독가능한 매체.
  19. 제1항 내지 제18항 중 어느 한 항에 있어서, 상기 지능형 사이퍼 전송 오브젝트는 내포(nested) 지능형 사이퍼 전송 오브젝트를 더 포함하는, 컴퓨터-판독가능한 매체.
  20. 제1항 내지 제19항 중 어느 한 항에 있어서, 상기 지능형 사이퍼 전송 오브젝트는 외부 지능형 사이퍼 전송 오브젝트 내에 내포되는, 컴퓨터-판독가능한 매체.
  21. 제1항 내지 제20항 중 어느 한 항에 있어서, 상기 참가자 집합 중 참가자의 일부분이 암호화 상태에서 상기 지능형 사이퍼 전송 오브젝트 내에 저장되고, 상기 에이전트에 대하여 상기 요청된 참가자 부분에의 접근 제공은 상기 에이전트에게 해독키를 제공하지 않고 상기 해독키를 사용하는 상기 참가자 집합의 상기 참가자의 상기 암호화 부분을 해독하는 것을 포함하는, 컴퓨터-판독가능한 매체.
  22. 제1항 내지 제21항 중 어느 한 항에 인용된 상기 지능형 사이퍼 전송 오브젝트를 생성하는, 컴퓨터-실행된 방법.
  23. 승인된 에이전트로부터의 요청에 대한 응답으로 지능형 사이퍼 전송 오브젝트에 저장된 참가자로의 접근을 제공하고, 그렇지 않으면 상기 지능형 사이퍼 전송 오브젝트에 저장된 참가자로의 접근을 방지하기 위하여 제1항 내지 제21항 중 어느 한 항에 인용된 상기 지능형 사이퍼 전송 오브젝트의 상기 실행가능한 부분을 실행하도록 구성된, 컴퓨팅 장치.
  24. 참가자 집합을 보호하는 컴퓨터-실행된 방법으로서, 상기 방법은:
    컴퓨팅 장치에 의하여, 보호될 참가자 집합을 획득하는 단계;
    상기 참가자 집합을 보호하기 위한 하나 이상의 은닉 패턴을 결정하는 단계로서, 제1 은닉 패턴은 상기 참가자 집합의 제1 부집합을 보호하기 위하여 사용되고, 상기 제1 은닉 패턴과 상이한 제2 은닉 패턴은 상기 참가자 집합의 제2 부집합을 보호하기 위하여 사용되는 단계;
    상기 컴퓨팅 장치에 의하여, 은닉 참가자 집합을 생성하기 위하여 상기 참가자 집합에 대한 상기 결정된 은닉 패턴을 적용하는 단계; 그리고
    상기 컴퓨팅 장치에 의하여, 상기 은닉 참가자 집합을 지능형 사이퍼 전송 오브젝트에 부가하는 단계를 포함하는, 컴퓨터-실행된 방법.
  25. 제24항에 있어서, 상기 지능형 사이퍼 전송 오브젝트에 상기 하나 이상의 은닉 패턴을 부가하는 단계를 더 포함하는, 컴퓨터-실행된 방법.
  26. 제24항 또는 제25항에 있어서, 상기 하나 이상의 은닉 패턴을 결정하는 단계는 주어진 에이전트의 아이덴티티에 기반하여 상기 주어진 에이전트에 대하여 은닉 패턴을 결정하는 단계를 포함하는, 컴퓨터-실행된 방법.
  27. 제24항 내지 제26항 중 어느 한 항에 있어서, 상기 하나 이상의 은닉 패턴을 결정하는 단계는 혼합 메타데이터 참가자에 연계(association)를 부가하여 주어진 에이전트 외의 임의의 에이전트에 의한 접근으로부터 주어진 참가자를 보호하기 위하여 사용되는 은닉 패턴을 나타내는 단계를 포함하는, 컴퓨터-실행된 방법.
  28. 제27항에 있어서, 상기 지능형 사이퍼 전송 오브젝트에 상기 혼합 메타데이터 참가자를 부가하는 단계를 더 포함하는, 컴퓨터-실행된 방법.
  29. 제24항 내지 제28항 중 어느 한 항에 있어서, 상기 지능형 사이퍼 전송 오브젝트에 포터블 동적 규칙 집합을 부가하는 단계를 더 포함하고, 상기 포터블 동적 규칙 집합의 하나 이상의 규칙은 상기 지능형 사이퍼 전송 오브젝트 내에서 상기 참가자에의 접근을 수행하기 위하여 컴퓨팅 장치에 의하여 실행가능한, 컴퓨터-실행된 방법.
  30. 제29항에 있어서, 상기 지능형 사이퍼 전송 오브젝트에 상기 포터블 동적 규칙 집합을 부가하는 단계는 상기 지능형 사이퍼 전송 오브젝트의 속성에 기반하는 상기 지능형 사이퍼 전송 오브젝트 내의 위치에 상기 포터블 동적 규칙 집합을 부가하는 단계를 포함하는, 컴퓨터-실행된 방법.
  31. 제24항 내지 제30항 중 어느 한 항에 있어서, 보호될 상기 참가자 집합은 지능형 사이퍼 전송 오브젝트를 포함하는, 컴퓨터-실행된 방법.
  32. 제24항 내지 제31항 중 어느 한 항에 따른 방법을 수행하도록 구성된, 컴퓨팅 장치.
  33. 컴퓨팅 장치의 하나 이상의 프로세서에 의한 실행에 대응하여, 제24항 내지 제31항 중 어느 한 항에 따른 방법을 수행하도록 하는 저장된 컴퓨터-실행가능한 명령을 포함하는, 컴퓨터-판독가능한 매체.
  34. 지능형 사이퍼 전송 오브젝트에 의하여 보호되는 데이터에의 접근을 수행하는 컴퓨터-실행된 방법으로서,
    컴퓨팅 장치에 의하여, 상기 지능형 사이퍼 전송 오브젝트에 저장된 참가자의 일부분에 접근하고자 하는 에이전트로부터의 접근 요청을 수신하는 단계;
    상기 컴퓨팅 장치에 의하여, 상기 지능형 사이퍼 전송 오브젝트 내에 포터블 동적 규칙 집합을 활성화하는 단계;
    상기 컴퓨팅 장치에 의하여, 상기 접근 요청을 평가하기 위해 상기 포터블 동적 규칙 집합 내의 하나 이상의 규칙을 실행하는 단계; 및
    상기 접근 요청이 허용되었다는 결정에 대한 응답으로, 다른 참가자 부분에의 접근을 제공하지 않고 상기 에이전트에 의하여 요청된 상기 참가자의 상기 부분에의 접근을 제공하는 단계를 포함하는, 컴퓨터-실행된 방법.
  35. 제34항에 있어서, 상기 에이전트로부터의 상기 접근 요청은 상기 참가자의 상기 부분의 판독 요청을 포함하는, 컴퓨터-실행된 방법.
  36. 제34항 또는 제35항에 있어서, 상기 에이전트로부터의 상기 접근 요청은 상기 참가자의 상기 부분으로의 기록 요청을 포함하는, 컴퓨터-실행된 방법.
  37. 제34항 내지 제36항 중 어느 한 항에 있어서, 상기 에이전트로부터의 상기 접근 요청은 상기 참가자의 상기 부분과 연계된 시그니처의 부가 요청을 포함하는, 컴퓨터-실행된 방법.
  38. 제34항 내지 제37항 중 어느 한 항에 있어서, 상기 포터블 동적 규칙 집합을 활성화하는 단계는 상기 지능형 사이퍼 전송 오브젝트의 속성에 기반하여 상기 지능형 사이퍼 전송 오브젝트 내에 상기 포터블 동적 규칙 집합의 가변 위치를 결정하는 단계를 포함하는, 컴퓨터-실행된 방법.
  39. 제34항 내지 제38항 중 어느 한 항에 있어서, 상기 접근 요청을 평가하는 단계는 상기 에이전트의 아이덴티티(identity)를 확인하는 단계를 포함하는, 컴퓨터-실행된 방법.
  40. 제34항 내지 제39항 중 어느 한 항에 있어서, 상기 접근 요청을 평가하는 단계는 상기 접근 요청이 수신된 위치가 허용되었음을 확인하는 단계를 포함하는, 컴퓨터-실행된 방법.
  41. 제34항 내지 제40항 중 어느 한 항에 있어서, 상기 접근 요청을 평가하는 단계는 허용 시간 구간 동안에 상기 접근 요청이 제출되었음을 확인하는 단계를 포함하는, 컴퓨터-실행된 방법.
  42. 제34항 내지 제41항 중 어느 한 항에 있어서, 상기 에이전트에 의하여 요청된 상기 참가자의 상기 부분에의 접근을 제공하는 단계는:
    상기 에이전트에 의하여 요청된 상기 참가자의 상기 부분을 보호하기 위하여 사용된 은닉 패턴(cloaking pattern)을 결정하는 단계; 및
    상기 지능형 사이퍼 전송 오브젝트로부터 상기 참가자의 상기 부분의 접근가능한 버전(version)을 획득하기 위하여 상기 은닉 패턴을 사용하는 단계를 포함하는, 컴퓨터-실행된 방법.
  43. 제42항에 있어서, 상기 은닉 패턴을 결정하는 단계는 상기 에이전트와 연계되고 상기 지능형 사이퍼 전송 오브젝트의 혼합 메타데이터 참가자 내에 저장된 정보에 기반하여 상기 지능형 사이퍼 전송 오브젝트의 은닉 패턴 참가자로부터 은닉 패턴을 탐색(retrieving)하는 단계를 포함하는, 컴퓨터-실행된 방법.
  44. 제34항 내지 제43항 중 어느 한 항에 있어서, 상기 접근 요청을 평가하는 단계는 상기 접근 요청의 기록을 생성하고 상기 지능형 사이퍼 전송 오브젝트 내에 상기 기록을 저장하는 단계를 포함하는, 컴퓨터-실행된 방법.
  45. 제34항 내지 제44항 중 어느 한 항에 있어서, 상기 접근 요청을 평가하는 단계는 상기 접근 요청에 관하여 데이터 소유자에게 통지(notification)를 전송하는 단계를 포함하는, 컴퓨터-실행된 방법.
  46. 제34항 내지 제45항 중 어느 한 항에 있어서, 상기 접근 요청이 허용되지 않았다는 결정에 대한 응답으로,
    상기 참가자의 상기 부분에의 접근을 부정하는 단계; 및
    방어적 동작을 취하기 위해 상기 포터블 동적 규칙 집합 내의 하나 이상의 규칙을 실행하는 단계를 더 포함하는, 컴퓨터-실행된 방법.
  47. 제46항에 있어서, 상기 방어적 동작은 상기 지능형 사이퍼 전송 오브젝트가 자기-파괴되도록 하는 단계를 포함하는, 컴퓨터-실행된 방법.
  48. 제46항 또는 제47항에 있어서, 상기 방어적 동작은 데이터 소유자에게 상기 비허용 접근 시도를 통지하는 것을 포함하는, 컴퓨터-실행된 방법.
  49. 제34항 내지 제48항 중 어느 한 항에 따른 방법을 수행하도록 구성된, 컴퓨팅 장치.
  50. 컴퓨팅 장치의 하나 이상의 프로세서에 의한 실행에 대한 응답으로, 상기 컴퓨팅 장치가 제34항 내지 제48항 중 어느 한 항에 따른 방법을 수행하도록 하는 저장된 컴퓨터-실행가능한 명령을 포함하는, 컴퓨터-판독가능한 매체.
KR1020147018657A 2011-12-09 2012-12-10 데이터 보호를 위해 사이퍼 오브젝트를 사용하기 위한 시스템 및 방법 KR20140100986A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161569162P 2011-12-09 2011-12-09
US61/569,162 2011-12-09
PCT/US2012/068826 WO2013086532A1 (en) 2011-12-09 2012-12-10 Systems and methods for using cipher objects to protect data

Publications (1)

Publication Number Publication Date
KR20140100986A true KR20140100986A (ko) 2014-08-18

Family

ID=48573317

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147018657A KR20140100986A (ko) 2011-12-09 2012-12-10 데이터 보호를 위해 사이퍼 오브젝트를 사용하기 위한 시스템 및 방법

Country Status (12)

Country Link
US (1) US20130152160A1 (ko)
EP (1) EP2788914A1 (ko)
JP (1) JP2015505088A (ko)
KR (1) KR20140100986A (ko)
AU (1) AU2012347452A1 (ko)
BR (1) BR112014013805A2 (ko)
CA (1) CA2858719A1 (ko)
IL (1) IL232968A0 (ko)
RU (1) RU2014126062A (ko)
SG (1) SG11201402874PA (ko)
TW (1) TW201337619A (ko)
WO (1) WO2013086532A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9792451B2 (en) 2011-12-09 2017-10-17 Echarge2 Corporation System and methods for using cipher objects to protect data
US12072989B2 (en) 2011-12-09 2024-08-27 Sertainty Corporation System and methods for using cipher objects to protect data
US9336363B2 (en) * 2014-01-21 2016-05-10 Cofactor Computing Llc Method and system for secure deployment of information technology (IT) solutions in untrusted environments
US9460302B2 (en) * 2014-01-21 2016-10-04 Cofactor Computing Llc Method and system for shielding data in transit and data in memory
US10019564B2 (en) 2014-03-28 2018-07-10 Cryptography Research, Inc. Authentication of a device
KR102202775B1 (ko) * 2014-04-17 2021-01-14 이차지2 코포레이션 데이터를 보호하기 위해 암호 객체들을 사용하는 시스템 및 방법들
US11283604B2 (en) * 2015-05-29 2022-03-22 Microsoft Technology Licensing, Llc Sharing encrypted data with enhanced security by removing unencrypted metadata
US10614119B2 (en) 2016-01-19 2020-04-07 Regwez, Inc. Masking restrictive access control for a user on multiple devices
US11386409B2 (en) 2016-03-04 2022-07-12 Sertintyone Corporation Systems and methods for media codecs and containers
US11463439B2 (en) 2017-04-21 2022-10-04 Qwerx Inc. Systems and methods for device authentication and protection of communication on a system on chip
US10122699B1 (en) * 2017-05-31 2018-11-06 InfoSci, LLC Systems and methods for ephemeral shared data set management and communication protection
JP7316283B2 (ja) * 2018-01-16 2023-07-27 エヌチェーン ライセンシング アーゲー デジタル署名されたデータを取得するためのコンピュータにより実施される方法及びシステム
US11516192B2 (en) * 2019-12-19 2022-11-29 Augustine Fou System and method for combinatorial security
US12099997B1 (en) 2020-01-31 2024-09-24 Steven Mark Hoffberg Tokenized fungible liabilities
US10979848B1 (en) * 2021-01-05 2021-04-13 Near Pte. Ltd. Method for identifying a device using attributes and location signatures from the device

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6519700B1 (en) * 1998-10-23 2003-02-11 Contentguard Holdings, Inc. Self-protecting documents
CA2287871C (en) * 1999-11-01 2007-07-31 Ibm Canada Limited-Ibm Canada Limitee Secure document management system
AU7182701A (en) * 2000-07-06 2002-01-21 David Paul Felsher Information record infrastructure, system and method
US7380120B1 (en) * 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
US7703140B2 (en) * 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
KR100782847B1 (ko) * 2006-02-15 2007-12-06 삼성전자주식회사 복수의 컨텐트 부분들을 포함하는 컨텐트를 임포트하는방법 및 장치
US7836080B2 (en) * 2006-12-22 2010-11-16 International Business Machines Corporation Using an access control list rule to generate an access control list for a document included in a file plan
US9400891B2 (en) * 2009-01-23 2016-07-26 Randall Stephens Owner controlled transmitted file protection and access control system and method
GB2467580B (en) * 2009-02-06 2013-06-12 Thales Holdings Uk Plc System and method for multilevel secure object management

Also Published As

Publication number Publication date
JP2015505088A (ja) 2015-02-16
SG11201402874PA (en) 2014-07-30
BR112014013805A8 (pt) 2017-06-13
EP2788914A1 (en) 2014-10-15
AU2012347452A1 (en) 2014-06-26
TW201337619A (zh) 2013-09-16
IL232968A0 (en) 2014-07-31
BR112014013805A2 (pt) 2017-06-13
CA2858719A1 (en) 2013-06-13
WO2013086532A1 (en) 2013-06-13
US20130152160A1 (en) 2013-06-13
RU2014126062A (ru) 2016-01-27

Similar Documents

Publication Publication Date Title
US11093623B2 (en) System and methods for using cipher objects to protect data
KR20140100986A (ko) 데이터 보호를 위해 사이퍼 오브젝트를 사용하기 위한 시스템 및 방법
JP6542962B2 (ja) 遅延データアクセス
Tan et al. A survey on proof of retrievability for cloud data integrity and availability: Cloud storage state-of-the-art, issues, solutions and future trends
US20240265120A1 (en) System and methods for using cipher objects to protect data
Thilakanathan et al. Secure and controlled sharing of data in distributed computing
JP6982142B2 (ja) 暗号オブジェクトを使用してデータを保護するためのシステムおよび方法
Mothlabeng et al. An Algorithm to Enhance Data Integrity in Cloud Computing
Cabianca Ensuring Data Protection
NZ763404B2 (en) System and methods for using cipher objects to protect data
CN115470525A (zh) 一种文件保护方法、系统、计算设备及存储介质
NZ726067B2 (en) System and methods for using cipher objects to protect data
BR112016024193B1 (pt) Sistema e métodos para utilizar objetos de cifra para proteger dados

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application