Recent blog entries for olea

Compiling node.js for Android Lollipop

While participating in the Nordic IoT Hackathon 2015 our team Hello North (wrongly tagged as «HackLab team») wanted to explore the potential of running node.js applications running native in Android.

Happily this was solved by Yaron Y. Goland and described in a post. Using his method I've compiled node.js against android-ndk-r10d running the example on a 4.2.2 rooted device.

The next step was to try in a unrooted one, but only got at first a 5.0 Lollipop one. Execution failed with a error: only position independent executables (PIE) are supported. error message. Some investigation got me to a solved bug report. The magic trick seems to be just this patch.

It took me some time to understand how to add this to the node.js building configuration system but seems got fixed just like this:

--- /home/olea/node/android-configure~  2015-04-11 02:46:04.063966802 +0200
+++ /home/olea/node/android-configure   2015-04-11 01:56:34.470154253 +0200
@@ -6,14 +6,16 @@
     --toolchain=arm-linux-androideabi-4.8 \
     --arch=arm \
     --install-dir=$TOOLCHAIN \
-    --platform=android-9
+    --platform=android-16
 export PATH=$TOOLCHAIN/bin:$PATH
 export AR=arm-linux-androideabi-ar
 export CC=arm-linux-androideabi-gcc
 export CXX=arm-linux-androideabi-g++
 export LINK=arm-linux-androideabi-g++
+export CPPFLAGS="-fPIE"
+export LDFLAGS="-fPIE -pie -L$PREFIX/lib"
 

And this is the test:

¡Yepa!

PS: Just checked the same build using android-16 platform runs in 4.2.2. ¡Double Yepa!

Syndicated 2015-04-11 06:20:00 from Ismael Olea

Qué es el procomún

El siguiente texto lo he preparado a la sazón del programa de actividades complementarias del Almería Creative Commons Film Festival, el primer festival, y casi la primera actividad, en Almería exclusivamente dedicado a este mundo. Me ha gustado tanto que he querido publicarlo en mi propio blog. Aquí queda:

¿QUÉ ES EL PROCOMÚN?

El DRAE lo define como

 procomún.
        ( De pro, provecho, y común).
        1. m. Utilidad pública.

pero el filósofo Antonio Lafuente va mucho más allá:

«lo que es de todos y de nadie al mismo tiempo»

Para Antonio la expresión procomún es la traducción al español más acertada para el término inglés commons. Pero ¿tiene que ver el procomún con nuestra vida diaria? Absolutamente: el aire, el futuro, los sentimientos, el ADN, todos son procomunes cotidianos, casi personales. Otros son más distantes pero igualmente indispensables: las pesquerías, parques naturales… la lista es ¿infinita?. Y tenemos otros procomunes que están floreciendo avivados por el galopante desarrollo tecnológico: el software libre, la Wikipedia, Internet y la Web dentro de ella. El mismo HackLab Almería es un modesto procomún que nos empeñamos en construir para ponerlo a vuestra disposición.

Syndicated 2015-03-10 16:00:00 from Ismael Olea

18 Feb 2015 (updated 18 Feb 2015 at 18:07 UTC) »

¿Cambios en la AC FNMT-RCM? Probando el servidor OCSP

A raíz de un hilo en Twitter sobre la inexistencia del servicio de CRL de la Autoridad de Certificación de la FNMT sólo se me ha ocurrido que en vez de dedicarme a mis responsabilidades me era imperioso saber qué se estaba cociendo... La noticia más chocante es la actividad reciente en la infame entrada #435736 del bugzilla de Mozilla (abierta desde 2008 para que Mozilla acepte el certificado raiz de la AC FNMT). Parece que por fin alguien se está aplicando a resolver el problema. Y entre las perlas más suculentas allí recogidas está un documento titulado General Certification Practices Statement en el que aparecen detalles como, precisamente, las URIs de publicación de los CRL o los varios servicios OCSP aparentemente disponibles. Si eres de los que han estudiado anteriormente el uso de CERES-FNMT probablemente hayas levantado una ceja. Sí: parece que están habilitando por fin estos servicios. El que no conozca la causa de nuestra sorpresa deberá saber que hasta ahora el servicio de validación de certificados de CERES FNMT para certificados de usuario final (por ejemplo de ciudadanos corrientes y molientes) ha sido de pago (ver ilustración). Para algunos esta ha sido otra de las causas que han lastrado la adopción de la firma digital en España.

Entre los detalles me han llamado la atención las URIs de los servicios OCSP:

y claro, inmediatamente he querido verificar si ya estaban operativos, con la triste circunstancia de que no tengo ni idea de cómo hacerlo. Tras algo de investigación y con oportunismo de corta y pega he dado con una orden que creo serviría:

openssl ocsp -issuer AC_Raiz_FNMT-RCM_SHA256.cer -serial 0x36f11b19 -url http://ocspfnmtrcmca.cert.fnmt.es/ocspfnmtrcmca/OcspResponder -CAfile AC_Raiz_FNMT-RCM_SHA256.cer 
Siendo:
  • -issuer AC_Raiz_FNMT-RCM_SHA256.cer el certificado raiz de la AC en cuestión;
  • -serial 0x36f11b19 el número de serie de un certificado FNMT emitido en 2005 y caducadísimo;
  • -url http://ocspfnmtrcmca.cert.fnmt.es/ocspfnmtrcmca/OcspResponder la URI del servicio OCSP que usaremos, en este caso he elegido el que arriba aparece denominado «ROOT AC. Access» porque me ha parecido el más general para el servicio de particulares comparado con los otros dos;
  • -CAfile AC_Raiz_FNMT-RCM_SHA256.cer realmente no sé porqué habría de usar este parámetro, entiendo que es para verificar el resultado ofrecido por el servicio OCSP y todos los ejemplos que he encontrado lo usan de alguna forma; curiosamente sólo he conseguido eliminar los mensajes de error usando el mismo certificado que en -issuer pero no sé si es el comportamiento correcto o si en este caso funciona así por ser un certificado raiz autofirmado.

El resultado obtenido es el siguiente:

Response verify OK
0x36f11b19: good
    This Update: Nov 18 12:11:20 2014 GMT
    Next Update: May 17 11:11:20 2015 GMT

Y podréis decir «pues qué bien, ¿no?». O no. No lo sé. Ignoro los intríngulis de protocolo OCSP pero me esperaba  otra respuesta para un certificado caducado hace más de ocho años. El  caso es el que servicio sí está levantado y podemos ver más detalles usando la opción -text de openssl oscp:

OCSP Response Data:
    OCSP Response Status: successful (0x0)
    Response Type: Basic OCSP Response
    Version: 1 (0x0)
    Responder Id: C = ES, O = FNMT-RCM, OU = AC RAIZ FNMT-RCM, CN = SERVIDOR OCSP AC RAIZ FNMT-RCM
    Produced At: Feb 18 16:27:29 2015 GMT
    Responses:
    Certificate ID:
      Hash Algorithm: sha1
      Issuer Name Hash: BADF8AE3F7EB508C94C1BAE31E7CDC3A713D4437
      Issuer Key Hash: F77DC5FDC4E89A1B7764A7F51DA0CCBF87609A6D
      Serial Number: 36F11B19
    Cert Status: good
    This Update: Nov 18 12:11:20 2014 GMT
    Next Update: May 17 11:11:20 2015 GMT

El caso es que he probado a usar variantes del número serie aleatorias así como de certificados en vigor y siempre da un «good» por respuesta. Y lo poco que me ha podido contar alguien más familiarizado con la tecnología de AC es que este tipo de comportamiento en un servicio OCSP sería normal.

Dudas:

  • El servicio OCSP de FNMT, o al menos el que he usado, está levantado, sí, pero ¿ya está realmente operativo?
  • ¿Es correcta mi manera de invocarlo desde openssl? no estoy seguro;

Otras conclusiones:

Diría que efectivamente parece FNMT se ha tomado en serio configurarse como una autoridad de certificación seria. Por fin. Supongo que ha podido la presión de al menos los usuarios corporativos públicos que últimamente están emitiendo sus certifcados X509 de servidor a través de Camerfirma (verbigracia la Agencia Tributaria), supongo que cansados de que los usuarios menos avezados se hagan un lío con el proceso de instalación del certificado raiz adecuado y de no saber interpretar correctamente los mensajes de precaución de los navegadores. También parece que empiezan a dejar de usar el nombre Ceres para referirse al servicio. Al menos ha sido mi impresión.

Si alguien detecta errores en lo aquí mostrado estaré encantado de corregir lo que haga falta.





#X509 #SSL #FNMT #CERES #OCSP


Syndicated 2015-02-18 22:05:00 (Updated 2015-02-18 18:07:10) from Ismael Olea

#AllTrials: campaña de cabildeo a los eurodiputados

Desde AllTrials.net informan de los avances en la campaña para que la Unión Europea regule la transparencia de los resultados de todos los ensayos clínicos que se realicen a la hora de estudiar posibles nuevas medicinas.

