What is Dat?
Dat is a protocol for sharing data between computers. By making sure changes in data are transparent, everyone receives only the data they want, and by connecting computers directly (rather than using a cloud server), Dat powers communities building the next-generation Web.
Welcome to Dat
Ever tried moving large files and folders to other computers? Usually this involves one of a few strategies: being in the same location (USB stick), using a cloud service (Dropbox), or using old but reliable technical tools (rsync). None of these easily store, track, and share your data over time. People often are stuck choosing between security, speed, or ease of use. Dat provides all three by using a state-of-the-art technical foundation and user friendly tools for fast and encrypted file sharing that you control.
Dat is free software built for the public by an open source consortium of contributors. Researchers, analysts, libraries, and universities are already using Dat to archive and distribute scientific data. Developers are building applications on Dat for browsing peer-to-peer websites and offline editable maps. Anyone can use Dat to backup files or share cute cat pictures with a friend. Install and get started today by using the desktop application, command line, or JavaScript library.
Ready to try it? Head over to Installation to get started.
Why Dat?
Cloud services, such as Dropbox or GitHub, force users to store data on places outside of their control. Until now, it has been very difficult to avoid centralized servers without major sacrifices. Dat's unique distributed network allows users to store data where they want. By decentralizing storage, Dat also increases speeds by downloading from many sources at the same time.
Having a history of how files have changed is essential for effective collaboration and reproducibility. Git has been promoted as a solution for history, but becomes slow with large files, and has a high learning curve. Git is designed for editing source code, while Dat is designed for sharing files. With a few simple commands, you can version files of any size. People can quickly get the latest files or download previous versions.
In sum, we've taken the best parts of Git, BitTorrent, and Dropbox to design Dat. Learn more about how it all works by reading How Dat Works or get more in depth at datprotocol.com.
Distributed Network
Unlike cloud services like Dropbox or Google Drive, Dat works on a distributed network. This means Dat transfers files peer-to-peer, without needing centralized servers. Dat's network makes file transfers faster, encrypted, and auditable. You can even use Dat on local networks for offline file sharing or local backups. Dat reduces bandwidth costs on popular files, as downloads are distributed across all available computers, rather than centralized from a single host.
Data History
Dat makes it easy for you to save old versions of files. With every file update, Dat automatically tracks your changes. You can even direct these backups to be stored efficiently on an external hard drive or a cloud server by using our archiver.
Security
Dat transfers files over an encrypted connection using state-of-the-art cryptography. Only users with your unique read key can access your files, allowing them to download, view, and re-share your files. To update the contents of a Dat, users must have the write key. By verifying hashes during transfer, Dat makes sure no data is altered or corrupted. As long as the read key isn't shared outside of your team, the content will remain private, while the discovery key and IP addresses of peers sharing the Dat can become known. Read more about security in Dat.
Also please note: There has not been an independent security audit for Dat.
Who we are
Dat is a vibrant global community of people contributing and building software with the Dat protocol. The community hosts weekly meetings to chat about Dat.
The Dat Project is a fiscally supported project of Code for Science & Society, a nonprofit supporting open source tools that benefit science and society.
These documents are collaboratively maintained on Github under datproject/docs. We welcome corrections and requests for clarification.
Enough reading, more doing? Head over to Installation to get started.