No puedo comentar sobre este escenario específico ya que hay incógnitas como la limitación de la velocidad por parte del servidor (ver comentario de JonasCz), la entropía de las claves de serie, etc. Este es un enfoque general para considerar esto al proteger su sistemas propios.
Cada uno de los? en la clave de serie puede tomar uno de una serie de valores definidos por un alfabeto. Por ejemplo, el alfabeto binario los limita a [0,1], el hex se limita a [0-F], etc. La cardinalidad (c) del alfabeto es simplemente el número de opciones; binario = 2, hex = 16, y así sucesivamente. Hay 20? por lo tanto, el mejor caso para protección, tenemos c ^ 20 opciones posibles para adivinar (asumiendo una buena fuente de entropía para su generación original).
Caveats
- Probablemente hay limitaciones en las opciones reales en forma de sumas de comprobación o códigos de autenticación para validar un número de serie en particular. Por ejemplo, los últimos 4 caracteres pueden ser un HMAC truncado de los anteriores, con la seguridad proporcionada por la clave de HMAC. Simplemente puede haber una suma de comprobación no criptográfica que no tenga una clave secreta.
- Una variante del problema de cumpleaños : no buscamos coincidir con un número de serie específico. Hay un conjunto de números de serie verdaderos y un conjunto de números adivinados; una intersección de estos conjuntos que no esté vacía es un éxito.
Viabilidad
Una vez que hayamos reducido el espacio de búsqueda dadas las advertencias, podemos evaluar el viabilidad del ataque de fuerza bruta con este excelente cálculo . ("Limitaciones termodinámicas" en Schneider B. Applied Cryptography pp. 157-8).