Single-input, single-output (SISO) physical layer key exchange

UBDM with SISO configuration addresses the inefficiencies of OFDM by using singular value decomposition and precoding matrices to enhance security and efficiency in wireless communication, reducing peak-to-average power ratio and improving multiplexing.

JP7723663B2Active Publication Date: 2025-08-14RAMPART COMMUNICATIONS INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2022536843
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-02-11
Filing Date
2021-02-08
Publication Date
2025-08-14
Estimated Expiration
2041-02-08

AI Technical Summary

Technical Problem

Existing wireless communication technologies, such as OFDM, do not adequately address secure signal transmission and efficient power management, particularly in scenarios with high peak-to-average power ratios and harsh channel conditions.

Method used

Implementing Unitary Braid Division Multiplexing (UBDM) with Single-Input Single-Output (SISO) configuration, utilizing singular value decomposition and precoding matrices to enhance security and efficiency by spreading energy across subcarriers, reducing peak-to-average power ratio, and introducing code division multiplexing.

Benefits of technology

UBDM systems provide secure and efficient wireless communication by reducing peak-to-average power ratio and enhancing multiplexing capabilities, leveraging physical layer security to protect against eavesdropping.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007723663000046
    Figure 0007723663000046
  • Figure 0007723663000047
    Figure 0007723663000047
  • Figure 0007723663000048
    Figure 0007723663000048
Patent Text Reader

Abstract

A processor coupled to the first communication device generates and transmits a first coded vector and a second coded vector to a second communication device via a communication channel that applies a channel transform to the coded vectors during transmission. A processor coupled to the second communication device receives the transformed signal, constructs a matrix based on the transformed signal, detects the 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. A first symbol of the second coded vector and a second symbol of the second coded vector are transmitted to the first communication device for message identification.
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 / 787,290, entitled "SINGLE INPUT SINGLE OUTPUT (SISO) PHYSICAL LAYER KEY EXCHANGE," filed February 11, 2020, the entire contents of which are incorporated herein by reference in their entirety for all purposes.

[0002] This application is a continuation of U.S. Non-Provisional Patent Application No. 15 / 351,428, filed November 14, 2016, entitled "RELIABLE ORTHOGONAL SPREADING CODES IN WIRELESS COMMUNICATIONS" (now U.S. Patent No. 10,020,839), U.S. Non-Provisional Patent Application No. 16 / 459,245, filed July 1, 2019, entitled "SYSTEMS, METHODS AND APPARATUS FOR SECURE AND EFFICIENT WIRELESS COMMUNICATION OF SIGNALS USING A GENERALIZED APPROACH WITHIN UNITARY BRAID DIVISION MULTIPLEXING," and U.S. Non-Provisional Patent Application No. 16 / 527,240, filed June 31, 2019, entitled "COMMUNICATION SYSTEM AND METHOD USING UNITARY BRAID DIVISIONAL MULTIPLEXING (UBDM) WITH PHYSICAL LAYER SECURITY”.

[0003] Federal Interest Statement

[0003] The United States Government holds a non-exclusive, irrevocable, royalty-free license in this invention by virtue of its license granting authority for all United States Government purposes.

[0004] Technical Field

[0004] The present disclosure relates to systems and methods for transmitting wireless signals for electronic communications, and more particularly to increasing data rates and reducing communication complexity in wireless communications.

[0005]

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

[0006]

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

[0007]

[0007] A known approach to wireless signal communication is orthogonal frequency-division multiplexing (OFDM), a method of encoding digital data on multiple carrier frequencies. OFDM methods have been adapted to allow signal communication to cope with harsh communication channel conditions (such as attenuation, interference, and frequency-selective fading). However, such approaches do not address the physical layer need for secure signal transmission. Furthermore, OFDM signals contain signal amplitudes over a very large dynamic range, often involving transmitters capable of handling high peak-to-average power ratios. Therefore, there is a need for improved systems, apparatus, and methods for secure and power-efficient approaches to wireless communication of signals. Summary of the Invention

[0008] overview In some embodiments, a processor coupled to a first communication device generates a first encoded vector and a second encoded vector and transmits them to a second communication device over a communication channel that applies a channel transform to the encoded vectors during transmission. A processor coupled to the second communication device receives the transformed signal, constructs a matrix based on the transformed signal, detects the 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 encoded 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. A first symbol of the second encoded vector and a second symbol of the second encoded vector are transmitted to the first communication device for message identification.

[0009] In some embodiments, a communication method using UBDM or OFDM with physical layer security includes receiving, via a first communication device and at a first processor, a first signal representing a first symbol of a first coded vector and a channel transformation. The method also includes receiving, via the first communication device and at the first processor, a second signal representing a second symbol of the first coded vector and a channel transformation. The first processor detects a representation of an effective channel based on the first signal and the second signal. The first processor performs singular value decomposition of the representation of the effective channel to identify left singular vectors of the representation of the effective channel and right singular vectors of the representation of the effective channel. The first processor selects a precoding matrix associated with an index of a 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, complex conjugates of the left singular vectors, and right singular vectors of the representation of the effective channel. The method also includes transmitting (1) a signal representing the first symbol of the second coded vector and (2) a signal representing the second symbol of the second coded vector to a second communication device over a communication channel for message identification in a second processor associated with the second communication device. [Brief explanation of the drawings]

[0010] BRIEF DESCRIPTION OF THE DRAWINGS [Figure 1] 1 is a schematic diagram of a secure and efficient Unitary Braid Divisional Multiplexing (UBDM) system according to some embodiments. [Figure 2]

[0011] 1 is a schematic diagram of a signal transmitter in a UBDM system according to some embodiments. [Figure 3]

[0012] 1 is a schematic diagram of a signal receiver in a UBDM system according to some embodiments. [Figure 4]

[0013] 1 is a schematic diagram of a communication system using UBDM or OFDM with single-input single-output (SISO) implementation physical layer security (PLS) according to some embodiments. [Figure 5]

[0014] 1 is a flowchart illustrating a first method for performing UBDM or OFDM with a SISO-implemented PLS according to some embodiments. [Figure 6]

[0015] 10 is a flowchart illustrating a second method for performing UBDM or OFDM with a SISO-implemented PLS according to some embodiments. [Figure 7A]

[0016] 1 is a flowchart illustrating a method of operating a UBDM system according to one embodiment. [Figure 7B]

[0017] 1 is a flowchart illustrating a method of operating a UBDM system according to one embodiment. [Figure 8A]

[0018] 1 is a schematic diagram of the processing of a signal in a signal transmitter of an OFDM system; [Figure 8B]

[0019] FIG. 2 is a schematic diagram of the processing of a signal in a signal transmitter of a UBDM system according to one embodiment. [Figure 8C]

[0020] FIG. 2 is a schematic diagram of the processing of a signal in a signal transmitter of a UBDM system according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0011] Detailed Description

[0021] This disclosure describes a unitary blade division multiplexing (UBDM) system (also referred to herein as a generalized UBDM (gUBDM) system) for modulation-based communication security followed by a UBDM or OFDM system implementation that includes physical layer security (PLS) implemented via a single-input, single-output (SISO) configuration. PLS is sometimes referred to as "enhanced MOPRO" and includes a modified version of the key exchange algorithm called MIMO-OFDM Precoding with Rotation (MOPRO).

[0012]

[0022] In some embodiments, a communication method using unitary blade division multiplexing (UBDM) with a SISO-implemented PLS includes receiving, via a first communication device and at a first processor, a first signal representing a first symbol of a first coded vector and a channel transformation. The method also includes receiving, via the first communication device and at the first processor, a second signal representing a second symbol of the first coded vector and a channel transformation. A representation of an effective channel is detected via the first processor based on the first signal and the second signal. The first processor performs singular value decomposition of the representation of the effective channel to identify left singular vectors of the representation of the effective channel and right singular vectors of the representation of the effective channel. The first processor selects a precoding matrix associated with an index of a 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, complex conjugates of the left singular vectors of the representation of the effective channel, and the right singular vectors. The method also includes transmitting (1) a signal representing the first symbol of the second coded vector and (2) a signal representing the second symbol of the second coded vector to a second communication device over a communication channel for message identification in a second processor associated with the second communication device.

[0013]

[0023] In some embodiments, a communication method using UBDM or OFDM with a SISO-implemented PLS includes generating a first coded vector in a processor of a first communication device using a known vector and a unitary matrix. A first signal representing a first symbol of the first coded vector and a second signal representing a second symbol of the first coded vector are transmitted to a second communication device over a communication channel that applies a channel transform to the first signal and the second signal during transmission. A third signal representing the first symbol of the second coded vector and the channel transform and a fourth signal representing the second symbol of the second coded vector and the channel transform are received at the processor and from the second communication device. The processor detects a representation of the effective channel based on the third signal and the fourth signal. The processor performs singular value decomposition of the representation of the effective channel to identify right singular vectors of the representation of the effective channel. The method also includes querying a codebook of unitary matrices based on the singular vectors of the representation of the effective channel and the unitary matrix to identify messages associated with the third signal and the fourth signal.

[0014]

[0024] In some embodiments described herein, a UBDM system with a SISO-implemented PLS comprises a modified Orthogonal Frequency Division Multiplexing (OFDM) system. The modified OFDM system may include some components in common with unmodified OFDM systems, but also includes generalized versions of OFDM components (e.g., a subset of OFDM functionality). The UBDM 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 the 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 the receiver to reconstruct 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)).

[0015]

[0025] Some embodiments of UBDM systems, including those described herein with SISO-implemented PLS and those with the above-described modifications of OFDM systems, may provide exceptional security and efficiency in transmitting signals over wireless communication channels. Other benefits of the UBDM embodiments described herein include the ability to use nonlinear transforms as well as generalized embodiments involving, by way of example, equiangular tight frame (ETF) or nearly equiangular tight frame (NETF) transforms. Standard OFDM does not allow generalization to ETF / NETF "overload."

[0016]

[0026] The generalization to any unitary matrix implemented in a UBDM system described herein can also have the effect of spreading the energy of each symbol or vector within the signal sent out across various subcarriers. Spreading the energy of each symbol or vector within the signal to be transmitted can reduce the signal's peak-to-average power ratio (PAPR) and provide spreading (and therefore interference rejection) comparable to systems such as Direct Sequence Spread Spectrum (DSSS) systems. Spreading the energy of each symbol or vector within the signal to be transmitted can also provide additional degrees of freedom in multiplexing. In other words, in addition to standard frequency division multiplexing and time division multiplexing, a UBDM system can introduce code division multiplexing, which adds a powerful degree of freedom for multiplexing in a signal transmission system.

[0017]

[0027] "Physical Layer Security" (PLS) refers to leveraging the physical properties of a communication channel between users of a communication system for the purpose of exchanging secret information. While some of the aforementioned UBDM implementations describe applying security at the physical layer, they do not strictly incorporate PLS, which involves exploiting the physical properties of the shared channel between two users. For example, in PLS, users generate a secret key for a symmetric encryption / security scheme (e.g., Advanced Encryption Standard (AES)) for secret information based on the physical properties of the communication channel. Unless an eavesdropper has a receiver close enough to one of the users to directly measure (or gather enough information to approximate) the physical properties of the communication channel, an eavesdropper will not be able to access the shared secret. According to embodiments described below, PLS can be implemented in combination with UBDM (or generalized UBDM), OFDM, or any other communication system to enhance communication security.

[0018]

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

[0019] Transmitting and receiving SISO-enhanced MOPRO signals

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

[0020]

[0030] In some embodiments, the communication network 106 (also referred to as a "network") may be any suitable communication network, including one or more wired and / or wireless communication channels (operating over public and / or private networks) configured to 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, 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, communication network 106 may be a wireless network such as a Wi-Fi or wireless local area network ("WLAN"), a wireless wide area network ("WWAN"), and / or a cellular network.

[0021]

[0031] The communication network 106 may be or include a wired network and / or a wireless network, implemented using, for example, gateway devices, bridges, switches, etc. The wired network or wireless network may use one or more communication channels (e.g., radio frequency (RF) communication channels, extremely low frequency (ELF) communication channels, extremely low frequency (ULF) communication channels, low frequency (LF) communication channels, intermediate frequency (MF) communication channels, ultra high frequency (UHF) communication channels, extremely high frequency (EHF) communication channels, optical fiber communication channels, electronic communication channels, satellite communication channels, etc.). The network 106 may include one or more segments and / or have portions based on different protocols, such as Internet Protocol (IP) and / or proprietary protocols. The communication network 106 may include at least a portion of the Internet. In some cases, the communication network 106 may include multiple networks or subnetworks operably coupled to each other by, for example, network bridges, routers, switches, gateways, etc. (not shown).

[0022]

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

[0023]

[0033] The processor 211 may 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, the processor 211 may 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 programmable logic array (PLA), a complex programmable logic device (CPLD), a programmable logic controller (PLC), a graphics processing unit (GPU), a neural network processor (NNP), etc. The processor 211 is operably coupled to the memory 212 via a system bus (e.g., an address bus, a data bus, and / or a control bus, not shown).

[0024]

[0034] The processor 211 may be configured to receive a signal to be transmitted and to perform processing to convert the signal into a transformed signal by applying an arbitrary transform. In some implementations, the processor 211 may apply the arbitrary transform, which is defined to be a unitary transform, so that the transformed signal can be transmitted in a secure and efficient manner using the UBDM system.

[0025]

[0035] Processor 211 may include a set of components including a transformer 214, an arbitrary transform selector 215, and an arbitrary transform applicator 216. Processor 211 may receive a set of signals 221 and 222, perform a set of arbitrary transforms 231 and 232, and transmit a set of transformed signals 241 and 242.

[0026]

[0036] In some embodiments, each of the transformer 214, the optional transform selector 215, and the optional transform applicator 216 may be software stored in memory 212 and executed by the processor 211. For example, each of the above-mentioned portions of the processor 211 may be code for causing the processor 211 to execute the transformer 214, the optional transform selector 215, and the optional transform applicator 216. The code may be stored in memory 212 and / or in a hardware-based device (e.g., an ASIC, FPGA, CPLD, PLA, PLC, etc.). In other embodiments, each of the transformer 214, the optional transform selector 215, and the optional transform applicator 216 may be hardware configured to perform the respective function. In some embodiments, each of the components may be a combination of software-based and hardware. In some embodiments, one or more of the components of the processor 211 (e.g., the transformer 214, the optional transform selector 215, the optional transform applicator 216) may be configured to operate based on one or more platforms (e.g., one or more similar or different platforms), which may include one or more types of hardware, software, firmware, operating systems, runtime libraries, 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 several devices of the cluster of devices. The components of the signal transmitter 201 and the signal receiver (such as the signal receiver 301 shown and described in FIG. 3) may be or include any type of hardware and / or software configured to process attributes.

[0027]

[0037] The converter 214 may be configured to receive the signal to be transmitted and prepare the signal in a form that can be converted by the processor 211 using any conversion. For example, in some embodiments, the processor 211 converts the parallel set of symbols b nThe converter 214 may receive a signal of the form: n To convert a symbol b into a serial set of symbols, we perform a parallel-to-serial computation n In some other embodiments, converter 214 may be configured to perform a serial-to-parallel computation (e.g., using a shift register) to convert a serial set of symbols into a parallel set of symbols. In some embodiments, converter 214 may generate a plurality of vectors (e.g., representing the set of signals 221 and 222) based on a set of symbols. In some implementations, converter 214 may receive a signal in the form of a plurality of input bits. Converter 214 may be configured to generate a plurality of symbols based on the plurality of input bits. Converter 214 may be further configured to generate a plurality of blocks based on a plurality of symbols, where each block of the plurality of blocks represents a vector from a plurality of vectors (e.g., representing the set of signals 221 and 222). Alternatively, converter 214 may be further configured to generate a plurality of sets of blocks based on a plurality of symbols, where each block of the plurality of sets of blocks represents a vector from a plurality of vectors (e.g., representing the set of signals 221 and 222).

[0028]

[0038] The arbitrary transform selector 215 may be configured to select an arbitrary transform (e.g., arbitrary transforms 231 and 232) to apply to a plurality of vectors (e.g., representing pairs of signals 221 and 221) based at least in part on the signal to be transmitted or the plurality of vectors generated by the transformer 214, to securely and efficiently transmit the vectors from the signal transmitter 201 to one or more receivers associated with the UBDM system. The arbitrary transforms (e.g., arbitrary transforms 231 and 232) may include one of a nonlinear transform, a unitary transform, an ETF transform, or a NETF transform, or any combination thereof. In some embodiments, the arbitrary transform selector 215 may have access to a library of arbitrary transforms that are unitary by design (e.g., arbitrary transforms 231 and 232) that may be selected to transmit a signal. The arbitrary transform selector 215 may select an arbitrary transform based on, for example, a transform type and / or criteria negotiated between two communicating entities via a telecommunications handshake or otherwise input by participants in the communication system. The criteria may include, for example, one or more of a desired safety 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 largest transformation that can be performed on a vector of symbols. If a non-unitary transform were used, the inverse transform at the receiver would necessarily amplify noise in some of the received symbols, which is not the case with unitary transforms.

[0029]

[0039] In some cases, the arbitrary transform selector 215 may be configured to select a transform that is not an identity matrix, a discrete Fourier matrix, or any other direct sum of Fourier matrices. For example, in some implementations, the arbitrary transform selector 215 may have a library of unitary transforms and, based on a set of guidelines, select one unitary transform U and perform a calculation to check whether U is an identity matrix, a discrete Fourier matrix, or any other direct sum of a set of Fourier matrices. If U is in one of the three above categories, in some embodiments, the arbitrary transform selector 215 may discard U and select another transform that may satisfy the guideline of not being in any of the above three categories. If the arbitrary transform selector 215 selects a transform U that is not an identity matrix, a discrete Fourier matrix, or any other direct sum of Fourier matrices, it may assign U as the arbitrary transform A to be used in instances of transforming signals transmitted using the UBDM system according to that embodiment.

[0030]

[0040] In some implementations, the arbitrary transform selector 215 may make the selection based on a set of inputs received by the processor 211. In some implementations, the arbitrary transform selector 215 may make the selection based on a set of parameters associated with the signal, a plurality of vectors, the nature of the signal transmission (e.g., safety requirements, sensitivity of the information content in the signal, the path of the signal transmission, etc.). In some implementations, the arbitrary transform selector 215 may be configured to define and generate the arbitrary transform according to a set of inputs received by the processor 211 (e.g., a set of user inputs received by the processor 211).

[0031]

[0041] The arbitrary transform applicator 216 may apply a selected arbitrary transform to a plurality of vectors (e.g., vectors 221 and 222) to generate a plurality of transformed vectors (e.g., transformed vectors 241 and 242). In some implementations, the plurality of transformed vectors may have a total magnitude approximately equal to the total magnitude of the plurality of vectors. In some implementations, for example, the arbitrary transform applicator 216 may be configured to perform a matrix operation to apply a transformation matrix A to the set of vectors to generate the transformed vectors. In some implementations, the arbitrary transform applicator 216 may be configured to perform any suitable number of procedures (e.g., signal processing procedures, suitable matrix operations) on the set of vectors before applying the arbitrary transform. The plurality of transformed vectors may then be transmitted to a signal transmitter antenna 217 and, optionally, to a signal transmitter antenna 218 included in the communicator 213 for transmission to one or more signal receivers associated with the signal receivers. Although shown above as including two signal transmitter antennas 217, 218, similar signal transmitters may include and use a single transmitter antenna (e.g., signal transmitter antenna 217) according to some embodiments configured for single-input, single-output (SISO) operation. According to other embodiments, similar signal transmitters may include any suitable greater number of signal transmitter antennas (i.e., three or more transmitter antennas). In some embodiments, signal transmitter 201 may include multiple antenna arrays configured for multiple-input, multiple-output (MIMO) operation.

[0032]

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

[0033]

[0043] Communication interface 213 may be a hardware device operatively coupled to processor 211 and memory 212 and / or software stored in memory 212 for execution by processor 211. Communication interface 213 may include signal transmitter antenna 217 and optionally signal transmitter antenna 218. While a second transmitter antenna 218 is shown in FIG. 2 in addition to transmitter antenna 217, according to some embodiments, a signal transmitter similar to signal transmitter 201 may have only a single signal transmitter antenna according to some embodiments, or may have any number of transmitter antennas according to some embodiments. Communication interface 213 may be, for example, a network interface card (NIC), a Wi-Fi™ module, a Bluetooth® module, and / or any other suitable wired and / or wireless communication device. Furthermore, communication interface 213 may include a switch, a router, a hub, and / or any other network device. The communicator 213 may be configured to connect the calculator 201 to a communications network (such as communications network 106 shown above in connection with FIG. 1). In some cases, the communications interface 213 may be configured to connect to a communications network (e.g., 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®), an optical fiber-based network, a Bluetooth® network, a virtual network, and / or any combination thereof) over one or more communications channels.

[0034]

[0044] In some cases, communication interface 213 may facilitate receiving and / or transmitting a file and / or set of files over one or more communication channels through a communication network (e.g., communication network 106 shown and described with reference to FIG. 1). In some cases, the received files may be processed by processor 211 and / or stored in memory 212, as described in further detail herein. In some cases, as previously described, communication interface 213 may be configured to transmit the plurality of transformed vectors via signal transmitter antenna 217 to at least one signal receiver antenna associated with at least one signal receiver connected to the communication network. Communication interface 213 may also be configured to transmit and / or receive data associated with a library of any transformation system.

[0035]

[0045] 3 is a schematic block diagram of an exemplary signal receiver 301 that may be part of a UBDM system, such as the UBDM system 100 described above with reference to FIG. 1 , according to one embodiment. The signal receiver 301 may be structurally and functionally similar to the signal receiver 101 and the signal transmitter 102 of the system 100 shown and described above with reference to FIG. 1 . In some embodiments, the signal receiver 301 may be or include a processor 311 configured to process instructions stored in a memory 312. The signal receiver 301 may be a hardware-based computing device and / or a multimedia device, such as, for example, a server, a desktop computing device, a smartphone, a tablet, a wearable device, a laptop, etc. The signal receiver 301 includes the processor 311, the memory 312, and a communication interface 313.

[0036]

[0046] The processor 311 may 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, the processor 311 may be a hardware-based integrated circuit (IC) or any other suitable processing device configured to execute a set of instructions or code. For example, the processor 311 may 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 programmable logic array (PLA), a complex programmable logic device (CPLD), a programmable logic controller (PLC), a graphics processing unit (GPU), a neural network processor (NNP), etc. The processor 311 is operably coupled to the memory 312 via a system bus (e.g., an address bus, a data bus, and / or a control bus, not shown).

[0037]

[0047] The processor 311 may 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, the processor 311 may 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 programmable logic array (PLA), a complex programmable logic device (CPLD), a programmable logic controller (PLC), a graphics processing unit (GPU), a neural network processor (NNP), etc. The processor 311 is operably coupled to the memory 312 via a system bus (e.g., an address bus, a data bus, and / or a control bus, not shown).

[0038]

[0048] The processor 311 may be configured to receive a signal to be transmitted and to perform processing to convert the signal into a transformed signal by applying an arbitrary transform. The processor 311 may also, or alternatively, be configured to receive a transformed signal securely transmitted over one or more communication channels defined within a communication network (e.g., network 106 of FIG. 1 ); obtain information associated with the arbitrary transform used to generate the transformed signal; and process the transformed signal based on this information (e.g., by applying the inverse of the arbitrary transform) to restore the original signal so that it can be received by a destination in a secure and efficient manner using a gUBDM system. In some implementations, the processor 311 may apply an arbitrary transform defined to be a unitary transform so that the transformed signal can be transmitted in a secure and efficient manner using a UBDM system.

[0039]

[0049] The processor 311 may include a set of components including a transformer 314, an arbitrary transform identifier 315, and an arbitrary transform inverter 316. The processor 311 may include, or have access to from memory 312, a plurality of transformed vectors 341, 342 representing transformed signals received from one or more transmitter antennas of a signal transmitter that is part of the UBDM system of which the signal receiver 301 is a part (e.g., transmitter antenna 217 or transmitter antenna 218 of signal transmitter 201 shown and described with respect to FIG. 2 ). The processor 311 may include, or have access to in memory 312, a set of arbitrary transforms 331, 332 identified based on information associated with the signals received from the signal transmitter, a set of inverse transforms 351, 352 calculated based on the identified arbitrary transforms, and a plurality of vectors 321, 322 representing a set of original signals.

[0040]

[0050] Optional transform identifier 315 may be configured to receive information associated with the transformed signals (e.g., the transformed signals represented by transformed vectors 341, 342) received via signal receiver antenna 317 and optionally via signal receiver antenna 318, including an indication of an identifier of any transform used in generating the transformed signals. Optional transform identifier 315 is configured to identify, based on this information, any transform that may be used to recover the original signals (e.g., the original signals represented by vectors 321 and 322) from the transformed signals (e.g., the transformed signals 341 and 342).

[0041]

[0051] The arbitrary transform inverter 316 generates an inverse of the identified arbitrary transform (e.g., inverse transforms 351 and 352), also referred to as an inverse transform, based on the identifier of the arbitrary transform, which is configured to reverse the effect of the identified arbitrary transform to restore the original signal from the transformed signal. For example, in some embodiments, the arbitrary transform inverter 316 generates an inverse transform (A') 351 configured to be applied to the plurality of transformed vectors 341 and 342 representing the transformed signal, such that the inverse transform (A') 351 may reverse the effect of the arbitrary transform (A) 331 to restore the plurality of vectors 321 and 322 representing the original signal, and which is received by the signal receiver 301. In another example, in some embodiments, the arbitrary transform inverter 316 constructs a matrix and generates an inverse transform (A') based on the matrix configured to be applied to the plurality of transformed vectors 341, 342 and restore the plurality of vectors 321, 322.

[0042]

[0052] The transformer 314 may be configured to receive a plurality of reconstructed vectors (e.g., 321, 322) representing the original signal and to reconstruct the original signal from the reconstructed vectors. For example, in some embodiments, the processor may generate a parallel set of symbols b n The converter 314 may receive a serial set of symbols b n To convert the original signal into a parallel set of symbols, we perform serial-to-parallel computation using a set of symbols b n(e.g., using a phase register). In one example, converter 314 may include configuration for performing parallel-to-serial calculations (e.g., using a shift register). In some embodiments, converter 314 may receive a plurality of reconstructed vectors (e.g., vectors 321 and 322) and generate an original signal including a set of symbols based on these vectors. In some embodiments, converter 314 may receive a plurality of reconstructed vectors (e.g., vectors 321 and 322) and generate a plurality of sets of blocks based on the reconstructed vectors, each set of blocks representing one of the vectors. Converter 314 may then generate a plurality of input bits based on the sets of blocks that can reconstruct the original signal.

[0043]

[0053] The memory 312 of the signal receiver 301 may be, for example, random access memory (RAM), a memory buffer, a hard drive, read-only memory (ROM), erasable programmable read-only memory (EPROM), a flash drive, a secure digital (SD) memory card, embedded multi-time programmable (MTP) memory, etc. The memory 312 may store one or more software modules and / or code, which may include, for example, instructions that cause the processor 311 to perform one or more processes, functions, etc. (e.g., functions associated with the transformer 314, the arbitrary transform identifier 315, and / or the arbitrary transform 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 portable memory (e.g., a flash drive, a portable hard disk, etc.) that may be operably coupled to the processor 311. In other cases, the memory may be operably coupled to the signal receiver 301 remotely. For example, a remote database server may serve as the memory and be operably coupled to the signal receiver 301.

[0044]

[0054] The communication interface 313 may be a hardware device operatively coupled to the processor 311 and the memory 312 and / or software stored in the memory 312 executed by the processor 311. The communication interface 313 may include a signal receiver antenna 317 and, optionally, a signal receiver antenna 318. Although a second receiver antenna 318 is shown in FIG. 3 in addition to the receiver antenna 317, a signal receiver similar to the signal receiver 301 may have only a single transmitter antenna according to some embodiments, or may have any number of transmitter antennas according to some other embodiments. The communication interface 313 may be, for example, a network interface card (NIC), a Wi-Fi™ module, a Bluetooth® module, and / or any other suitable wired and / or wireless communication device. Furthermore, the communication interface 313 may include a switch, a router, a hub, and / or any other network device. The communicator 213 may be configured to connect the computing device 301 to a communication network (such as the communication network 106 shown above with respect to FIG. 1). In some cases, the communications network 313 may be configured to connect to a communications network (e.g., the Internet, an intranet, a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), WiMAX®, an optical fiber-based network, a Bluetooth® network, a virtual network, and / or any combination thereof) via one or more communications channels.

[0045]

[0055] In some cases, communication interface 313 may facilitate receiving and / or transmitting a file and / or a set of files over one or more communication channels defined within a communication network (e.g., communication network 106 in UBDM system 100 of FIG. 1 ). In some cases, the received files may be processed by processor 311 and / or stored in memory 312, as described in further detail herein. In some cases, as previously described, communication interface 313 may be configured such that signal receiver antenna 317, and optionally signal receiver antenna 318, include one or more antennas tuned to receive converted signals of specific predetermined center frequencies within a predetermined band in order to securely and efficiently receive converted signals transmitted by one or more signal transmitter antennas associated with one or more signal transmitters connected to the communication network as part of the UBDM system. Communication interface 313 may also be configured to transmit and / or receive data associated with a library of any conversion system. In some embodiments, signal receiver 301 may include multiple antenna arrays configured to perform multiple-input multiple-output (MIMO) operation.

[0046] Introduction to SISO Implementation Enhanced MOPRO

[0056] In an exemplary embodiment of the present disclosure, a first communication device receives instructions to transmit symbol b using four subcarriers:

number

[0047]

[0057] After transmitting symbol b over a communication channel with channel vector h, the channel vector h transforms symbol b into a transformed symbol. The transformed symbol received at the second communication device is the Hadamard product of symbol b and channel vector h. The second communication device receives the transformed symbol as a 4×1 matrix:

number

[0048]

[0058] The second communications device arranges the transformed symbols into a 2x2 matrix (eg, using the transformer 314 shown and described with respect to Figure 3).

number

[0049]

[0059] The second communications device further performs matrix decomposition to express the 2x2 matrix as a product of a 2x2 channel transform matrix and a 2x2 symbol matrix.

number

[0050]

[0060] By doing so, the second communication device converts a four-component vector specifically designed for single-input single-output (SISO) operation into a 2x2 matrix, while benefiting from the efficiency and physical layer security of MOPRO operation or enhanced MOPRO operation.

[0051] Enhanced MOPRO-MIMO

[0061] In one embodiment, MOPRO operation or enhanced MOPRO operation may be performed on a MIMO system. In one example, the MIMO system may be a 2x2 MIMO system used by users "Bob" and "Alice." This example will be performed for a single subcarrier. The following procedure may be performed for each subcarrier in a system with multiple subcarriers. Alice initially chooses an arbitrary unitary matrix G∈U(2), where U represents a unitary matrix. Next, Alice multiplies a known / agreed-upon training sequence B of two symbols b1 and b2 (in two separate symbols) by G to generate a coded value for transmission to Bob:

number

[0052]

[0062] Then, Alice sends the encoded value to Bob. SVD H=BDA † (where D is a diagonal and positive definite matrix of channel singular values, B is the singular vectors on Bob's "side" of the channel (left singular values), and A is the singular vectors on Alice's "side" of the channel (right singular values), then Bob has r=Ht=HGb=BDA † Bob has knowledge of the training values in b (e.g., b1=1, b2=-1, etc.) and the matrix H G = B D A † G=BD(G † A) † To separate the received r, -1 In some implementations, the training values in b correspond to or are based on elements from one or more constellation diagrams of signals modulated by one or more digital modulation schemes. Examples of digital modulation schemes include, but are not limited to, binary phase shift keying (BPSK), quadrature phase shift keying (QPSK), octal phase shift keying (8PSK), quadrature amplitude modulation (QAM) formats such as 16QAM, 32QAM, 64QAM, etc.

[0053]

[0063] By performing singular value decomposition of HG, Bob finds that {B,D,G † A}. Then, Bob gets t'=B ★ F n (G † A) † Respond to Alice with b.

[0054]

[0064] where ★ denotes complex conjugate but not transpose, and F n is one of the elements of a public codebook of unitary matrices (Bob may choose this matrix as a means to encode the shared secret bits, for example). n It is desirable that "Eve should not be able to determine whether or not a message is being sent."

[0055]

[0065] After transmitting t' back to Alice, Alice receives r', a version of t' distorted by the transpose of the channel (assuming channel reciprocity): r'=H T t'=H T B ★ F n A † Gb=(BDA † ) T B ★ F n A † Gb=A ★ DB T B ★ F n A †ger Gb=A ★ Defender n A † Gb.

[0056]

[0066] Knowing the (public) training sequence b, Alice can add it to this matrix by adding b -1 is removed by multiplying on the right, and matrix A ★ Defender n A † Isolate G. Alice then

number

[0057]

[0067] Since Alice knows G, she multiplies the right singular vector by G,

number

number

number

number

[0058]

[0068] The above is an example of how enhanced MOPRO works. In normal MOPRO, Bob sends A † Since it does not contain a factor G, Alice does not need to remove it. The MOPRO and enhanced MOPRO systems described in U.S. patent application Ser. No. 16 / 527,240 (incorporated herein by reference) operate using MIMO systems as opposed to SISO systems. This is because, for example, if a 2x2 matrix were reduced to a scalar, SVD would no longer be applicable and the algorithms presented above would become infeasible. As described herein, MOPRO and enhanced MOPRO can be performed using SISO systems and using the systems and methods described herein.

[0059] SISO Implemented MOPRO and Enhanced MOPRO

[0069] In one embodiment, the MOPRO or enhanced MOPRO operation may be performed on a single-input, single-output (SISO) system. In one example, a SISO system may process a 2x2 matrix to perform the MOPRO and / or enhanced MOPRO operation, although this processing may also be performed using any matrix size. Alice (e.g., via signal transmitter 201 shown and described with respect to FIG. 2) begins with a known training sequence of symbols b1, b2, constructs an arbitrary unitary matrix G∈U(2), and computes the product of unitary matrix G with the known training sequence:

number

[0060]

[0070] All four elements of the product of the unitary matrix G and the known training sequence are transmitted over a communication channel (also referred to herein as a "channel") to Bob (e.g., the signal receiver 301 shown and described with respect to FIG. 3). Alice then transmits the four elements of Gb as two symbols:

number

number

number

[0061]

[0071] For each symbol from the two symbols, each component is in one frequency bin (also called a "subcarrier" herein). This means that after going through the channel and applying a set of coefficients to the two symbols, Bob receives:

number

number

[0062]

[0072] where the product Gb is used to get from the second equation to the last equation. There are several other ways in which Alice and Bob could decompose the components. In some implementations, Alice could rearrange the components in any way, and Bob could still construct the 2x2 matrix accordingly, as described above.

[0063]

[0073] At this point, the problem is nearly identical to the MIMO version of MOPRO or enhanced MOPRO. The only difference is that the rank-2 nature of this example is devised by dividing the multiple frequency subcarrier values into a 2x2 matrix rather than relying on multiple antennas to obtain a 2x2 matrix. However, mathematically, these are the same problem. Thus, Bob adds b to the matrix HGb to compute HG. -1 Then, perform singular value decomposition (SVD) on the matrix H. The SVD of H is H=BDA. † Then the SVD that Bob will get is HG=BDA † G=BD(G † A) † →{B,D,(G † A)} Next, Bob transforms the matrix t' into

number

[0064]

[0074] From the constructed t' matrix, Bob constructs two symbols (corresponding to two separate bauds transmitted one after the other) to be transmitted on the same frequency subcarriers used by Alice.

number

[0065]

[0075]

number

number

number

[0066]

[0076] Depending on the implementation, a channel may be considered static (i.e., substantially unchanged) if Bob responds within 10-20 milliseconds for the IEEE 802.11 local area network (LAN) protocol or within 500 microseconds (e.g., 250-500 microseconds) for the Long Term Evolution (LTE) 4G mobile communications standard. A channel may be static during a period in which factors affecting or interfering with the channel remain unchanged. Such factors may include, but are not limited to, weather conditions (e.g., humidity, fog, rain, etc.), the presence and characteristics of fixed objects, the presence and characteristics of moving objects, the presence and characteristics of terrain, and stationary transmitting and / or receiving devices. If a channel is static, corrections applied to the received signal to remove the effects of the channel from the received signal (i.e., to "equalize" the channel) may remain constant.

[0067]

[0077] From the above vectors, Alice constructs the following 2x2 matrix:

number

[0068]

[0078] In this example of a SISO system, the calculated matrix A ★ Defender n (G † A) † b is the matrix A calculated above for the example MIMO system operation. ★ Defender n (G † A) †b. Therefore, Alice follows the same procedure as the enhanced MOPRO operated in a MIMO system (i.e., remove b, take SVD, and n (separating the sigma and recovering the shared secret bits). Thus, Alice and Bob can completely mimic the functionality of enhanced MOPRO by manipulating the SISO system as described above.

[0069]

[0079] While the examples presented above show implementations of MOPRO or enhanced MOPRO operation for a 2×2 MIMO system using a SISO system, there are no size limitations, and MOPRO or enhanced MOPRO operation for any n×n MIMO system can be implemented on a SISO system. In some cases, 2×3, 3×2, 3×3, 17×48, or any n×n MIMO system can be implemented. The larger the value of n in an n×n system implemented in SISO, the more subcarriers can be used. In one example, MOPRO or enhanced MOPRO operation for a 3×3 MIMO system implemented in a SISO system can use a total of 9 subcarriers. In another example, MOPRO or enhanced MOPRO operation for a 17×48 MIMO system implemented in a SISO system can use a total of 17×48 = 816 subcarriers.

[0070]

[0080] In some implementations, the SISO system described above may include additional physical security near Alice, making it difficult for Eve to get close to her. Alternatively or additionally, two intended communicating entities may each play the roles of Alice and Bob (as described above) at different times. For example, Entity 1 may perform the steps outlined above with respect to Alice, while Entity 2 may perform the steps outlined above with respect to Bob (resulting in a secret bit derived from Entity 2 and shared with Entity 1). Entity 2 may then perform the steps outlined above with respect to Alice, while Entity 1 may perform the steps outlined above with respect to Bob (resulting in a secret bit derived from Entity 1 and shared with Entity 2). Both entities may continue to do this alternately, so that each entity generates approximately half of the total number of shared bits. In this case, if Eve is the only entity in the vicinity of one of the entities, then only Eve will recover half of the secret bits. If a sufficient number of bits are generated by both entities, and the secret is (for example) a hash of both sets, it is impossible for Eve to recover the secret.

[0071]

[0081] In the above example, Alice and Bob split their coding vectors into two separate 4-component symbols on what appear to be neighboring subcarriers, but this may not be necessary. Initially, Alice and Bob may choose to use any four subcarriers. It may also be desirable to use four subcarriers that are not close to each other. This is because doing so increases the chance of higher variance among the channel coefficients and therefore increases the probability of obtaining a full-rank channel matrix with large singular values, which is desirable. For example, Alice and / or Bob may use subcarriers 1, 11, 21, and 31 as subcarriers for a first SISO-implementing M0PRO exchange. Then, Alice and / or Bob may simultaneously use subcarriers 2, 12, 22, and 32 as a second SISO-implementing M0PRO exchange in parallel with the first SISO-implementing M0PRO exchange. Then, Alice and / or Bob may use subcarriers 3, 13, 23, 33, etc.

[0072]

[0082] Furthermore, in the above example, both Alice and Bob split their messages into two separate four-component symbols, but this may not be necessary. In some cases, the subcarrier spacing may be chosen so that neighboring subcarriers have the same channel coefficients. In this case, all eight components (e.g.,

number

number

number

number

[0073]

[0083] One difference when performing MOPRO operation using a SISO system compared to performing enhanced MOPRO operation using a SISO system is that the matrix sent by Bob is (G † A) † Therefore, the term (G † A) † can be simply replaced by an identifier term. As a result, Bob has a matrix B ★ F n b to Alice. Then, Alice receives the matrix A ★ Defender n Alice receives b. Alice can remove b, and SVD returns F n will be given immediately.

[0074]

[0084] In any OFDM-like or UBDM-like system, assuming proper cyclic prefix cyclicization, the channel behavior is a single complex coefficient for each subcarrier value. In other words, the symbols (b1, b2, b3, b4, ...) become (h1b1, h2b2, h3b3, h4b4, ...). i h i+1 and h i-1 , depends on the subcarrier spacing, which can be selected or modified. In more mathematical terms, the channel is

number

number

number

number

[0075]

[0085] In some instances, a method for performing MOPRO and / or enhanced MOPRO using a SISO system includes a set of vectors

number

number

number

number

number

number

number

[0076]

[0086] 4 is a schematic diagram of a PLS communication system using UBDM or OFDM with SISO-implemented physical layer security capable of performing the SISO-implemented MOPRO and enhanced MOPRO processing described above, according to one embodiment. As shown in FIG. 4 , communication system 400 includes a first set of communication devices 401 and a second set of communication devices 411 communicatively coupled to each other via a communication medium 440 (e.g., free space, a multipath wireless environment, etc.). The first set of communication devices 401 is communicatively coupled to a first processor 404, and the second set of communication devices 411 is communicatively coupled to a second processor 414. The first processor 404 is operably coupled to a memory 405, and the second processor 414 is operably coupled to a memory 415. Each of the first processor 404 and the second processor 414 is operably coupled to a storage repository that stores a codebook of unitary matrices 450 (which may be publicly accessible). During operation of the PLS communication system 400, the processor 404 generates first and second coded vectors and transmits them to a second set of communication devices 411 via a communication channel of the communication medium 440. The communication channel applies a channel transform to the first and second coded vectors during transmission, thereby generating first and second transformed signals. The second processor 414 receives the first and second transformed signals, constructs a matrix from the first and second transformed signals, determines its effective channel representation / matrix, and identifies left and right singular vectors of the effective channel. The second processor 414 selects a precoding matrix from a codebook of unitary matrices 450 based on the message, and generates third and fourth coded vectors based on the complex conjugates of the second known vector, the precoding matrix, and the singular vectors. The second processor 414 then transmits the second coded vector to the first set of communication devices 401 for message identification. The first set of communication devices 401 may then receive the third coded vector and the fourth coded vector from the second set of communication devices 411.The processor 404 detects an effective channel representation based on the third and fourth coded vectors, and performs singular value decomposition of the effective channel representation to identify singular vectors of the effective channel representation. The processor 404 then performs a lookup on a codebook of unitary matrices 450 to identify messages associated with the third and fourth coded vectors.

[0077]

[0087] The methods and apparatus presented herein represent many other possible methods and apparatuses that cover other temporal and / or spectral dimensions than may be used to perform MOPRO and / or enhanced MOPRO using a SISO system. In some embodiments, methods and apparatuses that perform MOPRO and / or enhanced MOPRO using a SISO system may cover temporal coherence techniques and frequency / spectral coherence techniques.

[0078]

[0088] FIG. 5 is a flow chart illustrating a first method 500 for performing UBDM or OFDM with SISO-implemented PLS according to some embodiments. Method 500 may be implemented, for example, by system 400 of FIG. 4 to perform the SISO-implemented MOPRO and enhanced MOPRO processing described above. As shown in FIG. 5, method 500 includes, at 502, receiving a first signal representing a first symbol of a first coded vector and a channel transform via a first communications device (e.g., a communications device from the first set of communications devices 401 of FIG. 4) and at a first processor (e.g., processor 404 of FIG. 4). Method 500 also includes, at 504, receiving a second signal representing a second symbol of the first coded vector and a channel transform via the first communications device at the first processor.

[0079]

[0089] The first processor detects an effective channel representation based on the first signal and the second signal at 506 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 at 508. The first processor selects a precoding matrix from a codebook (optionally a publicly accessible codebook) of unitary matrices at 510. The precoding matrix is associated with an index of the message for transmission. The first processor generates a second coded vector at 512 based on the second known vector, the precoding matrix, complex conjugates of the left singular vectors of the effective channel representation, and the right singular vectors. Method 500 also includes transmitting (1) a signal representing a first symbol of the second coded vector and (2) a signal representing a second symbol of the second coded vector to a second communication device (e.g., communication device 411 of FIG. 4 ) via a communication channel for identification of the message in a second processor associated with the second communication device at 514. Method 500 optionally also includes transmitting signals representing a plurality of additional coded vectors over the communication channel to a second communication device until a predetermined number of messages have been transmitted.

[0080]

[0090] In some implementations, generating the second coded vector includes multiplying a complex conjugate of the left singular vector by a precoding matrix to generate an intermediate matrix, and multiplying the intermediate matrix by a right singular vector of a representation of the effective channel to generate the second coded vector. Alternatively or additionally, the precoding matrix may be a first precoding matrix, the message may be a first message, and the index may be a first index, and method 500 further includes selecting a second precoding matrix from a codebook of unitary matrices (the second precoding matrix is associated with a second index of the second message for transmission), and generating a third coded vector based on a third 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. A signal representing the third coded vector is then transmitted over a communication channel to a second communication device for identifying the second message.

[0081]

[0091] FIG. 6 is a flow chart illustrating a second method for performing UBDM or OFDM with SISO-implemented PLS according to some embodiments. Method 600 may be implemented, for example, by system 400 of FIG. 4 to perform the SISO-implemented MOPRO and enhanced MOPRO processing described above. As shown in FIG. 6 , method 600 includes, at 620, generating a first coded vector in a processor of a first communication device (e.g., a communication device of the first set of communication devices 401 of FIG. 4 ) using a known vector and a unitary matrix. Method 600 also includes, at 622, transmitting a first signal representing a first symbol of the first coded vector to a second communication device (e.g., a communication device of the second set of communication devices 411 of FIG. 4 ) and over a communication channel. The communication channel applies a channel transform to the first signal during transmission. Method 600 also includes, at 624, transmitting a second signal representing a second symbol of the first coded vector to the second communication device and over the communication channel. The communication channel also applies a channel transform to the second signal during transmission. The processor receives (1) a third signal representing a first symbol of the second coding vector and the channel transform (at 626) and (2) a fourth signal representing a second symbol of the second coding vector and the channel transform (at 628) from the second communication device. The processor detects a representation of the effective channel based on the third signal and the fourth signal at 630 and performs singular value decomposition of the representation of the effective channel to identify singular vectors of the representation of the effective channel at 632. Method 600 also includes consulting a codebook of unitary matrices (optionally a publicly accessible codebook) to identify messages associated with the third signal and the fourth signal based on the singular vectors and unitary matrices of the representation of the effective channel at 634.

[0082]

[0092] In some implementations, the method 600 also includes receiving, from the second communication device and at the processor, a plurality of additional signals representing a plurality of additional coded vectors over a communication channel from the second communication device until a predetermined number of messages have been received. Alternatively or additionally, the method 600 also includes detecting, via the processor, a precoding matrix associated with an index of the message, wherein the lookup of the codebook of unitary matrices is based on the precoding matrix.

[0083]

[0093] 7A is a flowchart of a method 700A of creating, generating, and transmitting a signal using a first communication device (such as the signal transmitter 201 shown and described with respect to FIG. 2) in a secure and efficient manner using a UBDM system according to one embodiment. As shown in FIG. 7A, method 700A includes, in step 701A, generating a first coded vector via at least one processor operatively coupled to the first communication device using a first known vector and a unitary matrix. Method 700A further includes, in step 702A, transmitting a signal representing a first symbol of the first coded vector to a second communication device over a communication channel that applies a channel transform to the first symbol during transmission to generate a first transformed symbol. Method 700A further includes, in step 703A, transmitting a signal representing a second symbol of the first coded vector to the second communication device over a communication channel that applies a channel transform to the second symbol during transmission to generate a second transformed symbol.

[0084]

[0094] In some embodiments, a first communication device receives data representing an original signal to be transmitted in a secure and efficient manner. The data may also represent attributes associated with the signal (e.g., information regarding the nature of the signal, the nature of the input bits, the size of the included information, sensitivity, security requirements, etc.). In some cases, a signal transmitter may generate multiple symbols, each described as a pulse in a digital complex baseband signal. In some implementations, the symbols may be waveforms or states that, when transmitted over a communication channel defined in a communication network, may change / modify and / or maintain a state or significant condition of the communication channel such that the state or condition persists for a certain period of time. In some cases, the first communication device may decompose the data into multiple symbols, which may be modified and / or transmitted in parallel using SISO and MIMO transmission systems, as described further below. In some cases, the signal transmitter may use a converter (e.g., converter 214) to convert parallel data to serial data. In some other cases, the signal transmitter may use a converter to convert serial data to parallel data. In some implementations, generating the multiple symbols based on the data may be via a bit-to-symbol map.

[0085]

[0095] In some embodiments, the first communications device is configured to generate a plurality of serial symbols associated with the serial signal and decompose the plurality of serial symbols into a plurality of blocks, each representing a vector from a plurality of vectors, the vectors being encoded and / or transmitted serially using a SISO transmission system described herein. In some instances, the signal transmitter may use a converter (e.g., converter 214 of FIG. 2) to convert the plurality of parallel symbols into the plurality of serial blocks.

[0086]

[0096] In some implementations, the first communication device selects an arbitrary transform configured to be applied to the vectors to generate the plurality of coded vectors based at least in part on the plurality of vectors. For example, the signal transmitter may access a well-known arbitrary transform library including unitary transforms, conformal tight frame (ETF) transforms, and nearly conformal tight frame (NETF) transforms. The signal transmitter may use an arbitrary transform selector (e.g., arbitrary transform selector 215 as shown and described in connection with FIG. 2 ) to select an arbitrary transform (e.g., a unitary transform) to be applied to the plurality of vectors to generate the plurality of coded vectors. In some cases, the arbitrary transform may select a conformal tight frame (ETF) transform, or in some other cases, the arbitrary transform selector may select a nearly conformal tight frame (NETF) transform. In some implementations, the arbitrary transform selector may be configured such that the selected arbitrary transform is based on a matrix that is not an identity matrix or a discrete Fourier matrix. In some implementations, the arbitrary transform selector may be configured such that the selected arbitrary transform is based on a matrix that is not a direct sum of discrete Fourier matrices. The first communications device applies an arbitrary transform to each vector of the plurality of vectors to generate a plurality of encoded vectors. In some instances, applying the arbitrary transform may be performed such that the plurality of encoded vectors have a total magnitude approximately equal to a total magnitude of the plurality of vectors.

[0087]

[0097] In some implementations, a first communication device transmits (e.g., at 702A) a signal representing a first symbol of a first coding vector from a plurality of coding vectors to a second communication device (such as the signal receiver 301 shown and described with respect to FIG. 3) over a communication channel, applying a channel transform to the first symbol during transmission to generate a first transformed symbol. In some cases, the first communication device transmits a signal representing a first symbol of a first coding vector to at least one transmitter antenna for transmission of the signal representing the first coding vector from the at least one antenna to the second communication device. In some cases, the plurality of coding vectors may be configured to be transmitted serially over at least one transmitter antenna associated with the first communication device (e.g., the signal transmitter antenna 217 associated with the signal transmitter 201 shown and described with respect to FIG. 2) and over at least one communication channel. The serially transmitted first coding vector may be received by at least one receiver associated with the UBDM system being used. For example, the at least one receiver may include at least one antenna, the at least one receiver may be associated with a second communication device (e.g., signal receiver 301), and the at least one transmitter antenna may be associated with a first communication device (e.g., signal transmitter 201), and the first communication device and the second communication device are configured to perform single-input single-output (MIMO) operation.

[0088]

[0098] In some implementations, the first communication device transmits (e.g., at 703A) a signal representing a second symbol of the first coding vector to a second communication device (such as the signal receiver 301 shown and described with respect to FIG. 3) over a communication channel, applying a channel transform to the second symbol during transmission to generate a second transformed symbol. In some cases, the first communication device transmits a signal representing the second symbol of the first coding vector to at least one transmitter antenna for transmission of the signal representing the first coding vector from the at least one antenna to the second communication device. In some cases, multiple coding vectors may be configured to be transmitted serially over at least one transmitter antenna associated with the first communication device (e.g., the signal transmitter antenna 217 associated with the signal transmitter 201 shown and described with respect to FIG. 2) and over at least one communication channel. The serially transmitted first coding vectors may be received by at least one receiver associated with the UBDM system being used. For example, at least one receiver may include at least one antenna, the at least one receiver may be associated with a second communication device (e.g., signal receiver 301), and at least one transmitter antenna may be associated with a first communication device (e.g., signal transmitter 201), and the first communication device and the second communication device are configured to perform SISO operation.

[0089]

[0099] In some implementations, the signal includes a set of transformed symbols associated with a first coding vector, and a first communication device (e.g., signal transmitter 201) may place the set of transformed symbols onto a communication channel (e.g., via signal transmitter antenna 217) at a fixed, known symbol rate. A second communication device (e.g., signal receiver 301) may be tasked with detecting the sequence of transformed symbols to reconstruct the first coding vector.

[0090]

[0100] In some implementations, the first communication device can be configured to transmit signals representing the first coded vector to multiple transmitters over a physical layer associated with the open systems interconnection model (OSI). The OSI model is a conceptual model that characterizes and standardizes the communication functions of telecommunications or computer systems, regardless of the underlying internal structure and technology, with the goal of achieving interoperability of diverse communication systems using standard communication protocols. The OSI model uses a division of information exchanged over communication channels of a communication network into abstraction layers (e.g., seven layers). Each layer contains a specific type of information.

[0091]

[0101] For example, a layer may include a physical layer used to transmit and receive raw unstructured data between a signal transmitter and a physical transmission medium (e.g., a wireless communication channel within a communication network, such as communication network 106 shown and described in connection with FIG. 1). A layer is configured to convert data contained in a transmitted signal into an electrical, radio, or optical signal. Layer specifications define characteristics such as voltage levels, timing of voltage changes, physical data rates, maximum transmission distances, modulation schemes, channel access methods, and physical connectors. Layer specifications include wireless device pin layouts, voltages, line impedances, cable specifications, signal timing, and frequencies. Bit rate control occurs at the physical layer, and transmission modes may be defined as simplex, half-duplex, and full-duplex. Physical layer components may be described in terms of network topology. A communication channel used to transmit a signal may have a physical layer specification.

[0092]

[0102] In some cases, the first arbitrary transform is used to generate a first coded vector, and the second arbitrary transform is used to generate a second coded vector. Providing a signal representing the first arbitrary transform and / or the second arbitrary transform may include providing a first signal representing the first arbitrary transform and providing a second signal representing the second arbitrary transform. In some implementations, transmitting the first transformed signal and providing the first signal representing the first arbitrary transform may be to a first receiver associated with the first receiver, and transmitting the second transformed signal generated using the second arbitrary transform and providing the second signal representing the second arbitrary transform may be to 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 arbitrary transform and the second arbitrary transform may be broadcast together to a wide audience including the first and second signal receivers. In some cases, a first signal representing an arbitrary transform may be widely broadcast, but a second signal representing an arbitrary transform may not be widely broadcast, such that a first signal receiver can recover the first coded vector, but a second receiver cannot recover the second coded vector, until a second signal representing a second arbitrary transform is provided or broadcast.

[0093]

[0103] To generate a maximal set of mutually orthogonal spreading codes, a unitary matrix A∈U(N) is chosen such that the n-th column (or row, whichever is appropriate as long as it is consistent) of A is

number

number

number

number

[0094]

[0104] The transmitter sends a symbol b, which is usually a complex number (e.g., double-precision floating point). n ∈C

number

[0095]

[0105] In particular, for multiple access applications where each user is given a subset of the codes, the multiple access application only needs to do O(N) work, which is better than OFDM. This makes DSSS implementations a good choice for multiple access applications.

[0096]

[0106] To obtain a UBDM with a complexity of order O(NlogN) to match the OFDM reinterpretation, the transmitted baud is:

number

number

[0097]

[0107] 7B shows a flowchart illustrating a method 700B (continuing from method 700A of FIG. 7A ) of receiving a first set of signals, extracting information from the first set of signals, and transmitting a second set of signals using a second communications device (such as signal receiver 301 shown and described with respect to FIG. 3 ) in a secure and efficient manner using a UBDM system according to one embodiment. Method 700B may be performed by a processor associated with the second communications device (e.g., signal receiver 301). As shown in FIG. 7B , method 700B includes, at step 701B, receiving a first transformed signal at the second communications device, the first transformed signal including a first transformed symbol. Method 700B further includes, at step 702B, receiving a second transformed signal including a second transformed symbol. Method 700B further includes, at step 703B, constructing a matrix based on the first transformed signal and the second transformed signal. Method 700B further includes, in step 704B, detecting a representation of an effective channel associated with the communication channel based on the matrix. Method 700B further includes, in step 705B, performing singular value decomposition of the representation of the effective channel to identify singular vectors of the representation of the effective channel. Method 700B further includes, in step 706B, selecting a precoding matrix associated with an index of the message for transmission from a codebook of unitary matrices based on the message for transmission. Method 700B further includes, in step 707B, generating a second coded vector based on the second known vector, the precoding matrix, and complex conjugates of the singular vectors. Method 700B further includes, in step 708B, transmitting (1) a signal representing a first symbol of the second coded vector and (2) a signal representing a second symbol of the second coded vector to the first communication device via the communication channel for message identification. Method 700B is described in further detail below.

[0098]

[0108] In some implementations, a second communication device receives (e.g., at 701B) a first transformed signal including a first transformed symbol. The second communication device may include at least one receiver antenna (e.g., signal receiver antenna 317 shown and described with respect to FIG. 3). In some cases, the second communication device receives the first transformed signal representing the first symbol of the first coding vector from at least one receiver antenna for reception of the signal representing the first coding vector from the at least one antenna from the first communication device. In some cases, the multiple coding vectors may be configured to be received serially and via at least one communication channel via at least one receiver antenna associated with the second communication device (e.g., signal receiver antenna 317 associated with signal receiver 301 shown and described with respect to FIG. 3). For example, at least one receiver may include at least one antenna, the at least one receiver may be associated with a second communication device (e.g., signal receiver 301), and at least one transmitter antenna may be associated with a first communication device (e.g., signal transmitter 201), and the first communication device and the second communication device are configured to perform SISO operation.

[0099]

[0109] In some embodiments, the second communication device receives (e.g., at 702B) a second transformed signal including second transformed symbols. In some cases, the second communication device receives a second transformed signal representing second symbols of the first coding vector from at least one receiver antenna for reception of a signal representing the first coding vector from the at least one antenna from the first communication device. In some cases, the multiple coding vectors may be configured to be received serially via at least one receiver antenna associated with the second communication device and via at least one communication channel. For example, the at least one receiver may include at least one antenna, the at least one receiver may be associated with the second communication device (e.g., signal receiver 301), and the at least one transmitter antenna may be associated with the first communication device (e.g., signal transmitter 201), and the first communication device and the second communication device are configured to perform SISO operation.

[0100]

[0110] In some implementations, the second communications device constructs (e.g., at 703B) a matrix based on the first transformed symbols of the first transformed signal and the second transformed symbols of the second transformed signal. In some cases, the second communications device constructs the matrix by arranging elements of the first transformed symbols and the second transformed symbols into a matrix having at least two rows and two columns. The second communications device decomposes the matrix into at least one symbol matrix and a communications channel matrix. At 404B, the second communications device detects a representation of the effective channel based on the matrix and an effective channel associated with the communications channel.

[0101]

[0111] In some implementations, the second communication device performs singular value decomposition (e.g., at 705B) of the representation of the effective channel to identify singular vectors of the representation of the effective channel. In one example, the singular value decomposition may be a factorization of a real or complex matrix (e.g., a factorization of the representation of the effective channel). At 706B, the second communication device selects a precoding matrix associated with an index of the message for transmission from a codebook of unitary matrices based on the message for transmission. The precoding matrix may be selected from a codebook of unitary matrices, which may be publicly available or unavailable.

[0102]

[0112] In some implementations, the second communication device generates a second coded vector based on the second known vector, the precoding matrix, and the complex conjugate of the singular vector (e.g., at 707B). At 708B, the second communication device transmits (1) a signal representing a first symbol of the second coded vector and (2) a signal representing a second symbol of the second coded vector to the first communication device via a communication channel for message identification. The communication channel may have a channel vector h that transforms the coded vector into transformed symbols of the second coded vector.

[0103]

[0113] In some embodiments, a UBDM system (e.g., UBDM system 100) may in some respects resemble in structure and / or function an Orthogonal Frequency Division Multiplexing (OFDM) system. For example, an exemplary pipeline for OFDM system 800A may include a set of operations as shown in FIG. 8A, where vector b represents a set of symbols b n It could be.

[0104]

[0114] In comparison with the OFDM system 800A described above, the operations performed by the UBDM system 800B (e.g., UBDM system 100) described herein are shown in FIG. 8B. The UBDM 800B may include an extra operator (e.g., a linear operator) "A" between the S / P block 802B and the iFFT block as shown in FIG. 8B. In use, according to the exemplary embodiment associated with FIG. 8B, the UBDM 800B performs the "symbol b n are received by the signal transmitter and first passed through a serial-to-parallel block (e.g., a transformer similar to transformer 214 of signal transmitter 201) to generate a transformed set of vectors. The transformed set of vectors is then subjected to a linear transformation A to generate a set of transformed vectors. For example, linear transformation A may be performed by arbitrary transform applicator 803B similar to arbitrary transform selector 216 and selected by an arbitrary transform selector similar to arbitrary transform selector 215. In some embodiments, the transformed vectors are passed through an iFFT block to generate a second transformed vector, and the resulting second transformed vector may be transmitted to one or more receivers in the UBDM system.

[0105]

[0115] In some other embodiments, the iFFT block may be skipped and the transformed vectors generated by the arbitrary transform applicator may be transmitted to one or more receivers in the UBDM system.

number

[0106]

[0116] Following the above description, a signal transmitter and a signal receiver operable with an OFDM system (e.g., OFDM system 800A of FIG. 8A) can be readily adapted for use with the UBDM system described herein, replacing the iFFT operation with an arbitrary transform operation using an FFT with a linear operator A at the transmitter and a linear operator A' at the signal receiver to invert the transform. Other details of the OFDM system can remain the same.

[0107]

[0117] Some embodiments described herein relate to methods. It should be understood that such methods may be computer-implemented methods (e.g., instructions stored in a memory and executed on a processor). While the methods described above indicate some events occurring in a certain order, the ordering of some events may be modified. In addition, some of the events may be performed repeatedly (possibly simultaneously in parallel processing), as well as sequentially as described above. Furthermore, some embodiments may omit one or more described events.

[0108]

[0118] All definitions provided and used herein should be understood to govern dictionary definitions, definitions in documents incorporated by reference, and / or ordinary meanings of the defined terms.

[0109]

[0119] Examples of computer code include, but are not limited to, microcode or microinstructions, machine instructions such as those produced by a compiler, code used to create web services, and files containing high-level instructions that are executed by a computer using an interpreter. For example, embodiments may be implemented using Python, Java, JavaScript, C++, and / or other programming languages and development tools. Additional examples of computer code include, but are not limited to, control signals, encryption code, and compression code.

[0110]

[0120] The accompanying drawings are primarily for illustrative purposes and, therefore, are not intended to limit the scope of the inventive subject matter described herein. The accompanying drawings are not necessarily to scale, and in some instances, various aspects of the subject matter disclosed herein may be shown exaggerated or enlarged in the accompanying drawings to facilitate an understanding of various features. In the accompanying drawings, like reference numerals generally refer to like features (e.g., functionally similar and / or structurally similar elements).

[0111]

[0121] Acts performed as part of the disclosed methods may be ordered in any suitable manner. Thus, even if shown as sequential acts in an exemplary embodiment, embodiments may be constructed in which processes or steps are performed in an order different from that shown, and which may include performing some steps or processes simultaneously. In other words, it should be understood that such features may not necessarily be limited to a particular order of execution; rather, any number of threads, processes, services, servers, etc. may execute, for example, serially, asynchronously, simultaneously, in parallel, concurrently, or synchronously, in a manner consistent with this disclosure. Thus, some of these features may be mutually exclusive, in the sense that they may not exist simultaneously in a single embodiment. Similarly, some features may be applicable to one aspect of novelty but inapplicable to other aspects.

[0112]

[0122] Where a range of values is provided, it is understood that each intervening value between the upper and lower limit of that range (to 1 / 10 of the unit of the lower limit unless the context clearly dictates otherwise), and any other stated or intervening value within that stated range, is encompassed within the disclosure. The upper and lower limits of these subranges may independently be included within the subranges, subject to any specifically excluded limit within the stated range. When the stated range includes one or both of the limits, ranges excluding either or both of those included limits are also included within the disclosure.

[0113]

[0123] The term "and / or," as used in the specification and embodiments, should be understood to mean "either or both" of the elements so conjoined (i.e., elements present in a conjoined state in some cases and present in a disjointed state in other cases). Multiple elements listed with "and / or" should be construed in the same manner (i.e., to mean "one or more" of the elements so conjoined). Other elements other than the elements specifically identified by the term "and / or" may optionally be present, whether related or unrelated to the elements specifically identified. Thus, as a non-limiting example, a reference to "A and / or B," when used with open language such as "comprising," may, in one embodiment, refer to A only (optionally including elements other than B); in another embodiment, refer to B only (optionally including elements other than A); in yet another embodiment, refer to both A and B (optionally including other elements), and so forth.

[0114]

[0124] As used herein and in the embodiments, "or" should be understood to have the same meaning as "and / or" as defined above. For example, when separating items in a list, "or" or "and / or" shall be interpreted as inclusive (i.e., the inclusion of at least one, but also including more than one, of a number of elements or list thereof, and optionally additional unlisted items). Terms expressly stated to the contrary (such as "only one of" or "exactly one of") or the term "consisting of" when used in the embodiments only refer to the inclusion of exactly one element of a number of elements or list thereof. In general, the term "or" as used herein shall only be interpreted to indicate exclusive alternatives (i.e., "one or the other, but not both") when preceded by exclusive terms such as "either," "one of," "only one of," or "exactly one of." "Consisting essentially of," as used in the embodiments, shall have its ordinary meaning as used in the field of patent law.

[0115]

[0125] As used herein and in the embodiments, the phrase "at least one" in reference to a list of one or more elements should be understood to mean at least one element selected from any one or more of the elements in the list of elements, but not necessarily including at least one of each and every element specifically listed in the list of elements, and not excluding any combinations of elements in the list of elements. This definition also allows for elements other than the element specifically identified in the list of elements (to which the phrase "at least one" refers), whether related or unrelated to the element specifically identified, may optionally be present. Thus, as a non-limiting example, "at least one of A and B" (or, equivalently, "at least one of A or B," or, equivalently, "at least one of A and / or B") can refer in one embodiment to at least one A (optionally including more than one) with no B present (and optionally including elements other than B); in another embodiment, to at least one B (optionally including more than one) with no A present (and optionally including elements other than A); in yet another embodiment, to at least one A (optionally including more than one) and at least one B (optionally including more than one) (and optionally including other elements); and so forth.

[0116]

[0126] In the above specification as well as in the embodiments, all transitional phrases such as "comprise," "carry," "have," "including," "involve," "hold," "consisting of," etc. are understood to be open-ended (i.e., meaning including but not limited to). Only the transitional phrases "consisting of" and "consisting essentially of" shall be closed or semi-closed transitional phrases, respectively, as set forth in Section 2111.03 of the United States Patent Office Manual of Patent Examining Procedures.

Claims

1. a first antenna of a first communication device having access to a codebook of unitary matrices; a second antenna of a second communication device that has access to said codebook of unitary matrices; at least one processor operably coupled to the first communications device, the at least one processor of the first communications device: generating a first encoded vector using the first known vector and the unitary matrix; transmitting a signal representing a first symbol of the first coded vector via the first antenna at a first time over a communication channel to the second communication device, the communication channel applying a channel transform to the first symbol during transmission to generate a first transformed symbol; and transmitting a signal representing a second symbol of the first coded vector via the first antenna at a second time to the second communication device over a communication channel that applies a channel transform to the second symbol during transmission to generate a second transformed symbol; at least one processor configured to: at least one processor operably coupled to the second communications device, the at least one processor of the second communications device: receiving, via the second antenna, a first transformed signal including the first transformed symbols; receiving, via the second antenna, a second transformed signal including the second transformed symbols; constructing a matrix based on the first transformed signal and the second transformed signal; determining a representation of an effective channel associated with the communication channel based on the matrix; performing a singular value decomposition of the representation of the effective channel to identify singular vectors of the representation of the effective channel; selecting a precoding matrix associated with an index of a message for transmission from the codebook of unitary matrices based on the message for transmission; generating a second coded vector based on a second known vector, the precoding matrix, and a complex conjugate of the singular vector; and and transmitting, via the second antenna, (1) a signal representing a first symbol of the second coded vector and (2) a signal representing a second symbol of the second coded vector over the communication channel to the first communication device for identifying the message. at least one processor configured to A system including:

2. The at least one processor operably coupled to the second communication device: multiplying the complex conjugates of the singular vectors by the precoding matrix to generate intermediate matrices; and multiplying the intermediate matrix by a training value to generate the second encoded vector. The system of claim 1 , configured to generate the second encoded vector by:

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

4. the precoding matrix is a first precoding matrix, the message is a first message, and the index is a first index, and the at least one processor operably coupled to the second communication device: selecting a second precoding matrix associated with a second index of a second message for transmission from the codebook of unitary matrices; generating a third coded vector based on a third known vector, the second precoding matrix, and a complex conjugate of the singular vector; and (1) transmitting a signal representing a first symbol of the third coded vector and (2) a signal representing a second symbol of the third coded vector over the communication channel to the first communication device for identifying the second message. The system of claim 1 further configured to:

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

6. a first communications device having access to a codebook of unitary matrices; a second communications device having access to said codebook of unitary matrices; at least one processor operably coupled to the first communications device, the at least one processor of the first communications device: generating a first encoded vector using the first known vector and the unitary matrix; transmitting a signal representing a first symbol of the first coded vector to the second communication device over a communication channel that applies a channel transformation to the first symbol during transmission; and transmitting a signal representing a second symbol of the first coded vector to the second communication device over a communication channel that applies a channel transformation to the second symbol during transmission; at least one processor configured to: at least one processor operably coupled to the second communications device, the at least one processor of the second communications device: receiving a first transformed signal including a version of the first symbol transformed by the channel transform; receiving a second transformed signal including a version of the second symbol transformed by the channel transform; constructing a matrix based on the first transformed signal and the second transformed signal; determining a representation of an effective channel associated with the communication channel based on the matrix; performing a singular value decomposition of the representation of the effective channels to identify left singular vectors of the representation of the effective channels and right singular vectors of the representation of the effective channels; selecting, based on a message for transmission, a precoding matrix from the codebook of unitary matrices that is associated with an index of the message for transmission; generating a second coded vector based on a second known vector, the precoding matrix, the complex conjugates of the left singular vectors, and the right singular vectors of the representation of the effective channel; and (1) transmitting a signal representing a first symbol of the second coded vector and (2) a signal representing a second symbol of the second coded vector over the communication channel to the first communication device for identifying the message. at least one processor configured to A system including:

7. The at least one processor operably coupled to the second communication device: multiplying the complex conjugate of the left singular vector by the precoding matrix to generate an intermediate matrix; and multiplying the intermediate matrix by the right singular vectors of the representation of the effective channel to generate the second coded vector. The system of claim 6 , configured to generate the second encoded vector by:

8. The system of claim 6 , wherein the codebook of unitary matrices is publicly accessible.

9. the precoding matrix is a first precoding matrix, the message is a first message, and the index is a first index, and the at least one processor operably coupled to the second communication device: selecting a second precoding matrix associated with a second index of a second message for transmission from the codebook of unitary matrices; generating a third coded 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 (1) transmitting a signal representing a first symbol of the third coded vector and (2) a signal representing a second symbol of the third coded vector over the communication channel to the first communication device for identifying the second message. The system of claim 6 further configured to:

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

11. The at least one processor operably coupled to the first communication device: receiving a third transformed signal including a version of the first symbol of the second coded vector transformed by the channel transform; and further configured to receive a fourth transformed signal comprising versions of the second symbols of the second coded vector transformed by the channel transform; 7. The system of claim 6, wherein identifying the message comprises removing a representation of the right singular vector of the representation of the effective channel from each of the third transformed signal and the fourth transformed signal.

12. receiving, via a first communication device and at a first processor, a first signal representing a first symbol of a first coded vector and a channel transform; receiving, via the first communications device and at the first processor, a second signal representing a second symbol of the first coded vector and a channel transform; detecting, via the first processor, a representation of an effective channel based on the first signal and the second signal; performing, via the first processor, a singular value decomposition of the representation of the effective channels to identify left singular vectors of the representation of the effective channels and right singular vectors of the representation of the effective channels; selecting, via the first processor, a precoding matrix associated with an index of a message for transmission from a codebook of unitary matrices; generating, via the first processor, a second coded vector based on a second known vector, the precoding matrix, the complex conjugate of the left singular vector of the representation of the effective channel, and the right singular vector; transmitting (1) a signal representing a first symbol of the second coded vector and (2) a signal representing a second symbol of the second coded vector over a communication channel to a second communication device for identification of the message in a second processor associated with the second communication device; A method comprising:

13. Generating the second encoded vector includes: multiplying the complex conjugates of the left singular vectors by the precoding matrix to generate intermediate matrices; multiplying the intermediate matrix by the right singular vectors of the representation of the effective channel to generate the second coded vector; 13. The method of claim 12, comprising:

14. The method of claim 12 , wherein the codebook of unitary matrices is publicly accessible.

15. 13. The method of claim 12, wherein the precoding matrix is a first precoding matrix, the message is a first message, and the index is a first index, the method further comprising: selecting a second precoding matrix associated with a second index of a second message for transmission from the codebook of unitary matrices; generating a third coded vector based on a third known vector, the second precoding matrix, complex conjugates of the left singular vectors of the representation of the effective channel, and the right singular vectors; transmitting a signal representing the third coded vector to the second communication device over the communication channel for identification of the second message; A method comprising:

16. 13. The method of claim 12, further comprising transmitting signals representing a plurality of additional coded vectors over the communication channel to the second communication device until a predetermined number of messages have been transmitted.

17. A method for generating a first encoded vector in a processor of a first communications device using a known vector and a unitary matrix; transmitting a first signal representing a first symbol of the first coded vector to a second communication device over a communication channel at a first time via a single antenna of the first communication device, the communication channel applying a channel transform to the first signal during transmission; transmitting a second signal representing a second symbol of the first coded vector to the second communication device over the communication channel at a second time via the single antenna, the second signal applying a channel transform to the second signal during transmission; receiving, via the single antenna, from the second communication device and at the processor, a third signal representing a first symbol of a second coded vector and the channel transform; receiving, via the single antenna, from the second communication device and at the processor, a fourth signal representing second symbols of the second coded vector and the channel transform; detecting, via the processor, a representation of an effective channel based on the third signal and the fourth signal; performing, via the processor, a singular value decomposition of the representation of the effective channel to identify singular vectors of the representation of the effective channel; consulting a codebook of unitary matrices based on the singular vectors and the unitary matrices of the representation of the effective channel to identify messages associated with the third signal and the fourth signal; A method comprising:

18. The method of claim 17 , wherein the codebook of unitary matrices is publicly accessible.

19. 20. The method of claim 17, further comprising receiving, from the second communication device and at the processor, a plurality of additional signals representing a plurality of additional coded vectors over the communication channel from the second communication device until a predetermined number of messages has been received.

20. and detecting, via the processor, a precoding matrix associated with an index of the message; The method of claim 17 , wherein the querying of the codebook of unitary matrices is based on the precoding matrix.

Citation Information

Patent Citations

  • Signal transmission method and device

    JP2019513327A

  • Precoding-Codebook-Based Secure Uplink in LTE

    US20150049713A1