KR101031450B1 - Secure association between devices - Google Patents
Secure association between devices Download PDFInfo
- Publication number
- KR101031450B1 KR101031450B1 KR1020080134988A KR20080134988A KR101031450B1 KR 101031450 B1 KR101031450 B1 KR 101031450B1 KR 1020080134988 A KR1020080134988 A KR 1020080134988A KR 20080134988 A KR20080134988 A KR 20080134988A KR 101031450 B1 KR101031450 B1 KR 101031450B1
- Authority
- KR
- South Korea
- Prior art keywords
- communication channel
- sensor
- wireless communication
- authentication
- devices
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/50—Secure pairing of devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/22—Arrangements for preventing the taking of data from a data transmission channel without authorisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
- G06F21/35—User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
디바이스들 사이의 안전한 제휴에 관한 방법들 및 장치들이 설명된다. 일 실시예에서, 무선 채널을 통하여 통신할 수 있는 디바이스들은 그 디바이스들에 존재하는 신호 발생기들 및/또는 센서들에 의해 확립된 상이한 채널을 통하여 인증될 수 있다. 다른 실시예들도 개시된다.Methods and apparatuses for secure association between devices are described. In one embodiment, devices capable of communicating over a wireless channel may be authenticated through a different channel established by signal generators and / or sensors present in the devices. Other embodiments are also disclosed.
무선 통신, 디바이스 페어링(device pairing), OOB(out-of-band) 채널 Wireless communication, device pairing, and out-of-band channel
Description
본 명세서는 일반적으로 전자 분야에 관한 것이다. 더 구체적으로, 본 발명의 실시예는 일반적으로 디바이스들 사이의 안전한 제휴(secure association)에 관한 것이다.The present specification generally relates to the electronic field. More specifically, embodiments of the present invention generally relate to secure associations between devices.
휴대용 컴퓨팅 디바이스들은 부분적으로 그들의 이동의 용이함으로 인해 빠르게 인기를 얻고 있다. 디바이스 페이링(device pairing)이라고도 알려진, 2개의 디바이스들 사이의 안전한 제휴는 이동 컴퓨팅 디바이스들을 위한 네트워크 보안의 중요한 요소일 수 있다. 안전한 제휴는 일반적으로 2개의 디바이스들이 불안전한 통신 채널들을 통하여 안전하게 통신할 수 있도록 그 디바이스들 사이의 암호화 정보의 안전한 교환을 수반한다. 예를 들면, 일부 무선 헤드세트들은 전화기와 안전하게 페어링되어 그들 사이의 통신이 안전하게 될 수 있다.Portable computing devices are quickly gaining popularity, in part due to their ease of movement. Secure alliance between two devices, also known as device pairing, can be an important element of network security for mobile computing devices. A secure partnership generally involves a secure exchange of cryptographic information between the devices so that the two devices can communicate securely over insecure communication channels. For example, some wireless headsets may be securely paired with a telephone to ensure communication between them.
일부 현재의 구현들은 불안전한 무선 채널들을 통한 2개의 디바이스들 사이의 암호화 키의 교환을 허용하여 도청자가 그 암호화 정보를 디코딩할 수 없도록 할 수 있다(예를 들면, 디피-헬만(Diffie-Hellman) 프로토콜). 그러나, 디피-헬만 프로토콜은 중간자 공격(man-in-the-middle attack)을 받기 쉽고 그 경우 페이링하 기를 원하는 2개의 디바이스들 각각이 대신에 제3의 디바이스(즉, 중간자)와 제휴하고도 이를 깨닫지 못할 수 있다. 이러한 유형의 공격을 방지할 수 있는 하나의 방법은 디피-헬만에 관련된 디바이스들이 서로 교환하는 것을 인증하기 위해 대역 외(out-of-band; OOB) 채널을 이용한다. OOB 채널은 일반적으로 라디오를 이용하지 않고 다른 디바이스로/로부터 정보를 송신 및/또는 수신하는 메커니즘을 나타낸다. 종종 OOB 채널은, 반드시 내밀하지는(private) 않을지라도, 간섭하기 곤란하다는 특성을 가질 수 있다. 예를 들면, 통상의 OOB 채널들은 NFC(Near Field Communications), 또는 양쪽 디바이스들에서의 패스워드의 입력(그것은 그 후 양측에서 동일한 것으로 검증됨), 또는 다른 디바이스에서 입력될 필요가 있는 하나의 디바이스에서의 패스워드의 디스플레이를 포함할 수 있다.Some current implementations may allow the exchange of an encryption key between two devices over insecure wireless channels such that an eavesdropper cannot decode the encryption information (eg, Diffie-Hellman). protocol). However, the Diffie-Hellman protocol is susceptible to man-in-the-middle attacks, in which case each of the two devices wishing to pay for it cooperates with a third device (ie, the middleman) instead. You may not realize it. One way to prevent this type of attack is to use an out-of-band (OOB) channel to authenticate the exchanges between devices involved in Diffie-Hellman. OOB channels generally represent a mechanism for transmitting and / or receiving information to / from another device without using a radio. Often an OOB channel can be characterized as difficult to interfere with, although not necessarily private. For example, conventional OOB channels may be used in Near Field Communications (NFC), or input of a password on both devices (which are then verified as the same on both sides), or on one device that needs to be input on another device. May include a display of the password.
이들 OOB 채널들의 한 가지 기본적인 요건은 그것들은 페이링하기를 원하는 2개의 디바이스들이 합법적인 디바이스들인지를 검증하기 위해 인간을 관련시키고 그 인간을 이용하여 인증 프로세스를 완료하는 것일 수 있다. 따라서, 예를 들면, NFC의 경우, 사람이 그 2개의 디바이스들을 NFC 통신 범위(일부 현재의 구현들에서는 수 센티미터일 수 있음) 내로 가져와야 할 수 있고, 한편, 패스워드 입력의 경우, 그 사람이 실제로 양쪽 디바이스들에서 동일한 패스워드를 입력한다.One basic requirement of these OOB channels may be to associate a human and use that human to complete the authentication process, to verify that the two devices they want to pay are legitimate devices. Thus, for example, in the case of NFC, a person may have to bring the two devices into the NFC communication range (which may be several centimeters in some current implementations), while in the case of a password entry, the person actually Enter the same password on both devices.
상기와 같은 종래의 인증 기법들에 있어서의 한 가지 문제점은 그것들은 NFC 판독기 또는 태그, 또는 키보드 및/또는 디스플레이와 같은 추가 하드웨어를 필요로 할 수 있고 이는 시스템 비용에 추가된다는 점이다. 더욱이, 매우 작은 디바이스들에 있어서는, 사이즈 제약 때문에 디바이스 상에 존재하는 키보드 및 디스플레 이를 갖는 것조차 가능하지 않을 수 있다.One problem with such conventional authentication techniques is that they may require additional hardware, such as NFC readers or tags, or keyboards and / or displays, which adds to system cost. Moreover, for very small devices, it may not be possible to have a keyboard and display present on the device because of size constraints.
다음의 설명에서는, 다양한 실시예들에 대한 철저한 이해를 제공하기 위하여 다수의 특정 상세들이 설명된다. 그러나, 본 발명의 다양한 실시예들은 그 특정 상세들 없이도 실시될 수 있다. 그 밖의 경우에, 본 발명의 특정 실시예들을 모호하게 하지 않기 위하여 잘 알려진 방법들, 절차들, 컴포넌트들, 및 회로들에 대해서는 상세히 설명하지 않는다. 또한, 본 발명의 다양한 양태들은 집적 반도체 회로들("하드웨어"), 하나 이상의 프로그램으로 구성된 컴퓨터 판독가능 명령들("소프트웨어"), 또는 하드웨어와 소프트웨어의 어떤 조합과 같은, 다양한 수단을 이용하여 수행될 수 있다. 이 명세서의 목적을 위하여, "로직"이라고 하는 것은 하드웨어, 소프트웨어, 또는 그의 어떤 조합을 의미한다.In the following description, numerous specific details are set forth in order to provide a thorough understanding of various embodiments. However, various embodiments of the invention may be practiced without the specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail in order not to obscure certain embodiments of the present invention. In addition, various aspects of the invention may be practiced using various means, such as integrated semiconductor circuits (“hardware”), computer readable instructions (“software”) comprised of one or more programs, or any combination of hardware and software. Can be. For the purposes of this specification, "logic" means hardware, software, or some combination thereof.
여기서 설명되는 실시예들 중 일부는 디바이스들의 안전한 제휴를 위한 기법들을 제공할 수 있다. 일 실시예에서, 무선 채널을 통하여 통신할 수 있는 디바이스들은 그 디바이스들 상에 존재하는 하나 이상의 신호 발생기들(예를 들면 액추에이터) 및/또는 센서들(예를 들면 하나 이상의 축에서의 움직임을 감지할 수 있는 가속도계)에 의해 확립된 상이한 채널을 통하여 인증될 수 있다. 일 실시예에서, 신호 발생기들 및/또는 센서들은 아날로그일 수 있다.Some of the embodiments described herein can provide techniques for secure association of devices. In one embodiment, devices capable of communicating over a wireless channel detect one or more signal generators (eg, actuators) and / or sensors (eg, movement on one or more axes) present on the devices. Can be authenticated through different channels established by an accelerometer. In one embodiment, the signal generators and / or sensors may be analog.
일 실시예에서, 센서 및 신호 발생기 쌍(2개의 이동 통신 디바이스들 상에 존재할 수 있음)은 대역 외(OOB) 통신 채널로서 이용될 수 있다. 예를 들면, 제1 디바이스(예를 들면 이동 전화기)는 제2 디바이스 상의 가속도계(예를 들면, 센서로서 이용됨)와 조합될 수 있는 진동 특징(예를 들면, 신호 발생기로서 이용됨)을 포함하여 상기 전화기와 상기 제2 디바이스 사이의 안전한 OOB 채널을 형성할 수 있다.In one embodiment, a sensor and signal generator pair (which may exist on two mobile communication devices) may be used as an out-of-band (OOB) communication channel. For example, the first device (e.g., mobile phone) may include a vibration feature (e.g., used as a signal generator) that may be combined with an accelerometer (e.g., used as a sensor) on the second device. A secure OOB channel can be formed between the telephone and the second device.
더욱이, 여기서 설명되는 기법들은, 건강관리(healthcare)(예를 들면, 셀룰러 네트워크, 무선 광대역 네트워크 등을 통하여, 예를 들면, 집 환경 내 및/또는 원격을 포함하는, 다양한 위치들에 있는 환자 모니터링 디바이스들에 대한 환자 정보의 안전한 교환을 위한), 오락(entertainment), 교육, 전기 통신(telecommunication), 이동 컴퓨팅 등과 같은, 다양한 분야들에서 적용되는 이동 컴퓨팅 디바이스들을 위하여 이용될 수 있다. 또 다른 예는 개인 의료 네트워크에 있고, 이 개인 의료 네트워크에서는, 신체 상의 센서들이 감지된 의학 데이터를 무선 기술을 이용하여 집계 디바이스(예를 들면, PDA(Personal Digital Assistant), 이동 전화기, MID(Mobile Internet Device), PC(Personal Computer), UMPC(Ultra Mobile PC), 또는 여기서 설명되는 것들과 같은 기타 컴퓨팅 디바이스들)에 송신할 수 있다.Moreover, the techniques described herein can be used to monitor patients at various locations, including, for example, within and / or remotely through a home environment, such as through a healthcare (eg, cellular network, wireless broadband network, etc.). For secure exchange of patient information for devices), entertainment, education, telecommunications, mobile computing, and the like. Another example is in a personal medical network, in which medical data on which sensors on the body are sensed is collected using a wireless technology, such as an aggregating device (e.g., personal digital assistant (PDA), mobile phone, MID (Mobile). Internet Device), Personal Computer (PC), Ultra Mobile PC (UMPC), or other computing devices such as those described herein).
또한, 일 실시예에서, 제1 디바이스는 이벤트를 검출하는 제1(예를 들면, 아날로그 또는 디지털) 센서 및 상기 이벤트에 대응하는 제1 데이터 세트를 생성하는 로직을 포함할 수 있다. 제2 디바이스는 상기 이벤트를 검출하는 제2(예를 들면, 디지털 또는 아날로그) 센서 및 상기 이벤트에 대응하는 제2 데이터 세트를 생성하는 로직을 포함할 수 있다. 상기 제1 디바이스 및 상기 제2 디바이스 각각은 상기 제1 디바이스 및 상기 제2 디바이스가 안전하게 제휴될 것인지를 결정하기 위해 상기 제1 데이터 세트와 상기 제2 데이터 세트를 비교한다.Further, in one embodiment, the first device may include a first (eg, analog or digital) sensor that detects an event and logic to generate a first data set corresponding to the event. The second device may include a second (eg, digital or analog) sensor to detect the event and logic to generate a second data set corresponding to the event. Each of the first device and the second device compares the first data set and the second data set to determine whether the first device and the second device will be safely associated.
도 1은 일 실시예에 따른 안전한 디바이스 제휴 시스템(100)의 블록도를 도시한다. 도시된 바와 같이, 제휴될 양쪽 디바이스들(예를 들면, 디바이스들(102 및 104))은 (예를 들면, 안전하게 될, 예를 들면, 암호화될 수도 있고 또는 안전하게 되지 않을 수도 있는, 무선 통신 채널(110)을 통하여) 주요 통신을 위한 것일 수 있는 라디오(예를 들면, 각각, 라디오들(106 및 108))를 포함할 수 있다. 또한, 일부 실시예들에서는 디바이스들(102 및 104) 사이의 주요 통신을 위해 유선 채널이 이용될 수 있다. 디바이스(102)는 또한 센서(122)(예를 들면 움직임(예를 들면, 일 실시예에서 3개의 축과 같은 다중 축에서의 움직임)을 감지할 수 있는 가속도계)에 의해 검출되는 신호들을 생성하는 신호 발생기(120)(예를 들면 기계적 액추에이터, 무선 변환기(transducer) 등)를 포함할 수 있다. 일부 실시예들에서는 디바이스마다 2개 이상의 신호 발생기 및/또는 센서가 이용될 수 있다.1 illustrates a block diagram of a secure
도시된 바와 같이, 신호 발생기(120)는 OOB 통신 채널(124)을 통하여 센서(122)에 연결될 수 있다(예를 들면, 인증 또는 안전한 제휴 신호들을 통신하기 위하여). 또한, OOB 통신 채널(124)은, 예를 들면, 도 1에서 대응하는 화살표의 방향에 의해 증명되는 바와 같이, 일부 실시예들에서 일방향(one-way) 채널일 수 있다. 또한, 무선 통신 채널(110)은, 예를 들면, 도 1에서 대응하는 화살표의 방향에 의해 증명되는 바와 같이, 일부 실시예들에서 양방향(bidirectional)일 수 있다. 도 1에서 더 도시된 바와 같이, 디바이스들(102 및 104) 각각은 또한, 예를 들면, 도 2에 관련하여, 여기서 더 설명될, 다양한 동작들을 수행하는 디바이스 제휴 로직(예를 들면, 로직들(130 및 132))을 포함할 수 있다.As shown,
일 실시예에서, 신호 발생기(120)는 진동기일 수 있고 센서(122)는 가속도계일 수 있다. 이러한 조합은 차치하고, 신호 발생기들, 및 센서들의 다른 가능한 쌍들은 각각 (a) 깜박거리는 LED(발광 다이오드)들 또는 디스플레이 스크린 및 이미지 캡처 디바이스(예를 들면 카메라); 또는 (b) 스피커 및 마이크 중 하나 이상을 포함할 수 있다. 그러한 조합들은 시스템에 상당한 여분의 비용을 추가하지 않고 간섭 없는(tamper-free) 통신을 제공할 수 있다(예를 들면, 그러한 특징들은 다른 응용을 위한 일부 이동 디바이스들에 이미 존재할 수 있으므로). 예를 들면, 대부분의 셀 전화기 및 PDA들은 진동기 및 카메라가 내장되어 있을 수 있다. 또한, 건강관리 응용 또는 오락을 위해 이용되는 주변 디바이스들은 가속도계들 및/또는 LED들을 포함할 수 있다.In one embodiment,
도 2는 일 실시예에 따른, 디바이스들을 안전하게 제휴시키는 방법(200)의 흐름도를 도시한다. 여기서, 예를 들면, 도 1에 관련하여, 논의된 다양한 컴포넌트들은 도 2의 동작들 중 하나 이상을 수행하기 위해 이용될 수 있다.2 shows a flowchart of a
도 1 및 2를 참조하면, 동작 202에서는, 제휴될 2개의 디바이스들(예를 들면, 디바이스들(102 및 104))이 서로를 발견하고 그들의 능력들에 관한 정보를 교환하여(예를 들면, 로직들(130 및 132)은 무선 통신 채널(110)을 통하여 정보의 교환을 일으킬 수 있다) 제휴 프로세스가 시작될 수 있도록 한다. 동작 204에서는, 공유 비밀이 다른 디바이스와 안전하게 교환될 수 있다(예를 들면, 로직들(130 및 132)은 디피-헬만 알고리즘 또는 유사 기법을 이용할 수 있다). 일 실시예에서, 공유 비밀은 무선 통신 채널(110)을 통하여 통신될 수 있다.1 and 2, in operation 202, two devices to be associated (eg, devices 102 and 104) discover each other and exchange information about their capabilities (eg, The
동작 206에서는, 하나의 디바이스가 다른 디바이스를 인증할 수 있다(예를 들면, 디바이스(102)는 OOB 통신 채널(124)을 이용하여 디바이스(104)를 인증할 수 있다). 또한, 동작 206에서는, 디바이스들(예를 들면, 로직들(130 및 132))이 동작 204에서 교환된 정보가 일 실시예에서 동일한 디바이스에 의한 것이었는지를 검증할 수 있다. 동작 208에서는, 동작들 204 및 206에서 교환된 데이터를 이용하여, 양쪽 디바이스들(예를 들면, 로직들(130 및 132)이 (예를 들면, 무선 통신 채널(110)을 통하여) 그 시점 이후 그들 사이의 임의의 통신을 암호화하는 동일한 대칭 암호화 키들을 생성할 수 있다.In operation 206, one device may authenticate another device (eg, device 102 may authenticate device 104 using OOB communication channel 124). In operation 206, the devices (eg,
인증 프로세스(동작 204 및/또는 206) 동안에는, 하나의 디바이스로부터 다른 디바이스로 신호 발생기(120)로부터 센서(122)로 정보가 전송될 수 있고, 수신된 정보는, OOB 통신 채널(124)이 간섭에 대한 내성이 있을 수 있으므로, 인증을 위해 이용될 수 있다. 진동기-가속도계 조합의 예에서, 사용자는 페이링 프로세스 동안에 2개의 디바이스를 한데 모을 필요만 있다. 그 후 전화기는 주기적인 펄스들로 진동할 수 있고(예를 들면, 한 주기 동안의 전송은 "1"을 나타낼 수 있고 시간 주기 동안의 전송이 없으면 "0"을 나타낼 수 있고 또는 그 반대로도 될 수 있다), 한편 주변장치는 그의 가속도계를 이용하여 상기 펄스들을 습득(pick up)한다. 펄스들을 디코딩함으로써(예를 들면, 일 실시예에서 음향 모뎀(acoustic modem)과 같은 방식으로), 주변장치는 대역 외 정보를 수신하고, 그 정보를 이용하 여 그것이 진정한 통신 종점(communication endpoint)인지를 증명할 수 있다. 또한, 아날로그 액추에이터들 및 센서들은, 예를 들면, 디스플레이, 키보드, 또는 터치 패드와 같이 부피가 더 큰 입력 디바이스를 갖지 않는 보다 작은 디바이스들에 대한, 안전한 디바이스 제휴를 위한, 추가 메커니즘을 제공할 수 있다.During the authentication process (
일부 실시예들에서, OOB 통신 채널(124)은 제3자 간섭으로부터 안전할 수 있다. 사람은 통상적으로 셋업 프로세스 동안에 2개의 디바이스들을 서로 가까이 가져올 수 있기 때문에, 그는 다른 어떤 디바이스도 그 페어링 프로세스에 영향을 주지 않는다는 것을 검증할 수 있다. 또한, 센서 및 액추에이터는 종종 (기존 응용들을 지원하기 위해) 디바이스들에 이미 존재하며; 따라서, 추가 하드웨어(또는 비용)가 시스템에 추가될 필요가 없을 수 있다. 더욱이, 그러한 기법들은 무선 디바이스들(예를 들면 블루투스 코어 명세(Bluetooth Core Specification) 버전 2.1(블루투스 SIG, 2007년, 8월 1일) 또는 Wi-Fi 보호 셋업(Wi-Fi Protected Setup)(Wi-Fi 협회(Alliance), 2007년 1월 8일))을 위한 기존의 안전한 제휴 방법들에 용이하게 통합될 수 있다.In some embodiments,
도 3은 일 실시예에 따른, 안전한 디바이스 제휴 시스템(300)의 블록도를 도시한다. 도시된 바와 같이, 제휴될 양쪽 디바이스들(예를 들면, 디바이스들(302 및 304))은 (예를 들면, 안전하게 될, 예를 들면, 암호화될 수도 있고 또는 안전하게 되지 않을 수도 있는, 무선 통신 채널(310)을 통하여) 주요 통신을 위한 것일 수 있는 라디오(예를 들면, 각각, 라디오들(306 및 308))를 포함할 수 있다. 일부 실시예들에서는 디바이스들(302 및 304) 사이의 주요 통신을 위해 유선 채널이 이 용될 수 있다. 도시된 바와 같이, 디바이스들(302 및 304) 각각은 또한 이벤트(324)를 관찰하는 센서(예를 들면, 각각, 센서들(320 및 322))를 포함할 수 있다.3 illustrates a block diagram of a secure
일 실시예에서, 센서들(320 및 322)은 움직임(예를 들면, 일 실시예에서 3개의 축과 같은 다중 축에서의 움직임)을 감지할 수 있는 가속도계들일 수 있다. 일부 실시예들에서는 디바이스마다 2개 이상의 센서가 이용될 수 있다. 또한, 이벤트(324)는, 움직임, 소리, 이미지 등과 같은, 센서들(320 및 322)에 의해 검출될 수 있는 임의의 이벤트일 수 있다. 따라서, 센서들(320 및 322)은 가속도계, 마이크, 이미지 캡처 디바이스(예를 들면 카메라) 등일 수 있다.In one embodiment, sensors 320 and 322 may be accelerometers capable of sensing movement (eg, movement in multiple axes, such as three axes in one embodiment). In some embodiments two or more sensors may be used per device. In addition,
더욱이, 센서들(320 및 322)은 동일한 유형의(또는 동일한) 센서들일 수 있다. 일례로서, 가속도계들은 동일한 이벤트(예를 들면, 이벤트(324))를 감지하고 인증을 위해 이용될 수 있는 대충 동일한 스트링(string)을 생성할 수 있다. 인증을 위해 이용될 수 있는 동일하지만 임의의 스트링을 생성하기 위하여, 일 실시예에서 양쪽 디바이스들을 한 손에 한데 모아서 단호하게 흔들 수 있다. 양쪽 디바이스들은 동일한 움직임을 감지할 것이므로, 그것들은 감지된 가속도계 데이터의 (대충) 동일한 스트림들을 가질 것이다. 그러한 조합들은 시스템에 상당한 여분의 비용을 추가하지 않고 간섭 없는 통신을 제공할 수 있다(예를 들면, 그러한 특징들은 다른 응용을 위한 일부 이동 디바이스들에 이미 존재할 수 있으므로). 예를 들면, 대부분의 셀 전화기 및 PDA들은 진동기 및 카메라가 내장되어 있을 수 있다. 또한, 건강관리 응용 또는 오락을 위해 사용되는 다수의 주변 디바이스들은 가속도 계를 포함할 수 있다. 또한, 일부 예들은 여기서 가속도계에 관련하여 설명되지만, 센서들 및 이벤트의 조합에 의해 형성된 OOB 통신 채널은 또한 다른 유형의 센서들을 이용하여 형성될 수도 있다.Moreover, the sensors 320 and 322 can be the same type (or the same) sensors. As one example, accelerometers can generate a roughly identical string that can be used for sensing and authenticating the same event (eg, event 324). In order to generate the same but arbitrary strings that can be used for authentication, in one embodiment both devices can be brought together in one hand and shaken decisively. Since both devices will sense the same movement, they will have (roughly) identical streams of sensed accelerometer data. Such combinations may provide interference free communication without adding significant extra cost to the system (eg, such features may already exist in some mobile devices for other applications). For example, most cell phones and PDAs may have a vibrator and a camera. In addition, many peripheral devices used for healthcare applications or entertainment may include an accelerometer. Further, although some examples are described herein in connection with an accelerometer, an OOB communication channel formed by a combination of sensors and events may also be formed using other types of sensors.
도 3에서 도시된 바와 같이, 디바이스들(302 및 304) 각각은 또한 디바이스 제휴 로직(예를 들면, 각각, 로직들(330 및 332))을 포함할 수 있다. 센서들(320 및 322)에 의해 감지된 데이터는 그 후 2개의 디바이스들 간에 교환될 수 있고 로직들(330 및 332)은 각각 그 결과(trace)들을 비교하여 양쪽 디바이스들(302 및 304)이 동일한 이벤트(324)를 목격하였는지를 결정하고, 따라서 다른 디바이스를 검증할 수 있다. 일부 실시예들에서, 전술한 비교는 반드시 완전한 일치(perfect match)를 의미하는 것은 아니다. 소수의 차이를 허용하는 로직들(330 및 332)에 의해 구현되는 비교 함수가 이용될 수도 있다. 더욱이, 여기서, 예를 들면, 도 4에 관련하여 더 설명되는 바와 같이, 2개의 디바이스들은 이러한 비교가 안전하게 일어날 수 있게 하는 방법으로 그들의 센서 스트림들을 공유할 수 있다.As shown in FIG. 3, each of devices 302 and 304 may also include device association logic (eg,
더 구체적으로, 도 4는 일 실시예에 따른, 디바이스들을 안전하게 제휴시키는 방법(400)의 흐름도를 도시한다. 여기서, 예를 들면, 도 3에 관련하여, 논의된 다양한 컴포넌트들은 도 4의 동작들 중 하나 이상을 수행하기 위해 이용될 수 있다.More specifically, FIG. 4 shows a flowchart of a
도 3 및 4를 참조하면, 동작 402에서는, 제휴될 2개의 디바이스들(예를 들면, 디바이스들(302 및 304))이 서로를 발견하고 그들의 능력들에 관한 정보를 교환하여(예를 들면, 로직들(330 및 332)은 무선 통신 채널(310)을 통하여 정보의 교 환을 일으킬 수 있다) 제휴 프로세스가 시작될 수 있도록 한다. 동작 404에서는, 공통으로 감지된 이벤트로부터의 센서 데이터를 이용하여 공유 비밀이 생성될 수 있다. 예를 들면, 로직들(330 및 332)은 이벤트(324)에 관하여 통신하여 그들이 동일한 이벤트를 검출하였는지를 결정할 수 있다. 일 실시예에서, 공유 비밀은 무선 통신 채널(310)을 통하여 통신될 수 있다.3 and 4, in operation 402, two devices to be associated (eg, devices 302 and 304) discover each other and exchange information about their capabilities (eg, The
동작 406에서는, 2개의 디바이스들(예를 들면, 디바이스들(302 및 304))이 서로를 인증할 수 있다(예를 들면, 이벤트(324)에 기초하여 확립된 OOB 통신 채널로부터 수신된 정보를 이용하여). 또한, 동작 406에서는, 디바이스들(예를 들면, 로직들(330 및 332))이 동작 404에서 교환된 정보가 일 실시예에서 동일한 디바이스에 의한 것이었는지를 검증할 수 있다. 동작 408에서는, 동작들 404 및 406에서 교환된 데이터를 이용하여, 양쪽 디바이스들(예를 들면, 로직들(330 및 332)이 (예를 들면, 무선 통신 채널(310)을 통하여) 그 시점 이후 그들 사이의 임의의 통신을 암호화하는 동일한 대칭 암호화 키들을 생성할 수 있다.In operation 406, two devices (eg, devices 302 and 304) may authenticate each other (eg, receive information received from an established OOB communication channel based on event 324). using). Further, in operation 406, the devices (eg,
동작 406에서는, 각 디바이스(302 및 304)가, 각각, 그들 각각의 센서들(320 및 322)을 통하여 다른 디바이스가 동일한 이벤트를 목격하였다는 것을 상호 확인할 수 있게 하는 프로토콜이 로직들(330 및 332)에 의해 이용될 수 있다. 일 실시예에서, 그 프로토콜은 그 디바이스들 중 어느 쪽도 그의 가공되지 않은 감지된 스트림(raw sensed stream)(또는 도출된 스트링)을 먼저 다른 디바이스에 폭로하지 않는 것을 보증할 수 있다. 그렇지 않다면, 시스템은 중간자 공격을 받기 쉬울 수 있다. 이러한 문제는 의탁 함수(commitment function), 예를 들면, 디바이스가 특 정 정보(particular piece of information)가 폭로되기 전에 그 특정 정보에 대한 지식에 의탁(commit)할 수 있게 하는 일방향 함수를 이용하여 회피될 수 있다. 그러한 기법들은 패스워드에 및 아날로그 센서 스트림으로부터 도출된 스트링 양쪽 모두에 동등하게 적용될 수 있다. 이들 프로토콜들의 결과는 각 디바이스가 다른 디바이스로부터 어떤 정보를 얻을 수 있을 것이고, 그 정보는 그 후 다른 디바이스를 확인하기 위해 각 디바이스에서 (예를 들면, 로직들(330 및 332)에 의해) 비교될 수 있다는 것이다. 주어진 디바이스 상에서, 그 정보가 일치하면(로직들(330 및 332)에 의해 결정될 때), 그 디바이스는 2개의 디바이스들이 동일한 이벤트(예를 들면, 이벤트(324))를 감지하였고, 따라서 진정하게 사용자가 페이링하고자 하는 2개의 디바이스들임을 알게 된다.In operation 406, a protocol is provided that allows each device 302 and 304 to mutually confirm, via their respective sensors 320 and 322, that another device has witnessed the same event. ) Can be used. In one embodiment, the protocol can ensure that neither of the devices exposes its raw sensed stream (or derived string) to another device first. Otherwise, the system can be susceptible to man-in-the-middle attacks. This problem can be avoided using a commitment function, e.g. a one-way function that allows the device to commit knowledge of the particular piece of information before it is exposed. Can be. Such techniques can be equally applied to both passwords and strings derived from analog sensor streams. The result of these protocols is that each device may obtain some information from another device, which information is then compared at each device (eg, by
아날로그 센서 측정에 기초한 시스템을 가능하게 하기 위하여, 아날로그 센서들(예를 들면, 센서들(320 및 322))로부터의 2개의 데이터 스트림들 간의 비교가 행해질 수 있다. 이것은 다음의 것들 중 하나 이상을 포함하는 다수의 방법으로 달성될 수 있다:To enable a system based on analog sensor measurements, a comparison may be made between two data streams from analog sensors (eg, sensors 320 and 322). This can be accomplished in a number of ways, including one or more of the following:
(a) 통계 기법: 2개의 스트림들 사이의 상관 계수를 계산하는 것과 같은 통계 기법은 스트림들의 "근사성"(closeness)을 체크하는 하나의 방법이다;(a) Statistical technique: A statistical technique, such as calculating a correlation coefficient between two streams, is one way of checking the "closeness" of the streams;
(b) 주파수 기법: 시계열 데이터(time-series data)의 주파수 스펙트럼을 계산하고 그 결과의 스펙트럼 데이터를 비교하는 것은 파형들을 비교하는 다른 방법이다;(b) Frequency technique: Computing the frequency spectrum of time-series data and comparing the resulting spectral data is another way of comparing waveforms;
(c) 코오스한 데이터(coarse data) 주시: 정확한 또는 근사한 일치를 위해 센서 데이터로부터 도출된 스트링들을 비교; 또는(c) Coarse data lookup: comparing strings derived from sensor data for accurate or approximate match; or
(d) 시계열 데이터를 주시하고 그것들이 충분히 유사한지를 체크하는 임의의 다른 방법.(d) Any other way of looking at time series data and checking that they are sufficiently similar.
비교를 위해 이용될 수 있는 코오스한 데이터를 추출하는 일부 기법들은 다음의 것들 중 하나 이상을 포함한다:Some techniques for extracting coarse data that can be used for comparison include one or more of the following:
(1) 피크(peak)들 간의 시간: 2개의 스트림들에 대하여 대충 동일할 수 있는, 2개의 스트림들에 대한 피크들 간의 시간을 계산하는 하나의 접근법. 피크들의 크기는 약간 다를 수 있지만, 그 피크들이 발생하는 시간은 거의 동일할 수 있다는 것에 주목한다. 스트림의 코오스한 측정은 각 스트림에 대한 인접한 피크들 간의 시간 간격(time span)을 나타내는 숫자들의 스트링으로서 생성될 수 있다; 또는(1) Time between peaks: One approach to calculating the time between peaks for two streams, which may be roughly the same for two streams. Note that the magnitude of the peaks may be slightly different, but the time at which they occur may be about the same. The coarse measure of the stream may be generated as a string of numbers representing the time span between adjacent peaks for each stream; or
(2) 피크들의 시퀀스: 두 번째 접근법은 스트림의 복수의 부분들 사이의 피크들의 시퀀스를 열거(list)하는 것이다. 예를 들면, 3차원(3D) 가속도계는 데이터의 x, y 및 z 축들을 생성한다. 이들 3개의 스트림들 사이의 피크들은 어떤 연대순(chronological order)으로 발생할 수 있다. 동일한 데이터에 대하여, 피크들은 일부 실시예들에서 2개의 디바이스들에 걸쳐서 동일한 순서로 나타나야 한다. 또한, 센서 스트림으로부터 코오스한 데이터를 추출하기 위해 임의의 다른 방법이 이용될 수 있다. 이 코오스한 데이터는 2개의 데이터 스트림들의 "근사성"의 식별 및 2개의 디바이스들이 동일한 이벤트(324)를 감지하고 있었는지에 대한 검증을 가능하게 할 수 있다. 일단 2개의 디바이스들이 동일한 이벤트를 감지하였다는 것이 확립되면, 2개의 디바이스들은 서로 인증된다(예를 들면, 동작 406에서). 그것들은 이제 안전한 제휴 셋업을 완료하고 안전한 통신을 시작할 수 있다(예를 들면, 동작 408에서).(2) Sequence of peaks: A second approach is to list a sequence of peaks between a plurality of portions of a stream. For example, a three dimensional (3D) accelerometer produces x, y and z axes of data. Peaks between these three streams can occur in any chronological order. For the same data, the peaks should appear in the same order across the two devices in some embodiments. In addition, any other method can be used to extract the coarse data from the sensor stream. This coarse data may enable identification of the "approximation" of the two data streams and verification that the two devices were sensing the
(3) 지배적인 주파수(dominant frequencies): 세 번째 접근법은 스트림의 복수의 부분들 각각에 존재하는 지배적인 주파수 성분들을 열거하는 것이다. 예를 들면, 3차원(3D) 가속도계는 데이터의 x, y 및 z 축들을 생성한다. 각 축에 대한 시간 도메인에서의 가속도계 표시 도수들(readings)은 주파수 도메인에 투사될 수 있다. 상기 축들 중 하나 이상에 대한 하나 이상의 지배적인 주파수 성분(들)(주파수 도메인에서 최대 크기 피크들을 갖는 것들)의 코오스한 주파수 값은 숫자들의 스트링을 생성하도록 함께 조립될 수 있다.(3) Dominant frequencies: A third approach is to list the dominant frequency components present in each of the plurality of portions of the stream. For example, a three dimensional (3D) accelerometer produces x, y and z axes of data. Accelerometer readings in the time domain for each axis can be projected in the frequency domain. The coarse frequency values of one or more dominant frequency component (s) (those with the largest magnitude peaks in the frequency domain) for one or more of the axes can be assembled together to produce a string of numbers.
일부 실시예들에서는, 2개의 노드들 간에 동기화(시간에서)를 보증할 필요가 있을 수 있다. 상기 알고리즘들이 2개의 노드들 각각에 대하여 동일하거나 유사한 결과를 생성하기 위해, 그것들은 실질적으로 동시에 감지를 시작하고 끝낸다. 일 실시예는 시작점을 식별하기 위해, 예리한 피크(sharp peak)와 같은, 특정 신호 특성을 찾을 수 있다. 예를 들면, 3차원(3D) 가속도계들을 갖는 2개의 노드들은 각각, 사용자가 2개의 디바이스를 정지 위치(resting position)로부터 들어올렸음을 나타내는, z 축으로의 예리한 음가속(negative acceleration)을 찾는다. 2개의 디바이스들은 한데 모아지므로, 그것들은 모두 특정 신호 특성을 동시에 볼 수 있다. 샘플링의 끝은 시작 후 일정 시간 기간 후에 일어날 수 있어, 2개의 노드들은 상기 스트링 생성 알고리즘들에 대해 실질적으로 동일한 입력들을 갖게 된다.In some embodiments, it may be necessary to guarantee synchronization (in time) between two nodes. In order for the algorithms to produce the same or similar results for each of the two nodes, they begin and end sensing substantially simultaneously. One embodiment may look for specific signal characteristics, such as sharp peaks, to identify a starting point. For example, two nodes with three-dimensional (3D) accelerometers each find a sharp negative acceleration on the z axis, indicating that the user has lifted the two devices from the resting position. Since the two devices are brought together, they can both see certain signal characteristics simultaneously. The end of sampling may occur after a period of time after the start, such that the two nodes have substantially the same inputs to the string generation algorithms.
일부 실시예들에서는, 이벤트(324)를 검출함으로써 확립된 OOB 통신 채널은 제3자 간섭으로부터 안전할 수 있다. 사람은 통상적으로 셋업 프로세스 동안에 2개의 디바이스들(302 및 304)을 서로 가까이 가져올 수 있기 때문에, 그는 다른 어떤 디바이스도 그 페어링 프로세스에 영향을 주지 않는다는 것을 검증할 수 있다. 또한, 센서들은 종종 (기존 응용들을 지원하기 위해) 디바이스들에 이미 존재하며; 따라서, 추가 하드웨어(또는 비용)가 시스템에 추가될 필요가 없을 수 있다. 더욱이, 그러한 기법들은 무선 디바이스들(예를 들면 블루투스 코어 명세(Bluetooth Core Specification) 버전 2.1(블루투스 SIG, 2007년, 8월 1일) 또는 Wi-Fi 보호 셋업(Wi-Fi Protected Setup)(Wi-Fi 협회(Alliance), 2007년 1월 8일))을 위한 기존의 안전한 제휴 방법들에 용이하게 통합될 수 있다.In some embodiments, an OOB communication channel established by detecting
도 1-4에 관련하여 설명한 바와 같이, 여기서 설명된 신호 발생기들 및/또는 센서들은 디바이스들 사이의 안전한 제휴를 확립하기 위해 OOB 통신 채널을 제공하는 데 이용될 수 있다. 그러한 기법들은 도 5 및 6에 관련하여 설명되는 하나 이상의 컴포넌트들을 포함할 수 있는 다양한 컴퓨팅 디바이스들(예를 들면, 각각, 도 1 및 3의 디바이스들(102, 104, 302, 및/또는 304)에 의해 이용될 수 있다. 더 구체적으로, 도 5는 본 발명의 일 실시예에 따른 컴퓨팅 시스템(500)의 블록도를 도시한다. 컴퓨팅 시스템(500)은 하나 이상의 중앙 처리 장치(들)(CPU들) 또는 프로세서들(502-1 내지 502-P)(이들은 여기서 "프로세서(502)" 또는 "프로세서(502)"라고 불릴 수 있다)을 포함할 수 있다. 프로세서들(502)은 상호접속 네트워크(또는 버스)(504)를 통하여 통신할 수 있다. 프로세서들(502)은 범용 프로세서, (컴퓨터 네트워크(503)를 통하여 통신되는 데이터를 처리하는) 네트워크 프로세서, 또는 다른 유형의 프로세서(RISC(reduced instruction set computer) 프로세서 또는 CISC(complex instruction set computer) 프로세서를 포함함)를 포함할 수 있다. 더욱이, 프로세서들(502)은 싱글 또는 멀티(multiple) 코어 디자인을 가질 수 있다. 멀티 코어 디자인을 갖는 프로세서들(502)은 동일한 집적 회로(IC) 다이 상에 상이한 유형의 프로세서 코어들을 통합할 수 있다. 또한, 멀티 코어 디자인을 갖는 프로세서들(502)은 대칭 또는 비대칭 멀티프로세서들로서 구현될 수 있다. 일 실시예에서, 도 1-4에 관련하여 설명된 동작들은 시스템(500)의 하나 이상의 컴포넌트들에 의해 수행될 수 있다. 예를 들면, 로직들(130, 132, 330, 및/또는 332)은 프로세서들(502)과 같은 프로세서를 포함할 수 있다.As described in connection with FIGS. 1-4, the signal generators and / or sensors described herein may be used to provide an OOB communication channel to establish a secure association between devices. Such techniques include various computing devices (eg, the devices 102, 104, 302, and / or 304 of FIGS. 1 and 3, respectively) that may include one or more components described with respect to FIGS. 5 and 6. More specifically, Fig. 5 shows a block diagram of a
칩셋(506)도 상호접속 네트워크(504)와 통신할 수 있다. 칩셋(506)은 GMCH(graphic memory control hub)(508)를 포함할 수 있다. GMCH(508)는 메모리(512)와 통신하는 메모리 컨트롤러(510)를 포함할 수 있다. 메모리(512)는 프로세서(502), 또는 컴퓨팅 시스템(500)에 포함된 임의의 다른 디바이스에 의해 실행되는 명령 시퀀스들을 포함하는 데이터를 저장할 수 있다. 본 발명의 일 실시예에서, 메모리(512)는 RAM(random access memory), DRAM(dynamic RAM), SDRAM(synchronous DRAM), SRAM(static RAM), 또는 다른 유형의 저장 디바이스들과 같은 하나 이상의 휘발성 저장(또는 메모리) 디바이스를 포함할 수 있다. 하드 디스크와 같은 비휘발성 메모리도 이용될 수 있다. 복수의 CPU들 및/또는 복수의 시스템 메모리들과 같은, 추가 디바이스들이 상호접속 네트워크(504)를 통하여 통신 할 수도 있다.Chipset 506 may also be in communication with
GMCH(508)는 또한 그래픽 가속기(516)와 통신하는 그래픽 인터페이스(514)를 포함할 수 있다. 본 발명의 일 실시예에서, 그래픽 인터페이스(514)는 AGP(accelerated graphics port)를 통하여 그래픽 가속기(516)와 통신할 수 있다. 본 발명의 일 실시예에서, 디스플레이(예를 들면, 평판(flat panel) 디스플레이, CRT(cathode ray tube), 프로젝션 스크린 등)는, 비디오 메모리 또는 시스템 메모리와 같은 저장 디바이스에 저장된 이미지의 디지털 표현을 디스플레이에 의해 해석되어 디스플레이되는 디스플레이 신호들로 변환하는, 예를 들면, 신호 변환기를 통하여 그래픽 인터페이스(514)와 통신할 수 있다. 디스플레이 디바이스에 의해 생성된 디스플레이 신호들은 디스플레이에 의해 해석되고 그 후 디스플레이 상에 디스플레이되기 전에 다양한 제어 디바이스들을 통과할 수 있다.
허브 인터페이스(518)는 GMCH(508)와 ICH(input/output control hub)(520)이 통신하게 할 수 있다. ICH(520)는 컴퓨팅 시스템(500)과 통신하는 I/O 디바이스들에 대한 인터페이스를 제공할 수 있다. ICH(520)는, PCI(peripheral component interconnect) 브리지, USB(universal serial bus) 컨트롤러, 또는 다른 유형의 주변장치 브리지(peripheral bridge) 또는 컨트롤러와 같은, 주변장치 브리지(또는 컨트롤러)(524)를 통하여 버스(522)와 통신할 수 있다. 브리지(524)는 프로세서(502)와 주변 디바이스들 사이의 데이터 경로를 제공할 수 있다. 다른 유형의 토폴로지가 이용될 수도 있다. 또한, 복수의 버스들이, 예를 들면, 복수의 브리지 또는 컨트롤러를 통하여, ICH(520)와 통신할 수도 있다. 더욱이, ICH(520)와 통신 하는 다른 주변장치들은, 본 발명의 다양한 실시예들에서, IDE(integrated drive electronics) 또는 SCSI(small computer system interface) 하드 드라이브(들), USB 포트(들), 키보드, 마우스, 병렬 포트(들), 직렬 포트(들), 플로피 디스크 드라이브(들), 디지털 출력 지원(예를 들면, DVI(digital video interface)), 또는 다른 디바이스들을 포함할 수 있다.The
버스(522)는 오디오 디바이스(526), 하나 이상의 디스크 드라이브(들)(528), 및 (컴퓨터 네트워크(503)와 통신하는) 하나 이상의 네트워크 인터페이스 디바이스(들)(530)와 통신할 수 있다. 다른 디바이스들도 버스(522)를 통하여 통신할 수 있다. 또한, 본 발명의 일부 실시예들에서는 다양한 컴포넌트들(예를 들면 네트워크 인터페이스 디바이스(530))이 GMCH(508)와 통신할 수 있다. 또한, 프로세서(502) 및 도 5에서 도시된 다른 컴포넌트들(GMCH(508), 메모리 컨트롤러(510) 등과 같은 GMCH(508)의 하나 이상의 컴포넌트들을 포함하지만 이에 제한되지 않음)은 단일 칩을 형성하도록 조합될 수 있다. 더욱이, 본 발명의 일부 실시예들에서는, GMCH(508) 내에 그래픽 가속기가 포함될 수 있다.The
더욱이, 컴퓨팅 시스템(500)은 휘발성 및/또는 비휘발성 메모리(또는 저장장치)를 포함할 수 있다. 예를 들면, 비휘발성 메모리는 다음의 것들 중 하나 이상을 포함할 수 있다: ROM(read-only memory), PROM(programmable ROM), EPROM(erasable PROM), EEPROM(electrically EPROM), 디스크 드라이브(예를 들면, 528), 플로피 디스크, CD-ROM(compact disk ROM), DVD(digital versatile disk), 플래시 메모리, 자기-광 디스크, 또는 전자 데이터(예를 들면, 명령들을 포함함)를 저장할 수 있는 다른 유형의 비휘발성 기계 판독가능 매체. 일 실시예에서, 시스템(500)의 컴포넌트들은 점대점(point-to-point; PtP) 구성으로 배열될 수 있다. 예를 들면, 프로세서들, 메모리, 및/또는 입출력 디바이스들은 다수의 점대점 인터페이스에 의해 상호접속될 수 있다.Moreover,
도 6은 본 발명의 일 실시예에 따른, 점대점(PtP) 구성으로 배열되어 있는 컴퓨팅 시스템(600)을 도시한다. 특히, 도 6은 프로세서들, 메모리, 및/또는 입출력 디바이스들이 다수의 점대점 인터페이스에 의해 상호접속되어 있는 시스템을 보여준다. 도 1-5에 관련하여 설명된 동작들은 시스템(600)의 하나 이상의 컴포넌트에 의해 수행될 수 있다.6 illustrates a
도 6에서 도시된 바와 같이, 시스템(600)은 몇 개의 프로세서를 포함할 수 있고, 명료함을 위하여 그 중 2개의 프로세서들(602 및 604)만이 도시되어 있다. 프로세서들(602 및 604)은 각각 메모리들(610 및 612)과의 통신을 가능하게 하는 로컬 MCH(memory controller hub)를 포함할 수 있다. 메모리들(610 및/또는 612)은 도 5의 메모리(512)에 관련하여 설명된 것들과 같은 다양한 데이터를 저장할 수 있다.As shown in FIG. 6,
일 실시예에서, 프로세서들(602 및 604)은 도 5에 관련하여 설명된 프로세서들(502) 중 하나일 수 있다. 프로세서들(602 및 604)은, 각각, 점대점(PtP) 인터페이스 회로들(616 및 618)을 이용하여 PtP 인터페이스(614)를 통하여 데이터를 교환할 수 있다. 또한, 프로세서들(602 및 604)은 각각 점대점 인터페이스 회로들(626, 628, 630, 및 632)을 이용하여 개개의 PtP 인터페이스들(622 및 624)을 통 하여 칩셋(620)과 데이터를 교환할 수 있다. 칩셋(620)은 또한, 예를 들면, PtP 인터페이스 회로(637)를 이용하여, 그래픽 인터페이스(636)를 통하여 그래픽 회로(634)와 데이터를 교환할 수 있다.In one embodiment, the processors 602 and 604 may be one of the
본 발명의 적어도 하나의 실시예는, 프로세서들(602 및 604)을, 각각, 도 1 및 3의 로직들(130, 132, 330, 및/또는 332) 중 하나 이상으로서 이용한다. 그러나, 본 발명의 다른 실시예들은, 도 6의 시스템(600) 내의 다른 회로들, 로직 유닛들, 또는 디바이스들에 존재할 수 있다. 더욱이, 본 발명의 다른 실시예들은 도 6에서 도시된 몇 개의 회로들, 로직 유닛들, 또는 디바이스들의 전체에 걸쳐서 분산될 수 있다.At least one embodiment of the present invention uses the processors 602 and 604 as one or more of the
칩셋(620)은 PtP 인터페이스 회로(641)를 이용하여 버스(640)와 통신할 수 있다. 버스(640)는 브리지(642) 및 I/O 디바이스들(643)과 같은 하나 이상의 디바이스들과 통신할 수 있다. 버스 브리지(642)는, 버스(644)를 통하여, 키보드/마우스(645), 통신 디바이스들(646)(예를 들면, 모뎀, 네트워크 인터페이스 디바이스, 도는 컴퓨터 네트워크(503)와 통신할 수 있는 다른 통신 디바이스), 오디오 I/O 디바이스(647), 및/또는 데이터 저장 디바이스(648)와 같은 다른 디바이스들과 통신할 수 있다. 데이터 저장 디바이스(648)는 프로세서들(602 및/또는 604)에 의해 실행될 수 있는 코드(649)를 저장할 수 있다.Chipset 620 may communicate with
본 발명의 다양한 실시예들에서, 예를 들면, 도 1-6에 관련하여, 여기서 설명된 동작들은 하드웨어(예를 들면, 논리 회로), 소프트웨어, 펌웨어, 또는 그의 임의의 조합으로서 구현될 수 있고, 그것은 여기서 설명된 프로세서를 수행하도록 컴퓨터(예를 들면, 프로세서를 포함함)를 프로그램하기 위해 이용되는 명령들(또는 소프트웨어 프로시저들)이 저장되어 있는, 예를 들면, 기계 판독가능 또는 컴퓨터 판독가능 매체를 포함하는, 컴퓨터 프로그램 제품으로서 제공될 수 있다. 기계 판독가능 매체는 여기서 설명된 것들과 같은 저장 디바이스를 포함할 수 있다.In various embodiments of the invention, for example, with respect to FIGS. 1-6, the operations described herein may be implemented as hardware (eg, logic circuits), software, firmware, or any combination thereof. It may be stored, for example, machine readable or computer readable, having instructions (or software procedures) used to program a computer (eg, including a processor) to perform the processor described herein. It may be provided as a computer program product, including a possible medium. Machine-readable media can include storage devices such as those described herein.
또한, 그러한 컴퓨터 판독가능 매체는 컴퓨터 프로그램 제품으로서 다운로드될 수 있고, 그 프로그램은 통신 링크(예를 들면, 버스, 모뎀, 또는 네트워크 접속)를 통하여 반송파(carrier wave) 또는 기타 전파 매체에 구현된 데이터 신호들로서 원격 컴퓨터(예를 들면, 서버)로부터 요청 컴퓨터(예를 들면, 클라이언트)로 전송될 수 있다.In addition, such computer readable media may be downloaded as a computer program product, which program may be implemented on a carrier wave or other propagation medium via a communications link (eg, a bus, modem, or network connection). The signals may be sent from a remote computer (eg a server) to the requesting computer (eg a client).
본 명세서에서 "일 실시예" 또는 "실시예"라고 하는 것은, 그 실시예와 관련하여 설명된 특정 특징, 구조, 및/또는 특성이 적어도 하나의 구현에 포함된다는 것을 의미한다. 본 명세서의 여러 곳에서 "일 실시예에서"라는 문구의 출현들은 모두 동일한 실시예를 지시하는 것일 수도 있고 그렇지 않을 수도 있다.Reference herein to “one embodiment” or “an embodiment” means that a particular feature, structure, and / or characteristic described in connection with the embodiment is included in at least one implementation. The appearances of the phrase “in one embodiment” in various places in the specification may or may not all refer to the same embodiment.
또한, 본 설명 및 청구항들에서는, "연결된"(coupled) 및 "접속된"(connected)이라는 용어들이, 그의 파생어들과 함께, 이용될 수 있다. 본 발명의 일부 실시예들에서, "접속된"은 2개 이상의 엘리먼트들이 서로 직접 물리적 또는 전기적 접촉 상태에 있는 것을 나타내기 위해 이용될 수 있다. "연결된"은 2개 이상의 엘리먼트들이 직접 물리적 또는 전기적 접촉 상태에 있는 것을 의미할 수 있다. 그러나, "연결된"은 또한 2개 이사의 엘리먼트들이 서로 직접 접촉 상태에 있지 않지만, 그럼에도 서로 협력하거나 상호작용할 수 있다는 것을 의미할 수도 있다.In addition, in the present description and claims, the terms “coupled” and “connected” may be used, along with their derivatives. In some embodiments of the present invention, “connected” may be used to indicate that two or more elements are in direct physical or electrical contact with each other. "Connected" can mean that two or more elements are in direct physical or electrical contact. However, “connected” may also mean that the elements of the two directors are not in direct contact with each other, but may nevertheless cooperate or interact with each other.
이렇게, 구조적 특징들 및/또는 방법적 동작들에 특유한 말로 본 발명의 실시예들이 설명되었다 하더라도, 청구된 내용은 설명된 그 특유한 특징들 또는 동작들에 제한되지 않을 수 있음을 이해해야 한다. 오히려, 그 특유한 특징들 및 동작들은 청구된 내용을 구현하는 표본 형태들로서 개시되어 있다.As such, although embodiments of the invention have been described in terms specific to structural features and / or methodological acts, it is to be understood that the claimed subject matter may not be limited to the specific features or acts described. Rather, the distinctive features and acts are disclosed as example forms of implementing the claimed subject matter.
상세한 설명은 첨부 도면들을 참조하여 제공된다. 도면들에서, 참조 번호의 가장 왼쪽 숫자(들)는 그 참조 번호가 처음 나오는 도면을 식별한다. 상이한 도면들에서 동일한 참조 번호를 이용하는 것은 동일하거나 유사한 항목들을 나타낸다.A detailed description is provided with reference to the accompanying drawings. In the figures, the left-most digit (s) of a reference number identifies the figure in which the reference number first appears. Using the same reference numerals in different drawings represents the same or similar items.
도 1 및 도 3은 일부 실시예들에 따른, 안전한 디바이스 제휴 시스템들의 블록도들을 도시한다.1 and 3 show block diagrams of secure device federation systems, in accordance with some embodiments.
도 2 및 도 4는 일부 실시예들에 따른 방법들의 흐름도들을 도시한다.2 and 4 show flowcharts of methods in accordance with some embodiments.
도 5 및 도 6은 여기서 설명되는 일부 실시예들을 구현하기 위해 이용될 수 있는, 컴퓨팅 시스템들의 실시예들의 블록도를 도시한다.5 and 6 show block diagrams of embodiments of computing systems, which may be used to implement some embodiments described herein.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
102, 104, 302, 304: 디바이스102, 104, 302, 304: device
106, 108, 306, 308: 라디오106, 108, 306, 308: Radio
110: 무선 채널110: wireless channel
120: 신호 발생기120: signal generator
122, 320, 322: 센서122, 320, 322: sensors
124: OOB 채널124: OOB channel
130, 132, 330, 332: 디바이스 제휴 로직130, 132, 330, 332: device association logic
310: 무선 채널310: wireless channel
324: 이벤트324: events
502-1, 502-P, 602, 604: 프로세서502-1, 502-P, 602, 604: Processor
510: 메모리 컨트롤러510: memory controller
512, 610, 612: 메모리512, 610, 612: memory
514: 그래픽 인터페이스514: graphical interface
516: 그래픽 가속기516: graphics accelerator
524: 주변장치 브리지524: Peripheral Bridge
506, 620: 칩셋506, 620: chipset
526: 오디오 디바이스526: audio device
528: 디스크 드라이브528: disk drive
530: 네트워크 인터페이스 디바이스(들)530: network interface device (s)
503: 네트워크503: network
634: 그래픽634 graphics
642: 버스 브리지642: bus bridge
643: I/O 디바이스들643: I / O devices
647: 오디오 디바이스들647: audio devices
645: 키보드/마우스645: keyboard / mouse
646: 통신 디바이스들646: communication devices
648: 데이터 저장648: Data storage
Claims (51)
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/967,149 US20090167486A1 (en) | 2007-12-29 | 2007-12-29 | Secure association between devices |
US11/967,149 | 2007-12-29 | ||
US11/968,077 US20090167487A1 (en) | 2007-12-29 | 2007-12-31 | Secure association between devices |
US11/968,077 | 2007-12-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090073042A KR20090073042A (en) | 2009-07-02 |
KR101031450B1 true KR101031450B1 (en) | 2011-04-26 |
Family
ID=41330209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080134988A KR101031450B1 (en) | 2007-12-29 | 2008-12-26 | Secure association between devices |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101031450B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8361031B2 (en) | 2011-01-27 | 2013-01-29 | Carefusion 303, Inc. | Exchanging information between devices in a medical environment |
WO2012103387A2 (en) * | 2011-01-27 | 2012-08-02 | Carefusion 303, Inc. | Associating devices in a medical environment |
US8793623B2 (en) | 2011-01-27 | 2014-07-29 | Carefusion 303, Inc. | Associating devices in a medical environment |
KR102275564B1 (en) * | 2017-04-14 | 2021-07-12 | 삼성전자주식회사 | Electronic device and method for transmitting and receiving authentification information in electronic device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050032119A (en) * | 2002-08-22 | 2005-04-06 | 보디미디어 인코퍼레이티드 | Apparatus for detecting human physiological and contextual information |
KR20050033636A (en) * | 2002-07-29 | 2005-04-12 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Security system for apparatus in a wireless network |
KR20050095140A (en) * | 2004-03-25 | 2005-09-29 | 유재희 | Wireless home networking system |
KR20060024653A (en) * | 2004-09-14 | 2006-03-17 | 삼성전자주식회사 | Device, system and method for setting of security information in wireless network |
-
2008
- 2008-12-26 KR KR1020080134988A patent/KR101031450B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050033636A (en) * | 2002-07-29 | 2005-04-12 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Security system for apparatus in a wireless network |
KR20050032119A (en) * | 2002-08-22 | 2005-04-06 | 보디미디어 인코퍼레이티드 | Apparatus for detecting human physiological and contextual information |
KR20050095140A (en) * | 2004-03-25 | 2005-09-29 | 유재희 | Wireless home networking system |
KR20060024653A (en) * | 2004-09-14 | 2006-03-17 | 삼성전자주식회사 | Device, system and method for setting of security information in wireless network |
Also Published As
Publication number | Publication date |
---|---|
KR20090073042A (en) | 2009-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20090167487A1 (en) | Secure association between devices | |
US8285994B2 (en) | Two-way authentication between two communication endpoints using a one-way out-of-band (OOB) channel | |
Fomichev et al. | Survey and systematization of secure device pairing | |
Jin et al. | Magpairing: Pairing smartphones in close proximity using magnetometers | |
Tahir et al. | On the security of consumer wearable devices in the Internet of Things | |
Haataja et al. | Two practical man-in-the-middle attacks on bluetooth secure simple pairing and countermeasures | |
US8429405B2 (en) | System and method for human assisted secure information exchange | |
US10021079B2 (en) | Security system, method, and apparatus | |
EP3160106A1 (en) | Techniques for user authentication using a hearable device | |
CN111935166B (en) | Communication authentication method, system, electronic device, server, and storage medium | |
EP3501195B1 (en) | Secure authentication of devices without server assistance or pre-shared credentials | |
EP2927834A1 (en) | Information processing apparatus, information processing method, and recording medium | |
KR101031450B1 (en) | Secure association between devices | |
US20160088474A1 (en) | Performing Pairing And Authentication Using Motion Information | |
Sigg et al. | Pintext: A framework for secure communication based on context | |
US10638318B2 (en) | Optical chaos based wireless device fingerprinting | |
US20200012801A1 (en) | Method for synchronous generation of random numbers for the purpose of cryptographic processing | |
Saxena et al. | Authentication technologies for the blind or visually impaired | |
Li et al. | A proximity authentication system for smartphones | |
CN111177676B (en) | Verification system, verification method, and non-transitory computer-readable recording medium | |
US9740844B1 (en) | Wireless wearable authenticators using attachment to confirm user possession | |
Sigg | Context-based security: State of the art, open research topics and a case study | |
Jin et al. | MagPairing: Exploiting magnetometers for pairing smartphones in close proximity | |
Shang et al. | AudioKey: a usable device pairing system using audio signals on smartwatches | |
JP2006332903A (en) | Key acquisition apparatus, key providing apparatus, key exchange system, and key exchange method |
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 | ||
FPAY | Annual fee payment | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170330 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20180328 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20190328 Year of fee payment: 9 |