[GH-ISSUE #3176] Unknown exchange algorithms diffie-hellman-group1-sha1 #2113

Closed
opened 2026-02-27 00:06:08 +03:00 by kerem · 5 comments
Owner

Originally created by @mbzik on GitHub (Dec 16, 2023).
Original GitHub issue: https://github.com/electerm/electerm/issues/3176

Electerm Version and download file extension(Electerm版本和下载文件后缀)

electerm-1.37.60-win-x64-installer.exe

Platform detail (平台详情)

Microsoft Windows NT 10.0.17134.0 x64

What steps will reproduce the bug?(重新问题的详细步骤)

Connect to Cisco device with kex: diffie-hellman-group1-sha1 and get an error:
image
When trying connect via putty getting message:
image

Check ssh2-alg.js file and find there diffie-hellman-group1-sha1 in kex section but it doesnt work

What should have happened?(期望的结果)

Succeful connect

Would this happen in other terminal app(是否能够在其他同类软件重现这个问题)

Getting succefull connection

Additional information(其他任何相关信息)

No response

Originally created by @mbzik on GitHub (Dec 16, 2023). Original GitHub issue: https://github.com/electerm/electerm/issues/3176 ### Electerm Version and download file extension(Electerm版本和下载文件后缀) electerm-1.37.60-win-x64-installer.exe ### Platform detail (平台详情) Microsoft Windows NT 10.0.17134.0 x64 ### What steps will reproduce the bug?(重新问题的详细步骤) Connect to Cisco device with kex: diffie-hellman-group1-sha1 and get an error: ![image](https://github.com/electerm/electerm/assets/96786127/267c9316-6fad-4730-bf95-c2f978108323) When trying connect via putty getting message: ![image](https://github.com/electerm/electerm/assets/96786127/171824b2-9220-4b0d-9b5f-b5e9b11a4416) Check ssh2-alg.js file and find there diffie-hellman-group1-sha1 in kex section but it doesnt work ### What should have happened?(期望的结果) Succeful connect ### Would this happen in other terminal app(是否能够在其他同类软件重现这个问题) Getting succefull connection ### Additional information(其他任何相关信息) _No response_
kerem closed this issue 2026-02-27 00:06:08 +03:00
Author
Owner

@zxdong262 commented on GitHub (Dec 16, 2023):

Would fix in next release, thank you for the feedback

<!-- gh-comment-id:1858796574 --> @zxdong262 commented on GitHub (Dec 16, 2023): Would fix in next release, thank you for the feedback
Author
Owner

@mbzik commented on GitHub (Dec 16, 2023):

Got the same error. Log:

19:07:20 debug тА║ command line opts {
type: 'remote',
status: 'processing',
id: 'v-HHufs',
encode: 'utf-8',
envLang: 'en_US.UTF-8',
enableSsh: true,
authType: 'password',
pane: 'terminal',
term: 'xterm-256color'
}
19:07:20 debug тА║ ws: connected to terminal -> Vx0Ge2D
19:07:36 error тА║ error when do sshConnect Error: Unknown DH group
at new DiffieHellmanGroup (node:internal/crypto/diffiehellman:137:19)
at createDiffieHellmanGroup (node:crypto:157:10)
at DHExchange.generateKeys (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1521:20)
at DHExchange.getPublicKey (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:987:12)
at DHExchange.start (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1507:29)
at handleKexInit (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:482:13)
at Protocol.onKEXPayload (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1755:14)
at NullDecipher.decrypt (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\crypto.js:612:26)
at Protocol.parsePacket [as _parse] (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\Protocol.js:2002:25)
at Protocol.parse (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\Protocol.js:293:16) null
19:07:36 error тА║ fetch error {
message: 'Unknown DH group',
stack: 'Error: Unknown DH group\n' +
' at new DiffieHellmanGroup (node:internal/crypto/diffiehellman:137:19)\n' +
' at createDiffieHellmanGroup (node:crypto:157:10)\n' +
' at DHExchange.generateKeys (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:1521:20)\n' +
' at DHExchange.getPublicKey (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:987:12)\n' +
' at DHExchange.start (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:1507:29)\n' +
' at handleKexInit (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:482:13)\n' +
' at Protocol.onKEXPayload (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:1755:14)\n' +
' at NullDecipher.decrypt (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\crypto.js:612:26)\n' +
' at Protocol.parsePacket [as _parse] (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\Protocol.js:2002:25)\n' +
' at Protocol.parse (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\Protocol.js:293:16)'
}
19:07:36 debug тА║ { message: 'Unknown DH group' }
19:07:36 debug тА║ Unknown DH group fetch err info

<!-- gh-comment-id:1858815359 --> @mbzik commented on GitHub (Dec 16, 2023): Got the same error. Log: 19:07:20 debug тА║ command line opts { type: 'remote', status: 'processing', id: 'v-HHufs', encode: 'utf-8', envLang: 'en_US.UTF-8', enableSsh: true, authType: 'password', pane: 'terminal', term: 'xterm-256color' } 19:07:20 debug тА║ ws: connected to terminal -> Vx0Ge2D 19:07:36 error тА║ error when do sshConnect Error: Unknown DH group at new DiffieHellmanGroup (node:internal/crypto/diffiehellman:137:19) at createDiffieHellmanGroup (node:crypto:157:10) at DHExchange.generateKeys (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:1521:20) at DHExchange.getPublicKey (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:987:12) at DHExchange.start (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:1507:29) at handleKexInit (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:482:13) at Protocol.onKEXPayload (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:1755:14) at NullDecipher.decrypt (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\crypto.js:612:26) at Protocol.parsePacket [as _parse] (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\Protocol.js:2002:25) at Protocol.parse (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\Protocol.js:293:16) null 19:07:36 error тА║ fetch error { message: 'Unknown DH group', stack: 'Error: Unknown DH group\n' + ' at new DiffieHellmanGroup (node:internal/crypto/diffiehellman:137:19)\n' + ' at createDiffieHellmanGroup (node:crypto:157:10)\n' + ' at DHExchange.generateKeys (C:\\Users\\Admin\\AppData\\Local\\Programs\\electerm\\resources\\app.asar\\node_modules\\@electerm\\ssh2\\lib\\protocol\\kex.js:1521:20)\n' + ' at DHExchange.getPublicKey (C:\\Users\\Admin\\AppData\\Local\\Programs\\electerm\\resources\\app.asar\\node_modules\\@electerm\\ssh2\\lib\\protocol\\kex.js:987:12)\n' + ' at DHExchange.start (C:\\Users\\Admin\\AppData\\Local\\Programs\\electerm\\resources\\app.asar\\node_modules\\@electerm\\ssh2\\lib\\protocol\\kex.js:1507:29)\n' + ' at handleKexInit (C:\\Users\\Admin\\AppData\\Local\\Programs\\electerm\\resources\\app.asar\\node_modules\\@electerm\\ssh2\\lib\\protocol\\kex.js:482:13)\n' + ' at Protocol.onKEXPayload (C:\\Users\\Admin\\AppData\\Local\\Programs\\electerm\\resources\\app.asar\\node_modules\\@electerm\\ssh2\\lib\\protocol\\kex.js:1755:14)\n' + ' at NullDecipher.decrypt (C:\\Users\\Admin\\AppData\\Local\\Programs\\electerm\\resources\\app.asar\\node_modules\\@electerm\\ssh2\\lib\\protocol\\crypto.js:612:26)\n' + ' at Protocol.parsePacket [as _parse] (C:\\Users\\Admin\\AppData\\Local\\Programs\\electerm\\resources\\app.asar\\node_modules\\@electerm\\ssh2\\lib\\protocol\\Protocol.js:2002:25)\n' + ' at Protocol.parse (C:\\Users\\Admin\\AppData\\Local\\Programs\\electerm\\resources\\app.asar\\node_modules\\@electerm\\ssh2\\lib\\protocol\\Protocol.js:293:16)' } 19:07:36 debug тА║ { message: 'Unknown DH group' } 19:07:36 debug тА║ Unknown DH group fetch err info
Author
Owner

@zxdong262 commented on GitHub (Dec 16, 2023):

Got the same error. Log:

19:07:20 debug тА║ command line opts { type: 'remote', status: 'processing', id: 'v-HHufs', encode: 'utf-8', envLang: 'en_US.UTF-8', enableSsh: true, authType: 'password', pane: 'terminal', term: 'xterm-256color' } 19:07:20 debug тА║ ws: connected to terminal -> Vx0Ge2D 19:07:36 error тА║ error when do sshConnect Error: Unknown DH group at new DiffieHellmanGroup (node:internal/crypto/diffiehellman:137:19) at createDiffieHellmanGroup (node:crypto:157:10) at DHExchange.generateKeys (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1521:20) at DHExchange.getPublicKey (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:987:12) at DHExchange.start (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1507:29) at handleKexInit (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:482:13) at Protocol.onKEXPayload (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1755:14) at NullDecipher.decrypt (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\crypto.js:612:26) at Protocol.parsePacket [as _parse] (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\Protocol.js:2002:25) at Protocol.parse (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\Protocol.js:293:16) null 19:07:36 error тА║ fetch error { message: 'Unknown DH group', stack: 'Error: Unknown DH group\n' + ' at new DiffieHellmanGroup (node:internal/crypto/diffiehellman:137:19)\n' + ' at createDiffieHellmanGroup (node:crypto:157:10)\n' + ' at DHExchange.generateKeys (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1521:20)\n' + ' at DHExchange.getPublicKey (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:987:12)\n' + ' at DHExchange.start (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1507:29)\n' + ' at handleKexInit (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:482:13)\n' + ' at Protocol.onKEXPayload (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1755:14)\n' + ' at NullDecipher.decrypt (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\crypto.js:612:26)\n' + ' at Protocol.parsePacket [as _parse] (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\Protocol.js:2002:25)\n' + ' at Protocol.parse (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\Protocol.js:293:16)' } 19:07:36 debug тА║ { message: 'Unknown DH group' } 19:07:36 debug тА║ Unknown DH group fetch err info

1.37.66 released yestoday, it is not the next release I mean, should be in a day or two days later

<!-- gh-comment-id:1858822032 --> @zxdong262 commented on GitHub (Dec 16, 2023): > Got the same error. Log: > > 19:07:20 debug тА║ command line opts { type: 'remote', status: 'processing', id: 'v-HHufs', encode: 'utf-8', envLang: 'en_US.UTF-8', enableSsh: true, authType: 'password', pane: 'terminal', term: 'xterm-256color' } 19:07:20 debug тА║ ws: connected to terminal -> Vx0Ge2D 19:07:36 error тА║ error when do sshConnect Error: Unknown DH group at new DiffieHellmanGroup (node:internal/crypto/diffiehellman:137:19) at createDiffieHellmanGroup (node:crypto:157:10) at DHExchange.generateKeys (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1521:20) at DHExchange.getPublicKey (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:987:12) at DHExchange.start (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1507:29) at handleKexInit (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:482:13) at Protocol.onKEXPayload (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\kex.js:1755:14) at NullDecipher.decrypt (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\crypto.js:612:26) at Protocol.parsePacket [as _parse] (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\Protocol.js:2002:25) at Protocol.parse (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules@electerm\ssh2\lib\protocol\Protocol.js:293:16) null 19:07:36 error тА║ fetch error { message: 'Unknown DH group', stack: 'Error: Unknown DH group\n' + ' at new DiffieHellmanGroup (node:internal/crypto/diffiehellman:137:19)\n' + ' at createDiffieHellmanGroup (node:crypto:157:10)\n' + ' at DHExchange.generateKeys (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:1521:20)\n' + ' at DHExchange.getPublicKey (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:987:12)\n' + ' at DHExchange.start (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:1507:29)\n' + ' at handleKexInit (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:482:13)\n' + ' at Protocol.onKEXPayload (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\kex.js:1755:14)\n' + ' at NullDecipher.decrypt (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\crypto.js:612:26)\n' + ' at Protocol.parsePacket [as _parse] (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\Protocol.js:2002:25)\n' + ' at Protocol.parse (C:\Users\Admin\AppData\Local\Programs\electerm\resources\app.asar\node_modules\@electerm\ssh2\lib\protocol\Protocol.js:293:16)' } 19:07:36 debug тА║ { message: 'Unknown DH group' } 19:07:36 debug тА║ Unknown DH group fetch err info 1.37.66 released yestoday, it is not the next release I mean, should be in a day or two days later
Author
Owner

@zxdong262 commented on GitHub (Dec 17, 2023):

Published https://github.com/electerm/electerm/releases/tag/v1.37.68

<!-- gh-comment-id:1859006573 --> @zxdong262 commented on GitHub (Dec 17, 2023): Published https://github.com/electerm/electerm/releases/tag/v1.37.68
Author
Owner

@PaTTeeL commented on GitHub (Oct 3, 2024):

同样的问题,旧的嵌入式设备,显示Unknown DH group
使用ssh -i ssh_rsa_host_key root@192.168.2.x 提示 Unable to negotiate with 192.168.2.x port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1

使用ssh -i ssh_rsa_host_key -oKexAlgorithms=+diffie-hellman-group1-sha1 root@192.168.2.x 可以正常登录

electerm对应的站点配置文件如下:
{"id":"1jQ0Sn1","title":"","host":"xxxxxxx.local","username":"root","authType":"privateKey","port":22,"encode":"utf-8","enableSsh":true,"envLang":"en_US.UTF-8","term":"xterm-256color","proxy":"","password":"","runScripts":[{"delay":500,"script":"tmux a || tmux\n"}],"displayRaw":false,"passwordEncrypted":true,"color":"#6a737d","sshTunnels":[{}],"connectionHoppings":[],"privateKey":"-----BEGIN RSA PRIVATE KEY-----\nxxxxxxxxxxxxxxx\n-----END RSA PRIVATE KEY-----\n"},
是要在哪里加kex:diffie-hellman-group1-sha1吗?

Electerm版本 微软商店版 1.40.16
Windows版本 Iot LTSC 21H2 Version 10.0.19044.4894

<!-- gh-comment-id:2390643599 --> @PaTTeeL commented on GitHub (Oct 3, 2024): 同样的问题,旧的嵌入式设备,显示Unknown DH group 使用`ssh -i ssh_rsa_host_key root@192.168.2.x` 提示 `Unable to negotiate with 192.168.2.x port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1` 使用`ssh -i ssh_rsa_host_key -oKexAlgorithms=+diffie-hellman-group1-sha1 root@192.168.2.x` 可以正常登录 electerm对应的站点配置文件如下: ```{"id":"1jQ0Sn1","title":"","host":"xxxxxxx.local","username":"root","authType":"privateKey","port":22,"encode":"utf-8","enableSsh":true,"envLang":"en_US.UTF-8","term":"xterm-256color","proxy":"","password":"","runScripts":[{"delay":500,"script":"tmux a || tmux\n"}],"displayRaw":false,"passwordEncrypted":true,"color":"#6a737d","sshTunnels":[{}],"connectionHoppings":[],"privateKey":"-----BEGIN RSA PRIVATE KEY-----\nxxxxxxxxxxxxxxx\n-----END RSA PRIVATE KEY-----\n"},``` 是要在哪里加kex:diffie-hellman-group1-sha1吗? Electerm版本 微软商店版 1.40.16 Windows版本 Iot LTSC 21H2 Version 10.0.19044.4894
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/electerm#2113
No description provided.