Why does WebAuthn require a challenge when asking the client to register a new credential?

When registering a new credential as part of WebAuthn, why does the client need to be sent a challenge?

Presumably this is to prevent a replay attack, but wouldn’t a replay attack be prevented by TLS already?

Continue reading Why does WebAuthn require a challenge when asking the client to register a new credential?