Cómo funciona las firmas digitales en Shinkansen
Last updated: February 4, 2025
¿Qué es una firma digital?
Es una forma matemática en que el receptor de un mensaje computacional puede verificar su autenticidad. En otras palabras, el receptor del mensaje puede confiar que viene del origen que esperaba.
Dependiendo de cómo se haga la firma, el receptor del mensaje también puede confiar que el contenido o partes del mensaje no han sido modificados durante el envío.
Si eres del area técnica, sabes programar o solo curiosidad te recomendamos revisar la documentación técnica.
¿Cómo funciona en la práctica firmas digitales?
Sin entrar en tecnicismos, una firma digital se resume en que el firmador genera un certificado o llave privada que permite firmar mensajes computacionales. A partir de esta llave privada se pueden generar llaves públicas que permiten a los receptores verificar que el mensaje fue firmado por la llave privada.
Un modelo mental es que la llave privada (certificado privado) corresponde a firmar un documento con puño y letra - solo el firmador en teoría sabe como hacer su firma- . La llave pública (certificado público), es una máquina que sirve para verificar si el documento fue firmado con el puño y letra de la persona original.
De esta forma entonces podemos entender que:
Solo el que firma debe poder tener acceso a la llave privada. Sino, no valdría la pena que firmar.
El que verifica necesita una llave pública - la máquina en nuestro ejemplo -. Así es capaz de verificar el origen.

Luego el mensaje es verificado por Bob usando la llave pública
Otras propiedades interesantes a diferencia de firmar a mano:
Una firma no es repudiable, ya que se puede verificar matemáticamente que fue hecha por ese certificado privado, que en teoría solo conoce el firmador.
Se puede generar un sin fin de llaves públicas para cada receptor y mantener una sola llave privada.
Un certificado privado puede ser generado por un tercero que certifica que existe la relación certificado-persona (o empresa).
Cómo funcionan en Shinkansen
Para cualquier comunicación que signifique movimiento de dinero de la empresa y - posiblemente otros en el futuro - Shinkansen exige una firma digital en el campo Shinkansen-JWS-Signature.
Esta se construye con un certificado privado del participante, toma todo el contenido de la instrucción de movimiento a Shinkansen y la firma usando un algoritmo standard de la industria.
Luego, cuando el mensaje llega a los servidores de Shinkansen, este revisa su API KEY y el campo de la firma para identificar si el origen del mensaje es el servidor del participante. Esta misma verificación nos da la seguridad que a pesar de haber un actor mal intencionado entre la comunicación, el mensaje tampoco fue alterado.
Es importante entonces mantener actualizado los certificados públicos que se suben en Shinkansen y cuidar muy bien el certificado privado que envía transacciones hacia nuestros servicios.
Puedes leer mas en el modelo de seguridad de Payouts