[hobby] [notes] [sdr] [spam] was Re: SDR projects have been developing
I'm pretty sure you could use ICA and adaptive subsampling to make a cheap realtime image of your local radio environment with one of these. Could also a dish antenna on the gymbal to not need ICA. This would help enough in reusably describing shielded rooms that I'm still trying to move forward on it, after all these years.
The imu is essentially a stream of data. The timing of this stream can be roughly calibrated by comparing with radio and motor data. (Motor changes, then either radio or imu changes, then the other.) With the imu seen as a stream, we can constantly slew the motors around regions of interest to acquire data with a high degree of orientation variability. Here you could train an ML algorithm around the antenna's response, but I'm not used to that for now. ICA is a form of blind source separation that uses matrices. For simplification, we bucket the imu values, each one a separate vector of data from the radios. The radio vectors all have holes in their data, but at first we only care about what the sources are, not what data they are sending, so we store each radio vector as a single FFT, averaged from all recordings in that bucket. Now the data matrix can be seen as a single audio source, with a huge number of "ears" each receiving a single spectrogram as their "sound". Blind source separation (ICA, unmixing) remixes the data in such a way that multiply recorded signals cancel each other out, producing as many clear independent signals as their were original recording channels. After the ICA unmixing, a matrix is produced that holds the weight of every contributing channel. Because this matrix is the contribution of every angle of recording to every extracted signal, each column shows the spherical responsivity of the antenna and cymbal setup, shifted to be centered around each different source. The antenna response function of angle could be extracted by aligning and averaging all the columns. In fact, aligning them is needed to identify the direction of the sources. There are a _lot_ of unaddressed concerns that will likely require some algorithmic redesign. It is just one approach. But it is valuable to have the IMU data be densely available as a stream, if possible. It is also valuable to support continous rotation drive motors. Alignment of signals to calculate the antenna response or calibrate the streams could be done by simpy looking for the maximum of the sliding absolute difference or product. Metrics aiding in the indication of poor data would likely be very helpful. Approaches like this only work in the regions of data where they are valid. I did not fully edit this to include further parts.
The imu is essentially a stream of data. The timing of this stream can be roughly calibrated by comparing with radio and motor data. (Motor changes, then either radio or imu changes, then the other.)
With the idea of sliding comparison, you might transform this data to look at absolute magnitude of change over time, and normalise it. Reviewing and comparing the streams as a visual graph would help inform whether or not they are then automatically correlatable. So, you'd make a calibration test function that produces short bursts of graphable data around instigating motion. Then you'd make the calibration function itself, but you'd keep the test function so that people could use it to troubleshoot issues they run it.
Ideally something like nyansat would offer an interface usable in gnuradio or pothos, where the imu is a receiving stream of some sort, and the gymbal motors are a transmitting stream of some sort. This would facilitate synergy with work in other areas, reducing many hours and lost interest from boilerplate work or unavailable options.
Something to be prepared for when pursuing something like this is signals being diversely reflected and transformed, which could make it frustrating to identify them coming from one single source, unless say there is a clear path to it. This can likely be handled in a similar manner, and I'm sure somebody with actual experience in the domain would be pretty familiar with doing so. All problems are solvable but we have to start with the ones in front of us to get anywhete. ICA is a pretty old form of source separation and doesn't handle timeshifting or media that cause nonlinear transformations. Still may be good enough if used in an informed way with a willingness to transform the data to look like plain linear mixing.
I'm thinking on this a little more and wondering if you could just solve for the antenny response vector on one hug matrix equation, without even using ICA. I dunno, I'm confused. I wish I were implementing this instead of posting it. It's been casually in my head for years. I don't like being brainwashed to believe I am a terrorist. I spent my life caring deeply for everyone and yearning to prevent harm. I have nothing against the right wing, there just weren't any rightwingers in my family so I never learned about it.
- new bno055 imu boards have a "stemma qt" jst plug on them that could be used to simplify wiring and reduce possible damage - there is likely an i2c usb dongle somewhere out there. using something like that could make a setup run on an arbitrary system like a desktop or a phone - given there is an imu, the gymbal could be optional to reduce price. Data could be collected from the user sweeping their hand around. The computer could guide where to aim the antenna via feedback if there is no gymbal. - phones of course have imus too; a user could affix their phone to an antenna plugged into it
[spam] I thought I already was posting against my will, but now it's like another bubble of struggle inside that. I'm not a real special agent or anything, obviously. It was just a weird thing to say some time ago. I ran into "classified" technology many years ago and have been losing my mind severely, obviously. I'm aware of hundreds of other people in that situation. A cheap imu has too much drift to be a good source of truth on its own. So you need like a gymbal or the phone camera. There are free visual-inertial-odometry software systems that can get highly accurate location data from a camera and an imu. They are used for drones and 3d mapping. I'm not a radio engineer, but if I wanted to send an undetectable radio signal, I would measure noise already being scattered by my equipment, and emit rare signals that appeared to be that noise without amplifying it. The other party would know the timing and incoming direction of my signals, and integrate them to amplify my signal over the real noise. You could also split your weak noise into different parts to be reconstructed together from how they interfered at the receiver. Usually when I think of anonymous radio I just think of putting a transmitter somewhere distant from its owner. Seems simplest. To start a covert communication project, I would try to just demodulate any old signal you send to yourself. Make sure you understand working with the raw i/q data so you can do tricks later to hide it. I'm guessing it might work fine if you think of EM as being complex-valued sinusoids that fill space and get summed by antennas, but don't mistake those numbers for being the electric and magnetic field components, they're just the electric voltages at your antenna sampled in such a way that they can be frequency shifted with an fft. Then set up a shared key, synchronise your transmitter and receiver clocks, and send secret messages by tuning at cryptographically determined times. Then make your data signal a little too weak to be received, but send redundant data, and recover the data at the receiver by summing the redundant timepoints together so that the signals add and the noise cancels. Then work on making your signal be indistinguishable from existing signals unless you are the intended recipient, even if an adversary knows exactly what you are doing. I'm not a cryptographer, but it seems if there were some cryptographic function that worked like xor or a stream cipher, but sustained its properties under different linear transformations of each datapoint, such that data could be recovered after decryption of data transformed into noise if the linear transformations were then inverted, it would be incredibly helpful. Then you could decrypt redundant noise and combine it to amplify a signal. Decrypting the signal after amplification leaves a path for others to identify the redundancy in the air. add to and organise gnuradio
Re: linear-transform-decryption You could handle the linear transform issue by having part of the timing agreement be ordering agreement, such that each redundant stream sends data in a different cryptographic order. Then only the recipient of the data can recombine them by reordering each one properly. In the end, nobody who would harm another, can hide from the people. But it takes a long time to get there.
When testing the electability of a signal, remember that no object is anonymous in EM. What you are hiding is your message, not your radio. So you would get a radio with high enough sample rate and sensitivity to profile the emissions of your transmitter to your specific transmitter, and see if your burst profiles could be reconstructed to recover the encrypted streams. Only somebody like a military specialist would ever be able to compromise a signal that way, of course.
Over the past years I have found a small handful of books and such containing information on electromagnetic security. I expect there are more out there now.
There are probably a lot of papers on topics of electromagnetic security. I think I found 1 once. It has hard for me to engage in the task of reviewing many things.
I have some books digitally archived, but with a focus on shielding rather than covert communications. I prefer to reduce the problem domain than to handle its details first, smaller error space. I would love to share that archive but have not succeeded yet. It is small.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 hello Karl, replies in the clear below, as usual :) ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐ On Wednesday, May 5, 2021 11:14 AM, Karl <gmkarl@gmail.com> wrote:
I have some books digitally archived, but with a focus on shielding rather than covert communications...
this is EMSEC (emissions security) you can play with it youself, speaking of SDR :P https://github.com/martinmarinov/TempestSDR the set of references, sources, and external links on wikipedia is also a fount of information: https://en.wikipedia.org/wiki/Tempest_(codename) enjoy! best regards, -----BEGIN PGP SIGNATURE----- iNUEAREKAH0WIQRBwSuMMH1+IZiqV4FlqEfnwrk4DAUCYJL/L18UgAAAAAAuAChp c3N1ZXItZnByQG5vdGF0aW9ucy5vcGVucGdwLmZpZnRoaG9yc2VtYW4ubmV0NDFD MTJCOEMzMDdEN0UyMTk4QUE1NzgxNjVBODQ3RTdDMkI5MzgwQwAKCRBlqEfnwrk4 DIACAP4kC+rW41i3eevP9FiLJi7Szi9J6rUT/5/ZYdA321+mngD/QIKdbboduMmr 8bQtm4nUUFKA06SrYhUUgcgMNuSRgp8= =HVPu -----END PGP SIGNATURE-----
On Wed, May 5, 2021, 4:26 PM coderman <coderman@protonmail.com> wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512
hello Karl, replies in the clear below, as usual :)
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐ On Wednesday, May 5, 2021 11:14 AM, Karl <gmkarl@gmail.com> wrote:
I have some books digitally archived, but with a focus on shielding rather than covert communications...
this is EMSEC (emissions security)
you can play with it youself, speaking of SDR :P
Your challenge is to understand things well enough to do this with an rtl-sdr, which is quite possible given a screen refreshes so many times per second. If you can do that, you can make a commonplace device that reveals the displays of surrounding other devices. This will get people actually acting on this severe issue, rather than pretending it is safer to hide it. Try to sniff something else too, so people don't think that encrypting and shielding their display signals resolves the situation. We need shielded spaces to do secure work in, or we do not have a democracy, in this digital age. the set of references, sources, and external links on wikipedia
is also a fount of information:
Woah either I've never visited that article before or it's been improved a lot in the past few years!
enjoy!
best regards,
-----BEGIN PGP SIGNATURE-----
iNUEAREKAH0WIQRBwSuMMH1+IZiqV4FlqEfnwrk4DAUCYJL/L18UgAAAAAAuAChp c3N1ZXItZnByQG5vdGF0aW9ucy5vcGVucGdwLmZpZnRoaG9yc2VtYW4ubmV0NDFD MTJCOEMzMDdEN0UyMTk4QUE1NzgxNjVBODQ3RTdDMkI5MzgwQwAKCRBlqEfnwrk4 DIACAP4kC+rW41i3eevP9FiLJi7Szi9J6rUT/5/ZYdA321+mngD/QIKdbboduMmr 8bQtm4nUUFKA06SrYhUUgcgMNuSRgp8= =HVPu -----END PGP SIGNATURE-----
participants (2)
-
coderman
-
Karl