KR20080014795A - Process of encryption and operational control of tagged data elements - Google Patents

Process of encryption and operational control of tagged data elements Download PDF

Info

Publication number
KR20080014795A
KR20080014795A KR1020077027520A KR20077027520A KR20080014795A KR 20080014795 A KR20080014795 A KR 20080014795A KR 1020077027520 A KR1020077027520 A KR 1020077027520A KR 20077027520 A KR20077027520 A KR 20077027520A KR 20080014795 A KR20080014795 A KR 20080014795A
Authority
KR
South Korea
Prior art keywords
encryption
key
split
data
encrypted
Prior art date
Application number
KR1020077027520A
Other languages
Korean (ko)
Inventor
에드워드 엠. 샤이트
제임스 엘. 콜로치
Original Assignee
텍섹 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 텍섹 인코포레이티드 filed Critical 텍섹 인코포레이티드
Priority to KR1020077027520A priority Critical patent/KR20080014795A/en
Publication of KR20080014795A publication Critical patent/KR20080014795A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Abstract

A process of encrypting an object having an associated object tag includes generating a cryptographic key by binding an organization split, a maintenance split, a random split, and at least one label split (710). A cryptographic algorithm is initialized with the cryptographic key, and the object is encrypted using the cryptographic algorithm (712) according to the object tag, to form an encrypted object. Combiner data is added to the encrypted object (711). The combiner data includes reference data, name data, a maintenance split or a maintenance level, and the random split (710). Alternatively, key splits are bound to generate a cryptographic key, and a cryptographic algorithm is initialized with the cryptographic key. The initialized cryptographic algorithm is applied to the object according to a cryptographic scheme determined by the object tag, to form an encrypted object. One of the key splits corresponds to a biometric measurement.

Description

태그 데이터 요소의 암호화와 동작 제어 프로세스{Process of Encryption and Operational Control of Tagged Data Elements}Process of Encryption and Operational Control of Tagged Data Elements

본 발명은 데이터의 보호와 정보 및 동작(operation)에 대한 물리적 또는 전자적인 접근을 제한하기 위한 방법에 관한 것이다.The present invention relates to a method for protecting data and restricting physical or electronic access to information and operations.

키(key)는 암호화 계획의 가장 중요한 부분이다. 그들의 관리는 임의의 암호 기반 보안의 중대한 요소이다. 키 관리의 진정한 유효성은 사용자의 상호 작용을 필요로 하지 않고 또한 시스템 성능이나 비용의 불리함 없이 키가 생성되고, 분배되어 유지될 수 있는 능력이다.The key is the most important part of the encryption plan. Their management is a critical element of any password based security. The true effectiveness of key management is the ability to generate, distribute, and maintain keys without requiring user interaction and without compromising system performance or cost.

또한 공용키(public key)라 불리는 비대칭의 암호작성법(cryptography)은 근년에 중대한 관심을 받고 있다. 공용키 방법은 공용키로부터 개인키(private key)를 추출하는 데 어려운 방법을 제공하는 분리된 공용 암호화키 및 개인 암호 해독키를 포함한다. 공용키 관리는 DES(Data Encryption Standard)와 같은 대칭 암호가 실행되도록 한 후 통신 채널에 2 점 사이의 암호화 접속가능성(connectivity)을 수립하도록 개발되었다. 수년에 걸쳐 공용키 구현물들은 엔티티(entities) 사이의 진정성을 입증하기 위한 유효성을 증명해왔다. 그러나, 공용키 방법은 오늘날의 국제적인 네트워크의 요구사항을 성공적으로 처리할 수 없었다.Asymmetric cryptography, also known as public keys, has received significant attention in recent years. Public key methods include separate public encryption keys and private decryption keys that provide a difficult way to extract private keys from a public key. Public key management was developed to allow symmetric cryptography, such as the Data Encryption Standard (DES), to be executed and then establish encryption connectivity between the two points on the communication channel. Over the years, public key implementations have proved their validity to prove authenticity between entities. However, the public key method could not successfully handle the requirements of today's international networks.

근래의 많은 공용키 구현물에서는 사용자가 그들 자신의 키를 생성할 수 있게 한다. 이러한 것들은 조직이 공격받기 쉬게 방치하여 몇몇 경우에는 만약 사용자가 남겨서 개인키를 식별하는 데 실패하는 경우 책임을 져야 한다. 또한, 공용키의 완전무결성을 보장하기 위하여 제3자 하부구조 디자인이 제안되었다. 인증기관(Certificate Authority) 프로세스는 어떤 공용키가 특정 사용자에 대해 발행된 것을 확인한다. 제3자에 대한 인증서의 교환은 네트워크의 성능에 중대한 충격(나쁜 영향)을 줄 수 있다.Many modern public key implementations allow users to generate their own keys. These are responsible for leaving the organization vulnerable and in some cases if the user fails to identify the private key left behind. In addition, a third-party infrastructure design has been proposed to ensure the integrity of the public key. The Certificate Authority process identifies which public key has been issued for a particular user. The exchange of certificates for third parties can have a significant impact on the performance of the network.

공용키 프로세스는 또한 높은 계산 시간과 연관되어 있다. 많은 경우에 하드웨어 솔루션은 이들 높은 계산 요구사항들을 보상하였다. 공용키 아키텍처는 역사적으로 포인트-투-포인트 설계이므로, 정보의 그룹 공유(group sharing)가 이루어지는 분산 네트워크로 이동하는 것은 더 높은 전송 비용과 더 큰 네트워크 충격이 발생할 수 있다. 공용키 관리 시스템은 포인트-투-포인트 통신 및 일대일 정보 전송에서 잘 동작하는 반면에 서버에 위치하며 수천 사용자에 의해 암호 해독되는 단일 파일에 대하여는 너무 많은 시간이 걸리고 있다. 작업 그룹들 및 복잡한 통신 하부조직들에 대한 경향이 계속되기 때문에 더 효과적인 정보 및 통신 키 관리기술에 대한 필요성이 매우 중요하게 되고 있다.Public key processes are also associated with high computational time. In many cases, hardware solutions have compensated for these high computational requirements. Since public key architectures are historically point-to-point designs, moving to a distributed network where group sharing of information takes place can result in higher transmission costs and greater network impact. Public key management systems work well in point-to-point communication and one-to-one information transfer, while taking too much time for a single file located on a server and decrypted by thousands of users. As the trend toward workgroups and complex communication subsystems continues, the need for more effective information and communication key management techniques becomes critical.

대칭 키 암호 시스템에 사용되는 공유 비밀키(secret key)는 가장 초기의 키관리 디자인이며 공용키 관리보다 앞서 있다. 초기 대칭 키 디자인은 요구되는 다수의 키가 매우 크고 다수의 사용자가 증가할 때 관리가 되지 않기 때문에 “n-공유” 문제를 안고 있었다. 또한, 이들 디자인은 효과적인 인증이 이루어지지 않았 다. 대칭 암호화는 공용키 구현물 보다 상당히 더 좋은 처리 성능을 나타내고 있다. The shared secret key used in symmetric key cryptosystems is the earliest key management design and precedes public key management. Early symmetric key designs suffered an "n-sharing" problem because the required number of keys was very large and unmanaged when the number of users increased. In addition, these designs have not been effectively certified. Symmetric encryption exhibits significantly better processing performance than public key implementations.

일반적으로, 암호화 시스템은 데이터의 전송 및/또는 저장 시에 정보의 승인되지 않은 개시를 방지하는 데 사용된다. 암호화 프로세스는 데이터의 조작을 포함하고 있어 그 결과 승인되지 않은 엔티티에 대하여 사실상 내용에 접근할 수 없는 판독 불가능한 것이다. 암호 해독 프로세스는 암호화된 데이터의 조작을 포함하여 데이터의 원래 예정된 조건을 다시 생성하거나 또는 원래 암호화되지 않은 데이터에 대응하는 판독 가능한 데이터로 암호화 데이터를 변형시킨다. 비밀은 암호화에 의해 제공되는 최고의 이점은 아니다. 암호화 프로세스는 적절한, 즉 공인된 절차가 따르지 않는 한 변형된 암호화된 데이터가 적절하게 암호 해독이 이루어지지 않기 때문에 데이터 완전성을 보장한다.In general, encryption systems are used to prevent unauthorized disclosure of information in the transmission and / or storage of data. The encryption process involves the manipulation of data, resulting in unreadable legitimate access to the content for unauthorized entities. The decryption process involves the manipulation of the encrypted data to recreate the original predetermined condition of the data or transform the encrypted data into readable data corresponding to the data that was not originally encrypted. Secrets are not the best advantage offered by encryption. The encryption process ensures data integrity because the modified encrypted data is not properly decrypted unless it is followed by an authorized procedure.

기업 세계는 단지 처리될 서류 하나에 의존하여 사용된다. 하드 카피 문서는 기업 통제를 제공하며, 법률상 논쟁을 진정시키는데 사용되었고, 세금 및 규제 당국, 내부 공인된 수령인 및 독립된 회계사에 의한 회계감사의 기초를 형성한다. 만은 경우에 이는 더 이상 사건이 아니다. 비즈니스가 전자적인 연산 및 회계 시스템으로 이동하기 때문에 많은 경우에 하드 카피 서류들이 존재하지 않거나 또는 거의 전자적인 기록에 부수적으로 발생한다. 이러한 하드 카피의 부족은 관리 능력에 영향을 미치며 다른 관심 있는 자가 기업 시스템을 관리하고 감사하게 한다.The corporate world is used only depending on the single document to be processed. Hard copy documents provide corporate control and have been used to calm legal disputes and form the basis of audits by tax and regulatory authorities, internally recognized recipients and independent accountants. If that is the case it is no longer the case. In many cases, hard copy papers do not exist or occur incidentally to electronic records as the business moves to electronic computing and accounting systems. This lack of hard copy affects management skills and allows other interested parties to manage and audit enterprise systems.

오리지널 종이 문서는 현재 전자 파일로 돌려질 수 없다는 확실성의 어느 정도 가정을 지니고 있다. 전자 세계에서 변화를 검출하는 것은 사실상 불가능하게 될 수 있다. 전자적인 데이터 교환을 하는 경우 기업은 컴퓨터, 컴퓨터 프로그램 및 전송 링크를 사용하여 자동적으로 고객 및 공급자와 거래를 한다. 이미지 처리 시스템을 사용하는 경우 서류들은 스캐닝되어 디지털 이미지로 변환된다. 오리지널 문서는 보관되지 않을 수 있다. 약간의 전자 정보는 단지 짧은 기간 동안 존재하며 만약 파일이 업데이트 되거나 백업 파일이 존재하지 않는 경우 회복될 수 없게 될 수 있다.Original paper documents have some assumptions about the certainty that they cannot currently be returned to electronic files. Detecting changes in the electronic world can become virtually impossible. In the case of electronic data exchange, companies use computers, computer programs and transmission links to automatically deal with customers and suppliers. When using an image processing system, documents are scanned and converted into digital images. Original documents may not be archived. Some electronic information exists for only a short period of time and may not be recoverable if the file is updated or there is no backup file.

일부의 기업들은 많은 정보 및 제어 시스템을 가지고 있다. 이러한 환경에서 시스템은 함께 작용하여 재산을 보호하고 신뢰성 있는 데이터 또는 그것의 보증을 제공하는 유형 및 무형 요소의 전체 조합이거나 또는 논리적인 부 파트(sub-part)이다. 시스템의 유형 부분은 제한되는 것을 아니나 종이 서류와 점(marking) 및 그에 대한 서명 뿐 아니라 재산을 보호하는 데 사용된 물리적인 처리와 절차를 포함한다. 무형의 시스템은 명령과 조직을 비즈니스 처리에 제공하는 정책과 절차를 포함한다. Some companies have many information and control systems. In such an environment, the system is a whole combination of tangible and intangible elements or logical sub-parts that work together to protect property and provide reliable data or assurance thereof. The type portion of the system includes, but is not limited to, paper documents and markings and signatures, as well as the physical processes and procedures used to protect the property. Intangible systems include policies and procedures that provide command and organization to business processing.

관리 및 다른 관심 있는 자는 정책, 절차 및 명령이 적시에 충분한 정도로 실행되는 지를 판단하여야 한다. 정보 및 제어 시스템은 이러한 것을 보증한다. 공인된 수신인은 정보 및 제어 시스템을 관찰하여 만약 각자의 디자인이 정해진 목적물을 만나는 지를 판단한다. 그들은 또한 모든 적절한 시스템의 상승효과를 관찰하여 그들 전체적인 효과를 판단한다. 만약 모든 시스템 디자인의 합이 정해진 목적물을 생산하는 데 효과적인 것으로 간주되는 경우 공인된 수신인은 그 후 이들 시스템을 테스트하여 시스템이 실제로 존재하여 관리자가 상상하는 것과 같은 기능을 수행하고 있는 지를 시험한다.Management and other interested parties should determine whether policies, procedures and orders are executed in a timely and sufficient manner. The information and control system guarantees this. Authorized recipients observe the information and control system to determine if their design meets a given object. They also observe the synergies of all appropriate systems to judge their overall effectiveness. If the sum of all system designs is deemed effective to produce a given object, then the authorized recipients will then test these systems to see if they actually exist and perform the same functions that the manager imagines.

포함된 많은 정보량에 기초하여 기업 활동을 관찰하는 공인된 수신인 및 다른 사람은 기업에서 생산된 모든 데이터와 활동을 직접적으로 조사할 수 없다. 그들은 기업의 전체적인 복지(well-being)의 신뢰성 있는 지시를 제공하도록 그들이 직접적으로 조사할 수 있는 활동과 데이터를 평가하기 위한 테스트를 강구하여야 한다. 이들 테스트의 성질, 타이밍 및 범위는 전문적인 판단에 기반을 두고 있다. 테스트는 정해진 제어 요소가 존재하며 의도하는 것과 같이 기능을 하고 있는 지를 검증하는 데 필요한 단계를 포함하고 있다. 테스트는 또한 통계적인 기초에 의해 운영상의 보증이 이루어지도록 특정 거래를 조사하는 것을 포함한다.Authorized recipients and others who observe corporate activities based on the large amount of information included may not directly investigate all data and activities produced by the enterprise. They should take tests to evaluate the activities and data they can investigate directly to provide reliable indications of the company's overall well-being. The nature, timing, and scope of these tests are based on professional judgment. Tests include the steps necessary to verify that a given control element exists and is functioning as intended. Testing also includes investigating specific transactions to ensure operational assurance on a statistical basis.

통제와 거래의 테스트는 기업 내 뿐 아니라 외부의 엔티티에 의해 생성되는 서류의 조사를 포함할 수 있다. 대차계정, 활동, 계약 등의 확인과 같은 일부의 감사 목적물에 대하여는 기업과 독립된 관계인으로부터 증거는 얻어질 것이다. 공인된 수신인의 목표는 물질적인 실언 또는 시스템 제어 결함을 발견하지 못하는 위험을 받아들 수 있는 레벨로 감소시키는 것이다. 만약 공인된 수신인이 받아들 수 있는 레벨로 검출 위험을 감소시킬 수 없는 경우 부적당한 의견을 포기하는 것은 불가능하게 될 수 있다.Testing of controls and transactions may involve the inspection of documents generated by entities both inside and outside the enterprise. For some audit objectives, such as the verification of balance accounts, activities, contracts, etc., evidence may be obtained from persons independent of the entity. The goal of an authorized recipient is to reduce the risk of not finding material speech or system control defects to an acceptable level. If the detection risk cannot be reduced to an acceptable level by an authorized recipient, it may not be possible to abandon the inappropriate opinion.

더 많은 비즈니스에 전자 시스템을 채용하여 판매자 및 고객과 전자적으로 교류를 하기 때문에 통제와 거래를 신뢰성 있게 감사하는 능력은 중대한 반대의 통제 및 감사 결과가 보통이라고 말해도 좋을 정도까지 아마도 몇몇 경우에는 크게 감소된다.As more businesses employ electronic systems to interact electronically with sellers and customers, the ability to reliably audit controls and transactions is probably significantly reduced in some cases to the point that significant adverse control and audit results are normal. .

[기술적 과제][Technical Challenges]

본 발명의 프로세스는 공용키와 대칭키 구현물의 이점에 의지하며 단점을 고려하고 있다. 이 프로세스는 분할키(spilt-key) 능력에 기초한 암호화 프로세스를 공용키 기술에 기초한 액세스 제어 자격증명 및 인증 프로세스와 결합시킨다. 프로세스는 정보 흐름 및 통제가 한정될 수 있고, 암호화된 정보가 회복되어야할 필요가 있으며, 공용키 기술과 물리적인 토큰(token)을 사용하는 인증이 구현되는 경우 근대 분배 정보 모델에서 매우 효과적이다.The process of the present invention relies on the advantages of public and symmetric key implementations and takes into account the disadvantages. This process combines an encryption process based on split-key capabilities with an access control credentials and authentication process based on public key technology. The process can be limited in information flow and control, encrypted information needs to be recovered, and is very effective in the modern distributed information model when authentication using public key technology and physical tokens is implemented.

이 프로세스는 이동 중 데이터(data-in-transit)와 반대인 미사용 데이터(data-at-rest)의 암호화를 강조한다. 미사용 데이터는 논리 유닛(목적물)으로서 암호화된 데이터를 말하며 목적물(object)의 생성, 처리, 전송 및 저장을 포함한다. 이동 중 데이터는 어떤 시간동안 물리적 또는 논리적 통신 채널을 통하여 이동하는 데이터의 스트림 암호화를 말한다. 본 발명의 프로세스는 양 타입의 암호화 모두를 수행할 수 있으나, 쉽게 설명하기 위해 미사용 데이터 능력을 강조할 것이다.This process emphasizes the encryption of data-at-rest as opposed to data-in-transit. Unused data refers to encrypted data as logical units (objects) and includes the creation, processing, transmission and storage of objects. Data in transit refers to the stream encryption of data traveling over a physical or logical communication channel for some time. The process of the present invention can perform both types of encryption, but will highlight the unused data capabilities for ease of explanation.

[기술적 해결방법][Technical Solution]

본 발명은 필요할 때 암호화 키(cryptographic key)를 형성하기 위해 미리 위치 설정된 키 스플리트를 사용하는 암호화 키 관리 시스템을 이용한다. 그 구조는 오늘날의 대형 분산 네트워크에 완전한 암호 시스템을 제공한다. 본 발명의 키 관리 시스템은 하기와 같이 한 세트의 전통적인 보안 목적물(objective)을 만날 것이다.The present invention utilizes an encryption key management system that uses a pre-positioned key split to form a cryptographic key when needed. The architecture provides a complete cryptographic system for today's large distributed networks. The key management system of the present invention will encounter a set of traditional security objectives as follows.

데이터 기밀은 정보의 내용이 그것을 읽도록 승인되지 않은 사람에게 누설되지 않도록 하는 것이다. 본 발명은 각 암호화에 새롭고 독특한 작동키(working key)를 제공하는 강건한 키 관리 시스템을 갖는 대칭 키 암호화를 사용한다. 사용자는 리더쉽(readership)을 “선택”하거나 또는 각 암호화된 목적물에 대하여 정의된 리더쉽을 갖는다. 목적물은 파일, 메시지와 같은 비사용 데이터 또는 네트웍 트래픽과 같은 이동 중 데이터일 수 있다.Data confidentiality ensures that the content of information is not leaked to anyone who is not authorized to read it. The present invention uses symmetric key encryption with a robust key management system that provides a new and unique working key for each encryption. The user “chooses” leadership or has a defined leadership for each encrypted object. The destination may be unused data such as files, messages or data in motion, such as network traffic.

액세스 제어는 그들을 사용할 특별한 허가가 주어진 사용자에 대하여 암호화된 목적물의 사용을 제한한다. 본 발명에 따른 액세스 제어는 역할-기반으로 될 수 있으며, 조직 내의 위치 또는 사용자의 의무에 기초하여 허가가 승인되고 취소된다. 그것은 현재 암호화 및 암호해독의 작용을 포함하고 있으나, 어떤 프로그램, 어떤 장치 또는 특정 하드웨어 동작 모드를 사용하는 허가를 포함할 수 있다. 액세스 제어는 또한 데이터베이스 응용으로 확장될 수 있다.Access control restricts the use of encrypted objects for users given special permission to use them. Access control in accordance with the present invention may be role-based and permission is granted and revoked based on the obligations of the user or location within the organization. It currently includes the operation of encryption and decryption, but may include permission to use any program, any device or specific hardware mode of operation. Access control can also be extended to database applications.

사용자 인증은 시스템에 대한 사용자(사람 또는 장치)의 신원을 확인한다. 사용자 인증은 이하에 논의되는 다른 향상이 본 발명의 시스템과 프로세스에 적용될 때 더 강하게 된다.User authentication verifies the identity of a user (person or device) to the system. User authentication becomes stronger when other improvements discussed below are applied to the systems and processes of the present invention.

스마트 카드 및 생체 측정은 본 발명에 사용자 인증의 목적물을 만나는 경우에 더 큰 보안을 제공한다. 토큰으로 사용될 때 더 강한 사용자 인증을 제공할 뿐 아니라 스마트 카드는 현저한 하드웨어 플랫폼이 될 수 있으며 다양한 레벨의 키 관리 기술을 구현한다. 카드는 메모리-온리 장치로서 사용될 수 있으며, 능력을 처리하는 것을 포함하도록 확장될 수 있다. 슈퍼 카드(SuperCardTM)로 불리는 진보된 스마트 카드는 본 발명에 대한 합법화 기술이다. 증가된 처리와 메모리와 함께 슈퍼 카드는 독특한 무선 주파수 신호와 난수 발생 능력을 포함한다. 이러한 카드는 예를 들어, 미합중국 특허 제6,229,445호에 설명되어 있다.Smart cards and biometrics provide the present invention with greater security when meeting the object of user authentication. In addition to providing stronger user authentication when used as a token, smart cards can be a prominent hardware platform and implement various levels of key management technology. The card can be used as a memory-only device and can be extended to include handling capabilities. An advanced smart card called SuperCard is the legalization technology for the present invention. Along with increased processing and memory, the supercard includes unique radio frequency signals and random number generation capabilities. Such cards are described, for example, in US Pat. No. 6,229,445.

프로세스에 생체 측정을 부가하면 사용자 인증이 향상되며 시스템이 디지털 서명을 사용하는 비대칭 키 암호화 시스템에 개인키 부분을 발생하기 위한 정보를 제공할 수 있다.Adding biometrics to the process improves user authentication and allows the system to provide information for generating the private key portion to an asymmetric key encryption system using digital signatures.

부가적인 목적물을 만나는 것은 설명된 프로세스에 고유한 것을 의미한다. 예를 들어, 데이터 분할은 동일한 물리적인 공간에서 데이터가 아직 강제적으로 액세스 제어가 이루어지는 능력이다. 2개의 알고리즘에 의한 분리와 라벨에 의한 분리의 암호화 수단이 본 발명에 사용된다. 키 회복은 목적물을 암호화하는데 사용된 키를 재발행하는 능력이다. 키 회복은 임의의 특정 도메인(또는 조직) 내에 암호화된 목적물이 어떤 개인의 손실과 함께 잃는 것을 의미한다. 수출을 위한 키 회복은 역시 가능하다.Meeting additional objects means unique to the process described. For example, data partitioning is the ability of data to be forcibly accessed in the same physical space. Encryption means for separation by two algorithms and separation by label are used in the present invention. Key recovery is the ability to reissue the key used to encrypt the object. Key recovery means that objects encrypted within any particular domain (or organization) are lost with the loss of any individual. Key recovery for export is possible too.

본 발명에 따라 디지털 서명에 사용된 비대칭 키 암호화는 메시지 인증과 관련된 부가적인 보안 목적물을 만나는 수단을 제안한다. 데이터 원천 인증(때때로 메시지 인증으로 불린다)은 본 발명의 프로세스에 의해 암호화된 정보의 소스를 보강한다. 데이터 무결성(integrity)은 암호화된 목적물이 암호화되고 디지털 서명되기 때문에 변동이 이루어지지 않은 것을 입증하는 능력이다. 만약 디지털 서명이 사용되지 않는 경우 암호화 처리된 메시지 인증 코드(Message Authentication Code: MAC) 또는 조작 검출 코드(Manipulation Detection Code: MDC)는 데이터 무결성을 제공한다. 부인봉쇄(non-repudiation)는 사인된 목적물에 대한 서명이 서명자로부터 왔다는 것을 증명하는 것으로, 서명자가 목적물을 전자적으로 서명하였다는 것을 부인할 수 없는 것이다.Asymmetric key cryptography used for digital signatures in accordance with the present invention proposes a means of meeting additional security objectives associated with message authentication. Data source authentication (sometimes called message authentication) augments the source of information encrypted by the process of the present invention. Data integrity is the ability to prove that no change occurs because the encrypted object is encrypted and digitally signed. If digital signatures are not used, the encrypted Message Authentication Code (MAC) or Manipulation Detection Code (MDC) provides data integrity. Non-repudiation is proof that the signature on a signed object comes from the signer, and cannot be denied that the signer electronically signed the object.

따라서, 암호화 및 암호화된 목적물은 전자적 회계 및 작동 시스템의 입력, 프로세스, 예정된 조건(scheduled condition) 및 가상 환경을 기록 및 인증하는데 사용될 수 있고, 이들 암호화된 목적물을 지정된 개인 또는 엔티티에 의한 액세스를 위해 지정된 장소에 분배하는 수단을 제공하는데 사용될 수 있다.Thus, encrypted and encrypted objects can be used to record and authenticate input, processes, scheduled conditions and virtual environments of electronic accounting and operating systems, and access these encrypted objects for access by designated individuals or entities. It can be used to provide a means for dispensing to a designated location.

이러한 관계에 있어서의 입력은 제어 또는 회계 시스템에 대한 어떤 영향을 주는 어떤 개인 행위(action) 또는 행위의 합이 될 수 있다. 이러한 관계에 있어서의 출력은 제어 또는 회계 시스템의 어떤 프로세스 또는 행위의 결과일 수 있다. 이들 행위는 첫 번째 전자적으로 기록된 행위로서 사람에 의해 직접적으로 입력된 사실상의 트랜잭션(transaction)일 수 있고, 또한 시스템 내에서의 계산의 결과일 수 있거나 또는 다른 시스템에 의해 시스템에 귀속될 수 있다. The input in this relationship can be any individual action or sum of actions that have some effect on the control or accounting system. The output in this relationship can be the result of any process or action of the control or accounting system. These actions may be de facto transactions entered directly by a person as the first electronically recorded action, and may also be the result of calculations within the system or may be attributed to the system by another system. .

본 발명의 일 양상에 따르면, 데이터 포맷과 일치하며 연관된 목적물 태그를 갖는 목적물을 암호화하는 프로세스는 다수의 키 스플리트를 결합하여 암호화키를 발생하는 단계를 포함한다. 암호화 알고리즘은 암호화키를 가지고 초기화된다. 초기화된 암호화 알고리즘은 목적물 태그에 의해 적어도 일부가 결정된 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부에 적용하여 암호화된 목적물을 형성한다. 다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부에 대응한다.According to one aspect of the present invention, the process of encrypting an object that matches a data format and has an associated object tag includes combining a plurality of key splits to generate an encryption key. The encryption algorithm is initialized with the encryption key. The initialized encryption algorithm is applied to at least a portion of the object according to at least one encryption scheme determined at least in part by the object tag to form an encrypted object. At least one of the plurality of key splits corresponds to at least a portion of the biometric.

의도된 수신자에 의해 후속된 사용을 위해 암호화된 목적물이 저장된다.The encrypted object is stored for subsequent use by the intended recipient.

목적물이 다수의 목적물로부터 선택될 수 있으며 적어도 일부가 연관된 목적물 태그에 따른다. The object may be selected from a number of objects, at least in part depending on the associated object tag.

상기 목적물은 예를 들어, 확장성 생성 언어(XML) 요소일 수 있다.The object may be, for example, an Extensible Generation Language (XML) element.

다수의 키 스플리트의 적어도 하나의 키 스플리트가 암호화된 목적물에 부가될 수 있다. 유사하게 다수의 키 스플리트의 적어도 하나의 키 스플리트와 연관된 기준 데이터가 암호화된 목적물에 부가될 수 있다.At least one key split of multiple key splits may be added to an encrypted object. Similarly, reference data associated with at least one key split of multiple key splits may be added to the encrypted object.

다수의 키 스플리트의 적어도 하나의 키 스플리트가 저장 매체로부터 검색될 수 있다. 예를 들어, 저장 매체는 스마트 카드에 배치될 수 있다. 유사하게 암호화키를 생성하기 위하여 다수의 키 스플리트를 묶는 작용이 스마트 카드에서 수행될 수 있다.At least one key split of the plurality of key splits may be retrieved from the storage medium. For example, the storage medium may be located in a smart card. Similarly, the act of binding multiple key splits to generate an encryption key may be performed in a smart card.

본 발명의 다른 양상에 따르면, 조직과 연관된 암호화 시스템에서 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 암호화하는 프로세스에 있어서, 조직에 대응하는 조직 스플리트, 유지 스플리트, 랜덤 스플리트 및 적어도 하나의 라벨 스플리트를 묶어서 암호화키를 발생하는 단계를 포함한다. 암호화 알고리즘이 암호화키를 가지고 초기화된다. 목적물의 적어도 일부가 목적물 태그에 의해 적어도 일부가 결정된 초기화된 암호화 알고리즘에 따라 암호화되며 암호화된 목적물을 형성한다.According to another aspect of the present invention there is provided a process for encrypting an object in a cryptographic system associated with an organization that matches a data format and has an object tag associated therewith, the tissue split corresponding to the organization, a maintenance split, a random split and Binding at least one label split to generate an encryption key. The encryption algorithm is initialized with the encryption key. At least a portion of the object is encrypted according to an initialized encryption algorithm determined at least in part by the object tag and forms an encrypted object.

결합기 데이터가 암호화된 목적물에 부가된다.Joiner data is added to the encrypted object.

상기 결합기 데이터는 적어도 하나의 라벨 스플리트와 암호화 알고리즘 중 적어도 하나에 대응하는 기준 데이터, 조직과 연관된 이름 데이터, 적어도 하나의 유지 스플리트 및 유지 스플리트와 연관된 유지 레벨, 및 랜덤 스플리트를 포함한다. 암호화된 목적물은 의도된 수신자에 의한 후속된 사용을 위해 부가된 결합기 데이터와 함께 저장된다.The combiner data includes reference data corresponding to at least one of at least one label split and an encryption algorithm, name data associated with an organization, at least one maintenance split and a maintenance level associated with the maintenance split, and a random split. . The encrypted object is stored with added combiner data for subsequent use by the intended recipient.

목적물이 다수의 목적물로부터 선택되며, 적어도 일부가 연관된 목적물 태그에 따른다.The object is selected from a plurality of objects, at least in part depending on the associated object tag.

상기 목적물은 예를 들어, 확장성 생성 언어(XML) 요소일 수 있다.The object may be, for example, an Extensible Generation Language (XML) element.

적어도 하나의 라벨 스플리트가 적어도 하나의 증명서로부터 선택될 수 있다. 이 경우 선택된 적어도 하나의 라벨 스플리트는 암호화되며, 암호화키는 제1암호화키이며, 프로세스는 사용자와 연관된 사용자 ID, 사용자와 연관된 패스워드, 및 독특한 데이터 예 중 적어도 하나 및 랜덤 값으로부터 제2암호화키를 추출하는 단계를 포함한다. 선택된 적어도 하나의 라벨 스플리트가 제2암호화키를 사용하여 암호 해독된다. 적어도 하나의 증명서가 메모리로부터 검색될 수 있다. 예를 들어, 메모리는 스마트 카드에 배치될 수 있다. 시간 스탬프가 목적물이 암호화된 시점과 대응하여 발생되며, 결합기 데이터는 더욱이 시간 스탬프를 포함할 수 있다. 결합기 데이터는 또한 사용자와 연관된 사용자 ID를 포함할 수 있다.At least one label split may be selected from at least one certificate. In this case the selected at least one label split is encrypted, the encryption key is a first encryption key, and the process is a second encryption key from at least one of a user ID associated with the user, a password associated with the user, and a unique data example and a random value. Extracting the step. At least one label split selected is decrypted using the second encryption key. At least one credential may be retrieved from the memory. For example, the memory may be located in a smart card. A time stamp is generated corresponding to when the object was encrypted, and the combiner data may further include a time stamp. The combiner data may also include a user ID associated with the user.

결합기 데이터는 헤더 기록일 수 있다.The combiner data may be a header record.

결합기 데이터는 또한 디지털 서명과 디지털 인증서를 포함할 수 있다.The combiner data may also include a digital signature and a digital certificate.

암호화키는 제1암호화키이며, 프로세스는 또한 적어도 하나의 라벨 스플리트에 적어도 부분적으로 기초하여 제2암호화키를 발생하는 단계를 포함한다. 랜덤 키는 암호화 목적물에 결합기 데이터를 결합하기 전에 제2암호화키를 사용하여 암호화될 수 있다.The encryption key is a first encryption key, and the process also includes generating a second encryption key based at least in part on the at least one label split. The random key may be encrypted using a second encryption key prior to combining the combiner data with the encryption object.

결합기 데이터의 적어도 일부가 암호화 목적물에 결합기 데이터를 부가하기 전에 헤더 스플리트를 사용하여 암호화될 수 있다. 상기 헤더 스플리트는 일정하다.At least a portion of the combiner data may be encrypted using the header split before adding the combiner data to the encryption object. The header split is constant.

본 발명의 다른 양상에 따르면, 저장 매체는 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 데이터 프로세서가 암호화하는 명령을 포함한다. 상기 명령은 다수의 키 스플리트를 묶어서 암호화키를 발생하며; 암호화키를 가지고 암호화 알고리즘을 초기화하고; 그리고 목적물 태그에 의해 적어도 일부가 결정된 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부에 초기화된 암호화 알고리즘을 적용하여 암호화된 목적물을 형성하는 것을 포함한다. 다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부에 대응한다.According to another aspect of the present invention, a storage medium includes instructions for a data processor to encrypt an object that matches a data format and has an object tag associated therewith. The command binds a plurality of key splits to generate an encryption key; Initialize an encryption algorithm with an encryption key; And forming an encrypted object by applying an encryption algorithm initialized to at least a portion of the object according to at least one encryption scheme determined at least in part by the object tag. At least one of the plurality of key splits corresponds to at least a portion of the biometric.

상기 명령은 다수의 목적물로부터 목적물을 선택하는 것을 더 포함할 수 있으며, 적어도 일부가 연관된 목적물 태그에 따른다.The command may further comprise selecting an object from the plurality of objects, at least in part depending on the associated object tag.

상기 목적물은 확장성 생성 언어(XML) 요소일 수 있다.The object may be an Extensible Generation Language (XML) element.

상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트를 암호화된 목적물에 부가하는 것을 또한 포함할 수 있다.The instructions may also include adding at least one key split of the plurality of key splits to the encrypted object.

상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트와 연관된 기준 데이터를 암호화된 목적물에 부가하는 것을 더 포함할 수 있다.The instructions may further include adding reference data associated with at least one key split of the plurality of key splits to the encrypted object.

상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트를 저장 매체로부터 검색하는 것을 더 포함할 수 있다. 예를 들어, 메모리의 적어도 일부는 스마트 카드에 배치될 수 있다.The instructions may further include retrieving at least one key split of the plurality of key splits from the storage medium. For example, at least a portion of the memory may be located in the smart card.

상기 데이터 프로세서가 분배되고 암호화키를 발생하는 명령이 스마트 카드의 적어도 일부에서 실행될 수 있다.The data processor may be distributed and instructions to generate an encryption key may be executed on at least part of the smart card.

본 발명의 다른 양상에 따르면, 저장 매체는 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 데이터 프로세서가 암호화하는 명령을 포함한다. 상기 명령은 조직에 대응하는 조직 스플리트, 유지 스플리트, 랜덤 스플리트 및 적어도 하나의 라벨 스플리트를 묶어서 암호화키를 발생하며; 암호화키를 가지고 암호화 알고리즘을 초기화하고; 목적물 태그에 의해 적어도 일부가 결정된 초기화된 암호화 알고리즘에 따라 목적물의 적어도 일부를 암호화하여 암호화된 목적물을 형성하며; 그리고 암호화된 목적물에 결합기 데이터를 부가하고; 암호화된 목적물을 후속된 액세스를 위해 결합기 데이터와 함께 저장하는 것을 포함한다. 상기 결합기 데이터는 적어도 하나의 라벨 스플리트와 암호화 알고리즘 중 적어도 하나에 대응하는 기준 데이터, 조직과 연관된 이름 데이터, 적어도 하나의 유지 스플리트 및 유지 스플리트에 대응하는 유지 레벨, 및 랜덤 스플리트를 포함한다.According to another aspect of the present invention, a storage medium includes instructions for a data processor to encrypt an object that matches a data format and has an object tag associated therewith. The command binds a tissue split, a maintenance split, a random split, and at least one label split corresponding to the tissue to generate an encryption key; Initialize an encryption algorithm with an encryption key; Encrypting at least a portion of the object according to an initialized encryption algorithm determined at least in part by the object tag to form an encrypted object; And add combiner data to the encrypted object; Storing the encrypted object with combiner data for subsequent access. The combiner data includes reference data corresponding to at least one of at least one label split and an encryption algorithm, name data associated with an organization, a retention level corresponding to at least one maintenance split, and a maintenance split, and a random split. do.

상기 명령은 다수의 목적물로부터 목적물을 선택하는 것을 더 포함하며, 적어도 일부가 연관된 목적물 태그에 따른다.The command further includes selecting a destination from the plurality of destinations, at least in part depending on the associated destination tag.

상기 목적물은 확장성 생성 언어(XML) 요소이다.The object is an Extensible Generation Language (XML) element.

상기 명령은 적어도 하나의 증명서로부터 적어도 하나의 라벨 스플리트를 선택하는 것을 더 포함할 수 있다. 이 경우, 선택된 적어도 하나의 라벨 스플리트는 암호화되며, 암호화키는 제1암호화키이며, 상기 명령은 또한 사용자와 연관된 사용자 ID, 사용자와 연관된 패스워드, 및 독특한 데이터 예 중 적어도 하나 및 랜덤 값으로부터 제2암호화키를 추출하며, 그리고 제2암호화키를 사용하여 선택된 적어도 하나의 라벨 스플리트를 암호 해독하는 것을 포함할 수 있다.The command may further comprise selecting at least one label split from the at least one certificate. In this case, the at least one selected label split is encrypted, the encryption key is a first encryption key, and the command is further derived from at least one of a user ID associated with the user, a password associated with the user, and a unique data example and a random value. Extracting the encryption key, and decrypting the selected at least one label split using the second encryption key.

상기 명령은 메모리로부터 적어도 하나의 증명서를 검색하는 것을 또한 포함할 수 있다. 예를 들어, 메모리는 스마트 카드에 배치될 수 있다. 상기 명령은 또한 목적물이 암호화된 시점과 대응하는 시간 스탬프를 발생하며, 결합기 데이터는 시간 스탬프를 포함할 수 있다. 결합기 데이터는 또한 사용자와 연관된 사용자 ID를 포함한다.The command may also include retrieving at least one credential from the memory. For example, the memory may be located in a smart card. The command also generates a time stamp that corresponds to when the object was encrypted, and the combiner data may include a time stamp. The combiner data also includes a user ID associated with the user.

결합기 데이터는 헤더 기록일 수 있다.The combiner data may be a header record.

결합기 데이터는 디지털 서명 또는 디지털 인증서 또는 양자를 포함할 수 있다.The combiner data may comprise a digital signature or a digital certificate or both.

암호화키는 제1암호화키일 수 있으며, 상기 명령은 또한 적어도 하나의 라벨 스플리트에 적어도 부분적으로 기초하여 제2암호화키를 발생하며; 그리고 암호화 목적물에 결합기 데이터를 결합하기 전에 제2암호화키를 사용하여 랜덤 키를 암호화하는 것을 포함한다. 결합기 데이터에 포함된 랜덤 스플리트는 암호화된 랜덤 스플리트일 수 있다.The encryption key may be a first encryption key, the command also generating a second encryption key based at least in part on the at least one label split; And encrypting the random key using the second encryption key prior to combining the combiner data with the encryption object. The random split included in the combiner data may be an encrypted random split.

상기 명령은 암호화 목적물에 결합기 데이터를 부가하기 전에 헤더 스플리트를 사용하여 결합기 데이터의 적어도 일부를 암호화하는 것을 포함할 수 있다. 헤더 스플리트는 일정할 수 있다.The instructions may include encrypting at least a portion of the combiner data using the header split before adding the combiner data to the encryption object. The header split may be constant.

도 1은 본 발명의 예시적인 프로세스를 보여주는 블록도이다.1 is a block diagram illustrating an exemplary process of the present invention.

도 2는 본 발명의 예시적인 프로세스를 보여주는 블록도이다.2 is a block diagram illustrating an exemplary process of the present invention.

도 3은 프로세스의 무결성(integrity)을 검사하기 위한 도구로서 암호화를 사용하는 시스템의 흐름도이다.3 is a flow diagram of a system using encryption as a tool for checking the integrity of a process.

도 4는 출력 문맥에 사용된 암호화를 보여주는 흐름도이다.4 is a flow chart showing encryption used in the output context.

도 5는 선택된 프로세스에 의해 입력으로서 프로세스에 제공된 요소가 조작되는 프로세스를 보여준다.5 shows a process in which elements provided to the process as input by the selected process are manipulated.

도 6은 예정된 조건이 시스템에서 어떻게 표본 추출되는 지를 보여준다.6 shows how the predetermined condition is sampled in the system.

도 7은 암호화된 목적물 내에 수집되어 매입된 가상 환경 데이터를 보여준다.7 shows virtual environment data collected and embedded in an encrypted object.

도 8은 SAOCRS에서 입력 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다.8 is a flow diagram illustrating the use of XML to identify, copy, and encrypt input objects in SAOCRS.

도 9는 SAOCRS에서 복사된 출력 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다.9 is a flowchart showing the use of XML to identify, copy, and encrypt the output destination copied from SAOCRS.

도 10은 전체적으로 예정된 조건 검사를 제공하는 SAOCRS에서 복사된 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다.FIG. 10 is a flow diagram illustrating the use of XML to identify, copy, and encrypt a copied object in SAOCRS providing an overall conditional check.

기본 디자인은 목적물의 암호화와 암호 해독 및 키의 분배에 요구되는 기능에 초점이 맞추어져 있다. 고성능 대칭 키 암호화 알고리즘 및 키 관리의 특허된 방법이 이 레벨에 사용된다. 인증에 초점을 맞춘 다른 레벨은 스마트 카드와 생체 측정을 이용하여 강한 엔티티 인증을 생성하며 메시지 인증을 위한 디지털 서명을 사용한다. 인증과 암호화 프로세스를 내부적으로 보호하는 탐지 기술의 혼합을 부가하는 제3레벨은 환경이 더 높은 보안을 요구할 때 부가된다.The basic design focuses on the functions required for encryption and decryption of targets and distribution of keys. High performance symmetric key encryption algorithms and patented methods of key management are used at this level. Another level focused on authentication uses smart cards and biometrics to generate strong entity authentication and uses digital signatures for message authentication. The third level, which adds a mix of detection techniques that protect the authentication and encryption processes internally, is added when the environment requires higher security.

기술 개요Technical overview

본 발명은 암호화키를 생성하고 재생성하며 조직 내에서 이들 키를 관리하기 위한 기술을 제공한다. 암호화 작동 키는 목적물이 암호화되거나 또는 암호 해독되기 바로 전에 생성된다. 이는 암호화 또는 암호 해독을 위한 암호화 알고리즘을 초기화하는 데 사용된다. 작동 키는 사용 후 버려진다. The present invention provides techniques for generating and regenerating encryption keys and managing these keys within an organization. The encryption operational key is generated just before the object is encrypted or decrypted. It is used to initialize the encryption algorithm for encryption or decryption. The operation key is discarded after use.

작동 키는 많은 조각들의 정보로부터 형성된다. 시스템에 참가인이 되기 위하여 사용자는 키를 형성하기는 데 필요한 조각들을 가지고 있어야 한다: 그렇지 않으면 암호화 및 암호 해독은 발생될 수 없다. 중앙 당국은 암호화 키 스플리트로 불리는 이들 조각들을 생성한다. 이들 스플리트의 서브셋(부분집합)은 조직의 각 사용자에게 분배된다. 각 사용자가 수신한 서브셋은 그 사람에 대하여 특정한 것이고 개인이 암호화(기록 허가로 알려진)하는데 사용할 수 있는 라벨 및 개인이 암호 해독(판독 허가로 알려진)하는데 사용할 수 있는 라벨을 정의한다. 몇몇 사용자 인증 기술이 사용자가 이 정보에 액세스가 허용되기 전에 시스템에 대한 사용자를 검증하는 데 사용된다.The actuation key is formed from many pieces of information. To be a participant in the system, a user must have the pieces necessary to form a key: otherwise encryption and decryption cannot occur. The central authority produces these pieces called cryptographic key splits. A subset of these splits is distributed to each user in the organization. The subset received by each user is specific to that person and defines a label that an individual can use to encrypt (known as a record permission) and a label that an individual can use to decrypt (known as a read permission). Several user authentication techniques are used to verify the user to the system before the user is allowed to access this information.

키를 형성하기 위하여, 조직 스플리트라고 불리는 불변 시스템 와이드-스플리트와 유지 스플리트라고 불리는 가변 시스템 와이드 스플리트가 사용된다. 이것에 랜덤 스플리트라고 불리는 난수(random number)와 사용자 선택 라벨 스플리트가 부가된다. 랜덤 스플리트는 유일한 작동 키가 각자의 사용마다 생성되는 것을 보장한다. 사용자 선택 라벨 스플리트는 암호화된 목적물의 “리더쉽(readership)", 즉 사용자가 목적물을 암호 해독할 수 있는 것을 정의한다. 모든 이들 스플리트는 결합기(combiner) 프로세스로 알려진 프로세스에 입력된다. 결합기 프로세스의 출력은 세션 키(session key)에 대한 기초로서 사용되는 유일한 수(unique number)이다.To form a key, a constant system wide-split called a tissue split and a variable system wide split called a maintenance split are used. To this is added a random number called a random split and a user-selected label split. The random split ensures that a unique activation key is generated for each use. The user-selected label split defines the “readership” of the encrypted object, ie the user can decrypt the object. All these splits are entered into a process known as a combiner process. The output of is the unique number used as the basis for the session key.

본 발명은 계층적인 인프라스트럭처를 사용하여 암호화키를 구성하기 위한 소프트웨어에 필요한 정보의 분배를 관리한다. 이 인프라스트럭처는 또한 디지털 서명이 사용될 수 있도록 비대칭 키 암호화를 위한 사용자 인증서 및 공용키 분배 방법을 제공한다.The present invention uses a hierarchical infrastructure to manage the distribution of information needed for software to construct encryption keys. The infrastructure also provides a user certificate and public key distribution method for asymmetric key encryption so that digital signatures can be used.

인프라스트럭처Infrastructure

본 발명은 3단 계층 시스템으로서 조직되는 것이 바람직하다. 최상층은 정책 매니저(Policy Manager)로서 식별된 프로세스이다. 이 프로세스는 암호화 도메인에 대한 “중앙 당국”이 키 생성에 사용될 스플리트, 예를 들어, 512 랜덤 비트를 생성할 수 있게 단다. 스플리트는 라벨이 붙여지며 암호화키를 생성하기 위한 사용자의 조합에 사용된다.The present invention is preferably organized as a three-tier system. The top layer is the process identified as the Policy Manager. This process allows the “central authority” for the crypto domain to generate a split, eg 512 random bits, to be used for key generation. The split is labeled and used for combinations of users to generate encryption keys.

계층의 다음 층은 증명서 매니저(Credential Manager)로서 식별된 프로세스이다. 이 프로세스는 증명서 매니저로부터의 라벨과 특정한 알고리즘 및 정책의 서브셋이 제공된다. 개인은 증명서 매니저의 서브셋으로부터 특정 라벨과 알고리즘의 사용을 할당받는다. 정책 매니저에 의해 생성된 조직 정책과 시스템 파라미터는 이들 라벨에 부가되어 개인의 증명서를 형성한다. 사용자의 증명서ㅓ는 암호화되며 디스켓 또는 스마트 카드와 같은 “토큰”으로 그 사용자에게 분배되거나 또는 워크스테이션 또는 서버에 설치된다. 증명서 매니저에 의한 라벨 및 알고리즘 할당 프로세스는 조직이 정보에 대한 액세스의 “역할-기반(role-based)" 시스템을 구현할 수 있게 한다.The next layer in the hierarchy is the process identified as the Credential Manager. This process is provided with a label from the credential manager and a subset of specific algorithms and policies. An individual is assigned a use of a particular label and algorithm from a subset of certificate managers. Organizational policies and system parameters created by the policy manager are added to these labels to form the individual's certificate. A user's certificate is encrypted and distributed to that user in a "token" such as a diskette or smart card, or installed on a workstation or server. The label and algorithm assignment process by the credential manager allows an organization to implement a "role-based" system of access to information.

증명서 매니저에 대한 편리성으로서, 패스워드 슈퍼바이저는 그들이 사용되는 첫 번째는 사용자 증명서를 잠금 해제할 사용자에 대한 “첫 번째 사용” 패스워드를 안전하게 분배할 수 있다.As a convenience to the credential manager, the password supervisor can securely distribute the “first use” password for the user whose first use is to unlock the user's credentials.

사용자 증명서에 대한 액세스는 증명서 매니저에 의해 최초에 할당된 패스워드를 가지고 계층의 사용자층에서 제어된다. 패스워드는 사용자에 의해 첫 번째 사용시에 변경되며 사용자에게만 알려진다. 이는 기본적인 사용자 인정을 제공한다. 더 강한 인증은 시스템에 대한 향상에 의해 제공된다.Access to the user credentials is controlled at the user level of the hierarchy with the password initially assigned by the certificate manager. The password is changed at first use by the user and only known to the user. This provides basic user recognition. Stronger authentication is provided by improvements to the system.

사용자 인증 향상은 사용자 인증을 위한 조각 정보를 보유할 수 있는 스마트 카드(신용 카드와 같이 플라스틱 카드 또는 다른 토큰에 패키지된 프로세서와 메모리를 포함한다)를 포함한다. 이는 또한 시스템에 의해 사용 정보를 보유하며 시스템에 대한 처리를 제공한다. 변경 저항(tamper resistance) 및 하드웨어 난수 발생 능력을 갖는 스마트 카드는 부가적인 보안을 제공한다.User authentication enhancements include smart cards (including processors and memory packaged in plastic cards or other tokens, such as credit cards) that can hold pieces of information for user authentication. It also holds usage information by the system and provides processing for the system. Smart cards with tamper resistance and hardware random number generation provide additional security.

다른 인증 향상은 생체 데이터의 사용이다. 생체 데이터는 각 개인에 독특하며 개인의 생애동안 변하지 않는 생리적 또는 행동적인 정보이다. 더욱이, 그것은 컴퓨터에 의해 디지털화되어 사용될 수 있는 어떤 것이어야 한다. 강한 사용자 인증에 부가하여 생체 데이터가 디지털 서명을 위한 개인키의 생성에 사용될 수 잇다. 다만 데이터 무결성을 위해 매시지 인증 코드(Message Authentication Code: MAC)가 사용될 수 있다. 대칭 키 알고리즘을 초기화하는 데 사용되고 있는 시스템-생성 키 대신에 생성된 키가 MAC를 초기화하는 데 사용된다. 조작 검출 코드(Manipulation Detection Codes: MDCs)는 또한 본 발명에 따라 암호화 결합될 때 데이터 무결성과 비밀을 제공하는데 사용될 수 있다.Another authentication enhancement is the use of biometric data. Biological data is physiological or behavioral information that is unique to each individual and does not change during an individual's life. Moreover, it must be something that can be digitized and used by a computer. In addition to strong user authentication, biometric data can be used to generate a private key for digital signatures. However, Message Authentication Code (MAC) may be used for data integrity. The generated key is used to initialize the MAC instead of the system-generated key being used to initialize the symmetric key algorithm. Manipulation Detection Codes (MDCs) can also be used to provide data integrity and secrecy when cryptographically coupled in accordance with the present invention.

데이터 원점 인증, 데이터 무결성 및 부인봉쇄(non-repudiation)가 요구되는 경우 시스템 인프라스트럭처는 본 발명에 암호화-의무 디지털 서명을 사용할 수 있는 능력을 제공하는 공용키를 분배하기 위한 수단을 제공하는 데 사용된다. 만약 디지털 서명이 사용되는 경우 MACs 또는 MDCs가 요구되지 않는다. 디지털 서명을 기본 디자인과 결합하고 사용자 인증 향상을 부가하는 것은 상기한 보안 목적물을 만나는 수단을 수립한다.When data origin authentication, data integrity, and non-repudiation are required, the system infrastructure is used to provide a means for distributing a public key that provides the present invention with the ability to use crypto-mandatory digital signatures. do. If digital signatures are used, no MACs or MDCs are required. Combining digital signatures with the basic design and adding user authentication enhancements establish a means of meeting the security objectives described above.

결합기 기능 및 Combiner function and 스플리트Split

결합기는 다수의 입력을 수신하여 하나의 정수를 생성하는 비선형 기능이다. 정수 출력은 목적물을 암호화 및 암호 해독하기 위한 세션 키로서 사용된다. 결합기 기능에 대한 시작점은 조직 스플리트이다. 조직의 모든 자는 이 스플리트에 대한 액세스를 한다. 이는 통상적으로 시스템 키(system key)로 불리는 것과 동동한 것이다.The combiner is a nonlinear function that receives multiple inputs and produces one integer. The integer output is used as the session key to encrypt and decrypt the object. The starting point for the combiner function is tissue split. Everyone in the organization has access to this split. This is equivalent to what is commonly called a system key.

암호화 동안 사용자는 결합기 프로세스에 사용될 하나 이상의 라벨 스플리트를 선택할 것이다. 이는 암호화에 사용된 스플리트에 대한 판독 액세스를 갖는 사람들만이 목적물을 암호 해독할 수 있게 되기 때문에 암호화된 목적물의 승인된 리더쉽을 정의할 것이다. 사용자에 의한 조직의 라벨의 선택과 사용은 라벨 세트를 디자인하는 데 고려되어야 한다. 우수한 라벨 세트 디자인은 조직의 수립된 정보 구획을 반영하여야 한다. 라벨에 대한 액세스는 조직 내에 그 사용자의 역할에 기반을 둔 증명서 매니저에 의해 사용자에게 제공될 수 있다.During encryption the user will select one or more label splits to be used in the combiner process. This will define the approved leadership of the encrypted object because only those with read access to the split used for encryption will be able to decrypt the object. The choice and use of organizational labels by users should be considered in designing a set of labels. Good label set design should reflect the established information compartment of the organization. Access to the label can be provided to the user by a credential manager based on the user's role in the organization.

또한 증명서 매니저 또는 정책 매니저 중 하나가 특정 사용자 또는 사용자 그룹에 대하여 위임받은 사용 라벨을 지정하는 것도 가능하다. 이들은 사용자가 목적물을 암호화할 때 항상 사용되는 라벨 스플리트에 대응한다. 사용자는 그들의 선택에 대한 어떤 선택권이 없고 그들은 결합기에서 자동적으로 사용된다.It is also possible for one of the credential manager or policy manager to assign a delegated usage label for a particular user or group of users. These correspond to label splits that are always used when a user encrypts an object. The user does not have any options for their choice and they are used automatically in the combiner.

각 암호화를 위해 생성된 랜덤 스플리트는 최종 작동키를 만들기 위해 입력으로서 결합기 기능에 제공되는 다른 스플리트이다. 새로운 랜덤 스플리트는 각 암호화에 생성되기 때문에 작동키는 항상 변경되고 있다. 이는 만약 동일한 목적물이 동일한 라벨을 사용하여 다시 암호화될지라도 동일하게 되지 않을 것이다. 난수는 바람직하게는 하드웨어-기반 난수 발생기에 의해 제공된다. 그러나, 만약 하드웨어가 유용하거나 실용적이지 않은 경우는 소프트웨어-기반 의사 난수 발생기가 사용될 수 있다.The random split generated for each encryption is another split provided to the combiner function as input to produce the final activation key. Since a new random split is created for each encryption, the working key is always changing. This will not be the same if the same object is encrypted again using the same label. The random number is preferably provided by a hardware-based random number generator. However, if the hardware is not useful or practical, a software-based pseudo random number generator may be used.

유지 스플리트는 키 업데이트에 사용되며 개요를 타협한다. 조직의 정책은 스플리트 중의 하나가 주기적으로 변경되는 것을 요구할 수 있다. 유지 스플리트는 조직-와이드 충격을 주도록 변경된다. 정책 매니저는 증명서 파일 업데이트를 통하여 사용자에게 분배된 새로운 유지 스플리트를 주기적으로 생성할 수 있다. 유지 스플리트의 생성은 모든 이전의 유지 스플리트가 회복될 수 있는 방식으로 행하여진다. 따라서, 미사용 데이터(data-at-rest) 조직에 대하여 이전에 암호화된 데이터는 회복될 수 있다. 암호화된 네트워크 트래픽과 같은 이동 중 데이터(data-in-transit) 조직에 대하여는 이전의 유지 스플리트를 회복시킬 필요가 없다.Retention splits are used for key updates and compromise the outline. The organization's policy may require that one of the splits be changed periodically. The retention split is altered to give a tissue-wide impact. The policy manager may periodically generate new maintenance splits distributed to users through certificate file updates. The creation of the maintenance split is done in such a way that all previous maintenance splits can be recovered. Thus, previously encrypted data can be recovered for a data-at-rest organization. For data-in-transit organizations, such as encrypted network traffic, there is no need to recover previous maintenance splits.

유지 스플리트는 조직 도메인으로부터 누군가를 배제하는 데 사용될 수 있다. 개인이 새로운 유지 스플리트를 가지고 업데이트가 이루어진 증명서를 가지고 있지 않는 경우 그 개인은 이 새로운 유지 스플리트를 사용하여 암호화된 목적물을 암호 해독할 수 없게 될 것이다. 사용자의 증명서가 타협이 이루어질 경우 유지 스플리트를 업데이트하는 것은 또한 암호화된 데이터를 보호할 것이다.The maintenance split can be used to exclude someone from the tissue domain. If an individual has a new maintenance split and does not have an updated certificate, the individual will not be able to decrypt the encrypted object using this new maintenance split. Updating the maintenance split will also protect the encrypted data if the user's credentials are compromised.

종합하면, 조직 스플리트는 모든 암호화에 사용된 불변 수이다. 유지 스플리트는 작동키의 입력에 주기적인 변경을 유지하는 데 사용된다. 사용자는 라벨 스플리트를 선택하고 랜덤 스플리트는 항상 유일하며, 따라서 모든 암호화된 목적물이 다른 키를 갖는 것을 보장한다.Taken together, tissue split is a constant used for all encryption. The maintenance split is used to hold periodic changes to the input of the actuation key. The user selects a label split and the random split is always unique, thus ensuring that all encrypted objects have different keys.

암호화 알고리즘Encryption algorithm

사용자 증명서에 미리 스플리트가 위치된 본 발명은 대칭 키 암호화 알고리즘을 위한 키 관리를 제공한다. 전통적인 n2 키 관리 문제의 충격은 비대칭 또는 “ 공용키” 암호화 시스템에 대한 의지 없이 경감된다. 그러나, 개인키 관리 솔루션을 위해 제공된 인프라스트럭처는 또한 공용키 관리에 사용될 수 있다. 비대칭 키 암호화 시스템은 메시지 인증을 위한 본 발명에 의해 사용되며 사용자 증명서 분배 및 워크스테이션과 스마트 카드 사이의 통신 프로토콜을 위한 키 교환에 사용될 수 있다.The present invention in which the split is pre-located in the user certificate provides key management for the symmetric key encryption algorithm. The impact of traditional n 2 key management problems is mitigated without resorting to asymmetric or “public key” encryption systems. However, the infrastructure provided for the private key management solution can also be used for public key management. Asymmetric key cryptography systems are used by the present invention for message authentication and can be used for user certificate distribution and key exchange for communication protocols between workstations and smart cards.

바람직하게는 2 대칭 키 알고리즘의 최소, 예를 들어, P2, (스트림 암호 알고리즘) 및 US 데이터 암호화 표준(Data Encryption Standard: DES) 알고리즘, 블록 암호 알고리즘이 본 발명과 함께 사용을 위해 제공된다. 다른 알고리즘이 미국 수출 규정 및 라이선스 계약과 같은 비즈니스를 고려할 때 유용하다.Preferably, a minimum of two symmetric key algorithms are provided for use with the present invention, for example P2, (Stream Encryption Algorithm) and US Data Encryption Standard (DES) algorithm, Block Encryption Algorithm. Other algorithms are useful when considering business such as US export regulations and licensing agreements.

DES 블록 알고리즘의 경우, 4 상이한 동작 모드, 즉, Electronic Code Book(ECB), Cipher Block Chaining(CBC), Output Feedback(OFB) 및 Cipher Feedback(CFB)이 제공된다. 더욱이, CFB는 1비트, 8비트 또는 n이 블록 사이즈(또는 블록 사이즈의 정수 분할)인 경우 n-비트 피드백으로 제공된다. 출력 피드백(output feedback)은 또한 카운터 모드에 유용하다.For the DES block algorithm, four different modes of operation are provided: Electronic Code Book (ECB), Cipher Block Chaining (CBC), Output Feedback (OFB) and Cipher Feedback (CFB). Moreover, CFB is provided with n-bit feedback when 1 bit, 8 bits or n is the block size (or integer division of the block size). Output feedback is also useful for counter mode.

삼중 암호화가 또한 수출 규정을 적용받을 때 모든 블록 알고리즘에 대하여 유용하다. 이는 삼중 DES가 유용할 뿐 아니라 또한 예를 들어, 삼중 IDEA, 삼중 RC5 등이 사용될 수 있다. 모든 블록 알고리즘을 사용할 때 4상태 동작 모드가 유용하다. 삼중 암호화 및 암호 해독에 유용한 다른 동작 모드가 존재한다. Triple encryption is also useful for all block algorithms when subject to export regulations. This is not only useful for triple DES, but also triple IDEA, triple RC5, etc. can be used, for example. The four-state mode of operation is useful when using all block algorithms. There are other modes of operation that are useful for triple encryption and decryption.

정책 매니저는 알고리즘 및 동작 모드에 새 이름을 부여할 수 있다. 다른 알고리즘이 다른 목적에 이용될 수 있고 알고리즘의 이름이 그것의 사용을 반영할 수 있다. 사용자가 사용이 허가된 알고리즘의 이름은 사용자의 증명서에 포함된다. 정책 및 증명서 매니저는 알고리즘에 대한 액세스를 제어하기 때문에 다른 알고리즘을 적용하는 것은 암호화된 데이터에 대한 다른 격리 액세스에 영향을 미친다.The policy manager can assign new names to algorithms and modes of operation. Different algorithms can be used for different purposes and the name of the algorithm can reflect its use. The name of the algorithm that the user is authorized to use is included in the user's certificate. Because policy and certificate managers control access to algorithms, applying different algorithms affects other isolated access to encrypted data.

대칭 키 알고리즘은 목적물을 암호화하기 위해 본 발명에 사용된다. 그들은 또한 결합기에서와 같은 본 발명의 프로세스에 의해 내부적으로 사용된다. 비대칭 키 암호화 시스템이 메시지 인증, 증명서 분배 및 스마트 카드와 워크스테이션 사이의 키 교환 프로토콜을 위해 본 발명에 사용된다. Symmetric key algorithms are used in the present invention to encrypt objects. They are also used internally by the process of the invention as in the combiner. Asymmetric key cryptography systems are used in the present invention for message authentication, certificate distribution, and key exchange protocols between smart cards and workstations.

생체 판독이 메시지 인증에 사용된 사용자의 개인키에 대한 기본을 제공할 수 있다. 이 경우, 개인키는 사용자가 생체 판독을 하여 그것을 회복할 수 있기 때문에 저장될 필요는 없다. 인증에 사용된 공용키는 이 개인키로부터 항상 유도되며 사용자의 증명서 매니저의 데이터베이스에 저장된다. 생체 판독에 개인키에 근거를 두는 것은 생체 측정에 관한 특수한 특성을 요구한다. 정상적으로는 이들 특수한 특성이 적용되지 않으며, 어떤 경우에 개인키는 사용자에 의해 발생되어 통상적으로 사용자의 워크스테이션 또는 스마트 카드에 저장될 필요가 있다. 안전한 백업은 손실의 경우에 개인키에 대하여 요구된다. 증명서 매니저는 바람직하게는 인증에 사용된 사용자의 개인키에 대한 액세스를 할 수 없다는 점에 유의하여야 한다.Biometric reading may provide a basis for the user's private key used for message authentication. In this case, the private key need not be stored because the user can read it and recover it. The public key used for authentication is always derived from this private key and stored in the database of the user's certificate manager. Based on the private key for biometric reading requires special characteristics regarding biometrics. Normally these special features do not apply, and in some cases the private key needs to be generated by the user and typically stored on the user's workstation or smart card. Secure backup is required for private keys in case of loss. Note that the certificate manager preferably does not have access to the user's private key used for authentication.

증명서 분배에 사용되는 각 사용자에 대한 공용키 쌍은 증명서 매니저에 의해 생성되어 저장된다. 이들 키 쌍은 증명서 매니저로부터 사용자에 대한 정보를 암호화하는 데 에만 사용되기 때문에 개인키는 증명서 매니저에 알려지지 않은 상태로 남겨질 필요가 없다. 따라서, 증명서 매니저는 그것의 데이터베이스에 사용자 에 대해 공용키와 개인키를 모두 저장한다. 사용자의 공용키는 분배를 위해 사용자 증명서를 암호화하는데 사용된 키를 암호화하는 데 사용된다. 증명서 매니저는 백업 목적을 위해서만 사용자의 개인키를 저장한다. 사용자는 그들의 개인키의 복사본을 가지고 있어야 하며 그래서 그들은 수신시에 그들의 증명서를 해독할 수 있다.The public key pair for each user used for certificate distribution is generated and stored by the certificate manager. Because these key pairs are only used to encrypt information about the user from the certificate manager, the private key does not need to be left unknown to the certificate manager. Thus, the certificate manager stores both public and private keys for its users in its database. The user's public key is used to encrypt the key used to encrypt the user's certificate for distribution. The credential manager stores the user's private key only for backup purposes. The user must have a copy of their private key so they can decrypt their certificate upon receipt.

비대칭 키 시스템은 또한 시스템-강화 스마트 카드와 워크스테이션 사이의 세션 키를 교환하는 데 사용된다. 시스템 소프트웨어의 설치 시에 공용 및 개인키 쌍은 이러한 목적의 워크스테이션 및 스마트 카드에 의해 생성된다. 난수를 가진 상호 인증을 이용한 스테이션-대-스테이션 프로토콜, 예를 들어, ISO9798-3은 스마트 카드와 워크스테이션 사이의 통신을 암호화하는 데 사용되는 세션 키를 교환하는 데 사용된다.Asymmetric key systems are also used to exchange session keys between system-enhanced smart cards and workstations. At installation of the system software, the public and private key pairs are generated by workstations and smart cards for this purpose. A station-to-station protocol using random authentication with mutual authentication, for example ISO9798-3, is used to exchange session keys used to encrypt communication between smart cards and workstations.

