Estoy desarrollando una extensión de Firefox y me gustaría proporcionar una actualización automática a mis beta-testers (que no son conocedores de la tecnología). Lamentablemente, el servidor de actualización no proporciona HTTPS. De acuerdo con el Extension Developer Guide on signing updates, tengo que firmar mi update.rdf y proporcionar una clave pública codificada en el archivo install.rdf.Automatice la firma del manifiesto update.rdf para mi extensión de Firefox
Existe la herramienta McCoy en do all of this, pero es una herramienta de GUI interactiva y me gustaría automatizar el empaquetado de extensión con un script Ant (ya que esto es parte de un proceso mucho más grande). No puedo encontrar una descripción más precisa de lo que está sucediendo para firmar el manifiesto de la actualización .rdf que a continuación, y la fuente de McCoy es una gran cantidad de JavaScript.
El doctor dice:
El autor add-on crea un par de claves RSA de cifrado pública/privada. La parte pública de la clave está codificada DER y luego codificada en base 64 y agregada a install.rdf del complemento como una entrada updateKey.
(...)
En términos generales la información de actualización se convierte en una cadena, entonces hash utilizando un algoritmo de hash SHA512 y esto hash es firmado con la clave privada. Los datos resultantes están codificados con DER y luego codificados en base 64 para su inclusión en la actualización.rdf como una entrada de firma.
No conozco bien la codificación DER, pero parece que necesita algunos parámetros.
Así que cualquier persona sabría
- o bien el algortihm completo a firmar el update.rdf y install.rdf usando un par de claves predefinidas, o una alternativa de secuencias de comandos a McCoy
- si una herramienta de línea de comandos como asn1coding se suffise
- una buena/desarrollador sencillo tutorial sobre la codificación DER
en WinXP/Cygwin He cambiado la línea # 55 a nuestro $ tmp = catfile (curdir(), "update.rdf.mxtools. $$. Tmp"); en uhura bat –
de hecho lo usamos en Linux!Por cierto, nos cansamos de firmar los archivos update.rdf y administrar la clave relacionada, por lo que nos movimos a HTTPS: //; hoy en día los certificados SSL son decentemente baratos ... – Stefano
Ahora es 2015, y la construcción de complementos de Firefox todavía es un infierno absoluto. Estoy convencido de que * Mozilla * es malvado. – makhdumi