Qué es un token en programación?

Ya te han indicado varias definiciones, pero añadiré algunas más.

En algunos protocolos de seguridad, una parte quiere asegurarse de que la otra parte está «viva», en lugar de ser un impostor que «reproduce» una parte de una sesión anterior. Los ataques de repetición suelen ser llevados a cabo por usuarios no autorizados, reproduciendo sesiones de usuarios legítimos para intentar imitarlos. Así, la primera parte envía un número o una cadena aleatoria, y la otra se supone que la repite, ya sea tal cual o (de forma más segura) después de realizar algún tipo de transformación en ella, preferiblemente requiriendo algún secreto que se espera que tenga la otra parte. Tanto el objeto original como el transformado se denominan a veces fichas. Sin embargo, esto causa confusión con los tokens criptográficos físicos (como los llaveros RSA), que generalmente utilizan un algoritmo basado en el tiempo para determinar cuál debe ser la respuesta adecuada y mostrarla a un humano para que la teclee. Así que, en este sentido, a menudo se utilizan otros términos, como nonce o desafío para el original, y simplemente respuesta o respuesta para la versión transformada.

Luego están las redes informáticas. Es cierto que eso no es exactamente programación, pero alguien tiene que programar el funcionamiento de la red, así que ahí hay un solapamiento. Un estilo de control de flujo de red, que ahora se considera generalmente obsoleto, se llama «anillo de fichas». En lugar de la configuración en «bus» o en «estrella», más común hoy en día con Ethernet y similares, un anillo de fichas se organizaba, sorpresa, en forma de anillo. Cada estación sólo podía «hablar» cuando «tenía» el «token», que era esencialmente un acuerdo entre las estaciones sobre quién lo tenía. (Hace tanto tiempo que no lo miro que no estoy seguro de si se suponía que había una estación «maestra» para designar al actual poseedor de la ficha o qué). Cuando se terminaba (o después de algún límite), se «pasaba» el token a la siguiente estación de trabajo a lo largo del anillo (en alguna dirección definida). Puede que esto sea a lo que se refería R. Drew Davis, pero me pareció que lo asociaba a los datos y no a la estación, así que lo más probable es que sea otra cosa.

Como puedes ver, es una de esas muchas palabras con un gran número de definiciones. Uno pensaría que, al menos en inglés, que tiene tantas palabras, podríamos hacer significados más únicos… pero eso arruinaría TANTOS buenos chistes…. 😉