Source: https://patents.google.com/patent/KR101419406B1/en
Timestamp: 2020-01-28 07:01:28
Document Index: 183599253

Matched Legal Cases: ['art.\n1', 'art 200', 'art 200', 'art 500', 'art 400', 'art 200', 'art 500', 'art 200', 'art 500', 'art 200', 'art 500']

KR101419406B1 - Methods and apparatus for deriving, communicating and/or verifying ownership of expressions - Google Patents
Methods and apparatus for deriving, communicating and/or verifying ownership of expressions Download PDF
KR101419406B1
KR101419406B1 KR1020127006618A KR20127006618A KR101419406B1 KR 101419406 B1 KR101419406 B1 KR 101419406B1 KR 1020127006618 A KR1020127006618 A KR 1020127006618A KR 20127006618 A KR20127006618 A KR 20127006618A KR 101419406 B1 KR101419406 B1 KR 101419406B1
KR1020127006618A
KR20120055683A (en
워씸 미첼 하드다드
게오르기오스 트지르트시스
2009-08-13 Priority to US12/540,982 priority Critical patent/US8769285B2/en
2009-08-13 Priority to US12/540,982 priority
2010-08-03 Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
2010-08-03 Priority to PCT/US2010/044281 priority patent/WO2011019549A1/en
2012-05-31 Publication of KR20120055683A publication Critical patent/KR20120055683A/en
2014-07-14 Publication of KR101419406B1 publication Critical patent/KR101419406B1/en
Methods and apparatus for generating, communicating, and / or verifying ownership of expressions are described. Various embodiments are suitable for use in a wireless peer-to-peer communication system in which representations are communicated, e. G., Broadcast, in discovery intervals. The first communication device generates a representation from the first public key and the further input, wherein the first public key corresponds to a private key known to the first communication device. The first device transmits the generated representation on the communication channel used for discovery. The second communication device receives the representation sent from the first device. The second device sends the request signal associated with the representation to the first device and receives the signed signature communication from the first device using the private key known to the first communication device. The second device uses the information from the signature communication to determine whether the first communication device possesses the representation.
&Lt; Desc / Clms Page number 1 &gt; METHODS AND APPARATUS FOR DERIVING, COMMUNICATION AND / OR VERIFYING OWNERSHIP OF EXPRESSIONS,
The various embodiments relate to communication, and more particularly, to methods and apparatus that may be used for generation, communication, and / or verification of ownership of representations.
In a wireless communication system, a communication device may communicate information to be made available to other devices in its vicinity, e.g., presence information, identification information, location information, service information, may wish to advertise offerings and the like. The information may be communicated to other devices to discover and take subsequent actions. For example, based on the detected identifier corresponding to the item or information of interest, the device that detected the discovered discovery information may attempt to establish a connection with the device that transmitted the discovery information of interest. In wireless peer-to-peer communication systems lacking centralized control, there is a need for devices to be able to recognize the presence of other devices of interest in their immediate vicinity, and the implementation of the discovery channels to be used for this purpose is advantageous .
In addition to enabling discovery information to be communicated in a reliable manner, there is a need to provide a mechanism to protect against malicious nodes that may attempt to perform spoofing. Based on the above discussion, there is a need for methods and apparatus for providing confirmation of information communicated on a discovery communication channel. In particular, the receiving device may determine that the received information corresponds to a particular node in such a manner that the receiving node verifies that the particular node has controlled the communication of the received information, e.g., the communicated representation, There is a need for methods and devices to enable the &lt; Desc / Clms Page number 2 &gt;
Methods and apparatus are described for generating representations, communicating representations, and / or verifying that a node has controlled or authorized communication of a received representation. Verifying that a particular node has controlled or authorized communication of a particular expression is sometimes referred to as determining or verifying that a particular node owns the representation. Thus, in various embodiments, the representations are communicated in such a way that the ownership of the received representation is verified, e.g., via one or more communications with a node that is believed to be the owners of the expression. The owner of the received representation may be the node that sent the representation, but in the case of retransmission or communication through an intermediate node, the owner of the representation may be different from the node that sent the representation. The various described methods and apparatus are well suited for use in wireless peer-to-peer communication systems where representations are communicated, e.g., broadcast, in discovery intervals.
An exemplary method of operating a first communication device for communicating information comprises, in accordance with some embodiments, generating an expression from a first public key and an additional input, Corresponding to a private key known to the communication device; And transmitting the generated representation on a communication channel used for discovery. An exemplary first communication device, in accordance with some embodiments, generates a representation from a first public key and an additional input, the first public key corresponding to a private key known to the first communication device; And at least one processor configured to transmit the generated representation on a communication channel used for discovery. An exemplary first communication device further comprises a memory coupled to the at least one processor.
An exemplary method of operating a first communication device to verify ownership of a presentation includes transmitting a signal to a second communication device associated with the presentation; Receiving a signed communication from a second communication device using a private key known to the second communication device; And determining whether the second communication device owns the representation. In some such embodiments, the step of determining whether the second communication device possesses a representation comprises: determining whether the presentation was generated using a first public key; And verifying that the signature communication has been generated by the private key corresponding to the first public key. An exemplary first communication device, in accordance with some embodiments, transmits a signal to a second communication device associated with the presentation; Receive a signed communication from the second communication device using the private key known to the second communication device; And at least one processor configured to determine whether the second communication device owns the representation. In some such embodiments, being configured to determine whether the second communication device possesses a representation may include determining whether the presentation was generated using a first public key; And verify that the signature communication is generated by the private key corresponding to the first public key. An exemplary first communication device also includes a memory coupled to the at least one processor.
While various embodiments have been discussed in the foregoing summary, it should be appreciated that not all embodiments include the same features, and that some of the features described above may be desirable, although not necessary in some embodiments. Numerous additional features, embodiments and advantages of various embodiments are discussed in the following detailed description.
1 is a diagram of an exemplary wireless communication system in accordance with an exemplary embodiment.
2 is a flow diagram of an exemplary method of operating a first communication device in accordance with an exemplary embodiment.
3 is a drawing of an exemplary first communication device, in accordance with an exemplary embodiment.
Figure 4 is an assembly of modules that may be used in the first communication device illustrated in Figure 3, in some embodiments.
5 is a flow diagram of an exemplary method of operating a first communication device in accordance with an exemplary embodiment.
6 is a drawing of an exemplary first communication device according to an exemplary embodiment.
Figure 7 is an assembly of modules that may be used in the first communication device illustrated in Figure 6, in some embodiments.
8 is a diagram illustrating some exemplary signaling exchanges and intermediate results associated with deriving, communicating, and verifying ownership of a presentation in accordance with one embodiment.
9 is a diagram illustrating some exemplary signaling exchanges and intermediate results associated with deriving, communicating, and verifying ownership of a presentation in accordance with one embodiment, wherein the generated representation is based on group information.
10 is a diagram illustrating some exemplary signaling exchanges and intermediate results associated with deriving, communicating, and verifying ownership of an expression in accordance with one embodiment, wherein the generated representation is based on group information, And is received from two group members as a part.
1 is a diagram of an exemplary wireless communication system 100, e.g., a peer-to-peer wireless communication system, in accordance with an exemplary embodiment. Exemplary wireless communication system 100 includes a plurality of wireless communication devices (wireless communication device 1 102, wireless communication device 2 104, wireless communication device 3 106, wireless communication device 4 108, Device 5 110, wireless communication device 6 112, wireless communication device 7 114, ..., wireless communication device N 116). Some of the wireless communication devices of system 100, for example, device 3 106 and device 6 112, are coupled to other network nodes and / or the Internet via backhaul device 120. Some of the wireless communication devices of system 100 are mobile devices, e.g., devices 102, 104, 108, 110, 114, and 116. The exemplary communication system 100 also includes a key server node 118 that includes both an air interface and a wired network interface.
The wireless communication devices 102, 104, 106, 108, 110, 112, 114, 116 support peer-to-peer communication and implement a peer-to-peer timing structure including discovery intervals. A first wireless communication device, e.g., device 1 102, may generate the representation using the public key and additional inputs, and then transmit and sometimes transmit the representation generated during the discovery interval. The representation may be of interest to device identification information, user identification information, service notification, service request, product advertisement, product request, offer, group identification information, location information, device capability information, or other peer- And may convey information including one of the other information.
A second wireless communication device, e.g., device 2 104, that is capable of monitoring discovery interval signals may receive the transmitted representation and desire to verify ownership of the detected representation. The second communication device receives the signed communication using the private key known to the first communication device. The second device determines whether the first communication device owns the representation. In some embodiments, the determination may include determining whether the received representation was generated using the first public key, and verifying that the received signature communication was generated by the private key corresponding to the first public key .
Determining whether the received representation was generated using the first public key includes, in some embodiments, generating a test value based on information received in the signature communication, &Lt; / RTI &gt; Verifying that the received signature communication was generated by the private key corresponding to the first public key includes, in some embodiments, performing a signature verification operation using, for example, a standard public-private key verification method do.
FIG. 2 is a flowchart 200 of an exemplary method of operating a first communication device to communicate information in accordance with various exemplary embodiments. Operation begins in step 202 where the first communication device is powered on and initialized and proceeds to one of steps 204, 206, and 208, for example, in accordance with a particular embodiment. In step 204, the first communication device receives a certificate from a certificate authority, wherein the certificate includes one of a device or a user identifier and a private key. In step 206, the first communication device internally generates a certificate, wherein the certificate includes one of a device or user identifier and a private key. In step 208, the first communication device retrieves the certificate contained in the memory from the memory included in the first communication device by the manufacturer of the first communication device, and the certificate includes a device or user identifier &Lt; / RTI &gt; and a private key. Operation proceeds from one of steps 204, 206, and 208 to step 210. [
In step 210, the first communication device obtains the first public key from the certificate. Operation proceeds from step 210 to step 212. In step 212, the first communication device generates a representation from the first public key and the further input, wherein the first public key corresponds to the private key known to the first communication device. The additional input, in some embodiments, is either a random number or a time dependent input.
In some embodiments, step 212 includes sub-step 214. In some embodiments, step 212 includes sub-step 216. In some embodiments, Returning to sub-step 214, in sub-step 214, the first communication device performs a one-way hash operation using the first public key and the further input as inputs to a one way hash operation, The output of the hash operation is the generated representation. Returning to sub-step 216, in sub-step 216, the first communication device performs a one-way hash operation using the first public key, the second public key and the further input as inputs for a unidirectional hash operation , And the output of the hash operation is the generated representation. Sub-step 216 includes sub-step 218 in which the first communication device uses the second public key corresponding to the second member of the group as well as the first public key to derive the expression, 1 The user identifier to which the public key corresponds or the device is a member of the group.
Operation proceeds from step 212 to step 220. In step 220, the first communication device transmits the generated representation on the communication channel used for discovery. In some embodiments, the communication channel used for discovery corresponds to discovery time intervals in a peer-to-peer communication system. In various embodiments, the transmission includes wirelessly transmitting the representation using a wireless transmitter.
In some embodiments, the output of the hash operation is limited to a predetermined number of bits, and step 220 includes step 222. In step 222, the first communication device transmits different parts of the generated representation at different peer discovery time intervals. Operation proceeds from step 220 to step 224. In step 224, the first communication device receives a signal from the second communication device, e.g., a request for signature communication from the second communication device. Operation proceeds from step 224 to step 226 where the first communication device signs the communication using the private key. In some embodiments, the signature communication comprises at least one of i) the public key and ii) the device or user identifier. The signature communication further comprises, in some embodiments, hash information, wherein the hash information includes at least one input for the hash function used to perform the hash operation and the hash operation used to generate the expression do. In various embodiments, the signature communication includes a plurality of public keys that are used to generate the representation. In some embodiments, the signature communication includes a detailed description of each of the parameters used to generate the representation and the mathematical function used for the hash used to generate the representation. In some embodiments, the signature communication further comprises hash information, the hash information comprising at least one input for the hash function used to perform the hash operation and the hash operation used to generate the representation Identification, or derivation of the information. Thereafter, at step 228, the first communication device sends the signature communication to the second communication device.
3 is a drawing of an exemplary first communication device 300, in accordance with an exemplary embodiment. Exemplary communication device 300 is, for example, one of the wireless communication devices of FIG. The exemplary communication device 300 may implement, and sometimes implement, the method according to the flowchart 200 of FIG.
The communication device 300 includes a processor 302 and a memory 304 that are coupled together via a bus 309 through which various elements 302 and 304 may exchange data and information. The communication device 300 further includes an input module 306 and an output module 308 that can be coupled to the processor 302 as shown. However, in some embodiments, input module 306 and output module 308 are located within processor 302. The input module 306 may receive input signals. Input module 306 may include, and in some embodiments, include a wired or optical input interface and / or a wireless receiver for receiving input. The output module 308 may include a wired or optical output interface and / or a wireless transmitter to transmit the output, and in some embodiments includes them.
Processor 302 is configured to generate a representation from a first public key and an output input, wherein the first public key corresponds to a private key known to the first communication device. Processor 302 is further configured to transmit the generated representation on a communication channel used for discovery. In some embodiments, the communication channel used for discovery corresponds to discovery time intervals in a peer-to-peer communication system. In various embodiments, the processor 302 is configured to wirelessly transmit the representation as part of being configured to transmit the representation. The additional input, in some embodiments, is one of a random number and a time-dependent input value.
In some embodiments, the processor 302 is configured to perform a one-way hash operation using the first public key and the further input as inputs to a one-way hash operation as part of being configured to generate a representation, The output of the hash operation is the generated representation. In some embodiments, the output of the hash operation is limited to a predetermined number of bits, and processor 302, as part of being configured to transmit the generated representation, Lt; / RTI &gt;
The processor 302 is, in some embodiments, configured to obtain the first public key from a certificate comprising one of a device or a user identifier and the private key. Processor 302, in various embodiments, is further configured to receive the certificate from a certificate authority. Processor 302, in some embodiments, is configured to internally generate the certificate. In some embodiments, the certificate is stored by the manufacturer of the first communication device in a memory contained within the first communication device, and the processor 302 is configured to retrieve the stored certificate from memory.
Processor 302 receives a signal from a second communication device; Sign the communication using the private key; And to send the signature communication to the second communication device. The communication, in some embodiments, includes at least one of: i) the public key and ii) the device or user identifier. The signature communication further comprises hash information, in various embodiments, the hash information includes at least one input for the hash function used to perform the hash operation and the hash operation used to generate the expression do.
In some embodiments, the device or user identifier to which the first public key corresponds is a member of a group; And processor 302 is configured to use the second public key corresponding to the second member of the group as well as the first public key to derive the representation as part of being configured to generate the representation. In some such embodiments, the processor 302 performs a one-way hash operation using the first and second public keys and the further input as inputs to the unidirectional hash operation, as part of being configured to generate the representation And the output of the hash operation is the generated representation.
FIG. 4 is an assembly 400 of modules that may be used in the first communication device 300 illustrated in FIG. 3 and used in some embodiments. The modules in assembly 400 may be implemented as hardware, e.g., in discrete circuits, in processor 302 of FIG. Alternatively, the modules may be implemented in software and stored in the memory 304 of the first communication device 300 shown in FIG. It should be appreciated that although illustrated in the embodiment of FIG. 3 as a single processor, e.g., a computer, the processor 302 may be implemented as one or more processors, e.g., computers. When implemented in software, the modules, when executed by the processor, include code that configures the processor 302, e.g., a computer, to implement the functionality corresponding to the module. In some embodiments, processor 302 is configured to implement each of the modules of assembly 400 of modules. In embodiments in which the assembly of modules 400 is stored in memory 304, memory 304 may include code for causing at least one computer, e.g., processor 302, For example, a computer program product that includes a computer readable medium containing individual code for each module.
Completely hardware-based or entirely software-based modules may be used. However, it should be appreciated that any combination of software and hardware (e.g., circuit implementation) modules may be used to implement the functions. As should be appreciated, the modules illustrated in FIG. 4 may be implemented as part of the internal communication device 300, such as the first communication devices 300 or the processor 302, to perform the functions of the corresponding steps illustrated in the method flow diagram 200 of FIG. Lt; RTI ID = 0.0 &gt; and / or &lt; / RTI &gt;
The assembly of modules 400 includes one or more of modules 404, 406, and 408. Module 404 is a module for receiving a certificate from a certificate authority, which includes one of a device or a user identifier and a private key. Module 406 is a module for internally generating a certificate, which includes one of a device or user identifier and a private key. Module 408 is a module for retrieving, from a memory included in the first communication device, a certificate contained in the memory by the manufacturer of the first communication device, the certificate including one of a device or a user identifier and a private key .
The assembly of modules 400 includes a module 410 for obtaining a first public key from the certificate, a module 412 for generating a representation from the first public key and the further input, 1 corresponding to the private key known to the communication device, and a module (420) for transmitting the generated representation on the communication channel used for discovery. In some embodiments, the additional input is one of a random number and a time-dependent input value. In various embodiments, the communication channel used for discovery corresponds to discovery time intervals in a peer-to-peer communication system.
In some embodiments, the module 412 includes a module 414 for performing a one-way hash operation using the first public key and the further input as inputs to a unidirectional hash operation, and the output of the hash operation Is a generated expression. In various embodiments, the assembly of modules 412 includes a module 416 for performing a one-way hash operation using the first public key, the second public key, and the further input as inputs to a one-way hash operation And the output of the unidirectional hash operation is the generated representation. In some embodiments, the module 416 includes a module 418 for using the first public key as well as a second public key corresponding to the second member of the group to derive the expression, The device or user identifier to which the public key corresponds is a member of the group.
In various embodiments, the module 420 includes a module 421 for wirelessly transmitting the representation. Module 420, in some embodiments, includes a module 422 for transmitting different portions of the generated representation within different peer discovery time periods. In some such embodiments, the output of the hash operation is limited to a predetermined number of bits.
The assembly 400 of modules includes a module 424 for receiving signals from a second communication device, a module 426 for signing communications using the private key, Gt; 428 &lt; / RTI &gt; In various embodiments, the communication comprises at least one of i) the public key and ii) the device or user identifier. In some embodiments, the signature communications further include hash information, wherein the hash information includes at least one input to a hash function and a hash operation used to generate the representation. In some embodiments, the signature communications further include hash information, wherein the hash information includes at least one input to a hash operation used to generate the representation and information used to identify or derive the hash function.
5 is a flowchart 500 of an exemplary method of operating a first communication device to verify ownership of a presentation. The operation begins at step 502 where the first communication device is powered on and initialized and proceeds to step 504. In step 504, the first communication device receives the representation from the second communication device. In some embodiments, step 504 includes sub-step 506 in which the first communication device receives different parts of the representation at different peer discovery time periods. In some such embodiments, the output of the hash representation is limited to a predetermined number of bits. The operation proceeds from step 504 to step 508. [
At step 508, the first communication device sends a request for a signal, e.g., a signature communication, to the second communication device associated with the presentation. Operation proceeds from step 508 to step 510. [ At step 510, the first communication device receives the signed communication from the second communication device using the private key known to the second communication device. In some embodiments, the first public key corresponding to the private key is included in the signature communication. In various embodiments, the signature communication includes a plurality of public keys to be used to generate the test values. In various embodiments, the signature communication includes hash information, and the hash information indicates a one-way hash function to be used to generate the test value. In various embodiments, the signature communication includes hash information, and the hash information indicates information used to identify or derive a one-way hash function to be used to generate the test value. In some embodiments, the signature communication includes a detailed description of the mathematical function used for the hash used to generate the test value, as well as each of the parameters used to generate the test value.
In some embodiments, operation proceeds from step 510 to step 512, but in other embodiments, operation proceeds from step 510 to step 514. Returning to step 512, in step 512, the first communication device uses an identifier included in the signature communication to retrieve the first public key, and the identifier is one of a device and a user identifier. In various embodiments, the first public key is retrieved from the memory of the first communication device. In some embodiments, the first public key is retrieved from another source, e.g., a public key server. Operation proceeds from step 512 to step 514.
In step 514, the first communication device determines whether the second communication device owns the representation. Step 514 includes steps 516 and 528. [ In step 516, the first communication device determines whether the representation has been generated using the first public key. Step 516 includes steps 518 and 526. [ In step 518, the first communication device generates a test value from the first public key and the further input, and the further input is either a random number or a time-dependent input.
In some embodiments, step 518 includes one of steps 520 and 522. [ In step 520, the first communication device performs a one-way hash operation using the first public key and the further input as inputs of the unidirectional hash operation, and the output of the hash operation is the test value. In step 522, the first communication device performs a one-way hash operation using the first public key, the second public key, and the further input as inputs to the unidirectional hash operation, Value. Step 522 includes step 524 wherein the first communication device sends the first public key to the second public key corresponding to the second member of the group as well as the first public key to generate the test value, And the device of the user identifier to which the first public key corresponds is a member of the group.
Operation proceeds from step 518 to step 526 where the first communication device compares the representation with the test value to determine whether the expression matches the test value, 1 Indicates that it was created using the public key. Operation proceeds from step 516 to step 528. [ At step 528, the first communication device performs an operation to verify that the signature communication has been generated by the private key corresponding to the first public key, for example, the first communication device sends a standard public- The signature verification is performed using the verification method.
In some embodiments, where the second communication device is a member of the group, the exemplary method includes the steps of the first communication device sending a signal to the second member of the group, and in the first communication device, Receiving from the second member of the group a second signed communication signed using a second private key known to the user, e.g., a second private key corresponding to the second public key, do. In some such embodiments, the test value is generated using information restored from both the signature communication and the second signature communication. In some embodiments, a plurality of test values, e.g., a first test value using information reconstructed from signature communications from a second communication device, and a second test value using information reconstructed from the second signature communication from the second member of the group A second test value using the information is generated and tested for the received representation. In various embodiments in which a second signature communication is received from a second member of the group, the first communication device is also operable to verify that the second signature communication is generated by the second private key corresponding to the second public key .
6 is a diagram of an exemplary first communication device 600, in accordance with an exemplary embodiment. Exemplary communication device 600 is, for example, one of the wireless communication devices of FIG. Exemplary communication device 600 may implement, and sometimes implement, the method according to flowchart 400 of FIG.
The communication device 600 includes a processor 602 and a memory 604 in which various elements 602 and 604 are coupled together via a bus 609 through which data and information may be exchanged. The communication device 600 further includes an input module 606 and an output module 608 that may be coupled to the processor 602 as shown. However, in some embodiments, input module 606 and output module 608 are located within processor 602. Input module 606 may receive input signals. Input module 606 can include and, in some embodiments, include a wired or optical input interface and / or a wireless receiver for receiving input. The output module 608 may include a wired or optical output interface and / or a wireless transmitter for transmitting the output, and in some embodiments includes these.
The processor 602 sends a signal to a second communication device associated with the representation and receives a signed signed communication from the second communication device using a private key known to the second communication device, And whether or not it owns a representation. The processor 602 may be configured to determine whether the representation is generated using the first public key, and determine whether the signature communication is to be performed by the second communication device, To verify that it was generated by the private key corresponding to the first public key.
Processor 602 is part of being configured to determine whether the representation was generated using a first public key, the method comprising: generating a test value from the first public key and an additional input, One of the time-dependent input values; And compare the test value with the expression to determine whether the test value and the expression match, wherein the match indicates that the expression was generated using the first public key.
In some embodiments, the first public key may be included and sometimes included in the signature communication, and the processor 602 is further configured to recover the first public key from the signature communication. The processor 602 is further configured to use, in some embodiments, an identifier included in the signature communication to retrieve the first public key from another source or memory, e.g., a public key server , The identifier is one of a device and a user identifier.
In some embodiments, the processor 602 may be configured to perform a one-way hash operation using the first public key and the further input as inputs to a one-way hash operation, And the output of the hash operation is the test value. In various embodiments, the output of the hash operation is limited to a predetermined number of bits, and processor 602, as part of being configured to receive the representation, is operable to receive different portions of the representation in different peer discovery time periods Lt; / RTI &gt;
In some embodiments, the signature communication further includes hash information, and the hash information indicates a one-way hash function to be used to generate the test value. In some such embodiments, the processor 602 is configured to recover the hash information from the signature communication.
In some embodiments, the device or user identifier to which the first public key corresponds may be a member of a group and is sometimes a member of a group, and the processor 602, as part of being configured to generate a test value, And to use the second public key corresponding to the second member of the group as well as the first public key to generate the value. In some such embodiments, the processor 602 may perform a one-way hash operation using the first and second public keys and the further input as inputs to the unidirectional hash operation as part of being configured to generate a test value And the output of the hash operation is the test value.
FIG. 7 is an assembly 700 of modules that may be used in the first communication device 600 illustrated in FIG. 6 and used in some embodiments. The modules in assembly 700 may be implemented, for example, as discrete circuits in hardware within processor 602 of FIG. Alternatively, the modules may be implemented in software and stored in the memory 604 of the first communication device 600 shown in FIG. It should be appreciated that while illustrated in the embodiment of Figure 6 as a single processor, e.g., a computer, the processor 602 may be implemented as one or more processors, e.g., computers. When implemented in software, the modules include code for configuring the processor 602, e.g., a computer, to implement the functionality corresponding to the module, when executed by the processor. In some embodiments, processor 602 is configured to implement each of the modules of assembly 700 of modules. In embodiments where the assembly of modules 700 is stored in the memory 604, the memory 604 may allow at least one computer, e.g., processor 602, Code, e.g., a computer program product comprising a computer readable medium comprising individual code for each module.
Completely hardware-based or entirely software-based modules may be used. However, it should be appreciated that any combination of software and hardware (e. G., Circuit implemented) modules may be used to implement the functions. As should be appreciated, the modules illustrated in FIG. 7 may be implemented within a first communication device 600, such as the first communication device 600 or processor 602, for performing the functions of the corresponding steps illustrated in the method flow diagram 500 of FIG. Lt; RTI ID = 0.0 &gt; and / or &lt; / RTI &gt;
The assembly of modules 700 includes a module 704 for receiving the representation from a second communication device, a module 708 for sending a signal to the second communication device associated with the representation, for example a request for signature communication, A module 710 for receiving signed communications signed from the second communication device using a private key known to the second communication device and a module for determining whether the second communication device owns the representation Gt; 714 &lt; / RTI &gt; In various embodiments, the first public key corresponding to the first private key is included in the signature communication received by module 710. [ In some embodiments, the signature communication received by module 710 includes hash information, and the hash information indicates a one-way hash function to be used to generate the test value.
In some embodiments, the assembly of modules 700 includes a module for using an identifier included in the signal communication to retrieve a first public key from another source or memory, e.g., a public key server 712), wherein the identifier is one of a device and a user identifier.
In some embodiments, the module 704 includes a module 706 for receiving different portions of the representation in different peer discovery time periods. In some embodiments, the output of the hash operation is limited to a predetermined number of bits, and module 706 receives different portions of the expression at different peer discovery time periods.
Module 714 may include a module 716 for determining whether the representation was generated using the first public key and an operation for verifying that the signature communication was generated by the private key corresponding to the first public key Gt; 728 &lt; / RTI &gt; Module 716 includes a module 718 for generating a test value from the first public key and the further input, wherein the further input is one of a random number and a time dependent variable, and whether the test value and the expression match And a module 726 for comparing the test value to the expression to determine that the match is generated using the first public key.
In some embodiments, module 718 includes a module 720 for performing a one-way hash operation using the first public key and the further input as inputs to a unidirectional hash operation, And a module 722 for performing a one-way hash operation using the first public key, the second public key, and the further input as inputs to a one-way hash operation, wherein the output of the one-way hash operation Is the test value. Module 722 includes a module 724 for using the first public key as well as the second public key corresponding to a second member of the group to generate the test value, The device or user identifier is a member of the group.
In some embodiments, the assembly of modules 700 includes a module 730 for sending a signal to a second member of the group, e.g., a signature communication, and a second And a module 732 for receiving a second signature communication signed using the private key from the second member of the group. The second private key known to the second member of the group is, for example, the private key corresponding to the second public key. In some such embodiments, module 714 uses information reconstructed from both the first signature communications and the second signature communications when generating a test value for comparison with a received representation. In various embodiments, the module 714 for determining whether the second communication device possesses the representation verifies that the second signature communication is generated by the second private key corresponding to the second public key Lt; RTI ID = 0.0 &gt; 734 &lt; / RTI &gt;
Figure 8 is a drawing 800 illustrating some example signaling exchanges and intermediate results for generating, communicating, and verifying ownership of a presentation, in accordance with one embodiment. Drawing 800 illustrates two exemplary wireless peer-to-peer communication devices (device A 802, device B 804). The devices 802, 804 are, for example, any of the wireless communication devices of the system 100 of FIG. The devices 802, 804 may implement one or more methods in accordance with the flowchart 200 of FIG. 2 and / or the flowchart 500 of FIG. Devices 802 and 804 may be implemented according to one or more of the elements described in Figures 3, 4, 6 and / or 7.
Device A 802 includes a certificate 806 that includes a public key PK A , a corresponding private key A, and identification information. The identification information is, for example, either a device or a user identifier. Device A 802 desires to send discovery information, and therefore device A 802 generates representation 812. The representation is generated by device A 802 as a function of public key PK A 808 and further input. In some embodiments, generating the representation includes performing a one-way hash operation using an additional input to the one-way hash operation and PK A , and the output of the unidirectional hash operation is the generated representation. Device A 802 generates a discovery signal 814 to convey the generated representation 812. Device A 802 transmits its discovery signal 814 over the discovery communication channel 816 in the wireless link resources of the peer-to-peer repeat timing-frequency structure being implemented. Device B 804, which monitors the discovery signals from other devices, detects a Device A discovery signal as indicated by arrow 818. Device B 804 restores the detected representation as indicated by block 820. [
Device B 804 wants to verify that device A 802 has ownership of the representation. Device B 804 generates a request for signature communication 822 and sends a request signal 824 to device A 802 via non-discovery control channel 826. In some embodiments, the non-discovery control channel 826 is one of a paging channel, a link establishment channel, and a post link establishment control channel. Device A 802 receives the request signal as indicated by arrow 828 and restores the received request for the signature communication as received by block 830. [ In response, device A 802 generates communication 832 using one or more of hash information 834, PK A 808, and ID information 838 as inputs. ID information 838 is, for example, a device and / or a user identifier. The hash information 834 includes at least one input used to generate the hash function and the representation 812 used to perform the hash operation used to generate the generated representation 812, Information. As another example, the hash information 834 may include, for example, a hash function used to perform the hash operation used to generate the generated representation 812 and at least one input Lt; / RTI &gt;
Device A 802 then signs the generated communication 832 using its private key A 840 to generate a signature communication 842. Device A 802 generates a signal 844 that conveys the generated signature communication and transmits it via the non-discovery control channel 846. In some embodiments, the non-discovery control channel 846 is one of a paging response channel, a link setup channel, and a post link setup control channel. Device B 804 receives a signal conveying the signature communication as indicated by the received signal 848. [ Device B 804 recovers the received signature communication as indicated by block 850. [ Device B 804 uses the information conveyed by the received signature communication to generate a test value as indicated by block 852. [ The generated test value is compared with the detected expression 820, and the comparison result 854 is obtained. In this case, device A 802 possesses the representation that was transmitted and the private key used to create the signed communication matches the public key originally used to generate the transmitted representation. In this case, the generated test value 852 matches the detected expression 820. Device B 804 also performs signature verification, for example, as indicated by block 856, using standard public private key verification methods.
FIG. 9 is a drawing 900 illustrating some example signaling exchanges and intermediate results for generation, communication, and verification of representation ownership in accordance with one embodiment. Drawing 900 illustrates two exemplary wireless peer-to-peer communication devices (e.g., device A 902, device B 904). Devices 902 and 904 are, for example, any of the wireless communication devices of system 100 of FIG. The devices 902 and 904 may implement one or more methods according to the flowchart 200 of FIG. 2 and / or the flowchart 500 of FIG. Devices 902 and 904 may be implemented according to one or more of the elements described in Figures 3, 4, 6, and / or 7.
Device A 902 includes a certificate 906 that includes a public key PK A , a corresponding private key A, and identification information. The identification information is, for example, either a device or a user identifier. Device A 902 is a member of a group including device C and device D. [ Device A 902 includes a public key (PK C ) 903 for device C and a public key (PK D ) 905 for device D. Device A 902 wants to send discovery information, and therefore device A 902 generates representation 912. The representation is generated by device A 902 as a function of its own public key (PK A 908, PK C 903, PK D 910) and further input. In some embodiments, generating the representation includes performing a one-way hash operation using additional inputs to the one-way hash operation and PK A , PK C , and PK D , and the output of the one- to be. Device A 902 generates a discovery signal 914 to convey the generated representation 912. Device A 902 transmits its discovery signal 914 over the discovery communication channel 916 in the wireless link resources of the peer-to-peer repeatable timing-frequency structure being implemented. Device B 904, which monitors the discovery signals from other devices, detects the device A discovery signal, as indicated by arrow 918. Device B 904 restores the detected representation as indicated by block 920. [
Device B 904 wants to verify that device A 902 has ownership of the representation. Device B 904 generates a request for signature communication 922 and sends a request signal to device A 902 via non-discovery control channel 926 (924). In some embodiments, the non-discovery control channel 926 is one of a paging channel, a link setup channel, and a post link setup control channel. Device A 902 receives the request signal as indicated by arrow 928 and restores the received request for the signature communication as indicated by block 930. [ In response, device A 902 may use one or more of hash information 934, PK A 908, PK C 903, PK D 905, and ID information 938 as inputs to communicate 932). ID information 938 is, for example, a device and / or a user identifier. The hash information 934 includes information including at least one input used to generate the hash function and the representation 912 used to perform the hash operation used to create the generated representation 912, . As another example, the hash information 934 may include a hash function used to perform the hash operation used to generate the generated representation 912, and at least one input (e.g., And the like.
Device A 902 then signs the generated communication 932 using its private key A 940 to generate a signature communication 942. Device A 902 generates a signal 944 that conveys the generated signature communication and transmits it via the non-discovery control channel 946. In some embodiments, the non-discovery control channel 946 is one of a paging response channel, a link setup channel, and a post link setup control channel. Device B 904 receives a signal that carries a signature communication as indicated by the received signal 948. Device B 904 recovers the received signature communication as indicated by block 950. [
Device B 904 uses the information communicated by the received signature communication 950 to generate a test value, as indicated by block 952. [ The generated test value is compared with the detected expression 920, and the comparison result 954 is obtained. In this case, device A 902 owns the representation that was transmitted, and the private key used to create the signed communication matches the public key originally used to generate the transmitted representation. In this case, the generated test value 952 matches the detected expression 920. Device B 904 also performs signature verification on the signature communication received from device A 902, as indicated by block 956, using, for example, standard public private key verification methods.
FIG. 10 is a drawing 1000 illustrating some exemplary signaling exchanges and intermediate results for generation, communication, and verification of representation ownership in accordance with one embodiment, wherein the generated representation is based on group information, Are received from the two group members as part of the verification. Drawing 1000 illustrates three exemplary wireless peer-to-peer communication devices (device A 902, device B 904, device C 1002). The devices 902, 904, and 1002 are, for example, any of the wireless communication devices of the system 100 of FIG. Devices 902, 904, and 1002 may implement one or more methods in accordance with flowchart 200 of FIG. 2 and / or flowchart 500 of FIG. Devices 902 and 904 may be implemented according to one or more of the elements described in Figures 3, 4, 6, and / or 7.
Device A 902 includes a public key PK A , a corresponding private key A, and a certificate 906 containing identification information. The identification information is, for example, either a device or a user identifier. Device A 902 is a member of a group including device C and device D. [ Device A 902 includes a public key (PK C ) 903 for device C and a public key (PK D ) 905 for device D. Device C 1002 includes a public key C, a private key C 1003, and a certificate containing ID information. Device C 1002 also includes a public key A and a public key D. Device A 902 wants to send discovery information, and therefore device A 902 generates representation 912. The representation is generated by device A 902 as a function of public key PK A 908, PK C 903, PK D 905 and an additional input 910. In some embodiments, generating the representation includes performing a one-way hash operation using additional inputs to the one-way hash operation, PK A , PK C , and PK D , and the output of the one- to be. Device A 902 generates a discovery signal 914 for delivering the generated representation 912. Device A 902 transmits its discovery signal 914 over the discovery communication channel 916 in the wireless link resources of the peer-to-peer repeatable timing-frequency structure being implemented. Device B 904, which monitors the discovery signals from other devices, detects the device A discovery signal as indicated by arrow 918. Device B 904 recovers the detected representation as indicated by block 920. [
Device A 902 then signs the generated communication 932 using its private key A 940 to generate a signature communication 942. Device A 902 generates a signal 944 that conveys the generated signature communication and transmits it via the non-discovery control channel 946. In some embodiments, the non-discovery control channel 946 is one of a paging response channel, a link setup channel, and a post link setup control channel. Device B 904 receives the signal communicating the signature communication as indicated by the received signal 948. [ Device B 904 recovers the received signature communication as indicated by block 950. [
In response to the detected representation 920, device B 904 also generates a request for signature communication from another member of the group to which device A 902 belongs. In this example, device B 904 generates a request for a signature communication to device C 1004. [ For example, device C 1002 may be in the local near area of device B 904 at this time and is available to assist verification. Device B 904 transmits a request signal to device C 1002 to convey request 1004 via non-discovery control channel 1008 (1006). Device C 1002 receives the request signal as indicated by arrow 1010 and restores the received request for the signature communication. In response, device C 1002 generates communications using one or more of the hash information, PK A , PK B , PK C , and ID information as inputs.
Device C 1002 then signs the generated communication using its private key C 1003, which corresponds to its public key C PK C , to generate signature communication 1012. Device C 1002 generates and transmits signal 1014 carrying the generated signature communication over non-discovery control channel 1016. Device B 904 receives a signal carrying a signature communication as indicated by the received signal 1018. Device B 904 recovers the received signature communication as indicated by block 1020. [
Device B 904 uses the information communicated by the received signature communication 950 and / or received signature communication 1020 to generate a test value as indicated by block 952. The generated test value is compared with the detected expression 920, and the comparison result 954 is obtained. In this case, device A 902 owns the representation that was transmitted, and the private key used to create the signed communication matches the public key originally used to generate the transmitted representation. In this case, the generated test value 952 matches the detected expression 920. Device B 904 also performs signature verification on the signature communication received from device A 902, as indicated by block 956, using, for example, standard public private key verification methods. Device B 904 also performs signature verification on the signature communication received from device C 1002, as indicated by block 1022, using, for example, standard public private key verification methods. do.
Various embodiments are directed to methods and apparatus that permit deriving a set of representations from a certificate. The set of representations may, in some embodiments, include, for example, ownership that is verified by checking the signature of the message carrying the certificate, and its validity is the signature (s) on the certificate (i. E., At least one certificate authority ), Such as a public key that can be verified by checking a certificate (e.g. There are two main advantages in deriving expressions from a certificate:
1. If not impossible, it is very difficult to imitate the owner of the expression because the first step in verifying the expression (s) is to approve the certificate. This means that the malicious node must prove ownership of the private-public key pair, which in turn means that the private key used to sign the message carrying the certificate should be owned.
2. Verification of a set of expressions is a simple and inexpensive operation. In some embodiments, the set of representations is approved by approving the certificate and checking the public key ownership. In some embodiments, if all of the tests acquire positive results, the expressions are easily checked with only one, or several, unidirectional hash function (s).
A third advantage to using a certificate to derive an expression is that the certificate can also be self-generated and, in some embodiments, generated. In such a scenario, certificate validation is reduced to verification of the public key, i.e., ownership of only one signature. Such scenarios may be applied in situations where the certification authority (CA) is not available and / or accessible, and is used in some embodiments.
A fourth advantage to using a certificate to derive an expression is the possibility of using more than one certificate to derive a particular expression. This procedure can be referred to as "chaining" as it allows a predefined set of people each having their own private-public key pair to possess a particular representation.
In addition to using the PK to generate the representation (s), there are other important parameters that may be used for the same purpose in some embodiments. For example, HIT (i.e., hash PK) is a 128 bit parameter that can be inserted into a unidirectional hash function with other random values. In this case, the expression would be the result of a hash. It should be noted that the certificate generally returns the HIT as the identity of the owner (or at least one identity).
Another important parameter is the hash of the certificate itself, e.g., the first 128 bits.
It is also possible to derive the parameter (s) from a certificate from which the expression (s) can be derived. In practice, this can be used so long as the ownership of such parameter (s) can be ascertained. This virtual layering between certificates and representations (for example, when pairing) allows a sender to disclose his identity (i.e., not primarily his public key) before checking the certificate of another peer. ) And may be useful for personal purposes (ie, in the case of group expressions).
A common feature in this set of parameters is that each of the parameters can be verified at the time of granting ownership of the certificate and signature, i.e., the private-public key pair.
The usual way to create a representation is to apply the following formula:
- First (size, input) indicates only a first "size ", i.e., a cut of the" input "data such that the m bits are retained for use.
- Hash () is a one-way hash function.
- M is the parameter to be acknowledged for the receiver. This can indicate the sender's public key, HIT, hash of the certificate, and so on.
- "|" indicates the concatenation of bytes.
The RAN is a random 128-bit parameter.
Note: Immediately following (1) that an unrestricted number of (Y) can be derived from the PK. This feature allows the sender to derive as many expressions as possible without undermining his security level.
Various embodiments relate to communication systems, e. G., Peer-to-peer wireless communication systems. The representation may be derived from a device certificate and is derived in some embodiments. In peer-to-peer communication systems, representations play an important role in notifying both presence and proximity, as well as informing specific information.
However, sending (X, Y) to a set of receivers may be a malicious sender attempting to forge a pair of parameters at some stage in an attempt to find the relationship (s) in the case of a social network or to disrupt the set of receivers I can not prevent it.
The motivation in this context is to provide a mechanism by which the receiver of an expression can easily prevent the representation from belonging to the device from which it is transmitted, i.e. to prevent counterfeiting of the representations by devices that do not possess the expressions .
Various aspects of an exemplary peer-to-peer protocol will be described. The expression (E) can be described as a pair of parameters (X, Y) where (X) is the information itself and (Y) is a shared key. The shared key is used to improve the privacy of the notification node by incorporating it with the current time in the hash of (X). For this purpose, the pair (X, Y) is distributed out of band to a set of receivers with identifiers such as the sender's host identification tag (HIT) obtained by hashing its public key (PK) do. Each receiver binds the pair (s) (X, Y) to the corresponding HIT. Following this, each of the receivers must be able to verify the identity of the sender with high confidence before accepting the pair (X, Y).
It is clear from the above that the shared key Y plays an important role in improving the privacy of the sender himself by making the sender only identifiable and traceable to the set of receivers. For receivers outside of the specified set, the notified information will not provide any possibility of correlating any hints about the identity of the sender between different notifications (i.e., except in certain cases).
The proposed solution includes, in some embodiments, deriving (Y) (e.g., the device's public key or other parameters in the certificate) from the sender device's certificate.
In some communication systems, e.g., some peer-to-peer communication systems, the following steps are used to establish communications between the devices:
1) Discovery: During this process, devices discover each other, for example, by transmitting and monitoring "representations ".
2) Pairing: Once the devices discover each other, a pairing process is used to establish a secure communication channel between the devices.
3) Link settings and upper layer. Once the pairing is done, the upper layer initiates the grant of data exchange.
Some exemplary embodiments are suitable for allowing devices to verify during the pairing phase that devices possess the specific representation to be transmitted in the discovery phase. In some embodiments, this is accomplished by deriving a representation used in the discovery phase from a certificate belonging to the source device.
Now, the expression Y can be verified as belonging to the source of the expression by providing the certificate of the signature and the source that accepts ownership of the certificate to another device.
Deriving the representation (Y) from the sender's PK may be performed in the following manner:
- PK is the sender's public key.
- "|" indicates byte concatenation.
Note: Immediately following equation (2), the unrestricted number of (Y) can be derived from the public key (PK). This feature allows the sender to derive as many expressions as possible without undermining his security level.
After deriving the expression (Y), the sender shares it with its own selected group of receivers along with its HIT. As mentioned above, it is important to sign any payload carrying these parameters. Otherwise, the receiver (s) must reject it. Each receiver may bind (Y) to the sender's HIT and start using it to derive fresh notifications that are intended to be used or to be sent when the sender is paging (i.e., Can be determined).
When the receiver R initiates a session with the sender, the security association between the two peers is established prior to the exchange of any data packet. Approval of the expression (Y) may occur when approving the sender's certificate. The certificate provides the receiver (R) with confirmation of ownership of the PK. At the same time as the certificate acknowledgment, the sender can publish the RAN parameter and the RAN parameter next allows the receiver R to recalculate the representation (Y) from the authenticated PK and RAN.
Deriving the expression (Y) from the public key (PK) prevents a fake attack against (Y), since the malicious node also has to verify ownership of the PK itself, which is assumed to be substantially difficult to achieve.
In some embodiments, the RAN (s) are transmitted with a HIT and a representation (Y). Note that although the HIT must be associated with a PK, the message carrying each of these parameters may be signed using another private key. In this case, verification of the PK allows the receiver R to implicitly approve each of the expressions (Y) bound to the PK.
The techniques of various embodiments may be implemented using software, hardware, and / or a combination of software and hardware. In some embodiments, the modules are implemented as physical modules. In some such embodiments, the individual physical modules include hardware, e.g., circuits, implemented in hardware, e.g., as circuits, or with some software. In other embodiments, modules are stored in memory and implemented as software modules executed by a processor, e.g., a general purpose computer. Various embodiments may be implemented in a wireless device, such as an apparatus, e.g., mobile nodes such as fixed wireless nodes, mobile access terminals, where cell phones are just one example, access points such as base stations comprising one or more access points, And / or communication systems. Various embodiments may also be used to control and / or control methods, e.g., wireless communication devices including mobile and / or fixed nodes, access points such as base stations, server nodes and / or communication systems, Or operating the same. The various embodiments may also be implemented in a machine, e.g., computer readable media, such as ROM, RAM, CD, hard disk, etc., including machine readable instructions for controlling the machine to implement one or more steps of the method .
It is understood that the particular order or hierarchy of steps in the disclosed processes is an example of exemplary schemes. It should be understood that, based on design preferences, a particular order or hierarchy of steps in the processes may be rearranged while remaining within the scope of the present disclosure. The appended method claims present elements of various steps in a sample order, but are not intended to be limited to the particular order or hierarchy presented.
In various embodiments, the nodes described herein may be configured to generate a representation from steps corresponding to one or more methods, e.g., a first public key and an additional input, wherein the first public key is associated with the first communication Corresponding to a private key known to the device; And using the one or more modules to perform the step of transmitting the generated representation on the communication channel used for discovery.
Thus, in some embodiments, various features are implemented using modules. Such modules may be implemented using software, hardware, or a combination of software and hardware. Many of the above-described methods and method steps may be implemented in a machine, e.g., a general-purpose computer, with additional hardware or without additional hardware, to implement some or all of the above- May be implemented using machine-executable instructions, e.g. software, included in a machine-readable medium, such as a memory device, e.g., RAM, floppy disk, etc. for control purposes. Thus, in particular, various embodiments provide a machine-readable medium (e.g., a computer-readable medium) that includes machine-executable instructions for causing a machine, e.g., a processor and associated hardware, to perform one or more of the steps of the above- . Some embodiments are directed to a device, e.g., a communications device, comprising a processor configured to implement one, more than one, or all of the steps of one or more methods of the present invention.
Some embodiments may be implemented in a computer-readable medium having stored thereon a computer or a plurality of computers including code for causing a computer to implement various functions, steps, operations and / or operations, e.g., To a computer program product comprising a readable medium. Depending on the embodiment, the computer program product may, and sometimes does, include different codes for each step to be performed. Thus, a computer program product may, and sometimes does, include code for each individual step of a method, e.g., a method of controlling a communication device or node. The code may be in the form of a machine, e.g., computer-executable instructions, stored on a computer-readable medium, such as a RAM (Random Access Memory), ROM (read only memory) or other type of storage device. In addition to being relevant to a computer program product, some embodiments relate to a processor configured to implement one or more of the various functions, steps, operations and / or operations of the one or more methods described above. Accordingly, some embodiments are directed to a processor, e.g., a CPU, configured to implement some or all of the steps of the methods described herein. The processor may, for example, be for use in a communication device or other device as described herein.
In some embodiments, a processor or processors, e.g., CPUs, of one or more devices, e.g., communication devices, such as wireless terminals, are configured to perform the steps of the methods described as being performed by the communication device. Thus, some, but not all, embodiments relate to a device, e.g., a communication device, having a processor that includes a module corresponding to each of the steps of the various described methods performed by the device in which the processor is comprised. In some, but not all, embodiments, a device, e.g., a communication device, includes a module corresponding to each of the steps of the various described methods performed by the device including the processor. The modules may be implemented using software and / or hardware.
While various features are described in the context of OFDM systems, at least some of the methods and apparatus of various embodiments are applicable to a wide variety of communication systems including many non-OFDM and / or non-cellular systems.
Numerous additional modifications to the methods and apparatus of the various embodiments described above will be apparent to those skilled in the art in view of the above description. Such variations are to be regarded as being within the scope of the invention. Methods and apparatus provide wireless communication links between CDMA, orthogonal frequency division multiplexing (OFDM), GSM and / or wireless communication devices such as access points and mobile nodes and wireless communications, e.g., WAN wireless communication links Various other types of communication techniques that can be used to provide a variety of different types of communication, and are used in various embodiments. Methods and apparatus provide wireless communication links between wireless communication devices including CDMA, orthogonal frequency division multiplexing (OFDM), GSM and / or peer-to-peer interfaces, for example, direct peer- Various other types of communication techniques that can be used to provide a variety of different types of communication, and are used in various embodiments. In some embodiments, a wireless communication device including both a wide area network interface and a peer-to-peer network interface may use different communication techniques for different interfaces, e.g., one of CDMA and GSM-based techniques for a WAN interface, We use OFDM-based techniques for peer-to-peer interfaces. In some embodiments, the access points are implemented as base stations that establish communication links with mobile nodes using CDMA, GSM and / or OFDM. In various embodiments, the mobile nodes are implemented as notebook computers, personal data assistants (PDAs), or other portable devices including receiver / transmitter circuits and logic and / or routines for implementing the method.
A method of operating a first communication device for communicating information,
Generating a representation from a first public key and an additional input, the first public key corresponding to a private key known to the first communication device, Way hash operation using the first public key and the further input as inputs to a one-way hash operation, the output of the hash operation being the generated representation;
Transmitting the generated representation on a communication channel used for discovery;
Receiving a signal from a second communication device;
Signing the communication using the private key; And
Transmitting the signature communication to the second communication device
Wherein the signature communication comprises hash information including a hash function used to perform the hash operation and at least one input to the hash operation used to generate the representation, How to do it.
Wherein the first public key is obtained from a certificate comprising one of a device or a user identifier and the private key.
The communication includes:
i) the public key and ii) the device or user identifier
Generating a representation from a first public key and an additional input, the first public key corresponding to a private key known to the first communication device, and generating the representation comprises: And performing the unidirectional hash operation using the public key and the further input, wherein the output of the hash operation is the generated representation; And
And transmitting the generated representation on a communication channel used for discovery,
The user or the first communication device to which the first public key corresponds is a member of a group; And
Wherein generating the representation comprises using the first public key to derive the expression as well as a second public key corresponding to a second member of the group.
Wherein the generating the representation comprises performing the unidirectional hash operation using the first and second public keys and the further input as inputs to a unidirectional hash operation, &Lt; / RTI &gt;
Means for generating a representation from a first public key and an additional input, the first public key corresponding to a private key known to the first communication device, and means for generating the representation, Means for performing the unidirectional hash operation using a first public key and the further input, the output of the hash operation being the generated representation;
Means for transmitting the generated representation on a communication channel used for discovery;
Means for receiving a signal from a second communication device;
Means for signing communications using the private key; And
Means for sending the signature communication to the second communication device
Wherein the signature communication comprises hash function including at least one input for a hash function used to perform the hash operation and the hash operation used to generate the representation.
Wherein the user or the first communication device to which the first public key corresponds is a member of a group,
Wherein generating the representation comprises using the first public key as well as a second public key corresponding to a second member of the group as an input to the unidirectional hash operation to derive the expression, .
A computer-readable recording medium for use in a first communication device,
Code for causing at least one computer to generate a representation from a first public key and an additional input, the first public key corresponding to a private key known to the first communication device, And performing the unidirectional hash operation using the first public key and the further input as inputs to the hash operation, wherein the output of the hash operation is the generated representation;
Code for causing the at least one computer to transmit the generated representation over a communication channel used for discovery;
Code for causing the at least one computer to receive a signal from a second communication device;
Code for causing the at least one computer to sign communications using the private key; And
Code for causing the at least one computer to transmit the signature communication to the second communication device
Wherein the signature communication comprises hash information including a hash function used to perform the hash operation and at least one input to the hash operation used to generate the representation, .
At least one processor and a memory coupled to the at least one processor;
The method comprising: generating a representation from a first public key and an additional input, the first public key corresponding to a private key known to the first communication device; and as part of being configured to generate a representation, And performing the unidirectional hash operation using the first public key and the further input as inputs to the unidirectional hash operation to generate the unidirectional hash operation;
Transmit the generated representation on a communication channel used for discovery;
Receive a signal from a second communication device;
Sign the communication using the private key; And
And to send the signature communication to the second communication device,
Wherein the signature communication comprises hash information including at least one input for a hash function used to perform the hash operation and the hash operation used to generate the expression.
Wherein the processor is further configured to generate the representation using the first public key to derive the expression as well as a second public key corresponding to a second member of the group as an input to the unidirectional hash operation. 1 communication device.
Wherein the at least one processor is further configured to obtain the first public key from a certificate comprising one of a device or a user identifier and the private key.
CLAIMS What is claimed is: 1. A method of operating a device that receives a representation to verify ownership of a representation,
Sending a signal to a communication device associated with the representation,
Receiving a signed communication from the communication device associated with the representation using a private key known to the communication device associated with the representation; and
Determining whether the communication device associated with the expression owns the expression;
Wherein the determining comprises determining whether the representation was generated using a first public key and verifying that the signature communication was generated by a private key corresponding to the first public key;
Wherein the step of determining whether the representation is generated using a first public key comprises generating a test value from the first public key and the further input wherein the further input is one of a random number and a time dependent input value, Comparing the test value with the expression to determine whether the test value and the expression match, and wherein the match indicates that the expression was generated using the first public key, How to do it.
Wherein the step of generating the test value comprises performing the unidirectional hash operation using the first public key and the further input as inputs of a unidirectional hash operation, How to operate.
Wherein the signature communication further comprises hash information, the hash information indicating a one-way hash function to be used to generate the test value.
The device or user identifier to which the first public key corresponds is a member of a group; And
Wherein generating the test value comprises using the first public key as well as the second public key corresponding to the second member of the group to generate the test value.
Wherein generating the test value comprises performing the unidirectional hash operation using the first and second public keys and the further input as inputs to a unidirectional hash operation, Lt; / RTI &gt; value.
A device for receiving a representation,
Means for sending a signal to a communication device associated with the representation,
Means for receiving a signed communication signed from the communication device associated with the representation using a private key known to the communication device associated with the representation; and
Means for determining whether the communication device associated with the representation owns the representation;
The means for determining includes means for determining whether the representation was generated using the first public key and means for verifying that the signature communication was generated by the private key corresponding to the first public key ;
Wherein the means for determining whether the representation is generated using a first public key comprises: (i) means for generating a test value from the first public key and an additional input, the further input comprising a random number and a time- -; And (ii) means for comparing the representation with the test value to determine whether the test value and the expression match, wherein the match indicates that the representation was generated using the first public key The device receiving the representation.
Wherein the means for generating the test value comprises means for performing the unidirectional hash operation using the first public key and the further input as inputs of a unidirectional hash operation, A device that receives a representation.
Wherein the means for generating the test value comprises means for using the first public key to generate the test value as well as a second public key corresponding to a second member of the group.
A computer-readable medium for use in a device receiving a representation,
Code for causing at least one computer to send a signal to a communication device associated with the expression,
Code for causing the at least one computer to receive a signed communication signed from the communication device associated with the expression using a private key known to the communication device associated with the expression; and
And code for causing the at least one computer to determine whether the communication device associated with the expression owns the expression,
The code for causing the at least one computer to determine whether the communication device associated with the expression owns the expression may cause the at least one computer to determine whether the expression is generated using the first public key And code for causing the at least one computer to verify that the signature communication has been generated by the private key corresponding to the first public key;
The code for causing the at least one computer to determine whether the representation was generated using the first public key comprises means for causing the at least one computer to perform the steps of (i) determining a test value from the first public key and the further input - the additional input is one of a random number and a time dependent input value; And (ii) code for comparing the test value with the expression to determine whether the test value and the expression match, wherein the match indicates that the expression was generated using the first public key A computer-readable recording medium.
Send a signal to a communication device associated with the representation,
Receiving a signed communication signed using the private key known to the communication device associated with the representation from the communication device associated with the representation,
The communication device being configured to determine whether the communication device associated with the representation owns the representation;
Wherein the communication device is configured to determine whether the communication device associated with the expression possesses the representation comprises determining whether the expression was generated using a first public key, And to verify that it was generated by a corresponding private key;
Wherein the at least one processor is configured to: (i) generate a test value from the first public key and an additional input, wherein the further input is one of a random number and a time-dependent input value; And (ii) comparing the test value with the representation to determine whether the representation matches the test value and the representation, the method comprising: And wherein the match indicates that the representation has been generated using the first public key.
Wherein the at least one processor is further configured to perform the unidirectional hash operation using the first public key and the further input as inputs to a unidirectional hash operation as part of being configured to generate the test value, Wherein the output of the hash operation is the test value.
KR1020127006618A 2009-08-13 2010-08-03 Methods and apparatus for deriving, communicating and/or verifying ownership of expressions KR101419406B1 (en)
US12/540,982 US8769285B2 (en) 2009-08-13 2009-08-13 Methods and apparatus for deriving, communicating and/or verifying ownership of expressions
US12/540,982 2009-08-13
PCT/US2010/044281 WO2011019549A1 (en) 2009-08-13 2010-08-03 Methods and apparatus for deriving, communicating and/or verifying ownership of expressions
KR20120055683A KR20120055683A (en) 2012-05-31
KR101419406B1 true KR101419406B1 (en) 2014-07-14
ID=43304834
KR1020127006618A KR101419406B1 (en) 2009-08-13 2010-08-03 Methods and apparatus for deriving, communicating and/or verifying ownership of expressions
US (1) US8769285B2 (en)
EP (1) EP2465279B1 (en)
JP (1) JP5490898B2 (en)
KR (1) KR101419406B1 (en)
CN (1) CN102577462B (en)
TW (1) TW201136341A (en)
WO (1) WO2011019549A1 (en)
JP4329656B2 (en) * 2004-09-13 2009-09-09 沖電気工業株式会社 Message reception confirmation method, communication terminal apparatus, and message reception confirmation system
US9084073B2 (en) 2012-05-08 2015-07-14 Qualcomm Incorporated Methods and apparatus for index based peer discovery
KR101976006B1 (en) 2012-11-08 2019-05-09 에이치피프린팅코리아 유한회사 User authentication method using self-signed certificate of web server, client device and electronic device including web server performing the same
JP6512111B2 (en) * 2013-06-28 2019-05-15 日本電気株式会社 Communication system, network, UE and communication method thereof
JP6509775B2 (en) * 2016-05-12 2019-05-08 日本電信電話株式会社 Ad access count measurement method, ad delivery server, program
CN106533669B (en) * 2016-11-15 2018-07-13 百度在线网络技术（北京）有限公司 The methods, devices and systems of equipment identification
KR20050010717A (en) * 2003-07-21 2005-01-28 마이크로소프트 코포레이션 Secure hierarchical namespaces in peer-to-peer networks
US20080205653A1 (en) 2005-09-20 2008-08-28 Telefonaktiebolaget Lm Ericsson (Publ) Method and Mobility Anchor Point for Authenticating Updates from Mobile Node
2009-08-13 US US12/540,982 patent/US8769285B2/en active Active
2010-08-02 TW TW99125618A patent/TW201136341A/en unknown
2010-08-03 JP JP2012524742A patent/JP5490898B2/en not_active Expired - Fee Related
2010-08-03 EP EP20100747098 patent/EP2465279B1/en active Active
2010-08-03 WO PCT/US2010/044281 patent/WO2011019549A1/en active Application Filing
2010-08-03 KR KR1020127006618A patent/KR101419406B1/en active IP Right Grant
2010-08-03 CN CN201080046009.6A patent/CN102577462B/en active IP Right Grant
US8769285B2 (en) 2014-07-01
EP2465279A1 (en) 2012-06-20
TW201136341A (en) 2011-10-16
KR20120055683A (en) 2012-05-31
JP5490898B2 (en) 2014-05-14
WO2011019549A1 (en) 2011-02-17
CN102577462A (en) 2012-07-11
CN102577462B (en) 2015-07-08
US20110039592A1 (en) 2011-02-17
JP2013502156A (en) 2013-01-17
EP2465279B1 (en) 2014-11-26
JP5384627B2 (en) 2014-01-08 Method and apparatus for safely and safely informing identification and / or discovery information
KR20080086932A (en) 2008-09-26 A method for verifying a first identity and a second identity of an entity
EP2424192B1 (en) 2017-04-26 Pre-association mechanism to provide detailed description of wireless services
US20100146614A1 (en) 2010-06-10 Devices and Methods for Secure Internet Transactions