Saltar al contenido

Cómo realizar la ofuscación del código fuente y proteger la fuente en electron js

Te damos el hallazgo a este atasco, o por lo menos eso esperamos. Si tienes interrogantes coméntalo, para nosotros será un gusto ayudarte

Solución:

Hay una biblioteca llamada bytenode que le permite convertir sus archivos Javascript en archivos binarios para que nadie pueda leerlos.

https://www.npmjs.com/package/bytenode

Primero instale bytenode en su servidor y en su carpeta:

>npm i -g bytenode
>npm i bytenode

Cree un archivo nodeJS normal con el siguiente código. Imaginemos que nombramos el siguiente código: ok.js

console.log('bytenode works');

Luego, compile su código javascript. El comando creará un archivo .JSC con el mismo nombre que su archivo.

[email protected]:~$ bytenode -c ok.js

Luego, en un archivo JS principal, llamará a su binario, llamémoslo test.js:

const bytenode = require('bytenode'); 
const myFile=require('./ok.jsc'); 
myFile;

Guárdalo.

Luego, llamará a test.js: node test.js para probarlo. Haz un “cat ok.jsc” para ver que es realmente un binario y que nadie puede ver tu código. Puede mover su archivo js de prueba simple original a otra ubicación.

tl; dr Puedes y no vale la pena el esfuerzo. Simplemente empaquete su fuente en un asar archivo, mantiene a la mayoría de la gente alejada de él.

Mensaje largo:

  • Utilizar el asar opción al construir su aplicación.
  • Ofuscando el código con un feo.
  • Usar WASM
  • Enlaces de idioma para tomar sus datos de un formato compilado
    • neonjs para óxido
    • borde-js para C#
    • API N, NAN para C/C++

De lo contrario, sus archivos son scripts, todos estos pasos solo ralentizan a un atacante (táctica de muchas defensas), pero no evitarán que acceda a ellos. Las devTools son bastante fáciles de abrir y las personas podrán leer el código de alguna manera o forma. Y si alguien obtiene su código ofuscado, es simple reconstruir lo que está sucediendo (ver aquí para referencia: https://www.youtube.com/watch?v=y6Uzinz3DRU)

Si desea protegerse de la manipulación del código, existen mejores formas de hacerlo. Al igual que Hashing, Aislamiento de contexto, etc., electron tiene un capítulo completo sobre el tema.

https://github.com/electron/electron/blob/master/docs/tutorial/security.md

Te invitamos a estimular nuestro trabajo dejando un comentario o dejando una puntuación te lo agradecemos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *