The above and other features and advantages of the present invention will become apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings, in which:
Aspects and features of the aspects of the present invention and methods of accomplishing the same may be understood more readily by reference to the following detailed description of exemplary embodiments and the accompanying drawings. The aspects of the present invention may, however, be embodied in many different forms and should not be construed as being limited to the exemplary embodiments set forth herein. Rather, these exemplary embodiments are provided so that this disclosure will be thorough and complete and will fully convey the concept of the invention to those skilled in the art, and the present invention will only be defined by the appended claims.
Hereinafter, the present invention will be described on the basis of the UPnP network (conventional network infrastructure); however, Bluetooth, Java intelligent network infrastructure (JINI), universal description, discovery, and integration (UDDI) may be also applied thereto.
The NEMO-enabled device will be described as a main example; however, the present invention can be also applied to devices for providing communication and other services using the existing network infrastructure.
A unique-ID-creating apparatus 200 includes a searcher 210, a reader 220, a creator 230, a certificate-requesting unit 240, and a transceiver 250, which may be included in a predetermined NEMO-enabled device.
The searcher 210, as an element of the apparatus 200 included in a predetermined device that joins a predetermined network, searches the predetermined device for a device description document. The device description document may include manufacturing information of a device supplier, i.e., universal unique identifier (UUID), a model name, a serial number, a manufacturer name, and a manufacturer URL. The device description document may include not only a URL for a control, an event, and a presentation but also a list of many built-in devices and services.
The reader 220 reads the UUID of the found device description document. Generally, the device description document is expressed as XML. The reader 220 can obtain the UUID by parsing the XML document.
The creator 230 creates a unique ID of the predetermined device using the read UUID. Preferably, the unique ID is the same as the UUID.
The certificate-requesting unit 240 transmits the created unique ID to the certificate authority in order to request a confirmation that the predetermined device uses the unique ID as identifying information. For example, the NEMO-enabled device requests a confirmation that the NEMO-enabled device uses the unique ID as its NEMO ID by transmitting the created unique to the certificate authority. Through the conventional personalization, it is also possible to perform a communication between devices. A more detailed description is provided with reference to
The transceiver 250 transmits and receives data used in the personalization and other data between devices on a network.
The term “module”, as used herein, means, but is not limited to, a software or hardware component, such as a Field Programmable Gate Array (FPGA) or an Application Specific Integrated Circuit (ASIC), which performs certain tasks. A module may advantageously be configured to reside on the addressable storage medium and, configured to execute in one or more processors. Thus, a module may include, by way of example, components, such as software components, aspect-oriented software components, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functionality provided for in the components and modules may be combined into fewer components and modules or further separated into additional components and modules.
Elements described in
The searcher 210, as the apparatus 200 included in a predetermined device that joins a predetermined network, searches the predetermined device for a device description document (S301).
The reader 220 reads the device UUID of the found device description document (S311).
The creator 230 creates a unique ID of the predetermined device using the read UUID S321. Preferably, the unique ID is the same as the UUID.
The certificate-requesting unit 240 transmits the created unique ID to the certificate authority in order to request a confirmation that the predetermined device uses the unique ID as identifying information (S331). Through the conventional personalization, it is also possible to perform a communication between devices. Each operation for the personalization will described with reference to
The NEMO-enabled device can communicate with other NEMO-enabled devices using personality information including its unique ID obtained through the personalization and a certificate (S341). In a process of performing a communication between the NEMO-enabled devices (a first device and a second device), when the first device encodes and sends a message to the second device, the first device requests a public key from the second device, encodes a message using the received public key, and sends the message to the second device. The second device decodes and checks the message received from the first device using its individual key. Accordingly, it is possible to perform a communication that assures confidentiality, integrity, and authentication between the DRM-enabled devices. A device having NEMO ID information can access and use DRM content. By using the unique ID, a communication between NEMO-enabled devices and various services may be provided based on a network infrastructure, including UPnP, that has a discovery function.
Descriptions of elements illustrated in
The certificate-requesting unit 240 transmits the unique ID created by the creator 230 to the certificate authority in order to request a confirmation that the corresponding device (NEMO-enabled device) uses the unique ID as identification information (S401). Here, the NEMO-enabled device and the certificate authority share a secret. When the NEMO-enabled device requests the personalization, the shared secret may be used in order for the certificate authority to determine whether the NEMO-enabled device has a proper right.
The certificate authority verifies whether the NEMO-enabled device is legal using the secret value shared with the NEMO-enabled device, creates personality information including the received unique ID information, and transmits the information as a respond message to the NEMO-enabled device (S411 and S421). More particularly, the personality information may further include a certificate containing a public key, individual keys, and information related to a fingerprint. The certificate may be created using the unique ID and the public key.
The NEMO-enabled device verifies the certificate in the received respond message, and obtains the personality information (S431).
Various examples using the created unique ID will be described with reference to
When the NEMO-enabled device that supports a NEMO service exists on an UPnP network, the NEMO-enabled device creates a unique ID through the above operations S301 through S321 of
As shown in
A basis of the UPnP network is TCP/IP protocol that has an addressing function. Each controlled device 520 has to have a dynamic host configuration protocol (DHCP) client. When the controlled device 520 is first connected to a network, it searches a DHCP server.
If the DHCP server is found, the corresponding controlled device 520 uses the allotted IP address. If there is no available DHCP server, the controlled device 520 uses “auto IP” for obtaining an address (S511).
After the controlled device 520 is connected to the network and the proper address is specified, a searching operation can be performed in a discovery operation of UPnP (S521). The searching operation is processed using simple service discovery protocol (SSDP). When the controlled device 520 is added to the network, SSDP notifies a service provided by the controlled device 520 to the control point 510 on the network.
In the description operation S531, the control point 510 searches the controlled device 520, but the control point 510 has little information on the controlled device 520. The control point 510 has to check a searching message and a device description document of the controlled device 520 from a URL provided by the controlled device 520 in order to interact with the controlled device 520 by closely understanding information on the controlled device 520 and its function. The controlled device 520 may notify other device information including a unique ID created through the apparatus 200 to the control point 510. The device information may include a list related to a NEMO service provided by the controlled device 520. If the unique ID and the list related to the NEMO service are tied, the ID is set to the same value as the UUID, the control point 510 can recognize a device and a service provided by the device through a single value of the above operations S521 and S531.
The control point 510 can recognize the NEMO-enabled device that supports the NEMO service through information provided by the controlled device 520 (S541). A communication method embodied in the existing UPnP can be applied to the NEMO-enabled device. The communication can be performed between devices that provide a specific service using the existing communication method by the above-described basis in Bluetooth networks, JINI networks, UDDI networks including UPnP. Here, the unique ID of the device is actively used.
The UPnP operation is performed through an operation such as a control, an event, or a presentation (S551). In the control operation, the control point 510 performs an essential operation for controlling the controlled device 520 after obtaining a description of the controlled device 520. The control point 510 sends an order to operate a service of the controlled device 520 in order to control the controlled device 520. The control point 510 sends a control message to a control URL (in the device description document of the controlled device 520). The control message is expressed by XML using simple aspect access protocol (SOAP). The service provides a specific operation value or an error code as a respond for the control message. In the event operation, each controlled device 520, if its state is changed after receiving the order, notifies the change to the control point 510 through an event message. The message includes names and values of one or more state variables, which is expressed as XML and is formatted through generic event notification architecture (GENA). The event is continuously notified to the control point 510 after being periodically updated, or formatted using the GENA. In the presentation operation, if the controlled device 520 has a URL for a presentation operation, the control point 510 can search for a page, and load the page on a browser through the URL. A user can control the controlled device 520 using the page, or inquire on the state of the controlled device 520. A level of performing these above functions depends on the presentation page and a specific function of the controlled device 520.
The unique ID may be used in making a certificate list. When a NEMO-enabled device 610 sends a certificate, its unique ID, and a public key to a server 620 that provides content (including DRM content), the server 620 verifies legitimacy of the NEMO-enabled device 610 by verifying the certificate, and then makes a certificate list where the unique ID and the public key of the NEMO-enabled device 610 is recorded (S601 and S611).
After the server 620 makes the certificate list, a unique domain ID and a domain key are created using information on the NEMO-enabled device 610 in the list and random numbers created by the server 620 (S621). The domain key, as a secret key shared by only NEMO-enabled devices that belong to the domain formed by a user's selection, may be changed whenever members of the domain are changed. The domain ID may be used as an identifier for distinguishing the domain from other domains.
The server 620 encodes the domain ID and the domain key using the public key of each NEMO-enabled device 610, and transmits them to the confirmed NEMO-enabled device 610. The NEMO-enabled device 610 reconstructs the domain key using its secret key in order to form a domain for using content (S631 and S641). When the domain for sharing content is formed, the server 620 encodes content using a content key that is encoded by the domain key.
The NEMO-enabled device 610 decodes the encoded content using the domain key, and uses the content.
According to the present invention, it is possible to connect a device that supports a specific service with a communication environment of the existing network infrastructure, thereby performing a smooth integration, and providing a communication between devices and a content service.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the following claims.
Number | Date | Country | Kind |
---|---|---|---|
10-2006-0069357 | Jul 2006 | KR | national |