Recientemente he comenzado a trabajar con el flujo de autenticación OAuth2. Al usarlo, veo que en el flujo de authcode, el cliente permite que el AuthServer autentique a un usuario, y luego devuelve un código de autenticación al cliente, que luego el cliente intercambiará por un token.
El código de autenticación puede ser pequeño: tan solo 10 dígitos hexadecimales. ¿Es esto realmente seguro? Si un cliente malintencionado pudiera robar credenciales de cliente legítimas, ¿no podría realizar un ataque de suplantación simplemente por fuerza bruta al intentar muchos códigos de autenticación hasta encontrar uno que funcionara? ¿Es esto una debilidad en el flujo de código de autenticación de Oauth2?
¿O es la longitud del código de autenticación un detalle de implementación que se deja en el servidor de autenticación?