KR20110079660A - 태그 데이터 요소의 암호화와 동작 제어 프로세스-1 - Google Patents

태그 데이터 요소의 암호화와 동작 제어 프로세스-1 Download PDF

Info

Publication number
KR20110079660A
KR20110079660A KR1020117008887A KR20117008887A KR20110079660A KR 20110079660 A KR20110079660 A KR 20110079660A KR 1020117008887 A KR1020117008887 A KR 1020117008887A KR 20117008887 A KR20117008887 A KR 20117008887A KR 20110079660 A KR20110079660 A KR 20110079660A
Authority
KR
South Korea
Prior art keywords
key
encryption
user
encrypted
split
Prior art date
Application number
KR1020117008887A
Other languages
English (en)
Inventor
에드워드 엠. 샤이트
제임스 엘. 콜로치
Original Assignee
텍섹 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 텍섹 인코포레이티드 filed Critical 텍섹 인코포레이티드
Publication of KR20110079660A publication Critical patent/KR20110079660A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

조직 스플리트, 유지 스플리트, 랜덤 스플리트 및 적어도 하나의 라벨 스플리트(710)를 묶어서 암호화키를 발생하는 단계를 포함하는 연관된 목적물 태그를 갖는 목적물을 암호화하는 프로세스. 암호화 알고리즘이 암호화키를 가지고 초기화되며, 목적물 태그에 따라 암호화 알고리즘(712)을 이용하여 목적물이 암호화된다. 암호화된 목적물(711)에 결합기 데이터가 부가된다. 상기 결합기 데이터는 기준 데이터, 이름 데이터, 유지 스플리트 또는 유지 레벨, 및 랜덤 스플리트(710)를 포함한다. 다른 방법으로, 키 스플리트는 암호화키를 발생하도록 되어 있고, 암호화 알고리즘은 암호화키를 가지고 초기화된다. 초기화된 암호화 알고리즘은 목적물 태그에 의해 결정된 암호화 계획에 따라 목적물에 적용된다. 키 스플리트 중 하나는 생체 측정에 대응한다.

Description

태그 데이터 요소의 암호화와 동작 제어 프로세스-1{Process of Encryption and Operational Control of Tagged Data Elements-1}
본 발명은 데이터의 보호와 정보 및 동작(operation)에 대한 물리적 또는 전자적인 접근을 제한하기 위한 방법에 관한 것이다.
키(key)는 암호화 계획의 가장 중요한 부분이다. 그들의 관리는 임의의 암호 기반 보안의 중대한 요소이다. 키 관리의 진정한 유효성은 사용자의 상호 작용을 필요로 하지 않고 또한 시스템 성능이나 비용의 불리함 없이 키가 생성되고, 분배되어 유지될 수 있는 능력이다.
또한 공용키(public key)라 불리는 비대칭의 암호작성법(cryptography)은 근년에 중대한 관심을 받고 있다. 공용키 방법은 공용키로부터 개인키(private key)를 추출하는 데 어려운 방법을 제공하는 분리된 공용 암호화키 및 개인 암호 해독키를 포함한다. 공용키 관리는 DES(Data Encryption Standard)와 같은 대칭 암호가 실행되도록 한 후 통신 채널에 2 점 사이의 암호화 접속가능성(connectivity)을 수립하도록 개발되었다. 수년에 걸쳐 공용키 구현물들은 엔티티(entities) 사이의 진정성을 입증하기 위한 유효성을 증명해왔다. 그러나, 공용키 방법은 오늘날의 국제적인 네트워크의 요구사항을 성공적으로 처리할 수 없었다.
근래의 많은 공용키 구현물에서는 사용자가 그들 자신의 키를 생성할 수 있게 한다. 이러한 것들은 조직이 공격받기 쉬게 방치하여 몇몇 경우에는 만약 사용자가 남겨서 개인키를 식별하는 데 실패하는 경우 책임을 져야 한다. 또한, 공용키의 완전무결성을 보장하기 위하여 제3자 하부구조 디자인이 제안되었다. 인증기관(Certificate Authority) 프로세스는 어떤 공용키가 특정 사용자에 대해 발행된 것을 확인한다. 제3자에 대한 인증서의 교환은 네트워크의 성능에 중대한 충격(나쁜 영향)을 줄 수 있다.
공용키 프로세스는 또한 높은 계산 시간과 연관되어 있다. 많은 경우에 하드웨어 솔루션은 이들 높은 계산 요구사항들을 보상하였다. 공용키 아키텍처는 역사적으로 포인트-투-포인트 설계이므로, 정보의 그룹 공유(group sharing)가 이루어지는 분산 네트워크로 이동하는 것은 더 높은 전송 비용과 더 큰 네트워크 충격이 발생할 수 있다. 공용키 관리 시스템은 포인트-투-포인트 통신 및 일대일 정보 전송에서 잘 동작하는 반면에 서버에 위치하며 수천 사용자에 의해 암호 해독되는 단일 파일에 대하여는 너무 많은 시간이 걸리고 있다. 작업 그룹들 및 복잡한 통신 하부조직들에 대한 경향이 계속되기 때문에 더 효과적인 정보 및 통신 키 관리기술에 대한 필요성이 매우 중요하게 되고 있다.
대칭 키 암호 시스템에 사용되는 공유 비밀키(secret key)는 가장 초기의 키관리 디자인이며 공용키 관리보다 앞서 있다. 초기 대칭 키 디자인은 요구되는 다수의 키가 매우 크고 다수의 사용자가 증가할 때 관리가 되지 않기 때문에 “n-공유” 문제를 안고 있었다. 또한, 이들 디자인은 효과적인 인증이 이루어지지 않았다. 대칭 암호화는 공용키 구현물 보다 상당히 더 좋은 처리 성능을 나타내고 있다.
일반적으로, 암호화 시스템은 데이터의 전송 및/또는 저장 시에 정보의 승인되지 않은 개시를 방지하는 데 사용된다. 암호화 프로세스는 데이터의 조작을 포함하고 있어 그 결과 승인되지 않은 엔티티에 대하여 사실상 내용에 접근할 수 없는 판독 불가능한 것이다. 암호 해독 프로세스는 암호화된 데이터의 조작을 포함하여 데이터의 원래 예정된 조건을 다시 생성하거나 또는 원래 암호화되지 않은 데이터에 대응하는 판독 가능한 데이터로 암호화 데이터를 변형시킨다. 비밀은 암호화에 의해 제공되는 최고의 이점은 아니다. 암호화 프로세스는 적절한, 즉 공인된 절차가 따르지 않는 한 변형된 암호화된 데이터가 적절하게 암호 해독이 이루어지지 않기 때문에 데이터 완전성을 보장한다.
기업 세계는 단지 처리될 서류 하나에 의존하여 사용된다. 하드 카피 문서는 기업 통제를 제공하며, 법률상 논쟁을 진정시키는데 사용되었고, 세금 및 규제 당국, 내부 공인된 수령인 및 독립된 회계사에 의한 회계감사의 기초를 형성한다. 만은 경우에 이는 더 이상 사건이 아니다. 비즈니스가 전자적인 연산 및 회계 시스템으로 이동하기 때문에 많은 경우에 하드 카피 서류들이 존재하지 않거나 또는 거의 전자적인 기록에 부수적으로 발생한다. 이러한 하드 카피의 부족은 관리 능력에 영향을 미치며 다른 관심 있는 자가 기업 시스템을 관리하고 감사하게 한다.
오리지널 종이 문서는 현재 전자 파일로 돌려질 수 없다는 확실성의 어느 정도 가정을 지니고 있다. 전자 세계에서 변화를 검출하는 것은 사실상 불가능하게 될 수 있다. 전자적인 데이터 교환을 하는 경우 기업은 컴퓨터, 컴퓨터 프로그램 및 전송 링크를 사용하여 자동적으로 고객 및 공급자와 거래를 한다. 이미지 처리 시스템을 사용하는 경우 서류들은 스캐닝되어 디지털 이미지로 변환된다. 오리지널 문서는 보관되지 않을 수 있다. 약간의 전자 정보는 단지 짧은 기간 동안 존재하며 만약 파일이 업데이트 되거나 백업 파일이 존재하지 않는 경우 회복될 수 없게 될 수 있다.
일부의 기업들은 많은 정보 및 제어 시스템을 가지고 있다. 이러한 환경에서 시스템은 함께 작용하여 재산을 보호하고 신뢰성 있는 데이터 또는 그것의 보증을 제공하는 유형 및 무형 요소의 전체 조합이거나 또는 논리적인 부 파트(sub-part)이다. 시스템의 유형 부분은 제한되는 것을 아니나 종이 서류와 점(marking) 및 그에 대한 서명 뿐 아니라 재산을 보호하는 데 사용된 물리적인 처리와 절차를 포함한다. 무형의 시스템은 명령과 조직을 비즈니스 처리에 제공하는 정책과 절차를 포함한다.
관리 및 다른 관심 있는 자는 정책, 절차 및 명령이 적시에 충분한 정도로 실행되는 지를 판단하여야 한다. 정보 및 제어 시스템은 이러한 것을 보증한다. 공인된 수신인은 정보 및 제어 시스템을 관찰하여 만약 각자의 디자인이 정해진 목적물을 만나는 지를 판단한다. 그들은 또한 모든 적절한 시스템의 상승효과를 관찰하여 그들 전체적인 효과를 판단한다. 만약 모든 시스템 디자인의 합이 정해진 목적물을 생산하는 데 효과적인 것으로 간주되는 경우 공인된 수신인은 그 후 이들 시스템을 테스트하여 시스템이 실제로 존재하여 관리자가 상상하는 것과 같은 기능을 수행하고 있는 지를 시험한다.
포함된 많은 정보량에 기초하여 기업 활동을 관찰하는 공인된 수신인 및 다른 사람은 기업에서 생산된 모든 데이터와 활동을 직접적으로 조사할 수 없다. 그들은 기업의 전체적인 복지(well-being)의 신뢰성 있는 지시를 제공하도록 그들이 직접적으로 조사할 수 있는 활동과 데이터를 평가하기 위한 테스트를 강구하여야 한다. 이들 테스트의 성질, 타이밍 및 범위는 전문적인 판단에 기반을 두고 있다. 테스트는 정해진 제어 요소가 존재하며 의도하는 것과 같이 기능을 하고 있는 지를 검증하는 데 필요한 단계를 포함하고 있다. 테스트는 또한 통계적인 기초에 의해 운영상의 보증이 이루어지도록 특정 거래를 조사하는 것을 포함한다.
통제와 거래의 테스트는 기업 내 뿐 아니라 외부의 엔티티에 의해 생성되는 서류의 조사를 포함할 수 있다. 대차계정, 활동, 계약 등의 확인과 같은 일부의 감사 목적물에 대하여는 기업과 독립된 관계인으로부터 증거는 얻어질 것이다. 공인된 수신인의 목표는 물질적인 실언 또는 시스템 제어 결함을 발견하지 못하는 위험을 받아들 수 있는 레벨로 감소시키는 것이다. 만약 공인된 수신인이 받아들 수 있는 레벨로 검출 위험을 감소시킬 수 없는 경우 부적당한 의견을 포기하는 것은 불가능하게 될 수 있다.
더 많은 비즈니스에 전자 시스템을 채용하여 판매자 및 고객과 전자적으로 교류를 하기 때문에 통제와 거래를 신뢰성 있게 감사하는 능력은 중대한 반대의 통제 및 감사 결과가 보통이라고 말해도 좋을 정도까지 아마도 몇몇 경우에는 크게 감소된다.
본 발명의 프로세스는 공용키와 대칭키 구현물의 이점에 의지하며 단점을 고려하고 있다. 이 프로세스는 분할키(spilt-key) 능력에 기초한 암호화 프로세스를 공용키 기술에 기초한 액세스 제어 자격증명 및 인증 프로세스와 결합시킨다. 프로세스는 정보 흐름 및 통제가 한정될 수 있고, 암호화된 정보가 회복되어야할 필요가 있으며, 공용키 기술과 물리적인 토큰(token)을 사용하는 인증이 구현되는 경우 근대 분배 정보 모델에서 매우 효과적이다.
이 프로세스는 이동 중 데이터(data-in-transit)와 반대인 미사용 데이터(data-at-rest)의 암호화를 강조한다. 미사용 데이터는 논리 유닛(목적물)으로서 암호화된 데이터를 말하며 목적물(object)의 생성, 처리, 전송 및 저장을 포함한다. 이동 중 데이터는 어떤 시간동안 물리적 또는 논리적 통신 채널을 통하여 이동하는 데이터의 스트림 암호화를 말한다. 본 발명의 프로세스는 양 타입의 암호화 모두를 수행할 수 있으나, 쉽게 설명하기 위해 미사용 데이터 능력을 강조할 것이다.
본 발명은 필요할 때 암호화 키(cryptographic key)를 형성하기 위해 미리 위치 설정된 키 스플리트를 사용하는 암호화 키 관리 시스템을 이용한다. 그 구조는 오늘날의 대형 분산 네트워크에 완전한 암호 시스템을 제공한다. 본 발명의 키 관리 시스템은 하기와 같이 한 세트의 전통적인 보안 목적물(objective)을 만날 것이다.
데이터 기밀은 정보의 내용이 그것을 읽도록 승인되지 않은 사람에게 누설되지 않도록 하는 것이다. 본 발명은 각 암호화에 새롭고 독특한 작동키(working key)를 제공하는 강건한 키 관리 시스템을 갖는 대칭 키 암호화를 사용한다. 사용자는 리더쉽(readership)을 “선택”하거나 또는 각 암호화된 목적물에 대하여 정의된 리더쉽을 갖는다. 목적물은 파일, 메시지와 같은 비사용 데이터 또는 네트웍 트래픽과 같은 이동 중 데이터일 수 있다.
액세스 제어는 그들을 사용할 특별한 허가가 주어진 사용자에 대하여 암호화된 목적물의 사용을 제한한다. 본 발명에 따른 액세스 제어는 역할-기반으로 될 수 있으며, 조직 내의 위치 또는 사용자의 의무에 기초하여 허가가 승인되고 취소된다. 그것은 현재 암호화 및 암호해독의 작용을 포함하고 있으나, 어떤 프로그램, 어떤 장치 또는 특정 하드웨어 동작 모드를 사용하는 허가를 포함할 수 있다. 액세스 제어는 또한 데이터베이스 응용으로 확장될 수 있다.
사용자 인증은 시스템에 대한 사용자(사람 또는 장치)의 신원을 확인한다. 사용자 인증은 이하에 논의되는 다른 향상이 본 발명의 시스템과 프로세스에 적용될 때 더 강하게 된다.
스마트 카드 및 생체 측정은 본 발명에 사용자 인증의 목적물을 만나는 경우에 더 큰 보안을 제공한다. 토큰으로 사용될 때 더 강한 사용자 인증을 제공할 뿐 아니라 스마트 카드는 현저한 하드웨어 플랫폼이 될 수 있으며 다양한 레벨의 키 관리 기술을 구현한다. 카드는 메모리-온리 장치로서 사용될 수 있으며, 능력을 처리하는 것을 포함하도록 확장될 수 있다. 슈퍼 카드(SuperCardTM)로 불리는 진보된 스마트 카드는 본 발명에 대한 합법화 기술이다. 증가된 처리와 메모리와 함께 슈퍼 카드는 독특한 무선 주파수 신호와 난수 발생 능력을 포함한다. 이러한 카드는 예를 들어, 미합중국 특허 제6,229,445호에 설명되어 있다.
프로세스에 생체 측정을 부가하면 사용자 인증이 향상되며 시스템이 디지털 서명을 사용하는 비대칭 키 암호화 시스템에 개인키 부분을 발생하기 위한 정보를 제공할 수 있다.
부가적인 목적물을 만나는 것은 설명된 프로세스에 고유한 것을 의미한다. 예를 들어, 데이터 분할은 동일한 물리적인 공간에서 데이터가 아직 강제적으로 액세스 제어가 이루어지는 능력이다. 2개의 알고리즘에 의한 분리와 라벨에 의한 분리의 암호화 수단이 본 발명에 사용된다. 키 회복은 목적물을 암호화하는데 사용된 키를 재발행하는 능력이다. 키 회복은 임의의 특정 도메인(또는 조직) 내에 암호화된 목적물이 어떤 개인의 손실과 함께 잃는 것을 의미한다. 수출을 위한 키 회복은 역시 가능하다.
본 발명에 따라 디지털 서명에 사용된 비대칭 키 암호화는 메시지 인증과 관련된 부가적인 보안 목적물을 만나는 수단을 제안한다. 데이터 원천 인증(때때로 메시지 인증으로 불린다)은 본 발명의 프로세스에 의해 암호화된 정보의 소스를 보강한다. 데이터 무결성(integrity)은 암호화된 목적물이 암호화되고 디지털 서명되기 때문에 변동이 이루어지지 않은 것을 입증하는 능력이다. 만약 디지털 서명이 사용되지 않는 경우 암호화 처리된 메시지 인증 코드(Message Authentication Code: MAC) 또는 조작 검출 코드(Manipulation Detection Code: MDC)는 데이터 무결성을 제공한다. 부인봉쇄(non-repudiation)는 사인된 목적물에 대한 서명이 서명자로부터 왔다는 것을 증명하는 것으로, 서명자가 목적물을 전자적으로 서명하였다는 것을 부인할 수 없는 것이다.
따라서, 암호화 및 암호화된 목적물은 전자적 회계 및 작동 시스템의 입력, 프로세스, 예정된 조건(scheduled condition) 및 가상 환경을 기록 및 인증하는데 사용될 수 있고, 이들 암호화된 목적물을 지정된 개인 또는 엔티티에 의한 액세스를 위해 지정된 장소에 분배하는 수단을 제공하는데 사용될 수 있다.
이러한 관계에 있어서의 입력은 제어 또는 회계 시스템에 대한 어떤 영향을 주는 어떤 개인 행위(action) 또는 행위의 합이 될 수 있다. 이러한 관계에 있어서의 출력은 제어 또는 회계 시스템의 어떤 프로세스 또는 행위의 결과일 수 있다. 이들 행위는 첫 번째 전자적으로 기록된 행위로서 사람에 의해 직접적으로 입력된 사실상의 트랜잭션(transaction)일 수 있고, 또한 시스템 내에서의 계산의 결과일 수 있거나 또는 다른 시스템에 의해 시스템에 귀속될 수 있다.
본 발명의 일 양상에 따르면, 데이터 포맷과 일치하며 연관된 목적물 태그를 갖는 목적물을 암호화하는 프로세스는 다수의 키 스플리트를 결합하여 암호화키를 발생하는 단계를 포함한다. 암호화 알고리즘은 암호화키를 가지고 초기화된다. 초기화된 암호화 알고리즘은 목적물 태그에 의해 적어도 일부가 결정된 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부에 적용하여 암호화된 목적물을 형성한다. 다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부에 대응한다.
의도된 수신자에 의해 후속된 사용을 위해 암호화된 목적물이 저장된다.
목적물이 다수의 목적물로부터 선택될 수 있으며 적어도 일부가 연관된 목적물 태그에 따른다.
상기 목적물은 예를 들어, 확장성 생성 언어(XML) 요소일 수 있다.
다수의 키 스플리트의 적어도 하나의 키 스플리트가 암호화된 목적물에 부가될 수 있다. 유사하게 다수의 키 스플리트의 적어도 하나의 키 스플리트와 연관된 기준 데이터가 암호화된 목적물에 부가될 수 있다.
다수의 키 스플리트의 적어도 하나의 키 스플리트가 저장 매체로부터 검색될 수 있다. 예를 들어, 저장 매체는 스마트 카드에 배치될 수 있다. 유사하게 암호화키를 생성하기 위하여 다수의 키 스플리트를 묶는 작용이 스마트 카드에서 수행될 수 있다.
본 발명의 다른 양상에 따르면, 조직과 연관된 암호화 시스템에서 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 암호화하는 프로세스에 있어서, 조직에 대응하는 조직 스플리트, 유지 스플리트, 랜덤 스플리트 및 적어도 하나의 라벨 스플리트를 묶어서 암호화키를 발생하는 단계를 포함한다. 암호화 알고리즘이 암호화키를 가지고 초기화된다. 목적물의 적어도 일부가 목적물 태그에 의해 적어도 일부가 결정된 초기화된 암호화 알고리즘에 따라 암호화되며 암호화된 목적물을 형성한다.
결합기 데이터가 암호화된 목적물에 부가된다.
상기 결합기 데이터는 적어도 하나의 라벨 스플리트와 암호화 알고리즘 중 적어도 하나에 대응하는 기준 데이터, 조직과 연관된 이름 데이터, 적어도 하나의 유지 스플리트 및 유지 스플리트와 연관된 유지 레벨, 및 랜덤 스플리트를 포함한다. 암호화된 목적물은 의도된 수신자에 의한 후속된 사용을 위해 부가된 결합기 데이터와 함께 저장된다.
목적물이 다수의 목적물로부터 선택되며, 적어도 일부가 연관된 목적물 태그에 따른다.
상기 목적물은 예를 들어, 확장성 생성 언어(XML) 요소일 수 있다.
적어도 하나의 라벨 스플리트가 적어도 하나의 증명서로부터 선택될 수 있다. 이 경우 선택된 적어도 하나의 라벨 스플리트는 암호화되며, 암호화키는 제1암호화키이며, 프로세스는 사용자와 연관된 사용자 ID, 사용자와 연관된 패스워드, 및 독특한 데이터 예 중 적어도 하나 및 랜덤 값으로부터 제2암호화키를 추출하는 단계를 포함한다. 선택된 적어도 하나의 라벨 스플리트가 제2암호화키를 사용하여 암호 해독된다. 적어도 하나의 증명서가 메모리로부터 검색될 수 있다. 예를 들어, 메모리는 스마트 카드에 배치될 수 있다. 시간 스탬프가 목적물이 암호화된 시점과 대응하여 발생되며, 결합기 데이터는 더욱이 시간 스탬프를 포함할 수 있다. 결합기 데이터는 또한 사용자와 연관된 사용자 ID를 포함할 수 있다.
결합기 데이터는 헤더 기록일 수 있다.
결합기 데이터는 또한 디지털 서명과 디지털 인증서를 포함할 수 있다.
암호화키는 제1암호화키이며, 프로세스는 또한 적어도 하나의 라벨 스플리트에 적어도 부분적으로 기초하여 제2암호화키를 발생하는 단계를 포함한다. 랜덤 키는 암호화 목적물에 결합기 데이터를 결합하기 전에 제2암호화키를 사용하여 암호화될 수 있다.
결합기 데이터의 적어도 일부가 암호화 목적물에 결합기 데이터를 부가하기 전에 헤더 스플리트를 사용하여 암호화될 수 있다. 상기 헤더 스플리트는 일정하다.
본 발명의 다른 양상에 따르면, 저장 매체는 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 데이터 프로세서가 암호화하는 명령을 포함한다. 상기 명령은 다수의 키 스플리트를 묶어서 암호화키를 발생하며; 암호화키를 가지고 암호화 알고리즘을 초기화하고; 그리고 목적물 태그에 의해 적어도 일부가 결정된 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부에 초기화된 암호화 알고리즘을 적용하여 암호화된 목적물을 형성하는 것을 포함한다. 다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부에 대응한다.
상기 명령은 다수의 목적물로부터 목적물을 선택하는 것을 더 포함할 수 있으며, 적어도 일부가 연관된 목적물 태그에 따른다.
상기 목적물은 확장성 생성 언어(XML) 요소일 수 있다.
상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트를 암호화된 목적물에 부가하는 것을 또한 포함할 수 있다.
상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트와 연관된 기준 데이터를 암호화된 목적물에 부가하는 것을 더 포함할 수 있다.
상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트를 저장 매체로부터 검색하는 것을 더 포함할 수 있다. 예를 들어, 메모리의 적어도 일부는 스마트 카드에 배치될 수 있다.
상기 데이터 프로세서가 분배되고 암호화키를 발생하는 명령이 스마트 카드의 적어도 일부에서 실행될 수 있다.
본 발명의 다른 양상에 따르면, 저장 매체는 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 데이터 프로세서가 암호화하는 명령을 포함한다. 상기 명령은 조직에 대응하는 조직 스플리트, 유지 스플리트, 랜덤 스플리트 및 적어도 하나의 라벨 스플리트를 묶어서 암호화키를 발생하며; 암호화키를 가지고 암호화 알고리즘을 초기화하고; 목적물 태그에 의해 적어도 일부가 결정된 초기화된 암호화 알고리즘에 따라 목적물의 적어도 일부를 암호화하여 암호화된 목적물을 형성하며; 그리고 암호화된 목적물에 결합기 데이터를 부가하고; 암호화된 목적물을 후속된 액세스를 위해 결합기 데이터와 함께 저장하는 것을 포함한다. 상기 결합기 데이터는 적어도 하나의 라벨 스플리트와 암호화 알고리즘 중 적어도 하나에 대응하는 기준 데이터, 조직과 연관된 이름 데이터, 적어도 하나의 유지 스플리트 및 유지 스플리트에 대응하는 유지 레벨, 및 랜덤 스플리트를 포함한다.
상기 명령은 다수의 목적물로부터 목적물을 선택하는 것을 더 포함하며, 적어도 일부가 연관된 목적물 태그에 따른다.
상기 목적물은 확장성 생성 언어(XML) 요소이다.
상기 명령은 적어도 하나의 증명서로부터 적어도 하나의 라벨 스플리트를 선택하는 것을 더 포함할 수 있다. 이 경우, 선택된 적어도 하나의 라벨 스플리트는 암호화되며, 암호화키는 제1암호화키이며, 상기 명령은 또한 사용자와 연관된 사용자 ID, 사용자와 연관된 패스워드, 및 독특한 데이터 예 중 적어도 하나 및 랜덤 값으로부터 제2암호화키를 추출하며, 그리고 제2암호화키를 사용하여 선택된 적어도 하나의 라벨 스플리트를 암호 해독하는 것을 포함할 수 있다.
상기 명령은 메모리로부터 적어도 하나의 증명서를 검색하는 것을 또한 포함할 수 있다. 예를 들어, 메모리는 스마트 카드에 배치될 수 있다. 상기 명령은 또한 목적물이 암호화된 시점과 대응하는 시간 스탬프를 발생하며, 결합기 데이터는 시간 스탬프를 포함할 수 있다. 결합기 데이터는 또한 사용자와 연관된 사용자 ID를 포함한다.
결합기 데이터는 헤더 기록일 수 있다.
결합기 데이터는 디지털 서명 또는 디지털 인증서 또는 양자를 포함할 수 있다.
암호화키는 제1암호화키일 수 있으며, 상기 명령은 또한 적어도 하나의 라벨 스플리트에 적어도 부분적으로 기초하여 제2암호화키를 발생하며; 그리고 암호화 목적물에 결합기 데이터를 결합하기 전에 제2암호화키를 사용하여 랜덤 키를 암호화하는 것을 포함한다. 결합기 데이터에 포함된 랜덤 스플리트는 암호화된 랜덤 스플리트일 수 있다.
상기 명령은 암호화 목적물에 결합기 데이터를 부가하기 전에 헤더 스플리트를 사용하여 결합기 데이터의 적어도 일부를 암호화하는 것을 포함할 수 있다. 헤더 스플리트는 일정할 수 있다.
본 발명은 데이터 분리에 아주 적합하며 정보에 대한 역할-기반 액세스에 적합하다. 데이터 분리는 레벨 또는 카테고리에 정보를 할당하고 그 후 알 필요가 있거나 또는 다른 보안 정책에 기초하여 각각에 대한 액세스를 제한하는 프로세스이다. 역할-기반 액세스는 수행된 역할에 의해 정보ㅗ에 대한 액세스를 할당하고 그 후 이들 역할에 개인을 할당하는 방법이다. 정보에 대한 각 개인의 액세스는 그의 역할이 변경될 때 변경된다. 인터넷은 많은 데이터베이스에서 정보를 액세스하는 서치 엔진의 생성을 용이하게 한다. 이들 서치 엔진의 태깅(tagging) 또는 인덱싱 방법론은 암호화 시스템에 포함된 라벨에 서로 관련될 수 있다.
도 1은 본 발명의 예시적인 프로세스를 보여주는 블록도이다.
도 2는 본 발명의 예시적인 프로세스를 보여주는 블록도이다.
도 3은 프로세스의 무결성(integrity)을 검사하기 위한 도구로서 암호화를 사용하는 시스템의 흐름도이다.
도 4는 출력 문맥에 사용된 암호화를 보여주는 흐름도이다.
도 5는 선택된 프로세스에 의해 입력으로서 프로세스에 제공된 요소가 조작되는 프로세스를 보여준다.
도 6은 예정된 조건이 시스템에서 어떻게 표본 추출되는 지를 보여준다.
도 7은 암호화된 목적물 내에 수집되어 매입된 가상 환경 데이터를 보여준다.
도 8은 SAOCRS에서 입력 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다.
도 9는 SAOCRS에서 복사된 출력 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다.
도 10은 전체적으로 예정된 조건 검사를 제공하는 SAOCRS에서 복사된 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다.
기본 디자인은 목적물의 암호화와 암호 해독 및 키의 분배에 요구되는 기능에 초점이 맞추어져 있다. 고성능 대칭 키 암호화 알고리즘 및 키 관리의 특허된 방법이 이 레벨에 사용된다. 인증에 초점을 맞춘 다른 레벨은 스마트 카드와 생체 측정을 이용하여 강한 엔티티 인증을 생성하며 메시지 인증을 위한 디지털 서명을 사용한다. 인증과 암호화 프로세스를 내부적으로 보호하는 탐지 기술의 혼합을 부가하는 제3레벨은 환경이 더 높은 보안을 요구할 때 부가된다.
기술 개요
본 발명은 암호화키를 생성하고 재생성하며 조직 내에서 이들 키를 관리하기 위한 기술을 제공한다. 암호화 작동 키는 목적물이 암호화되거나 또는 암호 해독되기 바로 전에 생성된다. 이는 암호화 또는 암호 해독을 위한 암호화 알고리즘을 초기화하는 데 사용된다. 작동 키는 사용 후 버려진다.
작동 키는 많은 조각들의 정보로부터 형성된다. 시스템에 참가인이 되기 위하여 사용자는 키를 형성하기는 데 필요한 조각들을 가지고 있어야 한다: 그렇지 않으면 암호화 및 암호 해독은 발생될 수 없다. 중앙 당국은 암호화 키 스플리트로 불리는 이들 조각들을 생성한다. 이들 스플리트의 서브셋(부분집합)은 조직의 각 사용자에게 분배된다. 각 사용자가 수신한 서브셋은 그 사람에 대하여 특정한 것이고 개인이 암호화(기록 허가로 알려진)하는데 사용할 수 있는 라벨 및 개인이 암호 해독(판독 허가로 알려진)하는데 사용할 수 있는 라벨을 정의한다. 몇몇 사용자 인증 기술이 사용자가 이 정보에 액세스가 허용되기 전에 시스템에 대한 사용자를 검증하는 데 사용된다.
키를 형성하기 위하여, 조직 스플리트라고 불리는 불변 시스템 와이드-스플리트와 유지 스플리트라고 불리는 가변 시스템 와이드 스플리트가 사용된다. 이것에 랜덤 스플리트라고 불리는 난수(random number)와 사용자 선택 라벨 스플리트가 부가된다. 랜덤 스플리트는 유일한 작동 키가 각자의 사용마다 생성되는 것을 보장한다. 사용자 선택 라벨 스플리트는 암호화된 목적물의 “리더쉽(readership)", 즉 사용자가 목적물을 암호 해독할 수 있는 것을 정의한다. 모든 이들 스플리트는 결합기(combiner) 프로세스로 알려진 프로세스에 입력된다. 결합기 프로세스의 출력은 세션 키(session key)에 대한 기초로서 사용되는 유일한 수(unique number)이다.
본 발명은 계층적인 인프라스트럭처를 사용하여 암호화키를 구성하기 위한 소프트웨어에 필요한 정보의 분배를 관리한다. 이 인프라스트럭처는 또한 디지털 서명이 사용될 수 있도록 비대칭 키 암호화를 위한 사용자 인증서 및 공용키 분배 방법을 제공한다.
인프라스트럭처
본 발명은 3단 계층 시스템으로서 조직되는 것이 바람직하다. 최상층은 정책 매니저(Policy Manager)로서 식별된 프로세스이다. 이 프로세스는 암호화 도메인에 대한 “중앙 당국”이 키 생성에 사용될 스플리트, 예를 들어, 512 랜덤 비트를 생성할 수 있게 단다. 스플리트는 라벨이 붙여지며 암호화키를 생성하기 위한 사용자의 조합에 사용된다.
계층의 다음 층은 증명서 매니저(Credential Manager)로서 식별된 프로세스이다. 이 프로세스는 증명서 매니저로부터의 라벨과 특정한 알고리즘 및 정책의 서브셋이 제공된다. 개인은 증명서 매니저의 서브셋으로부터 특정 라벨과 알고리즘의 사용을 할당받는다. 정책 매니저에 의해 생성된 조직 정책과 시스템 파라미터는 이들 라벨에 부가되어 개인의 증명서를 형성한다. 사용자의 증명서ㅓ는 암호화되며 디스켓 또는 스마트 카드와 같은 “토큰”으로 그 사용자에게 분배되거나 또는 워크스테이션 또는 서버에 설치된다. 증명서 매니저에 의한 라벨 및 알고리즘 할당 프로세스는 조직이 정보에 대한 액세스의 “역할-기반(role-based)" 시스템을 구현할 수 있게 한다.
증명서 매니저에 대한 편리성으로서, 패스워드 슈퍼바이저는 그들이 사용되는 첫 번째는 사용자 증명서를 잠금 해제할 사용자에 대한 “첫 번째 사용” 패스워드를 안전하게 분배할 수 있다.
사용자 증명서에 대한 액세스는 증명서 매니저에 의해 최초에 할당된 패스워드를 가지고 계층의 사용자층에서 제어된다. 패스워드는 사용자에 의해 첫 번째 사용시에 변경되며 사용자에게만 알려진다. 이는 기본적인 사용자 인정을 제공한다. 더 강한 인증은 시스템에 대한 향상에 의해 제공된다.
사용자 인증 향상은 사용자 인증을 위한 조각 정보를 보유할 수 있는 스마트 카드(신용 카드와 같이 플라스틱 카드 또는 다른 토큰에 패키지된 프로세서와 메모리를 포함한다)를 포함한다. 이는 또한 시스템에 의해 사용 정보를 보유하며 시스템에 대한 처리를 제공한다. 변경 저항(tamper resistance) 및 하드웨어 난수 발생 능력을 갖는 스마트 카드는 부가적인 보안을 제공한다.
다른 인증 향상은 생체 데이터의 사용이다. 생체 데이터는 각 개인에 독특하며 개인의 생애동안 변하지 않는 생리적 또는 행동적인 정보이다. 더욱이, 그것은 컴퓨터에 의해 디지털화되어 사용될 수 있는 어떤 것이어야 한다. 강한 사용자 인증에 부가하여 생체 데이터가 디지털 서명을 위한 개인키의 생성에 사용될 수 잇다. 다만 데이터 무결성을 위해 매시지 인증 코드(Message Authentication Code: MAC)가 사용될 수 있다. 대칭 키 알고리즘을 초기화하는 데 사용되고 있는 시스템-생성 키 대신에 생성된 키가 MAC를 초기화하는 데 사용된다. 조작 검출 코드(Manipulation Detection Codes: MDCs)는 또한 본 발명에 따라 암호화 결합될 때 데이터 무결성과 비밀을 제공하는데 사용될 수 있다.
데이터 원점 인증, 데이터 무결성 및 부인봉쇄(non-repudiation)가 요구되는 경우 시스템 인프라스트럭처는 본 발명에 암호화-의무 디지털 서명을 사용할 수 있는 능력을 제공하는 공용키를 분배하기 위한 수단을 제공하는 데 사용된다. 만약 디지털 서명이 사용되는 경우 MACs 또는 MDCs가 요구되지 않는다. 디지털 서명을 기본 디자인과 결합하고 사용자 인증 향상을 부가하는 것은 상기한 보안 목적물을 만나는 수단을 수립한다.
결합기 기능 및 스플리트
결합기는 다수의 입력을 수신하여 하나의 정수를 생성하는 비선형 기능이다. 정수 출력은 목적물을 암호화 및 암호 해독하기 위한 세션 키로서 사용된다. 결합기 기능에 대한 시작점은 조직 스플리트이다. 조직의 모든 자는 이 스플리트에 대한 액세스를 한다. 이는 통상적으로 시스템 키(system key)로 불리는 것과 동동한 것이다.
암호화 동안 사용자는 결합기 프로세스에 사용될 하나 이상의 라벨 스플리트를 선택할 것이다. 이는 암호화에 사용된 스플리트에 대한 판독 액세스를 갖는 사람들만이 목적물을 암호 해독할 수 있게 되기 때문에 암호화된 목적물의 승인된 리더쉽을 정의할 것이다. 사용자에 의한 조직의 라벨의 선택과 사용은 라벨 세트를 디자인하는 데 고려되어야 한다. 우수한 라벨 세트 디자인은 조직의 수립된 정보 구획을 반영하여야 한다. 라벨에 대한 액세스는 조직 내에 그 사용자의 역할에 기반을 둔 증명서 매니저에 의해 사용자에게 제공될 수 있다.
또한 증명서 매니저 또는 정책 매니저 중 하나가 특정 사용자 또는 사용자 그룹에 대하여 위임받은 사용 라벨을 지정하는 것도 가능하다. 이들은 사용자가 목적물을 암호화할 때 항상 사용되는 라벨 스플리트에 대응한다. 사용자는 그들의 선택에 대한 어떤 선택권이 없고 그들은 결합기에서 자동적으로 사용된다.
각 암호화를 위해 생성된 랜덤 스플리트는 최종 작동키를 만들기 위해 입력으로서 결합기 기능에 제공되는 다른 스플리트이다. 새로운 랜덤 스플리트는 각 암호화에 생성되기 때문에 작동키는 항상 변경되고 있다. 이는 만약 동일한 목적물이 동일한 라벨을 사용하여 다시 암호화될지라도 동일하게 되지 않을 것이다. 난수는 바람직하게는 하드웨어-기반 난수 발생기에 의해 제공된다. 그러나, 만약 하드웨어가 유용하거나 실용적이지 않은 경우는 소프트웨어-기반 의사 난수 발생기가 사용될 수 있다.
유지 스플리트는 키 업데이트에 사용되며 개요를 타협한다. 조직의 정책은 스플리트 중의 하나가 주기적으로 변경되는 것을 요구할 수 있다. 유지 스플리트는 조직-와이드 충격을 주도록 변경된다. 정책 매니저는 증명서 파일 업데이트를 통하여 사용자에게 분배된 새로운 유지 스플리트를 주기적으로 생성할 수 있다. 유지 스플리트의 생성은 모든 이전의 유지 스플리트가 회복될 수 있는 방식으로 행하여진다. 따라서, 미사용 데이터(data-at-rest) 조직에 대하여 이전에 암호화된 데이터는 회복될 수 있다. 암호화된 네트워크 트래픽과 같은 이동 중 데이터(data-in-transit) 조직에 대하여는 이전의 유지 스플리트를 회복시킬 필요가 없다.
유지 스플리트는 조직 도메인으로부터 누군가를 배제하는 데 사용될 수 있다. 개인이 새로운 유지 스플리트를 가지고 업데이트가 이루어진 증명서를 가지고 있지 않는 경우 그 개인은 이 새로운 유지 스플리트를 사용하여 암호화된 목적물을 암호 해독할 수 없게 될 것이다. 사용자의 증명서가 타협이 이루어질 경우 유지 스플리트를 업데이트하는 것은 또한 암호화된 데이터를 보호할 것이다.
종합하면, 조직 스플리트는 모든 암호화에 사용된 불변 수이다. 유지 스플리트는 작동키의 입력에 주기적인 변경을 유지하는 데 사용된다. 사용자는 라벨 스플리트를 선택하고 랜덤 스플리트는 항상 유일하며, 따라서 모든 암호화된 목적물이 다른 키를 갖는 것을 보장한다.
암호화 알고리즘
사용자 증명서에 미리 스플리트가 위치된 본 발명은 대칭 키 암호화 알고리즘을 위한 키 관리를 제공한다. 전통적인 n2 키 관리 문제의 충격은 비대칭 또는 “공용키” 암호화 시스템에 대한 의지 없이 경감된다. 그러나, 개인키 관리 솔루션을 위해 제공된 인프라스트럭처는 또한 공용키 관리에 사용될 수 있다. 비대칭 키 암호화 시스템은 메시지 인증을 위한 본 발명에 의해 사용되며 사용자 증명서 분배 및 워크스테이션과 스마트 카드 사이의 통신 프로토콜을 위한 키 교환에 사용될 수 있다.
바람직하게는 2 대칭 키 알고리즘의 최소, 예를 들어, P2, (스트림 암호 알고리즘) 및 US 데이터 암호화 표준(Data Encryption Standard: DES) 알고리즘, 블록 암호 알고리즘이 본 발명과 함께 사용을 위해 제공된다. 다른 알고리즘이 미국 수출 규정 및 라이선스 계약과 같은 비즈니스를 고려할 때 유용하다.
DES 블록 알고리즘의 경우, 4 상이한 동작 모드, 즉, Electronic Code Book(ECB), Cipher Block Chaining(CBC), Output Feedback(OFB) 및 Cipher Feedback(CFB)이 제공된다. 더욱이, CFB는 1비트, 8비트 또는 n이 블록 사이즈(또는 블록 사이즈의 정수 분할)인 경우 n-비트 피드백으로 제공된다. 출력 피드백(output feedback)은 또한 카운터 모드에 유용하다.
삼중 암호화가 또한 수출 규정을 적용받을 때 모든 블록 알고리즘에 대하여 유용하다. 이는 삼중 DES가 유용할 뿐 아니라 또한 예를 들어, 삼중 IDEA, 삼중 RC5 등이 사용될 수 있다. 모든 블록 알고리즘을 사용할 때 4상태 동작 모드가 유용하다. 삼중 암호화 및 암호 해독에 유용한 다른 동작 모드가 존재한다.
정책 매니저는 알고리즘 및 동작 모드에 새 이름을 부여할 수 있다. 다른 알고리즘이 다른 목적에 이용될 수 있고 알고리즘의 이름이 그것의 사용을 반영할 수 있다. 사용자가 사용이 허가된 알고리즘의 이름은 사용자의 증명서에 포함된다. 정책 및 증명서 매니저는 알고리즘에 대한 액세스를 제어하기 때문에 다른 알고리즘을 적용하는 것은 암호화된 데이터에 대한 다른 격리 액세스에 영향을 미친다.
대칭 키 알고리즘은 목적물을 암호화하기 위해 본 발명에 사용된다. 그들은 또한 결합기에서와 같은 본 발명의 프로세스에 의해 내부적으로 사용된다. 비대칭 키 암호화 시스템이 메시지 인증, 증명서 분배 및 스마트 카드와 워크스테이션 사이의 키 교환 프로토콜을 위해 본 발명에 사용된다.
생체 판독이 메시지 인증에 사용된 사용자의 개인키에 대한 기본을 제공할 수 있다. 이 경우, 개인키는 사용자가 생체 판독을 하여 그것을 회복할 수 있기 때문에 저장될 필요는 없다. 인증에 사용된 공용키는 이 개인키로부터 항상 유도되며 사용자의 증명서 매니저의 데이터베이스에 저장된다. 생체 판독에 개인키에 근거를 두는 것은 생체 측정에 관한 특수한 특성을 요구한다. 정상적으로는 이들 특수한 특성이 적용되지 않으며, 어떤 경우에 개인키는 사용자에 의해 발생되어 통상적으로 사용자의 워크스테이션 또는 스마트 카드에 저장될 필요가 있다. 안전한 백업은 손실의 경우에 개인키에 대하여 요구된다. 증명서 매니저는 바람직하게는 인증에 사용된 사용자의 개인키에 대한 액세스를 할 수 없다는 점에 유의하여야 한다.
*증명서 분배에 사용되는 각 사용자에 대한 공용키 쌍은 증명서 매니저에 의해 생성되어 저장된다. 이들 키 쌍은 증명서 매니저로부터 사용자에 대한 정보를 암호화하는 데 에만 사용되기 때문에 개인키는 증명서 매니저에 알려지지 않은 상태로 남겨질 필요가 없다. 따라서, 증명서 매니저는 그것의 데이터베이스에 사용자에 대해 공용키와 개인키를 모두 저장한다. 사용자의 공용키는 분배를 위해 사용자 증명서를 암호화하는데 사용된 키를 암호화하는 데 사용된다. 증명서 매니저는 백업 목적을 위해서만 사용자의 개인키를 저장한다. 사용자는 그들의 개인키의 복사본을 가지고 있어야 하며 그래서 그들은 수신시에 그들의 증명서를 해독할 수 있다.
비대칭 키 시스템은 또한 시스템-강화 스마트 카드와 워크스테이션 사이의 세션 키를 교환하는 데 사용된다. 시스템 소프트웨어의 설치 시에 공용 및 개인키 쌍은 이러한 목적의 워크스테이션 및 스마트 카드에 의해 생성된다. 난수를 가진 상호 인증을 이용한 스테이션-대-스테이션 프로토콜, 예를 들어, ISO9798-3은 스마트 카드와 워크스테이션 사이의 통신을 암호화하는 데 사용되는 세션 키를 교환하는 데 사용된다.
사용자 증명서
컴퓨터 파일에 포함된 사용자 증명서는 사용자의 허용 세트, 즉 라벨 스플리트, 암호화(기록 허가) 및 암호 해독(판독 허가)에 사용될 수 있는 그들의 연관된 라벨 이름 및 인덱스, 및 사용될 수 있는 알고리즘에 대한 허가를 포함한다. 또한, 조직 이름과 연관된 스플리트, 유지 레벨과 연관된 스플리트, 헤더 암호화 스플리트 및 조직에 의해 사용될 어떤 파라미터가 사용자의 증명서에 또한 포함된다. 최소 패스워드 길이와 같은 정책이 또한 사용자의 증명서에 포함된다. 디지털 서명이 사용될 때 사용자의 사인된 증명서 뿐 아니라 모든 조직의 증명서 매니저의 공용키의 사본이 포함된다.
사용자에 대한 허가 세트를 함당함에 있어서 증명서 매니저가 그 사용자의 역할과 관련된 의무를 고려하여 조직 내에서 특전을 부여한다. 증명서 매니저 소프트웨어에서 역할 템플레이트(template)와 역할 계층은 이 일에서 증명서 매니저를 돕는다. 개인의 역할은 변할 수 있으며: 때문에 증명서는 다른 라벨과 함께 재 발행될 수 있으며, 또한 조직을 떠난 개인에 대하여 완전히 취소될 수 도 있다.
사용자 증명서는 암호화되며 사용 전에 각 사용자에 의해 암호 해독되어야 한다. 증명서 파일을 암호 해독하는 것은 사용자를 암호학적으로 식별하기 위한 기초이다. 암호화 및 암호 해독에 사용되는 키는, 단지 사용자가 알고 있는 패스워드이므로 사용자의 ID로부터 유도된다. 파일과 연관된 날자/시간 스탬프와 같이 약간의 독특한 데이터 또는 증명서 파일의 그것과 다른 장소에 존재하는 난수가 또한 사용된다. 증명서 파일이 사용을 위해 암호 해독될 때마다 상이한 데이터를 사용하여 재 암호화된다. 이 데이터는 항상 변경되기 때문에 증명서 파일은 매 사용 후 다른 키로 암호화된다. 이는 반대자가 사용자의 증명서를 해독하는 것을 수행하여야 하는 작업을 증가시킨다. 패스워드 이외의 정보 조각들이 사용되기 때문에 반대자는 패스워드-초대 공격이 발생하기 전에 이 독특한 데이터를 결정하여야만 한다.
스마트 카드가 사용될 때 난수는 스마트 카드에 저장될 수 있다. 이는 증명서 파일에 사용자와 스마트 카드를 묶는 효과를 나타낸다. 이 경우 증명서 파일은 스마트 카드 없이 암호 해독될 수 없다.
생체 측정이 사용될 때 생체 판독이 만약 판독이 매 시간마다 정확하게 재생될 수 있는 경우 증명서 파일 암호화키를 유도하기 위하여 그로부터 다른 조각 정보를 제공한다. 이것은 더욱이 사용자를 증명서 파일에 묶는다. 그러나 만약 생체 판독이 매시간 정확하게 재생되지 못하는 경우 그것은 변동(variance) 계산 목적을 위해 저장된 베이스라인 템플레이트와 비교되는 것이 틀림없다. 이 경우, 템플레이트는 증명서의 암호화에 사용되지 않는다. 대신에 그것은 인증에 사용되며 그것이 각 생체 판독과 비교하는데 사용되는 경우 증명서에 소지된다.
증명서 파일은 만료 일자를 지니고 있다. 이 날짜를 넘어서는 경우 증명서 파일은 쓸모가 없게 된다. 각 암호화된 목적물은 그것의 헤더에 시간 스탬프를 포함하고 있다. 증명서의 만료일을 넘어서 다른 사람에 의해 암호화된 목적물은 암호 해독될 수 없다. 최대 타임-아웃 값, 즉 증명서 발행으로부터 증명서 소멸까지의 시간은 정책 매니저에 의해 설정된다. 증명서 매니저는 또한 타임-아웃을 제한할 수 있으나, 사용자에게 증명서를 발행한 때 타임-아웃 값을 연장할 수는 없다. 증명서가 소멸된 후 본 발명의 시스템을 사용하기 위하여 사용자는 그 사용자의 증명서 매니저에 의해 재발행된 증명서를 사용하여야 한다.
증명서 파일의 발행 또는 재발행시에 증명서 매니저 소프트웨어는 새로운 “처음-사용” 패스워드를 발행한다. 새로운 증명서가 처음으로 사용되기 전에 “처음-사용” 패스워드는 증명서를 암호 해독하는 데 사용되어야만 하며 그 후 새로운 패스워드는 증명서의 후속된 암호화 및 암호 해독을 위해 제공되어야 한다.
“처음-사용” 패스워드는 일반적으로 증명서 파일을 전송하는데 사용된 것과 다른 통신 채널을 사용하여 사용자에게 전송된다. 비대칭 키 암호화 알고리즘이 “처음-사용” 키를 암호화하는 데 사용될 수 있다. 증명서 매니저에 의해 제공된 개인키는 “처음-사용”키를 회복하여 증명서를 암호 해독하는데 사용된다.
생체 측정이 증명서 파일의 암호화에 사용될 때 사용자의 공용키는 증명서에 포함되며 검사를 위해 사용될 것이다. 단지 정확한 생체 판독은 증명서에 있는 것과 일치하는 공용키를 발생하는 개인키를 발생할 것이다. 목적물을 암호화, 암호 해독, 사인 및 검증할 수 있도록 하기 위해 사용자는 증명서를 가지고 있어야 한다. 그들은 이들 행위에 필요한 대부분의 “비밀” 정보를 제공하며 풀 시스템이 사용될 때 강한 인증 기술을 사용하여 사용자에게 묶여진다. 사용자의 액세스 허가는 그 사용자의 증명서를 가져가거나 또는 갱신 없이 그들이 소멸되게 함에 의해 취소될 수 있다. 만약 증명서가 서버에 저장되는 것이 요구될 때 사용자의 증명서는 즉시 제거될 수 있다. 일단 정책 매니저가 새로운 유지 스플리트를 발행하면 업데이트 되지 않은 사용자 증명서는 이 업데이트 이후에 암호화된 어떤 데이터도 쓸모없게 한다. 이는 사용자에 대한 시스템을 강제로 오프시키는 하나의 수단이다.
헤더
모든 암호화된 목적물은 헤더에 바람직하게는 부가된 정보를 포함한다. 이 정보는 목적물을 암호 해독하는데 요구된다. 그것은 최소로서 라벨 스플리트에 대한 인덱스와 암호화 프로세스에 사용된 알고리즘, 조직 이름, 사용될 유지 스플리트를 지정하는 유지 레벨 및 랜덤 스플리트를 포함한다. 랜덤 스플리트는 목적물을 암호화하는 데 사용된 동일한 라벨 스플리트에 기초한 암호화키를 사용하여 암호화된다. 랜덤 스플리트를 회복할 수 있게 하기 위하여 사용자는 목적물을 암호화하는 경우에 사용되었던 라벨 스플리트에 대한 판독 액세스를 가지고 있어야 한다. 헤더로부터 회복된 랜덤 스플리트와 함께 사용자의 증명서에 포함된 조직 스플리트, 유지 스플리트 및 라벨 스플리트는 암호화키가 회복될 수 있게 한다. 목적물은 그 후 암호 해독될 수 있다.
또한 헤더에는 목적물이 암호화된 날자와 시간을 나타내는 시간 스템프가 포함된다. 본 발명은 날짜 이전에 만료된 증명서를 가진 사용자가 목적물을 암호 해독하는 것을 허용하지 않을 것이다.
그 사용자의 증명서 매니저의 신분 증명서 뿐 아니라 목적물을 암호화한 사용자의 ID가 헤더에 포함된다. 만약 디지털 서명이 사용될 경우 사용자의 인증서와 함께 헤더에 포함된다. 적당한 증명서 매니저의 공용키를 사용하는 경우 모든 것이 각 사용자의 증명서에 포함되며, 증명서는 사인한 개인의 공용키를 회복하기 위해 암호 해독될 수 있다. 이 공용키는 일단 메시지가 암호 해독되면 디지털 서명을 검증하는 데 사용된다.
대부분의 헤더 그 자체는 일정한 헤더 스플리트를 사용하여 암호화된다. 이 스플리트를 사용하는 의도는 보안이 아니다. 이는 쉽게 초기화 성공을 방지함에 의해 시스템을 해독하려고 시도하는 어떤 사람을 낙담시키기 위한 단계이다. 헤더의 모든 정보는 공용이거나 또는 랜덤 스플리트의 경우 헤더 내에서 암호화된다.
헤더에 포함된 데이터는 어떤 종류의 정보 조사 및 데이터베이스 질문에 대한 기초를 제공할 수 있다. 조사 엔진은 데이터 분리를 제공하기 위해 헤더를 보기 위한 논리를 포함할 수 있다. 헤더를 암호 해독하는 것은 메시지 내용을 드러내는 것이 아니기 때문에 암호화된 데이터를 드러내지 않고 검증, 완전무결성, 루팅 등에 대한 트래픽을 조사하기 위해 네트워크 모니터링 및 제어장치에서 프로세스가 위치할 수 있다. 예를 들어, 헤더에 포함된 라벨 정보는 특정 라벨을 갖는 데이터가 어떤 네트워크 경계를 횡단하는 것을 라우터가 방지함에 의해 네트워크에 암호화된 데이터가 한정되게 하는 기초가 될 수 있다. 따라서, 헤더를 사용함에 의해 본 발명은 정적인 비사용 데이터 뿐 아니라 네트워크를 넘어서 이동 중 데이터를 관리 및 암호화하는 데 적합하다.
데이터 분리
데이터 분리는 데이터를 할당하며 알 필요가 있는 것에 기초하여 각 카테고리에 대한 액세스를 제한하는 프로세스이다. 이를 이루는 하나의 방법은 권한이 없는 사람이 그것을 액세스할 수 없는 경우 데이터를 물리적으로 위치시키는 것이다. 그러나, 물리적으로 분리된 네트워크 또는 호스트에 대한 머신에 다른 세트의 데이터를 제공하는 것은 값이 비싸게 든다. 본 발명은 데이터를 분리하는 방법을 제공하며 다른 네트워크, 하드 디스크 드라이브, 서버 등에 데이터가 물리적으로 국한되게 하는 것 없이 권한을 갖는 것들은 액세스가 이루어질 것이다.
키 회복
키 회복은 암호화된 목적물에 대한 액세스에 더하여 개별적인 신중한 이벤트를 필요로 하는 암호화키를 재 발생하기 위한 조직화된 프로세스이다. 정책 매니저는 이러한 프로세스를 초기화할 수 있으며 임의의 증명서 매니저를 필요로 하는 모든 라벨 스플리트에 제공한다. 증명서 매니저는 목적물을 암호화하는 데 사용되었던 라벨 스플리트에 대한 판독 능력을 증명서에 제공할 수 있다.
만료 일자가 증명서 파일에 대해서 설정되는 것에 유의하여야 한다. 증명서 매니저는 단지 하루 동안 유효한 증명서 증명서 파일을 생성하는 것이 가능하다. 예를 들어, 사법 명령에 따라 법 시행이 그들이 필요로 하는 정보를 회복시키는 판독만 가능한 스플리트를 발행할 수 있다. 그들은 이어서 암호화된 정보를 회복시킬 수 없다.
키 회복을 사용하는 다른 이유는 조직을 떠난 피고용자, 사망 또는 무능력하게 된 자에 의해 암호화된 데이터를 회복시키는 것이다. 개인의 손실은 그 개인에 의해 암호화된 데이터가 회복될 수 없는 것을 의미하지 않는다.
만약 사용자의 오리지널 증명서가 손상되거나 또는 패스워드를 잊어먹는 경우 본 발명은 사용자의 증명서를 재 생성할 수 있다. 이는 사용자에 대하여 새로운 증명서를 단순하게 발행함에 의해 성취된다. 사용자는 새로운 증명서의 처음 사용시에 새로운 패스워드를 선택한다. 몇몇 경우에 인증을 위해 사용자에게 할당된 오리지널 개인키 및 공용키를 재발행하는 것이 가능하다.
사용자 인증 향상
강한 사용자 인증은 개인이 알고 있는 어떤 것, 개인에 의해 소유된 어떤 것 및 개인 자체의 어떤 것을 필요로 한다. 패스워드, 알려진 어떤 것이 기본적인 사용자 인증에 사용된다. 스마트 카드(또는 다른 토큰)가 소유하고 있는 어떤 것이다. 생체 데이터가 개인 자체의 어떤 것이다. 모든 3가지의 임의의 조합이 본 발명의 시스템에 사용될 수 있다.
스마트 카드
스마트 카드가 본 발명의 처리에 따라 정보의 키 조각을 보유하는 데 사용될 수 있다. 카드에 저장된 난수는 각 사용자의 증명서를 암호화하는 키를 형성할 때 정보로서 사용될 수 있다. 이것은 스마트 카드를 증명서와 묶는다. 카드에 저장된 번호 없이 사용자의 증명서의 암호 해독은 불가능하다. 사용자는 시스템이 사용되기 전에 세션 확립을 완료하기 위하여 카드를 필요로 한다.패ㅡ워드와 같은 다른 조각들은 여전히 시스템에 대한 로그-온 하는 것을 필요로 한다. 스마트 카드는 단독으로 세션을 시작하는 것이 충분하지 않으며, 따라서 훔치거나 또는 사용자의 스마트 카드를 획득한 반대자는 목적을 이루지 못하게 된다.
사용자 증명서는 스마트 카드에 저장될 수 있다. 이는 조직의 메인 네트워크의 일부가 아닌 다른 머신에 사용자가 이동하여 여전히 시스템을 이용할 수 있게 된다.
스마트 카드의 프로세서에 결합기 프로세스를 작동시키는 것 뿐 아니라 세션 기간 동안에만 스마트 카드의 메모리에 암호 해독된 사용자 증명서를 유지함에 의해 보안이 향상된다. 카드 내에 국부적인 처리는 보안키에 대한 정보를 얻기 위하여 프로세스의 내부적인 동작을 관찰하려고 하는 반대자의 작업 부하를 증가시킨다.
슈퍼 카드 TM
슈퍼 카드TM는 현재의 스마트 카드 보다 처리 능력과 메모리를 향상시킨 ISO 규격의 스마트 카드이다. 그것은 변경 저항과 하드웨어 난수 발생을 포함하고 있다. 카드 내부의 처리 능력은 워크스테이션에서 처리하는 작업을 줄이는데 사용될 수 있다. 카드와 워크스테이션 사이의 대역폭이 제한될지라도 본 발명의 시스템을 사용하면 단지 작은 량의 데이터가 둘 사이에 전송된다. 카드 내에 더 큰 메모리를 사용함에 의해 “개인” 적용 뿐 아니라 사용자 증명서 파일을 저장하는 것이 가능하다. 스플리트와 같은 “비밀” 정보를 카드와 워크스테이션 사이의 통신을 모니터링하는 누군가에 누설되지 않도록 하기 위하여 슈퍼 카드TM와 워크스테이션 사이의 통신은 암호화된다. 암호화키를 교환하는데 사용되는 키 일치 프로토콜은 카드와 워크스테이션 사이에 적용된다. 어떤 부가적인 정보도 카드 리더에 필요로 하지 않는다.
공진 서명-무선 주파수 식별(Resonant Signature-Radio Frequency Identification: RS-RFID)이라 불리는 고유의 랜덤 주파수 서명이 카드 내에 매입된 탄젠트(tangent)에 의해 제공되며 변경 저항을 돕는다. 카드의 RS-RFID의 디지털 표현은 사용자의 증명서 파일 내에 포함되며 증명서와 함께 암호화된다. 카드에 대한 어떤 변경은 그 카드의 RS-RFID를 변경하게 한다. 손상된 RS-RFID가 사용될 때 틀린 무선 서명이 판독되어 사용자의 증명서 파일로부터 RS-RFID의 암호 해독된 값과 비교되지 않을 것이다. 따라서, 카드에 대한 변형은 탐지될 것이다. 슈퍼 카드TM를 판독하는 카드 리더는 RS-RFID 서명을 판독하는 하드웨어를 포함한다. 또한 슈퍼 카드TM는 ISO-표준 카드 리더에 사용될 수 있다. 이 경우 RS-RFID는 무시되고 변경 저항은 제공되지 않게 된다.
난수는 목적물 암호화 및 다른 동작에 필요로 한다. 하드웨어 난수 발생이 없는 경우 시스템은 소프트웨어 의사-난수 발생기에 의존할 수 있다. 슈퍼 카드TM를 구비한 특징은 하드웨어 난수 발생 능력이다. 하드웨어 소스를 사용하면 더 우수한 난수 발생을 제공하며 전체적인 시스템의 보안 강도를 높이게 된다.
생체 데이터
생체 측정 장치를 사용하는 프로세스에 대하여 이하에 설명한다: 처음에 장치로부터 측정된 생체 판독이 디지털화된다; 디지털 표시값은 수학적으로 변환되어 템플레이트로서 어딘가에 저장된다. 이어서 생체 판독값은 검증을 위해 이 템플레이트와 비교된다. 생체 판독값은 또한 데이터베이스에 저장된 템플레이트와 생체 판독값을 비교함에 의해 식별하는데 사용될 수 있다. 이 데이터베이스로부터 매칭은 식별을 확립한다. 본 발명은 세션 확립 동안 오로지 검증에만 생체 측정을 이용한다.
일반적으로 생체 판독은 소량만큼 변화한다. 템플레이트 값으로부터 변화는 허용되며 응용 및 보안 요구사항에 따라 설정된다. 이 변화는 거짓(실패)-성공 및 거짓(실패)-거절 비율로부터 계산된 조정 가능한 인자이다.
대부분의 생체 측정은 템플레이트 비교에 대하여 단지 “예 또는 아니오”로 답할 수 있다. 만약 더 높은 거짓(실패)-성공 비율이 허용되는 경우 일부 타입의 생체 판독에 적용된 수학적인 기술은 저장된 템플레이트와 정확하게 매칭될 수 있는 반복 가능한 수로 판독을 변환하는데 사용될 수 있다. 반복 가능한 수를 사용하면 생체 데이터는 대칭 및 비대칭 키 암호화에 사용된 키를 유도하는데 사용된 정보를 시스템에 제공할 수 있다.
그것이 암호화가 될지라도 생체 템플레이트를 포함하는 생체 판독을 저장하는 것을 바람직하지 않다. 만약 반복 가능한 수가 생체 판독으로부터 얻어질 수 있는 경우 이들 생체 값은 사용자 증명서를 해독하기 위한 키를 형성하는 데이터 조각으로서 사용될 수 있다. 그들은 또한 메시지 인증에 사용된 비대칭 키 시스템에 개인키에 대한 기초로서 사용될 수 있다.
사용자 검증 동안 생체 값을 사용한 증명서 파일의 암호 해독시에 암호 해독된 증명서 파일에 있는 사용자 ID 필드는 사용자에 의해 타이핑된 ID와 비교된다. 만약 비교가 바람직한 경우 사용자는 인증이 이루어지고 증명서 파일의 데이터는 정확하게 암호 해독된다. 사용자의 증명서 파일을 암호화할 때 사용된 키의 일부로서 생체 데이터는 증명서에 그 사용자를 묶게 된다.
패스워드, 사용자 ID와 같은 다른 조각의 정보와 난수와 같은 다른 데이터는 증명서 암호화키를 생성하는 데 사용되기 때문에 생체 측정으로부터 더 높은 거짓(실패)-성공 비율이 허용될 수 있다. 비록 2사람이 동일한 생체 값을 발생할지라도 단명한 데이터 뿐 아니라 사용자 ID와 패스워드는 동일하지 않기 때문에 증명서 암호화 키는 둘에 대하여 동일하지 않게 된다.
디지털 서명에 대한 사용자의 개인키는 사용자의 반복 가능한 생체 템플레이트에 기초를 둘 수 있다. 사용자의 공용키는 개인키로부터 발생된다. 공용키는 등록 프로세스의 일부로서 사용자의 증명서 매니저의 사용자 데이터베이스에 기록된다. 사용자에게 등록을 위해 제공되도록 요구하는 것은 식별을 확립하는 것이나 식별을 확립하는 다른 수용 가능한 방법이 사용될 수 있다.
반복 가능한 생체 판독이 사용될 때 사용자의 개인키는 비록 저장되지 않을 지라도 분실할 경우 회복이 가능하다. 이 경우 생체 판독은 개인키를 확립하며 대응하는 공용키의 발생이 증명서 매니저의 데이터베이스에 저장된 것과 체크가 이루어질 수 있다.
만약 반복 가능한 수가 생체 판독으로부터 항상 보장될 수 없는 경우 생체 템플레이트는 후속된 생체 판독과 비교를 위해 저장되어야 한다. 이 경우 생체 템플레이트는 사용자의 증명서 파일 내에서 암호화된다. 사용자 인증동안 증명서 파일은 암호 해독되어 생체 템플레이트를 회복시켜 인증을 위해 얻어진 생체 판독은 템플레이트와 비교되어 “예 또는 아니오” 답변이 발생된다.
메시지 인증
비대칭 키 암호화 시스템은 상기한 3 메시지 인증 관련 목적물에 대하여 시스템에 사용된다. 만약 단지 데이터 무결성이 요망되는 경우 메시지 인증 코드가 사용될 수 있다. 만약 보안과 결합된 데이터 무결성이 요구되는 경우 비대칭 키 암호화를 갖는 메시지 조작 코드가 사용될 수 있다. 보안을 제공하면서 모든 3 메시지 인증 목적물을 만족하기 위하여 디지털 서명이 사용된다.
디지털 서명
디지털 서명은 데이터 원점 인증, 데이터 무결성 및 부인봉쇄(non-repudiation)를 제공하는데 사용된다. 시스템에 의해 제공된 인프라스트럭처는 디지털 서명 검증에 사용된 공용키와 서명된 증명서를 분배하는 공용키 인프라스트럭처(Public-Key Infrastructure: PKI)의 형태를 지원한다. 다른 제안된 공용키 시스템에서는 인증기관이 네트워크를 통하여 질문(query)을 사용하는 서버에 데이터베이스의 형태를 취한다. 본 발명의 시스템에서 증명서 매니저는 인증기관으로서 역할을 한다. 디지털 서명을 검증하기 위한 모든 정보는 각 사용자의 증명서와 암호화된 목적물에 제공된다. 네트워크와 서버 처리로 인한 부가적인 대역폭은 다른 공용키 시스템에서와 같이 요구되지 않는다.
사용자에 대한 인증서(certificate)는 그 사용자의 증명서 매니저에 의해 서명된다. 각 증명서 매니저는 그 자신의 공용키 및 개인키를 가지고 있다. 조직의 증명서 매니저의 공용키는 각 사용자의 증명서에 제공된다. 증명서 매니저는 사용자의 ID와, 증명서 매니저의 개인키와 조합되는 공용키를 암호화, 즉 서명한다. 이것은 기본적인 사용자 인증서이다. 그것은 단지 증명서 매니저의 공용키를 사용하여서만 암호 해독될 수 있다.
사용자의 인증서는 그 사용자의 증명서에 포함되어 있어 그 결과 사용자가 서명한 목적물과 함께 송부될 수 있다. 서명된 목적물의 수신인은 증명서 매니저의 공용키를 사용하여 송신자의 인증서를 암호 해독하여 그 사용자의 공용키를 회복한다. 회복된 송신자의 공용키는 그 후 서명된 목적물에 대한 송신자의 디지털 서명을 검증하는 데 사용된다.
사용자의 생체 템플레이트는 유용한 경우 사용자의 개인키의 기초를 형성할 수 있다. 예를 들어, EI Gamal Signature Scheme에서 공용키는 프라임(prime) 번호(p), 초기 요소(primitive element)(α) 및 개인 번호(α)로부터 계산된 값(β)의 조합이다. 이 개인 번호는 통상적으로 랜덤하게 선택된다. 그러나, 본 발명에서는 사용자의 템플레이트가 개인 번호 또는 이번호의 일부가 될 수 있다. 이러한 이유로 인증에 사용된 개인키 및 공용키는 개인에 묶여진다. 개인키 및 공용키는 반복 가능한 생체 값이 얻어지는 경우 회복될 수 있다(저장 공간의 필요성을 부정할 때).
조작 검출 코드( MDCs )
만약 데이터 원점 인증과 부인봉쇄와 관계없이 개인 및 데이터 무결성이 요망되는 경우 암호화와 결합된 MDC(Manipulation Detection Code)가 사용될 수 있다. MDC는 메시지로부터 계산된 “unkeyed" 해쉬(hash) 기능을 기본적으로 가지고 있다. 이 해쉬는 그 후 메시지에 첨부되어 새로운 메시지가 암호화된다.
데이터 무결성의 검증으로부터 수신자는 메시지를 암호 해독하여, 메시지로부터 해쉬를 분리하며 회복된 메시지의 MDC를 계산하여 암호 해독된 해쉬와 이를 비교한다. 이 메시지는 그 값이 매칭되는 경우 진정한 것으로서 받아들여진다.
메시지 인증 코드( MACs )
만약 개인과 관계없이 데이터 무결성만이 요망되는 경우 MAC(Message Authentication Code)가 사용될 수 있다. MAC에 대한 작동키는 개인에 대한 메시지를 암호화하는데 사용된 키에 대한 것과 동일한 방법, 즉 라벨 스플리트, 조직 스플리트, 유지 스플리트 및 랜덤 스플리트를 사용하는 결합기 프로세스를 사용함에 의해 구성될 수 있다.
데이터 무결성을 검증하기 위하여 MAC 처리된 메시지의 수신자는 MAC에 대한 키를 재구성하기 위해 메시지와 연관된 스플리트를 사용한다. 새로운 MAC는 그 후 수신자에 의해 계산된 후 메시지와 함께 송부된 MAC와 비교된다. 만약 2 MAC가 매칭되는 경우 메시지는 변경되지 않았던 것으로 받아들여진다.
MDCs와 MACs는 디지털 서명과 같이 자주 사용된다고 예상되지 않는다. 따라서, MDCs와 MACs는 다음의 프로세스 설명에 언급되지 않을 것이다.
프로세스( Process )
본 발명이 태스크를 어떻게 수행하는 지를 보여주기 위해 선택된 프로세스를 설명한다. 일정한 생체 값을 생성할 수 있는 생체 측정과 슈퍼 카드TM와 같은 스마트 카드가 사용되는 것으로 가정한다.
세션 확립(시스템에 대한 로그-온)
시스템의 사용은 성공적인 로그-온과 사용자 증명서의 암호 해독을 조건으로 한다. 시스템-보강 프로그램이 사용자의 워크스테이션에서 작동될 때 세션 확립(session establishment)이 시작된다. 워크스테이션은 사용자가 스마트 카드, 사용자 생체 측정, 사용자 ID 및 패스워드(로그-온 데이터)를 제공하도록 촉구한다. 암호화된 채널이 워크스테이션과 스마트 카드 사이에 확립되고 로그온 데이터가 키가 발생되어 사용자의 증명서가 해독되는 경우 스마트 카드로 전송된다. 증명서는 스마트 카드 또는 어떤 다른 장소에 머무를 수 있으며 이 경우 암호화된 증명서 파일은 암호 해독 및 사용을 위해 스마트 카드로 전송된다. 성공적인 로그온시에 증명서 파일은 재 암호화되어 기억되고 암호 해독된 복사본이 세션동안 사용을 위해 스마트 카드의 메모리에 유지된다.
로그온을 완료하기 위하여 3가지, 즉 패스워드, 스마트 카드(또는 다른 토큰) 및 생체 정보가 요구되는 점에 주의해야 한다. 패스워드를 알지 못하는 경우 반대자는 전체의 패스워드 공간을 추측하거나 조사하게 된다. 랜덤 비트가 증명서 해독 프로세스에 대한 시작으로서 사용되며, 만약 추정 패스워드가 사용되는 경우 출력은 정확하게 반대자에 의해 그렇게 쉽게 검출되지 않는다. 이들 랜덤 비트를 계속적으로 변경하는 것은 반대자가 과거의 결과를 반복함에 의해 프로세스를 통과하는 것을 방지한다. 패스워드에 요구되는 최소 문자와 같은 패스워드 정책은 패스워드 단독으로 사용자 인증에 사용될 때 보안을 증가시킨다. 패스워드 단독은 약한 인증시에 여전히 고려된다. 스마트 카드와 생체 측정이 강한 인증을 위해 추천된다.
스마트 카드는 로그-온을 완료하기 위하여 제공되어야 한다. 스마트 카드에 증명서 파일 키 발생을 위한 랜덤 비트를 제공하는 것은 그 카드를 사용자의 증명서 따라서 사용자와 묶는다. 사용자의 패스워드 없이 스마트 카드 단독으로는 로그온을 완료하지 못한다. 패스워드는 스마트 카드에 저장되지 않으며 따라서 반대자에게 카드의 분실은 사용자의 패스워드 또는 사용자의 증명서와 타협하지 않는다.
슈퍼카드TM가 사용될 때 고유한 무선 주파수 서명은 이 서명을 사용자의 증명서에 기억된 서명과 비교함에 의해 카드의 변형을 검출한다. 슈퍼카드TM가 표준 ISO 스마트 카드 리더에 여전히 사용될 수 있으나, RS-RFID는 무시된다.
사용자 증명서를 암호 해독하기 위해 키를 형성하는 정보로서 생체 데이터를 사용하는 것은 생체 데이터와 따라서 사용자를 증명서 파일에 암호학적으로 묶는다. 따라서, 사용자의 패스워드를 아는 것과 사용자의 스마트 카드의 소유는 사용자의 증명서를 암호 해독하기 위한 충분한 정보가 되지 않는다. 패스워드와 스마트 카드의 타협은 카드 또는 그 물체의 어디에도, 암호화된 형태일지라도 기억되지 않기 때문에 사용자의 생체 데이터를 개시하지 않는다.
일단 로그-온한 경우 사용자는 프로그램이 활동적으로 사용되고 있고 스마트 카드가 카드 리더에 존재하는 한 로그-온된 상태를 유지한다. 증명서 매니저에 의해 설정된 타임-아웃 시간이 설정되어 있으므로 만약 사용자가 활성화된 프로그램을 활동적으로 사용하지 않은 경우 세션은 불능화 처리된다. 사용자는 그 후 활성화된 소프트웨어를 계속하여 사용하기 위하여 다시 패스워드와 생체 측정을 제거하여야 한다. 사용자가 활성화된 프로그램을 중단할 때 그 시간에 동작중인 다른 어떤 활성화된 프로그램이 없는 경우 사용자는 로그-오프 되거나 또는 타임-아웃 기간이 경과할 때 까지 로그-온된 상태를 계속하게 된다. 이 타임-아웃 기간 내에서 만약 다른 활성화된 프로그램이 불려지는 경우 사용자는 로그-온할 필요가 없게 된다. 그러나, 만약 타임-아웃 기간이 경과한 경우는 사용자는 다시 로그-온을 하여야 한다. 어떤 활성화된 프로그램도 동작되고 있지 않은 기간 동안 타임-아웃 값이 만료되기 전에 사용자는 그 사용자를 빠르게 로그-오프시키는 유틸리티 프로그램을 동작시킬 수 있다.
디지털 서명을 갖는 암호화
목적물의 암호화는 암호화 알고리즘과 라벨 스플리트의 선택을 요구한다. 이 선택은 목적물을 암호 해독할 수 있는 자를 결정한다. 디폴트(default) 라벨과 알고리즘 선택은 편의상 제공된다. 이는 데이터의 중요부분이 동일한 라벨과 알고리즘을 사용하여 암호화될 때 특히 암호화 프로세스를 능률적으로 만든다. 증명서 매니저는 이 디폴트를 설정할 수 있다. 그것은 가장 제한적으로 이루어질 수 있으며, 이 경우에 사용자는 라벨 세트가 단지 덜 제한적으로 되도록 라벨 선택을 변경할 필요가 있다. 사용자 선택 및 위임 받은 사용 라벨에 대응하는 스플리트는 사용자-선택 암호화 알고리즘을 초기화하는데 사용되는 키를 발생하기 위한 결합기 프로세스에 의해 사용된다.
암호화 해쉬가 목적물의 평문, 즉 데이터가 암호화되기 전에 적용된다. 해쉬값은 그 후 사용자의 개인키(사용자의 생체 판독에 기초하여 발생된 것)를 사용하여 암호화된 후 그 목적물의 디지털 서명이 얻어진다.
디지털 서명은 옵션일 수 있으며 정책 매니저 요구사항에 따른 위임된 것일 수 있다.
헤더(header)는 사용자의 라벨과 알고리즘 선택, 사용자의 인증서, 디지털 서명 및 목적물을 암호 해독하는데 요구되는 다른 정보를 포함하여 생성된다. 이 헤더는 암호화된 목적물에 첨부된다.
디지털 서명 검증을 가진 암호 해독
암호 해독은 암호화된 목적물의 헤더를 아호 해독하여 판독함에 의해 시작된다. 만약 사용자가 암호화에 사용된 라벨에 대한 판독 허가를 가지고 있으며 사용된 알고리즘에 대한 액세스를 하는 경우 목적물은 암호 해독될 수 있다.
서명 검증을 위해 목적물은 암호화 해쉬가 계산될 수 있도록 우선 암호 해독되어야 한다. 이는 단지 암호화를 위해 사용된 라벨에 대한 판독 허가를 갖고 있는 자만이 디지털 서명을 검증할 수 있다는 것을 의미한다. 일단 해쉬가 계산되면 암호자의 증명서 매니저의 공용키는 증명서로부터 유도된다. 이 공용키가 헤더에 포함된 증명서를 암호 해독하는데 사용되며, 따라서 서명자의 공용키를 회복하게 된다. 검증 모듈은 암호자의 공용키를 , 디지털 서명 및 입력으로서 암호 해독된 데이터로부터 계산된 해쉬값을 얻게 된다. 만약 검증 모듈이 “예”답변이 제시할 때 그 목적물은 진본(authentic)인 것으로 선언된다.
탐지
탐지의 의도는 침입, 변형 또는 실패를 나타내는 이벤트가 발생할 때 마다 어떤 개인에게 통지하고 어떤 행위를 하는 것이다. 가장 단순하게는 탐지는 선택된 이벤트를 감사하는 것이다. 감사되어야 할 최소한의 이벤트는 정책 매니저에 의해 결정된다.
탐지는 발생된 난수의 랜덤성에 대한 통계학적인 테스트와 같이 다른 형태를 취할 수 있다. 약한 암호화 키 탐지가 또한 수행될 수 있다. 이들 형태의 알람은 사용자가 시스템의 보안과 타협하는 행위를 계속하는 것을 통지하고 중지시킨다.
다른 기술의 일예는 주기적 또는 랜덤하게 헤더를 읽고 증명서 매니저의 데이터베이스마다 사용자의 발행된 라벨에 대하여 그 내에 포함된 라벨 세트를 검증하는 모니터를 사용하는 것이다. 이는 어떤 사람이 승인되지 않은 액세스를 얻으려고 노력하는 것을 탐지하여 보안 관리자를 도와준다.
이벤트 탐지 및 알람에 사용될 수 있는 많은 기술, 그들 중의 일부는 하드웨어 기반의 기술이 있다. 이들을 사용하여 정책 매니저 및 증명서 매니저에 의해 제어될 것이다.
요약( Summary )
본 발명 기술은 비사용 데이터를 암호화하기 위한 효과적인 시스템을 제공할 수 있다. 이는 또한 이동 중 데이터를 암호화하기 위한 적당한 시스템을 제공할 수 있다. 본 발명은 어플리케이션 프로토콜 레벨을 넘어 OSI 스텍에서 레벨 2(예를 들어, IEEE 802)와 같은 낮은 레벨로 확장될 수 있다. 채널에 대해 세션 키를 확립하기 위한 암호화 프로토콜은 통신 환경의 파라미터에 적응될 수 있다.
본 발명을 구현하는 어플리케이션 프로그래밍 인터페이스는 안전한 어플리케이션을 개발하도록 사용될 수 있다. 소프트웨어는 여기에 설명한 기술의 선택된 요소를 결합하여 파일 및 이메일 암호화를 제공하는데 사용될 수 있다. 또한 본 발명은 오디오 및 그래픽 어플리케이션에 암호화를 부가하는 데 사용될 수 있다.
라벨 세트 디자인
본 발명은 정보에 대한 선택적인 액세스를 제공하는 암호화를 사용한다. 본 발명에 따라 암호화할 때 사용자(사람 또는 장치)는 수동 또는 자동으로 라벨을 선택하며 그들은 암호화되고 있는 정보의 의도된 수신자와 공유한다. 사용자는 특정 서브세트의 정보 또는 정보 그룹을 목표로 하는데 요구되는 많은 라벨을 적용할 수 있다. 단지 매칭 라벨을 포함하는 증명서를 보유하는 사용자는 정보를 관찰할 수 있다.
라벨은 암호화 스플리트의 인간적으로 이해할 수 있는 한쪽이다. 그들은 비대칭 액세스 제어 시스템의 가변 파트를 형성한다. 라벨의 선택과 배치는 유용한 암호화 시스템을 생성하는데 극히 중요한 사항이다.
본 발명은 데이터 분리에 아주 적합하며 정보에 대한 역할-기반 액세스에 적합하다. 데이터 분리는 레벨 또는 카테고리에 정보를 할당하고 그 후 알 필요가 있거나 또는 다른 보안 정책에 기초하여 각각에 대한 액세스를 제한하는 프로세스이다. 역할-기반 액세스는 수행된 역할에 의해 정보ㅗ에 대한 액세스를 할당하고 그 후 이들 역할에 개인을 할당하는 방법이다. 정보에 대한 각 개인의 액세스는 그의 역할이 변경될 때 변경된다. 인터넷은 많은 데이터베이스에서 정보를 액세스하는 서치 엔진의 생성을 용이하게 한다. 이들 서치 엔진의 태깅(tagging) 또는 인덱싱 방법론은 암호화 시스템에 포함된 라벨에 서로 관련될 수 있다.
임의의 조직 내의 모든 정보는 동일한 개시 위험을 가지고 있지 않다. 약간의 정보의 개시는 환경에 따라 중대한 부정적인 충격을 가질 수 있다. 승인되지 않은 개시를 최소화하는 전통적인 방법은 조직적인 구획 내에 정보를 보관하고 정책, 절차 및 각각에 적당한 제어를 확립하는 것이다.
라벨은 조직 내에 확립된 정보 구획을 반영할 수 있다. 예를 들어, 만약 큰 조직이 500 정보 구획으로 식별되는 경우 그 후 정책 매니저는 이들 구획을 나타내는 500 라벨을 생성한다. 특정 라벨은 특정 구획에 대한 액세스를 갖는 역할에 할당된 개인에 할당된다. 톱-다운 방식으로 명령된 정보 구획은 개인 사용자에 대한 프로세스를 단순화한다. 만약 개인이 2 정보 구획 내에서 역할로 할당되는 경우 그의 증명서는 단지 암호화를 위해 이들 2 라벨 옵션을 제공한다. 그러나, 실제로는 전체 명령된 구획 시스템은 충분하게 가요성을 가지고 있지 않다. 명령된 구획의 외측으로 보내질 자료에 대하여 리더쉽 제한을 설계하는 경우에 약간의 가요성을 각 사용자에게 허용하는 것이 최선이다.
라벨은 또한 조직을 횡단하여 리더쉽을 지정하는 데 사용될 수 있다. 예를 들어, 라벨 “전직원 정보”는 조직 내의 모든 사람에게 발행될 수 있다. 모든 사람은 이 라벨을 사용하여 정보를 암호화할 수 있다; 그러나, 단지 매니저와 전직원 부에 할당되는 이들 사람들만이 이러한 정보를 암호 해독할 수 있다. 유사한 암호화 및 암호 해독 제한을 갖는 다른 “조직을 넘는” 라벨은 보안(Security), 법률(Legal), 감찰관(Inspector General), 또는 다른 조직 그룹 또는 기능을 포함한다.
템플레이트의 사용은 라벨의 분배를 돕는다. 템플레이트는 조직의 정보 흐름 바운더리를 나타내는 라벨을 포함하거나 또는 한 그룹의 정보 서브세트를 나타내도록 이루어질 수 있다. 템플레이트를 만들고 동시에 다수의 사용자에게 이들을 할당함에 의해 분배 프로세스는 크게 용이해지게 된다. 예를 들어, 기본 역할 템플레이트는 모든 피고용자에게 할당될 라벨을 포함하도록 생성될 수 있다. 부가적인 템플레이트가 슈퍼바이저, 매니저 및 이사 또는 요구되는 다른 역할에 대하여 생성되어 할당될 수 있다.
보안 요구사항을 만족하는데 필요한 제한이 이루어지는 라벨 세트를 설계하도록 주의가 이루어져야 한다. 그 목적물은 명령된 구획 접근을 나타내는 라벨을 특별히 조직을 뛰어넘는(구획) 통신을 허용하는 라벨과 결합해야만 하는 것이다. 결과적인 라벨 세트는 단순하고 사용하기 쉬운 서브세트를 각 사용자에게 분배될 수 있게 한다.
예를 들어, 도 1은 목적물(object)을 암호화하는 프로세스를 보여준다. 도시된 바와 같이 다수의 키 스플리트가 암호화키를 생성하도록 되어 있다. 암호화 알고리즘이 암호화키를 사용하여 초기화된다. 초기화된 암호화 알고리즘은 암호화된 목적물을 형성하도록 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부분에 적용된다. 다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부가 대응한다.
도 2는 본 발명에 따른 다른 예시적인 프로세스를 보여준다. 도시된 바와 같이, 목적물을 암호화하는 프로세스는 조직에 대응하는 조직 스플리트, 유지 스플리트, 랜덤 스플리트, 적어도 하나의 라벨 스플리트를 결합하여 암호화키를 발생하는 단계를 포함한다. 암호화 알고리즘은 암호화키를 가지고 초기화된다. 적어도 목적물의 일부가 초기화된 암호화 알고리즘에 따라 암호화되어 암호화된 목적물을 형성한다. 결합기 데이터가 암호화된 목적물에 부가된다. 결합기 데이터는 적어도 하나의 라벨 스플리트와 암호화 알고리즘 중 적어도 하나에 대응하는 기준 데이터, 조직과 연관된 이름 데이터, 적어도 하나의 유지 스플리트 및 유지 스플리트와 연관된 유지 레벨, 및 랜덤 스플리트를 포함한다. 암호화된 목적물은 의도된 수신자에 의한 후속된 사용을 위해 부가된 결합기 데이터와 함께 저장될 수 있다.
안전한 동작 제어
도 3은 프로세스의 무결성(integrity)을 검사하기 위한 도구로서 암호화를 사용하는 시스템의 흐름도이다. 입력(2)이 시스템에 제공되며 이는 프로세스(4)에 의해 조작되도록 의도되어 있다. 그러나, 이 입력(2)은 우선 복사 프로세스(6)를 진행하여 동일한 입력(8,10)을 제공한다. 입력(8)은 처리되도록(4) 통과되고 한편 입력(10)은 암호화 프로세스(12)에 의해 암호화된다. 승인된 수신자는 암호화 프로세스(12)에 의해 제공되는 무결성으로 인하여 이 암호화된 복사 입력(14)이 신뢰성 있는 것으로 고려할 것이다.
유사하게 도 4는 출력 문맥에 사용된 암호화를 보여준다. 시스템의 프로세스(16)는 출력(18)을 발생한다. 이 출력은 복사 프로세스(20)를 실행하여 2개의 동일한 출력(22,24)을 발생한다. 출력(22)은 시스템의 작동성에 의해 결정된 정상적인 목적지로 계속 진행한다. 출력(24)은 암호화 프로세스(26)로 제공된다. 승인된 수신자는 암호화 프로세스(26)에 의해 제공되는 무결성으로 인하여 이 암호화된 복사 출력(28)이 신뢰성 있는 것으로 고려할 것이다.
이 문맥에서 처리는 소망하는 결과를 생성하도록 한 세트의 제한된 절차에 따라 데이터의 조작이다. 처리의 결과는 서브-시스템 내부 또는 외측으로 다른 프로세스에 대한 입력으로 사용될 수 있거나 또는 스크린의 디스플레이 또는 직접 인간의 사용을 위한 다른 표시장치와 같은 전자 시스템의 외측에 사용될 수 있다.
예를 들어, 도 5는 프로세스(32)에 의해 입력으로서 프로세스에 제공된 선택된 프로세스 요소(30)가 조작되는 프로세스(32)를 보여준다. 프로세스(32)에서 미리 설정된 지점(34)에서 프로세스(32)는 샘플링되어 암호화 모듈(36)에 의해 암호화되어 암호화된 출력(38)을 제공한다. 따라서, 암호화된 출력(38)의 암호 해독된 버전을 조사하는 승인된 수신자가 암호화 모듈(36)에 의해 제공된 무결성으로 인하여 프로세스 샘플의 신뢰성에 높은 레벨의 신뢰를 갖게 된다.
이 문맥에서 예정된 조건은 모든 또는 지정된 프로세스, 레지스터의 상태 및 특정 시간에 시스템 내에서의 다른 조건이다. 상태 정보의 연대순 기록의 리뷰는 특정 시간동안 작용된 시스템의 증거를 제공한다.
예를 들어, 도 6은 예정된 조건이 시스템에서 어떻게 표본 추출되는 지를 보여주며, 그 결과 그들이 때 맞추어 특정 지점에서 시스템의 안전하고 신뢰성 있는 “스냅 샷”을 제공하도록 암호화될 수 있다. 시스템이 동작할 때 선택된 대차계정, 상태 및 다른 프로세스가 시간(42,44,46)상 다른 지점에서 샘플링된다. 도시된 바와 같이, 시간(42)의 제1지점에서 프로세스(40)가 샘플링되어 시간(42)의 지점에서 시스템의 예정된 조건의 판독을 제공한다. 이러한 예정된 조건 샘플은 그 후 암호화되어 시간(42)의 제1선택된 점에서 특징적인 암호화된 출력(43)을 제공한다. 유사하게 시간(44)의 제2지점에서 프로세스(40)는 샘플링되어 시간(44)의 지점에서 시스템의 예정된 조건의 판독을 제공한다. 이러한 예정된 조건 샘플은 그 후 암호화되어 시간(44)의 제2선택된 점에서 특징적인 암호화된 출력(46)을 제공한다. 끝으로, 현재 시간(46)에서 프로세스(40)는 샘플링되어 시스템의 현재 예정된 조건의 판독을 제공한다. 이러한 예정된 조건 샘플은 그 후 암호화되어 시스템의 현재 예정된 조건의 특징적인 암호화된 출력(47)을 제공한다. 미래의 샘플이 얻어져서 암호화된 출력이 발생된다. 따라서, 암호화된 출력(43,45,47)의 암호 해독된 버전을 조사하는 승인된 수신자가 암호화 프로세스에 의해 제공된 무결성으로 인하여 예정된 조건 샘플의 신뢰성에 높은 레벨의 신뢰를 갖게 된다.
이 문맥에서 가상 환경은 암호화의 시간에 시스템에 제공된 영향 조건을 말한다. 암호화 범위에 가상 환경 정보를 포함함에 의해 암호화된 목적물에 대한 모든 영향의 성질과 효과는 기록되어 분석될 수 있다. 가상 환경 정보는, 그러나 제한되지 않는 것으로, 유사한 또는 다른 아이템과 비교할 때 처리의 순서; 데이터 변환 및 재포맷팅과 같은 데이터의 사전 처리; 다른 활성 프로세스 또는 스레드의 상태; 오퍼레이팅 시스템 제어 정보; 사용자 로그-온의 식별; 네트워크 모니터링 정보; 및 다른 활성 제어 프로세스를 포함한다.
암호화하여 가상 환경 정보를 선택된 데이터 목적물에 결합시킴에 의해 데이터 목적물의 무결성이 보증될 뿐 아니라 목적물을 생성한 환경의 성질과 범위가 검증될 수 있다. 더욱이, 암호화된 목적물이 다른 목적물 내에 매입되어 암호화 되거나 또는 그렇지 않으면 미국 특허 제5,369,702호에 기재된 바와 같이 시스템의 사용자에게 액세스 계층을 제공한다. 본 발명의 문맥 내에서 암호화된 목적물은 관리 및 다른 측을 위한 전자적인 제어 계층의 검증을 제공한다.
도 7은 가상 환경 데이터(50)가 어떻게 암호화된 목적물(52) 내에 수집되어 매입될 수 있는 지를 보여준다. 다른 관련된 암호화되지 않은 목적물(54)은 다른 암호화된 목적물(56)이 그렇게 될 수 있는 것과 같이 또한 동일한 암호화된 목적물(52) 내에 매입될 수 있다. 물론 수집된 가상 환경 데이터(50)는 암호화된 목적물(52) 내에 매입되기 전에 암호화될 수 있으며, 내부의 암호화된 목적물(56)은 다른 암호화 및/또는 암호화되지 않은 목적물을 포함할 수 있다. 추출된 가상 환경 데이터 목적물을 조사하는 승인된 수신자가 목적물에 대한 콘테이너를 생성하는 데 사용된 암호화 프로세스에 의해 제공된 무결성으로 인하여 대응하는 데이터의 신뢰성에 높은 레벨의 신뢰를 갖게 된다.
관리, 세금 관할권, 규정 당국, 내부 승인된 수신자, 독립된 회계사 및 다른 측이 제어 시스템의 상호 작용 뿐 아니라 모니터 및 감사 제어 시스템에 이들 특징을 사용할 수 있다-비즈니스로서 중요한 이점은 전자 세계로 이동한다. 이 기술을 사용하면, 실제적인 절차를 고려하는 제어 시스템은 다른 제어 시스템이 설계된 바와 같이 동작하는 증거를 제공할 수 있다.
따라서, 시스템은 관련된 목적물을 보호하고 제어하는 데 사용된 암호화 프로세스로서 간주될 수 있으며, 또는 프로세스의 무결성을 보장하는 감사 및 제어 도구로서 간주될 수 있다. XML과 같은 프로세스가 데이터베이스로부터 회복되거나 또는 그 내의 목적물 너머로 관리 흐름 제어 능력을 연장한다.
본 발명은 설명의 용이성을 위해 특정 프로세스, 즉 확장성 생성 언어(Extensible Markup Language: XML)를 고려하여 설명된다. 그러나, 본 발명은 이 예시적인 프로세스에 제한되지 않으며 여기에서 설명된 것과 같이 넓게 사용될 수 있다는 점에 유의해야 한다. XML은 데이터를 구조화하고 설명하는 데 사용된 방법이며, 그것은 데이터베이스 및 전자적인 상업적 어플리케이션을 포함하는 다른 소프트웨어 어플리케이션에 의해 이해될 수 있다. XML은 바람직하게는 특정 공통 산업계 협정을 사용하여 뜻에 대하여 라벨 데이터 목적물에 태그를 사용하며, 그 결과 다른 벤더에 의해 생성되고 다른 목적을 가지는 소프트웨어 어플리케이션이 데이터를 재구성하데 도움 없이 그들 사이에 데이터 목적물을 통과시킨다. XML은 어플리케이션이 입력을 위해 태그 데이터 목적물을 사용할 수 있게 한다. XML은 하나의 어플리케이션으로부터 다른 것으로 전송되는 정보를 사용될 수 있다. 어플리케이션은 비즈니스 거래, 재무제표, 구입 주문서, 제품 카탈로그, 병력, 데이터베이스 검색 등을 포함한다. 이 예에서 XML 태그는 어플리케이션 및 아마도 오퍼레이팅 시스템, 회계 및 동작 제어 시스템 목적물을 식별하기 위한 소프트웨어에 의해 사용된다. 안전한 회계 및 동작 제어 및 보고 시스템(SAOCRS: Secure Accounting and Operational Control and Reporting System) 어플리케이션 소프트웨어 가 선택된 태그 데이터 목적물을 조사하여 만약 적당한 경우 태그 목적물 또는 목적물의 그룹의 복사본 암호화를 한다. 더욱이, 암호화된 목적물은 다른 목적물 내에서 매입되어, 암호화 되거나 또는 그렇지 않으면 미국 특허 제5,369,702호에 기재된 바와 같이 시스템의 사용자에게 액세스 계층을 제공한다. XML 라벨은 직접적으로 관련되거나 또는 참고 프로세스에 관련하도록 그룹화 또는 변경될 수 있다. 암호화된 목적물은 그 후 바로 암호 해독 및 추가 처리를 위해 승인된 수신자에 실시간 기초로 직접적으로 통과되거나 그들이 저장되고 그 후의 시간에 전송된다.
도 8은 SAOCRS에서 입력 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다. 초기에 입력 목적물(600)은 XML 태그에 관련되거나 또는 관련되지 않는다; 만약 그럴 경우, XML-태그 입력 목적물(601)은 선택 및 복사 프로세스(603)에 직접적으로 공급된다. 만약 요구되는 경우, XML 목적물-태깅 어플리케이션(602)은 적당한 XML 태그를 입력 목적물(600)에 적용한다. 목적물 속성을 식별하는 XML 태그를 사용하여 SAOCRS(604)는 제어 요구사항에 따라 어떤 목적물(605)을 선택하며 동일한 복사본이 만들어지게 된다. 오리지날 태그 입력 목적물(606)은 의도한 프로세스(607)로 통과하도록 허용된다.
SAOCRS(604) 내에서 선택된 입력 목적물(605)의 각 복사의 XML 태그는 각 목적물을 암호화하는데 사용되도록 적당한 역할-기반 액세스 라벨 또는 라벨들을 결정하도록 암호화된 액세스 계층(609) 내의 라벨과 관련 처리된다(608). 역할-기반 라벨은 특정인 또는 액세스 허용된 장치의 식별 이외에 액세스의 타입 또는 카테고리의 설명자이다. 각 입력 목적물 복사본은 암호화되어(610), 다른 SAOCRS를 포함하는 적당한 사람, 장치 또는 다른 시스템을 위하여 통과되거나 또는 저장된다(611).
도 9는 SAOCRS에서 복사된 출력 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다.
초기에 프로세스(700,701)의 출력 목적물(704)은 XML 태그에 관련되거나 또는 관련되지 않는다; 만약 그럴 경우, XML-태그 출력 목적물(702)은 선택 및 복사 프로세스(703)에 직접적으로 공급된다. 만약 요구되는 경우, XML 목적물-태깅 어플리케이션(705)은 적당한 XML 태그를 출력 목적물(704)에 적용한다. 목적물 속성을 식별하는 XML 태그를 사용하여 SAOCRS(706)는 제어 요구사항에 따라 어떤 목적물(707)을 선택하며 동일한 복사본이 만들어지게 된다. 오리지날 태그 입력 목적물(708)은 의도한 프로세스(709)로 통과하도록 허용된다.
SAOCRS(706) 내에서 선택된 출력 목적물(707)의 각 복사의 XML 태그는 각 목적물을 암호화하는데(712) 사용되도록 적당한 역할-기반 액세스 라벨 또는 라벨들을 결정하도록 암호화된 액세스 계층(710) 내의 라벨과 관련 처리된다(711). 각 출력 목적물 복사본은 암호화되어(713), 다른 SAOCRS를 포함하는 적당한 사람, 장치 또는 다른 시스템을 위하여 통과되거나 또는 저장된다(714).
도 10은 전체적으로 예정된 조건 검사를 제공하는 SAOCRS에서 복사된 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다. 필요할 때 때때로 SAOCRS는 그들 전체를 고려하여 시스템의 조건을 공정하게 나타내며 동작 또는 감사 활동에 대한 기초를 형성하는 목적물의 진실성을 확인하는 경우에 도움이 되는 입력 및 출력 목적물(800-805)을 선택한다. 선택된 목적물(800-805)은 목적물 선택을 돕는 XML 태그에 관련되거나 또는 관련되지 않는다. 그들은 가각 다중 분리된 프로세스 중의 하나의 입력 또는 출력 중 어느 하나일 수 있다. 그들은 다른 SAOCRS로부터 암호화된 입력 또는 출력 목적물인 수 있다.
목적물 속성을 식별하는 XML 태그를 사용하여 가능한 경우 SAOCRS(806)는 제어 요구사항에 따라 어떤 목적물을 선택하며 동일한 복사본이 만들어지게 된다(807). 오리지날 목적물(808)은 의도한 프로세스(809)로 통과하도록 허용된다.
SAOCRS(806) 내에서 선택된 목적물의 각 복사(810)의 XML 태그는 각 목적물(810)을 암호화하는데(812) 사용되도록 적당한 역할-기반 액세스 라벨 또는 라벨들을 결정하도록 암호화된 액세스 계층 내의 라벨(811)과 관련 처리된다. XML 태그가 없는 각 선택된 목적물은 각 목적물을 암호화하는데(812) 사용되도록 적당한 역할-기반 액세스 라벨 또는 라벨들을 결정하도록 암호화된 액세스 계층 내의 라벨(811)과 관련 처리된다. 각 세트의 목적물(810)을 암호화하는데(812) 사용된 라벨(811)에 기초하여 SAOCRS(806)는 하나의 전체적인 목적물(813) 내에 모든 목적물을 암호화하는데(814) 이용되도록 적당한 라벨 또는 라벨들(811)을 결정한다. 이를 포함하여 시스템 조건을 검증하는 암호화된 목적물을 포함하는 암호화된 목적물(814)은 그 후 다른 SAOCRS를 포함하는 적당한 사람, 장치 또는 다른 시스템을 위하여 통과되거나 또는 저장된다(815).
따라서, 암호화 프로세스를 제공하며 안전한 회계 및 동작 제어를 제공하는 시스템이 설명되었다. 이러한 프로세스는 XML 포맷을 이용하는 프로세스 또는 계획 또는 태그 데이터 요소를 이용하는 어떤 다른 계획에 유리하게 적용될 수 있다. 더욱이, 어떤 암호화 프로세스가 사용될 수 있으며, 특히 유리한 암호화 프로세스 및 시스템이 상기한 바와 같이 안전한 동작 제어를 제공하는 용도로 설명되었다.

Claims (17)

  1. 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 암호화하는 프로세스에 있어서,
    다수의 키 스플리트를 묶어서 암호화키를 발생하는 단계;
    암호화키를 가지고 암호화 알고리즘을 초기화하는 단계; 및
    목적물 태그에 의해 적어도 일부가 결정된 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부에 초기화된 암호화 알고리즘을 적용하여 암호화된 목적물을 형성하는 단계를 포함하며,
    다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부에 대응하는 것을 특징으로 하는 암호화 프로세스.
  2. 제1항에 있어서, 의도된 수신자에 의해 후속된 사용을 위해 암호화된 목적물을 저장하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.
  3. 제1항에 있어서, 의도된 수신자에 의해 후속된 사용을 위해 암호화된 목적물을 저장하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.
  4. 제1항에 있어서, 상기 목적물은 확장성 생성 언어(XML) 요소인 것을 특징으로 하는 암호화 프로세스.
  5. 제1항에 있어서, 다수의 키 스플리트의 적어도 하나의 키 스플리트를 암호화된 목적물에 부가하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.
  6. 제1항에 있어서, 다수의 키 스플리트의 적어도 하나의 키 스플리트와 연관된 기준 데이터를 암호화된 목적물에 부가하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.
  7. 제1항에 있어서, 다수의 키 스플리트의 적어도 하나의 키 스플리트를 저장 매체로부터 검색하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.
  8. 제7항에 있어서, 저장 매체는 스마트 카드에 배치되어 있는 것을 특징으로 하는 암호화 프로세스.
  9. 제1항에 있어서, 암호화키를 생성하기 위하여 다수의 키 스플리트를 묶는 단계는 스마트 카드에서 수행되는 것을 특징으로 하는 암호화 프로세스.
  10. 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 데이터 프로세서가 암호화하는 명령을 포함하는 저장 매체에 있어서, 상기 명령은 다수의 키 스플리트를 묶어서 암호화키를 발생하며;
    암호화키를 가지고 암호화 알고리즘을 초기화하고; 그리고
    목적물 태그에 의해 적어도 일부가 결정된 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부에 초기화된 암호화 알고리즘을 적용하여 암호화된 목적물을 형성하는 것을 포함하며,
    다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부에 대응하는 것을 특징으로 하는 저장 매체.
  11. 제10항에 있어서, 상기 명령은 다수의 목적물로부터 목적물을 선택하는 것을 더 포함하며, 적어도 일부가 연관된 목적물 태그에 따르는 것을 특징으로 하는 저장 매체.
  12. 제10항에 있어서, 상기 목적물은 확장성 생성 언어(XML) 요소인 것을 특징으로 하는 저장 매체.
  13. 제10항에 있어서, 상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트를 암호화된 목적물에 부가하는 것을 더 포함하는 것을 특징으로 하는 저장 매체.
  14. 제10항에 있어서, 상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트와 연관된 기준 데이터를 암호화된 목적물에 부가하는 것을 더 포함하는 것을 특징으로 하는 저장 매체.
  15. 제10항에 있어서, 상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트를 저장 매체로부터 검색하는 것을 더 포함하는 것을 특징으로 하는 저장 매체.
  16. 제15항에 있어서, 메모리의 적어도 일부는 스마트 카드에 배치되어 있는 것을 특징으로 하는 저장 매체.
  17. 제10항에 있어서, 상기 데이터 프로세서가 분배되고 암호화키를 발생하는 명령이 스마트 카드의 적어도 일부에서 실행되는 것을 특징으로 하는 저장 매체.
KR1020117008887A 2005-04-25 2005-04-25 태그 데이터 요소의 암호화와 동작 제어 프로세스-1 KR20110079660A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2005/014282 WO2006115491A1 (en) 2005-04-25 2005-04-25 Process of encryption and operational control of tagged data elements

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020077027520A Division KR20080014795A (ko) 2007-11-26 2005-04-25 태그 데이터 요소의 암호화와 동작 제어 프로세스

Publications (1)

Publication Number Publication Date
KR20110079660A true KR20110079660A (ko) 2011-07-07

Family

ID=37215028

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117008887A KR20110079660A (ko) 2005-04-25 2005-04-25 태그 데이터 요소의 암호화와 동작 제어 프로세스-1

Country Status (6)

Country Link
US (1) US20080310619A1 (ko)
EP (1) EP1889397A4 (ko)
KR (1) KR20110079660A (ko)
CN (1) CN101204036A (ko)
IL (1) IL186876A0 (ko)
WO (1) WO2006115491A1 (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090249192A1 (en) * 2008-03-31 2009-10-01 Microsoft Corporation Creating a view from multiple templates
US8625785B2 (en) * 2008-05-15 2014-01-07 Qualcomm Incorporated Identity based symmetric cryptosystem using secure biometric model
DE102008041392A1 (de) * 2008-08-20 2010-02-25 Psylock Gmbh Kryptographieverfahren und Identifizierungsverfahren auf Basis biometrischer Daten
US8151333B2 (en) * 2008-11-24 2012-04-03 Microsoft Corporation Distributed single sign on technologies including privacy protection and proactive updating
US8285997B2 (en) * 2009-03-20 2012-10-09 Barracuda Networks, Inc. Backup apparatus with higher security and lower network bandwidth consumption
US20110093510A1 (en) * 2009-10-20 2011-04-21 Roche Diagnostics Operations, Inc. Methods and systems for serially transmitting records in xml format
US20110267190A1 (en) * 2010-05-03 2011-11-03 Irvine Sensors Corporation Anti-Tampering Detection Using Target Circuit RF Signature
US8667297B2 (en) 2010-10-05 2014-03-04 Blackberry Limited Key with integral biometric input device
US8788545B2 (en) 2010-12-08 2014-07-22 International Business Machines Corporation Calculating state of cryptographic objects and generating search filter for querying cryptographic objects
FR2970357B1 (fr) * 2011-01-07 2013-01-11 Oridao Dispositif et procede de tracage
US20120201379A1 (en) * 2011-02-04 2012-08-09 Motorola Solutions, Inc. Method and apparatus for protecting security parameters used by a security module
US8806656B2 (en) * 2011-02-18 2014-08-12 Xerox Corporation Method and system for secure and selective access for editing and aggregation of electronic documents in a distributed environment
US8719571B2 (en) 2011-08-25 2014-05-06 Netapp, Inc. Systems and methods for providing secure multicast intra-cluster communication
WO2013066928A2 (en) * 2011-10-31 2013-05-10 Advanced Biometric Controls, Llc Verification of authenticity and responsiveness of biometric evidence and/or other evidence
US9832023B2 (en) 2011-10-31 2017-11-28 Biobex, Llc Verification of authenticity and responsiveness of biometric evidence and/or other evidence
US9160536B2 (en) 2011-11-30 2015-10-13 Advanced Biometric Controls, Llc Verification of authenticity and responsiveness of biometric evidence and/or other evidence
FR2985127A1 (fr) * 2011-12-22 2013-06-28 France Telecom Procede d'authentification entre un lecteur et une etiquette radio
US9305172B2 (en) * 2013-03-15 2016-04-05 Mcafee, Inc. Multi-ring encryption approach to securing a payload using hardware modules
CN103473499A (zh) * 2013-09-16 2013-12-25 笔笔发信息技术(上海)有限公司 一种获取设备及其数据授权的方法
US9900287B1 (en) 2014-09-12 2018-02-20 Verily Life Sciences, LLC Transmitting sensitive information securely over unsecured networks without authentication
CN104394166B (zh) * 2014-12-04 2017-07-07 东北大学 一种云环境下面向移动终端的证书防伪认证系统及方法
CN105991563B (zh) * 2015-02-05 2020-07-03 阿里巴巴集团控股有限公司 一种保护敏感数据安全的方法、装置及三方服务系统
US9881176B2 (en) 2015-06-02 2018-01-30 ALTR Solutions, Inc. Fragmenting data for the purposes of persistent storage across multiple immutable data structures
US10476846B2 (en) * 2016-08-05 2019-11-12 The Boeing Company Data-at-rest (DAR) encryption for integrated storage media
US10219744B2 (en) * 2017-04-21 2019-03-05 Combobutronics Llc Systems and methods for applying or receiving signals to or from biological tissues
EP3674934A1 (en) * 2018-12-26 2020-07-01 Thales Dis France SA Biometric acquisition system and method
EP3683784A1 (en) * 2019-01-21 2020-07-22 Ngrave bvba Long-term offline management of cryptographic parameters
CN112685786A (zh) * 2021-01-27 2021-04-20 永辉云金科技有限公司 一种金融数据加密、解密方法、系统、设备及存储介质
CN113395269B (zh) * 2021-06-04 2023-02-17 上海浦东发展银行股份有限公司 一种数据交互方法、装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5369702A (en) * 1993-10-18 1994-11-29 Tecsec Incorporated Distributed cryptographic object method
US6885747B1 (en) * 1997-02-13 2005-04-26 Tec.Sec, Inc. Cryptographic key split combiner
US6185685B1 (en) * 1997-12-11 2001-02-06 International Business Machines Corporation Security method and system for persistent storage and communications on computer network systems and computer network systems employing the same
US7079653B2 (en) * 1998-02-13 2006-07-18 Tecsec, Inc. Cryptographic key split binding process and apparatus
US7130999B2 (en) * 2002-03-27 2006-10-31 Intel Corporation Using authentication certificates for authorization
AU2003298560A1 (en) * 2002-08-23 2004-05-04 Exit-Cube, Inc. Encrypting operating system

Also Published As

Publication number Publication date
WO2006115491A1 (en) 2006-11-02
US20080310619A1 (en) 2008-12-18
IL186876A0 (en) 2008-02-09
CN101204036A (zh) 2008-06-18
EP1889397A4 (en) 2010-03-17
EP1889397A1 (en) 2008-02-20

Similar Documents

Publication Publication Date Title
KR20110079660A (ko) 태그 데이터 요소의 암호화와 동작 제어 프로세스-1
US7111173B1 (en) Encryption process including a biometric unit
US5745573A (en) System and method for controlling access to a user secret
US20060282681A1 (en) Cryptographic configuration control
US6170058B1 (en) Method and apparatus for cryptographically camouflaged cryptographic key storage, certification and use
US8630421B2 (en) Cryptographic key backup and escrow system
US6745327B1 (en) Electronic certificate signature program
US5557346A (en) System and method for key escrow encryption
EP1374473B1 (en) Method and apparatus for secure cryptographic key generation, certification and use
JP7426031B2 (ja) 鍵セキュリティ管理システムおよび方法、媒体、ならびにコンピュータプログラム
US20070014399A1 (en) High assurance key management overlay
US20090097657A1 (en) Constructive Channel Key
US20020062451A1 (en) System and method of providing communication security
US20100005318A1 (en) Process for securing data in a storage unit
KR19990044692A (ko) 문서인증 시스템 및 방법
KR19990022451A (ko) 다단계 디지털 서명 방법 및 시스템
Ritzdorf et al. Toward shared ownership in the cloud
JP2023548572A (ja) ブロックチェーンに機密データを記憶すること
JP2022541919A (ja) バイオメトリックプロトコル標準に関するシステム及び方法
KR20080028198A (ko) 디지털 개인 정보의 안전한 관리 방법 및 그 시스템
CN110445756B (zh) 云存储中可搜索加密审计日志的实现方法
KR20080014795A (ko) 태그 데이터 요소의 암호화와 동작 제어 프로세스
Nazarko et al. OVERVIEW OF DATABASE INFORMATION PROTECTION APPROACHES IN MODERN DATABASE MANAGEMENT SYSTEMS
Ranganath Cloud Data Security through Hybrid Verification Technique Based on Cryptographic Hash Function
Nagpure et al. Data Leakage Agent Detection in Cloud Computing

Legal Events

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