Yubikey - U2F server vs FIDO2 server

454 views
Skip to first unread message

Jack

unread,
Sep 24, 2019, 11:49:38 PM9/24/19
to FIDO Dev (fido-dev)
We are implementing U2F using Yubikey device. We might want to support WebAuthn in future.

Is it better to implement WebAuthn server now, since it is backward compatible with U2F?

I see that the basic protocol is same for both U2F and WebAuthn. If we implement U2F server now, will there be lot of changes on the U2F server to support WebAuthn?

Thanks in advance.

Emil Lundberg

unread,
Sep 25, 2019, 3:38:46 AM9/25/19
to fido...@fidoalliance.org

Hi,

Yes, it will probably be both more work and more difficult to deploy U2F first and migrate to WebAuthn later. WebAuthn is also already better supported by more browsers than U2F ever was - including native support in mobile operating systems for using the same credentials in mobile apps.

Yes, there would be a lot of changes to the U2F server to support WebAuthn. WebAuthn has a much wider scope than U2F does - including more parameters, more key formats and more signature formats. Most of the expanded cryptography and verification logic can be abstracted by libraries, but the application still needs to be aware of and support the wider API surface.

I recommend skipping U2F entirely and starting out with WebAuthn. Your users will have a better experience, you will spend less effort, and you won't need to add complexity to migrate later.

Emil Lundberg

Software Developer | Yubico


--
You received this message because you are subscribed to the Google Groups "FIDO Dev (fido-dev)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fido-dev+u...@fidoalliance.org.
To view this discussion on the web visit https://groups.google.com/a/fidoalliance.org/d/msgid/fido-dev/dccb7e6e-1665-489a-8e1a-2bd05726c2ae%40fidoalliance.org.
signature.asc

Arshad Noor

unread,
Sep 25, 2019, 8:20:34 AM9/25/19
to sana...@gmail.com, fido...@fidoalliance.org

I would concur with Emil, Jack.

But, why would you want to waste time writing your own FIDO2 server? There is a FIDO Certified, open-source implementation - now with high-availability built-in in Github that supports both FIDO2 and U2F Authenticators today; check it out: https://github.com/strongkey/fido2

Arshad Noor
StrongKey

Ackermann Yuriy

unread,
Sep 25, 2019, 8:37:35 AM9/25/19
to Arshad Noor, sana...@gmail.com, FIDO Dev (fido-dev)
To be fair there are far more FIDO Conformant open source servers.


You can find the list of those servers and more  here: https://github.com/herrjemand/awesome-webauthn

You might as well wanna read this introduction to WebAuthn API https://medium.com/@herrjemand/introduction-to-webauthn-api-5fd1fb46c285

Regards. Yuriy

Yuriy Ackermann
FIDO, Identity, Standards
skype: ackermann.yuriy
github: @herrjemand
twitter: @herrjemand
medium: @herrjemand


--
You received this message because you are subscribed to the Google Groups "FIDO Dev (fido-dev)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fido-dev+u...@fidoalliance.org.

John Bradley

unread,
Sep 25, 2019, 8:54:52 AM9/25/19
to fido...@fidoalliance.org

Yes start with WebAuthn.   That will work just fine with older U2F keys.   Dont do a U2F server and migrate if you are just starting.

John B.

Jack

unread,
Sep 25, 2019, 9:30:20 AM9/25/19
to FIDO Dev (fido-dev)
Thank you all. This really helps.
To unsubscribe from this group and stop receiving emails from it, send an email to fido...@fidoalliance.org.
--
You received this message because you are subscribed to the Google Groups "FIDO Dev (fido-dev)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fido...@fidoalliance.org.

Arshad Noor

unread,
Sep 25, 2019, 11:07:41 AM9/25/19
to fido...@fidoalliance.org

Yuriy,

Can you distinguish between "FIDO Conformant" and "FIDO Certified", please? I have come across the expression "FIDO Conformant", let alone where the word conformant was capitalized to imply some standard.

If someone from the FIDO Alliance's certification team is on this forum, can they also add some clarity to this?  I only see "FIDO Certified" on the official pages of the FIDO Alliance: https://fidoalliance.org/certification/

Thank you.

Arshad Noor
StrongKey

Arshad Noor

unread,
Sep 25, 2019, 11:13:50 AM9/25/19
to fido...@fidoalliance.org

I meant to say that I have NOT come across the term "FIDO Conformant"....

Arshad

--
You received this message because you are subscribed to the Google Groups "FIDO Dev (fido-dev)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fido-dev+u...@fidoalliance.org.

Ackermann Yuriy

unread,
Sep 25, 2019, 12:57:27 PM9/25/19
to Arshad Noor, FIDO Dev (fido-dev)
  • What is FIDO CERTIFIED?

FIDO CERTIFIED means that implementation has passed FIDO conformance tools, passed interoperability even, and has achieved official FIDO Alliance certification.

  • What is FIDO COMPLIANT?

FIDO COMPLIANT means that implementation has passed FIDO conformance tools.

FIDO Conformant is a widely accepted term for products that have passed tools, but have not achieved certification.

Yuriy Ackermann
FIDO, Identity, Standards
skype: ackermann.yuriy
github: @herrjemand
twitter: @herrjemand
medium: @herrjemand

Arshad Noor

unread,
Sep 25, 2019, 1:17:35 PM9/25/19
to Ackermann Yuriy, FIDO Dev (fido-dev)

When you say "FIDO conformance tools" are these official "FIDO Alliance conformance tools"?

So, "FIDO Conformant" implies that it addresses protocol-level requirements (per FIDO Alliance? Or is it self-asserted?), but there are no guarantees of interoperability?

Is "FIDO Conformant" a FIDO Alliance program and something supported by the FIDO Alliance?

Are you (still) working at FIDO Alliance? I'm a little confused by your e-mail address since it no longer says @fidoalliance.org, so I'm unsure if you're speaking for the FIDO Alliance or for yourself?

Thanks.

Arshad Noor
StrongKey

Ackermann Yuriy

unread,
Sep 25, 2019, 1:22:18 PM9/25/19
to Arshad Noor, FIDO Dev (fido-dev)
Yes official tools. Means that passed the conformant tools, and maybe even an interop, but have not achieved official certification.

I am speaking for my self. This is a FIDO Dev mailing list.

Yuriy Ackermann
FIDO, Identity, Standards
skype: ackermann.yuriy
github: @herrjemand
twitter: @herrjemand
medium: @herrjemand

Ackermann Yuriy

unread,
Sep 25, 2019, 1:54:33 PM9/25/19
to Arshad Noor, FIDO Dev (fido-dev)
Opinions expressed are solely my own and do not express the views or opinions of my employers.

Yuriy Ackermann
FIDO, Identity, Standards
skype: ackermann.yuriy
github: @herrjemand
twitter: @herrjemand
medium: @herrjemand

Jack

unread,
Sep 25, 2019, 11:05:35 PM9/25/19
to FIDO Dev (fido-dev)
Hi Emil,

We need to support both U2F and WebAuthn on both old and new yubikeys. Are you suggesting we should implement only WebAuthn registration and WebAuthn authentication? I'm little confused how WebAuthn server would support U2F. (I'm using https://developers.yubico.com/java-webauthn-server/webauthn-server-demo/ to understand how WebAuthn and U2F work)


On Wednesday, September 25, 2019 at 2:38:46 AM UTC-5, Emil Lundberg wrote:

Hi,

Yes, it will probably be both more work and more difficult to deploy U2F first and migrate to WebAuthn later. WebAuthn is also already better supported by more browsers than U2F ever was - including native support in mobile operating systems for using the same credentials in mobile apps.

Yes, there would be a lot of changes to the U2F server to support WebAuthn. WebAuthn has a much wider scope than U2F does - including more parameters, more key formats and more signature formats. Most of the expanded cryptography and verification logic can be abstracted by libraries, but the application still needs to be aware of and support the wider API surface.

I recommend skipping U2F entirely and starting out with WebAuthn. Your users will have a better experience, you will spend less effort, and you won't need to add complexity to migrate later.

Emil Lundberg

Software Developer | Yubico


On 2019-09-25 05:49, Jack wrote:
We are implementing U2F using Yubikey device. We might want to support WebAuthn in future.

Is it better to implement WebAuthn server now, since it is backward compatible with U2F?

I see that the basic protocol is same for both U2F and WebAuthn. If we implement U2F server now, will there be lot of changes on the U2F server to support WebAuthn?

Thanks in advance.
--
You received this message because you are subscribed to the Google Groups "FIDO Dev (fido-dev)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fido...@fidoalliance.org.

Arshad Noor

unread,
Sep 25, 2019, 11:20:13 PM9/25/19
to fido...@fidoalliance.org, sana...@gmail.com

The FIDO2 protocol (of which WebAuthn is a sub-protocol) is backwardly compatible with U2F, Jack. By using a FIDO2 server that handles both U2F and FIDO2 registrations/authentications, you can transparently support both protocols/Authenticators in the same web-application.

If you have both, a native U2F and a FIDO2 Authenticator, take them for a spin on https://fido2.strongkey.com.  You'll see both of them successfully register and authenticate on that site. If interested, the "Proof of Concept" application you tested is available here: https://github.com/StrongKey/fido2/tree/master/sampleapps/java/poc.

Arshad Noor
StrongKey

Jack

unread,
Sep 26, 2019, 11:33:10 PM9/26/19
to FIDO Dev (fido-dev), sana...@gmail.com, arsha...@strongkey.com
Thanks Arshad. This helps

Ze Ee

unread,
Sep 27, 2019, 9:56:44 AM9/27/19
to Arshad Noor, fido...@fidoalliance.org, sana...@gmail.com


0000

ในวันที่ พฤ. 26 ก.ย. 2019 10:20 Arshad Noor <arsha...@strongkey.com> เขียนว่า:
--
You received this message because you are subscribed to the Google Groups "FIDO Dev (fido-dev)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fido-dev+u...@fidoalliance.org.
To view this discussion on the web visit https://groups.google.com/a/fidoalliance.org/d/msgid/fido-dev/ea6bf7b1-1529-17ad-3c38-37526eb8226e%40strongkey.com.

Ze Ee

unread,
Sep 27, 2019, 9:57:17 AM9/27/19
to Arshad Noor, fido...@fidoalliance.org, sana...@gmail.com


0000

ในวันที่ ศ. 27 ก.ย. 2019 10:09 Ze Ee <zee9...@gmail.com> เขียนว่า:
Reply all
Reply to author
Forward
0 new messages