Paso 8: Cifrado Demo
El archivo msp430_demo.zip contiene todo lo necesario para compilar y ejecutar esta demo. Se utiliza la misma biblioteca de nrf24 como la Galileo y tiene ligeras modificaciones por lo que construirá en el MSP430. El código de AES-128 para el MSP430 viene de Texas Instruments (AES_128.zip).
El código de aquí simplemente sondea el estado del puerto 2 para cualquier cambio de pin cada 20ms. Si se observa un cambio, el estado actual del puerto es cifrado usando AES-128 y luego enviados a través del módulo nRF24L01. Puesto que no hay botones físicos (alambres de metal a tocar) no hay necesidad de debounce las entradas del puerto.
Cabe destacar que este demo no implementa cifrado seguro o autenticado, ni nunca fue pensado para. El propósito fue ilustrar un escenario donde sería conveniente para el boceto de Galileo pasar datos a un proceso diferente. En lugar de tener que pasar tiempo reescribir o buscando una adecuada biblioteca Arduino para descifrar, simplemente puede utilizar el módulo PyCrypto (que es bastante extenso). Ejecutar la Demo
Con el tablero de MSP430 y Galileo encendido, lanzar el script de shm_python tal como se especifica arriba. Cuando usted de tierra uno de los seis puertos 2 pasadores en el MSP430 debe imprimir un mensaje diciendo que pin se presionó. La actual codificación en shm_python.py es específica de cómo fueron presentados los cables en mi protoboard. El código de MSP430 soporta múltiples pernos de puesta a tierra - valores adicionales sólo tiene que agregarse al diccionario clave en shm_decrypt.py.
Para destruir los objetos IPC, descarga python_interface.zip y ejecuta tui.py (requiere pySerial) de la computadora que utilizó para programar el Galileo. Lanzamiento de tui.py abrirá un puerto COM (por defecto 5 COM) a 115200 baudios. Este es un sencillo script para enviar y recibir datos en serie compatibles con el protocolo de cifrado en galileo_ipc.ino. Lectura del registro 1 llamaremos myBuffer.close() en el bosquejo. Es decir
ser r 1Esto es sobre todo un curso mío pero he incluido para lo completo. También podría quitar el protocolo serial dentro de galileo_ipc.ino y utilizar un método diferente que usted prefiere.