Saltar a contenido

G-Sign

Production · Capa 2 — Firma · Repositorio: sso-gerege-mn (gsign.gerege.mn/) · gsign.gerege.mn

La pasarela para estampar firmas electrónicas con validez jurídica en documentos. Escrita en Go, se apoya en el servicio de firma de eID Mongolia.

Qué hace

  • Firmas PAdES — firma documentos PDF del lado del servidor.
  • Sellado de tiempo — acredita el momento de la firma mediante una TSA RFC 3161.
  • Sign-relay — permite que RP de terceros firmen documentos usando las credenciales eID de la propia plataforma.
  • Certificados Document-Signer — certificados permanentes para firmar en nombre de una organización.

Dos tipos de firma

Tipo Quién firma PIN Para qué
Firma del ciudadano El propio ciudadano PIN2 Contratos, solicitudes, peticiones — expresan la voluntad de una persona
Document-Signer La organización (un sistema) Certificaciones, constancias — acreditan el origen del documento

No mezcle ambos tipos

Un certificado Document-Signer no expresa la voluntad de un ciudadano. Todo documento que exija el consentimiento del ciudadano debe llevar una firma ciudadana hecha con PIN2. Interpretar como consentimiento del ciudadano una firma estampada automáticamente por un sistema vulnera el principio de no repudio.

El flujo de firma

sequenceDiagram
    participant RP as Aplicación RP
    participant GS as G-Sign
    participant EID as eID Mongolia
    participant U as Teléfono del ciudadano
    participant TSA as TSA

    RP->>GS: PDF + solicitud de firma
    GS->>EID: Iniciar sesión de firma
    EID->>U: Push / QR — pedir PIN2
    U-->>EID: Aprobación con PIN2
    Note over EID,U: ECDSA de umbral 2-of-2 —<br/>ambas partes construyen la firma juntas
    EID-->>GS: Valor de la firma
    GS->>TSA: Solicitar sello de tiempo
    TSA-->>GS: Token RFC 3161
    GS-->>RP: PDF firmado (PAdES)

Verificación

Verificar una firma significa comprobar las tres cosas siguientes:

  1. La validez matemática de la firma — que el documento no se ha alterado.
  2. La validez del certificado — mediante OCSP/CRL, tal como estaba en el momento de firmar.
  3. El sello de tiempo — la prueba, vía TSA, de cuándo se estampó la firma.

El tercer punto es clave: aunque un certificado se revoque después, una firma hecha mientras era válido sigue siendo válida. Sin sello de tiempo eso no se puede demostrar.

Quién lo usa

Documentación detallada

La documentación de implementación está en el directorio gsign.gerege.mn/ del repositorio sso-gerege-mn.