COMMUNICATION SYSTEM AND METHOD USING UNITARY BRAIN DIVISION MULTIPLEXING (UBDM) WITH PHYSICAL LAYER SECURITY - Patent application

The generalized unitary braid division multiplexing (gUBDM) system addresses the need for secure and power-efficient wireless communication by using unitary matrices for precoding and singular value decomposition, enhancing security and efficiency in signal transmission.

JP7667772B6Active Publication Date: 2025-06-10RAMPART COMMUNICATIONS INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2022504719
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-07-31
Filing Date
2020-07-27
Publication Date
2025-06-10
Estimated Expiration
2040-07-27

AI Technical Summary

Technical Problem

Existing wireless communication systems lack a secure and power-efficient approach for transmitting signals, particularly in multiple access communication scenarios where signals from multiple user devices are superimposed and require separation at the receiving end.

Method used

The implementation of a generalized unitary braid division multiplexing (gUBDM) system that incorporates physical layer security, using unitary matrices for precoding and singular value decomposition to identify left and right singular vectors, thereby enhancing security and efficiency in signal transmission.

Benefits of technology

The gUBDM system provides secure and efficient transmission of wireless signals by spreading energy across sub-carriers, reducing peak-to-average power ratio, and incorporating physical layer security to protect against eavesdropping.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007667772000066
    Figure 0007667772000066
  • Figure 0007667772000067
    Figure 0007667772000067
  • Figure 0007667772000068
    Figure 0007667772000068
Patent Text Reader

Abstract

The system includes a first set and a second set of communication devices. A processor coupled to the first set of communication devices generates a first coded vector and transmits the first coded vector to a second set of communication devices over a communication channel that applies a channel transform to the first coded vector during transmission. A processor coupled to the second set of communication devices receives the transformed signal, detects its effective channel, and identifies left and right singular vectors of the effective channel. A precoding matrix is ​​selected from a codebook of unitary matrices based on a message, and a second coded vector is generated based on a second known vector, the precoding matrix, the complex conjugate of the left singular vector, and the right singular vector. The second coded vector is transmitted to the first set of communication devices to identify the message.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority to and is a continuation of U.S. Non-Provisional Patent Application No. 16 / 527,240, entitled "COMMUNICATION SYSTEM AND METHOD USING UNITARY BRAID DIVISIONAL MULTIPLEXING (UBDM) WITH PHYSICAL LAYER SECURITY," filed July 31, 2019, the entire contents of which are incorporated herein by reference in their entirety for all purposes.

[0002]

[0002] This application is related to U.S. non-provisional patent application Ser. No. 15 / 351,428, entitled "RELIABLE ORTHOGONAL SPREADING CODES IN WIRELESS COMMUNICATIONS," filed Nov. 14, 2016 (now U.S. Patent No. 10,020,839), and U.S. patent application Ser. No. 16 / 459,245, entitled "SYSTEMS, METHODS AND APPARATUS FOR SECURE AND EFFICIENT WIRELESS COMMUNICATION OF SIGNALS USING A GENERALIZED APPROACH WITHIN UNITARY BRAID DIVISION MULTIPLEXING," filed July 1, 2019, the disclosures of which are incorporated by reference in their entireties herein.

[0003] Federal Government Interest Statement

[0003] The United States Government retains a non-exclusive, irrevocable, royalty-free license in this invention pursuant to its license grant authority for all United States Government purposes.

[0004] Technical Field

[0004] This specification relates to systems and methods for transmitting wireless signals for electronic communications, and in particular to wireless communications having physical layer security. [Background technology]

[0005]

[0005] In multiple access communication, multiple user devices transmit signals to a receiving side on a given communication channel. These signals are superimposed and form a composite signal that propagates on the channel. Next, the receiving side performs a separation operation on the composite signal to recover one or more individual signals from the composite signal. For example, each user device can be a cellular phone belonging to a different user, and the receiving side can be a cellular tower. By separating the signals transmitted by various user devices, the various user devices can share the same communication channel without interference.

[0006]

[0006] A transmitter can transmit various symbols by changing the state of a carrier or sub - carrier (e.g., by changing the amplitude, phase, and / or frequency of the carrier). Each symbol can represent one or more bits. These symbols can each be mapped to discrete values in the complex plane, thereby generating quadrature amplitude modulation, or by assigning each symbol to a discrete frequency, generating frequency - shift keying. Next, the symbols are sampled at a Nyquist rate that is at least twice the symbol transmission rate. The resulting signal is converted to analog via a digital - to - analog converter and then up - converted to a carrier frequency for transmission. When various user devices transmit symbols simultaneously on a communication channel, the sine waves represented by these symbols are superimposed to form the composite signal received at the receiver.

[0007]

[0007] A known approach to wireless signal communication is orthogonal frequency-division multiplexing (OFDM), which is a method of encoding digital data on multiple carrier frequencies. OFDM methods have been adapted to allow signal communication to cope with harsh conditions of communication channels (such as attenuation, interference, and frequency selective fading). However, such approaches do not address the physical layer need for security of signal transmission. Furthermore, OFDM signals contain signal amplitudes over a very large dynamic range, which often requires transmitters that can handle high peak-to-average power ratios.

[0008]

[0008] Therefore, there is a need for improved systems, apparatus and methods for a secure and power efficient approach to wireless communication of signals. Summary of the Invention

[0009] overview In some embodiments, the system includes a first set and a second set of communication devices. A processor coupled to the first set of communication devices generates a first coded vector and transmits the first coded vector to the second set of communication devices over a communication channel that applies a channel transformation to the first coded vector during transmission. A processor coupled to the second set of communication devices receives the transformed signal, detects its effective channel, and identifies left and right singular vectors of the effective channel. A precoding matrix is ​​selected from a codebook of unitary matrices based on the message, and a second coded vector is generated based on the second known vector, the precoding matrix, the complex conjugate of the left singular vector, and the right singular vector. The second coded vector is transmitted to the first set of communication devices to identify the message.

[0010] In some embodiments, a communication method using unitary braid divisional multiplexing (UBDM) with physical layer security includes receiving a signal representing a first coded vector and a channel transform via a first communication device and at a first processor. The first processor detects an effective channel representation based on the received signal, and performs singular value decomposition of the effective channel representation to identify left singular vectors of the effective channel representation and right singular vectors of the effective channel representation. The first processor selects a precoding matrix associated with an index of the message for transmission from a codebook of unitary matrices. The first processor generates a second coded vector based on a second known vector, the precoding matrix, the complex conjugate of the left singular vector, and the right singular vector of the effective channel representation, and transmits the signal representing the second coded vector via a communication channel to the second communication device for identification of the message in a second processor operably coupled to the second communication device.

[0011] In some embodiments, a communication method using UBDM or OFDM with physical layer security includes generating a first coded vector in a first processor of a first communication device by using a first known vector and a unitary matrix. A first signal representing the first coded vector is transmitted to a second communication device over a communication channel that applies a channel transformation to the first signal during transmission. A second signal representing the second coded vector and the channel transformation is received from the second communication device at the first processor, and the first processor detects a representation of an effective channel based on the second signal. The first processor performs singular value decomposition of the representation of the effective channel to identify right singular vectors of the representation of the effective channel, and consults a codebook of unitary matrices to identify a message associated with the second signal based on the right singular vectors of the representation of the effective channel and the unitary matrix.

[0012] In some embodiments, a communication method using UBDM or OFDM with physical layer security includes applying an arbitrary transform to a plurality of vectors to generate a plurality of transformed vectors. The arbitrary transform includes one of a unitary transform, an equiangular tight frame (ETF) transform, or a nearly equiangular tight frame (NETF) transform. Using the arbitrary transform, a transformed signal is generated based on at least one transformed vector from the plurality of transformed vectors. The transformed signal is transmitted over a communication channel to a signal receiver configured to detect the transformed signal. A signal representing the arbitrary transform is provided to the signal receiver for recovery of the plurality of vectors at the signal receiver based on the arbitrary transform and one of a location-specific physical characteristic of the communication channel or a device-specific physical characteristic of the communication channel. [Brief description of the drawings]

[0013] BRIEF DESCRIPTION OF THE DRAWINGS [Figure 1] FIG. 10 is a schematic diagram of a secure and efficient generalized Unitary Braid Divisional Multiplexing (gUBDM) system according to one embodiment. [Diagram 2]

[1002] A schematic diagram of a signal transmitter in a gUBDM system according to one embodiment. [Diagram 3]

[1003] A schematic diagram of a signal receiver in a gUBDM system according to one embodiment. [Figure 4A]

[1004] FIG. 10 is a schematic diagram of signal processing in an OFDM signal transmitter. [Figure 4B]

[1005] A schematic diagram of signal processing in a signal transmitter of a gUBDM system according to one embodiment. [Figure 4C]

[1006] A schematic diagram of signal processing in a signal transmitter of a gUBDM system according to one embodiment. [Diagram 5]

[1007] A flowchart illustrating a method for processing and transmitting signals by using a gUBDM system according to one embodiment. [Figure 6]

[1008] A flowchart illustrating a method for processing and transmitting signals by using a gUBDM system according to one embodiment. [Figure 7]

[1009] A flowchart illustrating a method of receiving and recovering a signal by using a gUBDM system according to one embodiment. [Figure 8]

[1010] FIG. 1 is a schematic diagram of a communication system using UBDM or OFDM with physical layer security according to one embodiment. [Figure 9]

[1011] A flowchart illustrating a method for communicating by using UBDM or OFDM with physical layer security according to one embodiment. [Figure 10]

[1012] A flowchart illustrating a method for communicating by using UBDM or OFDM with physical layer security according to one embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0014] Detailed Description

[1013] This disclosure describes a generalized unitary blade division multiplexing (gUBDM) system for modulation-based communication security and a UBDM or OFDM system implementation that includes Physical Layer Security (PLS). PLS may be referred to as "enhanced MOPRO" and includes a modified version of a key exchange algorithm called MIMO-OFDM Precoding with Rotation (MOPRO).

[0015]

[1014] In some embodiments described herein, gUBDM includes a modified orthogonal frequency division multiplexing (OFDM) system. The modified OFDM system may include some components common to unmodified OFDM systems, but also includes generalized versions of OFDM components (e.g., a subset of OFDM functionality). The gUBDM system may be designed to implement the modified OFDM process during operation (e.g., in hardware and / or in software executed by or stored in the hardware) to perform pair operations including performing an inverse fast Fourier transform (iFFT) (or fast Fourier transform FFT) of a signal at a signal transmitter to generate a transformed signal to be transmitted, and then performing a fast Fourier transform (FFT) (or inverse Fourier transform iFFT) on the transformed signal at a receiver to recover the signal. The modifications include generalizing the iFFT / FFT performed by the transmitter to an arbitrary transformation (represented by an arbitrary matrix (e.g., an arbitrary unitary matrix)).

[0016]

[1015] Some embodiments of gUBDM systems, including those described in more detail herein and having the above modifications of OFDM systems, may provide exceptional security and efficiency in the transmission of signals over wireless communication channels. Other benefits of the gUBDM embodiments described herein include the ability to use non-linear transformations as well as generalized embodiments involving, as an example, equiangular tight frame (ETF) or nearly equiangular tight frame (NETF) transformations. Standard OFDM does not allow generalization to ETF / NETF "overload".

[0017]

[1016] Generalizing to an arbitrary unitary matrix implemented within the gUBDM system, as described herein, can also have the effect of spreading the energy of each symbol or vector over the various sub-carriers in the signal being transmitted. Spreading the energy of each symbol or vector over the signal to be transmitted reduces the peak-to-average power ratio (PAPR) of the signal and can provide a degree of spreading (and thus interference rejection) corresponding to a system such as a direct sequence spread spectrum (DSSS) system. Spreading the energy of each symbol or vector over the signal to be transmitted can also provide additional degrees of freedom during multiplexing. In other words, in addition to standard frequency division multiplexing and time division multiplexing, the gUBDM system can introduce code division multiplexing, which adds a powerful degree of freedom for multiplexing in a signal transmission system.

[0018]

[1017] As used herein, a "transmitter" (or "signal transmitter") refers to any set of components (including, but not limited to, one or more of an antenna, amplifier, cable, digital / analog converter, filter, up-converter, processor (e.g., for reading bits and / or mapping bits to baseband), etc.) used in the transmission of a signal. Similarly, as used herein, a "receiver" (or "signal receiver") refers to any set of components (including, but not limited to, one or more of an antenna, amplifier, cable, analog / digital converter, filter, down-converter, processor, etc.) used in the reception of a signal.

[0019]

[1018] FIG. 1 is a schematic diagram of a secure and efficient generalized unitary blade division multiplexing system (also referred to herein as a "gUBDM system" or "system") 100 according to one embodiment. The gUBDM 100 is configured to transmit and / or receive wireless electronic communications in a secure and efficient manner. The gUBDM system 100 includes signal transmitters 101, 102, signal receivers 103, 104, and a communication network 106 as shown in FIG. 1. The gUBDM system 100 is configured to process signals from the signal transmitters 101, 102 and transmit the signals to the receivers 103, 104 via one or more communication channels defined through the communication network. Given a signal transmitted from the signal transmitters 101 and / or 102 to the signal receivers 103 and / or 104, the gUBDM system 100 is configured such that the signal transmitters 101 and / or 102 may process the signals by applying an arbitrary transformation to generate a transformed signal that is transmitted to the signal receivers 103 and / or 104. The arbitrary transformation may be applied by using one or more hardware, software, field programmable gate arrays (FPGAs), etc. The signal transmitters 101 and / or 102 also send an indication of the arbitrary transformation applied to the signal receivers 103 and / or 104 (e.g., before transmitting the signal). The signal receivers 103 and / or 104 are configured to receive the transformed signal and an indication of the arbitrary transformation applied by the signal transmitter, and to apply an inverse of the arbitrary transformation to recover the signal from the transformed signal. Although the system 100 is shown to include two signal transmitters 101, 102 and two signal receivers 103, 104, a similar gUBDM system may include any number of signal transmitters and / or signal receivers.

[0020]

[1019] In some embodiments, the communication network 106 (also referred to as a "network") may be any suitable communication network, including one or more communication channels (operating over public and / or private networks) configured to wirelessly transfer data. Although not shown, in some implementations, the signal transmitters 101, 102 and the signal receivers 103, 104 (or portions thereof) may be configured to operate within, for example, a data center (e.g., a cloud computing environment), a computer system, one or more server / host devices, etc. In some implementations, the signal transmitters 101, 102 and the signal receivers 103, 104 may function within various types of network environments, which may include one or more devices and / or one or more server devices. For example, the network 106 may be or may include a private network, a Virtual Private Network (VPN), a Multiprotocol Label Switching (MPLS) circuit, the Internet, an intranet, a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), a worldwide interoperability for microwave access network (WiMAX), a Bluetooth network, a virtual network, and / or any combination thereof. In some instances, the communications network 106 may be a wireless network, such as, for example, a Wi-Fi or wireless local area network ("WLAN"), a wireless wide area network ("WWAN"), and / or a cellular network.The communication network 106 may be a wireless network and / or a wired network implemented by using, for example, a gateway device, a bridge, a switch, etc., or may include these. The network 106 may include one or more segments and / or may have portions based on various protocols such as the Internet Protocol (IP) and / or a proprietary protocol. The communication network 106 may include at least a part of the Internet. In some cases, the communication network 106 may include a plurality of networks or sub-networks operably coupled to each other by, for example, a network bridge, a router, a switch, a gateway, etc. (not shown).

[0021]

[1020] FIG. 2 is a schematic block diagram of an exemplary signal transmitter 201 that can be part of a gUBDM system such as the gUBDM system 100 described above with reference to FIG. 1 according to one embodiment. The signal transmitter 201 can be structurally and functionally similar to the signal transmitters 101, 102 of the system 100 shown in FIG. 1. In some embodiments, the signal transmitter 201 may be or may include a processor configured to process instructions stored in a memory. The signal transmitter 201 can be a hardware-based computer device and / or a multimedia device such as, for example, a server, a desktop computer device, a smartphone, a tablet, a wearable device, a laptop, etc. The signal transmitter 201 includes a processor 211, a memory 212 (including, for example, data storage), and a communicator 213.

[0022]

[1021] Processor 211 can be, for example, a hardware-based integrated circuit (IC) configured to execute a set of instructions or code, or any other suitable processing device. For example, processor 211 can be a general-purpose processor, a central processing unit (CPU), an accelerated processing unit (APU), an application specific integrated circuit (ASIC), a digital signal processor (DSP), a field programmable gate array (FPGA), a programmable logic array (PLA), a complex programmable logic device (CPLD), a programmable logic controller (PLC), etc. Processor 211 can be operatively coupled to memory 212 via a system bus (e.g., an address bus, a data bus, and / or a control bus).

[0023]

[1022] Processor 211 can be configured to receive a signal to be transmitted and perform processing to convert this signal into a converted signal by applying an arbitrary transformation. In some implementations, processor 211 can apply an arbitrary transformation defined to be a unitary transformation such that the converted signal can be transmitted in a secure and efficient manner by using the gUBDM system.

[0024]

[1023] Processor 211 can include a set of components including a converter 214, an arbitrary transformation selector 215, and an arbitrary transformation applicator 216. Processor 211 can receive a set of signals 221A, 221B, perform a set of arbitrary transformations 231A, 231B, and transmit a set of converted signals 241A, 241B.

[0025]

[1024] In some embodiments, each of the converter 214, the optional conversion selector 215, and the optional conversion applicator 216 may be software stored in the memory 212 and executed by the processor 211. For example, each of the above-described portions of the processor 211 may be code for causing the processor 211 to execute the converter 214, the optional conversion selector 215, and the optional conversion applicator 216. The code may be stored in the memory 212 and / or a hardware-based device (e.g., ASIC, FPGA, CPLD, PLA, PLC, etc.). In other embodiments, each of the converter 214, the optional conversion selector 215, and the optional conversion applicator 216 may be hardware configured to perform their respective functions. In some embodiments, each of the components may be a combination of software-based and hardware-based. In some embodiments, one or more of the components of the processor 211 (e.g., the converter 214, the optional conversion selector 215, the optional conversion applicator 216) may be configured to operate based on one or more platforms (e.g., one or more similar or different platforms) that may include one or more types of hardware, software, firmware, operating system, runtime library, etc. In some implementations, the components of the signal transmitter may be configured to operate within a cluster of devices (e.g., a server farm). In such embodiments, the functionality and processing of the components of the signal transmitter 201 may be distributed to some of the devices within the cluster of devices. The components of the signal transmitter 201 and the signal receiver 301 may be or may include any type of hardware and / or software (shown in FIG. 3) configured to process attributes.

[0026]

[1025] The converter 214 may be configured to receive the signal to be transmitted and prepare a signal in a form that can be converted by the processor 211 by using optional conversion. For example, in some embodiments, the processor 211 may receive a signal in the form of a series of symbols b n of the form. The converter 214 may be a series of symbols b nSerial-to-parallel calculations can be configured to be performed on a set of symbols b to convert them into symbols of a parallel set n In some embodiments, the converter 214 may generate a plurality of vectors (e.g., vectors 221A, 221B) based on a set of symbols. In some implementations, the converter 214 may receive a signal in the form of a plurality of input bits. The converter 214 may be configured to generate a plurality of symbols based on the plurality of input bits. The converter 214 may further be configured to generate a plurality of blocks, where each block of the plurality of blocks is based on a plurality of symbols representing vectors from a plurality of vectors (e.g., vectors 221A and 221B). Alternatively, the converter 214 may further be configured to generate a plurality of sets of a plurality of blocks based on a plurality of symbols, where each of the plurality of blocks of the plurality of sets of a plurality of blocks represents a vector from a plurality of vectors (e.g., vectors 221A, 221B).

[0027]

[1026] The arbitrary transformation selector 215 selects an arbitrary transformation (e.g., arbitrary transformations 231A, 231B) to be applied to a plurality of vectors (e.g., vectors 221A, 221B) based at least in part on a signal to be transmitted or the plurality of vectors generated by the transducer 214, and may be configured to transmit the vectors from the signal transmitter 201 associated with the gUBDM system to one or more receivers safely and efficiently. The arbitrary transformation (e.g., arbitrary transformations 231A, 231B) may include one of a non-linear transformation, a unitary transformation, an ETF transformation, or a NETF transformation, or any combination thereof. In some embodiments, the arbitrary transformation selector 215 may access a library of arbitrary transformations that are unitary by a design (e.g., arbitrary transformations 231A, 231B) that may be selected to transmit a signal. The arbitrary transformation selector 215 may select an arbitrary transformation based, for example, on the type of transformation and / or criteria negotiated between two communicators via a telecommunications handshake or otherwise input by a participant within the communication system. The criteria may include one or more of, for example, a desired security level, a latency threshold, an error rate threshold, a minimum data rate, a maximum data rate, etc. In particular, a unitary transformation that leaves the total power of the signal unchanged is the highest level of transformation that can be performed on a vector of symbols. When a non-unitary transformation is used, the inverse transformation at the receiver will necessarily amplify the noise within some of the received symbols, which is not the case for a unitary transformation.

[0028]

[1027] In some cases, the arbitrary transformation selector 215 may be configured to select a transformation that is not an identity matrix or a discrete Fourier matrix or any other direct sum of Fourier matrices. For example, in some implementations, the arbitrary transformation selector 215 may have a library of unitary transformations and, based on a set of guidelines, select a unitary transformation U and perform calculations to check whether U is an identity matrix or a discrete Fourier matrix or any other direct sum of a set of Fourier matrices. If U is one of the three above categories, in some embodiments, the arbitrary transformation selector 215 may discard U and select another transformation that can satisfy the guidelines of not being any of the three categories. If the arbitrary transformation selector 215 selects a transformation U that is not an identity matrix or a discrete Fourier matrix or any other direct sum of Fourier matrices, U can be assigned as the arbitrary transformation A used in the case of transforming the signal transmitted by using the gUBDM system according to the embodiment.