사용자 증명서User certificate

컴퓨터 파일에 포함된 사용자 증명서는 사용자의 허용 세트, 즉 라벨 스플리트, 암호화(기록 허가) 및 암호 해독(판독 허가)에 사용될 수 있는 그들의 연관된 라벨 이름 및 인덱스, 및 사용될 수 있는 알고리즘에 대한 허가를 포함한다. 또한, 조직 이름과 연관된 스플리트, 유지 레벨과 연관된 스플리트, 헤더 암호화 스플리트 및 조직에 의해 사용될 어떤 파라미터가 사용자의 증명서에 또한 포함된다. 최소 패스워드 길이와 같은 정책이 또한 사용자의 증명서에 포함된다. 디지털 서명이 사용될 때 사용자의 사인된 증명서 뿐 아니라 모든 조직의 증명서 매니저의 공용키의 사본이 포함된다.The user certificate included in the computer file contains the user's permission set, namely, their associated label names and indexes that can be used for label splits, encryption (write permission) and decryption (read permission), and the algorithms that can be used. Include. In addition, the user's credentials also include the split associated with the organization name, the split associated with the maintenance level, the header encryption split, and any parameters to be used by the organization. Policies such as minimum password length are also included in the user's credentials. When a digital signature is used, a copy of the public key of the certificate manager of all organizations, as well as the user's signed certificate is included.

사용자에 대한 허가 세트를 함당함에 있어서 증명서 매니저가 그 사용자의 역할과 관련된 의무를 고려하여 조직 내에서 특전을 부여한다. 증명서 매니저 소프트웨어에서 역할 템플레이트(template)와 역할 계층은 이 일에서 증명서 매니저를 돕는다. 개인의 역할은 변할 수 있으며: 때문에 증명서는 다른 라벨과 함께 재 발행될 수 있으며, 또한 조직을 떠난 개인에 대하여 완전히 취소될 수 도 있다.In assigning a set of permissions to a user, the credential manager grants privileges within the organization, taking into account the obligations associated with that user's role. Role templates and role hierarchies in the credential manager software assist the credential manager in this task. The role of the individual may change: because of this, the certificate may be reissued with a different label and may also be revoked completely for an individual who has left the organization.

사용자 증명서는 암호화되며 사용 전에 각 사용자에 의해 암호 해독되어야 한다. 증명서 파일을 암호 해독하는 것은 사용자를 암호학적으로 식별하기 위한 기초이다. 암호화 및 암호 해독에 사용되는 키는, 단지 사용자가 알고 있는 패스워드이므로 사용자의 ID로부터 유도된다. 파일과 연관된 날자/시간 스탬프와 같이 약간의 독특한 데이터 또는 증명서 파일의 그것과 다른 장소에 존재하는 난수가 또한 사용된다. 증명서 파일이 사용을 위해 암호 해독될 때마다 상이한 데이터를 사용하여 재 암호화된다. 이 데이터는 항상 변경되기 때문에 증명서 파일은 매 사용 후 다른 키로 암호화된다. 이는 반대자가 사용자의 증명서를 해독하는 것을 수행하여야 하는 작업을 증가시킨다. 패스워드 이외의 정보 조각들이 사용되기 때문에 반대자는 패스워드-초대 공격이 발생하기 전에 이 독특한 데이터를 결정하여야만 한다.User credentials are encrypted and must be decrypted by each user before use. Decrypting a certificate file is the basis for cryptographically identifying a user. The key used for encryption and decryption is derived from the user's ID because it is only a password that the user knows. Some unique data, such as the date / time stamp associated with the file, or random numbers that exist somewhere other than that in the certificate file are also used. Each time a certificate file is decrypted for use, it is re-encrypted using different data. Because this data always changes, the certificate file is encrypted with a different key after each use. This increases the work the adversary has to do to decrypt the user's certificate. Because pieces of information other than passwords are used, the adversary must determine this unique data before a password-initiated attack can occur.

스마트 카드가 사용될 때 난수는 스마트 카드에 저장될 수 있다. 이는 증명서 파일에 사용자와 스마트 카드를 묶는 효과를 나타낸다. 이 경우 증명서 파일은 스마트 카드 없이 암호 해독될 수 없다.Random numbers can be stored in the smart card when the smart card is used. This has the effect of tying the user and smart card to the certificate file. In this case, the certificate file cannot be decrypted without the smart card.

생체 측정이 사용될 때 생체 판독이 만약 판독이 매 시간마다 정확하게 재생될 수 있는 경우 증명서 파일 암호화키를 유도하기 위하여 그로부터 다른 조각 정 보를 제공한다. 이것은 더욱이 사용자를 증명서 파일에 묶는다. 그러나 만약 생체 판독이 매시간 정확하게 재생되지 못하는 경우 그것은 변동(variance) 계산 목적을 위해 저장된 베이스라인 템플레이트와 비교되는 것이 틀림없다. 이 경우, 템플레이트는 증명서의 암호화에 사용되지 않는다. 대신에 그것은 인증에 사용되며 그것이 각 생체 판독과 비교하는데 사용되는 경우 증명서에 소지된다.When biometrics are used, biometric readings provide different pieces of information from them to derive the certificate file encryption key if the reading can be reproduced correctly every hour. This further binds the user to the certificate file. However, if the biometric reading is not reproduced correctly every hour it must be compared with the stored baseline template for variance calculation purposes. In this case, the template is not used for encrypting the certificate. Instead it is used for authentication and carried on the certificate if it is used for comparison with each biometric reading.

증명서 파일은 만료 일자를 지니고 있다. 이 날짜를 넘어서는 경우 증명서 파일은 쓸모가 없게 된다. 각 암호화된 목적물은 그것의 헤더에 시간 스탬프를 포함하고 있다. 증명서의 만료일을 넘어서 다른 사람에 의해 암호화된 목적물은 암호 해독될 수 없다. 최대 타임-아웃 값, 즉 증명서 발행으로부터 증명서 소멸까지의 시간은 정책 매니저에 의해 설정된다. 증명서 매니저는 또한 타임-아웃을 제한할 수 있으나, 사용자에게 증명서를 발행한 때 타임-아웃 값을 연장할 수는 없다. 증명서가 소멸된 후 본 발명의 시스템을 사용하기 위하여 사용자는 그 사용자의 증명서 매니저에 의해 재발행된 증명서를 사용하여야 한다.The certificate file has an expiration date. If this date is exceeded, the certificate file becomes useless. Each encrypted object includes a time stamp in its header. Objects encrypted by others beyond the expiration date of the certificate cannot be decrypted. The maximum time-out value, that is, the time from certificate issuance to certificate expiration, is set by the policy manager. The credential manager can also limit the time-out, but cannot extend the time-out value when issuing a certificate to the user. After the certificate is expired, in order to use the system of the present invention, the user must use the certificate reissued by the user's certificate manager.

증명서 파일의 발행 또는 재발행시에 증명서 매니저 소프트웨어는 새로운 “처음-사용” 패스워드를 발행한다. 새로운 증명서가 처음으로 사용되기 전에 “처음-사용” 패스워드는 증명서를 암호 해독하는 데 사용되어야만 하며 그 후 새로운 패스워드는 증명서의 후속된 암호화 및 암호 해독을 위해 제공되어야 한다.When issuing or reissuing a certificate file, the certificate manager software issues a new "first-use" password. Before the new certificate is used for the first time, a "first-use" password must be used to decrypt the certificate, and then the new password must be provided for subsequent encryption and decryption of the certificate.

“처음-사용” 패스워드는 일반적으로 증명서 파일을 전송하는데 사용된 것과 다른 통신 채널을 사용하여 사용자에게 전송된다. 비대칭 키 암호화 알고리즘이 “처음-사용” 키를 암호화하는 데 사용될 수 있다. 증명서 매니저에 의해 제공된 개인키는 “처음-사용”키를 회복하여 증명서를 암호 해독하는데 사용된다.The "first-use" password is usually sent to the user using a different communication channel than that used to transfer the certificate file. Asymmetric key encryption algorithms can be used to encrypt "first-use" keys. The private key provided by the certificate manager is used to decrypt the certificate by recovering the "first-use" key.

생체 측정이 증명서 파일의 암호화에 사용될 때 사용자의 공용키는 증명서에 포함되며 검사를 위해 사용될 것이다. 단지 정확한 생체 판독은 증명서에 있는 것과 일치하는 공용키를 발생하는 개인키를 발생할 것이다. 목적물을 암호화, 암호 해독, 사인 및 검증할 수 있도록 하기 위해 사용자는 증명서를 가지고 있어야 한다. 그들은 이들 행위에 필요한 대부분의 “비밀” 정보를 제공하며 풀 시스템이 사용될 때 강한 인증 기술을 사용하여 사용자에게 묶여진다. 사용자의 액세스 허가는 그 사용자의 증명서를 가져가거나 또는 갱신 없이 그들이 소멸되게 함에 의해 취소될 수 있다. 만약 증명서가 서버에 저장되는 것이 요구될 때 사용자의 증명서는 즉시 제거될 수 있다. 일단 정책 매니저가 새로운 유지 스플리트를 발행하면 업데이트 되지 않은 사용자 증명서는 이 업데이트 이후에 암호화된 어떤 데이터도 쓸모없게 한다. 이는 사용자에 대한 시스템을 강제로 오프시키는 하나의 수단이다.When biometrics are used to encrypt a certificate file, the user's public key is included in the certificate and will be used for inspection. Only accurate biometric reading will generate a private key that generates a public key that matches that in the certificate. In order to be able to encrypt, decrypt, sign and verify the object, the user must have a certificate. They provide most of the “secret” information needed for these actions and are tied to the user using strong authentication techniques when the full system is used. A user's access permission can be revoked by taking the user's credentials or letting them expire without renewing. If a certificate is required to be stored on the server, the user's certificate can be removed immediately. Once the policy manager issues a new maintenance split, the user credentials that have not been updated will render any data encrypted after this update unusable. This is one means to force off the system for the user.

헤더Header

모든 암호화된 목적물은 헤더에 바람직하게는 부가된 정보를 포함한다. 이 정보는 목적물을 암호 해독하는데 요구된다. 그것은 최소로서 라벨 스플리트에 대한 인덱스와 암호화 프로세스에 사용된 알고리즘, 조직 이름, 사용될 유지 스플리트를 지정하는 유지 레벨 및 랜덤 스플리트를 포함한다. 랜덤 스플리트는 목적물을 암호화하는 데 사용된 동일한 라벨 스플리트에 기초한 암호화키를 사용하여 암호화된다. 랜덤 스플리트를 회복할 수 있게 하기 위하여 사용자는 목적물을 암호화하는 경우에 사용되었던 라벨 스플리트에 대한 판독 액세스를 가지고 있어야 한다. 헤더 로부터 회복된 랜덤 스플리트와 함께 사용자의 증명서에 포함된 조직 스플리트, 유지 스플리트 및 라벨 스플리트는 암호화키가 회복될 수 있게 한다. 목적물은 그 후 암호 해독될 수 있다.All encrypted objects contain information, preferably appended to the header. This information is required to decrypt the object. It contains, as a minimum, the index for the label split and the algorithm used in the encryption process, the organization name, the maintenance level that specifies the maintenance split to be used, and the random split. The random split is encrypted using an encryption key based on the same label split used to encrypt the object. In order to be able to recover the random split, the user must have read access to the label split that was used when encrypting the object. The tissue split, maintenance split, and label split included in the user's certificate along with the random split recovered from the header allow the encryption key to be recovered. The object can then be decrypted.

또한 헤더에는 목적물이 암호화된 날자와 시간을 나타내는 시간 스템프가 포함된다. 본 발명은 날짜 이전에 만료된 증명서를 가진 사용자가 목적물을 암호 해독하는 것을 허용하지 않을 것이다.The header also contains a time stamp indicating the date and time the object was encrypted. The present invention will not allow a user with a certificate expired before the date to decrypt the object.

그 사용자의 증명서 매니저의 신분 증명서 뿐 아니라 목적물을 암호화한 사용자의 ID가 헤더에 포함된다. 만약 디지털 서명이 사용될 경우 사용자의 인증서와 함께 헤더에 포함된다. 적당한 증명서 매니저의 공용키를 사용하는 경우 모든 것이 각 사용자의 증명서에 포함되며, 증명서는 사인한 개인의 공용키를 회복하기 위해 암호 해독될 수 있다. 이 공용키는 일단 메시지가 암호 해독되면 디지털 서명을 검증하는 데 사용된다.In addition to the identity certificate of the user's certificate manager, the ID of the user who encrypted the object is included in the header. If a digital signature is used, it is included in the header along with the user's certificate. When using the appropriate certificate manager's public key, everything is included in each user's certificate, which can be decrypted to recover the signed public key. This public key is used to verify the digital signature once the message is decrypted.

대부분의 헤더 그 자체는 일정한 헤더 스플리트를 사용하여 암호화된다. 이 스플리트를 사용하는 의도는 보안이 아니다. 이는 쉽게 초기화 성공을 방지함에 의해 시스템을 해독하려고 시도하는 어떤 사람을 낙담시키기 위한 단계이다. 헤더의 모든 정보는 공용이거나 또는 랜덤 스플리트의 경우 헤더 내에서 암호화된다. Most headers themselves are encrypted using a constant header split. The intention of using this split is not security. This is a step to discourage someone trying to decrypt the system by easily preventing the initialization success. All information in the header is public or encrypted in the header in the case of random splits.

헤더에 포함된 데이터는 어떤 종류의 정보 조사 및 데이터베이스 질문에 대한 기초를 제공할 수 있다. 조사 엔진은 데이터 분리를 제공하기 위해 헤더를 보기 위한 논리를 포함할 수 있다. 헤더를 암호 해독하는 것은 메시지 내용을 드러내는 것이 아니기 때문에 암호화된 데이터를 드러내지 않고 검증, 완전무결성, 루팅 등 에 대한 트래픽을 조사하기 위해 네트워크 모니터링 및 제어장치에서 프로세스가 위치할 수 있다. 예를 들어, 헤더에 포함된 라벨 정보는 특정 라벨을 갖는 데이터가 어떤 네트워크 경계를 횡단하는 것을 라우터가 방지함에 의해 네트워크에 암호화된 데이터가 한정되게 하는 기초가 될 수 있다. 따라서, 헤더를 사용함에 의해 본 발명은 정적인 비사용 데이터 뿐 아니라 네트워크를 넘어서 이동 중 데이터를 관리 및 암호화하는 데 적합하다. The data contained in the header may provide the basis for some kind of information survey and database query. The search engine may include logic to view the header to provide data separation. Since decrypting the header does not reveal the content of the message, a process can be placed in the network monitoring and control device to examine traffic for verification, integrity, and routing without revealing the encrypted data. For example, the label information included in the header may be the basis for the encrypted data to be limited to the network by the router preventing data with a specific label from crossing certain network boundaries. Thus, by using headers, the present invention is suitable for managing and encrypting data as it moves over the network, as well as static unused data.

데이터 분리Data separation

데이터 분리는 데이터를 할당하며 알 필요가 있는 것에 기초하여 각 카테고리에 대한 액세스를 제한하는 프로세스이다. 이를 이루는 하나의 방법은 권한이 없는 사람이 그것을 액세스할 수 없는 경우 데이터를 물리적으로 위치시키는 것이다. 그러나, 물리적으로 분리된 네트워크 또는 호스트에 대한 머신에 다른 세트의 데이터를 제공하는 것은 값이 비싸게 든다. 본 발명은 데이터를 분리하는 방법을 제공하며 다른 네트워크, 하드 디스크 드라이브, 서버 등에 데이터가 물리적으로 국한되게 하는 것 없이 권한을 갖는 것들은 액세스가 이루어질 것이다.Data separation is the process of allocating data and restricting access to each category based on what it needs to know. One way to accomplish this is to physically locate the data if an unauthorized person cannot access it. However, providing a different set of data to a machine for a physically separate network or host is expensive. The present invention provides a method for separating data and access to those with rights without having to physically confine the data to other networks, hard disk drives, servers, and the like.

키 회복Key recovery

키 회복은 암호화된 목적물에 대한 액세스에 더하여 개별적인 신중한 이벤트를 필요로 하는 암호화키를 재 발생하기 위한 조직화된 프로세스이다. 정책 매니저는 이러한 프로세스를 초기화할 수 있으며 임의의 증명서 매니저를 필요로 하는 모든 라벨 스플리트에 제공한다. 증명서 매니저는 목적물을 암호화하는 데 사용되었던 라벨 스플리트에 대한 판독 능력을 증명서에 제공할 수 있다.Key retrieval is an organized process for regenerating encryption keys that requires individual and thoughtful events in addition to access to encrypted objects. The policy manager can initiate this process and provide any label split that needs any credential manager. The certificate manager can provide the certificate with readability to the label split that was used to encrypt the object.

만료 일자가 증명서 파일에 대해서 설정되는 것에 유의하여야 한다. 증명서 매니저는 단지 하루 동안 유효한 증명서 파일을 생성하는 것이 가능하다. 예를 들어, 사법 명령에 따라 법 시행이 그들이 필요로 하는 정보를 회복시키는 판독만 가능한 스플리트를 발행할 수 있다. 그들은 이어서 암호화된 정보를 회복시킬 수 없다.Note that the expiration date is set for the certificate file. The certificate manager is capable of generating a valid certificate file for only one day. For example, according to judicial order, law enforcement may issue a read-only split that restores the information they need. They cannot subsequently recover encrypted information.

키 회복을 사용하는 다른 이유는 조직을 떠난 피고용자, 사망 또는 무능력하게 된 자에 의해 암호화된 데이터를 회복시키는 것이다. 개인의 손실은 그 개인에 의해 암호화된 데이터가 회복될 수 없는 것을 의미하지 않는다.Another reason for using key recovery is to recover data encrypted by employees who have left the organization, who have died or become incompetent. The loss of an individual does not mean that the data encrypted by that individual cannot be recovered.

만약 사용자의 오리지널 증명서가 손상되거나 또는 패스워드를 잊어먹는 경우 본 발명은 사용자의 증명서를 재 생성할 수 있다. 이는 사용자에 대하여 새로운 증명서를 단순하게 발행함에 의해 성취된다. 사용자는 새로운 증명서의 처음 사용시에 새로운 패스워드를 선택한다. 몇몇 경우에 인증을 위해 사용자에게 할당된 오리지널 개인키 및 공용키를 재발행하는 것이 가능하다.If the original certificate of the user is corrupted or the user forgets the password, the present invention can regenerate the user's certificate. This is accomplished by simply issuing a new certificate for the user. The user selects a new password on first use of the new certificate. In some cases it is possible to reissue the original private and public keys assigned to the user for authentication.

사용자 인증 향상Improved user authentication

강한 사용자 인증은 개인이 알고 있는 어떤 것, 개인에 의해 소유된 어떤 것 및 개인 자체의 어떤 것을 필요로 한다. 패스워드, 알려진 어떤 것이 기본적인 사용자 인증에 사용된다. 스마트 카드(또는 다른 토큰)가 소유하고 있는 어떤 것이다. 생체 데이터가 개인 자체의 어떤 것이다. 모든 3가지의 임의의 조합이 본 발명의 시스템에 사용될 수 있다.Strong user authentication requires something that the individual knows, something owned by the individual, and something of the individual itself. Passwords, some known one, are used for basic user authentication. Something owned by a smart card (or other token). Biological data is something of the individual itself. Any combination of all three can be used in the system of the present invention.

스마트 카드Smart card

스마트 카드가 본 발명의 처리에 따라 정보의 키 조각을 보유하는 데 사용될 수 있다. 카드에 저장된 난수는 각 사용자의 증명서를 암호화하는 키를 형성할 때 정보로서 사용될 수 있다. 이것은 스마트 카드를 증명서와 묶는다. 카드에 저장된 번호 없이 사용자의 증명서의 암호 해독은 불가능하다. 사용자는 시스템이 사용되기 전에 세션 확립을 완료하기 위하여 카드를 필요로 한다.패ㅡ워드와 같은 다른 조각들은 여전히 시스템에 대한 로그-온 하는 것을 필요로 한다. 스마트 카드는 단독으로 세션을 시작하는 것이 충분하지 않으며, 따라서 훔치거나 또는 사용자의 스마트 카드를 획득한 반대자는 목적을 이루지 못하게 된다.Smart cards can be used to hold key pieces of information in accordance with the processing of the present invention. The random number stored in the card can be used as information when forming a key for encrypting each user's certificate. This binds the smart card with the certificate. It is impossible to decrypt a user's certificate without the number stored on the card. The user needs the card to complete the session establishment before the system can be used. Other pieces, such as passwords, still need to log on to the system. Smart cards are not enough to start a session on their own, so opponents who steal or acquire a user's smart card will not serve their purpose.

사용자 증명서는 스마트 카드에 저장될 수 있다. 이는 조직의 메인 네트워크의 일부가 아닌 다른 머신에 사용자가 이동하여 여전히 시스템을 이용할 수 있게 된다.The user certificate can be stored on a smart card. This allows users to move to a machine other than part of the organization's main network and still use the system.

스마트 카드의 프로세서에 결합기 프로세스를 작동시키는 것 뿐 아니라 세션 기간 동안에만 스마트 카드의 메모리에 암호 해독된 사용자 증명서를 유지함에 의해 보안이 향상된다. 카드 내에 국부적인 처리는 보안키에 대한 정보를 얻기 위하여 프로세스의 내부적인 동작을 관찰하려고 하는 반대자의 작업 부하를 증가시킨다.In addition to running the combiner process on the smart card's processor, security is improved by keeping the decrypted user credentials in the smart card's memory only for the duration of the session. Local processing within the card increases the workload of opponents who wish to observe the inner workings of the process to obtain information about the security key.

슈퍼 카드Super card TMTM

슈퍼 카드TM는 현재의 스마트 카드 보다 처리 능력과 메모리를 향상시킨 ISO 규격의 스마트 카드이다. 그것은 변경 저항과 하드웨어 난수 발생을 포함하고 있 다. 카드 내부의 처리 능력은 워크스테이션에서 처리하는 작업을 줄이는데 사용될 수 있다. 카드와 워크스테이션 사이의 대역폭이 제한될지라도 본 발명의 시스템을 사용하면 단지 작은 량의 데이터가 둘 사이에 전송된다. 카드 내에 더 큰 메모리를 사용함에 의해 “개인” 적용 뿐 아니라 사용자 증명서 파일을 저장하는 것이 가능하다. 스플리트와 같은 “비밀” 정보를 카드와 워크스테이션 사이의 통신을 모니터링하는 누군가에 누설되지 않도록 하기 위하여 슈퍼 카드TM와 워크스테이션 사이의 통신은 암호화된다. 암호화키를 교환하는데 사용되는 키 일치 프로토콜은 카드와 워크스테이션 사이에 적용된다. 어떤 부가적인 정보도 카드 리더에 필요로 하지 않는다.Super Card TM is an ISO standard smart card with improved processing power and memory than current smart cards. It includes change resistors and hardware random number generation. The processing power inside the card can be used to reduce the work done at the workstation. Although the bandwidth between the card and the workstation is limited, only a small amount of data is transferred between the two using the system of the present invention. By using larger memory in the card it is possible to store user certificate files as well as "personal" applications. The communication between the SuperCard TM and the workstation is encrypted so that “secret” information such as splits are not leaked to anyone monitoring the communication between the card and the workstation. The key agreement protocol used to exchange encryption keys is applied between the card and the workstation. No additional information is needed for the card reader.

공진 서명-무선 주파수 식별(Resonant Signature-Radio Frequency Identification: RS-RFID)이라 불리는 고유의 랜덤 주파수 서명이 카드 내에 매입된 탄젠트(tangent)에 의해 제공되며 변경 저항을 돕는다. 카드의 RS-RFID의 디지털 표현은 사용자의 증명서 파일 내에 포함되며 증명서와 함께 암호화된다. 카드에 대한 어떤 변경은 그 카드의 RS-RFID를 변경하게 한다. 손상된 RS-RFID가 사용될 때 틀린 무선 서명이 판독되어 사용자의 증명서 파일로부터 RS-RFID의 암호 해독된 값과 비교되지 않을 것이다. 따라서, 카드에 대한 변형은 탐지될 것이다. 슈퍼 카드TM를 판독하는 카드 리더는 RS-RFID 서명을 판독하는 하드웨어를 포함한다. 또한 슈퍼 카드TM는 ISO-표준 카드 리더에 사용될 수 있다. 이 경우 RS-RFID는 무시되고 변경 저항은 제공되지 않게 된다.A unique random frequency signature called Resonant Signature-Radio Frequency Identification (RS-RFID) is provided by a tangent embedded in the card to help with change resistance. The digital representation of the card's RS-RFID is contained within the user's certificate file and encrypted with the certificate. Any change to a card causes the RS-RFID of that card to change. When a corrupted RS-RFID is used, an incorrect radio signature will be read and not compared to the decrypted value of RS-RFID from the user's certificate file. Thus, modifications to the card will be detected. The card reader for reading the super card TM includes hardware for reading the RS-RFID signature. Super Card can also be used for ISO-standard card readers. In this case, the RS-RFID is ignored and no change resistor is provided.

난수는 목적물 암호화 및 다른 동작에 필요로 한다. 하드웨어 난수 발생이 없는 경우 시스템은 소프트웨어 의사-난수 발생기에 의존할 수 있다. 슈퍼 카드TM를 구비한 특징은 하드웨어 난수 발생 능력이다. 하드웨어 소스를 사용하면 더 우수한 난수 발생을 제공하며 전체적인 시스템의 보안 강도를 높이게 된다.Random numbers are required for object encryption and other operations. In the absence of a hardware random number generation, the system may rely on a software pseudo-random number generator. A feature with Super Card is hardware random number generation capability. Using hardware sources provides better random number generation and increases the security of the overall system.

생체 데이터Biometric data

생체 측정 장치를 사용하는 프로세스에 대하여 이하에 설명한다: 처음에 장치로부터 측정된 생체 판독이 디지털화된다; 디지털 표시값은 수학적으로 변환되어 템플레이트로서 어딘가에 저장된다. 이어서 생체 판독값은 검증을 위해 이 템플레이트와 비교된다. 생체 판독값은 또한 데이터베이스에 저장된 템플레이트와 생체 판독값을 비교함에 의해 식별하는데 사용될 수 있다. 이 데이터베이스로부터 매칭은 식별을 확립한다. 본 발명은 세션 확립 동안 오로지 검증에만 생체 측정을 이용한다.The process of using a biometric device is described below: Biometric readings initially measured from the device are digitized; The digital display value is mathematically converted and stored somewhere as a template. The biometric readings are then compared to this template for verification. Biometric readings can also be used to identify by comparing biometric readings with templates stored in a database. Matches from this database establish identification. The present invention uses biometrics only for verification during session establishment.

일반적으로 생체 판독은 소량만큼 변화한다. 템플레이트 값으로부터 변화는 허용되며 응용 및 보안 요구사항에 따라 설정된다. 이 변화는 거짓(실패)-성공 및 거짓(실패)-거절 비율로부터 계산된 조정 가능한 인자이다.In general, biometric readings vary by small amounts. Changes from template values are allowed and set according to application and security requirements. This change is an adjustable factor calculated from false (failure) -success and false (failure) -rejection ratios.

대부분의 생체 측정은 템플레이트 비교에 대하여 단지 “예 또는 아니오”로 답할 수 있다. 만약 더 높은 거짓(실패)-성공 비율이 허용되는 경우 일부 타입의 생체 판독에 적용된 수학적인 기술은 저장된 템플레이트와 정확하게 매칭될 수 있는 반복 가능한 수로 판독을 변환하는데 사용될 수 있다. 반복 가능한 수를 사용하 면 생체 데이터는 대칭 및 비대칭 키 암호화에 사용된 키를 유도하는데 사용된 정보를 시스템에 제공할 수 있다.Most biometrics can only answer “yes or no” to template comparisons. If higher false (success) -success ratios are tolerated, the mathematical techniques applied to some types of biometric readings can be used to convert the readings into repeatable numbers that can be matched exactly with stored templates. Using repeatable numbers, biometric data can provide the system with the information used to derive the keys used for symmetric and asymmetric key encryption.

그것이 암호화가 될지라도 생체 템플레이트를 포함하는 생체 판독을 저장하는 것을 바람직하지 않다. 만약 반복 가능한 수가 생체 판독으로부터 얻어질 수 있는 경우 이들 생체 값은 사용자 증명서를 해독하기 위한 키를 형성하는 데이터 조각으로서 사용될 수 있다. 그들은 또한 메시지 인증에 사용된 비대칭 키 시스템에 개인키에 대한 기초로서 사용될 수 있다.Even if it is encrypted, it is not desirable to store biometric readings including biometric templates. If repeatable numbers can be obtained from biometric readings, these biometric values can be used as pieces of data that form keys for decrypting user credentials. They can also be used as the basis for private keys in the asymmetric key system used for message authentication.

사용자 검증 동안 생체 값을 사용한 증명서 파일의 암호 해독시에 암호 해독된 증명서 파일에 있는 사용자 ID 필드는 사용자에 의해 타이핑된 ID와 비교된다. 만약 비교가 바람직한 경우 사용자는 인증이 이루어지고 증명서 파일의 데이터는 정확하게 암호 해독된다. 사용자의 증명서 파일을 암호화할 때 사용된 키의 일부로서 생체 데이터는 증명서에 그 사용자를 묶게 된다.Upon decryption of the certificate file using biometric values during user verification, the user ID field in the decrypted certificate file is compared with the ID typed by the user. If a comparison is desired, the user is authenticated and the data in the certificate file is correctly decrypted. As part of the key used to encrypt a user's certificate file, the biometric data binds the user to the certificate.

패스워드, 사용자 ID와 같은 다른 조각의 정보와 난수와 같은 다른 데이터는 증명서 암호화키를 생성하는 데 사용되기 때문에 생체 측정으로부터 더 높은 거짓(실패)-성공 비율이 허용될 수 있다. 비록 2사람이 동일한 생체 값을 발생할지라도 단명한 데이터 뿐 아니라 사용자 ID와 패스워드는 동일하지 않기 때문에 증명서 암호화 키는 둘에 대하여 동일하지 않게 된다.Other pieces of information, such as passwords, user IDs, and other data, such as random numbers, may be used to generate a certificate encryption key, so higher false (failure) -success rates may be allowed from biometrics. Although two people generate the same biometric value, the certificate encryption key will not be the same for both because the user ID and password are not the same, as well as the short-lived data.

디지털 서명에 대한 사용자의 개인키는 사용자의 반복 가능한 생체 템플레이트에 기초를 둘 수 있다. 사용자의 공용키는 개인키로부터 발생된다. 공용키는 등록 프로세스의 일부로서 사용자의 증명서 매니저의 사용자 데이터베이스에 기록된 다. 사용자에게 등록을 위해 제공되도록 요구하는 것은 식별을 확립하는 것이나 식별을 확립하는 다른 수용 가능한 방법이 사용될 수 있다.The user's private key for the digital signature may be based on the user's repeatable biometric template. The user's public key is derived from the private key. The public key is recorded in the user database of the user's certificate manager as part of the registration process. Requiring the user to be provided for registration may establish an identification or other acceptable methods of establishing the identification may be used.

반복 가능한 생체 판독이 사용될 때 사용자의 개인키는 비록 저장되지 않을 지라도 분실할 경우 회복이 가능하다. 이 경우 생체 판독은 개인키를 확립하며 대응하는 공용키의 발생이 증명서 매니저의 데이터베이스에 저장된 것과 체크가 이루어질 수 있다.When repeatable biometric reading is used, the user's private key can be recovered if lost, even if it is not stored. In this case, the biometric reading establishes a private key and a check can be made that the generation of the corresponding public key is stored in the certificate manager's database.

만약 반복 가능한 수가 생체 판독으로부터 항상 보장될 수 없는 경우 생체 템플레이트는 후속된 생체 판독과 비교를 위해 저장되어야 한다. 이 경우 생체 템플레이트는 사용자의 증명서 파일 내에서 암호화된다. 사용자 인증동안 증명서 파일은 암호 해독되어 생체 템플레이트를 회복시켜 인증을 위해 얻어진 생체 판독은 템플레이트와 비교되어 “예 또는 아니오” 답변이 발생된다.If the repeatable number cannot always be guaranteed from biometric readings, the biometric template should be stored for comparison with subsequent biometric readings. In this case, the biometric template is encrypted in the user's certificate file. During user authentication, the certificate file is decrypted to restore the biometric template so that the biometric reading obtained for authentication is compared with the template and a "yes or no" answer is generated.

메시지 인증Message authentication

비대칭 키 암호화 시스템은 상기한 3 메시지 인증 관련 목적물에 대하여 시스템에 사용된다. 만약 단지 데이터 무결성이 요망되는 경우 메시지 인증 코드가 사용될 수 있다. 만약 보안과 결합된 데이터 무결성이 요구되는 경우 비대칭 키 암호화를 갖는 메시지 조작 코드가 사용될 수 있다. 보안을 제공하면서 모든 3 메시지 인증 목적물을 만족하기 위하여 디지털 서명이 사용된다.An asymmetric key encryption system is used in the system for the above three message authentication related objects. If only data integrity is desired, a message authentication code can be used. If data integrity combined with security is required, message manipulation code with asymmetric key encryption can be used. Digital signatures are used to satisfy all three message authentication objectives while providing security.

디지털 서명Digital signature

디지털 서명은 데이터 원점 인증, 데이터 무결성 및 부인봉쇄(non-repudiation)를 제공하는데 사용된다. 시스템에 의해 제공된 인프라스트럭처는 디 지털 서명 검증에 사용된 공용키와 서명된 증명서를 분배하는 공용키 인프라스트럭처(Public-Key Infrastructure: PKI)의 형태를 지원한다. 다른 제안된 공용키 시스템에서는 인증기관이 네트워크를 통하여 질문(query)을 사용하는 서버에 데이터베이스의 형태를 취한다. 본 발명의 시스템에서 증명서 매니저는 인증기관으로서 역할을 한다. 디지털 서명을 검증하기 위한 모든 정보는 각 사용자의 증명서와 암호화된 목적물에 제공된다. 네트워크와 서버 처리로 인한 부가적인 대역폭은 다른 공용키 시스템에서와 같이 요구되지 않는다.Digital signatures are used to provide data origin authentication, data integrity, and non-repudiation. The infrastructure provided by the system supports the form of a public-key infrastructure (PKI) that distributes the public key and signed certificates used for digital signature verification. In another proposed public key system, a certificate authority takes the form of a database on a server using queries over a network. In the system of the present invention, the certificate manager serves as a certification authority. All information for verifying the digital signature is provided to each user's certificate and encrypted object. Additional bandwidth due to network and server processing is not required as in other public key systems.

사용자에 대한 인증서(certificate)는 그 사용자의 증명서 매니저에 의해 서명된다. 각 증명서 매니저는 그 자신의 공용키 및 개인키를 가지고 있다. 조직의 증명서 매니저의 공용키는 각 사용자의 증명서에 제공된다. 증명서 매니저는 사용자의 ID와, 증명서 매니저의 개인키와 조합되는 공용키를 암호화, 즉 서명한다. 이것은 기본적인 사용자 인증서이다. 그것은 단지 증명서 매니저의 공용키를 사용하여서만 암호 해독될 수 있다.The certificate for a user is signed by that user's certificate manager. Each certificate manager has its own public and private key. The public key of the organization's certificate manager is provided for each user's certificate. The certificate manager encrypts, i.e., signs, the user's ID and public key in combination with the certificate manager's private key. This is the default user certificate. It can only be decrypted using the certificate manager's public key.

사용자의 인증서는 그 사용자의 증명서에 포함되어 있어 그 결과 사용자가 서명한 목적물과 함께 송부될 수 있다. 서명된 목적물의 수신인은 증명서 매니저의 공용키를 사용하여 송신자의 인증서를 암호 해독하여 그 사용자의 공용키를 회복한다. 회복된 송신자의 공용키는 그 후 서명된 목적물에 대한 송신자의 디지털 서명을 검증하는 데 사용된다.The user's certificate is included in the user's certificate so that it can be sent with the object signed by the user. The recipient of the signed object decrypts the sender's certificate using the certificate manager's public key to recover that user's public key. The recovered sender's public key is then used to verify the sender's digital signature on the signed object.

사용자의 생체 템플레이트는 유용한 경우 사용자의 개인키의 기초를 형성할 수 있다. 예를 들어, EI Gamal Signature Scheme에서 공용키는 프라임(prime) 번 호(p), 초기 요소(primitive element)(α) 및 개인 번호(α)로부터 계산된 값(β)의 조합이다. 이 개인 번호는 통상적으로 랜덤하게 선택된다. 그러나, 본 발명에서는 사용자의 템플레이트가 개인 번호 또는 이번호의 일부가 될 수 있다. 이러한 이유로 인증에 사용된 개인키 및 공용키는 개인에 묶여진다. 개인키 및 공용키는 반복 가능한 생체 값이 얻어지는 경우 회복될 수 있다(저장 공간의 필요성을 부정할 때).The biometric template of the user may form the basis of the user's private key if useful. For example, in the EI Gamal Signature Scheme, a public key is a combination of a prime number (p), a primitive element (α), and a value (β) calculated from an individual number (α). This personal number is usually chosen randomly. However, in the present invention, the user's template may be a personal number or a part of this number. For this reason, private and public keys used for authentication are tied to individuals. Private and public keys can be recovered if a repeatable biometric value is obtained (when negating the need for storage space).

조작 검출 코드(Operation detection code ( MDCsMDCs ))

만약 데이터 원점 인증과 부인봉쇄와 관계없이 개인 및 데이터 무결성이 요망되는 경우 암호화와 결합된 MDC(Manipulation Detection Code)가 사용될 수 있다. MDC는 메시지로부터 계산된 “unkeyed" 해쉬(hash) 기능을 기본적으로 가지고 있다. 이 해쉬는 그 후 메시지에 첨부되어 새로운 메시지가 암호화된다.If personal and data integrity is desired, regardless of data origin authentication and nondisclosure, Manipulation Detection Code (MDC) combined with encryption can be used. MDC basically has an "unkeyed" hash function computed from the message, which is then attached to the message and the new message is encrypted.

데이터 무결성의 검증으로부터 수신자는 메시지를 암호 해독하여, 메시지로부터 해쉬를 분리하며 회복된 메시지의 MDC를 계산하여 암호 해독된 해쉬와 이를 비교한다. 이 메시지는 그 값이 매칭되는 경우 진정한 것으로서 받아들여진다.From the verification of data integrity, the receiver decrypts the message, separates the hash from the message, calculates the MDC of the recovered message, and compares it with the decrypted hash. This message is accepted as true if its value matches.

메시지 인증 코드(Message verification code ( MACsMACs ))

만약 개인과 관계없이 데이터 무결성만이 요망되는 경우 MAC(Message Authentication Code)가 사용될 수 있다. MAC에 대한 작동키는 개인에 대한 메시지를 암호화하는데 사용된 키에 대한 것과 동일한 방법, 즉 라벨 스플리트, 조직 스플리트, 유지 스플리트 및 랜덤 스플리트를 사용하는 결합기 프로세스를 사용함에 의해 구성될 수 있다.If only data integrity is desired regardless of the individual, MAC (Message Authentication Code) can be used. The actuation key for the MAC can be constructed by using the same method as the key used to encrypt the message for the individual, ie, a combiner process using label splits, tissue splits, maintenance splits and random splits. have.

데이터 무결성을 검증하기 위하여 MAC 처리된 메시지의 수신자는 MAC에 대한 키를 재구성하기 위해 메시지와 연관된 스플리트를 사용한다. 새로운 MAC는 그 후 수신자에 의해 계산된 후 메시지와 함께 송부된 MAC와 비교된다. 만약 2 MAC가 매칭되는 경우 메시지는 변경되지 않았던 것으로 받아들여진다.To verify data integrity, the recipient of a MAC processed message uses the split associated with the message to reconstruct the key for the MAC. The new MAC is then calculated by the receiver and then compared with the MAC sent with the message. If 2 MACs match, the message is accepted as unchanged.

MDCs와 MACs는 디지털 서명과 같이 자주 사용된다고 예상되지 않는다. 따라서, MDCs와 MACs는 다음의 프로세스 설명에 언급되지 않을 것이다.MDCs and MACs are not expected to be used as often as digital signatures. Therefore, MDCs and MACs will not be mentioned in the following process description.

프로세스(Process)Process

본 발명이 태스크를 어떻게 수행하는 지를 보여주기 위해 선택된 프로세스를 설명한다. 일정한 생체 값을 생성할 수 있는 생체 측정과 슈퍼 카드TM와 같은 스마트 카드가 사용되는 것으로 가정한다.The selected process is illustrated to show how the present invention performs a task. It is assumed that a biometric and a smart card such as a super card TM are used that can generate a constant biometric value.

세션 확립(시스템에 대한 로그-온)Establish session (logon to system)

시스템의 사용은 성공적인 로그-온과 사용자 증명서의 암호 해독을 조건으로 한다. 시스템-보강 프로그램이 사용자의 워크스테이션에서 작동될 때 세션 확립(session establishment)이 시작된다. 워크스테이션은 사용자가 스마트 카드, 사용자 생체 측정, 사용자 ID 및 패스워드(로그-온 데이터)를 제공하도록 촉구한다. 암호화된 채널이 워크스테이션과 스마트 카드 사이에 확립되고 로그온 데이터가 키가 발생되어 사용자의 증명서가 해독되는 경우 스마트 카드로 전송된다. 증명서는 스마트 카드 또는 어떤 다른 장소에 머무를 수 있으며 이 경우 암호화된 증명서 파일은 암호 해독 및 사용을 위해 스마트 카드로 전송된다. 성공적인 로그온시에 증 명서 파일은 재 암호화되어 기억되고 암호 해독된 복사본이 세션동안 사용을 위해 스마트 카드의 메모리에 유지된다.Use of the system is conditional upon successful log-on and decryption of user credentials. Session establishment begins when the system-enhancing program runs on the user's workstation. The workstation prompts the user to provide a smart card, user biometric, user ID and password (log-on data). An encrypted channel is established between the workstation and the smart card and logon data is sent to the smart card when the key is generated and the user's certificate is decrypted. The certificate can reside on a smart card or some other place where the encrypted certificate file is sent to the smart card for decryption and use. Upon successful logon, the certificate file is re-encrypted and stored, and a decrypted copy is kept in the smart card's memory for use during the session.

로그온을 완료하기 위하여 3가지, 즉 패스워드, 스마트 카드(또는 다른 토큰) 및 생체 정보가 요구되는 점에 주의해야 한다. 패스워드를 알지 못하는 경우 반대자는 전체의 패스워드 공간을 추측하거나 조사하게 된다. 랜덤 비트가 증명서 해독 프로세스에 대한 시작으로서 사용되며, 만약 추정 패스워드가 사용되는 경우 출력은 정확하게 반대자에 의해 그렇게 쉽게 검출되지 않는다. 이들 랜덤 비트를 계속적으로 변경하는 것은 반대자가 과거의 결과를 반복함에 의해 프로세스를 통과하는 것을 방지한다. 패스워드에 요구되는 최소 문자와 같은 패스워드 정책은 패스워드 단독으로 사용자 인증에 사용될 때 보안을 증가시킨다. 패스워드 단독은 약한 인증시에 여전히 고려된다. 스마트 카드와 생체 측정이 강한 인증을 위해 추천된다.Note that three things are required to complete the logon: password, smart card (or other token) and biometric information. If the password is unknown, the opponent will guess or examine the entire password space. The random bits are used as a start for the certificate decryption process, and if the estimated password is used the output is not exactly so easily detected by the opponent. Continually changing these random bits prevents the opponent from passing the process by repeating past results. Password policies, such as the minimum characters required for a password, increase security when the password alone is used for user authentication. Password alone is still considered during weak authentication. Smart cards and biometrics are recommended for strong authentication.

스마트 카드는 로그-온을 완료하기 위하여 제공되어야 한다. 스마트 카드에 증명서 파일 키 발생을 위한 랜덤 비트를 제공하는 것은 그 카드를 사용자의 증명서 따라서 사용자와 묶는다. 사용자의 패스워드 없이 스마트 카드 단독으로는 로그온을 완료하지 못한다. 패스워드는 스마트 카드에 저장되지 않으며 따라서 반대자에게 카드의 분실은 사용자의 패스워드 또는 사용자의 증명서와 타협하지 않는다.Smart cards must be provided to complete the logon. Providing a smart card with a random bit for generating a certificate file key binds the card with the user's certificate and thus the user. Smart card alone cannot complete logon without a user's password. The password is not stored on the smart card and thus the loss of the card to the opponent does not compromise the user's password or the user's certificate.

슈퍼카드TM가 사용될 때 고유한 무선 주파수 서명은 이 서명을 사용자의 증명서에 기억된 서명과 비교함에 의해 카드의 변형을 검출한다. 슈퍼카드TM가 표준 ISO 스마 트 카드 리더에 여전히 사용될 수 있으나, RS-RFID는 무시된다.When SuperCard is used, the unique radio frequency signature detects the deformation of the card by comparing this signature with the signature stored in the user's certificate. SuperCard TM can still be used with standard ISO smart card readers, but RS-RFID is ignored.

사용자 증명서를 암호 해독하기 위해 키를 형성하는 정보로서 생체 데이터를 사용하는 것은 생체 데이터와 따라서 사용자를 증명서 파일에 암호학적으로 묶는다. 따라서, 사용자의 패스워드를 아는 것과 사용자의 스마트 카드의 소유는 사용자의 증명서를 암호 해독하기 위한 충분한 정보가 되지 않는다. 패스워드와 스마트 카드의 타협은 카드 또는 그 물체의 어디에도, 암호화된 형태일지라도 기억되지 않기 때문에 사용자의 생체 데이터를 개시하지 않는다.Using biometric data as the information that forms the key to decrypt the user certificate cryptographically binds the biometric data and thus the user to the certificate file. Thus, knowing the user's password and possessing the user's smart card are not enough information to decrypt the user's certificate. The compromise between the password and the smart card does not initiate the user's biometric data because neither of the card or its object is stored even in encrypted form.

일단 로그-온한 경우 사용자는 프로그램이 활동적으로 사용되고 있고 스마트 카드가 카드 리더에 존재하는 한 로그-온된 상태를 유지한다. 증명서 매니저에 의해 설정된 타임-아웃 시간이 설정되어 있으므로 만약 사용자가 활성화된 프로그램을 활동적으로 사용하지 않은 경우 세션은 불능화 처리된다. 사용자는 그 후 활성화된 소프트웨어를 계속하여 사용하기 위하여 다시 패스워드와 생체 측정을 제거하여야 한다. 사용자가 활성화된 프로그램을 중단할 때 그 시간에 동작중인 다른 어떤 활성화된 프로그램이 없는 경우 사용자는 로그-오프 되거나 또는 타임-아웃 기간이 경과할 때 까지 로그-온된 상태를 계속하게 된다. 이 타임-아웃 기간 내에서 만약 다른 활성화된 프로그램이 불려지는 경우 사용자는 로그-온할 필요가 없게 된다. 그러나, 만약 타임-아웃 기간이 경과한 경우는 사용자는 다시 로그-온을 하여야 한다. 어떤 활성화된 프로그램도 동작되고 있지 않은 기간 동안 타임-아웃 값이 만료되기 전에 사용자는 그 사용자를 빠르게 로그-오프시키는 유틸리티 프로그램을 동작시킬 수 있다.Once logged on, the user remains logged on as long as the program is actively used and the smart card is present in the card reader. Since the time-out time set by the credential manager is set, the session is disabled if the user does not actively use the active program. The user must then remove the password and biometric again to continue using the activated software. When a user interrupts an active program and there is no other active program running at that time, the user is logged off or continues to be logged on until the time-out period elapses. Within this time-out period the user does not need to log on if another active program is called. However, if the time-out period has elapsed, the user must log on again. The user can run a utility program that quickly logs off the user before the time-out value expires for a period when no active program is running.

디지털 서명을 갖는 암호화Encryption with a Digital Signature

목적물의 암호화는 암호화 알고리즘과 라벨 스플리트의 선택을 요구한다. 이 선택은 목적물을 암호 해독할 수 있는 자를 결정한다. 디폴트(default) 라벨과 알고리즘 선택은 편의상 제공된다. 이는 데이터의 중요부분이 동일한 라벨과 알고리즘을 사용하여 암호화될 때 특히 암호화 프로세스를 능률적으로 만든다. 증명서 매니저는 이 디폴트를 설정할 수 있다. 그것은 가장 제한적으로 이루어질 수 있으며, 이 경우에 사용자는 라벨 세트가 단지 덜 제한적으로 되도록 라벨 선택을 변경할 필요가 있다. 사용자 선택 및 위임 받은 사용 라벨에 대응하는 스플리트는 사용자-선택 암호화 알고리즘을 초기화하는데 사용되는 키를 발생하기 위한 결합기 프로세스에 의해 사용된다.Encryption of the object requires the choice of encryption algorithm and label split. This choice determines who can decrypt the object. Default labels and algorithm selections are provided for convenience. This streamlines the encryption process, especially when critical pieces of data are encrypted using the same labels and algorithms. The credential manager can set this default. It may be the most restrictive, in which case the user needs to change the label selection so that the label set is only less restrictive. The split corresponding to the user selected and delegated usage label is used by the combiner process to generate a key used to initialize the user-selected encryption algorithm.

암호화 해쉬가 목적물의 평문, 즉 데이터가 암호화되기 전에 적용된다. 해쉬값은 그 후 사용자의 개인키(사용자의 생체 판독에 기초하여 발생된 것)를 사용하여 암호화된 후 그 목적물의 디지털 서명이 얻어진다.The cryptographic hash is applied before the plain text of the object, that is, the data is encrypted. The hash value is then encrypted using the user's private key (generated based on the user's biometric reading) and the digital signature of the object is obtained.

디지털 서명은 옵션일 수 있으며 정책 매니저 요구사항에 따른 위임된 것일 수 있다.Digital signatures may be optional and may be delegated according to policy manager requirements.

헤더(header)는 사용자의 라벨과 알고리즘 선택, 사용자의 인증서, 디지털 서명 및 목적물을 암호 해독하는데 요구되는 다른 정보를 포함하여 생성된다. 이 헤더는 암호화된 목적물에 첨부된다.The header is generated including the user's label and algorithm selection, the user's certificate, digital signature and other information required to decrypt the object. This header is attached to the encrypted object.

디지털 서명 검증을 가진 암호 해독Decryption with Digital Signature Verification

암호 해독은 암호화된 목적물의 헤더를 아호 해독하여 판독함에 의해 시작된 다. 만약 사용자가 암호화에 사용된 라벨에 대한 판독 허가를 가지고 있으며 사용된 알고리즘에 대한 액세스를 하는 경우 목적물은 암호 해독될 수 있다.Decryption begins by decrypting and reading the header of the encrypted object. If the user has read permission for the label used for encryption and has access to the algorithm used, the object can be decrypted.

서명 검증을 위해 목적물은 암호화 해쉬가 계산될 수 있도록 우선 암호 해독되어야 한다. 이는 단지 암호화를 위해 사용된 라벨에 대한 판독 허가를 갖고 있는 자만이 디지털 서명을 검증할 수 있다는 것을 의미한다. 일단 해쉬가 계산되면 암호자의 증명서 매니저의 공용키는 증명서로부터 유도된다. 이 공용키가 헤더에 포함된 증명서를 암호 해독하는데 사용되며, 따라서 서명자의 공용키를 회복하게 된다. 검증 모듈은 암호자의 공용키를 , 디지털 서명 및 입력으로서 암호 해독된 데이터로부터 계산된 해쉬값을 얻게 된다. 만약 검증 모듈이 “예”답변이 제시할 때 그 목적물은 진본(authentic)인 것으로 선언된다.For signature verification, the object must first be decrypted so that the cryptographic hash can be calculated. This means that only someone with read permission to the label used for encryption can verify the digital signature. Once the hash is computed, the cipher's certificate manager's public key is derived from the certificate. This public key is used to decrypt the certificate contained in the header, thus recovering the signer's public key. The verification module obtains the hash value calculated from the decrypted data as the digital signature and input of the cipher's public key. If the verification module presents a "yes" answer, the object is declared to be authentic.

탐지Detection

탐지의 의도는 침입, 변형 또는 실패를 나타내는 이벤트가 발생할 때 마다 어떤 개인에게 통지하고 어떤 행위를 하는 것이다. 가장 단순하게는 탐지는 선택된 이벤트를 감사하는 것이다. 감사되어야 할 최소한의 이벤트는 정책 매니저에 의해 결정된다.The intention of detection is to notify an individual and take action whenever an event occurs that indicates an intrusion, modification or failure. In the simplest case, the detection is to audit the selected event. The minimum event to be audited is determined by the policy manager.

탐지는 발생된 난수의 랜덤성에 대한 통계학적인 테스트와 같이 다른 형태를 취할 수 있다. 약한 암호화 키 탐지가 또한 수행될 수 있다. 이들 형태의 알람은 사용자가 시스템의 보안과 타협하는 행위를 계속하는 것을 통지하고 중지시킨다.Detection can take other forms, such as a statistical test for the randomness of random numbers generated. Weak encryption key detection may also be performed. These types of alarms notify and stop the user from continuing to compromise the security of the system.

다른 기술의 일예는 주기적 또는 랜덤하게 헤더를 읽고 증명서 매니저의 데이터베이스마다 사용자의 발행된 라벨에 대하여 그 내에 포함된 라벨 세트를 검증하는 모 니터를 사용하는 것이다. 이는 어떤 사람이 승인되지 않은 액세스를 얻으려고 노력하는 것을 탐지하여 보안 관리자를 도와준다.An example of another technique is to use a monitor that reads the header periodically or randomly and verifies the set of labels contained therein against the user's issued label for each certificate manager's database. This helps security administrators by detecting someone trying to gain unauthorized access.

이벤트 탐지 및 알람에 사용될 수 있는 많은 기술, 그들 중의 일부는 하드웨어 기반의 기술이 있다. 이들을 사용하여 정책 매니저 및 증명서 매니저에 의해 제어될 것이다.There are many technologies that can be used for event detection and alarm, some of which are hardware based technologies. Using these will be controlled by the policy manager and certificate manager.

요약(Summary)Summary

본 발명 기술은 비사용 데이터를 암호화하기 위한 효과적인 시스템을 제공할 수 있다. 이는 또한 이동 중 데이터를 암호화하기 위한 적당한 시스템을 제공할 수 있다. 본 발명은 어플리케이션 프로토콜 레벨을 넘어 OSI 스텍에서 레벨 2(예를 들어, IEEE 802)와 같은 낮은 레벨로 확장될 수 있다. 채널에 대해 세션 키를 확립하기 위한 암호화 프로토콜은 통신 환경의 파라미터에 적응될 수 있다.The present technology can provide an effective system for encrypting unused data. It may also provide a suitable system for encrypting data on the go. The present invention can be extended beyond the application protocol level to low levels such as Level 2 (eg IEEE 802) in the OSI stack. The encryption protocol for establishing a session key for the channel can be adapted to the parameters of the communication environment.

본 발명을 구현하는 어플리케이션 프로그래밍 인터페이스는 안전한 어플리케이션을 개발하도록 사용될 수 있다. 소프트웨어는 여기에 설명한 기술의 선택된 요소를 결합하여 파일 및 이메일 암호화를 제공하는데 사용될 수 있다. 또한 본 발명은 오디오 및 그래픽 어플리케이션에 암호화를 부가하는 데 사용될 수 있다.Application programming interfaces that implement the present invention can be used to develop secure applications. The software can be used to combine file and email encryption with selected elements of the techniques described herein. The invention may also be used to add encryption to audio and graphics applications.

라벨 세트 디자인Label set design

본 발명은 정보에 대한 선택적인 액세스를 제공하는 암호화를 사용한다. 본 발명에 따라 암호화할 때 사용자(사람 또는 장치)는 수동 또는 자동으로 라벨을 선택하며 그들은 암호화되고 있는 정보의 의도된 수신자와 공유한다. 사용자는 특정 서브세트의 정보 또는 정보 그룹을 목표로 하는데 요구되는 많은 라벨을 적용할 수 있다. 단지 매칭 라벨을 포함하는 증명서를 보유하는 사용자는 정보를 관찰할 수 있다. The present invention uses encryption to provide selective access to information. When encrypting according to the present invention, the user (person or device) selects a label either manually or automatically and they share with the intended recipient of the information being encrypted. The user can apply as many labels as required to target a particular subset of information or groups of information. A user holding a certificate containing only a matching label can observe the information.

라벨은 암호화 스플리트의 인간적으로 이해할 수 있는 한쪽이다. 그들은 비대칭 액세스 제어 시스템의 가변 파트를 형성한다. 라벨의 선택과 배치는 유용한 암호화 시스템을 생성하는데 극히 중요한 사항이다. The label is the humanly understandable side of the cryptographic split. They form the variable part of the asymmetric access control system. Label selection and placement are critical to creating a useful encryption system.

본 발명은 데이터 분리에 아주 적합하며 정보에 대한 역할-기반 액세스에 적합하다. 데이터 분리는 레벨 또는 카테고리에 정보를 할당하고 그 후 알 필요가 있거나 또는 다른 보안 정책에 기초하여 각각에 대한 액세스를 제한하는 프로세스이다. 역할-기반 액세스는 수행된 역할에 의해 정보ㅗ에 대한 액세스를 할당하고 그 후 이들 역할에 개인을 할당하는 방법이다. 정보에 대한 각 개인의 액세스는 그의 역할이 변경될 때 변경된다. 인터넷은 많은 데이터베이스에서 정보를 액세스하는 서치 엔진의 생성을 용이하게 한다. 이들 서치 엔진의 태깅(tagging) 또는 인덱싱 방법론은 암호화 시스템에 포함된 라벨에 서로 관련될 수 있다.The present invention is well suited for data separation and for role-based access to information. Data separation is the process of assigning information to a level or category and then needing to know or restrict access to each based on other security policies. Role-based access is a method of assigning access to information by the role performed and then assigning individuals to these roles. Each individual's access to information changes when his role changes. The Internet facilitates the creation of search engines that access information from many databases. The tagging or indexing methodology of these search engines may be related to labels included in cryptographic systems.

임의의 조직 내의 모든 정보는 동일한 개시 위험을 가지고 있지 않다. 약간의 정보의 개시는 환경에 따라 중대한 부정적인 충격을 가질 수 있다. 승인되지 않은 개시를 최소화하는 전통적인 방법은 조직적인 구획 내에 정보를 보관하고 정책, 절차 및 각각에 적당한 제어를 확립하는 것이다.All information in any organization does not have the same risk of initiation. The disclosure of some information can have a significant negative impact depending on the environment. The traditional way of minimizing unauthorized disclosure is to keep information in organizational compartments and establish policies, procedures, and appropriate controls for each.

라벨은 조직 내에 확립된 정보 구획을 반영할 수 있다. 예를 들어, 만약 큰 조직이 500 정보 구획으로 식별되는 경우 그 후 정책 매니저는 이들 구획을 나타내는 500 라벨을 생성한다. 특정 라벨은 특정 구획에 대한 액세스를 갖는 역할에 할 당된 개인에 할당된다. 톱-다운 방식으로 명령된 정보 구획은 개인 사용자에 대한 프로세스를 단순화한다. 만약 개인이 2 정보 구획 내에서 역할로 할당되는 경우 그의 증명서는 단지 암호화를 위해 이들 2 라벨 옵션을 제공한다. 그러나, 실제로는 전체 명령된 구획 시스템은 충분하게 가요성을 가지고 있지 않다. 명령된 구획의 외측으로 보내질 자료에 대하여 리더쉽 제한을 설계하는 경우에 약간의 가요성을 각 사용자에게 허용하는 것이 최선이다.The label may reflect the information compartment established within the organization. For example, if a large organization is identified with 500 information compartments, then the policy manager generates 500 labels representing these compartments. Specific labels are assigned to individuals who are assigned to roles with access to specific compartments. Information compartments commanded in a top-down manner simplify the process for individual users. If an individual is assigned to a role within the two information compartments, his certificate provides these two label options only for encryption. In practice, however, the entire commanded compartment system is not sufficiently flexible. It is best to allow each user some flexibility in designing leadership restrictions on data to be sent out of the commanded compartment.

라벨은 또한 조직을 횡단하여 리더쉽을 지정하는 데 사용될 수 있다. 예를 들어, 라벨 “전직원 정보”는 조직 내의 모든 사람에게 발행될 수 있다. 모든 사람은 이 라벨을 사용하여 정보를 암호화할 수 있다; 그러나, 단지 매니저와 전직원 부에 할당되는 이들 사람들만이 이러한 정보를 암호 해독할 수 있다. 유사한 암호화 및 암호 해독 제한을 갖는 다른 “조직을 넘는” 라벨은 보안(Security), 법률(Legal), 감찰관(Inspector General), 또는 다른 조직 그룹 또는 기능을 포함한다.Labels can also be used to designate leadership across an organization. For example, the label “Employee Information” can be issued to everyone in the organization. Everyone can use this label to encrypt information; However, only those people who are assigned to managers and employees can decrypt this information. Other “beyond organizations” labels with similar encryption and decryption restrictions include Security, Legal, Inspector General, or other organizational groups or functions.

템플레이트의 사용은 라벨의 분배를 돕는다. 템플레이트는 조직의 정보 흐름 바운더리를 나타내는 라벨을 포함하거나 또는 한 그룹의 정보 서브세트를 나타내도록 이루어질 수 있다. 템플레이트를 만들고 동시에 다수의 사용자에게 이들을 할당함에 의해 분배 프로세스는 크게 용이해지게 된다. 예를 들어, 기본 역할 템플레이트는 모든 피고용자에게 할당될 라벨을 포함하도록 생성될 수 있다. 부가적인 템플레이트가 슈퍼바이저, 매니저 및 이사 또는 요구되는 다른 역할에 대하여 생성되어 할당될 수 있다.The use of templates aids in the dispensing of labels. The template may comprise a label representing an organization's information flow boundary or may be representative of a group of information subsets. The distribution process is greatly facilitated by creating templates and assigning them to multiple users at the same time. For example, a basic role template can be created to contain a label that will be assigned to all employees. Additional templates may be created and assigned for the supervisor, manager and director or other roles required.

보안 요구사항을 만족하는데 필요한 제한이 이루어지는 라벨 세트를 설계하도록 주의가 이루어져야 한다. 그 목적물은 명령된 구획 접근을 나타내는 라벨을 특별히 조직을 뛰어넘는(구획) 통신을 허용하는 라벨과 결합해야만 하는 것이다. 결과적인 라벨 세트는 단순하고 사용하기 쉬운 서브세트를 각 사용자에게 분배될 수 있게 한다.Care must be taken to design a set of labels with the necessary restrictions to meet security requirements. The object must be to combine a label representing commanded compartment access with a label that specifically allows communication beyond the organization (compartment). The resulting set of labels allows a simple and easy to use subset to be distributed to each user.

예를 들어, 도 1은 목적물(object)을 암호화하는 프로세스를 보여준다. 도시된 바와 같이 다수의 키 스플리트가 암호화키를 생성하도록 되어 있다. 암호화 알고리즘이 암호화키를 사용하여 초기화된다. 초기화된 암호화 알고리즘은 암호화된 목적물을 형성하도록 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부분에 적용된다. 다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부가 대응한다.For example, FIG. 1 shows a process for encrypting an object. As shown, multiple key splits are arranged to generate an encryption key. The encryption algorithm is initialized using the encryption key. The initialized encryption algorithm is applied to at least a portion of the object according to at least one encryption scheme to form an encrypted object. At least one of the plurality of key splits corresponds at least in part to a biometric.

도 2는 본 발명에 따른 다른 예시적인 프로세스를 보여준다. 도시된 바와 같이, 목적물을 암호화하는 프로세스는 조직에 대응하는 조직 스플리트, 유지 스플리트, 랜덤 스플리트, 적어도 하나의 라벨 스플리트를 결합하여 암호화키를 발생하는 단계를 포함한다. 암호화 알고리즘은 암호화키를 가지고 초기화된다. 적어도 목적물의 일부가 초기화된 암호화 알고리즘에 따라 암호화되어 암호화된 목적물을 형성한다. 결합기 데이터가 암호화된 목적물에 부가된다. 결합기 데이터는 적어도 하나의 라벨 스플리트와 암호화 알고리즘 중 적어도 하나에 대응하는 기준 데이터, 조직과 연관된 이름 데이터, 적어도 하나의 유지 스플리트 및 유지 스플리트와 연관된 유지 레벨, 및 랜덤 스플리트를 포함한다. 암호화된 목적물은 의도된 수신자에 의한 후속된 사용을 위해 부가된 결합기 데이터와 함께 저장될 수 있다.2 shows another exemplary process according to the present invention. As shown, the process of encrypting an object includes combining an tissue split, a maintenance split, a random split, and at least one label split corresponding to the tissue to generate an encryption key. The encryption algorithm is initialized with the encryption key. At least a portion of the object is encrypted according to an initialized encryption algorithm to form an encrypted object. Joiner data is added to the encrypted object. The combiner data includes reference data corresponding to at least one of the at least one label split and the encryption algorithm, name data associated with the organization, at least one maintenance split and a maintenance level associated with the maintenance split, and a random split. The encrypted object may be stored with added combiner data for subsequent use by the intended recipient.

안전한 동작 제어Safe motion control

도 3은 프로세스의 무결성(integrity)을 검사하기 위한 도구로서 암호화를 사용하는 시스템의 흐름도이다. 입력(2)이 시스템에 제공되며 이는 프로세스(4)에 의해 조작되도록 의도되어 있다. 그러나, 이 입력(2)은 우선 복사 프로세스(6)를 진행하여 동일한 입력(8,10)을 제공한다. 입력(8)은 처리되도록(4) 통과되고 한편 입력(10)은 암호화 프로세스(12)에 의해 암호화된다. 승인된 수신자는 암호화 프로세스(12)에 의해 제공되는 무결성으로 인하여 이 암호화된 복사 입력(14)이 신뢰성 있는 것으로 고려할 것이다.3 is a flow diagram of a system using encryption as a tool for checking the integrity of a process. An input 2 is provided to the system, which is intended to be manipulated by the process 4. However, this input 2 first proceeds to the copying process 6 to provide the same inputs 8 and 10. The input 8 is passed through to be processed 4 while the input 10 is encrypted by the encryption process 12. The authorized recipient will consider this encrypted copy input 14 to be reliable because of the integrity provided by the encryption process 12.

유사하게 도 4는 출력 문맥에 사용된 암호화를 보여준다. 시스템의 프로세스(16)는 출력(18)을 발생한다. 이 출력은 복사 프로세스(20)를 실행하여 2개의 동일한 출력(22,24)을 발생한다. 출력(22)은 시스템의 작동성에 의해 결정된 정상적인 목적지로 계속 진행한다. 출력(24)은 암호화 프로세스(26)로 제공된다. 승인된 수신자는 암호화 프로세스(26)에 의해 제공되는 무결성으로 인하여 이 암호화된 복사 출력(28)이 신뢰성 있는 것으로 고려할 것이다.Similarly, Figure 4 shows the encryption used in the output context. Process 16 of the system generates an output 18. This output executes a copy process 20 to produce two identical outputs 22, 24. The output 22 continues to the normal destination determined by the operability of the system. The output 24 is provided to the encryption process 26. The authorized recipient will consider this encrypted copy output 28 to be reliable due to the integrity provided by the encryption process 26.

이 문맥에서 처리는 소망하는 결과를 생성하도록 한 세트의 제한된 절차에 따라 데이터의 조작이다. 처리의 결과는 서브-시스템 내부 또는 외측으로 다른 프로세스에 대한 입력으로 사용될 수 있거나 또는 스크린의 디스플레이 또는 직접 인간의 사용을 위한 다른 표시장치와 같은 전자 시스템의 외측에 사용될 수 있다.In this context, processing is the manipulation of data according to a set of restricted procedures to produce a desired result. The results of the processing can be used as input to other processes inside or outside the sub-system, or can be used outside of an electronic system such as a display of a screen or other display for direct human use.

예를 들어, 도 5는 프로세스(32)에 의해 입력으로서 프로세스에 제공된 선택 된 프로세스 요소(30)가 조작되는 프로세스(32)를 보여준다. 프로세스(32)에서 미리 설정된 지점(34)에서 프로세스(32)는 샘플링되어 암호화 모듈(36)에 의해 암호화되어 암호화된 출력(38)을 제공한다. 따라서, 암호화된 출력(38)의 암호 해독된 버전을 조사하는 승인된 수신자가 암호화 모듈(36)에 의해 제공된 무결성으로 인하여 프로세스 샘플의 신뢰성에 높은 레벨의 신뢰를 갖게 된다.For example, FIG. 5 shows a process 32 in which the selected process element 30 provided to the process as input by the process 32 is manipulated. At a predetermined point 34 in process 32, process 32 is sampled and encrypted by encryption module 36 to provide an encrypted output 38. Thus, an authorized recipient inspecting a decrypted version of the encrypted output 38 has a high level of trust in the reliability of the process sample due to the integrity provided by the encryption module 36.

이 문맥에서 예정된 조건은 모든 또는 지정된 프로세스, 레지스터의 상태 및 특정 시간에 시스템 내에서의 다른 조건이다. 상태 정보의 연대순 기록의 리뷰는 특정 시간동안 작용된 시스템의 증거를 제공한다. Predetermined conditions in this context are all or specified processes, states of registers, and other conditions within the system at a particular time. A review of the chronological record of the status information provides evidence of the system operated for a particular time.

예를 들어, 도 6은 예정된 조건이 시스템에서 어떻게 표본 추출되는 지를 보여주며, 그 결과 그들이 때 맞추어 특정 지점에서 시스템의 안전하고 신뢰성 있는 “스냅 샷”을 제공하도록 암호화될 수 있다. 시스템이 동작할 때 선택된 대차계정, 상태 및 다른 프로세스가 시간(42,44,46)상 다른 지점에서 샘플링된다. 도시된 바와 같이, 시간(42)의 제1지점에서 프로세스(40)가 샘플링되어 시간(42)의 지점에서 시스템의 예정된 조건의 판독을 제공한다. 이러한 예정된 조건 샘플은 그 후 암호화되어 시간(42)의 제1선택된 점에서 특징적인 암호화된 출력(43)을 제공한다. 유사하게 시간(44)의 제2지점에서 프로세스(40)는 샘플링되어 시간(44)의 지점에서 시스템의 예정된 조건의 판독을 제공한다. 이러한 예정된 조건 샘플은 그 후 암호화되어 시간(44)의 제2선택된 점에서 특징적인 암호화된 출력(46)을 제공한다. 끝으로, 현재 시간(46)에서 프로세스(40)는 샘플링되어 시스템의 현재 예정된 조건의 판독을 제공한다. 이러한 예정된 조건 샘플은 그 후 암호화되어 시스템의 현재 예 정된 조건의 특징적인 암호화된 출력(47)을 제공한다. 미래의 샘플이 얻어져서 암호화된 출력이 발생된다. 따라서, 암호화된 출력(43,45,47)의 암호 해독된 버전을 조사하는 승인된 수신자가 암호화 프로세스에 의해 제공된 무결성으로 인하여 예정된 조건 샘플의 신뢰성에 높은 레벨의 신뢰를 갖게 된다.For example, FIG. 6 shows how predetermined conditions are sampled in a system, so that they can be encrypted to provide a secure and reliable “snapshot” of the system at a particular point in time. When the system is running, the selected balance account, status and other processes are sampled at different points in time 42, 44 and 46. As shown, process 40 is sampled at a first point in time 42 to provide a reading of the predetermined condition of the system at a point in time 42. This predetermined condition sample is then encrypted to provide a characteristic encrypted output 43 at a first selected point in time 42. Similarly, at the second point in time 44, process 40 is sampled to provide a reading of the predetermined condition of the system at the point in time 44. This predetermined condition sample is then encrypted to provide the characteristic encrypted output 46 at the second selected point in time 44. Finally, at current time 46, process 40 is sampled to provide a reading of the currently scheduled conditions of the system. This predetermined condition sample is then encrypted to provide an encrypted output 47 characteristic of the currently scheduled condition of the system. Future samples are obtained and the encrypted output is generated. Thus, an authorized recipient examining the decrypted version of the encrypted output 43, 45, 47 has a high level of confidence in the reliability of the predetermined condition sample due to the integrity provided by the encryption process.

이 문맥에서 가상 환경은 암호화의 시간에 시스템에 제공된 영향 조건을 말한다. 암호화 범위에 가상 환경 정보를 포함함에 의해 암호화된 목적물에 대한 모든 영향의 성질과 효과는 기록되어 분석될 수 있다. 가상 환경 정보는, 그러나 제한되지 않는 것으로, 유사한 또는 다른 아이템과 비교할 때 처리의 순서; 데이터 변환 및 재포맷팅과 같은 데이터의 사전 처리; 다른 활성 프로세스 또는 스레드의 상태; 오퍼레이팅 시스템 제어 정보; 사용자 로그-온의 식별; 네트워크 모니터링 정보; 및 다른 활성 제어 프로세스를 포함한다.In this context, virtual environment refers to the impact conditions provided to the system at the time of encryption. By including virtual environment information in the scope of encryption, the nature and effects of any impact on the encrypted object can be recorded and analyzed. The virtual environment information includes, but is not limited to, the order of processing when compared to similar or other items; Preprocessing of data, such as data conversion and reformatting; The status of another active process or thread; Operating system control information; Identification of user log-ons; Network monitoring information; And other active control processes.

암호화하여 가상 환경 정보를 선택된 데이터 목적물에 결합시킴에 의해 데이터 목적물의 무결성이 보증될 뿐 아니라 목적물을 생성한 환경의 성질과 범위가 검증될 수 있다. 더욱이, 암호화된 목적물이 다른 목적물 내에 매입되어 암호화 되거나 또는 그렇지 않으면 미국 특허 제5,369,702호에 기재된 바와 같이 시스템의 사용자에게 액세스 계층을 제공한다. 본 발명의 문맥 내에서 암호화된 목적물은 관리 및 다른 측을 위한 전자적인 제어 계층의 검증을 제공한다.By encrypting and combining virtual environment information with selected data objects, the integrity of the data objects can be ensured and the nature and scope of the environment that created the objects can be verified. Moreover, an encrypted object is embedded in another object and encrypted or otherwise provides an access layer to a user of the system as described in US Pat. No. 5,369,702. Encrypted objects within the context of the present invention provide for verification of the electronic control layer for management and other sides.

도 7은 가상 환경 데이터(50)가 어떻게 암호화된 목적물(52) 내에 수집되어 매입될 수 있는 지를 보여준다. 다른 관련된 암호화되지 않은 목적물(54)은 다른 암호화된 목적물(56)이 그렇게 될 수 있는 것과 같이 또한 동일한 암호화된 목적 물(52) 내에 매입될 수 있다. 물론 수집된 가상 환경 데이터(50)는 암호화된 목적물(52) 내에 매입되기 전에 암호화될 수 있으며, 내부의 암호화된 목적물(56)은 다른 암호화 및/또는 암호화되지 않은 목적물을 포함할 수 있다. 추출된 가상 환경 데이터 목적물을 조사하는 승인된 수신자가 목적물에 대한 콘테이너를 생성하는 데 사용된 암호화 프로세스에 의해 제공된 무결성으로 인하여 대응하는 데이터의 신뢰성에 높은 레벨의 신뢰를 갖게 된다.7 shows how virtual environment data 50 can be collected and embedded within an encrypted object 52. Other related unencrypted objects 54 may also be embedded within the same encrypted object 52 as other encrypted objects 56 may be. Of course, the collected virtual environment data 50 may be encrypted before being embedded in the encrypted object 52, and the encrypted object 56 therein may include other encrypted and / or unencrypted objects. Authorized recipients examining the extracted virtual environment data objects have a high level of confidence in the reliability of the corresponding data due to the integrity provided by the encryption process used to create the containers for the objects.

관리, 세금 관할권, 규정 당국, 내부 승인된 수신자, 독립된 회계사 및 다른 측이 제어 시스템의 상호 작용 뿐 아니라 모니터 및 감사 제어 시스템에 이들 특징을 사용할 수 있다-비즈니스로서 중요한 이점은 전자 세계로 이동한다. 이 기술을 사용하면, 실제적인 절차를 고려하는 제어 시스템은 다른 제어 시스템이 설계된 바와 같이 동작하는 증거를 제공할 수 있다.Management, tax jurisdictions, regulatory authorities, internally approved recipients, independent accountants, and other parties can use these features for monitoring and audit control systems as well as the interaction of control systems—an important advantage as a business moves into the electronic world. Using this technique, control systems that consider practical procedures can provide evidence that other control systems behave as designed.

따라서, 시스템은 관련된 목적물을 보호하고 제어하는 데 사용된 암호화 프로세스로서 간주될 수 있으며, 또는 프로세스의 무결성을 보장하는 감사 및 제어 도구로서 간주될 수 있다. XML과 같은 프로세스가 데이터베이스로부터 회복되거나 또는 그 내의 목적물 너머로 관리 흐름 제어 능력을 연장한다.Thus, a system can be considered as an encryption process used to protect and control related objects, or as an audit and control tool to ensure the integrity of the process. Processes such as XML extend management flow control capabilities beyond or recover from databases.

본 발명은 설명의 용이성을 위해 특정 프로세스, 즉 확장성 생성 언어(Extensible Markup Language: XML)를 고려하여 설명된다. 그러나, 본 발명은 이 예시적인 프로세스에 제한되지 않으며 여기에서 설명된 것과 같이 넓게 사용될 수 있다는 점에 유의해야 한다. XML은 데이터를 구조화하고 설명하는 데 사용된 방법이며, 그것은 데이터베이스 및 전자적인 상업적 어플리케이션을 포함하는 다른 소 프트웨어 어플리케이션에 의해 이해될 수 있다. XML은 바람직하게는 특정 공통 산업계 협정을 사용하여 뜻에 대하여 라벨 데이터 목적물에 태그를 사용하며, 그 결과 다른 벤더에 의해 생성되고 다른 목적을 가지는 소프트웨어 어플리케이션이 데이터를 재구성하데 도움 없이 그들 사이에 데이터 목적물을 통과시킨다. XML은 어플리케이션이 입력을 위해 태그 데이터 목적물을 사용할 수 있게 한다. XML은 하나의 어플리케이션으로부터 다른 것으로 전송되는 정보를 사용될 수 있다. 어플리케이션은 비즈니스 거래, 재무제표, 구입 주문서, 제품 카탈로그, 병력, 데이터베이스 검색 등을 포함한다. 이 예에서 XML 태그는 어플리케이션 및 아마도 오퍼레이팅 시스템, 회계 및 동작 제어 시스템 목적물을 식별하기 위한 소프트웨어에 의해 사용된다. 안전한 회계 및 동작 제어 및 보고 시스템(SAOCRS: Secure Accounting and Operational Control and Reporting System) 어플리케이션 소프트웨어 가 선택된 태그 데이터 목적물을 조사하여 만약 적당한 경우 태그 목적물 또는 목적물의 그룹의 복사본 암호화를 한다. 더욱이, 암호화된 목적물은 다른 목적물 내에서 매입되어, 암호화 되거나 또는 그렇지 않으면 미국 특허 제5,369,702호에 기재된 바와 같이 시스템의 사용자에게 액세스 계층을 제공한다. XML 라벨은 직접적으로 관련되거나 또는 참고 프로세스에 관련하도록 그룹화 또는 변경될 수 있다. 암호화된 목적물은 그 후 바로 암호 해독 및 추가 처리를 위해 승인된 수신자에 실시간 기초로 직접적으로 통과되거나 그들이 저장되고 그 후의 시간에 전송된다.The present invention is described in consideration of a specific process, namely Extensible Markup Language (XML), for ease of explanation. However, it should be noted that the present invention is not limited to this exemplary process and can be widely used as described herein. XML is the method used to structure and describe data, which can be understood by other software applications, including databases and electronic commercial applications. XML preferably uses tags in label data objects for meaning using specific common industry conventions, and as a result, software objects generated by different vendors and having different purposes do not help reconstruct the data between them. Pass it through. XML allows applications to use tag data objects for input. XML can use information sent from one application to another. Applications include business transactions, financial statements, purchase orders, product catalogs, medical history, database searches, and more. In this example, XML tags are used by software to identify applications and possibly operating system, accounting and motion control system objects. The Secure Accounting and Operational Control and Reporting System (SAOCRS) application software examines the selected tag data object and encrypts the copy of the tag object or group of objects, if appropriate. Moreover, encrypted objects are embedded within other objects to provide an access layer to users of the system as encrypted or otherwise described in US Pat. No. 5,369,702. XML labels can be directly related or grouped or changed to relate to the reference process. Encrypted objects are then passed directly on a real time basis to authorized recipients for decryption and further processing, or they are stored and transmitted at a later time.

도 8은 SAOCRS에서 입력 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다. 초기에 입력 목적물(600)은 XML 태그에 관련되거나 또는 관련되지 않는다; 만약 그럴 경우, XML-태그 입력 목적물(601)은 선택 및 복사 프로세스(603)에 직접적으로 공급된다. 만약 요구되는 경우, XML 목적물-태깅 어플리케이션(602)은 적당한 XML 태그를 입력 목적물(600)에 적용한다. 목적물 속성을 식별하는 XML 태그를 사용하여 SAOCRS(604)는 제어 요구사항에 따라 어떤 목적물(605)을 선택하며 동일한 복사본이 만들어지게 된다. 오리지날 태그 입력 목적물(606)은 의도한 프로세스(607)로 통과하도록 허용된다.8 is a flow diagram illustrating the use of XML to identify, copy, and encrypt input objects in SAOCRS. Initially, input object 600 may or may not be associated with an XML tag; If so, the XML-tag input object 601 is supplied directly to the selection and copy process 603. If desired, the XML object-tagging application 602 applies the appropriate XML tag to the input object 600. Using an XML tag identifying the object attribute, SAOCRS 604 selects a certain object 605 according to the control requirements and an identical copy is made. The original tag entry object 606 is allowed to pass to the intended process 607.

SAOCRS(604) 내에서 선택된 입력 목적물(605)의 각 복사의 XML 태그는 각 목적물을 암호화하는데 사용되도록 적당한 역할-기반 액세스 라벨 또는 라벨들을 결정하도록 암호화된 액세스 계층(609) 내의 라벨과 관련 처리된다(608). 역할-기반 라벨은 특정인 또는 액세스 허용된 장치의 식별 이외에 액세스의 타입 또는 카테고리의 설명자이다. 각 입력 목적물 복사본은 암호화되어(610), 다른 SAOCRS를 포함하는 적당한 사람, 장치 또는 다른 시스템을 위하여 통과되거나 또는 저장된다(611). The XML tag of each copy of the selected input object 605 in the SAOCRS 604 is processed with a label in the encrypted access layer 609 to determine the appropriate role-based access label or labels to be used to encrypt each object. (608). The role-based label is a descriptor of the type or category of access in addition to the identification of the specific person or access allowed device. Each input object copy is encrypted 610 and passed or stored 611 for the appropriate person, device or other system including other SAOCRS.

도 9는 SAOCRS에서 복사된 출력 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다. 9 is a flowchart showing the use of XML to identify, copy, and encrypt the output destination copied from SAOCRS.

초기에 프로세스(700,701)의 출력 목적물(704)은 XML 태그에 관련되거나 또는 관련되지 않는다; 만약 그럴 경우, XML-태그 출력 목적물(702)은 선택 및 복사 프로세스(703)에 직접적으로 공급된다. 만약 요구되는 경우, XML 목적물-태깅 어플리케이션(705)은 적당한 XML 태그를 출력 목적물(704)에 적용한다. 목적물 속성을 식별하는 XML 태그를 사용하여 SAOCRS(706)는 제어 요구사항에 따라 어떤 목적 물(707)을 선택하며 동일한 복사본이 만들어지게 된다. 오리지날 태그 입력 목적물(708)은 의도한 프로세스(709)로 통과하도록 허용된다.Initially, the output destination 704 of the processes 700 and 701 may or may not be associated with an XML tag; If so, the XML-tag output object 702 is fed directly to the selection and copy process 703. If desired, the XML object-tagging application 705 applies the appropriate XML tag to the output object 704. Using an XML tag identifying the object attribute, SAOCRS 706 selects which object 707 according to the control requirements and makes an identical copy. The original tag entry object 708 is allowed to pass to the intended process 709.

SAOCRS(706) 내에서 선택된 출력 목적물(707)의 각 복사의 XML 태그는 각 목적물을 암호화하는데(712) 사용되도록 적당한 역할-기반 액세스 라벨 또는 라벨들을 결정하도록 암호화된 액세스 계층(710) 내의 라벨과 관련 처리된다(711). 각 출력 목적물 복사본은 암호화되어(713), 다른 SAOCRS를 포함하는 적당한 사람, 장치 또는 다른 시스템을 위하여 통과되거나 또는 저장된다(714).The XML tag of each copy of the output object 707 selected within SAOCRS 706 is associated with a label in the encrypted access layer 710 to determine the appropriate role-based access label or labels to be used for encrypting each object 712. Associated processing (711). Each copy of the output destination is encrypted (713) and passed or stored (714) for the appropriate person, device, or other system, including other SAOCRS.

도 10은 전체적으로 예정된 조건 검사를 제공하는 SAOCRS에서 복사된 목적물을 식별, 복사, 암호화하기 위한 XML의 사용을 보여주는 흐름도이다. 필요할 때 때때로 SAOCRS는 그들 전체를 고려하여 시스템의 조건을 공정하게 나타내며 동작 또는 감사 활동에 대한 기초를 형성하는 목적물의 진실성을 확인하는 경우에 도움이 되는 입력 및 출력 목적물(800-805)을 선택한다. 선택된 목적물(800-805)은 목적물 선택을 돕는 XML 태그에 관련되거나 또는 관련되지 않는다. 그들은 가각 다중 분리된 프로세스 중의 하나의 입력 또는 출력 중 어느 하나일 수 있다. 그들은 다른 SAOCRS로부터 암호화된 입력 또는 출력 목적물인 수 있다.FIG. 10 is a flow diagram illustrating the use of XML to identify, copy, and encrypt a copied object in SAOCRS providing an overall conditional check. Sometimes, when necessary, SAOCRS considers all of them to select input and output objects (800-805) to help in fairness of the conditions of the system and to verify the authenticity of the objects that form the basis for action or audit activity. . The selected objects 800-805 may or may not be associated with an XML tag that aids in object selection. They may be either inputs or outputs of one of each multiple separate process. They may be input or output objects encrypted from other SAOCRS.

목적물 속성을 식별하는 XML 태그를 사용하여 가능한 경우 SAOCRS(806)는 제어 요구사항에 따라 어떤 목적물을 선택하며 동일한 복사본이 만들어지게 된다(807). 오리지날 목적물(808)은 의도한 프로세스(809)로 통과하도록 허용된다.Using an XML tag identifying the object attribute, the SAOCRS 806, if possible, selects a certain object according to the control requirements and makes an identical copy (807). The original object 808 is allowed to pass to the intended process 809.

SAOCRS(806) 내에서 선택된 목적물의 각 복사(810)의 XML 태그는 각 목적물(810)을 암호화하는데(812) 사용되도록 적당한 역할-기반 액세스 라벨 또는 라벨들을 결정 하도록 암호화된 액세스 계층 내의 라벨(811)과 관련 처리된다. XML 태그가 없는 각 선택된 목적물은 각 목적물을 암호화하는데(812) 사용되도록 적당한 역할-기반 액세스 라벨 또는 라벨들을 결정하도록 암호화된 액세스 계층 내의 라벨(811)과 관련 처리된다. 각 세트의 목적물(810)을 암호화하는데(812) 사용된 라벨(811)에 기초하여 SAOCRS(806)는 하나의 전체적인 목적물(813) 내에 모든 목적물을 암호화하는데(814) 이용되도록 적당한 라벨 또는 라벨들(811)을 결정한다. 이를 포함하여 시스템 조건을 검증하는 암호화된 목적물을 포함하는 암호화된 목적물(814)은 그 후 다른 SAOCRS를 포함하는 적당한 사람, 장치 또는 다른 시스템을 위하여 통과되거나 또는 저장된다(815).The XML tag of each copy 810 of the selected object in SAOCRS 806 is a label 811 in the encrypted access layer to determine the appropriate role-based access label or labels to be used to encrypt 812 each object 810. Related to). Each selected object without an XML tag is processed with a label 811 in the encrypted access layer to determine the appropriate role-based access label or labels to be used to encrypt 812 each object. Based on the label 811 used to encrypt (812) each set of objects 810, the SAOCRS 806 is suitable label or labels to be used to encrypt (814) all objects within one overall object 813. Determine 811. Encrypted object 814, including the encrypted object that verifies the system conditions, including this, is then passed or stored 815 for a suitable person, device, or other system that includes another SAOCRS.

따라서, 암호화 프로세스를 제공하며 안전한 회계 및 동작 제어를 제공하는 시스템이 설명되었다. 이러한 프로세스는 XML 포맷을 이용하는 프로세스 또는 계획 또는 태그 데이터 요소를 이용하는 어떤 다른 계획에 유리하게 적용될 수 있다. 더욱이, 어떤 암호화 프로세스가 사용될 수 있으며, 특히 유리한 암호화 프로세스 및 시스템이 상기한 바와 같이 안전한 동작 제어를 제공하는 용도로 설명되었다.Thus, a system has been described that provides an encryption process and provides secure accounting and operational control. This process may be advantageously applied to a process using the XML format or to any other plan using a tag or data element. Moreover, any encryption process can be used, and particularly advantageous encryption processes and systems have been described for the purpose of providing secure operational control as described above.

Claims (50)

데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 암호화하는 프로세스에 있어서,In the process of encrypting an object that matches a data format and has an object tag associated with it, 다수의 키 스플리트를 묶어서 암호화키를 발생하는 단계;Binding a plurality of key splits to generate an encryption key; 암호화키를 가지고 암호화 알고리즘을 초기화하는 단계; 및Initializing an encryption algorithm with an encryption key; And 목적물 태그에 의해 적어도 일부가 결정된 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부에 초기화된 암호화 알고리즘을 적용하여 암호화된 목적물을 형성하는 단계를 포함하며,Applying an initialized encryption algorithm to at least a portion of the object according to at least one encryption scheme determined at least in part by the object tag to form an encrypted object, 다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부에 대응하는 것을 특징으로 하는 암호화 프로세스.Wherein at least one of the plurality of key splits corresponds to at least a portion of the biometric. 제1항에 있어서, 의도된 수신자에 의해 후속된 사용을 위해 암호화된 목적물을 저장하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스. 2. The encryption process of claim 1, further comprising storing the encrypted object for subsequent use by the intended recipient. 제1항에 있어서, 의도된 수신자에 의해 후속된 사용을 위해 암호화된 목적물을 저장하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스. 2. The encryption process of claim 1, further comprising storing the encrypted object for subsequent use by the intended recipient. 제1항에 있어서, 상기 목적물은 확장성 생성 언어(XML) 요소인 것을 특징으로 하는 암호화 프로세스.2. The encryption process of claim 1 wherein the object is an Extensible Generation Language (XML) element. 제1항에 있어서, 다수의 키 스플리트의 적어도 하나의 키 스플리트를 암호화된 목적물에 부가하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.2. The encryption process of claim 1 further comprising adding at least one key split of the plurality of key splits to an encrypted object. 제1항에 있어서, 다수의 키 스플리트의 적어도 하나의 키 스플리트와 연관된 기준 데이터를 암호화된 목적물에 부가하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.2. The process of claim 1, further comprising adding reference data associated with at least one key split of the plurality of key splits to the encrypted object. 제1항에 있어서, 다수의 키 스플리트의 적어도 하나의 키 스플리트를 저장 매체로부터 검색하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.The encryption process of claim 1, further comprising retrieving at least one key split of the plurality of key splits from the storage medium. 제7항에 있어서, 저장 매체는 스마트 카드에 배치되어 있는 것을 특징으로 하는 암호화 프로세스.8. The encryption process according to claim 7, wherein the storage medium is disposed on a smart card. 제1항에 있어서, 암호화키를 생성하기 위하여 다수의 키 스플리트를 묶는 단계는 스마트 카드에서 수행되는 것을 특징으로 하는 암호화 프로세스.2. The encryption process of claim 1 wherein the step of binding the plurality of key splits to generate an encryption key is performed in a smart card. 조직과 연관된 암호화 시스템에서 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 암호화하는 프로세스에 있어서,In a process of encrypting an object in a cryptographic system associated with an organization that matches a data format and has an object tag associated with it, 조직에 대응하는 조직 스플리트, 유지 스플리트, 랜덤 스플리트 및 적어도 하나의 라벨 스플리트를 묶어서 암호화키를 발생하는 단계;Generating an encryption key by tying a tissue split, a maintenance split, a random split, and at least one label split corresponding to the tissue; 암호화키를 가지고 암호화 알고리즘을 초기화하는 단계; Initializing an encryption algorithm with an encryption key; 목적물 태그에 의해 적어도 일부가 결정된 초기화된 암호화 알고리즘에 따라 목적물의 적어도 일부를 암호화하여 암호화된 목적물을 형성하는 단계; 및Encrypting at least a portion of the object according to an initialized encryption algorithm determined at least in part by the object tag to form an encrypted object; And 암호화된 목적물에 결합기 데이터를 부가하는 단계를 포함하며,Adding combiner data to the encrypted object, 상기 결합기 데이터는 The combiner data is 적어도 하나의 라벨 스플리트와 암호화 알고리즘 중 적어도 하나에 대응하는 기준 데이터, Reference data corresponding to at least one of at least one label split and an encryption algorithm, 조직과 연관된 이름 데이터, Name data associated with the organization, 적어도 하나의 유지 스플리트 및 유지 스플리트와 연관된 유지 레벨, 및 At least one retention split and a retention level associated with the maintenance split, and 랜덤 스플리트를 포함하는 것을 특징으로 하는 암호화 프로세스.An encryption process comprising a random split. 제10항에 있어서, 암호화된 목적물을 의도된 수신자에 의한 후속된 사용을 위해 부가된 결합기 데이터와 함께 저장하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.12. The process of claim 10, further comprising storing the encrypted object with added combiner data for subsequent use by the intended recipient. 제10항에 있어서, 다수의 목적물로부터 목적물을 선택하는 단계를 더 포함하며, 적어도 일부가 연관된 목적물 태그에 따르는 것을 특징으로 하는 암호화 프로세스. 11. The process of claim 10, further comprising selecting an object from a plurality of objects, wherein at least a portion is in accordance with an associated object tag. 제10항에 있어서, 상기 목적물은 확장성 생성 언어(XML) 요소인 것을 특징으로 하는 암호화 프로세스.11. The process of claim 10 wherein the object is an Extensible Generation Language (XML) element. 제10항에 있어서, 적어도 하나의 증명서로부터 적어도 하나의 라벨 스플리트를 선택하는 단계를 더 포함하는 하는 것을 특징으로 하는 암호화 프로세스.11. The encryption process of claim 10 further comprising selecting at least one label split from at least one certificate. 제14항에 있어서, 선택된 적어도 하나의 라벨 스플리트는 암호화되며, 암호화키는 제1암호화키이며, 프로세스는 15. The method of claim 14, wherein the selected at least one label split is encrypted, the encryption key is a first encryption key, and the process is 사용자와 연관된 사용자 ID, 사용자와 연관된 패스워드, 및 독특한 데이터 예 중 적어도 하나 및 랜덤 값으로부터 제2암호화키를 추출하는 단계, 및Extracting a second encryption key from at least one of a user ID associated with the user, a password associated with the user, and a unique example of data and a random value, and 제2암호화키를 사용하여 선택된 적어도 하나의 라벨 스플리트를 암호 해독하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.Decrypting the selected at least one label split using a second encryption key. 제14항에 있어서, 적어도 하나의 증명서는 메모리로부터 검색되는 것을 특징으로 하는 암호화 프로세스. 15. The process of claim 14 wherein at least one certificate is retrieved from memory. 제16항에 있어서, 메모리는 스마트 카드에 배치되어 있는 것을 특징으로 하는 암호화 프로세스.17. The encryption process according to claim 16, wherein the memory is disposed on a smart card. 제14항에 있어서, 목적물이 암호화된 시점과 대응하는 시간 스탬프를 발생하 며, 결합기 데이터는 더욱이 시간 스탬프를 포함하는 것을 특징으로 하는 암호화 프로세스.15. The process of claim 14, wherein a time stamp is generated corresponding to the point in time at which the object was encrypted, and the combiner data further comprises a time stamp. 제14항에 있어서, 결합기 데이터는 더욱이, 사용자와 연관된 사용자 ID를 포함하는 것을 특징으로 하는 암호화 프로세스.The process of claim 14, wherein the combiner data further comprises a user ID associated with the user. 제10항에 있어서, 목적물이 암호화된 시점을 나타내는 시간 스탬프를 발생하며, 결합기 데이터는 더욱이 시간 스탬프를 포함하는 것을 특징으로 하는 암호화 프로세스.12. The process of claim 10, wherein a time stamp is generated that indicates when the object was encrypted, and the combiner data further comprises a time stamp. 제10항에 있어서, 결합기 데이터는 헤더 기록인 것을 특징으로 하는 암호화 프로세스.11. The process of claim 10 wherein the combiner data is a header record. 제10항에 있어서, 결합기 데이터는 더욱이 디지털 서명과 디지털 인증서 중 하나를 포함하는 것을 특징으로 하는 암호화 프로세스.11. The encryption process of claim 10 wherein the combiner data further comprises one of a digital signature and a digital certificate. 제10항에 있어서, 결합기 데이터는 더욱이 디지털 서명과 디지털 인증서를 포함하는 것을 특징으로 하는 암호화 프로세스.11. The encryption process of claim 10, wherein the combiner data further comprises a digital signature and a digital certificate. 제10항에 있어서, 암호화키는 제1암호화키이며, 프로세스는 The method of claim 10, wherein the encryption key is a first encryption key and the process is 적어도 하나의 라벨 스플리트에 적어도 부분적으로 기초하여 제2암호화키를 발생하는 단계; 및Generating a second encryption key based at least in part on the at least one label split; And 암호화 목적물에 결합기 데이터를 결합하기 전에 제2암호화키를 사용하여 랜덤 키를 암호화하는 단계를 포함하며,Encrypting the random key using the second encryption key prior to joining the combiner data to the encryption object, 결합기 데이터에 포함된 랜덤 스플리트는 암호화된 랜덤 스플리트인 것을 특징으로 하는 암호화 프로세스.And wherein the random split included in the combiner data is an encrypted random split. 제10항에 있어서, 암호화 목적물에 결합기 데이터를 부가하기 전에 헤더 스플리트를 사용하여 결합기 데이터의 적어도 일부를 암호화하는 단계를 더 포함하는 것을 특징으로 하는 암호화 프로세스.12. The process of claim 10, further comprising encrypting at least a portion of the combiner data using header splits prior to adding the combiner data to an encryption object. 제25항에 있어서, 상기 헤더 스플리트는 일정한 것을 특징으로 하는 암호화 프로세스. 27. The process of claim 25 wherein the header split is constant. 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 데이터 프로세서가 암호화하는 명령을 포함하는 저장 매체에 있어서, 상기 명령은 다수의 키 스플리트를 묶어서 암호화키를 발생하며;CLAIMS 1. A storage medium comprising instructions for a data processor to encrypt an object that matches a data format and has an object tag associated therewith, wherein the instructions bind a plurality of key splits to generate an encryption key; 암호화키를 가지고 암호화 알고리즘을 초기화하고; 그리고Initialize an encryption algorithm with an encryption key; And 목적물 태그에 의해 적어도 일부가 결정된 적어도 하나의 암호화 계획에 따라 목적물의 적어도 일부에 초기화된 암호화 알고리즘을 적용하여 암호화된 목적물을 형성 하는 것을 포함하며,Forming an encrypted object by applying an encryption algorithm initialized to at least a portion of the object according to at least one encryption scheme determined at least in part by the object tag, 다수의 키 스플리트 중 적어도 하나가 생체 측정에 적어도 일부에 대응하는 것을 특징으로 하는 저장 매체.At least one of the plurality of key splits corresponds to at least a portion of the biometric. 제27항에 있어서, 상기 명령은 다수의 목적물로부터 목적물을 선택하는 것을 더 포함하며, 적어도 일부가 연관된 목적물 태그에 따르는 것을 특징으로 하는 저장 매체. 28. The storage medium of claim 27, wherein the command further comprises selecting a destination from the plurality of destinations, at least in part in accordance with an associated destination tag. 제27항에 있어서, 상기 목적물은 확장성 생성 언어(XML) 요소인 것을 특징으로 하는 저장 매체.28. The storage medium of claim 27, wherein the object is an Extensible Generation Language (XML) element. 제27항에 있어서, 상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트를 암호화된 목적물에 부가하는 것을 더 포함하는 것을 특징으로 하는 저장 매체.28. The storage medium of claim 27, wherein the instructions further comprise adding at least one key split of the plurality of key splits to an encrypted object. 제27항에 있어서, 상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플리트와 연관된 기준 데이터를 암호화된 목적물에 부가하는 것을 더 포함하는 것을 특징으로 하는 저장 매체.28. The storage medium of claim 27, wherein the instructions further comprise adding reference data associated with at least one key split of the plurality of key splits to an encrypted object. 제27항에 있어서, 상기 명령은 다수의 키 스플리트의 적어도 하나의 키 스플 리트를 저장 매체로부터 검색하는 것을 더 포함하는 것을 특징으로 하는 저장 매체.28. The storage medium of claim 27, wherein the instructions further comprise retrieving at least one key split of the plurality of key splits from the storage medium. 제32항에 있어서, 메모리의 적어도 일부는 스마트 카드에 배치되어 있는 것을 특징으로 하는 저장 매체.33. The storage medium of claim 32, wherein at least a portion of the memory is disposed in the smart card. 제27항에 있어서, 상기 데이터 프로세서가 분배되고 암호화키를 발생하는 명령이 스마트 카드의 적어도 일부에서 실행되는 것을 특징으로 하는 저장 매체.28. The storage medium of claim 27, wherein the data processor is distributed and instructions for generating an encryption key are executed on at least a portion of a smart card. 데이터 포맷과 일치하며 그들과 연관된 목적물 태그를 갖는 목적물을 데이터 프로세서가 암호화하는 명령을 포함하는 저장 매체에 있어서, 상기 명령은 10. A storage medium comprising instructions for a data processor to encrypt a target that matches a data format and has a target tag associated with the data format. 조직에 대응하는 조직 스플리트, 유지 스플리트, 랜덤 스플리트 및 적어도 하나의 라벨 스플리트를 묶어서 암호화키를 발생하며;Encrypting the tissue split, the maintenance split, the random split, and the at least one label split corresponding to the tissue to generate an encryption key; 암호화키를 가지고 암호화 알고리즘을 초기화하고; Initialize an encryption algorithm with an encryption key; 목적물 태그에 의해 적어도 일부가 결정된 초기화된 암호화 알고리즘에 따라 목적물의 적어도 일부를 암호화하여 암호화된 목적물을 형성하며; 그리고Encrypting at least a portion of the object according to an initialized encryption algorithm determined at least in part by the object tag to form an encrypted object; And 암호화된 목적물에 결합기 데이터를 부가하는 것을 포함하며,Adding combiner data to the encrypted object, 상기 결합기 데이터는 The combiner data is 적어도 하나의 라벨 스플리트와 암호화 알고리즘 중 적어도 하나에 대응하는 기준 데이터, Reference data corresponding to at least one of at least one label split and an encryption algorithm, 조직과 연관된 이름 데이터, Name data associated with the organization, 적어도 하나의 유지 스플리트 및 유지 스플리트에 대응하는 유지 레벨, 및 At least one retaining split and a retaining level corresponding to the retaining split, and 랜덤 스플리트를 포함하며; 그리고 Includes a random split; And 암호화된 목적물을 후속된 액세스를 위해 결합기 데이터와 함께 저장하는 것을 특징으로 하는 저장 매체.And storing the encrypted object with combiner data for subsequent access. 제35항에 있어서, 상기 명령은 다수의 목적물로부터 목적물을 선택하는 것을 더 포함하며, 적어도 일부가 연관된 목적물 태그에 따르는 것을 특징으로 하는 저장 매체. 36. The storage medium of claim 35, wherein the command further comprises selecting a destination from the plurality of destinations, at least in part in accordance with an associated destination tag. 제35항에 있어서, 상기 목적물은 확장성 생성 언어(XML) 요소인 것을 특징으로 하는 저장 매체.36. The storage medium of claim 35, wherein the object is an Extensible Generation Language (XML) element. 제35항에 있어서, 상기 명령은 적어도 하나의 증명서로부터 적어도 하나의 라벨 스플리트를 선택하는 것을 더 포함하는 하는 것을 특징으로 하는 저장 매체.36. The storage medium of claim 35, wherein the instructions further comprise selecting at least one label split from at least one certificate. 제38항에 있어서, 선택된 적어도 하나의 라벨 스플리트는 암호화되며, 암호화키는 제1암호화키이며, 상기 명령은 The method of claim 38, wherein the at least one selected label split is encrypted, the encryption key is a first encryption key, and the command is 사용자와 연관된 사용자 ID, 사용자와 연관된 패스워드, 및 독특한 데이터 예 중 적어도 하나 및 랜덤 값으로부터 제2암호화키를 추출하며, 그리고Extract a second encryption key from at least one of a user ID associated with the user, a password associated with the user, and a unique data example and a random value, and 제2암호화키를 사용하여 선택된 적어도 하나의 라벨 스플리트를 암호 해독하는 것을 더 포함하는 것을 특징으로 하는 저장 매체.And decrypting the selected at least one label split using a second encryption key. 제38항에 있어서, 상기 명령은 메모리로부터 적어도 하나의 증명서를 검색하는 것을 특징으로 하는 저장 매체.The storage medium of claim 38, wherein the command retrieves at least one certificate from a memory. 제40항에 있어서, 메모리는 스마트 카드에 배치되어 있는 것을 특징으로 하는 저장 매체.41. The storage medium of claim 40, wherein the memory is disposed on a smart card. 제38항에 있어서, 상기 명령은 목적물이 암호화된 시점과 대응하는 시간 스탬프를 발생하며, 결합기 데이터는 더욱이 시간 스탬프를 포함하는 것을 특징으로 하는 저장 매체.39. The storage medium of claim 38, wherein the command generates a time stamp corresponding to the point in time at which the object was encrypted, and the combiner data further comprises a time stamp. 제38항에 있어서, 결합기 데이터는 더욱이, 사용자와 연관된 사용자 ID를 포함하는 것을 특징으로 하는 저장 매체.The storage medium of claim 38, wherein the combiner data further comprises a user ID associated with the user. 제35항에 있어서, 상기 명령은 목적물이 암호화된 시점을 나타내는 시간 스탬프를 발생하며, 결합기 데이터는 더욱이 시간 스탬프를 포함하는 것을 특징으로 하는 저장 매체.36. The storage medium of claim 35, wherein the command generates a time stamp indicating when the object was encrypted, and the combiner data further comprises a time stamp. 제35항에 있어서, 결합기 데이터는 헤더 기록인 것을 특징으로 하는 저장 매체.36. The storage medium of claim 35, wherein the combiner data is a header record. 제35항에 있어서, 결합기 데이터는 더욱이 디지털 서명과 디지털 인증서 중 하나를 포함하는 것을 특징으로 하는 저장 매체.36. The storage medium of claim 35, wherein the combiner data further comprises one of a digital signature and a digital certificate. 제35항에 있어서, 결합기 데이터는 더욱이 디지털 서명과 디지털 인증서를 포함하는 것을 특징으로 하는 저장 매체.36. The storage medium of claim 35, wherein the combiner data further comprises a digital signature and a digital certificate. 제35항에 있어서, 암호화키는 제1암호화키이며, 상기 명령은 36. The method of claim 35, wherein the encryption key is a first encryption key and the command is 적어도 하나의 라벨 스플리트에 적어도 부분적으로 기초하여 제2암호화키를 발생하며; 그리고Generate a second encryption key based at least in part on the at least one label split; And 암호화 목적물에 결합기 데이터를 결합하기 전에 제2암호화키를 사용하여 랜덤 키를 암호화하는 것을 포함하며,Encrypting the random key using a second encryption key prior to joining the combiner data to the encryption object, 결합기 데이터에 포함된 랜덤 스플리트는 암호화된 랜덤 스플리트인 것을 특징으로 하는 저장 매체.And the random split included in the combiner data is an encrypted random split. 제35항에 있어서, 상기 명령은 암호화 목적물에 결합기 데이터를 부가하기 전에 헤더 스플리트를 사용하여 결합기 데이터의 적어도 일부를 암호화하는 것을 더 포함하는 것을 특징으로 하는 저장 매체.36. The storage medium of claim 35, wherein the instructions further comprise encrypting at least a portion of the combiner data using a header split before adding the combiner data to an encryption object. 제49항에 있어서, 상기 헤더 스플리트는 일정한 것을 특징으로 하는 저장 매체.50. The storage medium of claim 49, wherein the header split is constant.
KR1020077027520A 2007-11-26 2005-04-25 Process of encryption and operational control of tagged data elements KR20080014795A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020077027520A KR20080014795A (en) 2007-11-26 2005-04-25 Process of encryption and operational control of tagged data elements

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020077027520A KR20080014795A (en) 2007-11-26 2005-04-25 Process of encryption and operational control of tagged data elements

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020117008887A Division KR20110079660A (en) 2005-04-25 2005-04-25 Process of encryption and operational control of tagged data elements-1

Publications (1)

Publication Number Publication Date
KR20080014795A true KR20080014795A (en) 2008-02-14

Family

ID=39341871

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077027520A KR20080014795A (en) 2007-11-26 2005-04-25 Process of encryption and operational control of tagged data elements

Country Status (1)

Country Link
KR (1) KR20080014795A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117556850A (en) * 2023-11-13 2024-02-13 中国计量科学研究院 Method and system for taking RFID tag as carrier of digital calibration certificate
CN117556850B (en) * 2023-11-13 2024-05-03 中国计量科学研究院 Method and system for taking RFID tag as carrier of digital calibration certificate

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117556850A (en) * 2023-11-13 2024-02-13 中国计量科学研究院 Method and system for taking RFID tag as carrier of digital calibration certificate
CN117556850B (en) * 2023-11-13 2024-05-03 中国计量科学研究院 Method and system for taking RFID tag as carrier of digital calibration certificate

Similar Documents

Publication Publication Date Title
KR20110079660A (en) Process of encryption and operational control of tagged data elements-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
US6745327B1 (en) Electronic certificate signature program
US8630421B2 (en) Cryptographic key backup and escrow system
EP1374473B1 (en) Method and apparatus for secure cryptographic key generation, certification and use
US6401206B1 (en) Method and apparatus for binding electronic impressions made by digital identities to documents
US5557346A (en) System and method for key escrow encryption
JP7426031B2 (en) Key security management system and method, medium, and computer program
US20070014399A1 (en) High assurance key management overlay
US20120017095A1 (en) Software Service for Encrypting and Decrypting Data
US20020062451A1 (en) System and method of providing communication security
US20090097657A1 (en) Constructive Channel Key
US20040022390A1 (en) System and method for data protection and secure sharing of information over a computer network
KR19990044692A (en) Document authentication system and method
KR19990022451A (en) Multilevel digital signature method and system
Ritzdorf et al. Toward shared ownership in the cloud
JP2023548572A (en) Storing sensitive data on the blockchain
KR20080028198A (en) Method and system for secure management of personal digital assets
CN110445756B (en) Method for realizing searchable encryption audit logs in cloud storage
KR20080014795A (en) Process of encryption and operational control of tagged data elements
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

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee