domingo, 17 de diciembre de 2017

¿Cómo puedo enviar archivos o directorios a través de la web?

Trabajadores!

Un Movimiento no sólo consiste en encolumnar personas "porque sí". La agrupación de voluntades ha de responder a una necesidad y a la resolución de un problema particular.

Nuestro Movimiento en particular ha de enfrentar las necesidades materiales y espirituales que tienen los hombres que buscan, sobre nuestro amplio territorio, la realización de sus necesidades de Libertad económica, Soberanía Política, y Justicia Social. Estos son los objetivos principales, y diremos nodales. En su amplia coincidencia, encontramos una herramienta instrumental estratégica, provista de Doctrina, la cual es nuestro Movimiento Nacional Justicialista.
A su vez, nuestro Movimiento cuenta con un apéndice necesario en tanto la acción se hace desde un sistema democrático representativo, que es el Partido Justicialista, que puede operar junto con otros y dentro de Frentes políticos según las necesidades del Momento Táctico. La razón de este Partido es la de lograr mediante las reglas de juego establecidas en un sistema democrático, los objetivos de realización del Movimiento. Este es el accionar - diremos - de superficie.

Sin embargo, también debemos poder estar capacitados para movernos por debajo de esta superficie durante las situaciones donde ello no sea aconsejable o posible, o en el cual nuestros enemigos "saquen los pies del plato". En estos tiempos de motivos inconfesables, siempre hemos de poder obrar bajo las condiciones que se nos imponen.

Esto, que tiene un fuerte correlato en la acción política organizada, también ha de tenerlo en la conducción y operación de un Sistema Informatizado, en tanto este responde, como nuestro Movimiento Nacional Justicialista, a las necesidades de los hombres en la acción cotidiana de buscar la Felicidad.

Supongamos que queremos enviar de forma telemática un archivo de grandes dimensiones. Normalmente podríamos querer usar adjuntos de correo electrónico (para archivos de hasta 20MB de peso). También podríamos usar correo cifrado para tales condiciones. Pero en los casos de grandes ficheros existen ciertas limitaciones. Para ello existen servicios privativos como WeTransfer, Dropbox, u otros. Pero qué sucede si deseamos hacerlo de forma local.

Para tal cometido podremos hacer uso de Wormhole, una aplicación que replica telemáticamente lo que un teórico puente de Einstein-Rosen representa a la física relativista. En los modelos de física cuántica o de partículas se teoriza hace décadas de la posibilidad de existencia de un fenómeno singular de altísima energía (ya sea gravitacional, de energía positiva, negativa o extraña), que permitiría atravesar la continuidad espaciotemporal, dando lugar a las nociones de interdimensionalidades e hiperespacio. En el marco de la ciencia ficción, estos agujeros de gusano ofician de puentes para transportar naves aventurescas a distancias enormes y en muy poco tiempo, obviando las lógica imposibilidad que nos presentan los relatos que se atienen a la comprobada física newtoniana.

En el caso de nuestra aplicación, se trata de un programa desarrollado para hacer realidad efectiva la transferencia cifrada de archivos entre terminales, de manera no local. Está escrito en Python y emplea el algoritmo SPAKE2 para asegurar la privacidad de envío tanto de ficheros como directorios enteros (a los que comprime en zip), a la vez que emplea una conexión websocket.

Para ello tanto quien envía como quien reciben han de contar con la aplicaciones en sus equipos, y operar de forma síncrona, por lo cual asegura este predicamento si ello deseamos (no almacena el nuestro material en servidores ajenos).

Para instalar dicha aplicación en Ubuntu, bien podremos hacer uso de los nuevos empaquetados snap. Abrimos una consola con Ctrl+Alt+T e ingresamos el siguiente Comando de Organización:

La manera mas conveniente es utilizar el empaquetado snap para esta aplicación, la cual la integra en un sandbox especial ("arenero", significa que el contenido del programa está en cierta manera aislado del resto del sistema). Para ello ingresamos:

sudo apt install magic-wormhole

Nota: también podríamos utilizar el empaquetador de aplicaciones Python, el pip. Esto sólo lo recomiendo para versiones antiguas de Ubuntu, o para aquellos expertos que dispongan de 17.04 o superior. Para ello utilizaríamos los comandos de instalación siguientes:  

sudo apt-get install python-pip build-essential python-dev libffi-dev libssl-dev ;
sudo -H pip install magic-wormhole ;

Tras unos pocos segundos la aplicación estará instalada.

Ahora, para enviar un archivo, bien podremos usar la siguiente sintaxis:

wormhole send ~/ruta/al/archivo

...siendo send ("enviar") el comando pedido.

Esto generará un código de transferencia, que debemos pasarle a la persona que decida recibir el fichero.

En tanto, el destinatario debe ingresar el comando

wormhole receive código_de_transferencia

El sistema nos informará del/los archivos y su peso, además de solicitarnos autorización para iniciar la descarga. Luego de presionar "y" comenzaremos a bajar.

Una vez completada la transferencia, ambos recibirán notificaciones en sus respectivas Terminales que hacen al status final de la comunicación.

1 comentario: