flipperdevices / flipperzero-firmware

Flipper Zero firmware source code
https://flipperzero.one
GNU General Public License v3.0
12.5k stars 2.68k forks source link

ED25519 support for U2F #2079

Open exussum12 opened 1 year ago

exussum12 commented 1 year ago

Description of the feature you're suggesting.

Using the flipper zero as my private key for ssh I would expect

ssh-keygen -t ed25519-sk -f ~/.ssh/flipper.pub

to generate a key in the same way

ssh-keygen -t ecdsa-sk -f ~/.ssh/flipper.pub

does. (the ecdsa works as expected and I can ssh using this as the key)

Output is currently

Generating public/private ed25519-sk key pair.
You may need to touch your authenticator to authorize key generation.
Key enrollment failed: invalid format

the -vvv logs too

debug1: sshsk_enroll: using random challenge
debug1: sk_probe: 1 device(s) detected
debug1: sk_probe: selecting sk by touch
debug1: ssh_sk_enroll: using device /dev/hidraw9
debug1: ssh_sk_enroll: fido_dev_make_cred: FIDO_ERR_INVALID_ARGUMENT
debug1: sshsk_enroll: provider "internal" failure -1
debug1: ssh-sk-helper: Enrollment failed: invalid format
debug1: main: reply len 8
debug3: ssh_msg_send: type 5
debug1: client_converse: helper returned error -4
debug3: reap_helper: pid=72051
Key enrollment failed: invalid format

Anything else?

No response

exussum12 commented 1 year ago

Looks like the upstream library doesn't support the curve

https://github.com/kmackay/micro-ecc http://kmackay.ca/micro-ecc/