Skip to content
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

YKOATH compatability #103

Closed
stv0g opened this issue Oct 11, 2023 · 6 comments
Closed

YKOATH compatability #103

stv0g opened this issue Oct 11, 2023 · 6 comments

Comments

@stv0g
Copy link

stv0g commented Oct 11, 2023

Hi all,

I am currently working on a Golang implementation of the YKOATH protocol: https://github.com/cunicu/go-ykoath

Reading the README of this repo, I got the impression that you are aiming for compatiblity with Yubicos protocol. Is this still the case?

I am facing some issues to select the app via CCID.

See also: cunicu/hawkes#7

@szszszsz
Copy link
Member

szszszsz commented Oct 11, 2023 via email

@szszszsz
Copy link
Member

szszszsz commented Oct 11, 2023 via email

@stv0g
Copy link
Author

stv0g commented Oct 12, 2023

Thanks @szszszsz for the explanation :)

I am wondering: the protocol description is pretty detailed. I will likely start an client implementation based on it in Go.

Are the APDU instructions somehow handled differently over CTAPHID rather than CCID?
Maybe it would avoid confusions if the protocol description would placed in a separate file?
Or to rename the file and cover both CTAPHID and CCID transports in it?

For my use case I am more interested in CCID..

@robin-nitrokey
Copy link
Member

Are the APDU instructions somehow handled differently over CTAPHID rather than CCID?

No. The CTAPHID command payload is interpreted as an APDU and delegated to the CCID implementation, see https://github.com/Nitrokey/trussed-secrets-app/blob/main/src/ctaphid.rs. If you want to use this over CCID, you should just be aware that there can be access conflicts with gnupg. (That’s one of the reasons for adding the CTAPHID interface.)

Or to rename the file and cover both CTAPHID and CCID transports in it?

Good point. We could call it protocol.md and clarify that you can either send the APDUs directly via CCID or wrapped as CTAPHID commands.

@szszszsz
Copy link
Member

szszszsz commented Oct 12, 2023 via email

@stv0g
Copy link
Author

stv0g commented Oct 13, 2023

Okay, I think that aligns with my observations.

I will report once I have a first version of the Go package ready.

@stv0g stv0g closed this as completed Oct 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants