Pregunta

Hola a todos estoy buscando para descifrar mi archivo de código hexadecimal de un chip ATtiny y programar utilizando la interfaz de línea de comandos AVRDUDE. ser un problema, yo no quiero que el usuario sea capaz de ver lo que el archivo HEX es en un momento dado.

¿Puede el VB.net Criptografía cripta el archivo HEX antes de ponerla en el servidor y luego descifrarlo después del programa lo descarga desde el servidor y lo ejecuta a través del programa sin ver el archivo HEX descifrado?

Es evidente que el archivo HEX no puede mantenerse cifrada mientras se está programando para el chip ATtiny así que ¿cómo puedo ir sobre ella de modo que pueda crear el archivo HEX original para ser programada dentro del programa sin tener que preocuparse de que escribir un archivo temporal en el disco duro y luego eliminarlo después? (Debido a que podría cerrar el programa después de que hace que el archivo temporal y que sería capaz de navegar y abrirla y ver el código)

Cualquier ayuda sería grande! : O)

David

¿Fue útil?

Solución

Como ya se ha señalado, si se descifra el archivo en el host que está allí en una forma no cifrada, y no se puede hacer nada al respecto.

La industria tiene el mismo problema de vez en cuando, por lo que consiguieron sus formas con la criptografía: A veces es necesario para prevenir que cualquier persona es capaz de obtener un archivo compilado y ejecutable como "ellos" se descompilarlo o mirar en el montaje, a veces sólo es necesario para evitar que anyoneelse es capaz de ejecutar sus propios archivos, hogar-brewn en el dispositivo.

Como se dijo, descifrar el archivo en el host (el host usuarios / clientes) está fuera de cuestión. Luego empuje que un momento después. Puede, por ejemplo, tener el cargador de arranque descifrar el archivo de firmware que se lee de la línea serie.

En este caso, entregar el hardware (chip, cargador de arranque y la primera versión de firmware), y las actualizaciones se instalan a través de la línea serie (en lugar de JTAG / ASP / ISP). El gestor de arranque contendría la clave secreta que descifra el archivo de firmware. Esta clave secreta también se puede utilizar para verificar que el archivo de firmware está viniendo de usted, y nadie más compilado algo.

Si tiene que entregar el gestor de arranque (hex), así, que se enfrentará el problema de que alguien pudiera extraer o cambiar la clave secreta. En este caso, la criptografía asimétrica te salvará. A mantener su clave privada para usted, y el gestor de arranque Obtiene la parte de clave pública. Incluso si alguien es capaz de extraer la clave pública, no va a ser capaz de crear un archivo que será reconocido como la suya. Por desgracia, el ATtiny es demasiado débil como para la criptografía asimétrica, e incluso la criptografía simétrica ya se hincha el código del gestor de arranque.

Otros consejos

No se puede hacer con los contraints especificados. El ATtiny no se puede ejecutar un gestor de arranque útil (sin flash auto-programación.) Tendrá que ser descifrado en el host Su archivo hexadecimal. Mantener los datos descifrados en la memoria puede ralentizar ligeramente atacantes.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top