KR20160072178A - Method of establishing a trusted identity for an agent device - Google Patents

Method of establishing a trusted identity for an agent device Download PDF

Info

Publication number
KR20160072178A
KR20160072178A KR1020167012709A KR20167012709A KR20160072178A KR 20160072178 A KR20160072178 A KR 20160072178A KR 1020167012709 A KR1020167012709 A KR 1020167012709A KR 20167012709 A KR20167012709 A KR 20167012709A KR 20160072178 A KR20160072178 A KR 20160072178A
Authority
KR
South Korea
Prior art keywords
authentication
registry
agent device
agent
information
Prior art date
Application number
KR1020167012709A
Other languages
Korean (ko)
Other versions
KR102169947B1 (en
Inventor
윌리엄 알렌 커티스
더글라스 마일즈 안손
케리 매과이어 발란자
Original Assignee
에이알엠 아이피 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US14/056,468 external-priority patent/US9860235B2/en
Priority claimed from US14/056,459 external-priority patent/US9307405B2/en
Priority claimed from US14/056,423 external-priority patent/US10069811B2/en
Application filed by 에이알엠 아이피 리미티드 filed Critical 에이알엠 아이피 리미티드
Publication of KR20160072178A publication Critical patent/KR20160072178A/en
Application granted granted Critical
Publication of KR102169947B1 publication Critical patent/KR102169947B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0431Key distribution or pre-distribution; Key agreement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/068Authentication using credential vaults, e.g. password manager applications or one time password [OTP] applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/003
    • H04W4/006
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/38Services specially adapted for particular environments, situations or purposes for collecting sensor information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/69Identity-dependent
    • H04W12/71Hardware identity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Telephonic Communication Services (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

하나 이상의 애플리케이션 제공 장치(6)와 신뢰된 통신을 수행하기 위한 에이전트 디바이스(4)에 대해 신뢰된 신원이 확립될 수 있다. 신뢰된 신원을 확립하는 방법은, 다수의 인증 모델들 중 어느 것이 에이전트 디바이스(4)를 고유하게 인증하는데 이용되는 선택된 인증 모델인지를 판정하는 단계(100)를 포함한다. 선택된 모델에 따라 제1 및 제2 인증 정보가 생성된다(102). 제1 인증 정보는 디바이스의 신원을 고유하게 인증하기 위한 것이고, 제2 인증 정보는 에이전트 디바이스가 제1 인증 정보를 가지고 있는지를 확인하기 위한 것이다. 제1 인증 정보는 에이전트 디바이스(4)에 임베딩되는 반면(104) 제2 인증 정보는 에이전트 디바이스들의 디바이스를 유지하기 위한 레지스트리 장치(8)에 전송된다(106). 어느 것이 선택된 인증 모델인지를 식별하는 인증 모델 정보가 또한 레지스트리(8)에 전송된다(106).A trusted identity can be established for one or more application providing devices 6 and agent device 4 for performing trusted communication. The method for establishing a trusted identity includes determining (100) which of a plurality of authentication models is the selected authentication model used to uniquely authenticate the agent device (4). The first and second authentication information is generated according to the selected model (102). The first authentication information is for authenticating the identity of the device uniquely and the second authentication information is for confirming that the agent device has the first authentication information. The first authentication information is embedded in the agent device 4 104 while the second authentication information is sent 106 to the registry device 8 for maintaining the devices of the agent devices. Authentication model information identifying which one is the selected authentication model is also sent to the registry 8 (106).

Description

에이전트 디바이스에 대한 신뢰된 신원을 확립하는 방법{METHOD OF ESTABLISHING A TRUSTED IDENTITY FOR AN AGENT DEVICE}[0001] METHOD OF ESTABLISHING A TRUSTED IDENTITY FOR AN AGENT DEVICE [0002]

본 발명은 데이터 처리 분야에 관한 것이다. 더 구체적으로는, 본 발명은 에이전트 디바이스에 대한 신뢰된 신원을 확립하는 방법에 관한 것이다.The present invention relates to the field of data processing. More specifically, the present invention relates to a method for establishing a trusted identity for an agent device.

가정, 기타의 건물 또는 실외 환경 내에는, 다른 처리 디바이스와 상호작용하는 것을 허용하는 처리 및 통신 능력을 갖는 지속적으로 증가하는 수의 디바이스들이 있다. 매일 객체들과 비교적 소형 처리 디바이스들은 서로 및 중앙 플랫폼에 "사물 인터넷"의 일부로서 접속될 수 있다. 예를 들어, 가정 내의 스프링클러 시스템은 다양한 습도 센서로부터 정보를 수집하여 습도 정보에 기초해 스플링클러의 작동을 제어할 수 있다. 또한, 헬스케어 제공자는 집에 있는 환자의 건강을 추적하기 위해 무선 센서(예를 들어, 심박수 모니터 또는 환자가 처방된 약물을 복용하고 있는지를 모니터링하기 위한 센서)를 이용할 수 있다.Within a home, other building or outdoor environment, there are an ever-increasing number of devices with processing and communication capabilities that allow them to interact with other processing devices. The daily objects and relatively small processing devices may be connected to each other and to the central platform as part of the "Internet of Things ". For example, a sprinkler system in the home can collect information from various humidity sensors and control the operation of the sprinkler based on humidity information. The healthcare provider can also use a wireless sensor (e.g., a heart rate monitor or a sensor to monitor whether the patient is taking the prescribed medication) to track the health of the patient at home.

따라서, 다양한 응용에서, 하나 이상의 에이전트 디바이스와 상호작용하는 중앙 애플리케이션 제공 장치가 있을 수 있으며, 하나 이상의 에이전트 디바이스는 애플리케이션 제공 장치에 데이터를 제공하고 및/또는 애플리케이션 제공 장치에 의해 제어된다. 에이전트 디바이스들은, 복잡성, 처리 자원, 하드웨어 및 목적의 관점에서 상당히 상이할 수 있다. 에이전트 디바이스와 애플리케이션 제공 장치 사이에 신뢰를 제공하여 애플리케이션 제공자가 에이전트 디바이스로부터 수신된 데이터의 유효성을 신뢰할 수 있고 에이전트 디바이스가 애플리케이션 제공 장치로부터 수신된 임의의 명령을 신뢰할 수 있게 하는 것이 중요할 수 있다. 그러나, 사물 인터넷 내의 많은 에이전트 디바이스들은 처리 능력이 거의 없기 때문에, 애플리케이션 제공 장치와의 신뢰된 관계를 확립하기 위해 에이전트 디바이스에 자원을 제공하는 것은 어려울 수 있고 에이전트 디바이스의 비용을 상당히 증가시킬 수 있다. 이러한 에이전트 디바이스의 급속하고 광범위한 배치는 설치를 가능한 한 신속하고 효율적이게 하고자 하는 바람이 있다는 것을 의미한다. 본 기술은 이들 문제점을 해결하고자 한다.Thus, in various applications, there may be a central application providing device that interacts with one or more agent devices, and one or more agent devices provide data to the application providing device and / or are controlled by the application providing device. Agent devices can vary considerably in terms of complexity, processing resources, hardware, and purpose. It may be important to provide trust between the agent device and the application providing device so that the application provider can trust the validity of the data received from the agent device and allow the agent device to trust any command received from the application providing device. However, since many agent devices in the things Internet have little processing power, it can be difficult to provide resources to the agent device to establish a trusted relationship with the application providing device, and can significantly increase the cost of the agent device. The rapid and extensive deployment of these agent devices means that there is a desire to make installation as fast and efficient as possible. This technique aims to solve these problems.

한 양태로부터 볼 때, 본 발명은, 하나 이상의 애플리케이션 제공 장치와의 신뢰된 통신을 수행하기 위한 에이전트 디바이스에 대한 신뢰된 신원을 확립하는 방법을 제공하며, 이 방법은 하기 단계들을 포함한다:Viewed from one aspect, the invention provides a method of establishing a trusted identity for an agent device for performing trusted communication with one or more application providing devices, the method comprising the steps of:

(a) 복수의 인증 모델 중 어느 것이 에이전트 디바이스를 고유하게 인증하는데 이용되는 선택된 인증 모델인지를 판정하는 단계;(a) determining which of a plurality of authentication models is a selected authentication model used to uniquely authenticate an agent device;

(b) 선택된 인증 모델에 따라 제1 인증 정보와 제2 인증 정보를 생성 ―제1 인증 정보는 에이전트 디바이스의 신원을 고유하게 인증하기 위한 것이고, 제2 인증 정보는 에이전트 디바이스가 제1 인증 정보를 갖고 있는지를 확인하기 위한 것임― 하는 단계;(b) generating first authentication information and second authentication information in accordance with the selected authentication model, the first authentication information uniquely authenticating the identity of the agent device, and the second authentication information indicating that the agent device transmits the first authentication information To check if the user has the password;

(c) 제1 인증 정보를 에이전트 디바이스에 임베딩하는 단계; 및(c) embedding the first authentication information in the agent device; And

(d) 에이전트 디바이스들의 디바이스 레지스트리를 유지하기 위한 레지스트리 장치에, 제2 인증 정보와, 복수의 인증 모델 중 어느 것이 에이전트 디바이스에 의해 이용되는 선택된 인증 모델인지를 식별하는 인증 모델 정보를 전송하는 단계.(d) sending, to the registry device for maintaining the device registry of the agent devices, second authentication information and authentication model information identifying which one of the plurality of authentication models is the selected authentication model used by the agent device.

레지스트리 장치는, 하나 이상의 애플리케이션 제공 장치와 통신하는데 대해 신뢰될 수 있는 에이전트 디바이스들의 디바이스 레지스트리를 유지할 수 있다. 레지스트리는 에이전트 디바이스를 인증하기 위한 인증 정보를 유지할 수 있다. 그러나, 본 기술은 하나의 인증 모델이 모든 종류의 에이전트 디바이스에 적합하지 않을 수도 있다는 것을 인식한다. 일부 에이전트 디바이스는 높은 보안 요건을 가지므로, 구현하기에 비교적 비싸더라도 이러한 디바이스들에 대해 보안 인증 모델이 적절할 수 있다. 반면, 예를 들어, 날씨 예보 애플리케이션에서의 온도 모니터 등의 다른 에이전트 디바이스들의 경우, 보안은 그렇게 중요하지 않을 수 있고 인증 모델은 단순히 센서가 식별될 수 있고 그 데이터가 유효하다고 신뢰되는 것만을 요구할 수 있다. 이러한 디바이스들의 경우, 비용을 절감하기 위해 보안성이 덜한 인증 모델이 선호될 수 있다. 따라서, 본 기술은, 상이한 에이전트 디바이스들에 대해 스케일가능한 보안 능력을 제공하는 것이 유용하다고 인식한다.The registry device may maintain a device registry of agent devices that may be trusted for communicating with one or more application providing devices. The registry can maintain authentication information for authenticating the agent device. However, the present technique recognizes that one authentication model may not be suitable for all kinds of agent devices. Some agent devices have high security requirements, so even though they are relatively expensive to implement, a secure authentication model may be appropriate for these devices. On the other hand, for other agent devices, such as temperature monitors in weather forecasting applications, for example, security may not be so important and the authentication model may simply require that the sensor be identified and the data trusted have. For these devices, less secure authentication models may be preferred to reduce costs. Thus, the present technique recognizes that it is useful to provide scalable security capabilities for different agent devices.

따라서, 에이전트 디바이스에 대한 신뢰된 신원을 확립할 때, 복수의 인증 모델 중 하나가 디바이스를 고유하게 인증하기 위해 이용되도록 선택될 수 있다. 그 다음, 선택된 인증 모델에 따라 제1 및 제2 인증 정보가 생성될 수 있다. 제1 인증 정보는 그 신원을 고유하게 인증하기 의해 에이전트 디바이스에 의해 보유되는 정보이고, 제2 인증 정보는 에이전트 디바이스가 제1 인증 정보를 갖고 있는지를 확인하기 위한 정보이다. 제2 인증 정보는 디바이스 레지스트리에 등록하기 위해 레지스트리 장치에 전송될 수 있다. 레지스트리 장치에는 또한, 복수의 인증 모델 중 어느 것이 에이전트 디바이스에 의해 이용되는지를 식별하는 인증 모델 정보가 제공될 수 있다.Thus, when establishing a trusted identity for an agent device, one of a plurality of authentication models may be selected to be used to authenticate the device uniquely. Then, the first and second authentication information may be generated according to the selected authentication model. The first authentication information is information held by the agent device by uniquely authenticating the identity thereof, and the second authentication information is information for confirming whether the agent device has the first authentication information. The second authentication information may be transmitted to the registry device for registration in the device registry. The registry device may also be provided with authentication model information that identifies which of a plurality of authentication models is used by the agent device.

이런 방식으로, 스케일가능한 인증 프로파일이 에이전트 디바이스에 대해 셋업될 수 있어서 그 특정한 디바이스에 대해 요구되는 보안에 대비한 구현 비용을 밸런싱할 수 있다. 또한, 어느 모델이 이용되었는지를 식별하는 정보를 레지스트리에 유지함으로써, 다른 디바이스들이 레지스트리에 질의하여 특정한 에이전트 디바이스의 신뢰 정도를 확립하고 그에 따라 그 에이전트 디바이스를 어떻게 이용할지를 판정할 수 있다. 예를 들어, 소정의 보안 애플리케이션은 그 인증 모델이 소정의 최소한의 보안 요건 아래에 해당하는 에이전트 디바이스를 이용하지 않기로 선택할 수 있다. 이런 방식으로 신뢰가 확립된 레지스트리와 에이전트 디바이스에 의해 제공되는 전체 플랫폼은 에이전트 디바이스들의 신원 및 보안과 그들의 대응하는 애플리케이션에 대한 더 큰 확신을 허용한다.In this way, a scalable authentication profile can be set up for the agent device, balancing the implementation cost against the security required for that particular device. Also, by keeping information identifying which model was used in the registry, other devices can query the registry to establish the degree of trust of a particular agent device and determine how to use the agent device accordingly. For example, a given security application may choose not to use an agent device whose authentication model is below a certain minimum security requirement. The entire platform provided by trusted registry and agent devices in this manner allows greater assurance of identity and security of agent devices and their corresponding applications.

일반적으로, 상이한 인증 모델들은 상이한 보안 레벨들을 제공할 수 있다. 이들 상이한 보안 레벨들은 통상적으로 상이한 구현 비용을 수반한다. 예를 들어, 더 높은 보안을 구현하는 것은 에이전트 디바이스에 소정 자원이 제공될 것을 요구할 수 있어서, 디바이스를 제조하는 비용을 증가시킬 수 있다.In general, different authentication models may provide different security levels. These different security levels typically involve different implementation costs. For example, implementing higher security may require an agent device to be provided with certain resources, which may increase the cost of manufacturing the device.

일단 선택된 인증 모델이 판정되고 나면, 이 방법은, 선택된 인증 모델을 구현하기 위해 에이전트 디바이스에 인증 자원들을 제공하는 단계를 포함할 수 있다. 예를 들어, 에이전트 디바이스의 제조 프로세스 동안에 신뢰된 신원이 확립될 수 있고, 그 다음, 일단 모델이 선택되고 나면 소정의 자원이 에이전트 디바이스 내에 구축될 수 있다. 예를 들어, 자원은, 인증 정보를 저장하기 위한 보호된 저장소, 또는 인증 정보를 생성하기 위한 회로를 포함할 수 있고, 이것은 어느 모델이 선택되는지에 따라 상이할 수 있다.Once the selected authentication model is determined, the method may include providing authentication resources to the agent device to implement the selected authentication model. For example, a trusted identity can be established during the manufacturing process of the agent device, and then once the model is selected, a predetermined resource can be built in the agent device. For example, the resource may include a protected repository for storing authentication information, or circuitry for generating authentication information, which may differ depending on which model is selected.

대안으로서, 일단 에이전트 디바이스가 보호된 저장소 또는 키 생성 능력 등의 소정의 인증 자원과 함께 이미 제조되고 나면 신뢰된 신원이 확립될 수 있다. 이 경우, 인증 모델의 선택은 인증 자원이 이용가능한 소정의 정도로 제한될 수 있다. 그럼에도 불구하고, 선택이 이루어질 수 있고 어느 모델이 선택된 인증 모델인지의 표시가 레지스트리에 제공될 수 있다.Alternatively, once the agent device has already been fabricated with a predefined authentication resource, such as a protected repository or key generation capability, a trusted identity can be established. In this case, the selection of the authentication model may be limited to a certain degree to which the authentication resource is available. Nevertheless, a selection can be made and an indication of which model is the selected authentication model can be provided in the registry.

일부 예에서, 에이전트 디바이스와 분리된 외부 디바이스는 제1 및 제2 인증 정보를 생성할 수 있고, 그 다음 제1 인증 정보는 외부 디바이스에 의해 에이전트 디바이스에 임베딩될 수 있다. 예를 들어, 외부 디바이스는 컴퓨터 또는 에이전트 디바이스의 제조사 또는 배포자에 의해 운영되는 기타의 지원 시스템일 수 있다. 보안상의 이유로, 외부 디바이스가, 제1 인증 정보를 다른 임의의 디바이스에 전송하지 않고, 제1 인증 정보를 에이전트 디바이스에 임베딩된 이후에 삭제하는 것이 유용할 수 있다. 이런 방식으로, 제1 인증 정보는 에이전트 디바이스만으로 제약될 수 있고 다른 디바이스들은 이에 액세스하지 못할 수 있다. 이것은 또 다른 디바이스가 제1 인증 정보를 이용하여 자신을 에이전트 디바이스처럼 통과시킬 가능성을 감소시킨다.In some examples, an external device separate from the agent device may generate the first and second authentication information, and then the first authentication information may be embedded in the agent device by an external device. For example, the external device may be a computer or other support system operated by the manufacturer or distributor of the agent device. For security reasons, it may be useful for an external device to delete the first authentication information after it has been embedded in the agent device, rather than sending the first authentication information to any other device. In this way, the first authentication information may be restricted to the agent device only and other devices may not be able to access it. This reduces the likelihood that another device will use the first authentication information to pass itself as an agent device.

대안으로서, 제1 및 제2 인증 정보는 에이전트 디바이스 내의 회로에 의해 내부적으로 생성될 수도 있다. 예를 들어, 디바이스는 제1 및 제2 인증 정보에 대응하는 키를 생성할 수 있는 키 생성기를 가질 수 있다. 이 접근법은, 제1 인증 정보가 에이전트 디바이스 외부에 결코 존재한 적이 없어서, 다른 어떤 디바이스도 에이전트 디바이스의 신원을 훔칠 수 없기 때문에 더욱 안전할 수 있다. 그러나, 이 접근법은, 키 생성 자원이 에이전트 디바이스에 제공될 필요가 있으므로 제조 비용을 증가시킬 수 있다. 예를 들어, 키 생성은 양호한 난수 생성이 제공될 것을 요구할 수 있어서, 구현하기에 비쌀 수 있다.Alternatively, the first and second authentication information may be generated internally by circuitry in the agent device. For example, the device may have a key generator capable of generating a key corresponding to the first and second authentication information. This approach can be more secure because the first authentication information has never been outside the agent device, and no other device can steal the identity of the agent device. However, this approach can increase manufacturing costs, since key generation resources need to be provided to the agent device. For example, key generation may require that good random number generation be provided, which may be expensive to implement.

제1 인증 정보를 에이전트 디바이스에 임베딩하는 것은 상이한 방식들로 수행될 수 있다. 이 방법이 디바이스 제조 동안에 수행된다면 임베딩은 제1 인증 정보를 저장하는 것 외에도 에이전트 디바이스 내에 저장 회로를 제공하는 것을 포함할 수 있다. 예를 들어, 플래시 메모리나 판독 전용 메모리(ROM)이 디바이스 내에 구축되어 제1 인증 정보를 저장할 수 있다. 대안으로서, 디바이스가 이미 저장 회로와 함께 제조되었다면, 임베딩은 제1 인증 정보를 이미 제공된 저장 회로에 저장하는 것을 포함할 수 있다.Embedding the first authentication information in the agent device may be performed in different manners. If this method is performed during device fabrication, embedding may include providing storage circuitry within the agent device in addition to storing the first authentication information. For example, a flash memory or a read only memory (ROM) may be built in the device to store the first authentication information. Alternatively, if the device has already been manufactured with a storage circuit, the embedding may include storing the first authentication information in a storage circuit already provided.

추가 보안을 위해, 제1 인증 정보는 에이전트 디바이스의 보호된 저장 영역에 임베딩될 수 있다. 예를 들어, 신뢰된 소프트웨어만이 보호된 영역으로부터 제1 인증 정보를 판독할 수 있고, 보호된 영역 내의 제1 인증 정보는 또한 오버라이트되는 것이 방지될 수 있다.For further security, the first authentication information may be embedded in the protected storage area of the agent device. For example, only trusted software can read the first authentication information from the protected area, and the first authentication information in the protected area can also be prevented from being overwritten.

상이한 인증 모델들은 다수의 방식으로 서로 상이할 수 있다. 이하의 설명은, 인증 모델들이 상이할 수 있는 다양한 방식을 논의하지만, 원한다면 이하에서 논의되는 피쳐들 중 몇 가지를 결합한 모델들이 제공될 수도 있다는 것을 이해할 것이다.Different authentication models may be different from each other in a number of ways. Although the following discussion discusses various ways in which authentication models may differ, it will be appreciated that coupled models of some of the features discussed below may be provided if desired.

일부 인증 모델의 경우, 제1 인증 정보와 제2 인증 정보는 동일한 인증 정보를 포함할 수 있다. 즉, 레지스트리는, 에이전트 디바이스가 자신을 인증하는데 역시 이용하는 공유된 키 또는 기타의 인증 정보를 저장할 수 있다. 예를 들어, AES(Advanced Encryption System) 키 등의 대칭 키가 이용될 수도 있다. 이 접근법은 구현하기에 꽤 저렴할 수 있지만, 레지스트리가 에이전트 디바이스를 고유하게 식별하는 정보에 액세스하고, 레지스트리로의 이 정보의 전송은 보안 침해에 취약할 수 있기 때문에 이 모델에 의해 달성되는 보안 레벨은 감소된다.In some authentication models, the first authentication information and the second authentication information may include the same authentication information. That is, the registry may store the shared key or other authentication information that the agent device also uses to authenticate itself. For example, a symmetric key such as an Advanced Encryption System (AES) key may be used. While this approach may be fairly inexpensive to implement, the level of security achieved by this model, as the registry accesses information that uniquely identifies the agent device, and the transmission of this information to the registry may be vulnerable to security breaches .

다른 모델들에서, 제1 및 제2 인증 정보로서 상이한 인증 정보를 제공함으로써 더 높은 보안 레벨이 달성될 수 있다. 예를 들어, 에이전트 디바이스는 제1 인증 정보로서 개인 키를 가질 수 있고 레지스트리는 제2 인증 정보로서 개인 키와는 상이한 공개 키를 가질 수 있다. 예를 들어, 개인 키와 공개 키는 ECC(elliptic curve cryptography) 키일 수도 있다. 이 접근법은, 에이전트 디바이스만이 그 개인 키에 액세스하므로 ―레지스트리에 노출되지 않아― 더욱 안전하다. 전송 단계는 공개 키를 포함하는 디지털 인증서를 레지스트리에 전송하는 단계를 포함할 수 있다. 예를 들어, 디지털 인증서는 X.509 인증서일 수 있다.In other models, a higher security level can be achieved by providing different authentication information as the first and second authentication information. For example, the agent device may have the private key as the first authentication information and the registry may have the public key different from the private key as the second authentication information. For example, the private and public keys may be ECC (elliptic curve cryptography) keys. This approach is safer because only the agent device accesses its private key - it is not exposed to the registry. The transmitting step may include transmitting the digital certificate including the public key to the registry. For example, the digital certificate may be an X.509 certificate.

상이한 인증 모델들이 달라질 수 있는 또 다른 방식은, 제1 및 제2 인증 정보가 변경가능한지 또는 변경불가능한지에 놓여 있다. 일부 모델에서, 인증 정보는 변경불가능하여 일단 에이전트 디바이스에 대해 신뢰된 신원이 확립되고 나면 인증 정보는 고정되고 변경될 수 없다. 예를 들어, 제1 인증 정보는 오버라이트될 수 없는 저장소의 영역에 기입될 수 있고, 에이전트 디바이스는 일단 제조사나 배포자를 떠나고 나면 인증 정보를 재생성하기 위한 어떠한 회로도 갖지 못할 수 있다. 이 접근법은 구현하기에 더 저렴하지만, 에이전트 디바이스의 키 정보가 손상(compromise)되면 새로운 키를 생성하는 것이 가능하지 않다. 그럼에도 불구하고, 한 디바이스에 대한 키의 손상(compromising)은, 그 키 정보가 그 디바이스에 고유한 경우 다른 임의의 에이전트 디바이스에 영향을 미칠 필요가 없다. 다른 예들에서 수 개의 에이전트 디바이스들이 동일한 인증 정보를 공유할 수 있다.Another way in which different authentication models may be different lies in whether the first and second authentication information are changeable or unchangeable. In some models, the authentication information is immutable and once the trusted identity is established for the agent device, the authentication information can not be fixed and changed. For example, the first authentication information may be written to an area of the storage that can not be overwritten, and the agent device may not have any circuitry to regenerate the authentication information once it leaves the manufacturer or distributor. While this approach is cheaper to implement, it is not possible to generate a new key if the key information of the agent device is compromised. Nevertheless, compromising of a key for one device does not need to affect any other agent device if the key information is unique to that device. In other examples, several agent devices may share the same authentication information.

반면, 다른 인증 모델들의 경우 인증 정보는 변경가능할 수 있다. 에이전트 디바이스는 제1 및 제2 인증 정보를 재생성하기 위한 인증 정보 생성 회로를 가질 수 있고, 에이전트 디바이스는 새로운 제2 인증 정보를 레지스트리 장치에 전송하여 디바이스의 레지스트리 엔트리를 업데이트할 수 있다. 이 접근법에 의하면, 키들이 주기적으로 재생성되어 키가 손상될 가능성을 감소시키므로 더 높은 보안이 달성된다.On the other hand, for other authentication models, the authentication information may be changeable. The agent device may have an authentication information generation circuit for regenerating the first and second authentication information, and the agent device may transmit the new second authentication information to the registry device to update the registry entry of the device. According to this approach, higher security is achieved because the keys are periodically regenerated to reduce the possibility of key corruption.

따라서, 이들 상이한 속성들이 결합되어 구현 비용에 대비하여 절충되는 스케일가능한 보안을 제공하는 다양한 상이한 인증 모델들을 확립할 수 있다. 예를 들어, 3가지 인증 모델이 확립될 수 있다. 제1 인증 모델에서, 제1 및 제2 인증 정보는 동일한 정보를 포함하고 변경불가능할 수 있다. 제2 인증 모델에서, 제1 및 제2 인증 정보는 상이한 인증 정보를 포함하고 변경불가능할 수 있다. 제3 인증 모델에서, 제1 및 제2 인증 정보는 상이한 인증 정보를 포함하고 변경가능할 수 있다. 이들은 에이전트 디바이스의 개발자가 적절히 이용할 애플리케이션 제공자를 선택하기 위한 상이한 옵션들을 제공한다.Thus, these different attributes can be combined to establish a variety of different authentication models that provide compromised scalable security against implementation costs. For example, three authentication models can be established. In the first authentication model, the first and second authentication information contain the same information and may be unchangeable. In the second authentication model, the first and second authentication information includes different authentication information and may be unchangeable. In the third authentication model, the first and second authentication information include different authentication information and may be changeable. They provide different options for the developer of the agent device to select the appropriate application provider to use.

인증 모델들이 상이할 수 있는 또 다른 방식은, 이들은 에이전트 디바이스가 일단 제1 레지스트리에 이미 등록되고 나면 상이한 레지스트리에 재할당되는 것을 허용하는지에 놓여 있다. 예를 들어, 사적 조직이나 정부는, 디바이스들의 인증을 더욱 직접적으로 제어하여 그 에이전트 디바이스들이 다른 조직에 의한 이용을 위해 인증되는 것을 피할 수 있도록, 그 자신의 에이전트 디바이스들의 개인 레지스트리를 운영하기를 원할 수 있다. 그러나, 또 다른 레지스트리로의 보안 이전을 지원하는 것은, 구 레지스트리가 디바이스를 더 이상 인증할 수 없도록 키 정보를 재생성하는 능력 등의, 소정의 자원이 이용가능할 것을 요구할 수 있다. 따라서, 다시 한번, 상이한 레지스트리로의 재할당을 지원하는 것과 이를 구현하는 비용 사이의 절충이 존재한다. 따라서, 모델들마다 원하는 대로 디바이스를 할당하는 능력이 제공되거나 제공되지 않을 수 있다.Another way authentication models can be different is that they allow an agent device to be reassigned to a different registry once it has already been registered in the first registry. For example, a private organization or government may want to operate a personal registry of its own agent devices so as to more directly control the authentication of the devices so that the agent devices are not authenticated for use by other organizations . However, supporting the transfer of security to another registry may require that certain resources be available, such as the ability to regenerate key information so that the old registry can no longer authenticate the device. Thus, once again, there is a trade-off between supporting relocation to different registries and implementing the cost. Thus, the ability to assign devices as desired for each model may or may not be provided.

디바이스 신원을 확립할 때, 이 방법은 또한, 에이전트 디바이스를 고유하게 식별하는 디바이스 식별자를 확립하는 단계와 이것을 디바이스에 임베딩하는 단계를 포함할 수 있다. 디바이스 식별자는 레지스트리 장치에 전송되어 레지스트리 장치가 이것을 인증 정보 및 디바이스에 대한 기타 임의의 메타데이터와 상관시키는 것을 허용할 수 있다.When establishing the device identity, the method may also include establishing a device identifier that uniquely identifies the agent device and embedding it in the device. The device identifier may be sent to the registry device to allow the registry device to correlate it with authentication information and any other metadata for the device.

또한, 레지스트리 장치를 인증하기 위해 레지스트리 인증 정보가 에이전트 디바이스에 임베딩될 수 있다. 이것은 에이전트 디바이스가 레지스트리가 유효하고 신뢰된다는 것을 체크하는 것을 허용한다.In addition, registry authentication information may be embedded in the agent device to authenticate the registry device. This allows the agent device to check that the registry is valid and trusted.

또한, 이 방법은 레지스트리 장치의 URL 또는 IP 주소 등의 레지스트리 주소를 임베딩하는 단계를 포함할 수 있다. 이것은 에이전트 디바이스가 인증을 위해 레지스트리 장치와 연락하는 것을 허용한다. 예를 들어, 에이전트 디바이스는, 처음으로 활성화될 때(예를 들어, 배치될 때 에이전트 디바이스의 처음 전원투입시에), 레지스트리 주소에 의해 식별된 레지스트리 장치와 자동으로 연락할 수 있다.The method may also include embedding a registry address such as the URL or IP address of the registry device. This allows the agent device to contact the registry device for authentication. For example, the agent device may automatically contact the registry device identified by the registry address when it is first activated (e.g., upon initial power up of the agent device when deployed).

또 다른 양태로부터 볼 때, 본 발명은 하나 이상의 애플리케이션 제공 장치와 신뢰된 통신을 수행하기 위한 에이전트 디바이스들의 디바이스 레지스트리를 유지하기 위한 레지스트리 장치를 제공하며, 이 레지스트리 장치는 하기 회로들을 포함한다:Viewed from another aspect, the invention provides a registry device for maintaining a device registry of agent devices for performing trusted communications with one or more application providing devices, the registry device comprising:

복수의 인증 모델 중 어느 것이 대응하는 에이전트 디바이스를 고유하게 인증하는데 이용되는 선택된 인증 모델인지를 식별하는 인증 모델 정보를 포함하는 대응하는 에이전트 디바이스에 대한 적어도 하나의 레지스트리 엔트리를 포함하는 디바이스 레지스트리를 저장하도록 구성된 저장 회로; 및To store a device registry that includes at least one registry entry for a corresponding agent device that includes authentication model information identifying which of a plurality of authentication models is the selected authentication model used to uniquely authenticate the corresponding agent device A configured storage circuit; And

명시된 에이전트 디바이스에 대한 인증 모델 정보를 요청하는 외부 디바이스로부터의 인증 모델 질의에 응답하여, 명시된 에이전트 디바이스에 대한 레지스트리 엔트리의 인증 모델 정보를 외부 디바이스에 전송하도록 구성된 통신 회로.In response to an authentication model query from an external device requesting authentication model information for the specified agent device, to send the authentication model information of the registry entry for the specified agent device to the external device.

어느 인증 모델이 특정한 에이전트 디바이스에 대해 이용되었는지를 식별하는 인증 모델 정보를 포함하는 레지스트리를 유지함으로써, 다른 디바이스들이 레지스트리에 질의하여 디바이스 능력을 식별할 수 있다. 이것은 애플리케이션 제공 장치들이 에이전트 디바이스에서 이용가능한 보안에 따라 그들 자신의 동작을 적합화하는 것을 허용한다. 예를 들어, 애플리케이션 제공자는, 그 보안이 애플리케이션 제공자의 목적에 충분하지 않은 인증 모델을 갖는 에이전트 디바이스와 상호작용하는 것을 피할 수 있다.By maintaining a registry containing authentication model information that identifies which authentication model was used for a particular agent device, other devices can query the registry to identify device capabilities. This allows application provisioning devices to tailor their own operation according to the security available at the agent device. For example, an application provider may avoid interacting with an agent device whose authentication is not sufficient for the purpose of the application provider.

레지스트리 장치는 에이전트 디바이스를 인증할 수 있고, 에이전트 디바이스가 인증된다면 레지스트리 장치는, 에이전트 디바이스와 애플리케이션 제공 장치 사이의 신뢰된 통신을 가능케 하기 위해 애플리케이션 키 정보를 에이전트 디바이스와 애플리케이션 제공 장치에 전송할 수 있다. 따라서, 레지스트리는 애플리케이션 키를 제공하기 위한 중개자로서 역할하여 에이전트 디바이스 그 자체가 이것을 행할 필요가 없게 한다. 이것은, 에이전트 디바이스의 구성을 간소화하는 것을 도울 수 있어서, 센서 등의 에이전트 디바이스들이 상당한 처리 능력을 갖지 않을 수 있는 사물 인터넷 내의 디바이스들에 유용하다.The registry device can authenticate the agent device, and if the agent device is authenticated, the registry device can send the application key information to the agent device and the application providing device to enable trusted communication between the agent device and the application providing device. Thus, the registry acts as an intermediary for providing the application key so that the agent device itself does not need to do this. This can be helpful in simplifying the configuration of the agent device, so it is useful for devices in the object Internet where agent devices such as sensors may not have significant processing capability.

또 다른 양태로부터 볼 때, 본 발명은 하나 이상의 애플리케이션 제공 장치와 신뢰된 통신을 수행하기 위한 에이전트 디바이스들의 디바이스 레지스트리를 유지하기 위한 레지스트리 장치를 제공하며, 이 레지스트리 장치는 하기 수단들을 포함한다:Viewed from another aspect, the present invention provides a registry device for maintaining a device registry of agent devices for performing trusted communications with one or more application providing devices, the registry device comprising:

복수의 인증 모델 중 어느 것이 대응하는 에이전트 디바이스를 고유하게 인증하는데 이용되는 선택된 인증 모델인지를 식별하는 인증 모델 정보를 포함하는 대응하는 에이전트 디바이스에 대한 적어도 하나의 레지스트리 엔트리를 포함하는 디바이스 레지스트리를 저장하기 위한 저장 수단; 및Storing a device registry including at least one registry entry for a corresponding agent device that includes authentication model information identifying which of a plurality of authentication models is the selected authentication model used to uniquely authenticate the corresponding agent device ; And

명시된 에이전트 디바이스에 대한 인증 모델 정보를 요청하는 외부 디바이스로부터의 인증 모델 질의에 응답하여 명시된 에이전트 디바이스에 대한 레지스트리 엔트리의 인증 모델 정보를 외부 디바이스에 전송하기 위한 통신 수단.Communication means for transmitting authentication model information of a registry entry for the specified agent device to an external device in response to an authentication model query from an external device requesting authentication model information for the specified agent device.

추가의 양태로부터 볼 때, 본 발명은 레지스트리 장치가 하나 이상의 애플리케이션 제공 장치와 신뢰된 통신을 수행하기 위한 에이전트 디바이스들의 디바이스 레지스트리를 유지하기 위한 방법을 제공하며, 이 방법은 하기 단계들을 포함한다:Viewed from a further aspect, the invention provides a method for maintaining a device registry of agent devices for performing trusted communication with one or more application-served devices, the method comprising the steps of:

복수의 인증 모델 중 어느 것이 대응하는 에이전트 디바이스를 고유하게 인증하는데 이용되는 선택된 인증 모델인지를 식별하는 인증 모델 정보를 포함하는 대응하는 에이전트 디바이스에 대한 적어도 하나의 레지스트리 엔트리를 포함하는 디바이스 레지스트리를 유지하는 단계;Maintaining a device registry that includes at least one registry entry for a corresponding agent device that includes authentication model information identifying which of a plurality of authentication models is the selected authentication model used to uniquely authenticate the corresponding agent device step;

외부 디바이스로부터 명시된 에이전트 디바이스에 대한 인증 모델 정보를 요청하는 인증 모델 질의를 수신하는 단계; 및Receiving an authentication model query for requesting authentication model information for an explicit agent device from an external device; And

인증 모델 질의에 응답하여, 명시된 에이전트 디바이스에 대한 레지스트리 엔트리의 인증 모델 정보를 외부 디바이스에 전송하는 단계.Sending, in response to the authentication model query, the authentication model information of the registry entry for the specified agent device to the external device.

추가적 양태로부터 보면, 본 발명은, 하나 이상의 애플리케이션 제공 장치와의 신뢰된 통신을 수행하기 위한 에이전트 디바이스들의 디바이스 레지스트리에 에이전트 디바이스를 등록하는 방법을 제공하며, 이 방법은 하기 단계들을 포함한다:Viewed from a further aspect, the invention provides a method of registering an agent device in a device registry of agent devices for performing trusted communication with one or more application providing devices, the method comprising the steps of:

(a) 복수의 인증 모델 중 어느 것이 에이전트 디바이스를 고유하게 인증하기 위해 에이전트 디바이스에 의해 이용되는 선택된 인증 모델인지를 판정하는 단계; 및(a) determining which of a plurality of authentication models is the selected authentication model used by the agent device to uniquely authenticate the agent device; And

(b) 디바이스 레지스트리를 유지하기 위한 레지스트리 장치에, 복수의 인증 모델 중 어느 것이 에이전트 디바이스에 대한 선택된 인증 모델인지를 식별하는 인증 모델 정보를 전송하는 단계.(b) transmitting to the registry device for maintaining the device registry authentication model information identifying which one of the plurality of authentication models is the selected authentication model for the agent device.

인증 모델 정보는 또한, 에이전트 디바이스의 신뢰된 신원이 이미 확립된 이후의 나중의 스테이지에서 레지스트리 장치에 전송될 수도 있다. 이 경우, 이 방법은, 에이전트 디바이스에 대해 어느 인증 모델이 이용되었는지를 판정하는 단계와 인증 모델 정보를 레지스트리 장치에 전송하는 단계를 포함할 수 있다. 인증 정보가 아직 레지스트리에 전송되지 않았다면 이것은 또한 디바이스를 레지스트리에 등록할 때 전송될 수도 있다.The authentication model information may also be sent to the registry device at a later stage after the trusted identity of the agent device has already been established. In this case, the method may include determining which authentication model is used for the agent device, and sending authentication model information to the registry device. If authentication information has not yet been transmitted to the registry, it may also be transmitted when registering the device in the registry.

본 발명의 추가적 양태, 특징, 및 이점들은 첨부된 도면들을 참조하여 이하에서 각각 더 상세히 설명될 것이다.Further aspects, features, and advantages of the present invention will be described in more detail below each with reference to the accompanying drawings.

도 1은 에이전트 디바이스와 애플리케이션 제공 장치 사이에 신뢰된 통신을 확립하기 위한 적어도 하나의 레지스트리 장치를 포함하는 시스템의 예를 개략적으로 나타낸다;
도 2는 에이전트 디바이스, 애플리케이션 제공자, 디바이스 레지스트리, 및 소비자 사이의 관계의 예를 나타낸다;
도 3은, 제조로부터 애플리케이션에서의 이용까지의 수명기간을 통한 에이전트 디바이스의 진행을 도시하는 예시적 타임라인을 나타낸다;
도 4는 에이전트 디바이스의 예를 개략적으로 나타낸다;
도 5는 인증 정보와 레지스트리 장치와의 통신을 확립하기 위한 기타의 정보를 저장하기 위한 에이전트 디바이스에 제공된 저장 영역들의 예를 개략적으로 나타낸다;
도 6은 애플리케이션 제공 장치의 예를 도시한다;
도 7은 신뢰된 디바이스 레지스터를 유지하기 위한 레지스트리 장치의 예를 도시한다;
도 8a는 에이전트 디바이스에 대한 레지스트리 엔트리의 예를 도시한다;
도 8b는 에이전트 디바이스에 대한 이벤트 레코드의 예를 도시한다;
도 9는 보안과 보안을 구현하는 비용 사이의 절충을 나타내는 그래프이다;
도 10, 11, 및 12는 에이전트 디바이스의 신원을 인증하기 위한 인증 모델들의 3가지 예를 나타낸다;
도 13은 도 10 내지 도 12에 도시된 인증 모델의 상이한 속성들을 비교하는 표이다;
도 14는 에이전트 디바이스에 대한 신뢰된 신원을 확립하는 제1 예시적 방법을 도시한다;
도 15는 에이전트 디바이스에 대한 신뢰된 신원을 확립하는 제2 예시적 방법을 도시한다;
도 16은, 에이전트 디바이스와 레지스트리 장치 사이에서 인증을 수행하고 에이전트 디바이스와 애플리케이션 제공 장치 사이에서 암호화된 통신을 확립하는 방법을 도시한다;
도 17은, 에이전트 디바이스를 사용자와 연관시키고 에이전트 디바이스를 특정한 애플리케이션과 연관시키는 방법의 예를 도시한다;
도 18은, 제1 레지스트리에 현재 등록되어 있는 에이전트 디바이스를 제2 레지스트리에 할당하는 방법의 예를 도시한다;
도 19는 다시 제1 레지스트리로 에이전트 디바이스의 소유권을 리셋하는 방법의 예를 도시한다;
도 20 내지 도 23은, 에이전트 디바이스, 레지스트리 장치 및 애플리케이션 제공 장치의 이용 사례들의 4가지 예를 도시한다.
1 schematically shows an example of a system including at least one registry device for establishing trusted communication between an agent device and an application providing device;
2 shows an example of a relationship between an agent device, an application provider, a device registry, and a consumer;
Figure 3 shows an exemplary timeline illustrating the progress of an agent device over a lifetime from manufacture to use in an application;
Figure 4 schematically shows an example of an agent device;
Figure 5 schematically illustrates an example of storage areas provided to an agent device for storing authentication information and other information for establishing communication with a registry device;
6 shows an example of an application providing apparatus;
Figure 7 shows an example of a registry device for maintaining a trusted device register;
Figure 8A shows an example of a registry entry for an agent device;
8B shows an example of an event record for an agent device;
9 is a graph showing the trade-off between cost of implementing security and security;
Figures 10, 11 and 12 illustrate three examples of authentication models for authenticating the identity of an agent device;
Figure 13 is a table comparing the different attributes of the authentication model shown in Figures 10-12;
Figure 14 illustrates a first exemplary method of establishing a trusted identity for an agent device;
Figure 15 illustrates a second exemplary method of establishing a trusted identity for an agent device;
Figure 16 illustrates a method for performing authentication between an agent device and a registry device and establishing encrypted communication between an agent device and an application providing device;
17 illustrates an example of a method of associating an agent device with a user and associating an agent device with a particular application;
18 shows an example of a method of assigning an agent device currently registered in a first registry to a second registry;
Figure 19 illustrates an example of a method for resetting the ownership of an agent device back to a first registry;
20-23 illustrate four examples of use cases of an agent device, a registry device, and an application providing device.

도 1은, 다수의 에이전트 디바이스(4), 애플리케이션 제공 장치(6), 및 레지스트리 장치(8)로 구성된 시스템(2)의 예를 나타낸다. 애플리케이션 제공 장치(6)는, 클라우드 서비스를 제공하고 하나 이상의 에이전트 디바이스(4)로부터 수집된 데이터를 이용하여 애플리케이션 프로그램을 실행하며 및/또는 하나 이상의 에이전트 디바이스(4)를 제어하기 위한 명령을 내리는 임의의 디바이스를 포함할 수 있다. 에이전트 디바이스(4)는, 애플리케이션 제공 장치(6)에 전송하기 위한 데이터를 수집하거나 애플리케이션 제공 장치(6)에 의해 제어되는 임의의 디바이스일 수 있다. 예를 들어, 에이전트 디바이스(4)는, 무선 센서 및 액츄에이터 등의, 사물 인터넷(IOT; Internet of Things) 내의 접속된 디바이스들일 수 있다. 에이전트 디바이스(4)는, 태블릿 컴퓨터 또는 모바일 전화 등의 더 큰 규모의 처리 디바이스를 포함할 수 있지만, 종종 에이전트 디바이스(4)는, 감지 데이터를 수집하고 이를 애플리케이션에 피드백하는 센서들 등의, 제한된 태스크 세트만을 수행하는 비교적 작은 규모의 디바이스, 또는 스프링클러, 수영장 펌프 또는 공기 조절 유닛 등의 연관된 객체를 제어하는 비교적 간단한 제어 유닛을 포함할 수도 있다. 에이전트 디바이스(4)는, 인터넷 접속을 경유할 수 있는 유선 또는 무선 통신을 이용하여 (애플리케이션 제공 장치(6) 및 레지스트리 장치(8) 등의) 다른 디바이스들과 통신할 수 있다. 본 출원에서, 용어 "센서"는 때때로 에이전트 디바이스의 예로서 사용되지만, 에이전트 디바이스들은 또한 감지 이외의 태스크를 수행할 수 있는 디바이스들도 포함할 수 있다는 것을 이해할 것이다.1 shows an example of a system 2 composed of a plurality of agent devices 4, an application providing device 6, and a registry device 8. The application providing device 6 may be any device that provides a cloud service and executes an application program using data collected from one or more agent devices 4 and / Lt; / RTI > devices. The agent device 4 may be any device that collects data for transmission to the application providing device 6 or is controlled by the application providing device 6. [ For example, the agent device 4 may be connected devices in the Internet of Things (IOT), such as wireless sensors and actuators. Agent device 4 may include a larger processing device, such as a tablet computer or a mobile phone, but often the agent device 4 may be a limited number of devices, such as sensors that collect sensed data and feedback it to the application A relatively small scale device that only performs a task set, or a relatively simple control unit that controls associated objects such as a sprinkler, a pool pump, or an air conditioning unit. The agent device 4 may communicate with other devices (such as the application providing device 6 and the registry device 8) using wired or wireless communication, which may be via an Internet connection. In the present application, the term "sensor" is sometimes used as an example of an agent device, but it will be appreciated that agent devices may also include devices capable of performing tasks other than detection.

에이전트 디바이스들(4)과 애플리케이션 제공 장치(6)는 암호화된 통신에 의해 통신한다. 이러한 암호화된 통신을 확립하는 것을 돕기 위해, 신뢰된 에이전트 디바이스(4)에 대한 정보를 저장하는 신뢰된 에이전트 디바이스 레지스트리를 유지하기 위한 하나 이상의 레지스트리 장치(8)가 제공된다. 레지스트리(8)는 애플리케이션 제공 장치(6)와의 에이전트 디바이스(4)의 자동화된 보안 페어링을 용이하게 하여, 애플리케이션과 에이전트 디바이스들이 상이한 제조사, 공급자 또는 배포자들에 의해 제공되더라도, 애플리케이션이 에이전트 디바이스(4)의 진본성과 데이터 무결성을 신뢰할 수 있게 하고 에이전트 디바이스(4)가 애플리케이션(6)의 진본성과 명령 무결성을 신뢰할 수 있게 한다. 레지스트리(8)는 또한 에이전트 디바이스(4)와 애플리케이션(6) 사이의 신뢰된 통신의 구성을 간소화하여, 에이전트 디바이스들(4)이 자신들과 통신하는 애플리케이션의 구체적인 세부사항을 알 필요가 없게 하고 에이전트 디바이스(4)의 사용자가 애플리케이션과의 통신을 확립하기 위한 구성 동작을 수행할 필요가 없게 한다. 대신에, 활성화될 때, 에이전트 디바이스(4)는 단순히 레지스트리(8)와 연락할 수 있고, 그러면, 레지스트리(8)는 에이전트 디바이스(4)와 애플리케이션(6)이 서로 통신하도록 구성할 수 있다.The agent devices 4 and the application providing apparatus 6 communicate by encrypted communication. To help establish this encrypted communication, one or more registry devices 8 are provided for maintaining a trusted agent device registry that stores information about trusted agent devices 4. The registry 8 facilitates automated secure pairing of the agent device 4 with the application providing device 6 so that the application can be provided to the agent device 4 ) And ensures that the agent device (4) can trust the integrity and command integrity of the application (6). The registry 8 also simplifies the configuration of trusted communication between the agent device 4 and the application 6 so that the agent devices 4 do not need to know the specific details of the application with which they communicate, Thereby making it unnecessary for the user of the device 4 to perform a configuration operation for establishing communication with the application. Instead, when activated, the agent device 4 can simply contact the registry 8, and then the registry 8 can configure the agent device 4 and the application 6 to communicate with each other.

도 1에 도시된 바와 같이, 복수의 레지스트리 장치(8)가 제공될 수 있고, 그 각각은 상이한 세트의 에이전트 디바이스(4) 및 애플리케이션 제공자(6)와 연락한다. 도 1에 도시된 바와 같이, 에이전트 디바이스(A8)가 하나보다 많은 레지스트리에 등록되는 것이 가능하다. 유사하게, 애플리케이션 제공 장치(6)는 복수의 레지스트리와 연락할 수 있다. 또한, 대부분의 에이전트 디바이스들(4)은 하나의 애플리케이션 제공 장치(6)와 통신하지만, 레지스트리가 에이전트 디바이스(4)를 복수의 애플리케이션 제공자와 통신하도록 구성하는 것도 가능하다(예를 들어, 도 1의 에이전트 디바이스(A2) 참조).As shown in FIG. 1, a plurality of registry devices 8 may be provided, each of which is in contact with a different set of agent devices 4 and application providers 6. As shown in FIG. 1, it is possible that agent device A8 is registered in more than one registry. Similarly, the application providing apparatus 6 can communicate with a plurality of registries. It is also possible for most agent devices 4 to communicate with one application providing device 6, but it is also possible for the registry to configure the agent device 4 to communicate with a plurality of application providers (e.g., (See the agent device A2 of Fig.

에이전트 디바이스(4)와 애플리케이션 제공 장치(6)의 기능은 상이한 애플리케이션들마다 상당히 달라질 수 있다. 예를 들어, 에이전트 디바이스(4)는, 에이전트 디바이스(4)에 의해 수집된 데이터에 기초하여 예보를 수행하는 날씨 애플리케이션을 수행하는 애플리케이션 제공자(6)에게 전달될 기상 데이터를 수집할 수 있다. 또한, 일부 에이전트 디바이스(4)는, 심박수, 주파된 거리 등의 사용자의 건강 프로그램(fitness program)에 대한 정보를 수집할 수 있고, 이것은 애플리케이션 제공자(6)에 의해 유지되는 건강 모니터링 애플리케이션에 피드백될 수 있다. 또 다른 예에서, 가정용 공기 조절 시스템은, 중앙 모니터링 애플리케이션(6)과, 온도 센서, 습도 센서, 사용자 구성 패널, 및 공기 조절 제어 유닛 등의 다수의 에이전트 디바이스(4)를 포함할 수 있고, 중앙 애플리케이션은 사용자 구성 패널에서 설정된 사용자의 선호사항 및 센서들의 감지에 기초하여 공기 조절 제어 유닛의 동작을 제어한다. 애플리케이션 제공 장치(6)와 하나 이상의 에이전트 디바이스(4)를 유사한 방식으로 이용할 수 있는 많은 추가적인 애플리케이션들이 있다. 예를 들어, 가정 보안, 가정 또는 거리 조명, 유틸리티 프로비전(utility provision), 건물 자동화, 치안유지, 자산 추적 및 물류 등에서의 애플리케이션들이 있을 수 있다. 레지스트리(8)는 사물 인터넷 디바이스와 애플리케이션(6) 사이에서 인증과 신뢰를 관리하기 위한 공통 아키텍쳐를 제공한다.The functions of the agent device 4 and the application providing device 6 may be significantly different for different applications. For example, the agent device 4 may collect weather data to be communicated to an application provider 6 that performs weather applications that perform a forecast based on the data collected by the agent device 4. In addition, some agent devices 4 may collect information about a user ' s fitness program, such as heart rate, ranged distance, etc., which may be fed back to the health monitoring application maintained by the application provider 6 . In another example, the domestic air conditioning system may include a central monitoring application 6 and multiple agent devices 4, such as a temperature sensor, a humidity sensor, a user configuration panel, and an air conditioning control unit, The application controls the operation of the air conditioning control unit based on the user's preferences set in the user configuration panel and the sensing of the sensors. There are many additional applications that can utilize the application providing device 6 and the one or more agent devices 4 in a similar manner. For example, there may be applications in home security, home or street lighting, utility provision, building automation, security maintenance, asset tracking and logistics. The registry 8 provides a common architecture for managing authentication and trust between the object Internet device and the application 6.

도 2는, 에이전트 디바이스(4), 애플리케이션 제공자(6), 레지스트리(8), 및 소비자(10) 사이의 관계의 예를 나타낸다. 소비자(10)는 에이전트 디바이스(4)의 물리적 소유권을 가진다. 소비자(10)는 또한, 애플리케이션 제공자(6)와 사업 관계를 가진다. 예를 들어, 애플리케이션 제공자는 사용자 ID와 패스워드를 이용하여 소비자(10)의 사용자 프로파일을 설정했을 수 있다. 이 정황에서의 소비자는, 예를 들어, 사람, 가계 또는 회사일 수 있다.2 shows an example of the relationship between the agent device 4, the application provider 6, the registry 8, and the consumer 10. The consumer 10 has physical ownership of the agent device 4. The consumer 10 also has a business relationship with the application provider 6. For example, the application provider may have configured the user profile of the consumer 10 using the user ID and password. The consumer in this context can be, for example, a person, a household, or a company.

에이전트 디바이스(4)(예를 들어, 센서)는 자신을 레지스트리(8)에 인증시키기 위한 인증 정보를 포함한다. 예를 들어, 에이전트 디바이스(4)는 그 신원을 입증하는데 이용될 수 있는 키를 가질 수 있다. 따라서, 레지스트리(8)는 에이전트 디바이스(4)의 신원을 체크하고 그것이 신뢰된 에이전트 디바이스라는 것을 확인할 수 있다. 유사하게, 레지스트리(8)와 애플리케이션 제공자(6)는 키를 교환하여 서로의 신원을 확인하고 신뢰된 관계를 확립할 수 있다. 레지스트리(8)가 에이전트 디바이스(4) 및 애플리케이션 제공 장치(6) 양쪽 모두와 신뢰를 확립하면, 레지스트리(8)는 에이전트 디바이스(4) 및 애플리케이션 제공 장치(6) 양쪽 모두에 애플리케이션 키를 프로비저닝할 수 있다. 그러면, 레지스트리(8)에 의해 제공된 애플리케이션 키는, 레지스트리(8)를 통한 통신에 대한 어떠한 필요성도 없이, 에이전트 디바이스(4)와 애플리케이션 제공자(6) 사이에서 통신을 암호화하는데 이용된다. 따라서, 레지스트리(8)는, 에이전트 디바이스(4)와 애플리케이션 제공자(6)가 그들 사이에서 직접 신뢰를 확립할 것을 필요로 하지 않고, 에이전트 디바이스(4)와 애플리케이션 제공자(6) 사이에서 신뢰된 통신의 확립을 용이하게 한다. 이것은, 에이전트 디바이스(4)가 애플리케이션 제공자(6)의 신원을 확인하기 위한 프로토콜과 암호 알고리즘을 구현하기 위한 처리 능력이 거의 없는 (온도 센서 또는 심박수 모니터 등의) 소형의 초저전력 디바이스일 수 있기 때문에 유용하다. 또한, 종종 에이전트 디바이스(4)를 설치하는 사람은 애플리케이션 제공자(6)와의 신뢰된 통신을 확립하기 위한 복잡한 구성 애플리케이션을 수행하기 위한 지식이나 정보를 갖지 못할 수도 있다. 레지스트리는 에이전트 디바이스(4)의 사용자 또는 설치자가 신뢰된 통신을 구성하는 방법을 알 필요성을 제거한다.The agent device 4 (e.g., a sensor) includes authentication information for authenticating itself to the registry 8. For example, the agent device 4 may have a key that can be used to verify its identity. Thus, the registry 8 can check the identity of the agent device 4 and verify that it is a trusted agent device. Similarly, the registry 8 and the application provider 6 can exchange keys to confirm each other's identity and establish a trusted relationship. When the registry 8 establishes trust with both the agent device 4 and the application provision device 6, the registry 8 will not provision the application key to both the agent device 4 and the application provision device 6 . The application key provided by the registry 8 is then used to encrypt communications between the agent device 4 and the application provider 6 without any need for communication via the registry 8. [ The registry 8 thus ensures that the agent device 4 and the application provider 6 do not need to establish a direct trust between them and that the trusted communication between the agent device 4 and the application provider 6 . This is because the agent device 4 may be a small ultra-low power device (such as a temperature sensor or heart rate monitor) that has little processing power to implement the encryption algorithm and the protocol for identifying the identity of the application provider 6 useful. Also, the person installing the agent device 4 often may not have the knowledge or information to perform complex configuration applications to establish trusted communications with the application provider 6. The registry eliminates the need for the user or installer of the agent device 4 to know how to configure trusted communications.

도 2에서 소비자(10)와 레지스트리(8) 사이에는 아무런 관계가 없다는 점에 유의한다. 레지스트리(8)는 사용자 ID나 패스워드 등의 소비자에 대한 어떠한 상세사항도 갖지 않으므로 어떠한 개인 상세사항도 레지스트리에 의해 전송되거나 저장되지 않는다. 소비자의 관계(10)는 오직 애플리케이션 제공자(6)에만 해당된다. 레지스트리(8)는 오직 에이전트 디바이스(4) 및 애플리케이션 제공자(6)와만 통신하고 소비자(10)와는 통신하지 않는다. 따라서, 레지스트리(8)는 에이전트 디바이스와 애플리케이션 사이에서 신뢰를 확립하기 위한 중립적 플랫폼이다. 일단 에이전트 디바이스(4)와 애플리케이션(6) 사이에 신뢰된 통신이 확립되고 나면, 레지스트리가 관여하지 않고 에이전트 디바이스와 애플리케이션 사이에서 직접 통신이 진행된다.It should be noted that there is no relationship between the consumer 10 and the registry 8 in Fig. The registry 8 does not have any details about the consumer, such as user ID or password, so no personal details are transmitted or stored by the registry. The relationship (10) of the consumer corresponds only to the application provider (6). The registry 8 only communicates with the agent device 4 and the application provider 6 and does not communicate with the consumer 10. Thus, the registry 8 is a neutral platform for establishing trust between the agent device and the application. Once a trusted communication has been established between the agent device 4 and the application 6, direct communication between the agent device and the application proceeds without the registry involved.

다른 예들에서, 도 2에 도시된 바와 같은 소비자(10)가 없을 수도 있고 대신에 에이전트 디바이스(4)는 애플리케이션 제공 장치(6)를 작동하는 동일한 조직에 속할 수도 있다. 예를 들어, 스마트 접속된 도시는, 예를 들어, 거리 조명, 트래픽 흐름, 또는 쓰레기 수거를 모니터링하기 위한 사물 인터넷 디바이스들을 도시 주변에 가질 수 있고, 도시 관리자는 감지 데이터를 제공하는 에이전트 디바이스(4)와 에이전트 디바이스(4)에 의해 획득된 데이터를 모니터링하고 이 데이터를 처리하기 위한 하나 이상의 애플리케이션 제공 장치(6) 양쪽 모두를 소유할 수 있다(예를 들어, 애플리케이션은 도시의 거주자가 상태를 체크하고 문제를 보고하기 위해 액세스할 수 있는 클라우드 플랫폼을 제공할 수 있다). 이 경우, 도 2에 도시된 바와 같은 특정한 에이전트 디바이스(4)와 연관된 소비자(10)는 없을 수도 있다. 그럼에도 불구하고, 레지스트리(8)의 이용은 에이전트 디바이스(4)의 설치를 간소화한다. 예를 들어, 거리 조명이나 쓰레기 통에 에이전트 디바이스(4)를 설치하는 계약자는 에이전트 디바이스(4)를 에이전트 디바이스(4)로부터 데이터를 수신하는 애플리케이션과 통신하도록 구성하는 방법을 알 필요가 없을 것이다. 대신에, 에이전트 디바이스(4)의 활성화시(예를 들어, 에이전트 디바이스의 전원투입이나 배치시)에, 에이전트 디바이스는 레지스트리(8)와 자동으로 통신하여 애플리케이션(6)과의 신뢰된 관계를 셋업할 수 있다.In other instances, there may be no consumer 10 as shown in FIG. 2 and instead the agent device 4 may belong to the same organization operating the application providing device 6. For example, a smartly connected city may have object internet devices for monitoring street lighting, traffic flow, or garbage collection, for example, around the city, and the city manager may have an agent device 4 (E.g., the application may be able to monitor the data obtained by the agent device 4) and possess one or more application provision devices 6 for processing the data And provide a cloud platform that can be accessed to report problems). In this case, there may not be a consumer 10 associated with a particular agent device 4 as shown in Fig. Nevertheless, the use of the registry 8 simplifies the installation of the agent device 4. For example, a contractor installing the agent device 4 in a streetlight or trash bin would not need to know how to configure the agent device 4 to communicate with an application that receives data from the agent device 4. Instead, the agent device automatically communicates with the registry 8 to establish a trusted relationship with the application 6 at the activation of the agent device 4 (e.g., upon power up or deployment of the agent device) can do.

도 3은 그 제조로부터 레지스트리(8)와의 등록 및 인증을 통해 애플리케이션 제공자(6)와의 통신이 확립될 때까지의 에이전트 디바이스(센서)(4)의 진행을 도시하는 예시적 타임라인을 도시한다. 단계 A에서, 에이전트 디바이스에 대한 시스템 온 칩(SOC)이 실리콘으로 제조된다. 단계 B에서, OEM(original equipment manufacturer) 및/또는 ODM(original device manufacturer)이 시스템 온 칩을 이용하여 에이전트 디바이스(4)를 제조한다. 제조 동안의 소정 시점에서, 고유한 디바이스 식별자가, 에이전트 디바이스의 신원을 인증하기 위한 키 정보 및 에이전트 디바이스에 대한 기타의 메타데이터와 함께, 에이전트 디바이스(4)에 임베딩된다. 단계 C에서, 에이전트 디바이스가 배포된다. 예를 들어, 사용자(10)는 상점으로부터 에이전트 디바이스(4)를 구입할 수 있고 에이전트 디바이스는 날씨 예보국 또는 시 정부 등의 기관에 제공될 수 있다. 단계 B의 제조 동안에 또는 단계 C의 배포 동안에, 등록 정보가 레지스트리(8)에 제공되어 에이전트 디바이스(4)를 신뢰된 에이전트 디바이스로서 레지스트리(8)에 등록한다. 레지스트리(8)에는 에이전트 디바이스(4)가 신뢰되는지를 확인하기 위한 키 정보 뿐만 아니라 에이전트 디바이스(4)에 대한 기타의 메타데이터가 제공될 수 있다.3 shows an exemplary timeline showing the progress of the agent device (sensor) 4 until communication with the application provider 6 is established through registration and authentication with the registry 8 from its manufacture. In step A, the system on chip (SOC) for the agent device is made of silicon. In step B, an original equipment manufacturer (OEM) and / or an original device manufacturer (ODM) manufactures the agent device 4 using the system-on-a-chip. At some point during manufacturing, a unique device identifier is embedded in the agent device 4, along with key information for authenticating the identity of the agent device and other metadata for the agent device. In step C, the agent device is deployed. For example, the user 10 may purchase the agent device 4 from a store, and the agent device may be provided to an agency such as a weather forecasting station or city government. During the manufacture of step B or during the distribution of step C, registration information is provided in the registry 8 to register the agent device 4 as a trusted agent device in the registry 8. The registry 8 may be provided with key information for confirming that the agent device 4 is trusted as well as other metadata for the agent device 4. [

이 때, 레지스트리(8)는, 고유한 ID를 갖는 에이전트 디바이스(4)가 신뢰된 에이전트 디바이스라는 것을 알지만, 어느 클라우드 서비스 애플리케이션이 에이전트 디바이스(4)로부터의 데이터를 이용할 것인지에 대해서는 모른다. 따라서, 단계 D에서, 결속 동작(binding operation)이 수행되어, 사용자(10), 에이전트 디바이스(4), 및 클라우드 애플리케이션(6)을 링크한다. 예를 들어, 에이전트 디바이스는, 참조 번호, 바코드 또는 QR 코드(Quick Response code) 등의, 어떤 종류의 디바이스 식별자를 가질 수 있다. 애플리케이션 제공자(6)는, 디바이스 식별자를 입력하거나 바코드 또는 QR 코드를 스캐닝하고 디바이스 식별자를 사용자 식별자와 함께 애플리케이션 제공자(6)에게 업로드하기 위한 웹 인터페이스 또는 스마트폰이나 태블릿 앱을 제공할 수 있다. 대안으로서, 이것은 애플리케이션 제공자에의 소비자의 등록 및 사용자로의 에이전트 디바이스의 후속된 할당 및 발송시에 애플리케이션 제공자에 의해 수행될 수도 있다. 이 때, 클라우드 서비스는 어느 사용자가 에이전트 디바이스(4)를 소유하는지를 알게 된 다음, 레지스트리(8)에게 그 애플리케이션(6)에서의 이용을 위해 등록될 디바이스 식별자를 통보하여, 레지스트리가 어느 애플리케이션 제공자(6)가 에이전트 디바이스(4)와 통신해야 하는지를 이제 알게 된다. 이런 방식으로, 에이전트 디바이스(4)의 사용자가 레지스트리(8)가 존재한다는 것을 인식하지 않고 에이전트 디바이스(4)가 에이전트 디바이스(4)를 특정한 클라우드 서비스나 애플리케이션 제공자(6)에 링크하는 정보를 저장할 필요없이, 에이전트 디바이스(4)와 애플리케이션 제공자(6) 사이의 링크가 레지스트리(8)에서 확립될 수 있다.At this time, the registry 8 knows that the agent device 4 with the unique ID is a trusted agent device, but it does not know which cloud service application will use the data from the agent device 4. [ Thus, at step D, a binding operation is performed to link the user 10, the agent device 4, and the cloud application 6. For example, the agent device may have some kind of device identifier, such as a reference number, a bar code or a Quick Response code (QR code). The application provider 6 may provide a web interface or smartphone or tablet application for entering a device identifier, scanning a barcode or QR code, and uploading the device identifier along with the user identifier to the application provider 6. [ Alternatively, it may be performed by the application provider at the time of registration of the consumer to the application provider and subsequent allocation and dispatch of the agent device to the user. At this time, the cloud service knows which user owns the agent device 4, and then notifies the registry 8 of the device identifier to be registered for use in the application 6, 6) should communicate with the agent device 4. In this way the user of the agent device 4 does not recognize that the registry 8 exists and the agent device 4 stores information linking the agent device 4 to a particular cloud service or application provider 6 A link between the agent device 4 and the application provider 6 can be established in the registry 8,

단계 E에서, 예를 들어, 사물 인터넷의 일부로서 현장에서 에이전트 디바이스를 설치함으로써, 또는 에이전트 디바이스를 처음으로 턴온함으로써, 에이전트 디바이스가 배치된다. 에이전트 디바이스(4)의 활성화시에, 에이전트 디바이스(4)는 에이전트 디바이스(4) 내에 저장된 레지스트리 주소를 이용하여 레지스트리(8)와 자동으로 연락한다. 에이전트 디바이스(4)와 레지스트리(8)는 이제, 단계 B에서 에이전트 디바이스(4)에 임베딩되었고 단계 B 또는 C의 등록 동안에 레지스트리(8)에 등록되었던 키 정보를 이용하여 서로 상호 인증하여 신뢰를 확립한다. 상호 인증이 성공적이면, 레지스트리(8)는 애플리케이션 키를 에이전트 디바이스(4)와 애플리케이션 제공자(6)에 제공하고, 단계 F에서, 에이전트 디바이스(4)와 애플리케이션 제공자(6)는 레지스트리(8)로부터 수신된 애플리케이션 키를 이용하여 메시지를 암호화 및 암호해독함으로써 보안 통신할 수 있다. 따라서, 레지스트리(8)는, 에이전트 디바이스가 임의의 복잡한 구성을 수행할 것을 필요로하지 않고 에이전트 디바이스(4)와 애플리케이션(6) 사이에서 신뢰가 확립될 수 있게 한다.In step E, the agent device is deployed, for example, by installing the agent device in the field as part of the Internet of things, or by first turning on the agent device. Upon activation of the agent device 4, the agent device 4 automatically contacts the registry 8 using the registry address stored in the agent device 4. [ The agent device 4 and the registry 8 are now mutually authenticating each other using key information that was embedded in the agent device 4 in step B and registered in the registry 8 during registration of step B or C to establish trust do. If the mutual authentication is successful, the registry 8 provides the application key to the agent device 4 and the application provider 6, and at step F, the agent device 4 and the application provider 6 receive the application key from the registry 8 And can securely communicate by encrypting and decrypting the message using the received application key. Thus, the registry 8 allows trust to be established between the agent device 4 and the application 6 without the need for the agent device to perform any complicated configuration.

요약하면, 레지스트리(8)는, IOT 디바이스(예를 들어, 센서)(4)와 애플리케이션 제공 장치(클라우드 제공자)(6) 사이의 신뢰의 인증을 관리하기 위한 아키텍쳐를 제공한다. 레지스트리(8)는, 각각의 애플리케이션 제공자(6)와 에이전트 디바이스(4)에 대한 메타데이터를 관리하고, 에이전트 디바이스(4)와 애플리케이션 제공자(6) 사이의 관계를 관리하며, 디바이스 식별자를 인증하고, 에이전트 디바이스와 애플리케이션에게 보안 통신을 가능케 하기 위한 키를 제공하는 클라우드 플랫폼을 포함한다. 에이전트 디바이스(4)는, 에이전트 디바이스(4)가 고유한 인증가능한 신원, 보안 키 저장, 및 신뢰를 보안 유지하기 위한 암호화 능력, 및 예측가능한 플랫폼 강인성을 가진다는 것을 보장하는 특정한 설계 지침에 따라 제조 및 설계될 수 있다. 에이전트 디바이스 제조 지원 플랫폼은 키 생성 및 에이전트 디바이스(4)로의 삽입과 키 쌍의 관리뿐만 아니라 레지스트리와의 인터페이스를 지원할 수 있다.In summary, the registry 8 provides an architecture for managing authentication of trust between an IOT device (e.g., sensor) 4 and an application provisioning device (cloud provider) The registry 8 manages the metadata for each application provider 6 and agent device 4 and manages the relationship between the agent device 4 and the application provider 6 and authenticates the device identifier , And a cloud platform that provides keys to enable secure communication to agent devices and applications. The agent device 4 can be manufactured according to a specific design guideline that ensures that the agent device 4 has a unique authenticable identity, secure key store, and encryption capability to secure trust, and predictable platform robustness And can be designed. The agent device manufacturing support platform can support key generation and interfacing with the registry as well as insertion into the agent device 4 and management of the key pair.

이 아키텍쳐는 기존 시스템에서의 몇 가지 문제점을 해결하는 것을 돕는다. 레지스트리 클라우드 서비스에 의해 인증되는 고유 식별자를 각각의 에이전트 디바이스에 제공함으로써, 에이전트 디바이스는 신뢰를 보장하도록 고유하게 식별될 수 있다. 바람직하게는, 디바이스 식별자는 전역적으로 고유할 수 있어서, 전 세계를 통해 어떠한 2개의 디바이스도 동일한 식별자를 공유하지 않는다. 이것은, 디바이스 식별자의 제조 및 할당은 임의의 후속적으로 이용되는 레지스트리와는 완전히 독립적일 수 있다는 것을 의미한다. 그러나, 디바이스 식별자가 주어진 레지스트리 또는 레지스트리 집단 내에서 국지적으로 고유하고, 독립된 상호작용하지 않는 레지스트리들에서 상이한 디바이스들에 대해 동일한 식별자가 이용되는 것도 가능하다. 에이전트 디바이스(4)와 애플리케이션(6) 사이의 상호 인증이 달성되어, 애플리케이션에 대해 에이전트 디바이스를 보안 페어링하는 자동 등록 프로세스를 통해, 애플리케이션은 에이전트 디바이스 진본성을 신뢰하고 에이전트 디바이스는 애플리케이션 진본성을 신뢰할 수 있다. 에이전트 디바이스(4)와 애플리케이션(6)은 이제, 그들이 동일한 제공자에 의해 제조 또는 배포괴지 않더라도, 서로 신뢰할 수 있기 때문에, 이것은 에이전트 디바이스와 애플리케이션에 대한 시장을 개방하여, 신뢰를 달성하기 위하여 어떤 애플리케이션 제공자(6)에 의해 제공된 특정한 브랜드의 에이전트 디바이스(4)를 이용할 필요가 없다. 애플리케이션은 복수의 제조사로부터의 광범위한 에이전트 디바이스들을 신뢰할 수 있고 에이전트 디바이스들은 복수의 제공자로부터의 광범위한 애플리케이션들을 신뢰할 수 있다. 이것은 에이전트 디바이스와 애플리케이션의 비용 감소를 돕고 또한 사물 인터넷 에이전트 디바이스와 애플리케이션의 이용을 증가시키는 것을 도울 것이다. 또한, 레지스트리(8)는, 많은 소스로부터 수신된 많은 양의 데이터를 처리하는 "빅 데이터" 애플리케이션을 위한 센서 데이터의 소스에 대한 애플리케이션 제공자의 신뢰성을 증가시키는 것을 돕는다. "빅 데이터" 서비스를 위해 수집된 정보의 가치는 개별 에이전트 디바이스(4)에 의해 수집된 모든 "리틀 데이터"의 유효성에 의존한다. 클라우드 서비스가 그 개별 에이전트 디바이스(4)를 신뢰할 수 없다면, "빅 데이터"에 의해 획득된 결론도 역시 신뢰될 수 없어서, 전체 애플리케이션을 무의미하게 한다. 본 기술은 이러한 애플리케이션들에 의해 수집된 전체 정보에 대한 신뢰를 유지하는 것을 돕는다. 또한, 레지스트리(8)는, 에이전트 디바이스 특성 및 에이전트 디바이스(4)의 이용 이력 등의 다른 정보를 저장할 수 있다. 이것은 애플리케이션 제공자(6)가 특정한 종류의 에이전트 디바이스(4)를 목표화하는 것을 허용하는데 이용될 수 있다. 예를 들어, 애플리케이션(6)은 소정의 최소한의 보안 요건을 갖는 에이전트 디바이스(4)로부터 데이터를 수집하기만을 원할 수도 있다.This architecture helps to solve some problems in existing systems. By providing each agent device with a unique identifier that is authenticated by the registry cloud service, the agent device can be uniquely identified to ensure trust. Preferably, the device identifier may be globally unique so that no two devices share the same identifier throughout the world. This means that the fabrication and allocation of device identifiers can be completely independent of any subsequently used registry. However, it is also possible that the device identifiers are locally unique within a given registry or registry group, and that the same identifiers are used for different devices in independent, non-interacting registries. Mutual authentication between the agent device 4 and the application 6 is achieved and through the automatic registration process of securely pairing the agent device with the application, the application trusts the agent device authenticity and the agent device trusts the application authenticity . Since the agent device 4 and the application 6 can now trust each other, even if they are not manufactured or distributed by the same provider, this can be done by opening the market for agent devices and applications, It is not necessary to use the agent device 4 of the specific brand provided by the agent device 6. An application can trust a wide range of agent devices from a plurality of manufacturers and agent devices can trust a wide range of applications from a plurality of providers. This will help reduce the cost of agent devices and applications and also help to increase the use of object Internet agent devices and applications. The registry 8 also helps to increase the reliability of the application provider to the source of sensor data for "Big Data" applications that process large amounts of data received from many sources. The value of the information collected for the "Big Data" service depends on the validity of all the "Little Data" collected by the individual agent device 4. If the cloud service can not trust its respective agent device 4, the conclusions obtained by the "Big Data" can also be unreliable, rendering the entire application meaningless. The technology helps to maintain confidence in the overall information gathered by these applications. The registry 8 can also store other information such as agent device characteristics and usage history of the agent device 4. [ This can be used to allow the application provider 6 to target a particular kind of agent device 4. For example, the application 6 may only want to collect data from the agent device 4 with a certain minimum security requirement.

도 4는 에이전트 디바이스(4)를 개략적으로 나타낸다. 에이전트 디바이스는 감지 데이터를 수집하기 위한 감지 회로(11)를 포함한다. 예를 들어, 감지 회로(11)는, 온도 센서, 카메라, 심박수 모니터, 또는 애플리케이션 제공자(6)에 의해 요구되는 데이터를 수집하기 위한 기타 임의의 검출기를 포함할 수 있다. 에이전트 디바이스(4)는 또한, 예를 들어, 상호 인증, 애플리케이션 제공 장치(6)에 전송되는 데이터의 암호화, 및 키 생성 등의, 에이전트 디바이스(4)에 의해 수행되는 다양한 처리 동작들을 제어하기 위한 처리 회로(12)를 포함한다. 에이전트 디바이스(4)는 또한, 레지스트리 장치(8) 및 애플리케이션 제공 장치(6) 등의 외부 디바이스와 통신하기 위한 통신 회로(14)를 가진다. 통신 회로(14)는, 무선 근거리 네트워크(WiFi)를 이용한 통신, 무선 주파수 통신(RFID) 또는 근접장 통신(NFC) 등의 단거리 통신, 또는 Zigbee 또는 Bluetooth 또는 6LoWPAN 등의 무선 센서 네트워크에서 이용되는 통신 등의, 무선 통신을 이용할 수 있다. 또한 통신 회로(14)는 3G 또는 4G 등의 셀룰러 네트워크를 이용할 수도 있다. 통신 회로(14)는 또한, 광섬유 또는 금속 케이블 등의 유선 통신을 이용할 수도 있다. 통신 회로(14)는 또한, 위에서 주어진 예들의 수 개의 조합으로 된 예 등의, 2개 이상의 상이한 형태의 통신을 이용할 수 있다. 에이전트 디바이스는 또한, 에이전트 디바이스(4)의 디바이스 식별자, 에이전트 디바이스를 인증하기 위한 인증 정보, 및 에이전트 디바이스(4)에 의해 이용되는 기타의 정보를 저장하기 위한 저장 회로(16)를 포함한다. 에이전트 디바이스는 선택사항으로서 또한 에이전트 디바이스(4)에 대한 키 정보 또는 기타의 인증 정보를 생성하기 위한 키 생성기(18)를 포함할 수 있다.Fig. 4 schematically shows the agent device 4. Fig. The agent device includes a sensing circuit (11) for collecting sensing data. For example, the sensing circuit 11 may include a temperature sensor, a camera, a heart rate monitor, or any other detector for collecting data required by the application provider 6. The agent device 4 may also be used to control various processing operations performed by the agent device 4, such as, for example, mutual authentication, encryption of data transmitted to the application providing device 6, And a processing circuit (12). The agent device 4 also has a communication circuit 14 for communicating with an external device such as the registry device 8 and the application providing device 6. The communication circuit 14 may be a communication using a wireless local area network (WiFi), a short distance communication such as radio frequency communication (RFID) or near field communication (NFC), or a communication used in a wireless sensor network such as Zigbee or Bluetooth or 6LoWPAN Of wireless communication. The communication circuit 14 may also use a cellular network such as 3G or 4G. The communication circuit 14 may also use wired communication such as an optical fiber or a metal cable. The communication circuitry 14 may also utilize two or more different types of communication, such as an example of several combinations of the examples given above. The agent device also includes a storage circuit 16 for storing the device identifier of the agent device 4, authentication information for authenticating the agent device, and other information used by the agent device 4. [ The agent device may optionally also include a key generator 18 for generating key information or other authentication information for the agent device 4. [

도 4는 에이전트 디바이스가 감지 회로(11)를 포함하는 센서인 예를 도시하고 있지만, 다른 예에서는 감지 회로(11)는 필수적이지 않을 수도 있다. 대신에, 예를 들어, 에이전트 디바이스는, 예를 들어, 스프링클러, 도난 경보, 난방 또는 공기 조절 유닛, 또는 트래픽 신호등 시스템 등의 물리적 객체를 제어하기 위한 제어 회로를 포함할 수도 있다.Fig. 4 shows an example in which the agent device is a sensor including the sensing circuit 11, but in another example, the sensing circuit 11 may not be necessary. Instead, for example, the agent device may include control circuitry for controlling physical objects such as, for example, a sprinkler, a burglar alarm, a heating or air conditioning unit, or a traffic signal light system.

도 5는 에이전트 디바이스(4)의 저장 회로(16)에 저장된 정보의 예를 개략적으로 나타낸다. 저장 회로(16)는, 에이전트 디바이스(4)를 고유하게 식별하는 디바이스 식별자(22)를 저장하기 위한 1회성 프로그램가능한(OTP) 영역(20)을 가진다. 디바이스 식별자(22)는 에이전트 디바이스(4)의 제조 동안에 OTP 영역(20) 내에 임베딩된다. 이 실시예에서, 일단 OTP 영역(20)에 고정되고 나면, 디바이스 식별자(22)는 변경될 수 없다. 예를 들어, 디바이스 식별자를 OTP 영역(20)에 기입한 후에, 저장 회로에서 퓨즈가 버닝되어 OTP 영역(20)이 재기입될 수 없게 할 수 있다. 대안으로서, 일부 디바이스에서 디바이스 제조후에 대한 새로운 식별자를 생성할 수 있다. 예를 들어, 디바이스를 상이한 레지스트리에 이전할 때, 새로운 레지스트리에 의해 이미 관리되고 있는 디바이스들의 식별자들과의 충돌을 피하기 위해 그 디바이스에 새로운 식별자를 할당하는 것이 가능할 수 있다.Fig. 5 schematically shows an example of the information stored in the storage circuit 16 of the agent device 4. Fig. The storage circuit 16 has a one-time programmable (OTP) area 20 for storing a device identifier 22 that uniquely identifies the agent device 4. [ The device identifier 22 is embedded in the OTP area 20 during the manufacture of the agent device 4. [ In this embodiment, once fixed in the OTP area 20, the device identifier 22 can not be changed. For example, after the device identifier is written to the OTP area 20, the fuse may be burned in the storage circuit so that the OTP area 20 can not be rewritten. Alternatively, new identifiers may be generated for some devices after device fabrication. For example, when migrating a device to a different registry, it may be possible to assign a new identifier to the device to avoid conflicts with the identities of the devices already managed by the new registry.

저장 회로(16)는 또한, 판독 및 기입될 수 있지만, 판독 및 기입 보호가 적용되어 처리 회로(12)에 의해 실행되는 특권부여받은 소프트웨어에 의해서만 액세스될 수 있는, 비휘발성 메모리 영역(24)을 포함한다. 판독/기입 보호된 영역(24)은, 에이전트 디바이스(4)가 레지스트리(8)와 연락할 수 있게 하는 URL, IP 주소 또는 기타의 식별자를 포함하는 레지스트리 주소(26)를 저장한다. 보호된 영역(24)은 또한, 레지스트리(6)가 인증된 것인지를 확인하기 위해 레지스트리(6)로부터 수신된 메시지를 암호해독하기 위한 레지스트리 공개 키(27)를 저장한다(레지스트리 공개 키(27)는 레지스트리에 의해 유지되는 레지스트리 개인 키에 대응한다).The storage circuit 16 also includes a non-volatile memory area 24, which can be read and written, but which can be accessed only by privileged software that is read and write protected and applied by the processing circuitry 12 . The read / write protected area 24 stores a registry address 26 that contains a URL, IP address or other identifier that allows the agent device 4 to contact the registry 8. The protected area 24 also stores a registry public key 27 for decrypting the message received from the registry 6 to verify that the registry 6 is authentic (registry public key 27) Corresponds to a registry private key maintained by the registry).

보호된 영역(24)은 또한, 그 신원을 고유하게 식별하기 위해 에이전트 디바이스(4)에 의해 유지되는 고유 키인 센서 키(28) 또는 개인 키(29)를 저장한다. 센서 키(28)는 레지스트리(8)와 함께 공유되는 대칭 키이다. 메시지는 센서 키(28)를 이용하여 적어도 부분적으로 암호화될 수 있고, 레지스트리(8)가 동일한 키를 이용하여 메시지를 성공적으로 암호해독할 수 있다면, 그 메시지는 신뢰된 에이전트 디바이스로부터 수신된 것으로 간주되므로 그에 따라 장치가 인증된다. 대안으로서, 에이전트 디바이스에는 레지스트리(8)에 의해 유지되는 상이한 공개 키에 대응하는 개인 키(29)가 제공될 수 있다. 이러한 비대칭 키 쌍은, 다른 어떤 디바이스도 에이전트 디바이스(4)의 개인 키(29)를 보유하지 않으므로, 에이전트 디바이스의 더욱 보안된 인증을 가능케 한다. 개인 키(29)에 대응하는 공개 키(32)는, 저장 회로(16)의 기입 보호된 그러나 판독 보호되지 않은 영역(34)에 둘 수 있다. 따라서, 공개 키(32)는 임의의 디바이스에 의해 또는 에이전트 디바이스(4) 상에서 실행중인 임의의 소프트웨어에 의해 판독될 수 있다. 또한, 에이전트 디바이스(4)와 연관된 디지털 인증서(36)도 역시 저장 회로(16)의 개방 영역(34)에 저장된다. 디지털 인증서는 에이전트 디바이스(4)를 식별하는 다양한 데이터와 메타데이터 뿐만 아니라 공개 키(32)를 포함한다. 이 인증서는 인증 동안에 레지스트리(8)에 전송되고, 레지스트리는 이 인증서에 서명하여 에이전트 디바이스 신원을 인증한다. 그러면 다른 디바이스들이 레지스트리(8)로부터 인증서를 판독할 수 있고 레지스트리의 서명은 에이전트 디바이스가 신뢰되며 인증서(36)와 연관된 공개 키(32)가 실제로 그 에이전트 디바이스로부터 나온 것이라는 것을 확인한다. 따라서, 레지스트리(8)는, 공개 키 인프라스트럭쳐(PKI)에서 다른 인증 기관과 유사한 방식으로 공개 키(32)를 인증하기 위한 인증 기관으로서 역할할 수 있다.The protected area 24 also stores a sensor key 28 or private key 29, which is a unique key maintained by the agent device 4 to uniquely identify its identity. The sensor key 28 is a symmetric key shared with the registry 8. The message may be at least partially encrypted using the sensor key 28 and if the registry 8 can successfully decrypt the message using the same key, the message is considered to have been received from the trusted agent device The device is authenticated accordingly. Alternatively, the agent device may be provided with a private key 29 corresponding to a different public key maintained by the registry 8. This asymmetric key pair allows for a more secure authentication of the agent device since no other device holds the private key 29 of the agent device 4. [ The public key 32 corresponding to the private key 29 may be placed in the write-protected but read-protected area 34 of the storage circuit 16. Thus, the public key 32 may be read by any device or by any software executing on the agent device 4. [ The digital certificate 36 associated with the agent device 4 is also stored in the open area 34 of the storage circuit 16. The digital certificate includes a public key 32 as well as various data and metadata identifying the agent device 4. This certificate is sent to the registry 8 during authentication, and the registry signs the certificate to authenticate the agent device identity. The other devices can then read the certificate from the registry 8 and the signature of the registry confirms that the agent device is trusted and the public key 32 associated with the certificate 36 is actually from that agent device. Thus, the registry 8 can serve as a certificate authority for authenticating the public key 32 in a manner similar to other certificate authorities in the public key infrastructure (PKI).

판독/기입 보호된 영역(24)은 또한, 애플리케이션 제공자(6)와의 신뢰된 통신을 수행하기 위한 대칭 키인 하나 이상의 애플리케이션 키(30)를 저장한다. 이들 키는 레지스트리(8)에 의해 제공되고 에이전트 디바이스(4) 및 애플리케이션 제공자(6)에 의해 교환되는 데이터나 명령을 암호화/암호해독하는데 이용된다. 레지스트리(8)에 의해 각각의 쌍의 에이전트 디바이스(4)와 애플리케이션 제공자(6)에 대한 상이한 애플리케이션 키가 제공되어 디바이스들간의 통신의 보안을 유지할 수 있다. 다른 실시예에서, 디바이스(4)와 애플리케이션 제공자(6)에게 제공되는 애플리케이션 키(30)로서 비대칭 키가 이용될 수 있다. 레지스트리 장치(8)에 의해 제공되는 애플리케이션 키는 레지스트리 장치(8) 그 자체에 의해 생성되거나, 하드웨어 키 생성기 또는 키 저장 디바이스 등의 또 다른 디바이스로부터 레지스트리에 의해 획득될 수도 있다.The read / write protected area 24 also stores one or more application keys 30, which are symmetric keys for performing trusted communications with the application provider 6. These keys are used by the registry 8 to encrypt / decrypt data or commands exchanged by the agent device 4 and the application provider 6. [ Different application keys for each pair of agent device 4 and application provider 6 are provided by the registry 8 to maintain the security of communications between the devices. In another embodiment, an asymmetric key may be used as the application key 30 provided to the device 4 and the application provider 6. The application key provided by the registry device 8 may be generated by the registry device 8 itself or may be obtained by a registry from another device such as a hardware key generator or key storage device.

도 6은 애플리케이션 제공 장치(6)의 예를 도시한다. 레지스트리(8) 및 에이전트 디바이스(4)와의 통신을 위해 통신 회로(40)가 제공된다. 다시 한번, 에이전트 디바이스(4)에 대해 앞서 논의된 바와 같이 상이한 형태들의 유선이나 무선 통신이 제공될 수 있다. 애플리케이션 제공 장치는 또한, 애플리케이션 제공 장치(6)에 의해 이용되는 다양한 데이터와 애플리케이션을 저장하는 저장 회로(42)를 포함한다. 예를 들어, 저장 회로(42)는, 에이전트 디바이스(4)로부터 통신 회로(40)에 의해 수신된 데이터를 이용하고 이것을 소정 방식으로 처리하는, 또는 에이전트 디바이스(4)에 제어 명령을 내리는, 애플리케이션 프로그램을 저장할 수 있다. 애플리케이션을 실행하고, 레지스트리(8)의 인증, 에이전트 디바이스(4)와 교환되는 데이터의 암호화/암호해독 등의 기타의 동작을 제어하기 위해 처리 회로(44)가 제공된다. 저장 회로(42) 내의 보안 메모리 및 처리 회로(44) 내의 암호 알고리즘이나 보안 처리 기능 등의 암호화 피쳐가 제공될 수 있다.Fig. 6 shows an example of the application providing apparatus 6. Fig. A communication circuit 40 is provided for communication with the registry 8 and the agent device 4. Again, different forms of wired or wireless communication may be provided as discussed above for the agent device 4. The application providing device also includes a storage circuit 42 for storing various data and applications used by the application providing device 6. [ For example, the storage circuit 42 may be configured to use the data received by the communication circuit 40 from the agent device 4 and to process it in a predetermined manner, or to send the control command to the agent device 4, You can save the program. A processing circuit 44 is provided to run the application and to control other operations such as authentication of the registry 8, encryption / decryption of data exchanged with the agent device 4, and the like. Encryption features such as encryption algorithms or security processing functions within the secure memory and processing circuitry 44 within storage circuitry 42 may be provided.

도 7은 디바이스 레지스트리를 유지하기 위한 레지스트리 장치(8)의 예를 도시한다. 레지스트리(8)는 에이전트 디바이스(4) 및 애플리케이션 제공 장치(6)와 통신하기 위한 통신 회로(50)를 가진다. 다시 한번, 통신 회로(50)는 앞서 논의된 다양한 종류의 유선 또는 무선 통신을 이용할 수 있다. 레지스트리는 또한, 레지스트리(8)에 의해 실행되는 프로그램을 저장하고 다양한 에이전트 디바이스(4) 및 대응하는 애플리케이션(6)에 대한 정보를 추적하기 위한 디바이스 레지스트리를 저장하는 저장 회로(52)를 가진다. 저장 회로(52)에 저장된 애플리케이션 프로그램을 실행하고, 에이전트 디바이스(4) 및 애플리케이션 제공자(6)의 인증, 상이한 레지스트리들간의 에이전트 디바이스(4)의 이전, 및 에이전트 디바이스들에 대한 메타데이터의 관리 등의 동작을 제어하기 위한 처리 회로(54)가 제공된다. 다시 한 번, 저장 회로(42) 내의 보안 메모리 및 처리 회로(44) 내의 암호 알고리즘이나 보안 처리 기능 등의 암호화 피쳐가 제공될 수 있다. 레지스트리(8)는 또한, 에이전트 디바이스에 의해 어떤 인증 모델이 이용되는지에 대한 정보 등의, 소정 에이전트 디바이스(4)에 대한 정보에 대한, 외부 디바이스로부터의 질의에 응답할 수 있다. 보안상의 이유로, 모든 레지스트리(8)가 이러한 질의를 허용하는 것은 아닐 수도 있다. 예를 들어, 일부 레지스트리 오퍼레이터는 특정한 에이전트 디바이스(4)에 의해 이용되는 인증 모델에 대한 정보를 제공하지 않는 것을 선호할 수 있다. 또한, 레지스트리(8)는 에이전트 디바이스(4)에 대한 정보로 응답하기 이전에 질의측 디바이스의 인증을 수행하여 오직 신뢰된 질의측 디바이스만이 이 정보를 획득하도록 허용되어 있다는 것을 보장할 수 있다.7 shows an example of a registry device 8 for maintaining a device registry. The registry 8 has a communication circuit 50 for communicating with the agent device 4 and the application providing device 6. Once again, the communication circuit 50 may utilize the various types of wired or wireless communication discussed above. The registry also has a storage circuit 52 for storing a program executed by the registry 8 and for storing a device registry for tracking information about the various agent devices 4 and corresponding applications 6. [ Executes the application program stored in the storage circuit 52 and performs authentication of the agent device 4 and the application provider 6, transfer of the agent device 4 between different registries, and management of metadata for the agent devices There is provided a processing circuit 54 for controlling the operation of the microcomputer. Once again, encryption features such as encryption algorithms or security processing functions within the secure memory and processing circuitry 44 within the storage circuitry 42 may be provided. The registry 8 may also be responsive to queries from external devices for information about certain agent devices 4, such as information about which authentication model is used by the agent device. For security reasons, not all the registry 8 may allow this query. For example, some registry operators may prefer not to provide information about the authentication model used by a particular agent device 4. In addition, the registry 8 may perform authentication of the querying device prior to responding with information about the agent device 4 to ensure that only the trusted querying device is allowed to acquire this information.

도 8a는 레지스트리 장치(8)의 저장 회로(52)에 의해 저장된 레지스트리 엔트리(60)의 예를 도시한다. 레지스트리에 등록된 각각의 에이전트 디바이스(4)는 (에이전트 디바이스(4)의 OTP 영역(20)에 저장된 식별자(22)에 대응하는) 에이전트 디바이스(4)의 디바이스 식별자(22)를 포함하는 레지스트리 엔트리를 가질 수 있다. 레지스트리 엔트리는 또한, 에이전트 디바이스(4)의 디바이스 인증서(36) 및 공개 키(32)와 에이전트 디바이스(4)가 신뢰된다는 것을 확인하기 위해 레지스트리(8)에 의해 이용되는 기타의 인증 정보를 포함한다. 도 8a가 동일한 필드에서 인증서(36) 및 공개 키(32)를 갖는 예를 도시하고 있지만, 이들은 또한 상이한 필드들에 제공될 수도 있다. 또한, 레지스트리 엔트리(60)는 다른 인증 모델들에서의 이용을 위한 다른 유형의 인증 정보를 위한 필드를 가질 수도 있다.FIG. 8A shows an example of a registry entry 60 stored by the storage circuit 52 of the registry device 8. FIG. Each of the agent devices 4 registered in the registry has a registry entry 22 containing the device identifier 22 of the agent device 4 (corresponding to the identifier 22 stored in the OTP area 20 of the agent device 4) Lt; / RTI > The registry entry also includes the device certificate 36 of the agent device 4 and other authentication information used by the registry 8 to verify that the public key 32 and the agent device 4 are trusted . Although FIG. 8A shows an example having a certificate 36 and a public key 32 in the same field, they may also be provided in different fields. The registry entry 60 may also have fields for other types of authentication information for use in other authentication models.

레지스트리 엔트리(60)는 또한, 에이전트 디바이스(4)가 신뢰된 통신을 확립하고자 하는 하나 이상의 애플리케이션 제공 장치(6)를 식별하는 하나 이상의 애플리케이션 식별자(62), 및 식별된 애플리케이션 제공 장치(6)와 통신하기 위한 하나 이상의 애플리케이션 키(30)를 포함한다. 다시 한번, 애플리케이션 식별자(62) 및 대응하는 애플리케이션 키(30)는 레지스트리 엔트리(60)의 동일한 필드 또는 별개의 필드들에 있을 수 있다. 애플리케이션 식별자는, 그 에이전트 디바이스와 연관된 애플리케이션 제공자로부터의 요청에 응답하여 레지스트리 엔트리에 저장될 수 있다. 따라서, 에이전트 디바이스 자체는 자신이 어느 애플리케이션과 통신하고 있는지를 알 필요가 없고 레지스트리(8)는 에이전트 디바이스와 애플리케이션 제공 장치 사이의 링크를 제공할 수 있다. 예를 들어, 일단 에이전트 디바이스가 레지스트리(8)로부터 애플리케이션 키(30)를 수신하고 나면, 에이전트 디바이스는, 데이터가 어디로 가고 있는지에 대해 걱정하지 않고 애플리케이션 키(30)를 이용하여 암호화된 데이터를 단순히 출력할 수 있다.The registry entry 60 also includes one or more application identifiers 62 identifying the one or more application providing devices 6 with which the agent device 4 intends to establish trusted communications and the identified application providing device 6 And one or more application keys 30 for communicating. Once again, the application identifier 62 and the corresponding application key 30 may be in the same or different fields of the registry entry 60. The application identifier may be stored in the registry entry in response to a request from an application provider associated with the agent device. Thus, the agent device itself does not need to know which application it is communicating with, and the registry 8 can provide a link between the agent device and the application providing device. For example, once the agent device receives the application key 30 from the registry 8, the agent device can simply send the encrypted data using the application key 30 without worrying about where the data is going Can be output.

레지스트리 엔트리(60)는 또한, 이하에서 설명되는 바와 같이, 에이전트 디바이스(4)가 자신을 보안 인증하기 위해 어떤 인증 모델을 이용하는지를 식별하는 인증 모델 정보를 포함한다. 레지스트리 엔트리(60)는 애플리케이션 제공자 등의 외부 디바이스에 의해 질의될 수 있는 에이전트 디바이스에 대한 많은 다른 유형의 정보와 메타데이터를 포함할 수 있다는 것을 이해할 것이다. 에이전트 디바이스(4), 애플리케이션 제공자(6) 및 레지스트리(8)은 도 4, 6, 및 7에 도시된 것들 이외의 많은 다른 요소를 포함할 수도 있다는 것도 역시 이해할 것이다.The registry entry 60 also includes authentication model information that identifies which authentication model the agent device 4 uses to authenticate itself, as described below. It will be appreciated that registry entry 60 may include many other types of information and metadata for an agent device that may be queried by an external device, such as an application provider. It will also be appreciated that the agent device 4, the application provider 6, and the registry 8 may include many other elements than those shown in Figures 4, 6, and 7.

또한, 레지스트리 엔트리(60)는, 레지스트리 엔트리(60)의 다른 필드들 중 적어도 일부의 정보에 기초하여 생성된 신뢰된 서명이나 해시 값을 포함하는 서명/해시 필드(68)를 포함한다. 이것은, 레지스트리 엔트리(60)가 레지스트리에서 처음 생성된 이후에 디바이스나 사람이 다른 필드들 중 하나를 수정하려고 하는 경우에 조작 검출을 허용한다. 레지스트리 장치(8)는 다른 필드들을 이용하여 서명이나 해시를 재계산할 수 있고 이것이 저장된 서명/해시 필드(68)와 정합하는지를 체크할 수 있다.The registry entry 60 also includes a signature / hash field 68 containing a trusted signature or hash value generated based on at least some of the other fields of the registry entry 60. This allows operation detection if the device or person attempts to modify one of the other fields after the registry entry 60 is first created in the registry. The registry device 8 may use the other fields to recalculate the signature or hash and check whether it matches the stored signature / hash field 68.

도 8b에 도시된 바와 같이, 레지스트리 장치(8)는 또한, 대응하는 에이전트 디바이스(4)에 대한 이벤트 엔트리(69)를 저장할 수 있다. 이벤트 엔트리(69)는, 도 8a에 도시된 레지스트리 엔트리(60)의 하부-엔트리이거나, 다른 실시예에서는, 디바이스 ID(22)에 의해 레지스트리 엔트리(60)와 연관된 별개의 레코드로서 제공될 수도 있다. 이벤트 엔트리(69)는 대응하는 에이전트 디바이스(4)에서 발생할 수 있는 이벤트에 대한 이력 정보를 제공한다. 특정한 에이전트 디바이스(4)는, 자신과 연관된, 0, 1, 또는 복수의 이벤트 엔트리(69)를 가질 수도 있다. 따라서, 특정한 디바이스에 대한 레지스트리 엔트리(60)와, 동일한 디바이스와 연관된 이벤트 엔트리(69) 사이에는 1-대-다 관계가 있을 수 있다. 이벤트 엔트리(69)는, 에이전트 디바이스에 대한 디바이스 ID(22), 이벤트가 발생한 날짜를 나타내는 날짜 정보, 발생한 이벤트의 유형 및 이벤트와 연관된 기타 임의의 정보를 나타내는 이벤트 레코드, 및 레지스트리 엔트리(60)의 서명/해시 필드(68)와 유사한 조작 검출을 위한 서명/해시 필드를 위한 필드들을 포함한다. 에이전트 디바이스(4)와 연관된 이벤트의 발생시에 새로운 이벤트 엔트리(69)가 생성될 수 있다. 예를 들어, 기록될 수 있는 이벤트는, 제조 이후의 에이전트 디바이스(4)의 발송, 선적(장소), 디바이스의 활성화 또는 비활성화, 소비자에 의한 디바이스의 등록, 및 많은 다른 것들을 포함한다. 이벤트 엔트리(69)는 레지스트리가 디바이스의 이력을 추적하는 것을 허용한다.As shown in FIG. 8B, the registry device 8 may also store an event entry 69 for the corresponding agent device 4. The event entry 69 may be a sub-entry of the registry entry 60 shown in FIG. 8A, or, in another embodiment, as a separate record associated with the registry entry 60 by the device ID 22 . The event entry 69 provides history information about an event that may occur in the corresponding agent device 4. [ A particular agent device 4 may have zero, one, or multiple event entries 69 associated with it. Thus, there can be a one-to-many relationship between a registry entry 60 for a particular device and an event entry 69 associated with the same device. The event entry 69 includes a device ID 22 for the agent device, date information indicating the date the event occurred, an event record indicating the type of event that occurred and any other information associated with the event, Hash / hash field for operation detection similar to signature / hash field 68. A new event entry 69 may be generated upon the occurrence of an event associated with the agent device 4. [ For example, an event that may be recorded includes dispatching, shipping (place), activation or deactivation of the device, registration of the device by the consumer, and many others, after the manufacturing of the agent device 4. The event entry 69 allows the registry to track the history of the device.

도 9에 도시된 바와 같이, 상이한 유형들의 에이전트 디바이스(4)는 보안과 인증에 대한 상이한 요건들을 가질 수 있다. 일반적으로, (예를 들어, 데이터가 귀중하거나, 개인적이거나, 상업적으로 민감하거나 해서, 또는 데이터 이용과 연관된 건강이나 공공 안전 문제가 있어서) 요구되는 보안 레벨이 더 높을수록, 인증을 관리하기 위한 더 복잡한 자원이 요구될 수 있기 때문에 에이전트 디바이스(4)를 제조하는 비용도 더 높아진다. 일부 디바이스의 경우, 이 추가적인 비용은 정당화되지 못할 수도 있다. 예를 들어, 날씨 모니터링 애플리케이션에 데이터를 공급하는 온도계 등의 에이전트 디바이스의 경우, 데이터는 진짜임이 신뢰될 수 있어야 한다는 것이 요구되는 전부이므로 비교적 낮은 비용과 낮은 보안 인증 모델이 이용될 수 있다. 반면, 헬스케어 또는 스마트 도시나 텔레메틱스에서 이용되는 다른 종류의 디바이스들의 경우, 에이전트 디바이스 무결성과 진본성은 절충되지 않는다는 것이 매우 중요할 수 있다. 이들 응용의 경우, 더 높은 정도의 보안을 획득하기 위해 비용 증가를 초래하는 것이 정당화될 수 있다. 따라서, 도 9에 도시된 바와 같이, IOT 디바이스들에 대한 진본 디바이스 신원을 유지하기 위한 스케일가능한 기술을 제공하기 위해 복수의 상이한 신뢰 레벨들이 확립될 수 있다. 각각의 에이전트 디바이스(4)는 자신을 위해 선택된 특정한 인증 모델을 가질 수 있고, 선택된 모델은 도 8에 도시된 바와 같은 인증 모델 정보(64)를 이용하여 레지스트리 엔트리(60)에서 표시될 수 있다. 상이한 보안 레벨들에서 동작하는 인증 모델들을 갖는 유사한 기능을 갖춘 디바이스들에 대한 상업적 필요성도 있을 수 있다. 이것은 상이한 이용 분야를 제공하는데 유용할 수 있다.As shown in FIG. 9, different types of agent devices 4 may have different requirements for security and authentication. In general, the higher the level of security required (for example, because the data is valuable, personal, commercially sensitive, or has health or public safety concerns associated with data use), the more The cost of manufacturing the agent device 4 is higher because complicated resources can be required. For some devices, this additional cost may not be justified. For example, in the case of an agent device such as a thermometer that supplies data to a weather monitoring application, a relatively low cost and low security authentication model can be used because the data is all that is required to be authentic. On the other hand, for other types of devices used in healthcare or smart cities or telematics, it can be very important that agent device integrity and authenticity are not compromised. For these applications, it can be justified to incur an increase in cost in order to obtain a higher degree of security. Thus, as shown in FIG. 9, a plurality of different trust levels can be established to provide a scalable technology for maintaining authentic device identity for IOT devices. Each agent device 4 may have a particular authentication model selected for it and the selected model may be displayed in the registry entry 60 using authentication model information 64 as shown in FIG. There may also be a commercial need for devices with similar functionality with authentication models that operate at different security levels. This may be useful in providing different applications.

디바이스들의 제조나 배포 동안에 상이한 인증 모델들을 갖춘 상이한 에이전트 디바이스들(4)을 확립함으로써, 레지스트리(8)는 에이전트 디바이스들을 인증 모델 정보(64)에 기초하여 상이한 범주들로 분할 또는 분리할 수 있다. 예를 들어, 소정의 애플리케이션(6)들은 그들이 특정한 인증 모델을 갖는 에이전트 디바이스와만 통신할 수 있다고 명시할 수 있다. 또한 디바이스들은 레지스트리(8)에 질의하여 명시된 에이전트 디바이스(4)에 대한 인증 모델을 판정할 수 있다. 예를 들어, 뱅킹 애플리케이션 제공자는, 사용자의 기존 에이전트 디바이스(4)가 에이전트 디바이스(4)와의 신뢰 통신을 확립하기 이전에 소정의 최소한의 보안 요건을 만족할 것을 설정하기 원할 수도 있다. 상이한 인증 모델들은 많은 상이한 방식들로 상이할 수 있다. 예를 들어, 일부 인증 모델은 고정된, 변경불가능한, 인증 정보를 이용할 수 있는 반면 다른 인증 모델은 인증 정보가 에이전트 디바이스(4)의 키 생성 회로(18)를 이용하여 업데이트되는 것을 허용할 수 있다. 고정된 모델의 경우, 키 생성 회로(18)가 에이전트 디바이스(4)에 제공될 필요가 없을 수도 있어서 에이전트 디바이스는 더욱 저렴하게 구현될 수 있는 반면, 키 생성 능력을 갖는 에이전트 디바이스의 경우, 필요할 때 키가 생성될 수 있으므로 더욱 보안된 인증이 제공될 수 있다. 유사하게, 일부 인증 모델은 에이전트 디바이스(4)와 레지스트리(8)에 의해 공유된 대칭 키를 이용할 수 있는 반면 다른 디바이스들은 에이전트 디바이스(4)와 레지스트리(8)가 상이한 상보형 키들을 갖는 비대칭 키를 이용할 수 있다. 일부 모델들은 한 레지스트리로부터 다른 레지스트리로의 에이전트 디바이스의 이전을 허용할 수 있는 반면 다른 모델들은 특정한 레지스트리와 함께 동작하도록 에이전트 디바이스를 제약할 수 있다. 따라서, 에이전트 디바이스의 제조와 개발 동안에 적절하게 선택될 수 있는 인증 모델을 구현하는 많은 상이한 방식들이 있다.By establishing different agent devices 4 with different authentication models during the manufacture or distribution of the devices, the registry 8 can divide or separate the agent devices into different categories based on the authentication model information 64. For example, certain applications 6 may specify that they can only communicate with an agent device that has a particular authentication model. The devices may also query the registry 8 to determine the authentication model for the specified agent device 4. For example, the banking application provider may wish to set up that the user's existing agent device 4 meets certain minimum security requirements before establishing a trusted communication with the agent device 4. [ Different authentication models may differ in many different ways. For example, some authentication models may use fixed, immutable authentication information while other authentication models may allow authentication information to be updated using the key generation circuit 18 of the agent device 4 . In the case of the fixed model, the agent device may be implemented at a lower cost, since the key generation circuit 18 may not need to be provided to the agent device 4, while in the case of an agent device with key generation capability, The key can be generated, so a more secure authentication can be provided. Similarly, some authentication models may use a symmetric key shared by the agent device 4 and the registry 8, while other devices may use an asymmetric key with the agent device 4 and registry 8 having different complementary keys Can be used. Some models may allow migration of agent devices from one registry to another, while others may constrain agent devices to work with a particular registry. Thus, there are many different ways of implementing an authentication model that can be appropriately selected during the manufacture and development of an agent device.

도 10 내지 도 12는 인증 모델의 3가지 예를 나타낸다. 도 10은, 고정된 센서 키(28)가 제조 동안에 에이전트 디바이스(4)의 보호된 영역(24) 내에 주입되는 제1 인증 모델을 도시한다. 센서 키(28)는 제조사에 속하는 외부 디바이스(70)에 의해 생성된다. 그러면, 센서 키(28)는 그 디바이스를 고유하게 식별하는 공유된 비밀로서 레지스트리(8)와 함께 공유된다. 예를 들어, 센서 키는 제조 동안에 생성된 128-비트 또는 256-비트 AES(Advanced Encryption Standard) 키일 수 있다. 에이전트 디바이스(4)를 인증하기 위해, 에이전트 디바이스(4)는 레지스트리(8)에 메시지를 전송할 수 있고, 그 메시지의 일부는 센서 키(28)로 암호화되어 있다. 레지스트리(8)가 메시지(28)의 그 일부를 성공적으로 암호해독하여 그 자신의 센서 키(28)의 사본을 이용하여 그것이 올바른 것이라고 확인할 수 있다면, 에이전트 디바이스(4)의 인증이 성공적이다. 예를 들어, 해시를 암호화하는데 이용된 센서 키(28)와 에이전트 디바이스(4)에 의해 메시지로부터 해시가 생성될 수 있다. 메시지를 수신하는 레지스트리는 에이전트 디바이스(4)와 동일한 알고리즘을 이용하여 그 자신의 수신된 메시지의 해시를 생성할 수 있고 또한 수신된 해시를 암호해독하여 이것이 자신이 생성한 해시와 정합하는지를 체크할 수 있다. 2개의 해시가 정합한다면, 에이전트 디바이스는 인증된다. 제1 인증 모델의 이점은 낮은 구현 비용이라는 것이다. 에이전트 디바이스(4)에서 공개 키 인프라스트럭쳐나 키 생성기(18)를 제공하는 것이 필요하지 않다. 단지 AES, 또는 다른 공유된 비밀 방식만이 요구된다. 그러나, 공유된 비밀은 손상되는 경우 공격자에게 소유권 변경이나 데이터 액세스를 포함한 디바이스 또는 에이전트 디바이스의 완벽한 제어를 제공하기 때문에, 낮은 비용은 감소된 보안을 희생하여 온다. 레지스트리(8)에 제공된 공유된 센서 키(28)는 디바이스를 인증하는데 이용되는 센서 키(28)와 동일하기 때문에, 특히 제조 시스템(70)으로부터 레지스트리(8)로의 센서 키의 배포(72) 동안에 센서 키(28)를 노출시킬 잠재성이 비대칭 키의 이용에 비해 크다. 그러나, 센서 키(28)는 각각의 에이전트 디바이스(4)에 대해 고유하기 때문에, 센서 키가 손상되더라도, 이것은 하나의 에이전트 디바이스(4)에만 영향을 미치고 임의의 다른 에이전트 디바이스에는 영향을 미치지 않을 것이다. 따라서, 이 모델은 날씨 예보 등의 낮은 보안 애플리케이션에 이용될 수 있다.10 to 12 show three examples of the authentication model. 10 shows a first authentication model in which a fixed sensor key 28 is injected into the protected area 24 of the agent device 4 during manufacturing. The sensor key 28 is generated by an external device 70 belonging to the manufacturer. The sensor key 28 is then shared with the registry 8 as a shared secret that uniquely identifies the device. For example, the sensor key may be a 128-bit or 256-bit Advanced Encryption Standard (AES) key generated during manufacture. In order to authenticate the agent device 4, the agent device 4 can send a message to the registry 8, a part of which is encrypted with the sensor key 28. The authentication of the agent device 4 is successful if the registry 8 can successfully decrypt that part of the message 28 and confirm that it is correct using a copy of its own sensor key 28. [ For example, a hash may be generated from the message by the sensor key 28 and the agent device 4 used to encrypt the hash. The registry receiving the message can generate a hash of its own received message using the same algorithm as the agent device 4 and can also decrypt the received hash to check if it matches the hash it has generated have. If the two hashes match, the agent device is authenticated. An advantage of the first authentication model is low implementation cost. It is not necessary to provide the public key infrastructure or the key generator 18 at the agent device 4. [ Only AES, or any other shared secret, is required. However, lower costs come at the expense of reduced security, because shared secrets provide complete control of the device or agent device, including owner changes or data access, if corrupted. Since the shared sensor key 28 provided in the registry 8 is the same as the sensor key 28 used to authenticate the device, The potential for exposing the sensor key 28 is greater than the use of asymmetric keys. However, since the sensor key 28 is unique to each agent device 4, even if the sensor key is compromised, it will only affect one agent device 4 and will not affect any other agent devices . Therefore, this model can be used for low security applications such as weather forecasting.

일부 실시예에서, 단일의 센서 키(28)를 갖는 것 대신에, 센서 키들의 목록이 에이전트 디바이스(4) 내에 임베딩될 수 있고, 목록으로부터의 키가 에이전트 디바이스(4)에 의해 그 자신을 인증하기 위해 선택될 수 있다. 이 경우, 어느 키가 선택된 키인지를 나타내는 목록 내로의 인덱스를 이용하여 디바이스의 활성 식별이 정의될 수 있다. 그 다음, 레지스트리(8)는 선택된 키에 대한 대응하는 에이전트 디바이스 키를 제공받을 수 있다. 이 접근법에 의해, 하나의 센서 키가 손상되더라도, 에이전트 디바이스(4)는 목록으로부터 또 다른 센서 키를 이용하도록 스위칭할 수 있다.In some embodiments, instead of having a single sensor key 28, a list of sensor keys may be embedded within the agent device 4, and a key from the list may be used by the agent device 4 to authenticate itself Lt; / RTI > In this case, the active identification of the device may be defined using an index into the list indicating which key is the selected key. The registry 8 may then be provided with a corresponding agent device key for the selected key. With this approach, even if one sensor key is compromised, the agent device 4 can switch to use another sensor key from the list.

도 11은, 에이전트 디바이스(4)에 대한 인증 정보가 여전히 고정되어 (변경불가능하게) 있지만, 이번에는 인증 정보가 개인 키(29)와 공개 키(32)를 포함한 비대칭 키 쌍을 포함하는 제2 인증 모델의 예를 도시한다. 이것은 더욱 안전한데, 그 이유는 개인 키(29)는 에이전트 디바이스(4)에 의해서만 보유될 수 있고 임의의 다른 디바이스와 공유되지 않는 반면, 대응하는 공개 키(32)는 개인 키(29)를 노출하지 않고 다른 디바이스들에 널리 브로드캐스팅될 수 있기 때문이다. 비대칭 키 쌍은, 앞서 논의된 것과 유사한 방식으로 개인 키(29)를 이용하여 부분적으로 암호화된 메시지가 대응하는 공개 키(32)를 이용해서만 암호해독될 수 있게 하는 것이다. 따라서, 레지스트리(8)가 공개 키(32)를 이용하여 에이전트 디바이스로부터 수신된 메시지를 성공적으로 암호해독할 수 있다면, 메시지가 개인 키(29)를 갖는 인증된 에이전트 디바이스로부터 나온 것이라고 확신할 수 있다. 키 쌍은 또한, 에이전트 디바이스(4)의 공개 페이스(public face)를 나타내는 디지털 인증서(36)와 연관된다. 인증서(36)는 공개 키(32)를 레지스트리(8)에 전송하는데 이용될 수 있고 레지스트리에 의해 일단 서명되고 나면 공개 키(32)가 에이전트 디바이스(4)에 대한 올바른 키라는 것을 확인한다. 키 쌍과 인증서는 임의 종류의 형태의 서명된 인증서와 키 쌍을 포함할 수 있다. 예를 들어, ECC(elliptic curve cryptography) 키들은 키 쌍(29, 32)으로서 이용될 수 있고, X.509 인증서는 디지털 인증서(36)로서 이용될 수 있다. 이 모델에서, 제조 디바이스(70)는 제조 동안에 키 쌍과 인증서(36)를 생성하고 이들을 도 11에 도시된 바와 같이 메모리의 보호된 영역(24, 34)에 임베딩한다. 제조 프로세스(70)가 에이전트 디바이스(4)의 개인 키(29)를 알 것이라는 점에서 잠재적 취약성이 존재하지만, 제조사(70)는, 일단 개인 키가 에이전트 디바이스(4) 내에 주입되고 나면, 개인 키(29)를 삭제할 수 있고, 그 후, 에이전트 디바이스(4)는 개인 키로 액세스를 갖는 유일한 장치가 될 것이다. 개인 키는 에이전트 디바이스(4) 그 자체 이외의 다른 어떠한 부분에 의해서도 요구되지 않는다. 제조사(70)로부터 레지스트리(8)로의 인증 정보의 이전은 더욱 보안되는데, 그 이유는, 이것이 공개 키(32)와 인증서(36)의 이전만을 요구하고 개인 키(29)는 요구하지 않기 때문이다. 그러나, 이 모델에서는, 에이전트 디바이스가 PKI 능력과 개인 키(29), 공개 키(32) 및 인증서(36)를 저장하기 위한 더 많은 보호된 메모리를 요구하기 때문에, 제1 인증 모델에 비해 비용이 증가한다. 그러나, 에이전트 디바이스(4) 이외의 디바이스들에 의해 알려지는 영구적 공유된 키가 없기 때문에 보안성이 더 높다. 다시 한번, 단일의 키 쌍이 아니라, 에이전트 디바이스(4)는, 에이전트 디바이스가 일단 동작하고 나면, 선택에 이용가능한 키 쌍들의 목록을 가질 수 있다. 그럼에도 불구하고, 이 경우에 레지스트리(8)에 의해 유지되는 에이전트 디바이스들의 목록이 공개 키와 인증서만으로 구성되기 때문에 목록은 상당한 보호 요건들을 갖지 않는다. 제2 모델에 대해 임의의 알려진 PKI 방식이 이용될 수 있다.11 shows that the authentication information for the agent device 4 is still fixed (unchangeable), but this time the authentication information is transmitted to the second device 2 including the asymmetric key pair including the private key 29 and the public key 32 And shows an example of an authentication model. This is more secure because the private key 29 can only be held by the agent device 4 and is not shared with any other device while the corresponding public key 32 exposes the private key 29 And can be broadcast widely to other devices without having to. The asymmetric key pair is to allow the partially encrypted message to be decrypted using the corresponding public key 32 using the private key 29 in a manner similar to that discussed above. Thus, if the registry 8 can successfully decrypt a message received from the agent device using the public key 32, then it can be assured that the message came from an authenticated agent device with the private key 29 . The key pair is also associated with a digital certificate 36 representing the public face of the agent device 4. The certificate 36 can be used to transfer the public key 32 to the registry 8 and once signed by the registry it verifies that the public key 32 is the correct key for the agent device 4. [ The key pair and certificate may include any type of signed certificate and key pair. For example, elliptic curve cryptography (ECC) keys may be used as the key pair 29, 32, and an X.509 certificate may be used as the digital certificate 36. In this model, the manufacturing device 70 generates key pairs and certificates 36 during manufacturing and embeds them in the protected areas 24, 34 of the memory as shown in FIG. There is a potential vulnerability in that the manufacturing process 70 will know the private key 29 of the agent device 4. Once the private key has been injected into the agent device 4, (29), and then the agent device (4) will be the only device with access to the private key. The private key is not required by any part other than the agent device 4 itself. The transfer of authentication information from the manufacturer 70 to the registry 8 is more secure because it requires only the transfer of the public key 32 and the certificate 36 and the private key 29 does not . However, in this model, since the agent device requires more protected memory to store the PKI capability and the private key 29, the public key 32 and the certificate 36, . However, since there is no permanent shared key known by devices other than the agent device 4, security is higher. Once again, the agent device 4, rather than a single key pair, may have a list of key pairs available for selection once the agent device has been running. Nevertheless, the list does not have significant protection requirements, since in this case the list of agent devices maintained by the registry 8 consists only of public keys and certificates. Any known PKI scheme may be used for the second model.

도 12는 제1 및 제2 모델보다 더욱 안전하지만 구현하기에 비용이 더 많이 드는 제3 인증 모델을 도시한다. 다시 한번, 개인 키(29)와 공개 키(32)가 디지털 인증서(36)와 함께 에이전트 디바이스(4)의 저장 회로(16)에 제공된다. 그러나, 제3 모델은 온칩 키 생성 회로(18)가 키 쌍(29, 32)을 생성하기 위해 에이전트 디바이스(4)에 제공된다는 점에서 제2 모델과는 상이하다. 이것은, 제조사(70)가 에이전트 디바이스(4)의 개인 키(29)를 결코 알지 못하기 때문에 더 많은 보안을 제공한다. 또한, 온칩 키 생성 설비가 제공되기 때문에, 필요하다면 에이전트 디바이스는 인증 정보를 변경하기 위해 키 쌍을 재생성할 수 있다. 공개 키(32)와 인증서(36)만이 레지스트리(8) 등의 외부 디바이스들에 제공된다. 따라서, 신원 및 소유권 설정 동안에, 에이전트 디바이스(4) 내의 칩셋(18)은 ECC 키 쌍 등의 비대칭 키 쌍을 생성한다. 개인 키(29)는 메모리의 판독/기입 보호된 영역(24)에 저장된다. 특권 코드만이 개인 키(29)에 액세스한다. 온칩 키 생성 회로(18)는 또한, 인증서(36)를 생성하고, 디바이스 ID(22) 및 공개 키(32)를 포함하는 인증서 서명 요청을 레지스트리(8)에 전송한다. 공개 키(32)와 인증서(36)는 또한 보호 없이 완전히 판독가능한 메모리의 기입-보호된 영역(34) 내에 기입된다. 레지스트리(8)는 인증서(36)에 서명하여 에이전트 디바이스가 인증된 것임을 확인한다. 이 방법은, 센서 키(28) 또는 개인 키(29)가 레지스트리(8)나 제조 플랫폼(70)으로부터 추출될 수 있는 모델들 1 또는 2의 노출 취약성을 갖지 않는다. 에이전트 디바이스의 개인 키(29)는 에이전트 디바이스(4) 이외의 어떠한 디바이스에도 결코 노출되지 않는다. 이 경우 보안의 강도는 온칩 키 생성기(18)에 의한 키 쌍의 품질에 의존하고, 이것이 충분히 보안유지되기 위해, 보안된 키 생성을 지원하기 위해(예를 들어, 양호한 난수 생성이 요구될 것이다) 추가 실리콘이 필요하므로 디바이스 제조에서 비용 추가가 생긴다.Figure 12 shows a third authentication model that is more secure than the first and second models but is more expensive to implement. Once again, the private key 29 and the public key 32 are provided to the storage circuit 16 of the agent device 4 along with the digital certificate 36. However, the third model is different from the second model in that the on-chip key generation circuit 18 is provided to the agent device 4 to generate the key pair 29, 32. This provides more security because the manufacturer 70 never knows the private key 29 of the agent device 4. Also, since an on-chip key generation facility is provided, the agent device can regenerate the key pair to change the authentication information if necessary. Only the public key 32 and the certificate 36 are provided to external devices such as the registry 8. [ Thus, during identity and ownership establishment, the chipset 18 in the agent device 4 generates an asymmetric key pair, such as an ECC key pair. The private key 29 is stored in the read / write protected area 24 of the memory. Only the privileged code accesses the private key 29. The on-chip key generation circuit 18 also generates a certificate 36 and sends a certificate signing request including the device ID 22 and the public key 32 to the registry 8. The public key 32 and the certificate 36 are also written into the write-protected area 34 of the fully readable memory without protection. The registry 8 signs the certificate 36 to confirm that the agent device is authentic. This method does not have exposure vulnerability of models 1 or 2 in which sensor key 28 or private key 29 can be extracted from registry 8 or manufacturing platform 70. The private key 29 of the agent device is never exposed to any device other than the agent device 4. [ In this case, the strength of the security depends on the quality of the key pair by the on-chip key generator 18, and in order for it to be secure enough to support secure key generation (e.g., good random number generation will be required) Additional silicon is needed, which adds to the cost of device fabrication.

도 12의 예에서, 제3 인증 모델은 또한, 레지스트리(8)와 에이전트 디바이스(4) 사이의 신뢰된 관계가 제2 레지스트리(80)에 이전되는 것을 허용한다. 이 프로세스가 이후에 더 상세하게 설명될 것이다. 에이전트 디바이스(4)는 온칩 키 생성 회로(18)를 갖기 때문에, 이것은 에이전트 디바이스 신뢰를 제1 레지스트리(8)로부터 제2 레지스트리(80)로 이전할 때, 새로운 키가 생성되어 제1 레지스트리(8)가 에이전트 디바이스(4)를 더 이상 인증할 수 없게 한다. 이것은, 정부 또는 국방 애플리케이션에서의 이용 등을 위한 개인 레지스트리(8)의 오퍼레이터가 소정의 에이전트 디바이스들이 그 레지스트리에 이전되고 공개 레지스트리(8)와의 모든 결속이 제거될 것을 요구할 수 있기 때문에 추가적인 보안을 제공하는데 유용할 수 있다. 대안으로서, 제1 레지스트리는, 에이전트 디바이스를 더 이상 인증할 수 없도록 관련 엔트리를 삭제할 것을 지시받을 수 있다. 이런 방식으로, 에이전트 디바이스는 새로운 키를 생성할 필요가 없다. 또 다른 변형에서, 에이전트 디바이스는 하나보다 많은 미리-저장된 키를 가질 수도 있다. 레지스트리 변경시에, 이전의 미사용된 키가 이용될 수 있다.In the example of FIG. 12, the third authentication model also allows the trusted relationship between the registry 8 and the agent device 4 to be transferred to the second registry 80. This process will be described in more detail later. Since the agent device 4 has the on-chip key generation circuit 18, when it transfers the agent device trust from the first registry 8 to the second registry 80, a new key is generated and stored in the first registry 8 ) Can no longer authenticate the agent device (4). This provides additional security because the operator of the private registry 8 for use in government or defense applications, etc. may require that certain agent devices be transferred to the registry and all bindings with the public registry 8 removed . ≪ / RTI > Alternatively, the first registry may be instructed to delete the associated entry so that it can no longer authenticate the agent device. In this way, the agent device does not need to generate a new key. In another variation, the agent device may have more than one pre-stored key. Upon changing the registry, the old unused key may be used.

도 10과 도 11의 다른 모델들에 대해 레지스트리들 간에 신뢰를 이전하는 능력을 제공하는 것이 역시 가능할 수 있다는 것을 이해할 것이다. 그러나 이 경우 에이전트 디바이스는 그 키 정보를 재생성할 수 없기 때문에 에이전트 디바이스(4)는 제2 레지스트리(80)에서 동일한 키 정보로 등록될 것이다. 이 경우, 2개의 레지스트리(8, 80)는 동일한 에이전트 디바이스(4)를 공유하여, 동일한 에이전트 디바이스(4)가 양쪽 레지스트리에 등록되게 할 수 있다. 따라서, 에이전트 디바이스 데이터를 직접 다른 레지스트리에 이전하는 것이 아니라, 그 대신, 에이전트 디바이스가 양쪽 레지스트리에 할당되어 에이전트 디바이스가 양쪽 레지스트리와 연관된 애플리케이션 제공자와 통신할 수 있게 할 수 있다.It will be appreciated that it may also be possible to provide the ability to transfer trust between the registries for the other models of Figures 10 and 11. [ However, in this case, since the agent device can not regenerate the key information, the agent device 4 will be registered with the same key information in the second registry 80. In this case, the two registries 8 and 80 may share the same agent device 4 so that the same agent device 4 is registered in both registries. Thus, rather than transferring the agent device data directly to another registry, the agent device may instead be assigned to both registries so that the agent device can communicate with the application provider associated with both registries.

따라서, 다수의 상이한 종류의 인증 모델이 제공되어 에이전트 디바이스 설계가 충분한 정도의 보안을 유지하는 능력과 보안을 구현하는 비용 간에 밸런스를 유지하도록 허용한다. 에이전트 디바이스의 의도된 목적에 따라, 제조 동안에 특정한 모델이 선택되고 어느 모델이 이용되었는지에 관한 정보가 레지스트리(8)에 의해 유지되어 애플리케이션들이 그들의 요구조건에 대해 적절한 에이전트 디바이스를 이용하는 것을 허용할 수 있다. 도 13은 도 10 내지 도 12에 도시된 모델들의 상이한 속성들을 비교하는 표를 도시한다. 다른 유형의 모델들이 이용될 수도 있다는 것을 이해할 것이다. 예를 들어, 상이한 유형의 키 생성이 이용되어 상이한 정도의 보안을 제공할 수 있다.Thus, a number of different types of authentication models are provided to allow the agent device design to maintain a balance between the ability to maintain a sufficient degree of security and the cost of implementing security. Depending on the intended purpose of the agent device, information about which particular model was selected and which model was used during manufacture may be maintained by the registry 8 to allow applications to use the appropriate agent device for their requirements . Figure 13 shows a table comparing the different attributes of the models shown in Figures 10-12. It will be appreciated that other types of models may be used. For example, different types of key generation may be used to provide different degrees of security.

도 14는 에이전트 디바이스(4)에 대한 신뢰된 신원을 확립하는 방법의 제1 예를 도시한다. 에이전트 디바이스의 제조 동안에, 그 배포 동안에, 또는 나중에 레지스트리로의 디바이스의 등록시에, 신뢰된 신원이 확립될 수 있다. 단계(100)에서, 에이전트 디바이스(4)에 대해 이용될 인증 모델이 판정된다. 에이전트 디바이스(4)가 이미 제조되었다면 선택된 인증 모델의 판정은 에이전트 디바이스(4)에 어떤 자원이 이미 제공되었는지에 의존할 것이다(예를 들어, 에이전트 디바이스가 온칩 키 생성 회로(18)를 갖고 있지 않다면, 앞서 논의된 인증 모델(3)은 선택되지 못할 것이다). 반면, 에이전트 디바이스 제조 동안에 또는 제조 이전에 이 방법이 수행된다면, 임의의 인증 모델이 선택될 수 있고 (디바이스 내로 보호된 저장소, PKI 인프라스트럭쳐, 또는 키 생성 능력을 구축하는 것과 같이) 그 모델을 구현하기 위해 요구되는 처리 자원은 나중에 구현될 수 있다.14 shows a first example of a method for establishing a trusted identity for an agent device 4. [ A trusted identity may be established during the manufacture of the agent device, during its distribution, or upon registration of the device to the registry at a later time. At step 100, an authentication model to be used for the agent device 4 is determined. If the agent device 4 has already been manufactured, the determination of the selected authentication model will depend on what resources have already been provided to the agent device 4 (for example, if the agent device does not have the on-chip key generation circuit 18 , The authentication model (3) discussed above will not be selected). On the other hand, if this method is performed during or prior to manufacturing the agent device, any authentication model may be selected (such as building a protected repository, PKI infrastructure, or key generation capability into the device) The processing resources required to do so may be implemented later.

단계(102)에서, 에이전트 디바이스(4)를 인증하기 위한 키 정보가 선택된 인증 모델에 따라 생성된다. 이것은, 선택된 모델에 따라, 외부 제조 디바이스(70)에 의해 또는 에이전트 디바이스(4) 자체에 의해 수행될 수 있다. 단계(104)에서, 디바이스 ID(22), 공유된 센서 키(28) 또는 개인 키(29), 레지스트리 주소(26) 및 선택사항으로서 디바이스 인증서(36)가 에이전트 디바이스(4)의 저장 회로(16) 내에 임베딩된다. 임베딩 단계는, 저장 회로를 디바이스 내에 구축함으로써, 또는 제조의 이전 단계 동안에 에이전트 디바이스 내에 이미 제공된 저장 회로에 정보를 저장함으로써 구현될 수 있다. 인증 모델 1이 이용된다면 센서 키(28)가 임베딩되는 반면, 인증 모델 2 또는 3이 이용된다면, 개인 키(29) 및 인증서(36)가 저장 회로(16)에 저장된다. 이 때, 에이전트 디바이스(4)에는 또한 레지스트리(8)의 신원을 확인하기 위한 레지스트리 인증 정보가 제공될 수 있다.At step 102, key information for authenticating the agent device 4 is generated according to the selected authentication model. This can be done by the external manufacturing device 70 or by the agent device 4 itself, depending on the selected model. At step 104, a device ID 22, a shared sensor key 28 or private key 29, a registry address 26 and, optionally, a device certificate 36 are stored in the storage circuitry of the agent device 4 16). The embedding step may be implemented by building a storage circuit in the device, or by storing information in a storage circuit already provided in the agent device during a previous stage of manufacturing. If authentication model 1 is used, sensor key 28 is embedded, whereas if authentication model 2 or 3 is used, private key 29 and certificate 36 are stored in storage circuitry 16. At this time, the agent device 4 may also be provided with registry authentication information for confirming the identity of the registry 8. [

단계(106)에서, 에이전트 디바이스의 신뢰된 신원을 정의하기 위한 다양한 메타데이터가 레지스트리 장치(8)에 업로드된다. 예를 들어, 디바이스 ID(22), (모델 1의 경우) 센서 키(28) 또는 (모델 2 또는 3의 경우) 공개 키(32), (모델 2 또는 3의 경우) 디지털 인증서(36), 및 선택된 모델을 나타내는 인증 모델 정보(64)가 레지스트리(8)에 업로드될 수 있다. 단계(108)에서, 레지스트리는 필요하다면 인증서에 서명하고, 디바이스 메타데이터를 레지스트리에 등록하여 디바이스를 그 신원이 인증될 수 있는 신뢰된 디바이스로서 확립한다.At step 106, various metadata for defining the trusted identity of the agent device is uploaded to the registry device 8. [ For example, the device ID 22, the sensor key 28 (in the case of model 1) or the public key 32 (in the case of model 2 or 3), the digital certificate 36 (in the case of model 2 or 3) And authentication model information 64 indicating the selected model may be uploaded to the registry 8. At step 108, the registry signs the certificate, if necessary, and registers the device metadata in the registry to establish the device as a trusted device whose identity can be authenticated.

도 15는 디바이스에 대한 신뢰와 신원을 확립하는 제2 예를 도시한다. 이 예에서, 에이전트 디바이스(센서)(4)는 이미 키 생성 회로(18)와 함께 제조되었고, 디바이스 식별자(22)는 저장 회로(16)의 OTP 영역(20)에 저장되었다. 따라서, 인증 모델 3 또는 온칩 키 생성을 허용하는 유사한 모델이 이 센서(4)에 의해 이용된다. 단계(120)에서, 센서(4)는 센서(4)의 디바이스 식별자(22)를 명시하는 등록(등재) 요청을 레지스트리(8)에 전송한다. 단계(122)에서, 레지스트리는 센서(4)가 이미 레지스트리에 의해 소유되어 있는지를 체크하고, 만일 그렇다면, 방법은 종료한다.Figure 15 shows a second example of establishing trust and identity for a device. In this example, the agent device (sensor) 4 has already been manufactured with the key generation circuit 18, and the device identifier 22 has been stored in the OTP area 20 of the storage circuit 16. [ Thus, an authentication model 3 or a similar model that allows for on-chip key generation is used by this sensor 4. At step 120 the sensor 4 sends a registration request to the registry 8 specifying the device identifier 22 of the sensor 4. In step 122, the registry checks if the sensor 4 is already owned by the registry, and if so, the method ends.

에이전트 디바이스가 이미 소유되어 있지 않다면, 단계(124)에서 센서(4)는 키 생성기(18)를 이용하여 새로운 키 쌍(29, 32)을 생성하도록 트리거되고, 키 쌍의 개인 키(29)는 보호된 저장 영역(24)에 놓여진다. 단계(126)에서, 인증서 서명 요청이 생성되어, 레지스트리(8)에 전송된다. 인증서 서명 요청은, 레지스트리(8)가 센서(4)의 디지털 인증서(32)에 서명할 것을 요청한다. 인증서는, 적어도 대상 이름으로서의 센서(4)의 디바이스 식별자(22), 센서(4)의 보안 레벨(인증 모델 정보), 및 키 생성기(18)에 의해 생성된 공개 키(32)를 포함한다. 단계(128)에서, 레지스트리(8)는 인증서에 서명하여 인증서와 공개 키가 유효하다는 것을 확인한다. 레지스트리는 센서(4)에 대한 정보를 디바이스 레지스트리에 등록하여 센서(4)를 신뢰된 에이전트 디바이스로서 확립한다.If the agent device is not already owned, then at step 124 the sensor 4 is triggered to generate a new key pair 29,32 using the key generator 18 and the private key 29 of the key pair Is placed in protected storage area (24). At step 126, a certificate signing request is generated and sent to the registry 8. The certificate signing request requests the registry 8 to sign the digital certificate 32 of the sensor 4. The certificate includes at least the device identifier 22 of the sensor 4 as the subject name, the security level of the sensor 4 (authentication model information), and the public key 32 generated by the key generator 18. At step 128, the registry 8 signs the certificate and verifies that the certificate and public key are valid. The registry registers information on the sensor 4 in the device registry to establish the sensor 4 as a trusted agent device.

도 16은 에이전트 디바이스(4)의 인증을 수행하여 이것이 신뢰된 디바이스로서 등록되어 있는지를 체크하고, 에이전트 디바이스(4)와 애플리케이션 제공 장치(6) 사이에 신뢰된 통신을 확립하는 방법을 도시한다. 에이전트 디바이스(4)는 예를 들어 도 14 또는 도 15에 도시된 방법을 이용하여 레지스트리(8)에 이미 등록되어 있고, 따라서, 레지스트리(8)는, 에이전트 디바이스(4)가 에이전트 디바이스(4)를 고유하게 식별하는 인증 정보를 포함하고 있는지를 확인하기 위한 정보를 포함한다고 가정된다. 이 예에서, 인증 모델 3이 이용되어 에이전트 디바이스(4)는 센서 개인 키 Ks .pr를 포함하고 레지스트리(8)는 개인 키 Ks .pr에 대응하는 센서 공개 키 Ks . pu를 포함한다. 유사하게 에이전트 디바이스(4)는, 레지스트리(8)에 의해 보유된 레지스트리 개인 키 Kr.pr에 대응하는 레지스트리 공개 키 Kr. pu를 이용하여 레지스트리(8)를 인증할 수 있다.16 shows how to perform authentication of the agent device 4 to check whether it is registered as a trusted device and to establish a trusted communication between the agent device 4 and the application providing device 6. [ The agent device 4 has already been registered in the registry 8 using the method shown in Fig. 14 or 15 for example, And authentication information that uniquely identifies the authentication information. In this example, the authentication model 3 is used agent device 4 Sensor private key K s include .pr registry and 8 is the private key K s .pr sensor public key K s corresponding to. pu . Similarly, the agent device 4 is configured to register the registry public key K r. R corresponding to the registry private key K r. Pr held by the registry 8 . pu can be used to authenticate the registry 8.

단계(150)에서, 레지스트리(8)와 애플리케이션 제공자(6)는 서로의 상호 인증을 수행하여 신뢰를 확립한다. 전형적으로, 이것은 레지스트리(8)에 의해 각각의 애플리케이션 제공자(6)에 대해 한번씩 수행될 것이다. 레지스트리(8)와 애플리케이션 제공자(6) 사이의 상호 인증(150)은 애플리케이션 제공자(6)와 통신하고자 하는 각각의 에이전트 디바이스(4)에 대해 통상적으로 반복되지 않을 것이다. 상호 인증(150)은 임의의 공지된 인증 기술을 이용하여 이루어질 수 있다.At step 150, the registry 8 and the application provider 6 perform mutual authentication of each other to establish trust. Typically, this will be done once for each application provider 6 by the registry 8. The mutual authentication 150 between the registry 8 and the application provider 6 will not normally be repeated for each agent device 4 that wants to communicate with the application provider 6. Mutual authentication 150 may be accomplished using any known authentication technique.

단계(152)에서, 에이전트 디바이스가 활성화되고, 활성화에 응답하여, 에이전트 디바이스(4)는 인증 요청(154)을 에이전트 디바이스의 보호된 저장소(24)에 임베딩된 레지스트리 URL(26)에 의해 식별된 레지스트리에 전송한다. 인증 요청은 에이전트 디바이스(4)를 식별하는 디바이스 ID(22)를 포함한다. 에이전트 디바이스의 활성화는, 예를 들어, 에이전트 디바이스가 설치 이후에 처음으로 전원투입되는 것, 또는 에이전트 디바이스 상의 활성화 버튼이 눌러지는 것을 포함할 수 있다. 인증 요청(154)은 에이전트 디바이스의 활성화에 응답하여 자동으로 전송되어 인증을 트리거하기 위해 사용자 인터페이스 또는 어떤 다른 종류의 사용자 인터페이스가 요구될 필요성이 없다. 이것은, 에이전트 디바이스를 설치하거나 이용하는 사람이 그 에이전트 디바이스가 인증되어 있는지를 알 필요가 없다는 것을 의미한다. 인증 요청(154)에 응답하여, 에이전트 디바이스(4)와 레지스트리(8)는, 등록 또는 등재 동안에 에이전트 디바이스(4)와 레지스트리(8)에 의해 이미 교환된 키들을 이용하여 상호 인증(156)을 개시한다. 상호 인증에서, 에이전트 디바이스(4)는 센서 개인 키 Ks .pr를 이용하여 메시지의 해시를 암호화하고, 부분적으로 암호화된 메시지(158)를 레지스트리(8)에 전송한다. 대응하는 방식으로, 레지스트리(8)는 레지스트리 개인 키 Kr.pr를 이용하여 메시지의 해시를 암호화하고, 부분적으로 암호화된 메시지(159)를 에이전트 디바이스(4)에 전송한다. 에이전트 디바이스(4)는 그 자신의 메시지(159)의 해시를 획득하고, 이것을, 레지스트리 공개 키 Kr. pu로 암호화된 해시를 암호해독함으로써 획득된 해시와 비교한다. 2개의 해시가 정합한다면, 레지스트리(8)는 진본인 것으로 가정된다. 유사하게, 레지스트리(8)는 메시지(158)로부터 해시를 취득하고, 이것을, 센서 공개 키 Ks . pu를 이용하여 메시지(158)와 함께 수신된 암호화된 해시를 암호해독함으로써 획득된 해시와 비교한다. 다시 한번, 2개의 해시가 정합한다면, 에이전트 디바이스(4)는 인증된다.At step 152 the agent device is activated and in response to activation the agent device 4 sends an authentication request 154 to the agent device's protected storage 24, Transfer to the registry. The authentication request includes a device ID 22 that identifies the agent device 4. Activation of an agent device may include, for example, an agent device being powered on for the first time after installation, or an activation button on the agent device being depressed. The authentication request 154 is automatically sent in response to activation of the agent device so that there is no need for a user interface or any other kind of user interface to trigger authentication. This means that a person installing or using the agent device need not know whether the agent device is authorized or not. In response to the authentication request 154, the agent device 4 and the registry 8 perform a mutual authentication 156 using the keys already exchanged by the agent device 4 and the registry 8 during registration or listing . In mutual authentication, the agent device 4 encrypts the hash of the message using the sensor private key K s. Pr and sends the partially encrypted message 158 to the registry 8. In a corresponding manner, the registry 8 encrypts the hash of the message using the registry private key K r.pr and sends the partially encrypted message 159 to the agent device 4. The agent device 4 obtains a hash of its own message 159 and stores it in the registry public key K r. and compares it with the hash obtained by decrypting the hash encrypted with pu . If the two hashes match, the registry 8 is assumed to be true. Similarly, the registry 8 obtains a hash from the message 158 and sends it to the sensor public key K s . pu to the hash obtained by decrypting the encrypted hash received along with the message 158. [ Once again, if the two hashes match, the agent device 4 is authenticated.

도 16은 에이전트 디바이스(4)에 의해 전송된 별개의 인증 요청(154)과 인증 메시지(158)를 도시하고 있지만, 다른 실시예에서는, 인증 요청(154)과 인증 메시지(158)는 동일한 메시지일 수 있어서, 에이전트 디바이스(4)는 활성화(152) 시에 부분적으로 암호화된 인증 메시지(158)를 (디바이스 ID(22)와 함께) 레지스트리(8)에 전송하고 이것은 레지스트리(8)가 상호 인증(156)에 의해 응답하도록 트리거하는 인증 요청으로서 역할한다.Figure 16 shows a separate authentication request 154 and an authentication message 158 sent by the agent device 4. In another embodiment the authentication request 154 and the authentication message 158 are the same message The agent device 4 sends a partially encrypted authentication message 158 (along with the device ID 22) to the registry 8 at the time of activation 152, 156 as an authentication request to trigger the response.

레지스트리(8)가 에이전트 디바이스(4)로부터 수신된 메시지(158)를 성공적으로 인증한다면, 단계(160)에서 레지스트리(8)는 애플리케이션 키(30)를 생성하고 이 애플리케이션 키를 에이전트 디바이스(4)에 전송한다. 또한, 레지스트리(8)는, 애플리케이션 키(30)를, 인증 요청(154)에서 명시된 디바이스 ID(22)를 갖는 에이전트 디바이스(4)에 대한 레지스트리 엔트리(60) 내의 애플리케이션 식별자(62)에 의해 식별되는 애플리케이션 제공자(6)에게 전송한다. 레지스트리(8)는 또한, 에이전트 디바이스(4)의 에이전트 디바이스 ID를 애플리케이션 제공자(6)에게 전송하여, 애플리케이션 제공자(6)가 수신된 애플리케이션 키(30)를 이용하여 어느 에이전트 디바이스(4)가 통신할 것인지를 알게 한다.If the registry 8 successfully authenticates the received message 158 from the agent device 4 then at step 160 the registry 8 generates the application key 30 and sends this application key to the agent device 4. [ Lt; / RTI > The registry 8 also identifies the application key 30 by the application identifier 62 in the registry entry 60 for the agent device 4 with the device ID 22 specified in the authentication request 154 To the application provider (6). The registry 8 also sends the agent device ID of the agent device 4 to the application provider 6 so that the application provider 6 uses the received application key 30 to determine which agent device 4 is communicating Let's know whether to do it.

에이전트 디바이스(4)가 레지스트리(8)를 성공적으로 인증하면, 단계(170)에서 에이전트 디바이스(4)와 애플리케이션 제공자(6)는 레지스트리(8)로부터 수신된 애플리케이션 키(30)를 이용하여 암호화된 통신을 개시한다. 레지스트리(8)가 에이전트 디바이스(4)에 의해 성공적으로 인증되지 않았다면, 에이전트 디바이스(4)는 애플리케이션 키(30)를 이용한 어떠한 암호화된 통신에도 참여하지 않는다. 암호화된 통신(180)에서, 일반적으로 에이전트 디바이스(4)는 데이터를 애플리케이션 제공자(6)에 전송할 것이고 애플리케이션 제공자는 에이전트 디바이스(4)에 명령을 전송할 것이지만, 반대 방향으로 데이터나 명령을 전송하는 것도 역시 가능할 수 있다. 단계(190)에서, 애플리케이션 제공 장치(6) 상에서 실행중인 애플리케이션은 에이전트 디바이스로부터 수신된 데이터를 처리한다. 예를 들어, 애플리케이션은 추가 정보를 판정하기 위해 이 데이터를 이용하거나 인터넷을 통해 액세스될 수 있는 클라우드 컴퓨팅 플랫폼을 위해 이 데이터를 이용할 수도 있다. 암호화된 통신(180)은 레지스트리(8)를 통한 진행없이 에이전트 디바이스(4)와 애플리케이션 제공자(6) 사이에서 직접 진행한다.If the agent device 4 has successfully authenticated the registry 8 then at step 170 the agent device 4 and the application provider 6 are authenticated using the application key 30 received from the registry 8 Communication is started. If the registry 8 is not successfully authenticated by the agent device 4, then the agent device 4 does not participate in any encrypted communication with the application key 30. In the encrypted communication 180, typically the agent device 4 will send the data to the application provider 6 and the application provider will send the command to the agent device 4, It can also be possible. In step 190, the application running on the application providing device 6 processes the data received from the agent device. For example, an application may use this data to determine additional information or use this data for a cloud computing platform that may be accessed over the Internet. The encrypted communication 180 proceeds directly between the agent device 4 and the application provider 6 without proceeding through the registry 8.

따라서, 레지스트리(8)는 에이전트 디바이스(4)와 애플리케이션 제공자(6)가 에이전트 디바이스(4)에서의 복잡한 구성이나 사용자 상호작용을 요구하지 않고 통신을 암호화하도록 허용한다. 이것은, 에이전트 디바이스(4)가 매우 간단하고 복잡한 처리 자원을 가질 필요가 없는 한편, 보안이 여전히 유지될 수 있다는 것을 의미한다.Thus, the registry 8 allows the agent device 4 and the application provider 6 to encrypt communications without requiring complex configuration or user interaction at the agent device 4. This means that the agent device 4 does not need to have very simple and complex processing resources, while security can still be maintained.

도 17은, 에이전트 디바이스(4)를 특정한 소비자(사용자)(10)와 연관시키고 에이전트 디바이스(4)를 레지스트리(8) 내의 애플리케이션 제공자(6)와 연관시키기 위한 방법을 도시한다. 단계(200)에서, 소비자(10)는 에이전트 디바이스의 디바이스 ID(22)를 획득한다. 이것은 다양한 방식으로 이루어질 수 있다. 예를 들어, 에이전트 디바이스(4) 또는 디바이스(4)를 위한 박스가 그 표면 상에 디바이스 ID를 인쇄할 수 있고 소비자는 에이전트 디바이스 케이스로부터 디바이스 ID를 판독할 수 있다. 또한, 디바이스 ID는 바코드 또는 QR 코드 또는 유사한 그래픽 표현으로 표현될 수 있고 사용자는 코드 리더기를 이용하여 코드를 스캔해 디바이스 ID(22)를 획득할 수 있다. 그 다음, 소비자(10)는 소비자의 식별자(사용자 ID)와 디바이스 식별자(22)를 포함하는 디바이스 연관 요청(210)을 애플리케이션 제공자(6)에게 전송한다. 이 단계는, 예를 들어 스마트폰이나 태블릿 앱 또는 웹 인터페이스를 이용하여 바코드나 QR 코드를 판독하는 것에 응답하여 자동으로 발생할 수 있다. 애플리케이션 제공자(6)는 이제 디바이스 ID에 대비하여 사용자 ID를 기록(log)할 수 있어서 에이전트 디바이스(4)로부터의 이후의 통신은 특정한 소비자와 연관될 수 있다. 디바이스 연관 요청(210)을 수신한 후에, 애플리케이션 제공자(6)는 또한, 애플리케이션 제공자(6)의 애플리케이션 식별자를 에이전트 디바이스 연관 요청(210)으로부터의 디바이스 ID(22)에 링크하는 애플리케이션 연관 요청(220)을 레지스트리(8)에 전송할 수 있다. 애플리케이션 연관 요청에 응답하여, 레지스트리(8)는 애플리케이션 식별자를 애플리케이션 연관 요청(220)에 의해 명시된 디바이스 식별자(22)를 갖는 에이전트 디바이스에 대한 레지스트리 엔트리(60)에 등록한다.17 shows a method for associating an agent device 4 with a specific consumer (user) 10 and associating the agent device 4 with an application provider 6 in the registry 8. At step 200, the consumer 10 obtains the device ID 22 of the agent device. This can be done in a variety of ways. For example, a box for the agent device 4 or the device 4 can print the device ID on its surface, and the consumer can read the device ID from the agent device case. In addition, the device ID may be represented by a barcode or QR code or a similar graphical representation, and the user may use a code reader to scan the code to obtain the device ID 22. The consumer 10 then sends to the application provider 6 a device association request 210 that includes the consumer's identifier (user ID) and the device identifier 22. This step can occur automatically, for example, in response to reading a bar code or QR code using a smartphone or tablet app or web interface. The application provider 6 can now log the user ID against the device ID so that subsequent communication from the agent device 4 can be associated with a particular consumer. After receiving the device association request 210, the application provider 6 may also send an application association request 220 (e.g., an application identifier) that links the application identifier of the application provider 6 to the device ID 22 from the agent device association request 210 ) To the registry (8). In response to the application association request, the registry 8 registers the application identifier in the registry entry 60 for the agent device with the device identifier 22 specified by the application association request 220.

다른 예에서, 소비자(10)는 애플리케이션 제공자로부터 직접 에이전트 디바이스(4)를 획득했을 수도 있어서, 소비자가 에이전트 디바이스를 취득하는 때에, 애플리케이션 제공자(6)는 디바이스 ID와 사용자 ID 간의 링크를 이미 알 수도 있다. 이 경우, 디바이스 연관 요청(210)에 대한 필요성이 없으므로 애플리케이션 제공자(6)가 대신에 그 내부 레코드를 이용하여 레지스트리(8)에 전송될 애플리케이션 연관 요청(220)을 생성할 수도 있다. 레지스트리(8)는 사용자 식별자를 수신하지 않는다는 점에 유의한다. 레지스트리 엔트리(60)는 디바이스 ID에 의해서만 에이전트 디바이스(4)를 식별하며 어떠한 사용자 데이터도 포함하지 않는다.In another example, the consumer 10 may have obtained the agent device 4 directly from the application provider so that when the consumer acquires the agent device, the application provider 6 may already know the link between the device ID and the user ID have. In this case there is no need for a device association request 210 so the application provider 6 may instead generate an application association request 220 to be sent to the registry 8 using its internal record. Note that the registry 8 does not receive the user identifier. The registry entry 60 identifies the agent device 4 only by the device ID and does not contain any user data.

유사한 방식으로, 애플리케이션 연관 요청(220)은 또한, 한 애플리케이션 제공자(6)와 현재 연관된 에이전트 디바이스(4)가 상이한 제공자(6)에게 이전될 것을 요청하기 위해 애플리케이션 제공자(6)에 의해 이용될 수 있다. 애플리케이션 연관 요청(220)은 이 경우에, 에이전트 디바이스 자체(예를 들어, 사용자가 애플리케이션 제공자를 스위칭하기로 선택한 경우), 에이전트 디바이스(4)와 이전에 연관되었던 구 애플리케이션 제공자(6), 애플리케이션 연관 요청(220)을 이용하여 디바이스가 할당된 새로운 애플리케이션 제공자(6), 또는 다른 제3자 디바이스를 포함한, 다양한 소스로부터 나올 수 있다. 레지스트리(4)는, 에이전트 디바이스(4)를 새로운 애플리케이션 제공자(6)에게 할당하기 이전에 애플리케이션 연관 요청(220)을 행하고 있는 디바이스가 신뢰된 디바이스인지를 체크할 수 있다. 대안으로서, 에이전트 디바이스(4)가 복수의 애플리케이션 제공자(6)와 연관되는 것이 허용된다면, 상기에서 주어진 예에서와 같이 이전의 애플리케이션 제공자(6)를 대체하는 것이 아니라 이전의 애플리케이션 제공자(6)와 함께 새로운 애플리케이션 제공자(6)가 에이전트 디바이스(4)에 대해 등록될 수 있다.In a similar manner the application association request 220 may also be used by the application provider 6 to request that the agent device 4 currently associated with one application provider 6 be transferred to a different provider 6 have. The application association request 220 may in this case be used by the agent device itself (e.g., if the user chooses to switch the application provider), the old application provider 6 that was previously associated with the agent device 4, The request may come from a variety of sources, including the new application provider 6, or other third party device, to which the device is assigned using the request 220. The registry 4 may check whether the device performing the application association request 220 is a trusted device prior to assigning the agent device 4 to the new application provider 6. [ Alternatively, if the agent device 4 is allowed to be associated with a plurality of application providers 6, it may be possible to replace the previous application provider 6, as in the example given above, Together, a new application provider 6 may be registered for the agent device 4.

도 18은, 제1 레지스트리(8)에 등록되어 있는 에이전트 디바이스(4)를 제2 레지스트리(80)에 할당하는 방법을 나타낸다. 단계(250)에서, 요청자 디바이스는, 등록된 에이전트 디바이스(4)의 소유권을 제2 레지스트리(80)에 이전할 것을 요청한다. 요청자 디바이스는, 에이전트 디바이스(4), 제2 레지스트리(80)이거나, 애플리케이션 제공자(클라우드 서비스 소유자) 등의 또 다른 제3자 디바이스일 수도 있다. 단계(260)에서, 제1 레지스트리(8)는, 디바이스 할당 요청에서 언급된 에이전트 디바이스(4)가 레지스트리에 현재 등록되어 있는지를 체크한다. 등록되어 있지 않다면, 방법은 종료한다. 따라서, 에이전트 디바이스의 소유권을 할당받기 위하여, 그 에이전트 디바이스의 등록을 현재 갖고 있는 제1 레지스트리(8)로부터의 허용을 요청하는 것이 필요하다. 이것은, 그 에이전트 디바이스와 신뢰를 이미 확립한 레지스트리만이 그 신뢰된 상태를 또 다른 레지스트리(80)에 이전하는 것을 인가할 수 있도록 보장한다.18 shows a method of assigning the agent device 4 registered in the first registry 8 to the second registry 80. Fig. At step 250, the requestor device requests to transfer the ownership of the registered agent device 4 to the second registry 80. The requestor device may be an agent device 4, a second registry 80, or another third party device, such as an application provider (cloud service owner). In step 260, the first registry 8 checks whether the agent device 4 mentioned in the device allocation request is currently registered in the registry. If not, the method ends. Therefore, in order to be assigned the ownership of the agent device, it is necessary to request permission from the first registry 8 that currently has the registration of the agent device. This ensures that only the agent device and the registry that has already established trust can authorize the transfer of the trusted state to another registry 80.

단계(270)에서, 제1 레지스트리는 에이전트 디바이스 할당 요청을 행한 요청자 디바이스를 신뢰하는지를 판정한다. 신뢰하지 않는다면, 방법은 종료한다. 제1 레지스트리는 요청자를 이전에 이미 인증했을 수 있고, 이 경우, 요청자는 신뢰된 요청자로서 판정될 수 있다. 대안으로서, 단계(270)에서, 요청자가 이미 인증되지 않았다면 레지스트리는 요청자를 새로이 인증할 수 있다. 제1 레지스트리(8)와 요청자 사이의 인증은 임의의 공지된 기술을 이용하여 진행될 수 있다. 또한, 일부 인증 모델의 경우, 상이한 레지스트리로의 에이전트 디바이스(4)의 할당은 허용되지 않을 수도 있으므로 레지스트리는 에이전트 디바이스에 대한 인증 모델 정보가 에이전트 디바이스의 할당이 허용되도록 하는 것인지를 체크할 수 있다.In step 270, the first registry determines whether it trusts the requestor device that made the agent device assignment request. If not, the method ends. The first registry may have previously authenticated the requestor, in which case the requestor may be determined as a trusted requestor. Alternatively, at step 270, the registry may newly authenticate the requester if the requester has not been authenticated. Authentication between the first registry 8 and the requester may be performed using any known technique. Also, in some authentication models, the assignment of the agent device 4 to different registries may not be allowed, so the registry may check whether the authentication model information for the agent device is allowed to be assigned to the agent device.

단계(270)에서의 체크에 이어, 레지스트리가 요청자를 신뢰한다면 에이전트 디바이스는 상이한 레지스트리로 이전되는 것이 허용되고, 방법은 단계(280)로 진행하고, 여기서 에이전트 디바이스(4)는 키 생성기(18)를 이용해 새로운 키 쌍을 생성한다. 에이전트 디바이스(4)는 상이한 방식들로 새로운 키 쌍을 생성하도록 트리거될 수 있다. 한 예에서, 제1 레지스트리(8)는 에이전트 디바이스(4)에게 또 다른 레지스트리에 할당될 것을 지시할 수 있고, 이 지시에 응답하여 에이전트 디바이스는 새로운 키 쌍을 생성할 수 있다. 대안으로서, 제1 레지스트리(8)는 요청자 디바이스 또는 제2 레지스트리(80)에게 디바이스가 할당될 수 있다는 것을 통보할 수 있고, 그러면, 이 디바이스는 새로운 키 쌍을 생성하도록 에이전트 디바이스를 트리거할 수 있다. 단계(290)에서, 에이전트 디바이스(4)는 새로이 생성된 공개 키와 에이전트 디바이스(4)의 디바이스 ID를 포함하는 인증서 서명 요청을 생성한다. 공개 키에 대응하는 개인 키는 보안 저장소에 저장된다. 인증서 서명 요청은 제2 레지스트리(80)에 전송되어, 단계(300)에서, 제2 레지스트리(80)는 인증서에 서명하고 에이전트 디바이스(4)를 그 디바이스 레지스터에 등록한다. 단계(310)에서, 에이전트 디바이스는 원본 키 쌍으로부터 개인 키(29)를 삭제하고 그 레지스트리 URL(26)을 제2 레지스트리(80)의 URL에 대응하도록 업데이트함으로써 그 원본 레지스트리 소유권을 무효화한다. 단계(320)에서, 제1 레지스트리(8)는 에이전트 디바이스가 그 레지스트리 소유권을 정확히 이전했는지를 체크한 다음, 제2 레지스트리(80)에게 에이전트 디바이스(4)가 이제 제2 레지스트리(80)의 소유권 하에 있다는 것을 통보한다. 이 때, 제1 레지스트리(8)는 선택사항으로서 에이전트 디바이스(4)에 대한 레지스트리 엔트리(60)를 삭제하여 에이전트 디바이스(4)가 더 이상 제1 레지스트리에서 등록되어 있지 않도록 할 수 있다. 대안으로서, 에이전트 디바이스에 대한 엔트리는, 원래의 키 쌍으로부터의 공개 키(32)는 에이전트 디바이스(4)에 의해 그 대응하는 개인 키가 삭제되어서 더 이상 적절하지 않기 때문에 레지스트리 내에 머무를 수 있다.If the registry trusts the requester, then the agent device is allowed to migrate to a different registry, and the method proceeds to step 280, where the agent device 4 sends the key to the key generator 18, To generate a new key pair. The agent device 4 may be triggered to generate a new key pair in different manners. In one example, the first registry 8 may instruct the agent device 4 to be assigned to another registry, and in response to this indication, the agent device may generate a new key pair. Alternatively, the first registry 8 may notify the requestor device or the second registry 80 that a device may be assigned, and the device may then trigger the agent device to generate a new key pair . At step 290, the agent device 4 generates a certificate signing request including the newly generated public key and the device ID of the agent device 4. [ The private key corresponding to the public key is stored in the secure repository. The certificate signing request is sent to the second registry 80 and at step 300 the second registry 80 signs the certificate and registers the agent device 4 in its device register. At step 310, the agent device invalidates the original registry ownership by deleting the private key 29 from the original key pair and updating the registry URL 26 to correspond to the URL of the second registry 80. In step 320 the first registry 8 checks whether the agent device correctly migrated its registry ownership and then informs the second registry 80 that the agent device 4 is now in possession of the second registry 80 Under the same conditions. At this time, the first registry 8 may optionally delete the registry entry 60 for the agent device 4 so that the agent device 4 is no longer registered in the first registry. Alternatively, the entry for the agent device may remain in the registry because the public key 32 from the original key pair is no longer appropriate by the agent device 4 because its corresponding private key has been deleted.

도 18에 도시된 예는 인증 모델 3 또는 에이전트 디바이스가 새로운 키 쌍을 생성할 능력을 갖는 유사한 인증 모델에 대한 것이다. 에이전트 디바이스가 인증 모델 2 또는 인증 정보가 고정되어 있는 유사한 모델을 갖는 경우, 새로운 키 쌍을 생성하는 것이 아니라, 단계(280, 290, 및 300)에서, 제1 레지스트리로부터의 원본 키 쌍과 인증서가 이용되어 제2 레지스트리(80)에는 제1 레지스트리(8)에서 원래 등록되었던 것과 동일한 인증 정보가 제공될 수 있다. 할당 이후, 에이전트 디바이스(4)는 양쪽 레지스트리(8, 80)에 등록되어 양쪽 레지스트리에 의해 인증될 수 있고 양쪽 레지스트리(8, 80)와 연관된 애플리케이션 제공 장치와 통신할 수 있다.The example shown in FIG. 18 is for a similar authentication model in which the authentication model 3 or agent device has the ability to generate a new key pair. If the agent device has a similar model with authentication model 2 or authentication information fixed, then at steps 280, 290 and 300, instead of generating a new key pair, the original key pair from the first registry and the certificate And the second registry 80 may be provided with the same authentication information as that originally registered in the first registry 8. [ After the assignment, the agent device 4 can register with both registries 8, 80, be authenticated by both registries, and communicate with the application providing devices associated with both registries 8, 80.

에이전트 디바이스(4) 또는 제1 레지스트리(8)는 단계들(280 내지 320)이 자동으로 발생하되 단계들이 도중에 중단되어 완료되지 않은 채로 남는 것이 가능하지 않도록 보장하는 조처를 취할 수 있다. 이것은, 업데이트 프로세스를 통한 도중의 실패시에, 유일하게 가능한 결과는, 에이전트 디바이스(4)가 그 원본 키 쌍과 인증서를 유지하고 제2 레지스트리에 전송되지 않는 것(단계(270)를 따를 때, 요청자가 신뢰되지 않는다고 레지스트리가 판정하는 경우와 유사함)이거나, 에이전트 디바이스가 제2 레지스트리의 소유권 하에 있도록 완전히 업데이트되는 것일 것이다. 이것은 에이전트 디바이스(4)가 항상 하나의 레지스트리(8 또는 80)와 연락할 수 있고 어느 쪽 레지스트리(8, 80)에 의해서도 인증되지 못한 채 끝날 수 없도록 보장한다.The agent device 4 or the first registry 8 may take steps to ensure that the steps 280 to 320 occur automatically but that the steps are interrupted midway and it is not possible to remain unfinished. This is because, in the event of a failure on the way through the update process, the only possible result is that when the agent device 4 keeps the original key pair and certificate and is not sent to the second registry (step 270, (Similar to the case where the registry determines that the requester is untrusted), or the agent device is completely updated to be under the ownership of the second registry. This ensures that the agent device 4 can always communicate with one registry 8 or 80 and can not end unauthenticated by either registry 8,

일부 경우에, 도 18에 도시된 바와 같이 에이전트 디바이스(4)를 새로운 레지스트리에 할당할 때, 에이전트 디바이스(4)와 연관된 애플리케이션 제공자(6)도 역시 변할 수 있다. 제2 레지스트리(80)는 예를 들어 어느 애플리케이션(들)이 에이전트 디바이스(4)에 할당되어야 하는지를 선택할 수 있고 또는 대안으로서 제2 레지스트리(80)는, 에이전트 디바이스(4)와 연관될 애플리케이션 제공자(6)의 애플리케이션 식별자를 나타내는, 외부 소스로부터의 애플리케이션 연관 요청(220)을 기다릴 수 있다. 대안으로서, 레지스트리의 스위칭시에, 에이전트 디바이스(4)와 연관된 애플리케이션은 동일하게 남을 수 있고 제2 레지스트리(80)는 단순히, 제1 레지스트리(8)에서 에이전트 디바이스(4)에 대해 등록되었던 것과 동일한 애플리케이션 식별자(들)를 등록할 수 있다(예를 들어, 제1 레지스트리(8)는 애플리케이션 식별자(들)를 제2 레지스트리(80)에 제공할 수 있다).In some cases, when assigning the agent device 4 to a new registry as shown in FIG. 18, the application provider 6 associated with the agent device 4 may also change. The second registry 80 may for example select which application (s) should be assigned to the agent device 4 or alternatively the second registry 80 may include an application provider (s) 6) from the external source, indicating the application identifier of the application. Alternatively, at the time of switching of the registry, the application associated with the agent device 4 may remain the same and the second registry 80 may simply be the same as that registered for the agent device 4 in the first registry 8 (E.g., the first registry 8 may provide the application identifier (s) to the second registry 80).

도 19는 이전에 제2 레지스트리(80)에 이전되었던 에이전트 디바이스(4)의 소유권을 리셋하여, 소유권이 원래 에이전트 디바이스(4)를 등록했던 제1 레지스트리(8)의 관리에 반환되도록 하기 위한 방법을 도시한다. 단계(350)에서, 제2 레지스트리(80)(요청자 디바이스)는 제1 레지스트리(8)가 에이전트 디바이스(4)의 소유권을 되찾을 것을 요청한다. 단계(360)에서, 제1 레지스트리(8)는 제2 레지스트리(80)가 신뢰되는지를 판정한다. 다시 한번, 이것은, 인증을 수행하고, 요청자가 이전에 인증되었는지를 체크하거나, 에이전트 디바이스(4)가 제1 레지스트리(8)로 리셋되는 것을 지원하는지를 판정하는 것을 포함한다. 에이전트 디바이스(4)가 레지스트리로 리셋되는 것이 허용되지 않는다면 방법은 종료한다. 그렇지 않다면, 방법은 단계(370)로 진행하고, 그 곳에서 레지스트리는 에이전트 디바이스(4)가 현재 제2 레지스트리(80)에 의해 소유되어 있는지를 체크한다. 그렇지 않다면, 방법은 종료한다. 이것은, 등록의 현재 소유자만이 제1 레지스트리(8)로 리셋되도록 디바이스(4)의 등록을 트리거할 수 있는 것을 보장한다.19 shows a method for resetting ownership of an agent device 4 that has previously been transferred to a second registry 80 so that ownership is returned to the management of the first registry 8 that registered the original agent device 4 Lt; / RTI > At step 350, the second registry 80 (requestor device) requests the first registry 8 to regain ownership of the agent device 4. In step 360, the first registry 8 determines whether the second registry 80 is trusted. Once again, this involves performing authentication, checking whether the requester has been previously authenticated, or determining whether the agent device 4 supports resetting to the first registry 8. If the agent device 4 is not allowed to be reset to the registry, the method ends. If not, the method proceeds to step 370, where the registry checks whether the agent device 4 is currently owned by the second registry 80. If not, the method ends. This ensures that only the current owner of the registration can trigger registration of the device 4 to be reset to the first registry 8.

에이전트 디바이스가 제2 레지스트리(80)에 의해 소유되어 있다면, 단계(380)에서 에이전트 디바이스(4)에 의해 새로운 키 쌍이 생성된다. 단계(390)에서, 인증서 서명 요청이 새로운 공개 키 및 디바이스 ID와 함께 준비되고 이것은 제1 레지스트리(8)에 전송된다. 생성기 키 쌍의 개인 키는 에이전트 디바이스(4)의 보안 저장소(16)에 저장된다. 단계(400)에서, 제1 레지스트리(8)는 새로운 인증서에 서명하여 에이전트 디바이스를 한번 더 인가한다. 단계(410)에서, 에이전트 디바이스는, 이전의 키 쌍과 인증서를 삭제하고 그 레지스트리 URL(26)을 제1 레지스트리(8)에 대응하도록 업데이트함으로써 제2 레지스트리(80)에의 그 등록을 철회한다. 단계(420)에서, 디바이스 소유권 상태는 제1 레지스트리(8) 내에서 업데이트되고 제2 레지스트리(80)는 에이전트 디바이스(4)에 대한 그 엔트리를 삭제할 수 있다. 그 다음, 이 방법은 종료한다. 다시 한번, 단계들(380-420)에서의 동작들은 자동으로 수행되어, 에이전트 디바이스가 레지스트리들 중 하나에 항상 등록되어 있고 어느 한 쪽의 레지스트리에서의 유효한 등록 없이 종료할 수 없도록 보장할 수 있다.If the agent device is owned by the second registry 80, a new key pair is created by the agent device 4 at step 380. At step 390, a certificate signing request is prepared with the new public key and device ID and this is sent to the first registry 8. The private key of the generator key pair is stored in the security store 16 of the agent device 4. In step 400, the first registry 8 signs the new certificate and authorizes the agent device one more time. At step 410, the agent device withdraws its registration to the second registry 80 by deleting the previous key pair and certificate and updating the registry URL 26 to correspond to the first registry 8. At step 420, the device ownership status is updated in the first registry 8 and the second registry 80 can delete that entry for the agent device 4. [ The method then ends. Once again, the operations in steps 380-420 can be performed automatically to ensure that the agent device is always registered to one of the registries and can not be terminated without valid registration in either registry.

도 18 및 도 19의 방법들은 에이전트 디바이스가 레지스트리들 사이에서 이전되는 것 또는 한 번에 복수의 레지스트리에 할당되는 것을 허용하며, 이것은 어떤 오퍼레이터들이 그들의 에이전트 디바이스들을 공개 레지스트리를 이용하여 인증된 다른 에이전트 디바이스들로부터 분리하도록 그들 자신의 에이전트 디바이스들의 개인 레지스트리를 제공하는 것을 허용하는데 유용할 수 있다. 예를 들어, 국방 기구, 정부, 또는 도시 관리자는 그들이 조직 내에서의 이용을 위해 그들 자신의 보안되고 신뢰된 에이전트 디바이스들의 레지스트리를 운영할 수 있다. 범용적 이용을 위해 일반적인 공개 레지스트리가 제공될 수 있다. 에이전트 디바이스들이 제조되면 이들은 처음에 공개 레지스트리에 등록될 수 있지만, 개인 레지스트리에 의해 소유권 변경이 요청되면 이들은 개인 레지스트리에 이전될 수 있다. 개인 레지스트리에 의해 에이전트 디바이스들이 더 이상 요구되지 않으면, 소유권은 원래의 레지스트리로 리셋될 수 있다. 바람직하게는, 상이한 레지스트리로의 이전시에 새로운 인증 정보가 생성되어 에이전트 디바이스가 구 레지스트리에 의해 더 이상 인증될 수 없다는 것을 보장할 수 있다.The methods of FIGS. 18 and 19 allow an agent device to be transferred between the registries or to be assigned to multiple registrations at one time, which allows some operators to use their agent devices with other authorized agent devices Lt; RTI ID = 0.0 > a < / RTI > personal registry of their own agent devices. For example, a defense organization, government, or city manager can operate a registry of their own secure and trusted agent devices for use within an organization. A generic public registry can be provided for general use. Once the agent devices are manufactured, they can initially be registered in the public registry, but if the ownership change is requested by the private registry, they can be transferred to the private registry. If agent devices are no longer required by the private registry, ownership can be reset to the original registry. Advantageously, upon migration to a different registry, new authentication information may be generated to ensure that the agent device can no longer be authenticated by the old registry.

도 20 내지 도 23은 본 기술에 대한 상이한 응용예들을 설명하는 타임라인의 4가지 예를 도시한다. 도 20은 에이전트 디바이스(센서)가 특정한 클라우드 애플리케이션에 테더링(tether)되어 애플리케이션 제공자에 의해 직접 제공되고 다른 애플리케이션에서는 사용될 수 없도록 된 개인 헬스케어 분야의 제1 예를 도시한다. 에이전트 디바이스(4)는, 예를 들어, 환자의 건강을 모니터링하기 위해 헬스케어 제공자에 의해 작동되는 애플리케이션 제공 장치(6)에 심박수 정보를 피드백할 수 있는 심박수 모니터를 포함하는 손목-착용형 센서일 수 있다. 단계(1)에서, 칩 IP 회사는 센서(4)를 위한 하드웨어 및 소프트웨어와 센서에 대한 보안 설계 지침을 설계한다. 시스템 온 칩(SOC) 제조사는 보안 하드웨어와 고유 디바이스 식별자를 포함하는 SOC를 생성한다. ODM(original device manufacturer)은 센서 디바이스를 제조한다. OEM(original equipment manufacturer)은 최종 제품을 개발한다. (SOC, ODM, 또는 OEM 스테이지일 수 있는) 제조 프로세스 동안의 어떤 시점에서, 단계(2)에서, 디바이스 식별자와 개인 키가 에이전트 디바이스(4)에 설치된다. 단계(3)에서, 제조 지원 시스템(70)에 의해 센서 메타데이터가 레지스트리(8)에 업로드된다. 메타데이터는, 예를 들어, 디바이스 식별자, 공개 키 및 인증 모델 정보를 포함할 수 있다. 레지스트리 장치(8)는 이 정보를 그 디바이스 레지스트리에 등록한다.Figures 20-23 illustrate four examples of timelines that illustrate different applications for the present technique. Figure 20 shows a first example of a personal healthcare field in which an agent device (sensor) is tethered to a particular cloud application so that it is directly served by an application provider and can not be used in other applications. The agent device 4 may be a wrist-wearable sensor including, for example, a heart rate monitor capable of feeding heart rate information to an application provision device 6 operated by a healthcare provider to monitor a patient ' . In step (1), the chip IP company designs hardware and software for the sensor (4) and security design guidelines for the sensor. A system-on-chip (SOC) manufacturer creates an SOC that includes security hardware and a unique device identifier. The original device manufacturer (ODM) manufactures sensor devices. The original equipment manufacturer (OEM) develops the final product. At some point during the manufacturing process (which may be an SOC, ODM, or OEM stage), in step 2, a device identifier and a private key are installed in the agent device 4. In step (3), sensor metadata is uploaded to the registry (8) by the manufacturing support system (70). The metadata may include, for example, device identifiers, public keys, and authentication model information. The registry device 8 registers this information in its device registry.

단계(4)에서, 센서는 헬스케어 제공자(6)에게 판매된다. 단계(5)에서, 헬스케어 제공자(6)는 센서를 그 서비스의 일부로서 사용자에게 제공한다. 헬스케어 제공자(6)는 디바이스의 센서 ID를 사용자의 ID와 연관시킨다. 단계(4) 또는 단계(5)에서, OEM 또는 애플리케이션 제공자(6)는 애플리케이션 연관 요청을 레지스트리(8)에 제공하여 센서(4)가 헬스케어 제공자의 클라우드 애플리케이션에서 이용될 것임을 통보한다. 따라서, 레지스트리는 고객 정보를 갖지 않지만, 에이전트 디바이스(4)가 활성화될 때 디바이스가 헬스케어 회사에 대응하는 애플리케이션 제공 장치(6)과 통신할 것이라는 것을 안다.In step (4), the sensor is sold to the healthcare provider (6). In step (5), the healthcare provider (6) provides the sensor to the user as part of its service. The healthcare provider 6 associates the sensor ID of the device with the user ' s ID. In step (4) or step (5), the OEM or application provider (6) provides an application association request to the registry (8) to notify the sensor (4) that it will be used in the healthcare provider's cloud application. Thus, the registry does not have customer information, but knows that when the agent device 4 is activated, the device will communicate with the application providing device 6 corresponding to the healthcare company.

단계(6)에서, 사용자는 헬스케어 제공자(6)로부터 센서(4)를 수신한다. 사용자는 커프(cuff)를 자신의 손목에 맞게 조절하고, 센서(4)를 턴 온(turn on) 해서 이용하기 시작한다. 디바이스를 턴 온 하는 것은 센서(4)를 트리거하여 인증 요청과 함께 레지스트리(8)에 연락하게 하며, 전술된 바와 같이 상호 인증이 이루어진다. 사용자는 이것을 알지 못하며 이 인증을 트리거하기 위한 사용자 인터페이스는 없다 ― 인증은 디바이스의 활성화에 의해 자동으로 트리거된다. 레지스트리(8)는 센서(4)가 이미 그 레지스트리에 등록되었는지 및 헬스케어 제공자(6)에 대응하는 애플리케이션 식별자를 그 레지스트리 엔트리에 갖고 있는지를 판정한다. 따라서, 단계(7)에서, 레지스트리(8)는 헬스케어 제공자에게 디바이스 ID를 통보하고 헬스케어 제공자(6)에게 에이전트 디바이스가 이제 인증된 유효한 디바이스 ID와 함께 활성이라는 것을 통보한다. 단계(8)에서, 헬스케어 제공자(6)는 센서(4)와의 보안 통신을 위한 애플리케이션 키를 요청한다. 단계(9)에서, 레지스트리는 센서(4)와 헬스케어 제공자(6) 양쪽 모두에게 애플리케이션 키를 제공한다. 단계(10)에서, 센서(4)와 헬스케어 제공자(6) 사이에 레지스트리의 관여 없이 직접적인 보안 암호화된 통신이 시작된다.At step 6, the user receives the sensor 4 from the healthcare provider 6. The user adjusts the cuff to fit his or her wrist and turns on the sensor 4 and starts using it. Turning the device on triggers the sensor 4 to contact the registry 8 with an authentication request, and mutual authentication is performed as described above. The user is unaware of this and there is no user interface to trigger this authentication - authentication is triggered automatically by activation of the device. The registry 8 determines whether the sensor 4 has already been registered in the registry and has an application identifier corresponding to the healthcare provider 6 in its registry entry. Thus, at step 7, the registry 8 notifies the healthcare provider of the device ID and informs the healthcare provider 6 that the agent device is now active with the validated device ID being authenticated. At step 8, the healthcare provider 6 requests an application key for secure communication with the sensor 4. [ In step 9, the registry provides application keys to both the sensor 4 and the healthcare provider 6. In step 10, a direct secure encrypted communication is initiated between the sensor 4 and the health care provider 6 without involvement of the registry.

도 21은, 에이전트 디바이스가 사용자에게 제공되기 이전에 클라우드 애플리케이션에 테더링되는 것 대신에, 사용자가 "기성품" 디바이스를 구매하고 나중에 그 디바이스를 특정한 클라우드 애플리케이션과 연관시킬 수 있는 이용 사례의 또 다른 예를 도시한다. 이것은 사용자가 동일한 클라우드 애플리케이션에서 상이한 유형 또는 브랜드의 센서를 이용하는 것을 허용한다. 다시 한번, 이 예는 애플리케이션 제공 장치가 헬스케어 회사에 속하는 개인 헬스케어에 관한 것이다. 단계들(1-3)은 도 20에서와 동일하다. 그러나, 이 경우 단계(4)에서 OEM은 제품을 소매상에게 판매하고 소매상은 센서(4)를 최종 사용자에게 판매한다. 이 때, 센서(4)는 애플리케이션 제공자(6)에게 예속되어 있지 않다.Figure 21 illustrates another example of a use case where a user may purchase a "ready-for-purchase" device and later associate the device with a particular cloud application, instead of being tethered to the cloud application before the agent device is presented to the user / RTI > This allows the user to use different types or brands of sensors in the same cloud application. Once again, this example relates to personal healthcare where the application providing device belongs to a healthcare company. Steps 1-3 are the same as in Fig. However, in this case, in step (4), the OEM sells the product to the retailer and the retailer sells the sensor (4) to the end user. At this time, the sensor 4 is not assigned to the application provider 6.

단계(5)에서, 사용자는 헬스케어 제공자(6)에 의해 제공하고 센서(4) 그 자체 또는 센서가 팩키징되어 있는 박스 상의 코드를 스캔하는 스마트폰 앱을 실행한다. 스마트폰 상의 앱은 센서의 디바이스 ID를 특정한 사용자 계정에 링크하는 센서 연관 요청을 헬스케어 제공자에게 전송한다. 단계(6)에서, 스마트폰 앱 또는 헬스케어 제공자의 플랫폼(6)은 애플리케이션 ID를 디바이스 ID에 링크하는 애플리케이션 연관 요청을 레지스트리(8)에 전송한다. 따라서, 이제, 레지스트리는 에이전트 디바이스를 특정한 애플리케이션과 연관시킬 수 있고 애플리케이션 제공자는 에이전트 디바이스 ID를 특정한 사용자와 연관시킬 수 있다. 그 다음, 도 21의 단계들(7-11)은 각각 도 20의 단계들(6-10)과 동일한 방식으로 진행한다.At step 5, the user runs a smartphone app provided by the healthcare provider 6 and scanning the code on the box, either the sensor 4 itself or the sensor is packaged. The app on the smartphone sends a sensor association request to the healthcare provider that links the device ID of the sensor to a specific user account. In step 6, the smartphone app or healthcare provider's platform 6 sends an application association request to the registry 8 that links the application ID to the device ID. Thus, now the registry can associate an agent device with a particular application, and an application provider can associate an agent device ID with a particular user. Then, steps 7-11 of FIG. 21 proceed in the same manner as steps 6-10 of FIG. 20, respectively.

도 22는, "BYOD(buy your own device)" 센서(4)가 사용자에 의해 구매되고 사용자는 센서(4)와 함께 이용하기 위한 수 개의 상이한 애플리케이션 제공자들 중 하나를 선택할 자유가 있는 제3 이용 사례를 도시한다. 사물 인터넷(IOT) 앱 스토어(400)가 이 선택을 행하기 위해 이용된다. 도 22의 단계들(1-4)은 도 21의 경우와 동일하다. 다시 한번, 센서(4)는 소매상에게 판매되고 소매상은 이것을 최종 사용자에게 판매한다. 단계(5)에서, 사용자는, 스마트폰, 태블릿, 또는 컴퓨터 상에서 앱 스토어(400)를 실행하고, 다시 한번, QR 코드 또는 유사한 기술이 이용되어 센서(4)의 디바이스 ID를 수집한다. 단계(6)에서, 앱 스토어(400)는 레지스트리(8)로 센서의 디바이스 ID를 유효성확인한다. 예를 들어, 앱 스토어(400)는 레지스트리(8)에게 질의하여 에이전트 디바이스에 의해 이용되는 인증 모델 또는 에이전트 디바이스의 다른 능력을 판정하고 에이전트 디바이스(4)와 함께 동작하는 호환가능한 앱들의 메뉴를 준비할 수 있다. 사용자는 앱들의 메뉴를 제공받고 원하는 앱을 선택하여, 실행하고 로그인한다. 단계(7)에서, 앱 스토어는 레지스트리를 사용자의 선택으로 업데이트하여 레지스트리가 센서의 디바이스 ID를 선택된 애플리케이션의 애플리케이션 식별자와 연관시키게 한다. 앱 스토어는 또한, 센서의 디바이스 ID와 사용자 ID를 선택된 애플리케이션 제공자(6)에게 전송하여 제공자(6)가 사용자 ID와 센서 ID를 함께 링크시킬 수 있게 한다. 이 때, 레지스트리(8)는 특정한 센서(4)가 어느 애플리케이션과 통신할 것인지를 알며, 애플리케이션 제공자는 어느 고객이 그 센서(4)와 연관되는지를 안다. 그 다음, 도 22의 단계들(8-12)은 각각 도 21의 단계들(7-11)과 동일하며, 여기서, 센서(4)와 레지스트리(22) 사이의 상호 인증이 이루어지고, 그 다음, 센서(4)와 애플리케이션 제공자(6) 사이에 보안 통신이 확립된다.Figure 22 shows a third use case where the " buy your own device "sensor 4 is purchased by the user and the user is free to choose one of several different application providers for use with the sensor 4 Fig. The Internet of Things (IOT) App Store 400 is used to make this selection. The steps 1-4 of Fig. 22 are the same as those of Fig. Once again, the sensor 4 is sold to the retailer and the retailer sells it to the end user. In step 5, the user runs the app store 400 on a smartphone, tablet, or computer and once again uses a QR code or similar technique to collect the device ID of the sensor 4. [ In step 6, the App Store 400 validates the device ID of the sensor to the registry 8. For example, the app store 400 may query the registry 8 to determine the authentication model or other capabilities of the agent device used by the agent device and to prepare a menu of compatible apps that work with the agent device 4 can do. The user is provided with a menu of apps, selects the desired app, executes and logs in. In step 7, the app store updates the registry with the user's selection, causing the registry to associate the device ID of the sensor with the application identifier of the selected application. The App Store also sends the device ID and user ID of the sensor to the selected application provider 6 so that the provider 6 can link the user ID and the sensor ID together. At this time, the registry 8 knows which application the particular sensor 4 will communicate with, and the application provider knows which customer is associated with the sensor 4. Steps 22-12 in FIG. 22 are then identical to steps 7-11 in FIG. 21, respectively, where mutual authentication is performed between sensor 4 and registry 22, , A secure communication is established between the sensor (4) and the application provider (6).

도 23은 에이전트 디바이스(4)가 개인 헬스케어가 아니라 대규모 산업 또는 정부 배치에서 이용되는 제4 이용 사례를 도시한다. 이 예에서, 에이전트 디바이스는 거리 조명등의 동작에 관한 데이터를 클라우드 플랫폼에 피드백하고, 그 다음, 유지보수 제공자가 이것을 이용하여 예를 들어, 거리 조명등이 수리를 요구하는지를 판정하는 거리 조명등에 설치된 센서(4)이다. 단계들(1-3)은 다시 한번 도 20 내지 도 22에서와 동일하다. 단계(4)에서, 센서를 포함하는 제품이 제조되고 계약자에게 제공된다. 예를 들어, 거리 조명등이 통합된 센서들과 함께 제조되거나, 또는 대안으로서 센서를 포함하는 제품이, 나중의 스테이지에서 거리 조명등 상에 설치되기 위해 거리 조명등과는 별개로 제작될 수 있다. 이 때 레지스트리가 업데이트되어 센서(4)의 판매를 특정한 서비스 제공자(6)에게 반영하거나 또는 대안으로서 이것은, 계약자가 스마트폰 앱이나 유사한 디바이스를 이용하여 제품 ID를 스캔하거나 센서(4)에 대한 GPS 위치 데이터를 제공할 때, 나중에 단계(5)에서의 센서와 거리 조명등의 설치시에 이루어질 수 있다. 단계(6)에서, 계약자의 디바이스는, 센서(4)의 디바이스 ID를, 센서(4)로부터의 센서 데이터를 이용할 애플리케이션(6)의 애플리케이션 식별자와 함께, 레지스트리에 전송할 수 있다. 스마트폰 앱은, 간단한 방식으로, 계약자가 무엇이 이루어지고 있는지를 이해할 필요없이 계약자가 센서(4)를 특정한 애플리케이션(6)에 링크하는 연관 요청을 행하는 것을 허용할 수 있다.23 shows a fourth use case in which the agent device 4 is used in a large-scale industrial or governmental organization rather than in personal healthcare. In this example, the agent device feeds back data to the cloud platform about the operation of streetlights and the like, and then uses the maintenance provider to determine, for example, 4). Steps 1-3 are once again the same as in Figures 20-22. In step (4), a product comprising the sensor is manufactured and provided to the contractor. For example, a streetlight lamp may be manufactured with integrated sensors, or alternatively, a product containing the sensor may be produced separately from the streetlight lamp to be installed on the streetlight lamp in a later stage. At this time, the registry may be updated to reflect the sale of the sensor 4 to a particular service provider 6, or alternatively it may be possible for the contractor to scan the product ID using a smartphone app or similar device, Positional data, at the time of installation of the sensor and the distance illumination at a later step (5). In step 6 the contractor's device may send the device ID of the sensor 4 to the registry along with the application identifier of the application 6 that will use the sensor data from the sensor 4. [ The smartphone app can, in a simple manner, allow the contractor to make association requests to link the sensor 4 to a particular application 6 without having to understand what the contractor is doing.

단계(7)에서, 에이전트 디바이스(4)의 활성화시에(예를 들어, 전원투입시에), 거리 조명등의 에이전트 디바이스는 레지스트리와 직접 연락하여 앞서 논의된 바와 같이 상호 인증을 확립한다. 일단 인증이 확립되고 나면, 단계(8)에서 레지스트리는 사물 인터넷(IoT) 기반의 시스템을 개발하거나 배치하는 서비스 제공자(6)에게 새로운 거리 조명등과 에이전트 디바이스들이 설치되었고 유효한 인증된 케이스 신원과 함께 온라인이라는 것을 통보한다. 단계(9)에서, 서비스 제공자(6)는 보안 통신을 위한 애플리케이션 키를 요청한다. 단계(10)에서, 레지스트리(8)는 대칭 애플리케이션 키를 서비스 제공자(6)와 에이전트 디바이스 자체에 제공한다. 그 다음, 직접 보안 통신이 시작되고 서비스 제공자(6)의 IoT 플랫폼은 센서(4)에 의해 제공된 센서 데이터를 이용하여 애플리케이션을 실행한다. (도시 관리자, 또는 유지보수 계약 회사 등의) 고객은 또한 예를 들어 웹 플랫폼을 이용하여 IoT 시스템에 액세스할 수 있다(단계 11). 따라서, 도 23의 예에서, 레지스트리(8)의 이용을 통해, 계약자는 에이전트 디바이스를 간단히 설치하고, 전원에 플러그인하거나 단일 버튼을 누르는 등의 간단한 수단을 이용하여 코드를 스캔하거나 및/또는 에이전트 디바이스를 활성화할 수 있기 때문에, 장비를 설치하는 계약자의 일이 간소화되고, 그 다음, 레지스트리(8)는 에이전트 디바이스를 인증하고 애플리케이션 제공 장치(6)와의 접속을 확립한다. 계약자는 에이전트 디바이스를 구성하기 위해 사용자 인터페이스와 상호작용하면서 시간을 소비할 필요가 없다.At step 7, upon activation of the agent device 4 (e.g. at power up), the agent device, such as a streetlight, contacts the registry directly to establish mutual authentication as discussed above. Once the authentication is established, in step (8), the registry registers the new streetlight and the agent devices with the service provider (6) that develops or deploys a system based on the Internet (IoT) . In step 9, the service provider 6 requests an application key for secure communication. In step 10, the registry 8 provides a symmetric application key to the service provider 6 and the agent device itself. The direct secure communication is then initiated and the IoT platform of the service provider 6 uses the sensor data provided by the sensor 4 to execute the application. A customer (such as a city manager or a maintenance contractor) may also access the IoT system using, for example, a web platform (step 11). Thus, in the example of Figure 23, through the use of the registry 8, the contractor can simply install the agent device, scan the code using simple means such as plugging in the power supply or pressing a single button, and / The work of the contractor installing the equipment is simplified and the registry 8 then authenticates the agent device and establishes a connection with the application providing device 6. [ The contractor does not have to spend time interacting with the user interface to configure the agent device.

여기서 특정한 실시예들이 설명되었지만, 본 발명은 이것으로 제한되지 않고 본 발명의 범위 내에서 많은 수정과 추가사항이 이루어질 수 있다는 것을 이해할 것이다. 예를 들어, 본 발명의 범위로부터 벗어나지 않고 독립항들의 특징들과 함께 이하의 종속항들의 특징들의 다양한 조합이 이루어질 수 있다.While specific embodiments have been described herein, it will be appreciated that the invention is not so limited, but many modifications and additions may be made within the scope of the invention. For example, various combinations of the features of the following dependent claims may be made with the features of the independent claims without departing from the scope of the invention.

Claims (29)

하나 이상의 애플리케이션 제공 장치와의 신뢰된 통신을 수행하기 위한 에이전트 디바이스(agent device)에 대한 신뢰된 신원(trusted identity)을 확립(establishing)하는 방법으로서,
(a) 복수의 인증 모델 중 어느 것이 상기 에이전트 디바이스를 고유하게 인증하는데 이용되는 선택된 인증 모델인지를 판정하는 단계;
(b) 상기 선택된 인증 모델에 따라 제1 인증 정보와 제2 인증 정보를 생성 ―상기 제1 인증 정보는 상기 에이전트 디바이스의 신원을 고유하게 인증하기 위한 것이고, 상기 제2 인증 정보는 상기 에이전트 디바이스가 상기 제1 인증 정보를 갖고 있는지를 확인하기 위한 것임― 하는 단계;
(c) 상기 제1 인증 정보를 상기 에이전트 디바이스에 임베딩하는 단계; 및
(d) 에이전트 디바이스들의 디바이스 레지스트리(device registry)를 유지하기 위한 레지스트리 장치(registry apparatus)에, 상기 제2 인증 정보와, 상기 복수의 인증 모델 중 어느 것이 상기 에이전트 디바이스에 의해 이용되는 상기 선택된 인증 모델인지를 식별하는 인증 모델 정보를 전송하는 단계
를 포함하는 방법.
CLAIMS What is claimed is: 1. A method for establishing a trusted identity for an agent device for performing trusted communications with one or more application providing devices,
(a) determining which of a plurality of authentication models is a selected authentication model used to uniquely authenticate the agent device;
(b) generate first authentication information and second authentication information in accordance with the selected authentication model, the first authentication information uniquely authenticating the identity of the agent device, Authenticating the first authentication information;
(c) embedding the first authentication information in the agent device; And
(d) registering, in a registry apparatus for maintaining a device registry of the agent devices, the second authentication information, and the selected authentication model which is used by the agent device, Transmitting authentication model information identifying the identity
≪ / RTI >
제1항에 있어서, 상기 복수의 인증 모델은 상이한 보안 레벨들을 제공하는, 방법.2. The method of claim 1, wherein the plurality of authentication models provide different security levels. 제1항 또는 제2항에 있어서, 상기 방법은 상기 선택된 인증 모델을 구현하기 위해 상기 에이전트 디바이스에 인증 자원들을 제공하는 단계를 포함하는 방법.3. The method of claim 1 or 2, wherein the method comprises providing authentication resources to the agent device to implement the selected authentication model. 제1항에 있어서, 상기 판정하는 단계는, 상기 선택된 인증 모델을 구현하기 위해 인증 자원이 상기 에이전트 디바이스에 이미 제공되어 있는지에 의존하여 상기 선택된 인증 모델을 판정하는, 방법.2. The method of claim 1, wherein the determining comprises determining the selected authentication model depending on whether authentication resources are already provided to the agent device to implement the selected authentication model. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 제1 인증 정보와 상기 제2 인증 정보는 상기 에이전트 디바이스와는 별개의 외부 디바이스에 의해 생성되는, 방법.The method according to any one of claims 1 to 4, wherein the first authentication information and the second authentication information are generated by an external device separate from the agent device. 제5항에 있어서, 상기 제1 인증 정보가 상기 에이전트 디바이스에 임베딩된(embedded) 후에, 상기 외부 디바이스는 상기 제1 인증 정보를 삭제하는, 방법.6. The method of claim 5, wherein after the first authentication information is embedded in the agent device, the external device deletes the first authentication information. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 제1 인증 정보와 상기 제2 인증 정보는 상기 에이전트 디바이스 내의 회로에 의해 내부적으로 생성되는, 방법.The method according to any one of claims 1 to 4, wherein the first authentication information and the second authentication information are generated internally by circuitry in the agent device. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 임베딩하는 단계는 상기 제1 인증 정보를 저장하기 위해 상기 에이전트 디바이스에 저장 회로를 제공하는 단계를 포함하는 방법.8. The method of any one of claims 1 to 7, wherein the step of embedding comprises providing storage circuitry to the agent device to store the first authentication information. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 임베딩하는 단계는, 상기 에이전트 디바이스에 제공된 저장 회로에 상기 제1 인증 정보를 저장하는 단계를 포함하는, 방법.8. The method according to any one of claims 1 to 7, wherein the step of embedding comprises storing the first authentication information in a storage circuit provided to the agent device. 제1항 내지 제9항 중 어느 한 항에 있어서, 상기 제1 인증 정보는 상기 에이전트 디바이스의 보호된 저장 영역에 임베딩되는, 방법.10. The method of any one of claims 1 to 9, wherein the first authentication information is embedded in a protected storage area of the agent device. 제1항 내지 제10항 중 어느 한 항에 있어서, 상기 복수의 인증 모델은, 상기 제1 인증 정보와 상기 제2 인증 정보가 동일한 인증 정보를 포함하는 적어도 하나의 인증 모델을 포함하는, 방법.11. The method according to any one of claims 1 to 10, wherein the plurality of authentication models include at least one authentication model in which the first authentication information and the second authentication information include the same authentication information. 제1항 내지 제10항 중 어느 한 항에 있어서, 상기 복수의 인증 모델은, 상기 제1 인증 정보가 상기 제2 인증 정보와는 상이한 인증 정보를 포함하는 적어도 하나의 인증 모델을 포함하는, 방법.11. The method according to any one of claims 1 to 10, wherein the plurality of authentication models include at least one authentication model in which the first authentication information includes authentication information different from the second authentication information . 제12항에 있어서, 상기 적어도 하나의 인증 모델에 대해, 상기 제1 인증 정보는 개인 키를 포함하고 상기 제2 인증 정보는 상기 개인 키와는 상이한 공개 키를 포함하는, 방법.13. The method of claim 12, wherein for the at least one authentication model, the first authentication information comprises a private key and the second authentication information comprises a public key different from the private key. 제13항에 있어서, 상기 적어도 하나의 인증 모델에 대해, 상기 전송하는 단계는 상기 공개 키를 포함하는 디지털 인증서를 전송하는 단계를 포함하는, 방법.14. The method of claim 13, wherein for the at least one authentication model, the transmitting comprises transmitting a digital certificate comprising the public key. 제1항 내지 제14항 중 어느 한 항에 있어서, 상기 복수의 인증 모델은, 상기 제1 인증 정보와 상기 제2 인증 정보가 변경불가능한 적어도 하나의 인증 모델을 포함하는, 방법.15. The method according to any one of claims 1 to 14, wherein the plurality of authentication models include at least one authentication model in which the first authentication information and the second authentication information are unalterable. 제1항 내지 제14항 중 어느 한 항에 있어서, 상기 복수의 인증 모델은, 상기 제1 인증 정보와 상기 제2 인증 정보가 변경가능한 적어도 하나의 인증 모델을 포함하는, 방법.15. The method according to any one of claims 1 to 14, wherein the plurality of authentication models include at least one authentication model in which the first authentication information and the second authentication information are changeable. 제16항에 있어서, 상기 에이전트 디바이스는 상기 제1 인증 정보와 상기 제2 인증 정보를 재생성하기 위한 인증 정보 생성 회로를 포함하는, 방법.17. The method of claim 16, wherein the agent device comprises authentication information generation circuitry for regenerating the first authentication information and the second authentication information. 제1항에 있어서, 상기 복수의 인증 모델은,
(i) 상기 제1 및 제2 인증 정보가 동일한 인증 정보를 포함하고 변경불가능한 제1 인증 모델;
(ii) 상기 제1 및 제2 인증 정보가 상이한 인증 정보를 포함하고 변경불가능한 제2 인증 모델; 및
(iii) 상기 제1 및 제2 인증 정보가 상이한 인증 정보를 포함하고 변경가능한 제3 인증 모델
을 포함하는, 방법.
The authentication method according to claim 1,
(i) a first authentication model in which the first and second authentication information includes the same authentication information and is unchangeable;
(ii) a second authentication model in which the first and second authentication information includes different authentication information and is unchangeable; And
(iii) the first and second authentication information include different authentication information, and the third authentication model
≪ / RTI >
제1항에 있어서, 상기 복수의 인증 모델은, 상기 에이전트 디바이스가 상이한 디바이스 레지스트리에 재할당될 수 있는 적어도 하나의 인증 모델을 포함하는, 방법.2. The method of claim 1, wherein the plurality of authentication models comprises at least one authentication model from which the agent device can be reassigned to a different device registry. 제1항 내지 제19항 중 어느 한 항에 있어서, 상기 에이전트 디바이스는, 상기 에이전트 디바이스를 고유하게 식별하는 디바이스 식별자를 포함하고, 상기 전송하는 단계는 상기 디바이스 식별자를 상기 레지스트리 장치에 전송하는 단계를 더 포함하는, 방법.20. The method according to any one of claims 1 to 19, wherein the agent device includes a device identifier that uniquely identifies the agent device, and wherein the transmitting comprises transmitting the device identifier to the registry device ≪ / RTI > 제1항 내지 제20항 중 어느 한 항에 있어서, 상기 레지스트리 장치를 인증하기 위해 상기 에이전트 디바이스에 레지스트리 인증 정보를 임베딩하는 단계를 더 포함하는 방법.21. The method of any one of claims 1 to 20, further comprising embedding registry authentication information in the agent device to authenticate the registry device. 하나 이상의 애플리케이션 제공 장치와 신뢰된 통신을 수행하기 위한 에이전트 디바이스들의 디바이스 레지스트리를 유지하기 위한 레지스트리 장치로서,
복수의 인증 모델 중 어느 것이 대응하는 에이전트 디바이스를 고유하게 인증하는데 이용되는 선택된 인증 모델인지를 식별하는 인증 모델 정보를 포함하는 상기 대응하는 에이전트 디바이스에 대한 적어도 하나의 레지스트리 엔트리(registry entry)를 포함하는 디바이스 레지스트리를 저장하도록 구성된 저장 회로; 및
명시된 에이전트 디바이스에 대한 상기 인증 모델 정보를 요청하는 외부 디바이스로부터의 인증 모델 질의에 응답하여, 상기 명시된 에이전트 디바이스에 대한 상기 레지스트리 엔트리의 상기 인증 모델 정보를 상기 외부 디바이스에 전송하도록 구성된 통신 회로
를 포함하는 레지스트리 장치.
A registry device for maintaining a device registry of agent devices for performing trusted communications with one or more application providing devices,
Comprising at least one registry entry for the corresponding agent device including authentication model information identifying which of a plurality of authentication models is the selected authentication model used to uniquely authenticate the corresponding agent device A storage circuit configured to store a device registry; And
A communication circuit configured to send the authentication model information of the registry entry for the specified agent device to the external device in response to an authentication model query from an external device requesting the authentication model information for the specified agent device
.
제22항에 있어서, 각각의 레지스트리 엔트리는 상기 대응하는 에이전트 디바이스를 고유하게 인증하기 위한 인증 정보를 포함하고, 상기 레지스트리 장치는 상기 인증 정보를 이용하여 상기 대응하는 에이전트 디바이스의 인증을 수행하도록 구성된 처리 회로를 포함하는, 레지스트리 장치.23. The computer-readable medium of claim 22, wherein each registry entry includes authentication information for uniquely authenticating the corresponding agent device, and wherein the registry device is configured to perform the authentication configured to perform authentication of the corresponding agent device using the authentication information Circuitry. ≪ / RTI > 제23항에 있어서, 상기 통신 회로는, 상기 인증이 성공적이면 상기 인증된 에이전트 디바이스와 애플리케이션 제공 장치에 애플리케이션 키 정보를 전송하도록 구성되고, 상기 애플리케이션 키는 상기 에이전트 디바이스와 상기 애플리케이션 제공 장치 사이의 신뢰된 통신을 가능케 하기 위한 것인, 레지스트리 장치.24. The method of claim 23, wherein the communication circuit is configured to send application key information to the authenticated agent device and the application provision device if the authentication is successful, and wherein the application key establishes a trust between the agent device and the application provision device Gt; communication, < / RTI > 하나 이상의 애플리케이션 제공 장치와 신뢰된 통신을 수행하기 위한 에이전트 디바이스들의 디바이스 레지스트리를 유지하기 위한 레지스트리 장치로서,
복수의 인증 모델 중 어느 것이 대응하는 에이전트 디바이스를 고유하게 인증하는데 이용되는 선택된 인증 모델인지를 식별하는 인증 모델 정보를 포함하는 상기 대응하는 에이전트 디바이스에 대한 적어도 하나의 레지스트리 엔트리를 포함하는 디바이스 레지스트리를 저장하기 위한 저장 수단; 및
명시된 에이전트 디바이스에 대한 상기 인증 모델 정보를 요청하는 외부 디바이스로부터의 인증 모델 질의에 응답하여 상기 명시된 에이전트 디바이스에 대한 상기 레지스트리 엔트리의 상기 인증 모델 정보를 상기 외부 디바이스에 전송하기 위한 통신 수단
을 포함하는 레지스트리 장치.
A registry device for maintaining a device registry of agent devices for performing trusted communications with one or more application providing devices,
Storing a device registry comprising at least one registry entry for the corresponding agent device including authentication model information identifying which of a plurality of authentication models is the selected authentication model used to uniquely authenticate the corresponding agent device Storage means And
Communication means for transmitting the authentication model information of the registry entry for the specified agent device to the external device in response to an authentication model query from an external device requesting the authentication model information for the specified agent device
.
레지스트리 장치가 하나 이상의 애플리케이션 제공 장치와 신뢰된 통신을 수행하기 위한 에이전트 디바이스들의 디바이스 레지스트리를 유지하기 위한 방법으로서,
복수의 인증 모델 중 어느 것이 대응하는 에이전트 디바이스를 고유하게 인증하는데 이용되는 선택된 인증 모델인지를 식별하는 인증 모델 정보를 포함하는 상기 대응하는 에이전트 디바이스에 대한 적어도 하나의 레지스트리 엔트리를 포함하는 디바이스 레지스트리를 유지하는 단계;
외부 디바이스로부터, 명시된 에이전트 디바이스에 대한 상기 인증 모델 정보를 요청하는 인증 모델 질의를 수신하는 단계; 및
상기 인증 모델 질의에 응답하여, 상기 명시된 에이전트 디바이스에 대한 상기 레지스트리 엔트리의 상기 인증 모델 정보를 상기 외부 디바이스에 전송하는 단계
를 포함하는 방법.
A method for maintaining a device registry of agent devices for a trusted device to perform trusted communications with one or more application-served devices,
Maintaining a device registry that includes at least one registry entry for the corresponding agent device that includes authentication model information identifying which of a plurality of authentication models is the selected authentication model used to uniquely authenticate the corresponding agent device ;
Receiving, from an external device, an authentication model query for requesting the authentication model information for the specified agent device; And
Sending, in response to the authentication model query, the authentication model information of the registry entry for the specified agent device to the external device
≪ / RTI >
하나 이상의 애플리케이션 제공 장치와 신뢰된 통신을 수행하기 위한 에이전트 디바이스들의 디바이스 레지스트리에 에이전트 디바이스를 등록하는 방법으로서,
(a) 복수의 인증 모델 중 어느 것이 상기 에이전트 디바이스를 고유하게 인증하기 위해 상기 에이전트 디바이스에 의해 이용되는 선택된 인증 모델인지를 판정하는 단계; 및
(b) 상기 디바이스 레지스트리를 유지하기 위한 레지스트리 장치에, 상기 복수의 인증 모델 중 어느 것이 상기 에이전트 디바이스에 대한 상기 선택된 인증 모델인지를 식별하는 인증 모델 정보를 전송하는 단계
를 포함하는 방법.
A method for registering an agent device in a device registry of agent devices for performing trusted communication with one or more application providing devices,
(a) determining which of a plurality of authentication models is the selected authentication model used by the agent device to uniquely authenticate the agent device; And
(b) transmitting, to the registry device for maintaining the device registry, authentication model information identifying which of the plurality of authentication models is the selected authentication model for the agent device
≪ / RTI >
제27항에 있어서, 상기 에이전트 디바이스를 고유하게 인증하기 위한 인증 정보를 상기 레지스트리 장치에 전송하는 단계를 더 포함하는 방법.28. The method of claim 27, further comprising sending authentication information to the registry device for uniquely authenticating the agent device. 특히 첨부된 도면들을 참조하여, 본원에 실질적으로 설명된 장치 또는 방법.In particular, the apparatus or method substantially as described herein with reference to the accompanying drawings.
KR1020167012709A 2013-10-17 2014-10-15 Method of establishing a trusted identity for an agent device KR102169947B1 (en)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US14/056,423 2013-10-17
US14/056,468 US9860235B2 (en) 2013-10-17 2013-10-17 Method of establishing a trusted identity for an agent device
US14/056,459 2013-10-17
US14/056,459 US9307405B2 (en) 2013-10-17 2013-10-17 Method for assigning an agent device from a first device registry to a second device registry
US14/056,423 US10069811B2 (en) 2013-10-17 2013-10-17 Registry apparatus, agent device, application providing apparatus and corresponding methods
US14/056,468 2013-10-17
PCT/GB2014/053097 WO2015056009A1 (en) 2013-10-17 2014-10-15 Method of establishing a trusted identity for an agent device

Publications (2)

Publication Number Publication Date
KR20160072178A true KR20160072178A (en) 2016-06-22
KR102169947B1 KR102169947B1 (en) 2020-10-26

Family

ID=51932539

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020167012752A KR101741967B1 (en) 2013-10-17 2014-10-15 Method for assigning an agent device from a first device registry to a second device registry
KR1020167012709A KR102169947B1 (en) 2013-10-17 2014-10-15 Method of establishing a trusted identity for an agent device
KR1020167012706A KR102168392B1 (en) 2013-10-17 2014-10-15 Registry apparatus, agent device, application providing apparatus and corresponding methods

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020167012752A KR101741967B1 (en) 2013-10-17 2014-10-15 Method for assigning an agent device from a first device registry to a second device registry

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020167012706A KR102168392B1 (en) 2013-10-17 2014-10-15 Registry apparatus, agent device, application providing apparatus and corresponding methods

Country Status (4)

Country Link
KR (3) KR101741967B1 (en)
CN (3) CN105684482B (en)
GB (3) GB2533728B (en)
WO (3) WO2015056008A1 (en)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017019871A1 (en) * 2015-07-28 2017-02-02 Masterpeace Solutions Ltd. Consistently configuring devices in close physical proximity
CN105162602B (en) * 2015-09-01 2018-05-11 中国互联网络信息中心 A kind of trustable network Identity Management and verification system and method
EP3913889B1 (en) 2015-09-01 2024-08-14 Convida Wireless, LLC Service layer registration
US10666642B2 (en) * 2016-02-26 2020-05-26 Ca, Inc. System and method for service assisted mobile pairing of password-less computer login
US10084760B2 (en) 2016-03-11 2018-09-25 Hewlett-Packard Development Company, L. P. Secure messages for internet of things devices
WO2017182363A1 (en) * 2016-04-21 2017-10-26 Philips Lighting Holding B.V. Systems and methods for registering and localizing building servers for cloud-based monitoring and control of physical environments
EP3253021A1 (en) * 2016-06-03 2017-12-06 Gemalto Sa A method for managing the status of a connected device
EP3253020A1 (en) 2016-06-03 2017-12-06 Gemalto Sa A method and an apparatus for publishing assertions in a distributed database of a mobile telecommunication network
US10176331B2 (en) 2016-06-10 2019-01-08 Microsoft Technology Licensing, Llc Enhanced metadata to authentically report the provenance of a file
CN105978690B (en) * 2016-07-03 2019-03-26 恒宝股份有限公司 A kind of safety method and system based on asymmetric key pair
US10873511B2 (en) * 2016-11-22 2020-12-22 Airwatch Llc Management service migration for managed devices
CN108156126B (en) * 2016-12-02 2020-12-08 阿里巴巴集团控股有限公司 Burning verification method and device and identity authentication method and device for Internet of things equipment
WO2018135919A1 (en) * 2017-01-20 2018-07-26 Samsung Electronics Co., Ltd. Apparatus and method for providing and managing security information in communication system
US11095502B2 (en) 2017-11-03 2021-08-17 Otis Elevator Company Adhoc protocol for commissioning connected devices in the field
SE1850155A1 (en) * 2018-02-13 2019-08-14 Fingerprint Cards Ab Registration of data at a sensor reader and request of data at the sensor reader
US11392702B2 (en) * 2019-03-17 2022-07-19 Microsoft Technology Licensing, Llc Discovery and matching of internet of things (IoT) devices and services using a secure global registry
US11139989B2 (en) * 2019-08-30 2021-10-05 Motorola Solutions, Inc. Method of enrolling a device into a PKI domain for certificate management using factory key provisioning

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060126705A (en) * 2003-12-26 2006-12-08 마츠시타 덴끼 산교 가부시키가이샤 Prime calculation device, method, and key issuing system
US20080034207A1 (en) * 2006-08-01 2008-02-07 Cisco Technology, Inc. Method and apparatus for selecting an appropriate authentication method on a client
US20090215477A1 (en) * 2008-02-27 2009-08-27 Qualcomm, Incorporated Intelligent multiple device file sharing in a wireless communications system
US20130081113A1 (en) * 2011-09-27 2013-03-28 George Cherian Methods of and systems for remotely configuring a wireless device
US20130222109A1 (en) * 2012-02-23 2013-08-29 Infineon Technologies Ag System-Level Chip Identify Verification (Locking) Method with Authentication Chip

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7143443B2 (en) * 2001-10-01 2006-11-28 Ntt Docomo, Inc. Secure sharing of personal devices among different users
US8146142B2 (en) * 2004-09-03 2012-03-27 Intel Corporation Device introduction and access control framework
US7987356B2 (en) * 2004-11-29 2011-07-26 Broadcom Corporation Programmable security platform
KR100769674B1 (en) * 2004-12-30 2007-10-24 삼성전자주식회사 Method and System Providing Public Key Authentication in Home Network
JP4741292B2 (en) * 2005-06-09 2011-08-03 株式会社日立製作所 Device management system
US7796982B2 (en) * 2005-12-07 2010-09-14 Tor Anumana, Inc. Wireless controller device
US7936878B2 (en) * 2006-04-10 2011-05-03 Honeywell International Inc. Secure wireless instrumentation network system
WO2008074366A1 (en) 2006-12-19 2008-06-26 Telefonaktiebolaget Lm Ericsson (Publ) Managing user access in a communications network
US8370491B1 (en) * 2007-06-20 2013-02-05 Clearwire Ip Holdings Llc Open mobile alliance provisioning via a global wimax device registry
US8873523B2 (en) * 2009-09-30 2014-10-28 Apple Inc. Methods and apparatus for solicited activation for protected wireless networking
CA2794744C (en) * 2010-04-01 2016-05-17 Research In Motion Limited Methods and apparatus to transfer management control of a client between servers
DE102010043878A1 (en) * 2010-11-12 2012-05-16 Vodafone Holding Gmbh Subscriber identification device and method for subscriber authentication
AU2013100802B4 (en) * 2013-04-11 2013-11-14 Uniloc Luxembourg S.A. Device authentication using inter-person message metadata

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060126705A (en) * 2003-12-26 2006-12-08 마츠시타 덴끼 산교 가부시키가이샤 Prime calculation device, method, and key issuing system
US20080034207A1 (en) * 2006-08-01 2008-02-07 Cisco Technology, Inc. Method and apparatus for selecting an appropriate authentication method on a client
US20090215477A1 (en) * 2008-02-27 2009-08-27 Qualcomm, Incorporated Intelligent multiple device file sharing in a wireless communications system
US20130081113A1 (en) * 2011-09-27 2013-03-28 George Cherian Methods of and systems for remotely configuring a wireless device
US20130222109A1 (en) * 2012-02-23 2013-08-29 Infineon Technologies Ag System-Level Chip Identify Verification (Locking) Method with Authentication Chip

Also Published As

Publication number Publication date
CN105684482B (en) 2019-10-25
GB2533511B (en) 2021-02-03
GB201604451D0 (en) 2016-04-27
GB2533511A (en) 2016-06-22
KR102169947B1 (en) 2020-10-26
KR20160072176A (en) 2016-06-22
GB2533728A (en) 2016-06-29
CN105637915B (en) 2017-11-07
WO2015056010A2 (en) 2015-04-23
GB2533728B (en) 2017-03-22
KR20160071456A (en) 2016-06-21
GB2533727A (en) 2016-06-29
CN105684483A (en) 2016-06-15
WO2015056009A1 (en) 2015-04-23
WO2015056008A1 (en) 2015-04-23
CN105684483B (en) 2019-11-22
GB201604447D0 (en) 2016-04-27
KR102168392B1 (en) 2020-10-21
CN105684482A (en) 2016-06-15
KR101741967B1 (en) 2017-05-30
GB201604448D0 (en) 2016-04-27
GB2533727B (en) 2021-06-23
CN105637915A (en) 2016-06-01
WO2015056010A3 (en) 2015-06-11

Similar Documents

Publication Publication Date Title
US11240222B2 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
US11076290B2 (en) Assigning an agent device from a first device registry to a second device registry
US10951630B2 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
KR101741967B1 (en) Method for assigning an agent device from a first device registry to a second device registry
US9860235B2 (en) Method of establishing a trusted identity for an agent device
US20190349346A1 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
US11522865B2 (en) Automated IoT device configuration using user profile
US20190349347A1 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
US10333938B2 (en) Methods and resources for creating permissions
JP2019524016A (en) Methods for managing the status of connected devices
WO2018107718A1 (en) Method and device for assigning number to intelligent card over air
KR20200088901A (en) Self-authentication of devices for secure transactions
US20190349348A1 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
CN107396295B (en) Method and equipment for carrying out wireless connection pre-authorization on user equipment
Reed et al. Bulwark: A framework to store iot data in user accounts
CN113711566A (en) Providing data on a device
JP6750260B2 (en) Information processing device and agent system
TW202301831A (en) Authentication and encryption method for intelligent Internet of Things can provide simple, fast, and convenient authentication functions for the smart device that is installed with the application program, and can encrypt the authentication of the gateway to form a double protection

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant