EEVblog Electronics Community Forum

Products => Test Equipment => Topic started by: XerXes777 on December 13, 2022, 03:21:02 pm

Title: Siglent SDS & SDG Hack Script
Post by: XerXes777 on December 13, 2022, 03:21:02 pm
Hello,
i found here some Hack Scripts.
And it was hard for me to find out how it works.
I want to share my experience.

Script for Siglent Digital Oscilloscopes:

Code: [Select]
# Keygen program for Siglent oscilloscopes

# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

# READ THIS COMPLETLY BEFORE YOU START
# AND READ ALL OTHER INFORMATION HERE IN THE SCRIPT

# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

# PLEASE GET TIME FOR THIS !!!

# Go to Siglent homepage and find out witch model you have.
# When you have a SDS1104X-E the model is SDS1000X-E.
# And you can find out how much you can upgrade the bandwidth.
# Because the model SDS1000X-E have two versions with different bandwidths.
# And you can find out which options are possibel.
# You had to increase the bandwidth gradually. If your model has more bandwidths like two.

# Connect your scope via LAN to your home network.
# Activate LAN in the UI.
# Use DHCP to get the ip automaticly from your router.
# Or enter a fix ip config.
# Find out which ip the device got.
# Port is 5024.
# Search in goole for the telnet programm "putty" you can use the telnet version.
# Start putty and enter the ip adress, port and click connect.
# You can enter here the SCIP prompts.
# The SCIP prompts comes later in the script.
# Enter all SCIP prompts without the ""

# This is a python script.
# You have to run this script.
# And read the output from this script.
# THE INFO TOO !!!
# Search google for a "online python debugger".
# Or use a offline python debugger.

# Change in the script:
# SCOPEID, SN and Model with your own.
# Run the script.

# The generated key is binded by a keyword.
# The keyword represents the bandwidth or the option.
# The keyword 200M represents a bandwidth of 200Mhz.
# The keyword WIFI represents the option WIFI, so you need only a WIFI dongle.
# The keyword AWG represents the option to concect
# a siglent wafeform generator over USB to the scope.

import hashlib

# You get this by running "SCOPEID?" at the SCIP prompt and removing the dashes
# Or with "MD5_SRLN?" over the SCIP promt without the dashes
SCOPEID = '0000000000000000'

# Replace this with your SN
# You get this over the info from the UI
# Sometime find this under "Info"
SN = 'SDS00000000000'

# Enter here the basic model
# You get this by running "MD5_PR?" at the SCIP prompt
# A sample: You have the SDS1104X-E than enter "SDS1000X-E"
# Some more basic models: "SDS1000X-E", "SDS2000X-E", "SDS2000X+", "SDS5000X", "ZODIAC-"
Model = 'SDS1000X-E'

# You can add more bandwidhts here, when you have the ríght keyword
# Not all bandwidths works on your device!
bwopt = ('25M', '40M', '50M', '60M', '70M', '100M', '150M', '200M',
         '250M', '300M', '350M', '500M', '750M', '1000M', 'MAX')

# You can add more options here, when you have the ríght keyword
# Not all options works on your device!
otheropt = ('AWG', 'WIFI', 'MSO', 'FLX', 'CFD', 'I2S', '1553',
            'FG', '16LA', 'PWA', 'MANC', 'SENT')

# NO CHANGES HERE !!!
# NO MORE INFORMATION HERE !!!
hashkey = '5zao9lyua01pp7hjzm3orcq90mds63z6zi5kv7vmv3ih981vlwn06txnjdtas3u2wa8msx61i12ueh14t7kqwsfskg032nhyuy1d9vv2wm925rd18kih9xhkyilobbgy'

def gen(x):
    h = hashlib.md5((
        hashkey +
        (Model+'\n').ljust(32, '\x00') +
        opt.ljust(5, '\x00') +
        2*(((SCOPEID if opt in bwopt else SN) + '\n').ljust(32, '\x00')) +
        '\x00'*16).encode('ascii')
    ).digest()
    key = ''
    for b in h:
        if (b <= 0x2F or b > 0x39) and (b <= 0x60 or b > 0x7A):
            m = b % 0x24
            b = m + (0x57 if m > 9 else 0x30)
        if b == 0x30:
            b = 0x32
        if b == 0x31:
            b = 0x33
        if b == 0x6c:
            b = 0x6d
        if b == 0x6f:
            b = 0x70
        key += chr(b)
    return key.upper()

print('INFO: CHECK YOUR GENERATED KEY BEFOR ENTER A NEW ONE !!!' + '\n')
print('You get your bandwidth by running "PRBD?" at the SCIP prompt' + '\n')
print('You get your bandwidth key by running "MCBD?" at the SCIP prompt' + '\n')
print('Compare your key with the generated key')
print('INFO: IT HAVE TO BE SAME !!!')
print('\n')
print('\n')
print('--------------------------------')
print('Here are the bandwidth codes')
print('Enter these codes over SCIP prompt')
print('The SCIP promt is "MCBD"')
print('A sample with the 500M keyword: "MCBD 6M5VE9723IR5RACG"')
print('\n')
for opt in bwopt:
    print('{:5} {}'.format(opt, gen(SCOPEID)))

print('\n')
print('--------------------------------')
print('Here are the options codes')
print('Enter these codes over the UI')
print('\n')
for opt in otheropt:
    print('{:5} {}'.format(opt, gen(SN)))




Script for Siglent Waveform Generators:

Code: [Select]
# Keygen program for Siglent waveform generators

# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

# READ THIS COMPLETLY BEFORE YOU START
# AND READ ALL OTHER INFORMATION HERE IN THE SCRIPT

# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

# PLEASE GET TIME FOR THIS !!!

# Go to Siglent homepage and find out which model you have.
# When you have a SDG6022X the model is SDG6000X.
# And you can find out how much you can upgrade the bandwidth.
# Because the model SDG6000X have three versions with different bandwidths.
# And you can find out which options are possibel.
# You had to increase the bandwidth gradually. If your model has more bandwidths like two.

# Connect your waveform generator via LAN to your home network.
# Activate LAN in the UI.
# Use DHCP to get the ip automaticly from your router.
# Or enter a fix ip config.
# Find out which ip the device got.
# Port is 5024.
# Search in goole for the telnet programm "putty" you can use the telnet version.
# Start putty and enter the ip adress, port and click connect.
# You can enter here the SCIP prompts.
# The SCIP prompts comes later in the script.
# Enter all SCIP prompts without the ""

# This is a python script.
# You have to run this script.
# And read the output from this script.
# Search google for a "online python debugger".
# Or use a offline python debugger.

# Change in the script:
# SN and Model with your own.
# Run the script.

# The generated key is binded by a keyword.
# The keyword represents the bandwidth or the option.
# The keyword 200M represents a bandwidth of 200Mhz.
# The keyword WIFI represents the option WIFI, so you need only a WIFI dongle.
# The keyword TRUE represents the option IQ Waveforms.

import hashlib

# Replace this with your SN
# You get this over the info from the UI
# Sometime find this under "Info"
SN = 'SDG00000000000'

# Enter here the basic model
# You get this by running "MD5_PR?" at the SCIP prompt
# A sample: You have the SDG6022X than enter "SDG6000X
# Some more basic models: "SDG1000X", "SDG2000X", "SDG6000X"
Model = 'SDG6000X'

# You can add more bandwidhts here, when you have the ríght keyword
# Not all bandwidths works on your device!
bwopt = ('25M', '40M', '50M', '60M', '70M', '100M', '150M', '200M',
         '250M', '300M', '350M', '500M', '750M', '1000M', 'MAX')

# You can add more options here, when you have the ríght keyword
# TRUE is for the IQ Waveforms
# Not all options works on your device!
otheropt = ('WIFI', 'TRUE')

# NO CHANGES HERE !!!
# NO MORE INFORMATION HERE !!!
hashkey = '5zao9lyua01pp7hjzm3orcq90mds63z6zi5kv7vmv3ih981vlwn06txnjdtas3u2wa8msx61i12ueh14t7kqwsfskg032nhyuy1d9vv2wm925rd18kih9xhkyilobbgy'

def gen(x):
    h = hashlib.md5((
        hashkey +
        (Model+'\n').ljust(32, '\x00') +
        opt.ljust(5, '\x00') +
        2*((SN + '\n').ljust(32, '\x00')) +
        '\x00'*16).encode('ascii')
    ).digest()
    key = ''
    for b in h:
        if (b <= 0x2F or b > 0x39) and (b <= 0x60 or b > 0x7A):
            m = b % 0x24
            b = m + (0x57 if m > 9 else 0x30)
        if b == 0x30:
            b = 0x32
        if b == 0x31:
            b = 0x33
        if b == 0x6c:
            b = 0x6d
        if b == 0x6f:
            b = 0x70
        key += chr(b)
    return key.upper()

print('INFO: CHECK YOUR GENERATED KEY BEFOR ENTER A NEW ONE !!!' + '\n')
print('You get your bandwidth key by running "MCBD?" at the SCIP prompt' + '\n')
print('Compare your key with the generated key')
print('INFO: IT HAVE TO BE SAME !!!')
print('\n')
print('\n')
print('--------------------------------')
print('Here are the bandwidth codes')
print('Enter these codes over SCIP prompt')
print('The SCIP promt is "MCBD"')
print('A sample with the 500M keyword: "MCBD PA3XCKP66XPYPPPI"')
print('\n')
for opt in bwopt:
    print('{:5} {}'.format(opt, gen(SN)))

print('\n')
print('--------------------------------')
print('Here are the options codes')
print('Enter these codes over the UI')
print('\n')
for opt in otheropt:
    print('{:5} {}'.format(opt, gen(SN)))

Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 13, 2022, 06:59:46 pm
Please, there is NO NEED to Telnet into these instruments, none at all.
Please instead use the existing SCPI input methods both these instrument types are supplied from the factory with.

Scope = webserver
AWG = EasyWaveX
Title: Re: Siglent SDS & SDG Hack Script
Post by: Sherlock Holmes on December 13, 2022, 07:51:26 pm
Please, there is NO NEED to Telnet into these instruments, none at all.
Please instead use the existing SCPI input methods both these instrument types are supplied from the factory with.

Scope = webserver
AWG = EasyWaveX

Tautech, what do people actually use the "programming" feature for on these scopes? The device can accept simple socket based requests it seems. I was wondering if there are any .Net Core libraries out there for this. I develop .Net APIs professionally, so might be interested in doing something like that if there was any use for anyone.
Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 13, 2022, 08:00:36 pm
Please, there is NO NEED to Telnet into these instruments, none at all.
Please instead use the existing SCPI input methods both these instrument types are supplied from the factory with.

Scope = webserver
AWG = EasyWaveX

Tautech, what do people actually use the "programming" feature for on these scopes? The device can accept simple socket based requests it seems. I was wondering if there are any .Net Core libraries out there for this. I develop .Net APIs professionally, so might be interested in doing something like that if there was any use for anyone.
How friendly is Telnet for the novice....it isn't not that I've found but I'm not a programmer.
Copy/Paste within the instrument SCPI command page OTOH is far more welcoming.
Title: Re: Siglent SDS & SDG Hack Script
Post by: Sherlock Holmes on December 13, 2022, 08:10:10 pm
I just found this, security alert about Siglent scopes:

https://sec-consult.com/vulnerability-lab/advisory/multiple-vulnerabilities-in-siglent-technologies-sds-1202x-e-digital-oscilloscope/

Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 13, 2022, 08:28:36 pm
I just found this, security alert about Siglent scopes:

https://sec-consult.com/vulnerability-lab/advisory/multiple-vulnerabilities-in-siglent-technologies-sds-1202x-e-digital-oscilloscope/
:=\
Old storm in a teacup !  :horse:
Title: Re: Siglent SDS & SDG Hack Script
Post by: baldurn on December 14, 2022, 02:08:29 pm
I just found this, security alert about Siglent scopes:

https://sec-consult.com/vulnerability-lab/advisory/multiple-vulnerabilities-in-siglent-technologies-sds-1202x-e-digital-oscilloscope/

The presence of these "vulnerabilities" is the whole reason we are buying Siglent, haha :-)
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 14, 2022, 02:56:58 pm
I just found this, security alert about Siglent scopes:

https://sec-consult.com/vulnerability-lab/advisory/multiple-vulnerabilities-in-siglent-technologies-sds-1202x-e-digital-oscilloscope/
You do see the irony here, don't you?
Title: Re: Siglent SDS & SDG Hack Script
Post by: Faranight on December 15, 2022, 06:48:20 am
This is why I don't connect any instruments to my home network and instead use a separate air-gapped LAN for all my sci equipment.
Title: Re: Siglent SDS & SDG Hack Script
Post by: tubularnut on December 15, 2022, 09:56:57 am
If someone from outside is already on your home network, you have more to worry about then getting access to your lab equipment!!!
Title: Re: Siglent SDS & SDG Hack Script
Post by: baldurn on December 15, 2022, 12:46:06 pm
If someone from outside is already on your home network, you have more to worry about then getting access to your lab equipment!!!

To be fair, this thinking is how bot nets came to be.
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 15, 2022, 02:39:24 pm
If someone from outside is already on your home network, you have more to worry about then getting access to your lab equipment!!!
:-+

What are they going to do, twiddle you sweep knob?  :-DD
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 15, 2022, 02:44:40 pm
To be fair, this thinking is how bot nets came to be.
Quite the opposite, I'd say.  It comes down to a matter of priorities.  If your home network has been compromised, there are probably things yo need to get cracking on before you start isolating you scope.  Once they are done with those, you will no longer have to worry about the scope.  :-+
Title: Re: Siglent SDS & SDG Hack Script
Post by: TERRA Operative on December 15, 2022, 03:21:51 pm
If someone from outside is already on your home network, you have more to worry about then getting access to your lab equipment!!!
:-+

What are they going to do, twiddle you sweep knob?  :-DD

Stuxnet  ;)
Title: Re: Siglent SDS & SDG Hack Script
Post by: coromonadalix on December 15, 2022, 04:40:59 pm
Skynet  loll
Title: Re: Siglent SDS & SDG Hack Script
Post by: baldurn on December 15, 2022, 05:23:59 pm
To be fair, this thinking is how bot nets came to be.
Quite the opposite, I'd say.  It comes down to a matter of priorities.  If your home network has been compromised, there are probably things yo need to get cracking on before you start isolating you scope.  Once they are done with those, you will no longer have to worry about the scope.  :-+

Home networks are not secure. A guest loans your wifi and it turns out his computer has virus. That is all it takes. Or maybe your son did something stupid on his gaming rig. Even company networks are not very secure. The concept of a firewall to protect the network is not protecting anything at all if something inside becomes infected. Luckily your desktop OS comes with a fairly good firewall build in and therefore it is usually all the gadgets that get infected. Gadgets possibly includes dads fancy EE instruments.

If you want to be secure, you either need to make a separate instrumentation network or run an intrusion detection system. Preferably both.
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 15, 2022, 07:05:48 pm
If you want to be secure, you either need to make a separate instrumentation network or run an intrusion detection system. Preferably both.

Kids are grown up with their own families, guests attach to a separate network, my Cisco router has stateful inspection and intrusion detection/prevention built in.  Bonus .. I'm nobody living in the boondocks, so not of enough interest to warrant the time, effort and expense to break in.
Title: Re: Siglent SDS & SDG Hack Script
Post by: Nicole01 on December 15, 2022, 07:20:41 pm
No Internet - No Problems  :-DD
Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 15, 2022, 07:43:36 pm
To be fair, this thinking is how bot nets came to be.
Quite the opposite, I'd say.  It comes down to a matter of priorities.  If your home network has been compromised, there are probably things yo need to get cracking on before you start isolating you scope.  Once they are done with those, you will no longer have to worry about the scope.  :-+

Home networks are not secure. A guest loans your wifi and it turns out his computer has virus. That is all it takes. Or maybe your son did something stupid on his gaming rig. Even company networks are not very secure. The concept of a firewall to protect the network is not protecting anything at all if something inside becomes infected. Luckily your desktop OS comes with a fairly good firewall build in and therefore it is usually all the gadgets that get infected. Gadgets possibly includes dads fancy EE instruments.

If you want to be secure, you either need to make a separate instrumentation network or run an intrusion detection system. Preferably both.
Certainly boat anchors running old unsupported Windoze versions are at high risk of compromise while modern equipment running some version of Linux not so much.
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 15, 2022, 11:39:32 pm
No Internet - No Problems  :-DD
Don't laugh.  There is a guy in my trombone section that does not have internet.  Never has - and according to him, never will.   :-//

I can remember a more relaxed and productive time before the internet though.
Title: Re: Siglent SDS & SDG Hack Script
Post by: Nicole01 on December 16, 2022, 05:22:12 pm
I also know a lot of People who don't have a Cell Phone or a PC  :-//
Title: Re: Siglent SDS & SDG Hack Script
Post by: baldurn on December 16, 2022, 06:44:10 pm
Certainly boat anchors running old unsupported Windoze versions are at high risk of compromise while modern equipment running some version of Linux not so much.

That is certainly true. However it is also true that the Siglents can be hacked. This is why we like them so much :-). But it does make them a target for botnets if some blackhats figure out how to mass hack them. I think the best protection is simply that there are not that many scopes out there, so it is probably not worth it for them.
Title: Re: Siglent SDS & SDG Hack Script
Post by: Kenneth Rosenstroem on December 16, 2022, 06:55:12 pm
This is why I don't connect any instruments to my home network and instead use a separate air-gapped LAN for all my sci equipment.

Like in wi-fi?

Does not matter how you connect it, anything that has any kind of connection to the internet (or some equipment/computer) via some router setup or air gap (point to point is still a connection) as you write, is in danger of being controlled from elsewhere. Period.

If this is not your setup, please enlighten us as to how to make a secure connection to your instruments from the same PC you use for the internet...
Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 16, 2022, 07:06:55 pm
Certainly boat anchors running old unsupported Windoze versions are at high risk of compromise while modern equipment running some version of Linux not so much.

That is certainly true. However it is also true that the Siglents can be hacked. This is why we like them so much :-). But it does make them a target for botnets if some blackhats figure out how to mass hack them. I think the best protection is simply that there are not that many scopes out there, so it is probably not worth it for them.
This is exactly the reason why I oppose fucking with the OS so this info gets online whereas most of what you call hacks aren't, instead they are unofficial installation of official license codes. < Can you really call that a hack ?  :-//
Title: Re: Siglent SDS & SDG Hack Script
Post by: dataist on December 17, 2022, 03:42:47 am
very interesting post.  I just ordered a 2074X-Plus (about 1100-1200USD)  to be shipped from China. vendor offered to upgrade it to 500M bandwidth for free and claimed it's legitimate because they are one of the biggest distributors and were offered extra perks (ie software licenses and probes) by the manufacturer to help boost sales by the end of year.  I am not sure how much of it is sales pitch, but very eagerly waiting for my shipment to see if it is upgraded. Hopefully I don't have to run the code in this post.
Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 17, 2022, 04:02:16 am
very interesting post.  I just ordered a 2074X-Plus (about 1100-1200USD)  to be shipped from China. vendor offered to upgrade it to 500M bandwidth for free and claimed it's legitimate because they are one of the biggest distributors and were offered extra perks (ie software licenses and probes) by the manufacturer to help boost sales by the end of year.  I am not sure how much of it is sales pitch, but very eagerly waiting for my shipment to see if it is upgraded. Hopefully I don't have to run the code in this post.
Seller ?
Title: Re: Siglent SDS & SDG Hack Script
Post by: Nicole01 on December 18, 2022, 12:11:39 am
You write the Model 2074X-Plus ?
Which Model did you Order exactly ?
Title: Re: Siglent SDS & SDG Hack Script
Post by: Martin72 on December 18, 2022, 12:25:42 am
There is indeed a 70Mhz(2074X+) version avaible, but AFAIK in china only.
Got the same hardware as the "known" 4-channel models starting here with 100Mhz (2104X+) and could be fully armed also, including 500Mhz bandwith.
Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 18, 2022, 12:30:05 am
There is indeed a 70Mhz(2074X+) version avaible, but AFAIK in china only.
Got the same hardware as the "known" 4-channel models starting here with 100Mhz (2104X+) and could be fully armed also, including 500Mhz bandwith.
Also prohibited export from China as it is not a model available to the west.
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 18, 2022, 12:38:12 am
There is indeed a 70Mhz(2074X+) version avaible, but AFAIK in china only.
Got the same hardware as the "known" 4-channel models starting here with 100Mhz (2104X+) and could be fully armed also, including 500Mhz bandwith.
Also prohibited export from China as it is not a model available to the west.
I wonder why not?
Title: Re: Siglent SDS & SDG Hack Script
Post by: Martin72 on December 18, 2022, 12:44:50 am
Same why you don´t could buy the 12 bit version of the 6000A scope in the west, I guess..
Apart from this, I don´t get it why buying a 70Mhz scope, 100Mhz should be the "minimum" at all.
Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 18, 2022, 12:50:13 am
There is indeed a 70Mhz(2074X+) version avaible, but AFAIK in china only.
Got the same hardware as the "known" 4-channel models starting here with 100Mhz (2104X+) and could be fully armed also, including 500Mhz bandwith.
Also prohibited export from China as it is not a model available to the west.
I wonder why not?
HQ policy. Firm marketing rule for China sellers = do not export SDS207*X Plus !
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 18, 2022, 12:52:28 am
HQ policy. Firm marketing rule for China sellers = do not export SDS207*X Plus !
Well, that's one way to create a grey market.
Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 18, 2022, 12:58:47 am
HQ policy. Firm marketing rule for China sellers = do not export SDS207*X Plus !
Well, that's one way to create a grey market.
And then distributors ask HQ about the SDS207*X Plus in their marketplace and if they are required to provide support for it as it is a prohibited export.
Title: Re: Siglent SDS & SDG Hack Script
Post by: tautech on December 18, 2022, 01:24:39 am
HQ policy. Firm marketing rule for China sellers = do not export SDS207*X Plus !
Well, that's one way to create a grey market.
Oh and BTW, while the promos are active we can supply SDS2104X Plus for less than the China sellers breaking the rules can supply SDS2074X Plus.
Grey market for a more expensive product !  :-DD
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 18, 2022, 03:39:54 am
Oh and BTW, while the promos are active we can supply SDS2104X Plus for less than the China sellers breaking the rules can supply SDS2074X Plus.
Grey market for a more expensive product !  :-DD
Well, that's why I bought one!

More scope than I'll ever need, but how sweet it is!
Title: Re: Siglent SDS & SDG Hack Script
Post by: dataist on December 18, 2022, 12:10:38 pm
how interesting to know this model is prohibited to export. From the tear-down I wonder if all 2000x series share the same circuit and chips, ie Zynq/ARM/ADCs, for manufacturing efficiency, but block certain functionality through software to discriminate wealthy western buyers and also to maximize profit. 
Title: Re: Siglent SDS & SDG Hack Script
Post by: Martin72 on December 18, 2022, 04:33:31 pm
On the other hand, sds2000xplus series are nevertheless very cheap in relation of the performance they have.
Title: Re: Siglent SDS & SDG Hack Script
Post by: Mr_Bean on December 20, 2022, 08:38:10 pm

Script for Siglent Waveform Generators:

Code: [Select]
# Keygen program for Siglent waveform generators

# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

# READ THIS COMPLETLY BEFORE YOU START
# AND READ ALL OTHER INFORMATION HERE IN THE SCRIPT

# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

# PLEASE GET TIME FOR THIS !!!

# Go to Siglent homepage and find out which model you have.
# When you have a SDG6022X the model is SDG6000X.
# And you can find out how much you can upgrade the bandwidth.
# Because the model SDG6000X have three versions with different bandwidths.
# And you can find out which options are possibel.

# Connect your waveform generator via LAN to your home network.
# Activate LAN in the UI.
# Use DHCP to get the ip automaticly from your router.
# Or enter a fix ip config.
# Find out which ip the device got.
# Search in goole for the telnet programm "putty" you can use the telnet version.
# Start putty and enter the ip adress and click connect.
# You can enter here the SCIP prompts.
# The SCIP prompts comes later in the script.
# Enter all SCIP prompts without the ""

# This is a python script.
# You have to run this script.
# And read the output from this script.
# Search google for a "online python debugger".
# Or use a offline python debugger.

# Change in the script:
# SN and Model with your own.
# Run the script.

# The generated key is binded by a keyword.
# The keyword represents the bandwidth or the option.
# The keyword 200M represents a bandwidth of 200Mhz.
# The keyword WIFI represents the option WIFI, so you need only a WIFI dongle.
# The keyword TRUE represents the option IQ Waveforms.

import hashlib

# Replace this with your SN
# You get this over the info from the UI
# Sometime find this under "Info"
SN = 'SDG00000000000'

# Enter here the basic model
# You get this by running "MD5_PR?" at the SCIP prompt
# A sample: You have the SDG6022X than enter "SDG6000X
# Some more basic models: "SDG1000X", "SDG2000X", "SDG6000X"
Model = 'SDG6000X'

# You can add more bandwidhts here, when you have the ríght keyword
# Not all bandwidths works on your device!
bwopt = ('25M', '40M', '50M', '60M', '70M', '100M', '150M', '200M',
         '250M', '300M', '350M', '500M', '750M', '1000M', 'MAX')

# You can add more options here, when you have the ríght keyword
# TRUE is for the IQ Waveforms
# Not all options works on your device!
otheropt = ('WIFI', 'TRUE')

# NO CHANGES HERE !!!
# NO MORE INFORMATION HERE !!!
hashkey = '5zao9lyua01pp7hjzm3orcq90mds63z6zi5kv7vmv3ih981vlwn06txnjdtas3u2wa8msx61i12ueh14t7kqwsfskg032nhyuy1d9vv2wm925rd18kih9xhkyilobbgy'

def gen(x):
    h = hashlib.md5((
        hashkey +
        (Model+'\n').ljust(32, '\x00') +
        opt.ljust(5, '\x00') +
        2*((SN + '\n').ljust(32, '\x00')) +
        '\x00'*16).encode('ascii')
    ).digest()
    key = ''
    for b in h:
        if (b <= 0x2F or b > 0x39) and (b <= 0x60 or b > 0x7A):
            m = b % 0x24
            b = m + (0x57 if m > 9 else 0x30)
        if b == 0x30:
            b = 0x32
        if b == 0x31:
            b = 0x33
        if b == 0x6c:
            b = 0x6d
        if b == 0x6f:
            b = 0x70
        key += chr(b)
    return key.upper()

print('INFO: CHECK YOUR GENERATED KEY BEFOR ENTER A NEW ONE !!!' + '\n')
print('You get your bandwidth by running "PRBD?" at the SCIP prompt' + '\n')
print('You get your bandwidth key by running "MCBD?" at the SCIP prompt' + '\n')
print('Compare your key with the generated key')
print('INFO: IT HAVE TO BE SAME !!!')
print('\n')
print('\n')
print('--------------------------------')
print('Here are the bandwidth codes')
print('Enter these codes over SCIP prompt')
print('The SCIP promt is "MCBD"')
print('A sample with the 500M keyword: "MCBD PA3XCKP66XPYPPPI"')
print('\n')
for opt in bwopt:
    print('{:5} {}'.format(opt, gen(SN)))

print('\n')
print('--------------------------------')
print('Here are the options codes')
print('Enter these codes over the UI')
print('\n')
for opt in otheropt:
    print('{:5} {}'.format(opt, gen(SN)))



Do we know if this still works on the SDG2000X's Rev F / 05-xx-... hardware and/or the latest 2.01.01.37R31 firmware?
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 20, 2022, 09:56:39 pm
Do we know if this still works on the SDG2000X's Rev F / 05-xx-... hardware and/or the latest 2.01.01.37R31 firmware?
This method has been superseded by the license key generator.  I suggest you do a bit more reading, or is there a reason you don't want to use the key generator?
Title: Re: Siglent SDS & SDG Hack Script
Post by: Martin72 on December 20, 2022, 09:59:51 pm
I´ve ordered a SDG2042X today and want to "free" it when it´s arrived, because in the future I will need frequencies up to 100Mhz(so my SDG1062X will be selled).
Actually it wasn´t clear to me how to upgrade it to 120Mhz, it seems there are several methods?(here, hackdoor closed thread)

Martin
Title: Re: Siglent SDS & SDG Hack Script
Post by: Mr_Bean on December 20, 2022, 10:26:44 pm
This method has been superseded by the license key generator.  I suggest you do a bit more reading, or is there a reason you don't want to use the key generator?

The method I quoted is Python code for the license key generator.
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 20, 2022, 11:37:02 pm
This method has been superseded by the license key generator.  I suggest you do a bit more reading, or is there a reason you don't want to use the key generator?

The method I quoted is Python code for the license key generator.
Doh!  My bad. :palm:  AFAIK it still works.  It can't hurt to try it.  The worst that might happen is the license key will be rejected.
Title: Re: Siglent SDS & SDG Hack Script
Post by: Mr_Bean on December 21, 2022, 02:02:15 am
Doh!  My bad. :palm:  AFAIK it still works.  It can't hurt to try it.  The worst that might happen is the license key will be rejected.

I don't have an SDG yet. I have a line on a 2042X, and I'd have no use for it on the slim chance I can't unlock it to a 2122X. So it might hurt to try.
Title: Re: Siglent SDS & SDG Hack Script
Post by: baldurn on December 21, 2022, 10:27:01 am
Doh!  My bad. :palm:  AFAIK it still works.  It can't hurt to try it.  The worst that might happen is the license key will be rejected.

I don't have an SDG yet. I have a line on a 2042X, and I'd have no use for it on the slim chance I can't unlock it to a 2122X. So it might hurt to try.

It worked on my SDG6022X running 6.01.01.36.

You could always return it if it refuses to upgrade. But I think it will.
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 21, 2022, 01:53:57 pm
Doh!  My bad. :palm:  AFAIK it still works.  It can't hurt to try it.  The worst that might happen is the license key will be rejected.

I don't have an SDG yet. I have a line on a 2042X, and I'd have no use for it on the slim chance I can't unlock it to a 2122X. So it might hurt to try.
For me, recently (in the last 3 months) this script has worked on:

SDS1104X-E
SDG1032X
SDS2104XP
SDL1020X-E (not script but his works: https://www.eevblog.com/forum/testgear/siglent-sdl1000xsdl1000x-e-electronic-load/msg3395024/#msg3395024 (https://www.eevblog.com/forum/testgear/siglent-sdl1000xsdl1000x-e-electronic-load/msg3395024/#msg3395024))

No issues at all, except with the SDS2104XP I had to increase the BW incrementally.  Goin directly to 500MHz did not produce 500MHz bandwidth (266MHz was all I got) and it distorted signals above 200MHz.
Title: Re: Siglent SDS & SDG Hack Script
Post by: dshorthill on December 21, 2022, 05:02:10 pm
BillyO:
Could you provide info on how to use Python script to “upgrade” the SDL1020X-E (Electronic Load) ?
 
Thanks
(also Siglent fanboy)
Title: Re: Siglent SDS & SDG Hack Script
Post by: BillyO on December 21, 2022, 06:27:17 pm
BillyO:
Could you provide info on how to use Python script to “upgrade” the SDL1020X-E (Electronic Load) ?
 
Thanks
(also Siglent fanboy)

For the SDL you don't use the python script.  Sorry, I didn't mean to imply that, just to mention I had done the "improvement" and it still worked.

For teh SDL you just need to issue a few SCPI commands.  It's detailed here: https://www.eevblog.com/forum/testgear/siglent-sdl1000xsdl1000x-e-electronic-load/msg3395024/#msg3395024   (https://www.eevblog.com/forum/testgear/siglent-sdl1000xsdl1000x-e-electronic-load/msg3395024/#msg3395024)
Title: Re: Siglent SDS & SDG Hack Script
Post by: Zigortxu on January 27, 2023, 04:30:56 pm
Hello,

I have recently bought a sdg2042x and I try to connect it via telnet and it refuse the connection, the lan options is "ON" status, I put the IP of the SDG on putty and port 23 but dont connect, the software version is 2.01.01.35R3B2 and hardware version is 02-02-00-40-00.

Anybody knows why dont connect it?

Thanks very much
Title: Re: Siglent SDS & SDG Hack Script
Post by: Martin72 on January 27, 2023, 05:45:47 pm
Hi,

Got one with the same hard- and software version you have, no problems.

Follow the quoted instructions in this post:

https://www.eevblog.com/forum/testgear/siglent-sdg2042x-hack-door-closed/msg4599439/#msg4599439 (https://www.eevblog.com/forum/testgear/siglent-sdg2042x-hack-door-closed/msg4599439/#msg4599439)

And it should work.
Don´t forget to enter the correct ip adress in putty/telnet, activate dhcp in the generator menu, take the new adress.
And:
Connect the generator via router to the pc.
Title: Re: Siglent SDS & SDG Hack Script
Post by: Zigortxu on January 28, 2023, 12:10:44 pm
Hi,

Thanks very much, I connected by telnet but dont changed the port number to 5024, so I havent connect, after read your post changed the port and connected fine.  Thanks very much

Title: Re: Siglent SDS & SDG Hack Script
Post by: azaaxx on February 13, 2024, 11:47:39 pm
Has anyone tested this method for SDG1025 ?
I`ve tried and it is not working for me.
I have tested it with old firmware (with possibility to activate BW license from scope UI) and with newest (BW License removed from UI)
Title: Re: Siglent SDS & SDG Hack Script
Post by: ton4eff on April 01, 2024, 08:56:12 am
No problems with SDG2042X to SDG2122X. Thank you!
[attach=1]

Title: Re: Siglent SDS & SDG Hack Script
Post by: H.O on April 02, 2024, 04:43:32 pm
On the SDS 2k+ there's the option to install license for ARINC (ARINC 429 I suppose).
I can't find it mentioned in any manual and it does not seem to be an option for sale for the 2k+ (I do see it for the 7k, 5k, and 3kHD).

I've tried generating keys for various keywords ('ARINC', 'ARIN', 'ARC', 'ARINC4', 'ARINC429') to no avail.

I don't need it, I'm just curious since it does not seem to be mentioned anywhere. Yet it's there and available as a selectable decoder and my trial counter is now at 29.

Has anyone been able to get it going?

EDIT: From another thread, on the same subject - apparerently the keyword is 'A429'.
Title: Re: Siglent SDS & SDG Hack Script
Post by: Mahagam on April 02, 2024, 05:28:15 pm
I`ve tried 'ARNC' also, without success.
Title: Re: Siglent SDS & SDG Hack Script
Post by: james38 on April 02, 2024, 11:32:59 pm
Use this: A429