Skip to content

Latest commit

 

History

History
293 lines (190 loc) · 15.2 KB

File metadata and controls

293 lines (190 loc) · 15.2 KB

Ogłoszenie: AltSendme to teraz DashBeam. Ta sama aplikacja — łatwiejsza do znalezienia, zapamiętania i wymówienia.

Język: English | 中文 | Русский | Português | Español | Deutsch | Français | 日本語 | 한국어 | Polski | العربية

Transfer plików nie musi być skomplikowany

DashBeam Header

DashBeam working demo

Discord Version Website Platforms Sponsor

Darmowe narzędzie open source do transferu plików, które wykorzystuje możliwości nowoczesnej sieci peer-to-peer, umożliwiając bezpośredni transfer plików bez przechowywania ich na serwerach w chmurze.

Po co polegać na WeTransfer, Dropbox czy Google Drive, skoro można niezawodnie i łatwo przesyłać pliki bezpośrednio — z szyfrowaniem end-to-end i bez ujawniania danych osobowych?

Funkcje

  • Wysyłaj stamtąd, skąd chcesz, z czegokolwiek — Desktop, Android, terminal lub przeglądarka — zacznij na jednej platformie, odbierz na dowolnej innej.
  • Przesyłaj cokolwiek, w dowolnym rozmiarze — Pliki lub całe katalogi, weryfikowane end-to-end za pomocą kontroli integralności BLAKE3.
  • Wystarczająco szybko, by miało znaczenie — Nasyca połączenia wielogigabitowe dla błyskawicznych transferów.
  • Prywatność domyślnie — Bez kont, rejestracji, śledzenia, reklam.
  • Bezpośredni transfer urządzenie-do-urządzenia — Pliki przemieszczają się bezpośrednio między Twoimi urządzeniami, omijając korporacyjne chmury, gdzie dane są ceną.
  • Szyfrowanie end-to-end, zawsze włączone — Każdy transfer używa QUIC z TLS 1.3; relaye widzą tylko zaszyfrowany ruch, nawet jeśli biorą udział.
  • Uwierzytelnianie kryptograficzne — Każdy ticket weryfikuje, że jesteś połączony z zamierzonym nadawcą, zanim jakiekolwiek pliki zostaną przesłane.
  • Wznawialne i nadawalne — Przerwane transfery wznawiają się automatycznie; udostępniaj ten sam plik dowolnej liczbie peerów jednocześnie.
  • Podgląd przed pobraniem — Zobacz, co otrzymujesz, zanim pobierzesz.
  • Sparowane urządzenia — Sparuj komputery i telefony Android raz w Ustawienia → Urządzenia, a następnie wysyłaj pliki bez kopiowania ticketów za każdym razem.
  • Lekki jak piórko — Niewielkie instalacje, minimalny ślad w sieci.
  • Darmowy i open source — Bez kosztów uploadu, bez limitów rozmiaru, napędzany przez społeczność.

Statystyki z praktyki

Metryka Zgłoszone
Największy transfer 452 GB
Najszybszy duży transfer 54 GB @ 123 MB/s (~1 Gbps)
Transfer masowy z dużą prędkością 328 GB @ 93 MB/s
Zmierzona szczytowa prędkość 125 MB/s (1 Gbps)

Przepustowość transferu zależy od urządzenia, sieci i ścieżki połączenia.

Instalacja

Najłatwiejszy sposób na start to pobranie jednej z poniższych wersji dla Twojego systemu operacyjnego:

Platforma Zalecane Inne formaty Rozmiar
💻 Windows (x64) Setup.exe MSI, Portable ZIP ~10 MB
💻 macOS (Universal) DashBeam.dmg Apple Silicon, Intel ~15 MB
💻 Linux (amd64) DashBeam.deb .rpm, AppImage ~13 MB
📱 Android (arm64) DashBeam.apk armv7, universal ~50 MB
⌨️ CLI Downloads - ~4-5 MB
🌐 Web (Ograniczona przepustowość) app.dashbeam.net - ~2 MB

Więcej opcji w GitHub Releases lub na stronie Downloads.

Partnerzy

TestMuAI

Szukamy Partnerów, którzy dołączą do naszej misji! Zostań partnerem i wspieraj nas, gdy przesuwamy granice transferu plików peer-to-peer.