[0029]

[1028] In some implementations, the arbitrary transformation selector 215 may make a selection based on a set of inputs received by the processor 211. In some implementations, the arbitrary transformation selector 215 may make a selection based on a signal, a plurality of vectors, a set of parameters associated with the nature of signal transmission (such as security requirements, sensitivity of the information content in the signal, signal transmission path, etc.). In some implementations, the arbitrary transformation selector 215 may be configured to define and generate an arbitrary transformation according to a set of inputs received by the processor 211 (for example, a set of user inputs received by the processor 211).

[0030]

[1029] The arbitrary transformation applicator 216 may apply the selected arbitrary transformation to a plurality of vectors (such as vectors 221A, 221B) to generate a plurality of transformed vectors (such as transformed vectors 241A, 241B). In some implementations, the plurality of transformed vectors may have a total magnitude that is approximately equal to the total magnitude of the plurality of vectors.

[0031]

[1030] The transformed vector can then be transmitted to signal transmitter antennas 217 and 218 included in the communicator 213 for transmission to one or more signal receivers associated with one signal receiver. In some implementations, for example, the arbitrary transformer 216 can be configured to perform matrix operations to apply the transformation matrix A to a set of vectors to generate the transformed vector. In some implementations, the arbitrary transformer 216 can be configured to perform any suitable number of procedures (e.g., signal processing procedures, suitable matrix operations) on a set of vectors before applying the arbitrary transformation.

[0032]

[1031] As described above, two signal transmitter antennas 217 and 218 are shown, but according to some embodiments, a similar signal transmitter may include a single transmitter antenna. According to some other embodiments, a similar signal transmitter may include any suitable, larger number of signal transmitter antennas (i.e., three or more transmitter antennas). In some embodiments, the signal transmitter 201 may include a plurality of antenna arrays configured to perform multiple-input multiple-output (MIMO) operations.

[0033]

[1032] The memory 212 of the signal transmitter 201 can be, for example, a random access memory (RAM), a memory buffer, a hard drive, a read-only memory (ROM), an erasable programmable read-only memory (EPROM), etc. The memory 212 can store one or more software modules and / or codes that can include instructions to cause, for example, the processor 211 to perform one or more processes, functions, etc. (e.g., functions associated with the converter 214, the arbitrary conversion selector 215, the arbitrary conversion applicator 216). In some embodiments, the memory 212 can include an expandable storage unit that can be incrementally added and used. In some implementations, the memory 212 can be a portable memory (e.g., a flash drive, a portable hard disk, etc.) that can be operably coupled to the processor 211. In other cases, the memory can be operably coupled remotely to the signal transmitter 201. For example, a remote database server can act as the memory and can be operably coupled to the signal transmitter 201.

[0034]

[1033] The communicator 213 can be a hardware device operably coupled to the processor 211 and the memory 212 and / or software stored in the memory 212 and executed by the processor 211. The communicator 213 can optionally include a signal transmitter antenna 217 and a signal transmitter antenna 218. In addition to the transmitter 217, a second transmitter antenna 218 is shown in FIG. 3. According to some embodiments, a signal transmitter similar to the signal transmitter 201 can have any number of transmitter antennas, or according to some other embodiments, can have only a single signal transmitter antenna. The communicator 213 can be, for example, a network interface card (NIC), a Wi-Fi (trademark) module, a Bluetooth (registered trademark) module, and / or any other suitable wired and / or wireless communication device. Further, the communicator 213 can include a switch, a router, a hub, and / or any other network device. The communicator 213 can be configured to connect the calculator 201 to a communication network (such as the communication network 106 shown in FIG. 1). In some cases, the communicator 213 can be configured to connect to a communication network (such as the Internet, an intranet, a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), Worldwide Interoperability for Microwave Access (WiMAX (registered trademark)), a fiber optic-based network, a Bluetooth (registered trademark) network, a virtual network, and / or any combination thereof, etc.) via one or more communication channels.

[0035]

[1034] In some cases, the communicator 213 may facilitate receiving and / or transmitting files and / or a set of files via one or more communication channels within a communication network (e.g., the communication network 106 within the gUBDM system 100 of FIG. 1). In some cases, the received files may be processed by the processor 211 and / or stored in the memory 212, as described in more detail herein. In some cases, as previously described, the communicator 213 may be configured to transmit a plurality of transformed vectors to one or more signal receiver antennas associated with one or more signal receivers connected to the communication network as part of the gUBDM system via the signal transmitter antennas 217 and 218. The communicator 213 may also be configured to transmit and / or receive data associated with a library of an arbitrary transformation system.

[0036]

[1035] Returning to FIG. 1, the signal transmitters 101, 102 connected to the gUBDM system 100 may be configured to communicate with the signal receivers 103, 104 and transmit signals via one or more communication channels defined within the communication network 106. FIG. 4 is a schematic diagram of a signal receiver 301 that is part of the gUBDM system. The signal receiver 301 may be structurally and functionally similar to the signal receivers 103, 104 of the system 100 shown in FIG. 1. The signal receiver 301 includes a processor 311, a memory 312, and a communicator 313.

[0037]

[1036] Processor 311 can be, for example, a hardware-based integrated circuit (IC) or any other suitable processing device configured to execute a set of instructions or code. For example, processor 311 can be a general-purpose processor, a central processing unit (CPU), an accelerated processing unit (APU), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a digital signal processor (DSP), a programmable logic array (PLA), a complex programmable logic device (CPLD), a programmable logic controller (PLC), etc. Processor 311 can be operatively coupled to memory 312 via a system bus (e.g., an address bus, a data bus, and / or a control bus).

[0038]

[1037] According to one embodiment, processor 311 is configured to receive a converted signal transmitted securely via one or more communication channels defined within a communication network (e.g., network 106 of FIG. 1), obtain information associated with any transformation used to generate the converted signal, and process the converted signal based on this information (e.g., by applying the inverse of the arbitrary transformation) to restore the original signal so that the original signal can be received by the destination in a secure and efficient manner by using the gUBDM system.

[0039]

[1038] Processor 311 may include a set of components including a converter 314, an optional conversion identifier 315, and an optional conversion inverter 416. Processor 311 may include, or may access from memory 312, a plurality of converted vectors 341A, 341B representing converted signals received from one or more transmitter antennas (e.g., transmitter antennas 217 and 218 of signal transmitter 201) of a signal transmitter that is part of the gUBDM system of which the signal receiver is a part. Processor 311 may include, or may access within memory 312, a set of optional conversions 331A and 331B identified based on information related to the signal received from the signal transmitter, a set of inverse conversions 351A, 351B calculated based on the identified optional conversions, and a plurality of vectors 321A, 321B representing a set of original signals.

[0040]

[1039] Optional conversion identifier 315 may be configured to receive information related to the converted signal (e.g., the converted signal represented by converted vectors 341A, 341B) received via signal receivers 317 and 318, the information including an indication of an identifier of the optional conversion used in generating the converted signal. Optional conversion identifier 315 is configured to identify, based on this information, an optional conversion that can be used to restore the original signal (e.g., the original signal represented by a plurality of vectors 321A, 321B) from the converted signal (e.g., converted signals 341A, 341B).

[0041]

[1040] Optional conversion inverter 316 generates, based on the identifier of the optional conversion, an inverse (e.g., inverse conversions 351A, 351B), also referred to as an inverse conversion, of the identified optional conversion that is configured to reverse the effect of the identified optional conversion to restore the original signal from the converted signal. For example, in some embodiments, optional conversion inverter 316 is configured to be applied to a plurality of converted vectors 341A and 341B representing the converted signal such that an inverse conversion (A’) 351A reverses the effect of the optional conversion (A) 331A to restore a plurality of vectors 321A and 321B representing the original signal, and to generate the inverse conversion (A’) 351A received by signal receiver 301.

[0042]

[1041] The converter 314 can be configured to receive a plurality of restored vectors (e.g., 321A and 321B) representing the original signal and to restore the original signal from the plurality of restored vectors. For example, in some embodiments, the processor may receive a parallel set of symbols b n The converter 314 can be configured to perform parallel-to-serial calculations on a set of symbols b n to convert the parallel set of symbols b n into a serial set of symbols (which may be the same as the original signal). In some embodiments, the converter 314 can receive a plurality of restored vectors (e.g., vectors 321A and 321B) and, based on these vectors, generate an original signal including a set of symbols. In some embodiments, the converter 314 can receive a plurality of restored vectors (e.g., vectors 321A and 321B) and, based on the restored vectors, generate a plurality of sets of blocks, where each set of blocks represents one of the plurality of vectors. Next, the converter 314 can generate a plurality of input bits that can be used to restore the original signal based on the plurality of sets of blocks.

[0043]

[1042] The memory 312 of the signal receiver 301 may be similar to the memory 212 of the signal transmitter 201 in terms of structure and / or function. For example, the memory 312 may be a random access memory (RAM), a memory buffer, a hard drive, a read-only memory (ROM), an erasable programmable read-only memory (EPROM), etc. The memory 312 may store one or more software modules and / or codes that include instructions to cause, for example, the processor 311 to perform one or more processes, functions, etc. (e.g., functions associated with the converter 314, the arbitrary conversion identifier 315, the arbitrary conversion inverter 316). In some embodiments, the memory 312 may include an expandable storage unit that can be incrementally added and used. In some implementations, the memory 312 may be a portable memory (e.g., a flash drive, a portable hard disk, etc.) that can be operably coupled to the processor 311. In other cases, the memory may be operably coupled remotely to the signal receiver 301. For example, a remote database server may act as a memory and be operably coupled to the signal receiver 301.

[0044]

[1043] The communicator 313 can be a hardware device operably coupled to the processor 311 and the memory 312 and / or software stored in the memory 312 executed by the processor 311. The communicator 313 can optionally include a signal receiver antenna 317 and a signal receiver antenna 318. Although a second receiver 318 is shown in FIG. 4 in addition to the receiver 317, a signal receiver similar to the signal receiver 301 can have any number of receivers according to some embodiments, or can have only a single signal receiver according to some other embodiments. The communicator 313 can be, for example, a network interface card (NIC), a Wi-Fi (trademark) module, a Bluetooth (registered trademark) module, and / or any other suitable wired and / or wireless communication device. Further, the communicator 313 can include a switch, a router, a hub, and / or any other network device. The communicator 313 can be configured to connect the signal receiver 301 to a communication network (such as the communication network 106 shown in FIG. 1). In some cases, the communicator 313 can be configured to connect to a communication network such as, for example, the Internet, an intranet, a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), worldwide interoperability for microwave access (WiMAX (registered trademark)) for a microwave network, an optical fiber-based network, a Bluetooth (registered trademark) network, a virtual network, and / or any combination thereof.

[0045]

