TRANSPORTR is a tech demo I created for me to gain exposure to some (semi) emerging technologies that I have always been interested in. As I started to wrap up and shutter the startup I created, I figured I'd take about a week off to build something fun.
The primary purpose for this project is to allow users to transfer files to each other directly. By having the files sent peer to peer, the project is able to run with a tiny fraction of the bandwith (and potentialy storage costs) that a normal file transfer service would require.
When a user uploads a file to the site, the browser uses the Web Cryptography API to generate a private key which is sent to the server. The client then spins up a web worker process to encrypt the file using the key before creating a webtorrent hash.
The hash is then used as the parameter for the URL which the user can share with others. When someone else clicks on the link, the encrypted file will begin to download. The TRANSPORTR server will also dispense the decryption key. Once the file is finished downloading, it will automaticallly become decrypted and available for download.
Additionally, users are able to request payment for their files. In this case, the key is not provided by the server until it verifies that a successful payment was made.
Please note that this is very much a very early work in progress and there may be bugs. Please do not use it for anything important!