Entwickler-Ecke

Freeware Projekte - Barracuda (File-Sharing)


recall - Mo 13.02.06 20:54
Titel: Barracuda (File-Sharing)
Hallo,

ich habe mich also einmal daran gemacht, ein FileSharing-Programm zu schreiben.
Der Download ist unter: http://www.prodego.de/barracuda.zip
Die ini-Datei sollte im gleichen Verzeichnis wie das Programm liegen. Das Programm macht keinerlei Einträge in der Registry oder ähnliches, daher gibts auch kein Install/Uninstall.

Was kann Barracuda ?

Das Programm erlaubt es in kleinen Gruppen Dateien übers Internet untereinander auszutauschen. Als Server wird dazu ein Mail-Postfach verwendet ! Das Mail-Postfach sollte zu nichts anderem verwendet werden, als für Barracuda. Ebenso sollte ein Programmtechnischer Zugriff alle paar Minuten erlaubt sein (wie es Web.de z.B. verbietet).
Für euch zum Testen habe ich auf meinem Server dazu einen EMail-Account erstellt, dessen Zugangsdaten sich in der ini-Datei befinden. Ansonsten probiert das Programm bitte aus. Es hat zwar noch einige Bugs/Mängel, funktioniert aber ansonsten sehr gut :)
Tip: Gebt im "Community-Chat" /? ein, dann kommt eine Übersicht über die Befehle.

Wichtiges zum Start:

Alle Daten sind am Anfang durch die Ini-Datei ausgefüllt. Ihr müsste nur einen Benutzernamen wählen (min. 3 Buchstaben).
Danach wartet kurz, das Programm muss erst nach anderen Usern suchen...
Wählt als erstes unter Optionen den Download-Ordner (Ordner, in den die Dateien gespeichert werden, die ihr euch von anderen runterladet). Dann wählt auch unter Optionen die Ordner, die ihr freigeben wollt.

Port-Freigabe:

Ihr müsst am Anfang auch einen Port angeben, auf dem das Prog einen TCP/Server bereitstellen kann. Wenn ihr einen Router verwendet, dann müsst ihr den Port forwarden ! (und bitte firewall bedenken = freigeben)

Viel Spass !

Vielen Dank an alle :)

Viele Grüsse.

P.S.: Der "Downloads aufräumen"-Button ist buggy BITTE NICHT KLICKEN!

// EDIT: Das Programm benutzt symmetrische Verschlüsselung (für den Chat => Schlüsselaustausch per Mail-Postfach)
und asymm. (Elliptic) für den Datentransfer :)

// Edit die 2te: Bitte KEIN "Community Passwort" eingeben (Feld leer lassen) !


recall - Mi 15.02.06 14:09

Hallo ?
Will das niemand testen :cry:
? Oder ist daran was unklar ?


digi_c - Mi 15.02.06 15:48

Ich will deine Arbeit nicht runtermachen aber mir persönlich fehlt einfach der Verwendungszweck.
Wenn ich Dateien transferieren will nehm ich FTP, oder Bittorrent, wenn ich welche hochladen will dann nehm ich einen Webhoster.


tommie-lie - Mi 15.02.06 18:40

Wie soll das denn genau funktionieren? Ist es ein P2P-Netzwerk und der Mail-Server ist nur ein Tracker, der die derzeit erreichbaren Peers listet? Oder werden die Dateien direkt als Anhang per eMail hochgeladen und auch anschließend als eMail-Anhang runtergeladen? Sind dann Fortsetzungen von alten Downloads drin? Welche Daten werden wo gespeichert (Angreifbarkeit des Netzwerkes)? Welche Verschlüsselungsverfahren werden eingesetzt? Kann man normale, starke PGP-Keys für den asymmetrischen Teil verwenden? Warum werden die Dateitransfers nicht asymmetrisch verschlüsselt?


recall - Mi 15.02.06 20:53

Wozu ist das Programm gut ?

Damit mehrere Leute untereinander Daten austauschen können. Diese müssen auch keine feste IP haben, sondern nur alle die Zugangsdaten von ein und demselben Mail-Postfach. Wenn also 5 Leute im Internet untereinander Daten austauschen wollen, dann brauchen sie nur eine Mail-Adresse und können loslegen. Chat ist mit drin (Allgemeiner und persönlicher).

Also sozusagen ein "privates" Filesharing Programm ;)

@tommie-lie: Die Daten werden asymm. verschlüsselt! Oder meintest du den Chat (Der ist symm.)?
Das ganze ist ein P2P Netzwerk, der Mailserver dient nur als IP-Liste. Alte Downloads werden automatisch fortgesetzt. Symm. Verfahren = XOR mit Hash-Funktion (für den Chat und die Dateilisten). Dateitransfer = Elliptic Cryptograhy.
Es sind auch "Uploads" möglich, ebenso wie (in Zukunft) ein VNC (mit extra-Password).

Das ganze soll sozusagen als Fernsteuer"zentrale" für den eigenen PC nutzbar sein, aber auch zum Datenaustausch/Chat/VNC von mehreren Usern im I-Net. Ich benutze das Prog. jetzt mit 3 Kumpels und muss sagen, wir finden es sehr nützlich ;)

Viele Grüsse, (probierts doch einfach aus).


tommie-lie - Mi 15.02.06 21:09

user profile iconrecall hat folgendes geschrieben:
Damit mehrere Leute untereinander Daten austauschen können.
Naja, das bietet mir BitTorrent auch.

recall hat folgendes geschrieben:
Diese müssen auch keine feste IP haben, sondern nur alle die Zugangsdaten von ein und demselben Mail-Postfach.
Bei BitTorrent brauchen sie nichtmal das. Wenn alle beteiligten ICQ, AIM oder einen ähnlichen IM haben, der Dateiübertragungen erlaubt, kann ich einfach den Torrent übertragen und per DHT funktioniert das dann ziemlich unproblematisch und ziemlich ohne zentralen Server oder anderes.

recall hat folgendes geschrieben:
Die Daten werden asymm. verschlüsselt! Oder meintest du den Chat (Der ist symm.)?
Oh, sorry, Bechstaben verbuxelt ;-)

recall hat folgendes geschrieben:
Dateitransfer = Elliptic Cryptograhy.
Also nicht mein vorhandener OpenPGP-Key? Wäre das nicht ratsamer, als für alles und jeden ein neues Web of Trust aufzubauen?

recall hat folgendes geschrieben:
(probierts doch einfach aus).
Kann ich als Linux-Benutzer nicht ;-)
Meine Fragen waren nur aus allgemeinem Interesse zur Sicherheit des Netzwerkes und zu den dahinterliegenden Designfragen. Aber wenn's funktioniert ist es schon ein nettes Stück Software, auch wenn es so wie die vielen IM-Systeme ist: eines von vielen ;-)


Muffin - Mi 15.02.06 22:19
Titel: Open Source?
Du könntest den Quellcode aufräumen und etwas durchkommentieren und dann in den OpenSource Bereich samt GPL Lizenz stellen. Da wäre das Interesse vielleicht noch eher da, weil man etwas lernen kann.

Ansonsten ist die Konkurenz im FileSharing Bereich wohl doch recht hoch. BitTorrent, eMule und auch für Delphi gibt es schon ein OpenSource Projekt http://aresgalaxy.sourceforge.net

Übrigens: Der Name klingt gut, gefällt mir :)


digi_c - Do 16.02.06 09:34

Ja Barracude klingt wirklich nicht schlecht *aufbaun tut* aber IMHO fehlt da jetzt wirklich DER Verwendungszweck.
Applejuice hat ja auch mal mit Delphi begonnen.