[1044] In some instances, communicator 313 may facilitate receiving and / or transmitting a file and / or a set of files via one or more communication channels defined within a communication network (e.g., communication network 106 within gUBDM system 100 of FIG. 1). In some instances, a received file may be processed by processor 311 and / or stored within memory 312 as will be described in greater detail herein. In some instances, as previously explained, communicator 313 may be configured such that "signal receivers 317 and 318 receive converted signals at a particular predetermined center frequency within a predetermined band to receive converted signals transmitted securely and efficiently by one or more signal transmitter antennas associated with one or more signal transmitters connected to the communication network as part of the gUBDM system" and includes one or more antennas tuned to do so. Communicator 313 may also be configured to transmit and / or receive data associated with a library of arbitrary conversion systems. In some embodiments, signal receiver 301 may include a plurality of antenna arrays configured to perform multiple-input multiple-output (MIMO) operations.

[0046]

[1045] In some embodiments, the gUBDM system (e.g., gUBDM system 100) may be in some respects structurally and / or functionally similar to an orthogonal frequency division multiplexing (OFDM) system. For example, an exemplary pipeline of OFDM system 400’ may include a set of operations as shown in FIG. 4A, where vector b is a set of symbols b n and may be.

[0047]

[1046] In exemplary OFDM system 400’, symbol b n enters the OFDM transmitter and first passes through a "serial-to-parallel" (labeled "S / P" above) calculation and then through an inverse FFT (labeled "iFFT" above). In some embodiments, symbol b nis given a cyclic prefix and subjected to a pulse shaping procedure. The OFDM receiver can be configured to perform the above operations in reverse order except that the FFT replaces the iFFT.

[0048]

[1047] Compared to the OFDM system 400' described above, the operations performed by the gUBDM system 400 (e.g., gUBDM system 100) described herein are shown in FIG. 4B. The gUBDM 400 may include an additional operator (e.g., a linear operator) A between the S / P block 514 and the iFFT block as shown in FIG. 4B. In use, according to an exemplary embodiment associated with FIG. 4B, the gUBDM 400 "symbol b n is received by the signal transmitter and first passed through a serial-to-parallel block (e.g., a converter similar to the converter 214 of the signal transmitter 201) to generate a set of vectors that have been received and converted by the signal transmitter." Next, the set of converted vectors is subjected to a linear transformation A to generate a set of transformed vectors. For example, the linear transformation A can be performed by an arbitrary transformation applicator 415 similar to the arbitrary transformation applicator 216 and selected by an arbitrary transformation selector similar to the arbitrary transformation selector 215. Next, in some embodiments, the transformed vectors are passed through an iFFT block to generate a second set of transformed vectors, and the resulting second set of transformed vectors can be transmitted to one or more receivers within the gUBDM system. In some other embodiments, the iFFT block can be skipped, and the transformed vectors generated by the arbitrary transformation applicator can be transmitted to one or more receivers within the gUBDM system. Stated another way,

Number

[0049]

[1048] Continuing with the above description, a signal transmitter and a signal receiver operable with an OFDM system (e.g., the OFDM system 400 of FIG. 5A) can be readily adapted as used by the gUBDM system (e.g., the gUBDM system 400 of FIGS. 4B, 4C) described herein, but with the change of replacing the arbitrary transform operation and the iFFT operation by using A at the transmitter and an FFT with A' at the signal receiver to invert the transform. Other details of the OFDM system can be the same.

[0050]

[1049] The above-described gUBDM system can be used to transmit signals in a highly secure and efficient manner as detailed below. Given a signal transmission system in which one or more signals are transmitted from a source associated with user Alice to a destination associated with user Bob, such a system can be vulnerable to eavesdropping by a third-party user Eve who can access the transmitted signal or transmitted vector. Given that an arbitrary transformation A is used for signal transmission such that "the gUBDM system is used to generate the transformed signal or transformed vector to be transmitted", if Eve does not know the matrix A and the attack by Eve can be based only on knowing the cipher, the amount of work that Eve needs to do to recover the data can be prohibitively large. In some other embodiments, the arbitrary transformation can be essentially non-linear, making it even more complex and infeasible for Eve to discover the non-linear transformation to recover the signal even if Eve has access to the plaintext / ciphertext pair.

[0051]

[1050] Figure 5 shows a flowchart illustrating an exemplary method 500 for preparing a signal and transmitting the signal in a secure and efficient manner by using the gUBDM system according to one embodiment. According to method 500, at 571, a signal transmitter of the gUBDM system (e.g., signal transmitter 201 described above) receives data including a plurality of input bits. The plurality of input bits can represent the original signal to be transmitted in a secure and efficient manner. The data can further include other attributes related to the signal represented by the input bits. For example, the data can include information related to the nature of the signal, the nature of the input bits, the size and sensitivity of the information contained, security requirements, and the like.

[0052]

[1051] At 572, the signal transmitter generates a plurality of symbols based on a plurality of input bits. In some cases, the signal transmitter may generate a plurality of symbols (described as pulses within a digital complex baseband signal). In some implementations, a symbol may be a waveform or state that can change / modify and / or maintain the state or significant condition of a communication channel so that the state or condition is maintained for a certain period when transmitted via a communication channel defined within a communication network. In some cases, the signal transmitter may decompose a plurality of input bits associated with a serial signal into a plurality of symbols that can be modified and / or transmitted in parallel by using a multiple-input multiple-output (MIMO) system for transmission as further described below. In some cases, the signal transmitter may use a converter (e.g., converter 214) to convert a plurality of serial input bits into a plurality of parallel symbols. In some implementations, generating a plurality of symbols based on a plurality of input bits may be through the use of a bit-to-symbol map.

[0053]

[1052] At 573, the signal transmitter generates a plurality of sets of blocks based on a plurality of symbols, and each block of the plurality of sets of blocks represents one vector from a plurality of vectors. In some cases, the signal transmitter may receive a plurality of serial symbols associated with a serial signal and decompose them into a plurality of sets of blocks, where each block represents one vector from a plurality of vectors, and the vectors are configured to be converted and / or transmitted in parallel by using the MIMO system for transmission described herein. In some cases, the signal transmitter may use a converter (e.g., converter 214) to convert a plurality of serial symbols into a plurality of sets of blocks.

[0054]

[1053] At 574, the signal transmitter selects an arbitrary transformation configured to be applied to vectors to generate a plurality of transformed vectors based at least in part on the plurality of vectors. For example, the signal transmitter may access a library of arbitrary transformations including unitary transformations, equiangular tight frame (ETF) transformations, and nearly equiangular tight frame (NETF) transformations. The signal transmitter may use an arbitrary transformation selector (e.g., arbitrary transformation selector 215) to select an arbitrary transformation (e.g., a unitary transformation) to be applied to the plurality of vectors to generate a plurality of transformed vectors. In some cases, the arbitrary transformation may select an equiangular tight frame (ETF) transformation, or in some other cases, the arbitrary transformation selector may select a nearly equiangular tight frame (NETF) transformation. In some implementations, the arbitrary transformation selector may be configured such that the selected arbitrary transformation is based on a matrix that is not an identity matrix or a discrete Fourier matrix. In some implementations, the arbitrary transformation selector may be configured such that the selected arbitrary transformation is based on a matrix that is not a direct sum of discrete Fourier matrices.

[0055]

[1054] At 575, the signal transmitter applies an arbitrary transformation to each of the plurality of vectors to generate a plurality of transformed vectors. In some cases, applying the arbitrary transformation may cause the plurality of transformed vectors to have a total magnitude that is approximately equal to the total magnitude of the plurality of vectors.

[0056]

[1055] At 576, the signal transmitter transmits a signal representing a plurality of transformed vectors to a plurality of transmitter antennas for transmission from the plurality of transmitter antennas to a plurality of signal receivers. In some cases, the plurality of transformed vectors are transmitted in parallel such that the transformed vectors transmitted in parallel can be received by a plurality of receivers associated with one or more signal receivers associated with the gUBDM system being used, via a plurality of transmitter antennas associated with the signal transmitter antenna device (e.g., transmitter antennas 217 and 218 associated with signal transmitter 201), and via a plurality of communication channels by using a multiple-input multiple-output (MIMO) system for transmission. For example, the plurality of signal receivers can include a plurality of antenna arrays, the plurality of signal receivers can be associated with a signal receiver such as signal receiver 301, and the plurality of signal transmitter antennas can be associated with a signal transmitter such as signal transmitter 201, and the signal transmitter and the signal receiver are configured to perform multiple-input multiple-output (MIMO) operations.

[0057]

[1056] In some implementations, the signal can include a set of transformed symbols associated with a plurality of transformed vectors, and the signal transmitter (e.g., signal transmitter 201) can place a set of transformed symbols on a communication channel at a fixed and known symbol rate (e.g., via transmitter 217). The signal receiver can perform the task of detecting a series of transformed symbols to reconstruct the transformed vectors. In some cases, there can be a direct correspondence between the transformed symbols and small units of data. For example, each transformed symbol can encode one or several binary numbers, i.e., "bits". The data can also be represented by transitions between transformed symbols or even by a series of many transformed symbols.

[0058]

[1057] In some implementations, the signal transmitter may be configured to transmit signals representing a plurality of transformed vectors to a plurality of transmitters via a physical layer associated with the Open System Interconnection (OSI) model. The OSI model is a conceptual model that characterizes and standardizes the communication functions of a telecommunication system or a computer system, regardless of the underlying internal structure and technology having the goal of achieving interoperability of various communication systems by using standard communication protocols. The OSI model uses a division into abstraction layers (e.g., seven layers) of the information exchanged via the communication channels of a communication network. Each layer contains a specific type of information.

[0059]

[1058] For example, Layer 1 may include a physical layer used for the transmission and reception of unstructured raw data between a signal transmitter and a physical transmission medium (e.g., a wireless communication channel within a communication network such as Network 106). Layer 1 is configured to convert digital bits included in the transmitted signal into an electrical signal, a wireless signal, or an optical signal. The layer specifications define characteristics such as voltage levels, the timing of voltage changes, physical data rates, maximum transmission distances, modulation methods, channel access methods, and physical connectors. The layer specifications include the layout of the pins of a wireless device, voltage, line impedance, cable specifications, signal timing, and frequency. Bit rate control is performed at the physical layer and may define the transmission modes as simplex, half-duplex, and full-duplex. The components of the physical layer can be described from the perspective of network topology. The communication channel used to transmit signals may have the specifications of the physical layer.

[0060]

[1059] At 577, the signal transmitter provides an arbitrary transformation to a plurality of signal receivers, this provision being associated with the transmission of a plurality of transformed vectors and further configured to restore a plurality of vectors at the plurality of signal receivers. In some implementations, the plurality of signal receivers are further configured to transmit a signal representing the plurality of transformed vectors to a target device. For example, the plurality of signal receivers can be associated with one or more signal receivers that can be configured to transmit a signal representing the plurality of transformed vectors to a target device.

[0061]

[1060] In some cases, in addition to representing a plurality of transformed vectors, the signal transmitter can transmit a signal that can also represent one of the following: (1) an arbitrary transformation, or (2) the inverse of the arbitrary transformation to the plurality of signal receivers. In some cases, the signal transmitter can transmit a first signal representing a plurality of transformed vectors and a second signal representing an arbitrary transformation or the inverse of the arbitrary transformation. In some implementations, the signal transmitter can transmit the second signal at a point in time prior to the transmission of the first signal. That is, in other words, the signal transmitter can transmit the inverse of the arbitrary transformation to the plurality of signal receivers prior to the transmission of a signal representing the arbitrary transformation or a signal representing the plurality of transformed vectors such that the plurality of signal receivers can restore a plurality of vectors from the plurality of transformed vectors based on the arbitrary transformation or the inverse of the arbitrary transformation.

[0062]

[1061] Figure 6 shows an exemplary method 600 for transmitting signals in a secure and efficient manner by using a gUBDM system according to one embodiment. Method 600 may be implemented by a processor (e.g., a processor associated with a signal transmitter of the gUBDM system (e.g., signal transmitter 201 described above)). At 671, an arbitrary transformation is applied to a plurality of vectors to generate a plurality of transformed vectors. The arbitrary transformation may include a unitary transformation, an equiangular tight frame (ETF) transformation, or a near-equiangular tight frame (NETF) transformation. In some implementations, more than one arbitrary transformation may be applied. For example, in some cases, a signal transmitter implementing method 600 may be configured such that a first arbitrary transformation is applied to a plurality of vectors to generate a first plurality of transformed vectors and a second arbitrary transformation is applied to a plurality of vectors to generate a second plurality of transformed vectors.

[0063]

[1062] At 672, the method includes generating a first transformed signal based on at least one first transformed vector of the plurality of transformed vectors by using an arbitrary transformation. In some cases, the first transformed signal may include a first complex baseband signal. At 673, the method includes generating a second transformed signal based on at least one second transformed vector of the plurality of transformed vectors by using an arbitrary transformation. In some cases, the second transformed signal may include a second complex baseband signal.

[0064]

[1063] As described above, in some implementations, the second transformed signal may be based on one second transformed vector of a second plurality of transformed vectors generated by using a second arbitrary transformation.

[0065]

[1064] At 674, method 600 includes transmitting a first converted signal via a communication channel to a first signal receiver configured to detect the first converted signal. At 775, the method includes transmitting a second converted signal via a communication channel to a second signal receiver configured to detect the second complex baseband signal. In some cases, transmitting the second converted signal is via a second communication channel different from the first communication channel.

[0066]

[1065] At 676, the method includes providing a signal representing an arbitrary transformation to a first signal receiver and a second signal receiver associated with transmitting the first converted signal and transmitting the second converted signal for restoring a plurality of vectors in the first signal receiver and the second signal receiver based on the arbitrary transformation. In some cases, providing the signal representing the arbitrary transformation is performed prior to transmitting the first converted signal and transmitting the second converted signal. In some other cases, providing the signal representing the arbitrary transformation may be performed after transmitting the first converted signal and transmitting the second converted signal, in which case the signal receiver may store the received converted signal and restore the original signal at a time point after receiving the signal representing the arbitrary transformation. In some cases, the signal receiver may be configured to transmit the converted signal to a target device. For example, the signal receiver may be configured to transmit a signal representing a plurality of converted vectors to a designated target device.

[0067]

[1066] As described above, in some cases where a first optional transformation is used to generate a first plurality of transformed vectors and a second optional transformation is used to generate a second plurality of transformed vectors, providing a signal representing the optional transformation may include providing a first signal representing the first optional transformation and providing a second signal representing the second optional transformation. In some implementations, transmitting the first transformed signal and providing the first signal representing the first optional transformation may be for a first receiver associated with the first receiver, and transmitting the second transformed signal generated by using the second optional transformation and providing the second signal representing the second optional transformation may be for a second receiver antenna associated with a second receiver different from the first receiver. In some cases, the first and second signals representing the first and second optional transformations may be broadcast together to a wide range of listeners including the first and second signal receivers. In some cases, the first signal receiver may be able to recover the first plurality of vectors until the second signal representing the second optional transformation is provided or broadcast, but the first signal representing the optional transformation may be widely broadcast while the second signal representing the optional transformation may not be widely broadcast so that the second receiver cannot recover the second plurality of transformed vectors.

[0068]

[1067] Some embodiments of the gUBDM system are described as a variant of the OFDM system but operate as a variant of the DSSS system. Here, a "code map" is used and band-limited. The explicit form described in the '839 patent referenced above is as follows: [Number] Here, [Number] The m-th component of is given by the following formula: [Number]

[0069]

[1068] Here, v n is [Number] the n-th component of, and κs is a set of N distinct numbers satisfying the following equation: [Number]

[1069] M is an integer selected such that M > 2max n |κn|. This map has the properties (band-limited and dot-product preserving) discussed above. Usually, when κ is a sequence of consecutive integers centered around 0, M ≈ N.

[0070]

[1070] Therefore, to generate the largest set of mutually orthogonal spreading codes, a unitary matrix A ∈ U(N) is selected. The n-th column (or row, either is fine as long as it is consistent) of A [Number] is represented as, and the N codes are [Number] for n ∈ [1,..., N].

[0071]

[1071] If one device is to transmit data regarding all N codes, one device can take N symbols b n and multiply each symbol b n by every component of its spreading code, and then sum the resulting vectors. Thus, the transmitted vector [Number] is [Number] where bn is a symbol.

[0072]

[1072] However, to do this, the transmitter multiplies all M≈N components of what is usually a symbol, which is typically a complex number (floating point, double precision, etc.), 11b_ n ∈C to

Number

Number

[0073]

[1073] In particular, for multi - access applications where each user is given a subset of the code, each user only has to perform O(N) operations, which is better than OFDM. This makes DSSS implementation very good for multi - access applications.

[0074]

[1074] To obtain UBDM which is O(N×log N) and to conform to OFDM, to reinterpret (0.0.4). The wave to be transmitted is:

Number

[0075]

[1075] This can be interpreted as the discrete Fourier transform of the following symbol (until normalization):

Number

[0076]

[1076] Figure 7 is a flowchart illustrating an exemplary method for receiving a plurality of transformed vectors and restoring a plurality of vectors using a gUBDM system according to one embodiment. Method 700 may be implemented by a processor associated with a signal receiver (e.g., signal receiver 301) described herein.

[0077]

[1077] At 771, method 700 includes receiving signals representing a plurality of transformed vectors from a plurality of signal transmitters and via a plurality of signal receivers.

[0078]

[1078] At 772, the method includes receiving an instruction for an arbitrary transformation configured to be used to restore a plurality of vectors based on the plurality of transformed vectors. In some implementations, receiving the instruction for the arbitrary transformation may be from a plurality of signal transmitters and via a plurality of signal receivers. In some cases, receiving the instruction for the arbitrary transformation may precede receiving the signals representing the plurality of transformed vectors. In some cases, the instruction may include the inverse of the arbitrary transformation.

[0079]

[1079] At 773, the method includes applying the arbitrary transformation to each of the plurality of transformed vectors to generate a plurality of vectors. At 774, the method includes restoring the original signal based on the plurality of vectors. In some cases, for example, restoring the original signal may be performed by a transducer (e.g., transducer 314) associated with the signal receiver. In some cases, method 700 may skip restoring the original signal at 773 and instead store or transmit the plurality of vectors to another device in order to perform the restoration of the original signal.

[0080]

[1080] Another advantage of the gUBDM system described above is that the gUBDM system is designed to fully utilize the richness and structure of the unitary group. One opportunity provided by the gUBDM system being described is the ability to incorporate ETF / NETFs into modified forms of the OFDM system, which is not possible in an OFDM system as it stands without modification.

[0081]

[1081] The gUBDM system also gives the signal source the ability to include code-division multiplexing within the OFDM system if there are modifications to the gUBDM system. This means performing code-division multiplexing in addition to time-division, frequency-division, and spatial multiplexing. This gives system engineers a great deal of freedom.

[0082]

[1082] It should be noted that the iFFT is, in some implementations, often performed after the application of the general unitary A, and the likelihood of making equalization easier still remains high. Thus, take the data vector b and transmit it through the steps b -> Ab -> FAb, where F is the Fourier transform. However, due to the group structure of U(N), it is known that if both elements F and A of U(N) are used, then their product is also used. Since we are using the entire group U(N), there is no difference between claiming a single unitary matrix A and claiming a single unitary matrix A followed by the Fourier matrix. No matter how many unitary matrices are multiplied together, the result is still just another element of U(N).

[0083]

[1083] In other words, an important advantage of this approach is security. If the act of modulating the data itself can sufficiently secure its content against eavesdroppers on the channel by denying eavesdroppers access to the bits (or all on OSI layer 1), the attacker's attack surface changes fundamentally. All possibilities such as traffic analysis attacks, protocol weakness attacks, control data leakage attacks, etc. are completely eliminated. Further, in a network where the security provided by traditional encryption causes latency / delay that adversely affects the network, encryption (usually at OSI layer 3 and above) can optionally be completely removed. This removes the space, power, heat, or time including encryption and the overhead usually associated with encryption. Further, the latency / delay associated with encryption (from simply having to pass the bits through cryptographic techniques to all that is required to simply pass information up and down the OSI stack) can be eliminated. All the system has to do is transmit. Modulation itself serves the role of security.

[0084]

[1084] When the signal receiver receives the converted signal, it is ready to perform no calculations. In some implementations, the signal receiver can only demodulate the signal and recover symbols and bits. In some implementations, the signal receiver can also store the digitized I and Q, or pass the digitized I and Q to some other system without applying the inverse of the unitary matrix.

[0085] UBDM with Physical Layer Security (PLS)

[1085] "Physical layer security" (PLS) refers to the exploitation of the physical properties of the communication channel between users of a communication system for the purpose of exchanging secret information. Some of the foregoing gUBDM embodiments describe uses of security at the physical layer, but these do not strictly incorporate PLS which involves the use of the physical properties of the shared channel between two users. For example, in PLS, a user generates a secret key for a symmetric encryption / security scheme (e.g., Advanced Encryption Standard (AES)) for secret information based on the physical characteristics of the communication channel. A eavesdropper cannot access the shared secret unless the eavesdropper has a receiver close enough to one of the users to directly measure (or gather enough information to approximate) the physical characteristics of the communication channel. According to the embodiments described below, PLS can be implemented in combination with gUBDM (or non-generalized UBDM), OFDM, or any other communication system to enhance the security of communications.

[0086]

[1086] In some embodiments, the communication method combines UBDM or OFDM with PLS. PLS can include, for example, a modified version of a PLS key exchange algorithm called MIMO-OFDM Precoding with Rotation (MOPRO). Additional details regarding prior versions of MOPRO can be found in "Practical Physical Layer Security Schemes for MIMO-OFDM Systems Using Precoding Matrix Indices" by Wu, Lan, Yeh, Lee, and Cheng, published in IEEE Journal on Selected Areas in Communications (Vol 31 Issue 9, September 2013), which is hereby incorporated by reference in its entirety for all purposes.

[0087]

[1087] In some embodiments, the MOPRO algorithm depends on having a MIMO system. When starting a communication link, a non-MOPRO MIMO-OFDM system may first measure a MIMO channel that can be represented by a large matrix of complex numbers. A first user transmits a representation of a synchronization preamble (i.e., a unique word within a data packet) from each transmit antenna to a second user via a first processor, and the second user uses the synchronization preamble to measure the channel. For example, consider the following example: That is, consider a system with two transmit antennas and two receive antennas. The first transmit antenna transmits a signal representing a value T1, and the second transmit antenna transmits a signal representing a value T2. The first receive antenna will receive a signal representing a value R1 that is a linear combination of the two values (T1 and T2) transmitted by the transmit antennas. In other words, R1 = h 11 *T1 + h 21 *T2. The values h 11 and h 12 are random complex numbers that depend on the physical characteristics of the channel. For example, the values h 11 and h 12 may depend on how far the surface of a given transmitted signal bounced or was located, the material it was made of, the resulting phase shift, the center frequency of the subcarrier, humidity, temperature, etc. Similarly, the second receive antenna will receive a signal representing a value R2 that is also a linear combination of the two values transmitted by the two transmit-receive antennas but is usually a different linear combination. In other words, R2 = h 21 *T1 + h 22 *T2. Thus, the four values (h 11 , h 12 , h 21 , h 22 ) are numbers that physically characterize the channel. Since there are two transmitters and two receivers (2×2 = 4), there are four such values.

[0088]

[1088] To facilitate synchronization, the two transmitting antennas can, for example, transmit their signals one at a time (e.g., alternately). In other words, the first transmitter first transmits T1, and then transmitter 2 transmits T2. The first signal received by the first receiving antenna is R1 = h 11 *T1, from which h 11 can be determined. The first signal received by the second receiving antenna is R2 = h 21 *T1, from which h 21 can be determined. During the next period, the first receiving antenna receives the second signal R1 = h 12 *T2, and the second receiving antenna receives the second signal R2 = h 22 *T2, from which h 12 and h 22 can be determined respectively. Thus, the receiver has acquired / determined all four components of the channel. From this point on, both the first and second transmitters can transmit simultaneously, and the receiver can invert the linear transformation to recover T1 and T2 from (h 11 *T1 + h 12 *T2) and (h 21 *T1 + h 22 *T2).

[0089]

[1089] In some embodiments, if there are three or more antennas, the matrix of channel values is a matrix having the same dimension as the number of antennas on both sides. For example, if there are five transmitting antennas and seven receiving antennas, the first receiving antenna receives R1 = h 11 *T1 + h 12 *T2 + h 13 *T3 + h 14 *T4 + h 15 *T5, the second receiving antenna receives R2 = h 21 *T1 + h 22 *T2 + h 23 *T3 + h 24 *T4 + h 25 *T5, and so on, and the seventh receiving antenna receives R7 = h 71 *T1 + h 72 *T2 + h 73 *T3 + h 74 *T4 + h75 Receive T5. The resulting channel matrix is a 7×5 matrix. More generally, if there are t transmit antennas and r receive antennas, the channel matrix is r×t.

[0090]

[1090] Next, instead of sending a signal representing the entire channel to the first user, the second user sends a small number of bits corresponding to the possible channel matrices from a "codebook" of possible channels (optionally, publicly accessible). In other words, the first and second users can access a previously agreed-upon set of possible channel matrices. When the second user measures the channel, the second user selects the matrix within the codebook that is closest to (i.e., best approximates) the measured channel and sends a series of bits labeling that matrix to the first user via the second processor. By using the foregoing approach, the first and second users can continuously measure the channel and transmit only a small subset of bits to convey this measured channel.

[0091]

[1091] In a known MOPRO system, a previously agreed-upon codebook (which is public and thus known to eavesdroppers) of possible channel matrices is used as follows: The first user applies an intentional "rotation" to the channel vector such that when the second user responds with the bits corresponding to the matrix, the second user selects from the codebook in a way that an eavesdropper (who does not know this rotation) cannot extract information. However, the known MOPRO system remains vulnerable to eavesdroppers because if the eavesdropper has a receiver that is close enough to one of the first and second users in terms of physical proximity, the eavesdropper can recover half of the secret bits, and if the eavesdropper has a receiver that is close enough to both the first and second users in terms of physical proximity, the eavesdropper can recover all of the bits. The embodiments described herein represent an improvement over the known MOPRO system and are realized, for example, through modifications to the MOPRO algorithm (where the rotation applied to the channel vector by the first user is echoed back by the second user to the first user, thereby protecting all bits from eavesdropping).

[0092]

[1092] Combining physical layer security and UBDM Overview of MIMO

[1093] Consider an OFDM system with a single subcarrier. The transmitter has t antennas and the receiver has r antennas. Assume that "all of the t transmit antennas simultaneously (at the same frequency) transmit unique symbols such that the transmitter n transmits symbol b". These can be placed into a vector n (note that these are also called sequences in this specification). Each of the r receive antennas will receive each of these symbols in some linear combination. In other words, receiver r [Number] (which can be placed within [Number] and is also called a sequence in this specification). Each of the r receive antennas will receive each of these symbols in some linear combination. In other words, receiver r 1 , …, rr will receive the following: [Number] The foregoing equation can be placed within the following matrix equation [Number] where [Number] is.

[0093]

[1094] The matrix H may be referred to as the "channel matrix" or "channel representation". If the sequence [Number] (or "training sequence") is known to the receiver, the receiver can use the sequence [Number] to restore the entire channel matrix H. For example, if the transmission of the training sequence is not actually simultaneous, rather the receiver first transmits b 1 from the first transmit antenna, the receiver can determine the first column of H (due to knowing the value b 1 ). Next, the receiver receives b 2 from the second transmit antenna, and the receiver determines the second column of H. A similar procedure can occur for each b of the sequence b n .

[0094]

[1095] Next, consider taking the singular value decomposition of H as H = UDV * If H is an r×t matrix, then U is an r×r unitary matrix, V is a t×t unitary matrix, and V *is the conjugate transpose of V, and D is a diagonal matrix containing singular values. With high probability, H will have rank min(t,r), and thus D will be a matrix where the first min(t,r) values are positive real numbers. More generally, the rank of H determines the capacity of the channel. The rank is equal to the number of independent channels that can be transmitted simultaneously between the transmitter and the receiver.

[0095] MIMO Precoding

[1096] Assume that both "Alice" and "Bob" are using a MIMO system. Here, "Alice" refers to a transmitter with t antennas, and "Bob" refers to a receiver with r antennas. Ideally, if both Alice and Bob have complete knowledge of the channel matrix H, they can perform singular value decomposition (SVD) and obtain H = UDV † In such an environment, when Alice starts to send data to Bob, Alice can first pre-multiply her transmission

Number

Number

Number

Number

Number

[0096]

[1097] In fact, the foregoing procedure is not necessarily a practical approach as, for example, Alice sends a training sequence to Bob, Bob calculates the channel SVD and returns the entire matrix of the right singular vectors V to Alice, and then Alice performs the pre-multiplication. Sending the entire matrix U to Alice every time an update to the channel is needed or desired can be prohibitively and computationally expensive and can be bandwidth-consuming. Thus, a minimum feedback approach can alternatively be used as described below.

[0097]

[1098] As pointed out above, prior to transmission, Alice and Bob can agree on a codebook of unitary matrices represented by F i Assuming that c bits are used to index these matrices, there are 2 c matrices and the index i ranges from [0, 2 c −1]. Bob may wish to require that Alice pre-multiply her transmission by the true / accurate right singular vector V. However, since the requirement to Alice may be impractical, Bob may instead select the unitary matrix from the codebook that is closest to (i.e., best approximates) V. As used herein, the "closest" unitary matrix may refer to the unitary matrix that maximizes the capacity of the MIMO channel, where the capacity C of the MIMO channel can be defined by the following equation, where II is the identity matrix, S / N is the signal-to-noise ratio, H is the channel representation (or matrix), and H † is the conjugate transpose matrix of H: [Number]

[0098]

[1099] F i The pre - multiplication by F results in a modification of the channel representation from H to HF. i Therefore, Bob selects the "optimal" matrix F that maximizes the capacity: i : [Number]

[0099]

[1100] Matrix F i Instead of sending the entire matrix F back to Alice, Bob can send only the index i, which is a c - bit value, to Alice. Since Alice can access the codebook (for example, the codebook is public), Alice pre - multiplies her data for transmission by the matrix F i and transmits the product of the result. Bob can receive the message with the effectively removed right - hand singular vectors and post - multiply the received message by U † to remove the left - hand singular vectors and then scale out the singular values. This technique for simplifying the channel is sometimes called "pre - coding" in MIMO transmission, because Alice "encodes" her data prior to transmission (by a "code" (matrix F i ) from a codebook (or "look - up table") of matrices with known indexing).

[0100] MIMO - OFDM Precoding (MOP: MIMO - OFDM Precoding)

[1101] Physical layer security can be applied to the precoding techniques described above to facilitate the secure exchange of information between Alice and Bob without allowing an eavesdropper ("Eve") to access the data being transmitted. As discussed above, physical layer security refers to the use of the physical details of the communication channel to guarantee secure communication. In some implementations, the channel matrix between Alice and Bob represented by H AB and the channel matrix between Bob and Alice represented by H BA (assuming they are in the same band) follow "channel reciprocity" (H AB =(H BA ) T (where the superscript "T" refers to matrix transpose). On the other hand, if Eve's receiver is not physically close to Alice or Bob, the channel H AE =(H) T between Eve and Alice and the channel H BE =(H EB ) T between Alice and Bob are significantly different from H AB =(H BA ) T . This means that due to the physical channels between them, Alice and Bob have a shared secret that they can utilize to communicate without Eve being able to read their messages.

[0101]

[1102] The techniques used by MOP are as follows: Prior to transmission, Alice and Bob agree on a c-bit codebook of unitary matrices as described above. Assuming the codebook is public, Eve is assumed to know its content. At transmission, Alice sends a known signal / sequence

Number

Number

Number

Number

[0102]

[1103] Next, Bob uses a codebook to identify the optimal precoding matrix F i and the optimal postcoding matrix F j . Next, the bits corresponding to index i and index j are stored by Bob as bits of the key shared by Bob and Alice. Next, Bob returns to Alice a sequence (which may or may not be the same sequence that Alice sent to Bob) that is known (to everyone including Eve). Alice receives the sequence sent by Bob via the channel H BA =(H AB ) T and also uses this to calculate the optimal matrices F i and F j . Assuming channel reciprocity, Alice and Bob will agree on the indices of the optimal precoding and postcoding matrices and thus establish a shared secret. The foregoing procedure can be followed for any subcarrier or group of subcarriers depending on the system design.

[0103]

[1104] Two potential security vulnerabilities associated with the foregoing procedure are that Eve can, via physical considerations, access the channel H ABThere is a possibility that it can be inferred, or Eve's receiver, which is close enough to either Alice or Bob, can be physically moved, for example, to H AB ≈H AE Either way. If Eve obtains even a slight approximation of the channel between Alice and Bob, the security of the system can be dramatically reduced.

[0104] MOPRO

[1105] MOPRO is a modified and rotated version of MOP that addresses the above security vulnerabilities. In MOPRO, similar to MOP, Alice and Bob have pre-agreed on a c-bit codebook, and this codebook may be publicly known and known to Eve. At the time of transmission, Alice selects a random unitary matrix G. This matrix is known to Alice but not to Bob and Eve. Alice multiplies G by a known sequence

Number

Number

Number

[0105]

[1106] Next, Bob selects a secret of c bits (represented by index n herein) and selects matrix F from the codebook n . Next, Bob transmits a certain known sequence [Number] (again, this is known to Alice, Bob, and Eve and may be the same as [Number] if appropriate), but first multiplies by F n and then by U * (U *(which represents the complex conjugate of U, not the Hermitian conjugate). In other words, Bob

Number

Number

[0106]

[1107] From the perspective of Equation 0.0.8, when Alice determines the SVD, Alice will obtain V * with respect to the left singular vectors and F n with respect to the right singular vectors. Next, Alice examines the codebook to identify the index of F n , and based on this index, determines the secret value generated by Bob. Note that unlike MOP (where the shared secret bits are read from the channel), in MOPRO, Bob generates the secret bits and embeds them into the channel representation. At this stage, Eve has the effective channel representation H BE U* F n is being received, but since it doesn't know U, F n or H BE , even if Eve has exhausted all of the F i matrices, Eve won't be able to determine which F i was sent by Bob.

[0107]

[1108] Next, Alice takes a known sequence (which could be the same as the first sequence

Number

Number

Number

[0108]

[1109] H BE ≈H BA Assume that Eve's receiver is physically close enough to Alice so that the following holds. As a result of the first transmission, when Alice sends

Number

Number

Number

Number

Number

Number

Number

[0109]

[1110] The enhanced MOPRO method described herein enhances security by doing the following as compared to known MOPRO systems. In the second transmission step (e.g., when Bob replies to Alice in the above example), before applying and transmitting the matrix to Bob's transmitter, Bob adds a right multiplication of the matrix V

[0110] Enhanced MOPRO

[1111] G to modify the MOPRO algorithm so as to prevent Eve from recovering any of the information transmitted to her regardless of how much channel information Eve has. † In some embodiments, the modified MOPRO method (like MOPRO) has Alice and Bob generate the unitary matrix F

[0111]

[1112] (where the index i is 2 i and there are 2 matrices present [0,2 c c ​It begins by pre - agreeing on a known codebook in the range of -1). In the first transmission, Alice selects a random secret unitary matrix G and transmits it along with the known message

Number

Number

Number

[0112]

[1113] Next, Bob identifies c bits of his secret message, finds the corresponding c - bit index (denoted as n in this specification), looks up the unitary matrix F n in the known codebook, and constructs the matrix U * F n However, prior to transmission, Bob right - multiplies U * F n V † G to obtain U * F n Then Bob † G. Next, Bob

Number

Number

Number

[0113]

[1114] At this point, Alice performs SVD and the left singular vector V * , the singular values D, and the effective right singular vector F n V † G can be restored. Further, since Alice knows V (left singular vector) and G (because she generated them in the first place), Alice can n restore the right singular vector F to n V † multiply G by G † V. Next, Alice examines this matrix in the codebook and reads the secret bit corresponding to index n. At this point, Alice does not need to send anything else to Bob. Bob can continuously send the secret in the same way until a sufficient number of bits have been exchanged between Bob and Alice (assuming, for example, that the channel is static or nearly static).

[0114]

[1115] In some embodiments, secret generation can be performed by both Alice and Bob, in which case the first two transmissions can include the following: (1) Alice sends

Number

Number

[0115]

[1116] FIG. 8 is a schematic diagram of a communication system using UBDM or OFDM with physical layer security according to an embodiment. As shown in FIG. 8, the PLS communication system 801 includes a first set of communication devices 813 and a second set of communication devices 815 communicatively coupled to each other via a communication medium 814 (e.g., free space, multipath wireless environment, etc.). The first set of communication devices 813 is communicatively coupled to a first processor 811, and the second set of communication devices 815 is communicatively coupled to a second processor 816. The first processor 811 is operatively coupled to a memory 812, and the second processor 816 is operatively coupled to the memory 812. Each of the first processor 811 and the second processor 816 is operatively coupled to a storage repository that stores a codebook of unitary matrices 820 (which may be publicly accessible). During operation of the PLS communication system 801, the processor 811 generates a first encoded vector and transmits the first encoded vector to the second set of communication devices 815 via the communication channel of the communication medium 814. The communication channel applies a channel transformation to the first encoded vector during transmission, thereby generating a transformed signal. The second processor 816 receives the transformed signal, determines its effective channel representation / matrix, and identifies the left and right singular vectors of the effective channel. The second processor 816 selects a precoding matrix from the codebook of unitary matrices 820 based on the message, and generates a second encoded vector based on the second known vector, the precoding matrix, the complex conjugate of the left singular vector, and the right singular vector. Next, the second processor 816 transmits the second encoded vector to the first set of communication devices 813 to identify the message.

[0116]

[1117] FIG. 9 is a flowchart showing a method of communicating by using UBDM or OFDM having physical layer security according to an embodiment. As shown in FIG. 9, method 900 includes, at 902, receiving, via a first communication device and at a first processor, a first encoded vector and a signal representing a channel transformation. At 904, the first processor detects an expression of an effective channel based on the received signal, and at 906, performs a singular value decomposition of the expression of the effective channel to identify a left singular vector of the expression of the effective channel and a right singular vector of the expression of the effective channel. At 908, the first processor selects a precoding matrix associated with an index of a message for transmission from a codebook of unitary matrices. At 910, the first processor generates a second encoded vector based on a known vector, the precoding matrix, a complex conjugate of the left singular vector, and a right singular vector of the expression of the effective channel, and at 912, transmits, via a communication channel to a second communication device, a signal representing the second encoded vector for identification of the message at a second processor operably coupled to the second communication device.

[0117]

[1118] FIG. 10 is a flowchart showing a method of communicating by using UBDM or OFDM having physical layer security according to an embodiment. As shown in FIG. 10, method 1000 includes, at 1002, generating a first encoded vector via a first processor of a first communication device by using a first known vector and a unitary matrix. A first signal representing the first encoded vector is transmitted to a second communication device via a communication channel that applies a channel transformation to the first signal during transmission at 1004. A second signal representing a second encoded vector and the channel transformation is received at the first processor from the second communication device (at 1006), and at 1008, the first processor detects an expression of the valid channel based on the second signal. The first processor performs a singular value decomposition of the expression of the valid channel at 1010 to identify a right singular vector of the expression of the valid channel, and at 1012 queries a codebook of unitary matrices to identify a message associated with the second signal based on the right singular vector of the expression of the valid channel and the unitary matrix.

[0118]

[1119] In some embodiments, a communication method using UBDM or OFDM having physical layer security includes applying an arbitrary transformation to a plurality of vectors to generate a plurality of transformed vectors. The arbitrary transformation includes one of a unitary transformation, an equiangular tight frame (ETF) transformation, or a near-equiangular tight frame (NETF) transformation. By using an arbitrary transformation, a transformed signal is generated based on at least one transformed vector from the plurality of transformed vectors. The transformed signal is transmitted via a communication channel to a signal receiver configured to detect the transformed signal. A signal representing the arbitrary transformation is provided to the signal receiver to restore the plurality of vectors at the signal receiver based on the arbitrary transformation and one of a location-specific physical characteristic of the communication channel or a device-specific physical characteristic of the communication channel.

[0119]

[1120] Although the various embodiments have been described above, it should be understood that these are presented by way of example only and not for the purpose of limitation. The methods and / or figures described above show some events and / or flow patterns that occur in a certain order, but the order of some events and / or patterns can be modified. Although some embodiments have been specifically shown and described, it will be understood that various changes in form and detail can be made.

[0120]

[1121] Although the various embodiments have been described as having certain features and / or combinations of components, other embodiments having any combination of any features and / or components from any of the embodiments discussed above are possible.

[0121]

[1122] Some of the embodiments described herein relate to computer storage products having a non-transitory computer-readable medium (which may also be referred to as a non-transitory processor-readable medium) having instructions or computer code for performing various computer-implemented operations. The computer-readable medium (or processor-readable medium) is non-transitory in the sense that it does not include a transitory propagated signal (e.g., a propagated electromagnetic wave that carries information on a transmission medium such as space or a cable). The medium and the computer code (which may also simply be referred to as code) can be designed and constructed for one or more specific purposes. Examples of non-transitory computer-readable media include, but are not limited to, magnetic storage media such as hard disks, floppy disks, and magnetic tape, optical storage media such as compact discs / digital video discs (CD / DVDs), compact disc read-only memory (CD-ROMs), and holographic devices, magneto-optical storage media such as optical discs, carrier wave signal processing modules, and hardware devices specially configured to store and execute program code such as application specific integrated circuits (ASICs), programmable logic devices (PLDs), read-only memory (ROM), and random access memory (RAM) devices. Other embodiments described herein relate to computer program products that may include, for example, instructions and / or computer code discussed herein.

[0122]

[1123] In this disclosure, references to an item in the singular should be understood to include a plurality of items unless explicitly stated otherwise or otherwise apparent from the context, and vice versa. Grammatical conjunctions are intended to express all disjunctive and conjunctive combinations of connected clauses, sentences, words, etc., unless explicitly stated otherwise or otherwise apparent from the context. Thus, the term "or" should generally be understood to mean "and / or" and the like. The use of any example or exemplary language (e.g., "such as," "including," etc.) described herein is for the sole purpose of better illustrating the embodiments and does not impose any limitation on the scope of the embodiments or the claims.

[0123]

[1124] Some of the embodiments and / or methods described in this specification may be performed by software (executed on hardware), hardware, or a combination thereof. Hardware modules may include, for example, general-purpose processors, field programmable gate arrays (FPGAs), and / or application specific integrated circuits (ASICs). Software modules (executed on hardware) may be represented in various software languages (e.g., computer code) including C, C++, Java™, Ruby, Visual Basic™, and / or other object-oriented, procedural, or other programming languages and development tools. Examples of computer code include, but are not limited to, microcode or microinstructions, machine instructions such as those generated by a compiler, code used to generate web services, and files containing high-level instructions that are executed by a computer by using an interpreter. For example, embodiments may be implemented using imperative programming languages (e.g., C, Fortran, etc.), functional languages (Haskell, Erlang, etc.), logic programming languages (e.g., Prolog), object-oriented programming languages (e.g., Java, C++, etc.) or other suitable programming languages, and / or development tools. Additional examples of computer code include, but are not limited to, control signals, encryption code, and compression code.

Claims

1. A first plurality of communication devices capable of accessing a codebook of unitary matrices, A second plurality of communication devices capable of accessing the codebook of unitary matrices, At least one processor operatively coupled to the first plurality of communication devices, Generating a first encoded vector by using a first known vector and a unitary matrix, Transmitting a signal representing the first encoded vector to the second plurality of communication devices via a communication channel, wherein the communication channel applies a channel transformation to the first encoded vector during transmission, and at least one processor configured to perform the above, At least one processor operatively coupled to the second plurality of communication devices, Receiving a converted signal including a version of the first encoded vector converted by the channel transformation, Detecting a representation of an effective channel associated with the communication channel based on the converted signal, Performing a singular value decomposition of the representation of the effective channel to identify a left singular vector of the representation of the effective channel and a right singular vector of the representation of the effective channel, Selecting a precoding matrix associated with an index of the message for transmission from the codebook of unitary matrices based on the message for transmission, Generating a second encoded vector based on a second known vector, the precoding matrix, the complex conjugate of the left singular vector, and the right singular vector of the representation of the effective channel, Transmitting a signal representing the second encoded vector to the first plurality of communication devices via the communication channel to identify the message, and at least one processor configured to perform the above A system including the above.

2. The system according to claim 1, wherein at least one of the first plurality of communication devices or the second plurality of communication devices includes a plurality of antenna arrays, and the first plurality of communication devices and the second plurality of communication devices are configured to perform multi-input multi-output (MIMO) operations.

3. The at least one processor operably coupled to the second plurality of communication devices is configured to generate a second encoded vector by multiplying the precoding matrix by the complex conjugate of the left singular vector to generate an intermediate matrix and by right multiplying the intermediate matrix by the right singular vector of the representation of the effective channel to generate the second encoded vector, the system of claim 1.

4. The system of claim 1, wherein the codebook of unitary matrices is publicly accessible.

5. The precoding matrix is a first precoding matrix, the message is a first message, the index is a first index, and the at least one processor operably coupled to the second plurality of communication devices selects a second precoding matrix associated with a second index of a second message for transmission from the codebook of unitary matrices; generates a third encoded vector based on a third known vector, the second precoding matrix, the complex conjugate of the left singular vector, and the right singular vector of the representation of the effective channel; and further configured to transmit a signal representing the third encoded vector via the communication channel to the first plurality of communication devices to identify the second message, the system of claim 1.

6. The system of claim 1, wherein the at least one processor operably coupled to the second plurality of communication devices is further configured to transmit signals representing a plurality of additional encoded vectors via the communication channel to the first plurality of communication devices until a predetermined number of messages have been transmitted.

7. receiving, via a first communication device and in a first processor, signals representing a first encoded vector and a channel transformation; detecting a representation of an effective channel based on the received signals via the first processor; Performing singular value decomposition of the representation of the active channel via the first processor to identify the left singular vector of the representation of the active channel and the right singular vector of the representation of the active channel; Selecting, via the first processor, a precoding matrix associated with an index of a message from a codebook of unitary matrices for transmission; Generating, via the first processor, a second encoded vector based on a second known vector, the precoding matrix, the complex conjugate of the left singular vector, and the right singular vector of the representation of the active channel, Multiplying the complex conjugate of the left singular vector by the precoding matrix to generate an intermediate matrix; Right multiplying the intermediate matrix by the right singular vector of the representation of the active channel to generate the second encoded vector; Transmitting, via a communication channel, a signal representing the second encoded vector to the second communication device to identify the message at a second processor operably coupled to the second communication device; A method comprising.

8. The method according to claim 7, wherein at least one of the first communication device or the second communication device includes a plurality of antennas, and the first communication device and the second communication device are configured to perform multi-input multi-output (MIMO) operations.

9. The method according to claim 7, wherein the codebook of unitary matrices is publicly accessible.

10. The precoding matrix is a first precoding matrix, the message is a first message, and the index is a first index. Selecting, from the codebook of unitary matrices, a second precoding matrix associated with a second index of a second message for transmission; Generating a third encoded vector based on a third known vector, the second precoding matrix, the complex conjugate of the left singular vector, and the right singular vector of the representation of the active channel; Transmitting, via the communication channel, a signal representing the third encoded vector to the second communication device to identify the second message; The method according to claim 7, further comprising

11. The method according to claim 7, further comprising transmitting, via the communication channel, a signal representing a plurality of additional encoded vectors until a predetermined number of messages have been transmitted to the second communication device.

12. A first plurality of communication devices capable of accessing a codebook of unitary matrices, A second plurality of communication devices capable of accessing the codebook of unitary matrices, At least one processor operably coupled to the first plurality of communication devices, At least one processor configured to transmit a signal representing a first encoded vector to the second plurality of communication devices, At least one processor operably coupled to the second plurality of communication devices, Receiving a converted signal including a version of the first encoded vector converted by channel conversion, Detecting a representation of the effective channel based on the converted signal, Identifying a left singular vector of the representation of the effective channel and a right singular vector of the representation of the effective channel, Selecting a precoding matrix from the codebook of unitary matrices based on a message for transmission, Generating a second encoded vector based on the precoding matrix, the complex conjugate of the left singular vector of the representation of the effective channel, and the right singular vector of the representation of the effective channel, By multiplying the precoding matrix by the complex conjugate of the left singular vector of the representation of the effective channel to generate an intermediate matrix, and By right multiplying the intermediate matrix by the right singular vector of the representation of the effective channel to generate the second encoded vector, And at least one processor configured to transmit a signal representing the second encoded vector to the first plurality of communication devices for identifying the message. A system comprising

13. At least one of the first plurality of communication devices or the second plurality of communication devices includes a plurality of antenna arrays, and the first plurality of communication devices and the second plurality of communication devices are configured to perform multi-input multi-output (MIMO) operations. The system according to claim 12.

14. The system according to claim 12, wherein the codebook of unitary matrices is publicly accessible.

15. The precoding matrix is a first precoding matrix, the message is a first message, and the at least one processor operably coupled to the second plurality of communication devices, selects a second precoding matrix of a second message for transmission from the codebook of unitary matrices, generates a third encoded vector based on the known vector, the second precoding matrix, the complex conjugate of the left singular vector of the representation of the effective channel, and the right singular vector of the representation of the effective channel, and further configured to transmit a signal representing the third encoded vector to the first plurality of communication devices to identify the second message. The system according to claim 12.

16. The system according to claim 12, wherein the at least one processor operably coupled to the second plurality of communication devices is further configured to transmit signals representing a plurality of additional encoded vectors to the first plurality of communication devices until a predetermined number of messages are transmitted.

17. The system according to claim 12, wherein the at least one processor operably coupled to the second plurality of communication devices is configured to select the precoding matrix from the codebook of unitary matrices further based on maximizing the capacity of the MIMO channel.

18. Receiving, via a first communication device and in a first processor, a signal representing a first encoded vector; Detecting a representation of an effective channel based on the received signal via the first processor; Performing singular value decomposition of the representation of the effective channel to identify the left singular vector of the representation of the effective channel and the right singular vector of the representation of the effective channel; Selecting, via the first processor, a precoding matrix of a message from a codebook of unitary matrices for transmission; Multiplying the precoding matrix by the complex conjugate of the left singular vector of the representation of the effective channel to generate an intermediate matrix; Right multiplying the intermediate matrix by the right singular vector of the representation of the effective channel to generate a second encoded vector; Transmitting a signal representing the second encoded vector to the second communication device to cause a second processor operably coupled to the second communication device to identify the message. A method comprising. **Claim 19** The method according to claim 18, wherein at least one of the first communication device or the second communication device includes a plurality of antennas, and the first communication device and the second communication device are configured to perform multi-input multi-output (MIMO) operations. **Claim 20** The method according to claim 18, wherein the codebook of unitary matrices is publicly accessible. **Claim 21** The precoding matrix is a first precoding matrix, the message is a first message, Selecting a second precoding matrix associated with a second message for transmission from the codebook of unitary matrices; Generating a third encoded vector based on the second precoding matrix, the complex conjugate of the left singular vector, and the right singular vector of the representation of the effective channel; Transmitting a signal representing the third encoded vector to the second communication device to cause the second communication device to identify the second message. The method according to claim 18, further comprising. **Claim 22** The method according to claim 18, further comprising transmitting signals representing a plurality of additional encoded vectors to the second communication device until a predetermined number of messages are transmitted. **Claim 23** The method according to claim 18, wherein the selecting the precoding matrix from the codebook of unitary matrices is based on maximizing the capacity of the MIMO channel. **Claim 24** A non-transitory processor-readable medium that causes a first processor to detect an expression of an effective channel based on a signal representing a first encoded vector received via a first communication device; perform a singular value decomposition of the expression of the effective channel to identify a left singular vector of the expression of the effective channel and a right singular vector of the expression of the effective channel; select a precoding matrix associated with an index of the message for transmission from a codebook of unitary matrices based on the message for transmission; multiply the precoding matrix by a complex conjugate of the left singular vector to generate an intermediate matrix; right-multiply the intermediate matrix by the right singular vector of the expression of the effective channel to generate a second encoded vector; transmit a signal representing the second encoded vector to a second communication device to cause a second processor operably coupled to the second communication device to identify the message A non-transitory processor-readable medium storing processor-executable instructions for causing the above operations. **Claim 25** The non-transitory processor-readable medium according to claim 24, wherein at least one of the first communication device or the second communication device includes a plurality of antennas, and the first communication device and the second communication device are configured to perform multi-input multi-output (MIMO) operations. **Claim 26** The non-transitory processor-readable medium according to claim 24, wherein the codebook of unitary matrices is publicly accessible. **Claim 27** The precoding matrix is a first precoding matrix, the message is a first message, and the first processor is caused to select a second precoding matrix associated with a second message for transmission from the codebook of unitary matrices; generate a third encoded vector based on the second precoding matrix, the complex conjugate of the left singular vector, and the right singular vector of the expression of the effective channel; transmit a signal representing the third encoded vector to the second communication device to identify the second message The non-transitory processor-readable medium according to claim 24, further storing processor-executable instructions for causing the above operations. **Claim 28** The non - transitory processor - readable medium according to claim 24, wherein the processor - readable medium further stores processor - executable instructions that cause the second communication device to transmit a signal representing a plurality of additional encoded vectors until a predetermined number of messages are transmitted. **Claim 29** The non - transitory processor - readable medium according to claim 24, wherein the processor - executable instructions that cause the precoding matrix of the message to be selected from the codebook of unitary matrices for transmission include instructions that cause the precoding matrix to be selected from the codebook of unitary matrices based on maximizing the capacity of the MIMO channel.

Citation Information

Patent Citations

  • Wireless communication apparatus and wireless communication method

    WO2006011345A1

  • Radio communication method, radio communication system, and radio communication device

    WO2006013798A1