OP25 OP25 DES-OFB help and advice

Status
Not open for further replies.

luciano_frc

Member
Joined
Jan 15, 2024
Messages
11
Hello, dear radio listeners
I have a RTL-SDR Blog V4 dongle, which I bought about a year ago.
In my region, I have many DES-OFB op25 transmissions and very few unencrypted transmissions.
I have tried a few things to be able to listen to the transmissions, but I have not been successful in this task.
I believe that I am not able to get the settings right and that is why I have not been successful.
I used the boatbod op25 but I was unsuccessful.
I would greatly appreciate any help and guidance, and I would like to thank everyone in advance for their time and patience.

I have been using this syntax in the op25 Boatbod version
Code:
/rx.py --crypt-behavior -1 -k example_keys.json --args 'rtl' --gains 'LNA:49' -S 2000000 -o 2500 -U -f 171.50625e6 -2 -l http:0.0.0.0:8080 2> stderr.2 -X

I will attach an IQ recording and the DSD-Plus Fastlane log
https://get-storage.b-cdn.net/IQ-Record-And-FM.zip

some screenshots
Captura de tela de 2025-07-04 07-38-57.png
Capturar2.png
 

Attachments

  • 1R-log.txt
    872.6 KB · Views: 7

boatbod

Member
Joined
Mar 3, 2007
Messages
3,539
Location
Talbot Co, MD
Do you know the DES keys and are they populated in the keys file? If not, you will not be listening to any of the encrypted transmissions.
 

MUTNAV

Active Member
Premium Subscriber
Joined
Jul 27, 2018
Messages
1,479
Start at 0101010101010101 and work your way up to FEFEFEFEFEFEFEFE. It will help if you type really fast.
I realize the humer of your post.... BUT, (actual honest question) why choose those start and end numbers.
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,367
Location
Lafayette County, FL
I realize the humer of your post.... BUT, (actual honest question) why choose those start and end numbers.

Alright, I'll take a crack at answering this, but DES is expressed as a 64-bit key, but only 56-bits of that key are actually useful for encryption. For every octet, or byte, of key, there are 7 bits of key, and 1 bit of parity.

Using the example 0x0101010101010101, and just looking at one octet since it repeats, this is easy, but essentially

Hex: 0x01
Binary: 00000001

When expressed as binary, only the first 7 bits are valid key for this octet, and the last bit (the 1) is the parity bit. Since there are 7 (odd) number of zeroes, then the parity bit is 1. If the number of zeroes where even, then the parity bit would be 0 instead.

Hex: 0xFE
Binary: 11111110

In 0xFE, there is seven 1s, and zero 0s, so its parity bit is 0.

So in essence, start counting at 0x0101010101010101 and making sure all parity is correct, although, depending on the implementation, the parity bit may be entirely ignored, allowing incorrect parity keys that will also function exactly like their parity corrected counterpart. Or if the parity is checked by the implementation, then it may reject the key. In practice, the key value of 0x0000000000000000 is exactly the same as 0x0101010101010101 in DES.
 

MUTNAV

Active Member
Premium Subscriber
Joined
Jul 27, 2018
Messages
1,479
Alright, I'll take a crack at answering this, but DES is expressed as a 64-bit key, but only 56-bits of that key are actually useful for encryption. For every octet, or byte, of key, there are 7 bits of key, and 1 bit of parity.

Using the example 0x0101010101010101, and just looking at one octet since it repeats, this is easy, but essentially

Hex: 0x01
Binary: 00000001

When expressed as binary, only the first 7 bits are valid key for this octet, and the last bit (the 1) is the parity bit. Since there are 7 (odd) number of zeroes, then the parity bit is 1. If the number of zeroes where even, then the parity bit would be 0 instead.

Hex: 0xFE
Binary: 11111110

In 0xFE, there is seven 1s, and zero 0s, so its parity bit is 0.

So in essence, start counting at 0x0101010101010101 and making sure all parity is correct, although, depending on the implementation, the parity bit may be entirely ignored, allowing incorrect parity keys that will also function exactly like their parity corrected counterpart. Or if the parity is checked by the implementation, then it may reject the key. In practice, the key value of 0x0000000000000000 is exactly the same as 0x0101010101010101 in DES.
Thanks, still assimilating the information.
 
Status
Not open for further replies.
Top