POROZMAWIAJMY

Obsługiwane języki

🇺🇸 🇷🇺 🇫🇷 🇨🇳 🇩🇪 🇯🇵 🇮🇳 🇹🇭 🇮🇹 🇨🇿 🇪🇸 🇧🇷 🇸🇦 🇮🇷 🇰🇷 🇵🇱 🇺🇦 🇹🇷 🇳🇴 🇧🇩 🇭🇺 🇷🇸 🇹🇼 🇰🇭

Jak to działa

  1. Upuść plik lub folder — DashBeam tworzy jednorazowy kod udostępniania (zwany „ticketem”).
  2. Udostępnij ticket przez czat, e-mail lub SMS, lub wyślij bezpośrednio do sparowanego urządzenia (desktop / Android).
  3. Twój znajomy wkleja ticket w aplikacji (lub akceptuje zaproszenie ze sparowanego urządzenia), a transfer się rozpoczyna.

Sparowane urządzenia

Na macOS, Windows, Linux i Android możesz sparować urządzenia w Ustawienia → Urządzenia za pomocą kodu parowania. Po sparowaniu:

  • Nadawcy mogą dotknąć Send obok sparowanego urządzenia podczas udostępniania: bez ręcznego kopiowania ticketu.
  • Odbiorcy otrzymują monit w aplikacji, gdy sparowany nadawca ich zaprasza (aplikacja musi być otwarta).
  • Ręczne tickety i sendme CLI nadal działają dokładnie tak samo jak wcześniej.

Porównanie

DashBeam Blip LocalSend Magic Wormhole PairDrop
Stos sieciowy QUIC via Iroh Nieznany HTTPS/REST przez TCP szyfrowany TCP WebRTC/DTLS (SCTP)
Działa przez internet Tylko LAN
Nasyca połączenia gigabitowe ✅ (tylko LAN) ❌ (limit SCTP/przeglądarki)
Open source
Bez konta
Szyfrowanie end-to-end
Wysyłanie folderów ✅ (tylko CLI, nie w przeglądarce)
Wznawialne transfery
Nieograniczony rozmiar pliku Ograniczony pamięcią przeglądarki
Platformy CLI + desktop + mobile + web Desktop + mobile (bez web/CLI) Desktop + mobile (bez web/CLI) Tylko CLI Web/PWA + aplikacja Android + CLI
Haczyk W trakcie prac Zamknięty kod źródłowy; obsługa danych nie podlega audytowi Tylko ta sama sieć, brak wznawiania Tylko CLI; interfejsy graficzne to osobne projekty utrzymywane przez społeczność Limit przepustowości WebRTC/SCTP; limity pamięci przeglądarki

Dowiedz się więcej →

Pod maską

DashBeam jest zbudowany na Iroh, nowoczesnym stosie sieci peer-to-peer, który upraszcza bezpośrednią komunikację urządzenie-do-urządzenia. W praktyce oznacza to, że urządzenia komunikują się przez szyfrowany QUIC, pliki są przesyłane jako bloby adresowane przez zawartość, a relaye pomagają, gdy bezpośrednia ścieżka nie jest dostępna.

Elementy składowe

Element Co robi tutaj
Blobs (iroh-blobs) Przechowywanie i strumieniowanie danych plików; każdy fragment weryfikowany przez BLAKE3
Tickets Jeden ciąg znaków informujący peera, kogo wybrać i co pobrać
Endpoints Tożsamość Iroh każdego urządzenia (klucz Ed25519 → id endpointu)
QUIC + TLS 1.3 Szyfrowany transport; multipleksowanie bez blokowania head-of-line
Relays + hole punching Inicjowanie połączeń przez NAT; preferuj bezpośrednie, w razie potrzeby relay
Control protocol (pairing) Długotrwały kanał do zapamiętywania urządzeń i dostarczania zaproszeń do udostępniania

Blobs

Pliki nie są uploadowane na serwer. Są publikowane jako blobs: nieprzezroczyste sekwencje bajtów adresowane przez hash BLAKE3.

  • Link to ten 32-bajtowy hash: jeśli hash się zgadza, zawartość się zgadza.
  • Foldery i duże pliki używają HashSeq (blob wskazujący na inne bloby).
  • Nadawca to provider; odbiorca to requester. Każda strona może być obiema.

Tickets

Ticket udostępniania to pojedynczy token zawierający:

  1. Id endpointu nadawcy (aby wiedzieć, że rozmawiasz z właściwym urządzeniem)
  2. Wystarczająco informacji adresowych / relay, aby się z nim połączyć
  3. Hash bloba do pobrania

Łączysz się tylko z osobami, z którymi dzielisz ticket: bez rozgłaszania swojego IP obcym. To domyślny model „cozy network”, który promuje Iroh, w przeciwieństwie do odkrywania w całym swarmie.

Łączenie przez sieci

Gdy dwa urządzenia muszą się spotkać:

  1. Każde rejestruje się w publicznym (lub hostowanym samodzielnie) relay, aby peery mogły znaleźć ścieżkę przez firewalle i NAT.
  2. Iroh próbuje QUIC hole punching, aby przejść na bezpośrednie połączenie peer-to-peer.
  3. Jeśli bezpośrednia ścieżka działa, ruch idzie urządzenie-do-urządzenia. Jeśli nie, relay pozostaje na ścieżce jako zapasowy skok UDP.

W obu przypadkach payload jest szyfrowany end-to-end. Relaye widzą szyfrogram, nie Twoje pliki. Więcej o relay Iroh →

QUIC i szyfrowanie

QUIC (oparty na UDP, ta sama podstawa co HTTP/3) wprowadza TLS 1.3 do transportu. Dla DashBeam oznacza to szyfrowanie i uwierzytelnianie, wiele strumieni ze wspólną kontrolą przeciążenia oraz szybkie ponowne połączenia, gdy wcześniej rozmawiałeś z peerem.

Sparowane urządzenia

Parowanie nie zastępuje ticketów; dostarcza je za Ciebie.

  1. Urządzenia wymieniają krótki kod parowania (id endpointu hosta) przez dedykowany control ALPN.
  2. Każda strona dowodzi tożsamości, podpisując materiał kluczowy powiązany z połączeniem swoim sekretem urządzenia, a następnie zapamiętuje peera lokalnie.
  3. Trwałe połączenie control utrzymuje obecność (online/offline).
  4. Gdy udostępniasz, DashBeam nadal tworzy normalny jednorazowy ticket bloba; wybierając sparowane urządzenie, wysyła ten ticket jako zaproszenie w aplikacji zamiast kopiować-wklejać.

Ręczne tickety i sendme CLI nadal działają dokładnie tak samo jak wcześniej.

Samodzielnie hostowane relaye i discovery

Informacje o uruchamianiu własnego relay i serwera discovery iroh, konfigurowaniu DashBeam do ich używania oraz zachowaniu mieszanych konfiguracji publicznych/samodzielnie hostowanych znajdziesz w infra/README.md (relay: infra/relay/README.md, discovery: infra/dns/README.md).

Rozwój

Zobacz CONTRIBUTING.md — wymagania wstępne, lokalna konfiguracja, instrukcje budowania i testowanie.

Dołącz do naszego Discord, aby współtworzyć

Najlepszym sposobem na współtworzenie jest dołączenie do naszego Discorda i powiedzenie cześć. Przedstaw się i podziel swoimi umiejętnościami lub zainteresowaniami — czy to programowanie, testowanie, design, czy coś innego. Możesz też zgłaszać issue, proponować poprawki lub przedstawiać pomysły. Maintainerzy poprowadzą Cię na każdym kroku.

To najlepsze miejsce, aby zdobyć kontekst, uzgodnić kierunek i współpracować ze społecznością.

Licencja

AGPL-3.0

Polityka prywatności

Zobacz PRIVACY.md, aby dowiedzieć się, jak DashBeam obsługuje Twoje dane i prywatność.

Sponsor Buy Me Coffee

Współtwórcy

Kontakt

Skontaktuj się ze mną tutaj w sprawie sugestii, opinii lub komunikacji medialnej.

Dziękujemy za sprawdzenie tego projektu! Jeśli uznasz go za przydatny, rozważ nadanie gwiazdki i pomoc w rozpowszechnianiu.

Zbudowany na