What’s BitTorrent Sync?
Automatically sync files via secure, distributed technology. Sync unlimited files between your own devices, or share a folder with friends and family to automatically sync anything. File transfers are encrypted. Your information is never stored on a server in the cloud and your data is protected by private keys. BitTorrent Sync is specifically designed to handle large files, you can sync original, high quality, uncompressed files.
BitTorrent Sync is a new product from BitTorrent that lets you sync an unlimited number of files and folders of any size across all of your trusted devices.
At the moment BitTorrent Sync works on Windows, Mac and Linux devices that meet the following system requirements:
- Mac OS X Snow Leopard or later
- Windows XP SP3 (32-bit) or newer (32 and 64-bit)
- Linux with kernel 2.6.16 (glibc 2.4) or newer on ARM/PPC/i386/x86_64
You can install application on Network Attached Storages (NAS) running on Linux with ARM, PowerPC, i386 and x86_64 architecture.
BitTorrent Sync synchronizes your files using a peer-to-peer (P2P) protocol. This protocol is very effective for transferring large files across multiple devices, and is very similar to the powerful protocol used by applications like µTorrent and BitTorrent. The data is transferred in pieces from each of the syncing devices, and BitTorrent Sync chooses the optimal algorithm to make sure you have a maximum download and upload speed during the process.
The devices you setup to sync are connected directly using UDP, NAT traversal and UPnP port mapping. They also provide additional methods of ensuring connectivity as relay and tracker servers. If your devices are on the same local network, BitTorrent Sync will use your LAN for faster synchronization.
All the traffic between devices is encrypted with AES cypher and a 256-bit key created on the base of the secret—a random string (20 bytes or more) that is unique for every folder. BitTorrent Sync is private and secure, there are no 3rd party servers involved when syncing your files. You can control and manage your secret keys so that all the files are stored only on your trusted devices.
You can regularly change secrets and invite people by sharing a one-time secret instead of distributing a permanent one.
The secret is a randomly generated 21-byte key. It is Base32-encoded in order to be readable by humans. BitTorrent Sync uses dev/random (Mac, Linux) and the Crypto API (Windows) in order to produce a completely random string. This authentication approach is significantly stronger than a login/password combination used by other services. That’s why using a secret generated by BitTorrent Sync is very safe and secure.
If you want even more security, BitTorrent Sync gives you a way to use a custom secret. Just create your own secret, encode it with Base64, and enter in the secret field for BitTorrent Sync. Note that a custom secret should be more than 40 characters long.
In order to find proper peers that have the same secret, Sync uses:
- Local peer discovery. All peers inside local network are discovered by sending broadcast packets. If there are peers with the same secret they respond to the broadcast message and connect.
- Peer exchange (PEX). When two peers are connected, they exchange information about other peers they know.
- Known hosts (folder settings). If you have a known host with a static ip:port, you can specify this in Sync client, so that it connects to the peer using this information.
- DHT. Sync uses DHT to distribute information about itself and obtain the information about other peers with this secret. Sync sends SHA2(Secret):ip:port to DHT to announce itself and will get a list of peers by asking DHT for the following key SHA2(Secret)
- BitTorrent tracker. BitTorrent Sync can use a specific tracker server to facilitate peer discovery. The tracker server sees the combination of SHA2(secret):ip:port and helps peers connect directly. The BitTorrent Sync tracker also acts like a STUN server and can help do a NAT traversal for peers so that they can establish a direct connection even behind a NAT.
It’s recommend that you use a tracker server instead of DHT for reasons of faster response and NAT traversal, so peers have a higher probability of networking directly.
There are rare cases when peers can’t talk directly. This usually happens when devices are in an office behind strong firewalls. In such a case BitTorrent provides a relay server to route traffic between peers. All traffic is AES encrypted with your secret, so there is no chance for us to see any of your data.
You can opt out of this, but it could result in peers not being able to network with each other.