Croc: Transferencia de ficheros fácil y segura en P2P con E2EE

[h]Croc: Transferencia de ficheros fácil y segura en red entre pares con cifrado de extremo a extremo[/h]

**Croc **es un programa gratis, de código libre y multiplataforma.
Se usa en linea de ordenes pero la sintaxis es muy simple.
Permite compartir archivos entre dos dispositivos sin pasar por ningun servidor (Peer to Peer)
Para usar croc se debe tener instalada la utilidad en ambas maquinas.
Es un programa muy liviano, ocupa menos de 6MB.
No forma parte de los repositorios Debian pero su instalación es muy fácil.
Sin embargo forma parte de los repositorios Arch linux. :slight_smile:

Para segurizar la transferencia se usa PAKE (password authenticated key exchange)
Un método criptográfico que se baza en el uso de una llave compartida “simple” para cifrar con llaves fuertes.
Un intruso tiene una probabilidad sobre 4 mil millones de decifrar la transferencia.
Si se intenta hackear, la transferencia está abortada y el remitente está advertido.

Es legitimo preguntarse si PAKE es realmente seguro antes de usar este método de cifrado.
Los especialistas lo tienen claro:

Let’s talk about PAKE, de Matthew Green, profesor en Criptología, Universidad Jhons Hopkins.
Resumiendo: “Casi no se habla o usa PAKE y es una verdadera lastima porque debería estar implementado por todos lados,”

[h]Instalación[/h]

Debemos descargar desde Github la última versión (release) para nuestro sistema operativo.
La página es está: Croc releases
Tenemos versiones empaquetadas para Windows, MacOS, Debian y Arch con muchas arquitecturas soportadas (incluyendo ARM para nuestros** Pi**)
Si usamos un sistema Operativo GNU-Linux que no está basado en Debian o Arch podemos hacer:

curl https://getcroc.schollz.com | bash

Y se instalará en /usr/local/bin/
Para Kali o Ubuntu sería por ejemplo descargar croc_9.1.4_Linux-64bit.deb y instalarlo así:

sudo apt install ~/Descargas/croc_9.1.4_Linux-64bit.deb

Una vez croc instalado en ambos equipos podemos hacer la transferencia.

[h]Uso[/h]

No hace falta abrir puertos, no hace falta configurar absolutamente nada
El remitente solo tiene que hacer:

croc send </ruta/archivo>

Se genera automáticamente una clave:

De su lado el destinarlo entra el comando indicado

croc <clave>


En nuestra consola (remitente) veremos que la trasnferencia está hecha:

Rápido, sencillo y seguro. :cool:

Funetes

  1. croc - secure and easy data transfer by schollz/*]
  2. Croc: Securely Transfer Files and Folders Between Computers by Bobby Borisov @ linuxiac/*]

Si preferimos usar una calve personal

croc send --code <contraseña> </ruta/archivo> 

Interesantisimo, lo probaré :smiley:

Está muy bien, ya verás. :slight_smile:
Hay tres cosas que no he dicho en el primer post:
[list=1]
]Es muy rápido: Si pasas por conexiones ethernet gigabit verás que se usa todo el ancho de banda disponible/]
]No hay limite de peso: Puedes transferir un disco duro entero si te apetece. Sin necesidad de empaquetar, puedes transferir una carpeta “home” (o la que sea) con todo su contenido /]
]Se puede pausar y reanudar una transferencia/]
[/list]