-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SSH-ed25519 incompatabilities causing ssh not working with bun #7130
Comments
Any workaround here @ProgressifyDev ? This is one of the most frustrating bugs I've ever encountered - whole project dependent on bun yet I can't spin up a ssh server Tried everything |
I just bit the bullet and used a node container to handle the rest of the flow. Bun was just used to handle websocket feedback and take the initial REST requests, then a node docker container handles the processing. Both are tied together using BullMQ.... Shame really, I chose Bun for the processing speed. |
May be fixed with #7256 but I have yet to verify it, I just came back to check if this issue was somehow resolved |
What a pity this doesn't work |
In bun |
A dirty workaround until it's fixed is to use the patch-package postinstall script to patch out the verify call
{
...
"scripts": {
"postinstall": "patch-package"
},
...
}
Hope this helps but use it on your own risk |
We have implemented X25519 support in Bun v1.2.1 Are you still running into this in Bun v1.2.1? |
Yes, just tested it today with 1.2.1 since I've seen it in the changelogs and was kind of hyped until it still did not work. In general it seems to work, just the verify that ssh2 is doing is returning false for some reason. When removing that check using the patch it works totally fine. |
As mentioned by JanHolger, X25519 functions well in bun( I can confirm that crypto.verify(null, data, key, sig); in package However, after manually nopping that verify and then everything works well. - verified = crypto.verify(null, data, key, sig);
+ verified = true // crypto.verify(null, data, key, sig); |
What version of Bun is running?
1.0.11+f7f6233ea
What platform is your computer?
Darwin 21.6.0 x86_64 i386
What steps can reproduce the bug?
Basically, I am using ssh2 to connect and process information from SFTP.
When I try to connect using bun --watch index.ts , it gives me this error
Error: Cannot parse privateKey: Unsupported OpenSSH private key type: ssh-ed25519
Running it on nodejs v16.20.1 works flawlessly
Reading documentation regarding Bun, ssh2 and node, leads me to believe it has something to do with the engine itself.
From SSH2 and this issue
What is the expected behavior?
Successful connection with sftp
What do you see instead?
Error: Cannot parse privateKey: Unsupported OpenSSH private key type: ssh-ed25519
Additional information
May be related to these two
#6418
#6417
The text was updated successfully, but these errors were encountered: