Estoy buscando formas de asegurar la comunicación http mediante HMAC. Mi entendimiento es que en este escenario, tanto el cliente como el servidor conocen un secreto. Esto significa que el secreto se debe generar primero en el cliente (o en el servidor? ¿Importa de qué lado?). En este punto solo un lado tiene el secreto. ¿Cómo se pasa el secreto al otro lado (o si no se pasa una vez, cómo se llega a conocerlo)? ¿Esto no implicaría enviarlo a través aunque sea una vez? ¿De qué otra manera el secreto sería conocido tanto por el cliente como por el servidor? Si enviarlo durante la inicialización es lo que hay que hacer, ¿cómo se puede hacer esto de manera segura?
Ahora me doy cuenta de que se puede usar un canal separado, como el correo electrónico, etc.