16 September 2019

CIS Makhovik (T-230) in CIS-12 and PSK2/1200bps waveforms

Recently my friend KarapuZ gave me the chance to analyze a CIS-12 bitstream and I took the opportunity to wotk on the "format" of Makhovik and then compare the CIS-12 stream with other Makhovik  streams coming from PSK2/1200bps modulations. The results are rather interesting even if the lack of official documentation and the number of available samples do not allow any exact classification but only hypotheses.

Makhovik (the "flywheel") is a well known Soviet-Mil crypto system also used by The National People's Army of the former German Democratic Republic (NVA, Nationale Volksarmee). Although someone classifies Makhovik as vocoder, it can can be used for time-multiplexed encryption of both voice and data up to 9600 bps. It's official name is "T-230 bundle ciphering device for teleprinter and data connections" and was designed to operate in UHF but very often is found in LF and in HF.
T-230 main unit (Fig. 1) consists of four slots:
AT-3002M multi-channel modem for LF channels,
AT-3004D multi-channel modem for HF channels (CIS-12 waveform, also known as MS5 or "Fire"),
AT-3001M voice scrambler (five per unit system maximum),
AT-3025 signaling unit and pager (two per device system).
The T-230-1A is a single-channel version of the T-230. The device contains the cipher, modem and radio as well the vocoder. The system is constructed with 3 modules / blocks and provides  two 1200bps channels in its basic configuration. Several T-230-1A can be used in stationary operation with the modem of the multi-channel variant, AT-3002 and AT-3004D. 8 keys can be set for a maximum of 8 subscriber networks.

Fig.1 - a T-230 system
AT-3004D/AT-3104 (CIS-12)
CIS-12 is a pseudo OFDM 12-tone (+ 1 pilot) waveform using PSK2 or PSK4 modulation at speed of 120 Baud while the modem name is AT-3004D (or its newer counterpart AT-3104). Channels 1-10 are used for data, 11 and 12 are test/service channels, therefore the "aggregate" speed is 1200 Baud (just as the baudrate of the waveform of T-230-1A system).
The structure of the preamble (Fig. 2) in some way resembles the one described in MIL 188-220 Appendix D, "standards for COMSEC transmissions": I refer to that terminology just for the sake of clarity and to better illustrate my guess, as said there is no confirm about it. 

Fig.2 - CIS-12 Makhovik
The two "frame sync" blocks consist of the 15 bits repeating pattern "000010100110111" (or "111101011001000" according to the polarity).
The block bewteen the two frame sync blocks is the more interesting (Fig. 3). It consists of 511 bits long pseudo-random sequences generated by the primitive polynomial x^9+x^5+1 [1], thus meeting with ITU Recommendation O.153 [2]. This pattern is primarily intended for error measurements at bitrates up to 14.4 kbit/s. Anyway, 511-bit length sequences are also used for synchronization purposes as in 188-110B "39-tone parallel mode" (see Appendix B #5.4.3). Since the 511-bit block is not reinserted, I tend to think that it's used to sync the receive side (the modem or the crypto device). It's worth noting that although ITU O.153 reports that the longest sequence of ZEROs is 8 (non-inverted signal), I found some sequences with a greater length: maybe it can depend on the OFDM demodulator or the quality of the signal, or maybe the used sequences are not fully ITU O.153 compliant.

Fig.3 - CIS-12 511-bit sequences
Finally, what I call here as the "Message Indicator" is a 720-bit long block consisting of 8-time triplicate 30-bit sequences. This part is composed of eight strings of 30 bits and each string is repeated 3 times (Fig. 4). The x3 redundancy, as well as in other krypto device as KG-84, is used to improve the accuracy and realiability of the reception. Encrypted data follow this block.

Fig.4 - CIS-12 720-bit MI
T-230-1A (PSK2 1200bps)
The same blocks (sync,511,MI), with a different arrangement, can be observed in a full sample of a PSK2 1200bps (file "_b" in the downloadable zip archive). In this case the 15-bit sync pattern is reinserted several times as well as the MI blocks (Fig. 5).

Fig.5 - T-230-1A Makhovik
In my archive I found other samples that presumably are attributable to T-230-1A (files "_a" and "_c" in the downloadable zip archive): unfortunately I went late on these transmissions therefore it was not possible to examine their preamble.
In these samples (Fig. 6) the 15-bit sync frame block is missing but, as I specified, it could be inserted at the start of the transmission. A second interesting feature is the use of sequences of 511 bits of length BUT which are not originated by the polynomial x^9+x^5+1! 
 
Fig.6 - other PSK2 1200bps samples with Makhovik format

All the three PSK2 samples anyway have the same 30-bit MI structure as the one seen in CIS-12 (Fig. 7)


Fig.7 - 30-bit MI blocks

I would like to point out that this post does not claim to provide a description of the Makhovik encryption protocol but is just limited to the presentation of results obtained from the analysis of some samples: further (many) recordings are needed as well as tips and help from friends.

https://yadi.sk/d/j9HShkWFQo5z9g


[1] https://en.wikipedia.org/wiki/Linear-feedback_shift_register
[2] https://www.itu.int/rec/T-REC-O.153/en

10 September 2019

STANAG-4285, async Turkish "T-15"

05300.0 KHz/USB (intruding the 60mt amateur band), Turkish Mil prob. from Izmir area, TUR. STANAG-4285 600bps/L carryng async 5N1.5 (Turkish "T-15") stream: most likely encrypted pseudo-random naval broadcast since after removal of start/stop bits the resulting 5-bit stream does not autocorrelate (ACF = 0). A similar S4285 transmission but with 15/128 bits length period has already been reported here.
Notice that "T-15" is not an official name nor a well-known name: it's just a nickname I use in this blog to refer to this Turkish 15-bit format.

 



Signals and recordings gathered thanks to KiwiSDRs: kiwisdr.yo3iul.ro, sdr.ok2kyj.cz.

update

I gladly add a comment from my friend Valentin (cryptomaster): "The encrypted information was transmitted in "start-stop" mode with a 5-bit code with the addition of 1 bit - "start" and 1.5 bit stop. Since the transmitting equipment is designed to transmit an integer number of bits, the two halves of the code accumulated during the transmission are added up to one additional bit (0.5 + 0.5 = 1). Thus, a period of 15 bits is obtained.
The 5-bit code statistics are uniform, which confirms the use of encryption." 



26 August 2019

6 KHz wideband OFDM-160 PSK2/QAM-16

6 KHz wideband OFDM-160 30.469 Bd/37.5 Hz PSK2 & QAM-16 spotted on 10342 KHz (CF), probably it's connectd to the OFDM-80 seen a few days ago. Some packages of this  transmission have PSK2 modulation, other QAM-16. ACF of the transfers is equal to zero. As suggested by my friend KarapuZ, for a correct analysis it is necessary to load only the central body of a package excluding preamble and trailer.
Friends from radioscanner.ru have noticed versions of this OFDM with QPSK, PSK8, and QAM-32 modulations in the channels.



Transfers begin and end with short MFSK sessions although they are shifted upwards with respect to the central frequency of the OFDM. Don't know if the MFSK waveforms are used for link establishment or for other communication-oriented signaling.


23 August 2019

CIS-75 FSK 75Bd/250, LFSR 128-bit sequence (tentative)

This post is a follow-on of the previous one and shows some findings due to the collaboration between myself and my friend Valentin (cryptomaster).

We saw that CIS-75 uses a 128-bit length pseudo-random sequence which is inserted repeatedly in the data stream probably to re-sync the receive modem. As it turned out, the sequence is transmitted in positive and negative polarity according to an alternation  of patterns which are easily identifiable by inspecting the stream with a window of 385 bits width (Fig. 1)

10101011010100010100110100000100101100010000110010000001101011110100100100011100111000001110100011011000011110111011001100000000

Fig. 1 - sequences patterns
The sequence positions emerge after descrambling the stream using either the x^8+x^6+x+1 polynomial or the x^9+x^8+x^7+x^6+x^2+1 polynomial (Fig. 2): since they are not primitive polynomials the 128-bit sequence can't be considered as an m-sequence [1] but rather a scrambler sequence. Notice that the descrambled streams show opposite polarity.

Fig. 2 - descrambled stream
The sequences (the positive and negative one) have the interesting property of being both parts of the same 256-bit sequence generated by the polynomial 9,8,7,6,2 ...subject to some errors that apparently have been added to the sequence in order to complicate its analysis.

1110010011110000100010011001111111101010110101000101001101000001
0010110001000011001000000110101111010010010001110011100000111010
0011011000011110111011001100000000101010010101110101100101111101
1010011101111001101111110010100001011011011100011000111110001000


Interestingly, if the stream is decoded in differential mode the sequence changes its length to 127 bits and acquires only one polarity (Fig. 3): in this case both the descrambler polynomials 8,6,1 and 9,8,7,6,2 are suitable (Fig. 4).

Fig. 3 - sequences in the diff. decoded stream
Fig. 4
We also saw that syncing the diff. stream, the sequences appear in regular positions so that they could also be used to separate data blocks, but it's just our guess (Fig. 5).

Fig. 5 - sinched stream
During one of his monitorings, Valentin caugth an interesting transmission: after a stop the only "space" frequency was emitted for a long time and then followed by a short-term transmission (~ 3 sec). The signal contains the 128-bit sequence that we discovered and another 114-bit sequence repeating in the stream: the most interesting thing is that also that sequence is a consequence of the mentioned scramblers (Fig. 6 shows the descrambled stream).

Fig. 6


By the way... just another feature: when the modem works in idle mode the speed is set to 100 Bd (Fig. 7). Actually, in idle mode a "meander" is transmitted with a frequency of 50 Hz. The source of this frequency is a 50 Hz AC network. The meander is used to correctly configure the correspondent station, as well as to ensure that no one else occupies the HF frequency.
Notice that 50 Hz frequency originates a 100 bps stream: "1" value during the positive period (the first half cycle) and "0" value during the negative period (the second half of the cycle): if considered as speed, then it is 100 bps. 


Fig. 7

CIS-75_stream.bin
CIS-75_diff_stream.bin
Short_75-250.wav
izh.swl.su_2019-08-15T09_38_31Z_9187.00_usb_idling.wav

[1] http://www2.siit.tu.ac.th/...m-sequence.pdf

Signals for analysis was mostly gathered thanks to the KiwiSDRs:
http://sdr.ok2kyj.cz:8073/   (Pohorany near Olomouc, Czech Republic)
http://r3tio.proxy.kiwisdr.com:8073/  (Nizhny Novgorod, Russia)
http://kiwi-kuo.aprs.fi:8073/  (Kuopio, Finland)

20 August 2019

OFDM-80 30Bd/37.5Hz

Unid (to me) OFDM 80-tones 30Bd/37.5Hz K=1/4, spotted with good SNR on 9400 KHz (cf) and resampled to 9600 Hz.

Fig. 1
Some channels show a clear PSK2 modulation while in other channels I could not successfully detect the used modulation (looks like a differential PSK but I could be wrong).

Fig. 2 - observed modulations
Data seem to be sent in blocks while the ACF of the transfer is 133.4 ms with a bit of instability which is probably due to the observed modulations in the channels (see Fig. 2). Since the aggregate speed of 2400 symbols/sec (30x80), the ACF value reveals a 320-symbols length frames. 

Fig. 3
The signal was recorded using the KiwiSDR http://sdr.ok2kyj.cz:8073/ (Pohorany near Olomouc, Czech Republic).

14 August 2019

CIS-75 FSK 75Bd/250

CIS-75-75/250  is a Russian/CIS system supposed in use by Military in HF. As its name, this system use F1B modulation with 250 Hz shift and 75 bps speed, most likely a broadcast with linear encryption (ACF=0). The transmission was heard today on 9188 KHz (cf), operating continuously from the first morning. It's worth noting that during the days back, while I was monitoring the Swiss-MIL on 9187 KHz/USB, this FSK signal was not present: maybe 9188 KHz is not a primary channel, but it's a my guess.


According to several TDoA localizations, the site of Tx is in the area of Moscow.


kiwi-kuo.aprs.fi_2019-08-14T13_08_37Z_9188.00_iq.wav

13 August 2019

Defence Australia 188-110 Serial transmissions

The Australian 188-110A Serial running on 14385.0 KHz/USB (600bps KW-46/KIV-7M secured broadcast) and 10407.0 KHz/USB (2400bps 1536-bit TDM protocol), already discussed here, are most likely originated from Defence Australia Tx sites which are located in North West Cape (Exmouth) and Townsville (Bohle River).



18 July 2019

KG-STV MSK 1200Bd/600 (via Qatar-OSCAR 100)

KG-STV is a digital SSTV system developed by JJ0OBZ (K.G. from Japan). Unlike the analog SSTV, which scans the image line by line, KG scans the image in blocks of 16x16 pixels, i.e. 15 scan lines each conisting of 20 blocks of 16x16 pixels, that during transmission are compressed and digitally encoded one by one.The image has also one of the formats used in SSTV, which is 320 by 240 pixels. The 300 blocks of the image are transmitted fropm left to right and from top to bottom. The reception can be made at any time during transmission as in analog SSTV [1].
KG-STV is also the nome of the experimental program coded by JJ0OBZ to transfer digital images and short text-based messages [2].

Fig. 1
The program allows to use one of two types of digital modulation: MSK and 4LFSK. In MSK, KSG forward to 1200 Baud (equivalent in this case of MSK, 1200 bps) and the frequency of marks and spaces are 1800 and 1200 Hz respectively (4LFSK: '00 '1200Hz, '01' 1400Hz, '10' 1600Hz, '11' 1800Hz).
The 4LFSK is a version of 4 levels of MSK, and therefore carries twice as many bits, ie with the same 1200 Baud, transmits 2400 bits per second, but requires a channel with less noise. The transmission can be done with Viterbi convolutional code error correction (NASA standard K = 7 convolutional), but in this case the transmission is obviously more time consuming (almost twice as long).

KG uses a synchronization sequence of 63 bits: 
000011100001001000110110010110101110111100110001010100111111010

and a scrambling pseudo random sequence of 127 bits (polynomial x^21+x^3+1):
1110110011000100100111001111100100000100011010101001101101001010
000101100001100101111111010110111011110001110100010101110000001

Fig. 2
Fig. 3
Although KG-STV can be seen on amateur SSTV bands (3733, 7173, and 14233 kHz), I tuned it on 10.496,25 GHz (Fig. 1) via AMSAT P4-A transponder on Qatar-OSCAR 100 (Es’hail-2), the first geostationary amateur radio transponder: more precisely I used the Qatar-OSCAR 100 Narrowband WebSDR [3] since I'm not equipeed for satellite receptions :).



10 July 2019

what a blunder :)

some days ago I went on a S4285 modem running on 4271.0 KHz/USB in 600bps/L submode. Bitstream after demodulation showed a 2163-bit length period: clearly a test tape. Once reshaped, an asynchronous transmission appeared and I thought of a strange 6N1 framing!!!
It was thaks to @swlfrance Nicolas (and later AngazU) that I understood my mistake: actually it was a common ITA2 5E1 framing used in this case by French Ny HQ FUJ in Port des Galets, Nouméa.
Anyway, it was the first time I met that framing.





4 July 2019

110A 2400bps modem carrying 1536-bit protocol

Signal recorded on 14600.0 KHz/USB tranks to the KiwiSDR http://collie2.ddns.net:8073/ located in Western Australia. 
The used HF waveform is 188-110A Serial in 2400 bps mode, note the 48 symbols length frames (32+16 UK). ACF value is 200ms that makes 1440-bits/480-symbols: the length of the ACF is due to the short interleaver matrix dimensions for 2400 bps speed (40 rows x 70 columns) as discussed here.
Fig. 1
Once demodulated, we get a stream that has the well-known period of 1536 bits length that can be attributable to the GA-205 multiplexer: don't know if they were using 4 of 12 channels only. Also found the sync characters 9C16 and 9D16 ... but it might be a mere coincidence.  Most likely it's a naval broadcast by the Australian Navy RAN.

Fig. 2
Fig. 3