Para el siguiente paso nos solicitan dirigirnos a nuestros eurodiputados para hacerles llegar una carta pidiéndoles el voto a favor del llamado informe Willmott en una votación que tendrá lugar el próximo 3 de abril. Me he tomado la libertad de traducirla a español y ponerla a disposición de todos los interesados:

Estimado parlamentario:

Me dirijo a usted para rogarle que apoye al Informe Willmot acerca de la Regulación de Ensayos Clínicos.

El próximo 3 de abril de 2014 suya será la oportunidad de votar a favor de aumentar significativamente la transparencia de los datos obtenidos en las pruebas clínicas. Una vez que la regulación esté en marcha todas las compañías farmacéuticas y los patrocinadores no comerciales de ensayos clínicos tendrán la obligación de:

  • enviar un resumen de los resultados a una base de datos accesible públicamente en el plazo de un año tras concluir la investigación;
  • enviar un resumen comprensible para un observador neutral;
  • enviar los informes completos de estudios clínicos de los ensayos cuando se solicite la puesta en el mercado de una medicina;
  • registrar o publicar ensayos anteriores si con ellos se pretende respaldar solicitudes para nuevos ensayos;
  • someterse a penalizaciones económicas si no se cumplen los requisitos de transparencia.

Es de enfatizar que estas reglas aplicarán en cualquier caso, no importa si el resultado del ensayo ha sido exitoso, un fracaso o inconcluyente.

Aproximadamente la mitad de todos los ensayos clínicos no han sido publicados. Algunos siquiera han sido registrados. Si no se toman medidas urgentes, el detalle de qué es lo que se ha hecho y qué se descubrió durante los ensayos podría perderse para siempre, en perjuicio de elecciones de tratamientos, oportunidades perdidas para hacer buena medicina y ensayos que habrían de ser repetidos innecesariamente.

¿Va a ayudar a mejorar la seguridad de los pacientes, a la ciencia más sólida y al avance de la medicina votando a favor del informe el 3 de abril?


Atentamente (el signatario)



La idea es enviar una copia de esta carta a nuestros europarlamentarios. También tenéis disponible el enlace a las páginas de su perfiles en la web del Parlamento Europeo, que a su vez contienen al menos el correo electrónico, en un único fichero pdf.

Desde aquí sólo puedo animaros a apoyar este extraordinario ejercicio de transparencia dirigiéndoos a vuestros parlamentarios.

Syndicated 2014-02-05 03:10:00 from Ismael Olea

Updating CAcert.org X.509 certificates for CentOS

My SSL/TLS certificate has expired so I need to request a new one and I'm summing here all the process.

As my current configuration is more or less a mess, I'm starting from the very begining but I assume you are registered at CAcert.org and you are able to request server certificates for your verified domains. I'll use my tormento.olea.org server as the hostname example.

The better way to me is to use CAcert.org key and CSR creation script (which uses openssl), specially needed when you want to add several domains to the certificate.
# sh csr
Private Key and Certificate Signing Request Generator
This script was designed to suit the request format needed by
the CAcert Certificate Authority. www.CAcert.org

Short Hostname (ie. imap big_srv www2): tormento
FQDN/CommonName (ie. www.example.com) : tormento.olea.org
Type SubjectAltNames for the certificate, one per line. Enter a blank line to finish
SubjectAltName: DNS:olea.org
SubjectAltName: DNS:www.olea.org
SubjectAltName: DNS:olea.es
SubjectAltName: DNS:www.olea.es
SubjectAltName: DNS:ismael.olea.org
SubjectAltName: DNS:
Running OpenSSL...
Generating a 2048 bit RSA private key
.............+++
................................................................................................+++
writing new private key to '/root/tormento_privatekey.pem'
-----
Copy the following Certificate Request and paste into CAcert website to obtain a Certificate.
When you receive your certificate, you 'should' name it something like tormento_server.pem

-----BEGIN CERTIFICATE REQUEST-----
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah
blahblahblahblahblahblahblahblahblahblahblah
-----END CERTIFICATE REQUEST-----

The Certificate request is also available in /root/tormento_csr.pem
The Private Key is stored in /root/tormento_privatekey.pem

Note: I found the genkey tool (from the crypto-utils package) takes a lot of more time to generate a same key lenght. Probably due to some kind design goal. I think you could use genkey to generate the key and the csr script for the multi-dns CSR request.

Then I move files to correct systems places:

mv /root/tormento_csr.pem /etc/pki/tls/certs/tormento.olea.org.0.csr.pem
mv /root/tormento_privatekey.pem /etc/pki/tls/private/tormento.olea.org.key.pem

Then I ask for a certification at CAcert website. CAcert recomends to select a Class 3 root certificate.

Cut and paste the certificate from the browser into the system:

# cat > /etc/pki/tls/certs/tormento.olea.org.crt.pem

You can check the certificate is correct using openssl. And you'll receive an email from CAcert reporting about the new certificate.


Then you can configure your applications to use the new crypto key and certificate.

applications:

These are the applications I've configured for my needs. You have other configuration examples at CAcert website.

postfix

# grep tls /etc/postfix/main.cf

smtpd_tls_key_file = /etc/pki/tls/private/tormento.olea.org.key.pem
smtpd_tls_cert_file = /etc/pki/tls/certs/tormento.olea.org.crt.pem
smtpd_tls_CAfile = /etc/pki/tls/certs/CAcert_chain.pem
smtp_use_tls = yes
smtp_tls_key_file = /etc/pki/tls/private/tormento.olea.org.key.pem
smtp_tls_cert_file = /etc/pki/tls/certs/tormento.olea.org.crt.pem
smtp_tls_CAfile = /etc/pki/tls/certs/CAcert_chain.pem

ejabberd

Create a key + certificate file:
# cat /etc/pki/tls/private/tormento.olea.org.key.pem > /etc/pki/ejabberd/certs/ejabberd.pem
# cat /etc/pki/tls/certs/tormento.olea.org.crt.pem >> /etc/pki/ejabberd/certs/ejabberd.pem
# chown -R ejabberd.ejabberd /etc/pki/ejabberd/
# chmod a-rw,u+r -R /etc/pki/ejabberd/

dovecot

apache

Common things you would need to do with your certificates and keys:

Export public key:

openssl rsa -in /etc/pki/tls/private/tormento.olea.org.key.pem -pubout -out  /etc/pki/tls/public/tormento.olea.org.pub.pem -outform PEM

Print human readable key data:

openssl rsa -noout -text -in /etc/pki/tls/private/tormento.olea.org.key.pem

Print human readable certificate contents:

openssl x509 -noout -text -in /etc/pki/tls/certs/tormento.olea.org.crt.pem

Other info of interest

I've not studied it yet but probably it's worth to read the Fedora developments on managing system crypto keys and signatures:

Syndicated 2014-01-15 14:55:00 from Ismael Olea

El día que Personet reemplace a Internet

Lo típico de que Yorokobu te pide un párrafo de prospectiva a 100 años vista y va y te sale una distopía: «el día que Personet reemplace a Internet». Así no hay manera.

Syndicated 2014-01-14 16:04:00 from Ismael Olea

Convocatoria: encuentro del taller de hardware abierto

La chavalada, la #GenteQueHaceCosas con hardware, se ha organizado en un taller permanente de hardware abierto y ha decidido realizar su primer encuentro presencial específicamente dedicado al cacharreo.

Dirigido a

  • Ti, que te mola el cacharreo.
  • Para ti también, que tienes ganas locas de empezar.
  • A ti también, que te dedicas profesionalmente a estos temas pero que ahora quieres jugar.
  • A ti también, aunque sabemos que sólo lo haces para impresionar a las visitas.
  • Tú, que no has pensado todavía qué hacer para el proyecto de fin de carrera, vente un rato y alguna idea se te puede ocurrir entre tanto disparate.
  • Y a ti también, que para las pocas chicas que suelen venir no queremos que faltes. Tráete a tus amigas, por favor.
  • Y si tu eres de los que ha ganado algún campeonato de Lego Mindstorms vente y explícale tu arte a todos estos aprendices.

Programa

  • Charla: electrónica libre. Estado del arte y presentación de dispositivos y proyectos.
  • Debate: ¿Se puede vivir haciendo electrónica libre? ¿Cómo hacerlo? ¿Qué licencias elegir? ¿Hay que patentar?
  • Propuestas para definir un programa de actividades dentro de los próximos encuentros de hardware libre.

Traed vuestras propuestas. Traed a todas vuestras amistades que tengan interés. Y si tenéis vuestros propios trastos, traedlos e impresionad a los parroquianos.

Coordenadas espacio-temporales

staticmap

Los amiguetes de La Oficina Cultural se prestan a darnos cobijo en su local y la cita es:

miércoles 22 de enero
20:30h

Recordad que en La Oficina hay comercio y bebercio a precios populares y que consumiendo todos un poquito les ayudamos a mantener la actividad..

¡Happy hacking!









Syndicated 2014-01-14 15:30:00 from Ismael Olea

9 Jan 2014 (updated 9 Jan 2014 at 09:06 UTC) »

Convocatoria: asamblea de gente de Almería que hace cosas con las TIC

Tras el modesto aun cuando satisfactorio éxito del pasado «encuentro e intercambio de experiencias para emprendedores tecnológicos» surgieron montones de ideas y propuestas que abundan en las que, con mayor o menor intensidad, están desarrollando en paralelo otros colectivos de Almería como los encuentros de BetaBeers, los grupos locales de Android o GDG y, en la universidad, la veterana asociación UNIA. Por eso, durante una tormenta de ideas con Víctor Suárez hace unos días pensamos que sería una gran idea convocar a la peña para compartir todas las ideas que se están poniendo en marcha y ponernos al día con las novedades, alguna de las cuales es muy jugosa. De ahí esta convocatoria.

A la atención de

En esta ocasión el público convocado es gente con perfiles técnicos TIC muy fuertes: programación, diseño de hardware, administración de sistemas, etc, y con vocación de actividades en comunidad (talleres, conferencias, hackatones, etc) e, idealmente, afinidad por el software libre / opensource.

El acceso es completamente abierto hasta completar aforo y está invitada cualquier persona que tenga ganas de implicarse en la comunidad tecnológica de Almería... si es que no lo está ya. Os rogaos que difundáis esta convocatoria y la hagáis llegar a todas las personas inquietas de vuestros círculos sociales.

Orden del día

Básicamente esperamos hablar al menos de:

  • el calendario aproximado de todas las actividades previstas, como mínimo, hasta junio;
  • ajuste y coordinación de las fechas de las mismas, si procede;
  • presentación de las ayudas ofrecidas al Google Developer Group local a la hora de organizar actividades y conferencias
  • exposición de algunas de las actividades en gestación como:
    • el hackaton presencial de programación
    • el hackaton virtual
    • las actividades durante la próxima Feria de las Ideas (30 de abril de 2014)
  • y lo que surja.

Objetivos

Básicamente acordar un calendario de actividades sincronizado y asignarnos el trabajo de los voluntarios para cada una de ellas.

Coordenadas espacio-temporales

staticmap

Los amiguetes de La Oficina Cultural se han prestado a darnos cobijo en su local y la cita es:

viernes 10 de enero
19:00h

Recordad que en La Oficina hay comercio y bebercio a precios populares y que consumiendo todos un poquito les ayudamos a mantener la actividad.

Finalmente señalar que la reunión va a ser muy práctica pero también muy informal. Traed vuestras mejores ideas y todas las ganas para hacer de Almería un pequeño vórtice de actividades TIC cañeras.

Nos vemos este viernes.


Syndicated 2014-01-09 07:11:00 (Updated 2014-01-09 09:06:13) from Ismael Olea

Syntex Serna Free XML editor sources

Serna has been my favorite XML editor for years for real documentation work. Coincidentally I checked today the stage of the opensource development and found it had disappeared from their websites. As far I understood the Serna company been sold and the new owner had closed not only the opensource activity but the free (as beers) version availability.

Then I've searched for any copy of the open sources and seems to be available at Bitbucket: https://bitbucket.org/syntext/serna-free.

So I'm writing this for helping others to find it.

Syndicated 2012-09-24 04:59:00 from Ismael Olea

Actualización de recursos lingüísticos para el español

Después de muchos años desde que me lo propuse por y casi los mismos desde la última gran actualización he retomado la actividad del esfuerzo informalmente llamado Lemarios y listas de palabras del español. Los cambios que hoy anuncio son los siguientes:

  • establecer el punto de trabajo y publicación en Github con el afán de aumentar la transparencia de la actividad y facilitar las colaboraciones, siendo consciente de que si Git no es una herramienta asequible a cualquiera, sí creo que un usuario especializado puede tomarse la molestia de usarlo para aumentar su productividad; veremos qué tal va;
  • publicación de una lista nueva de apellidos de España y sustancial mejora de la existente de nombres propios igualmente de España;
  • finalmente explicitamos la licencia de explotación, de las de «haga usted de su capa un sayo», porque creemos que los recursos lingüísticos no deben pertenecer a nadie.

Si puede contribuir listas con los nombres y apellidos más populares de otros países hispanos con muchísimo gusto los incorporaremos.

Tenemos más novedades en el horno. Permanezcan en sintonía.

Syndicated 2012-06-13 02:40:00 from Ismael Olea

166 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!