Articulo de referencia

Firma digital de BLS

Una firma digital BLS, también conocida como Boneh – Lynn – Shacham [ 1 ] (BLS), es un esquema de firma criptográfica que permite a un usuario verificar que un firmante es autén...

Una firma digital BLS, también conocida como Boneh Lynn Shacham [ 1 ] (BLS), es un esquema de firma criptográfica que permite a un usuario verificar que un firmante es auténtico .

El esquema utiliza un emparejamiento bilineal.mi:GRAMO1×GRAMO2GRAMOT{\displaystyle e:G_{1}\times G_{2}\to G_{T}}, dóndeGRAMO1,GRAMO2,{\displaystyle G_{1},G_{2},}yGRAMOT{\displaystyle G_{T}}son grupos de curvas elípticas de orden primoq{\displaystyle q}y una función hashH{\displaystyle H}desde el espacio de mensajes enGRAMO1{\displaystyle G_{1}}. La firma son elementos deGRAMO1{\displaystyle G_{1}}, las claves públicas son elementos deGRAMO2{\displaystyle G_{2}}y la clave secreta es un número entero en[0,q1]{\displaystyle [0,q-1]}Trabajar en un grupo de curvas elípticas proporciona cierta defensa contra los ataques de cálculo de índices (con la salvedad de que tales ataques aún son posibles en el grupo objetivo) .GRAMOT{\displaystyle G_{T}}del emparejamiento), lo que permite firmas más cortas que las firmas FDH para un nivel de seguridad similar .

Las firmas producidas por el esquema de firma BLS se denominan a menudo firmas cortas , firmas cortas BLS o simplemente firmas BLS . [ 2 ] El esquema de firma es demostrablemente seguro (el esquema es existencialmente infalsificable bajo ataques adaptativos de mensajes elegidos ) en el modelo de oráculo aleatorio , asumiendo la intratabilidad del problema computacional de Diffie-Hellman en un grupo de Diffie-Hellman con brecha. [ 1 ]

esquema de firmas de BLS

Un esquema de firma consta de tres funciones: generar , firmar y verificar . [ 1 ]

Generación de claves

El algoritmo de generación de claves selecciona la clave privada eligiendo un número entero aleatorio.incógnita[0,q1]{\displaystyle x\in [0,q-1]}. El poseedor de la clave privada publica la clave pública,gramo2incógnita{\displaystyle g_{2}^{x}}, dóndegramo2{\displaystyle g_{2}}es un generador deGRAMO2{\displaystyle G_{2}}.

Firma

Dada la clave privadaincógnita{\displaystyle x}y algún mensajemetro{\displaystyle m}Calculamos la firma mediante el hash de la cadena de bits.metro{\displaystyle m}, comoh=H(metro){\displaystyle h=H(m)}y generamos la firmaσ=hincógnita{\displaystyle \sigma =h^{x}}.

Verificación

Se le dio una firmaσ{\displaystyle \sigma }para mensajemetro{\displaystyle m}y clave públicagramo2incógnita{\displaystyle g_{2}^{x}}, verificamos quemi(σ,gramo2)=mi(H(metro),gramo2incógnita){\displaystyle e(\sigma ,g_{2})=e(H(m),g_{2}^{x})}.

Propiedades

  • Único y determinista: para una clave y un mensaje dados, solo hay una firma válida (como RSA PKCS1 v1.5, RSA-FDH y a diferencia de RSA-PSS, DSA, ECDSA, Schnorr y ML-DSA ). [ 3 ]
  • Agregación de firmas: Varias firmas generadas bajo múltiples claves públicas para múltiples mensajes pueden agregarse en una sola firma. [ 4 ]
  • Firmas de umbral simples [ 5 ] y multifirmas. [ 6 ]

Curvas

BLS12-381

BLS12-381 forma parte de una familia de curvas elípticas que llevan el nombre de Barreto, Lynn y Scott [ 7 ] (un trío BLS diferente, excepto por la L). Fue diseñada por Sean Bowe a principios de 2017 como base para una actualización del protocolo Zcash . Es compatible con el emparejamiento, lo que la hace eficiente para firmas digitales, y eficaz para la construcción de zkSnarks [ 8 ] . El uso de la curva BLS12-381 para firmas BLS se detalla en el borrador de Internet de la IETF de junio de 2022 [ 9 ] .

Implementaciones

  • La red Chia ha utilizado firmas BLS. [ 10 ] [ 11 ]
  • Para 2021, las firmas BLS se utilizaban en la capa de consenso de Ethereum Proof-of-Stake para agregar firmas de todos los validadores. Cada validador participa en la certificación de la validez de una sola ranura (es decir, bloque) por época de 6,4 minutos. [ 12 ] El uso de firmas BLS en Ethereum se considera una solución al cuello de botella de verificación solo a mediano plazo, ya que las firmas BLS no son seguras frente a ataques cuánticos . A largo plazo, digamos, entre 2025 y 2030, se espera que la agregación STARK sea un reemplazo directo para la agregación BLS. [ 9 ] [ 13 ]
  • La criptomoneda Skale utiliza el algoritmo de firma BLS. [ 14 ]
  • drand utiliza la curva BLS12-381 como esquema de umbral. [ 15 ]

Véase también

Referencias

  1. 1 2 3 Dan Boneh ; Ben Lynn y Hovav Shacham (2004). "Firmas cortas del emparejamiento de Weil". Journal of Cryptology . 17 (4): 297– 319. CiteSeerX 10.1.1.589.9141 . doi : 10.1007/s00145-004-0314-9 . S2CID 206885645 .  
  2. "Ethereum 2.0 Fase 0 -- La cadena Beacon : firmas BLS" . GitHub . 28 de julio de 2020. Consultado el 4 de septiembre de 2020 . 
  3. Shacham, Hovav. "Nuevos paradigmas en esquemas de firmas" (PDF) . www.semanticscholar.org . pág. 18. Consultado el 7 de junio de 2024 . 
  4. D. Boneh, C. Gentry, H. Shacham y B. Lynn, Firmas agregadas y verificablemente cifradas a partir de mapas bilineales , actas de Eurocrypt 2003, LNCS 2656, págs. 416-432, 2003
  5. Craige, Jake (11 de marzo de 2020). "Firmas BLS umbral" . jcraige.com . Recuperado el 8 de agosto de 2022 .
  6. Boldyreva, Alexandra (2002). «Firmas de umbral, multifirmas y firmas ciegas basadas en el esquema de firma Gap-Diffie-Hellman-Group» . En Desmedt, Yvo G. (ed.). Criptografía de clave pública — PKC 2003. Lecture Notes in Computer Science. Vol. 2567. Berlín, Heidelberg: Springer. pp. 31–46 . doi : 10.1007/3-540-36288-6_3 . ISBN   978-3-540-36288-3.
  7. Barreto, Paulo SLM; Lynn, Ben; Scott, Michael (2003), "Construcción de curvas elípticas con grados de incrustación prescritos" , Seguridad en redes de comunicación , Berlín, Heidelberg: Springer Berlin Heidelberg, pp. 257–267 , doi : 10.1007/3-540-36413-7_19 , ISBN  978-3-540-00420-2, consultado el 11 de febrero de 2024
  8. "BLS12-381 Para el resto de nosotros" . HackMD . Consultado el 11 de febrero de 2024 .
  9. 1 2 Boneh, Dan; Gorbunov, Sergey; Wahby, Riad S.; Wee, Hoeteck; Wood, Christopher A.; Zhang, Zhenfei (2022-06-16). Firmas BLS (Informe). Grupo de trabajo de ingeniería de Internet.
  10. "5. Firmas BLS | Documentación de Chia" . docs.chia.net . Consultado el 7 de junio de 2023 .
  11. Firmas de la BLS
  12. "Atestaciones" . ethereum.org . Ethereum.org . Consultado el 20 de noviembre de 2025 .
  13. Drake, Justin (5 de diciembre de 2019). "Agregación pragmática de firmas con BLS" . ethresear.ch/ . Investigación ETH . Recuperado el 8 de enero de 2021 .
  14. "Documentación de SKALE :: Documentación de la red SKALE" . docs.skale.network . Consultado el 16 de agosto de 2024 . 
  15. "2.1 Criptografía" . drand . Consultado el 18 de noviembre de 2024 .
  • Descripción resumida del borrador del estándar de Algorand
  • Biblioteca PBC de Ben Lynn
  • Implementación de firmas BLS de Chia Network (C++)