Powering https://unsha.re
docker | ||
tcpaste | ||
.drone.yml | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
clippy.toml | ||
deploy.sh | ||
Dockerfile | ||
LICENSE.md | ||
README.md | ||
rustfmt.toml |
TCPaste 
A Simple tcp based terminal pastebin. Best used with ncat or socat.
Usage/Examples
$ echo foo | ncat unsha.re 9999
> expires: Fri, 31 Mar 2023 04:08:06 +0000
> secret: bkI4OkJmTlBuczdycmNhdUtX
> URL: https://unsha.re/nB8
$ dd if=/dev/urandom status=none bs=512 count=1 | tee >(sha256sum -b >&2) | ncat unsha.re 9999
> c14a0f529b46ba3a8569d8473b8166f60a425920bf803494d537ea1fb07c72ee *-
>
> expires: Fri, 31 Mar 2023 04:05:50 +0000
> secret: VldLOm9KbkZrWHdKWGM5Tl9o
> URL: https://unsha.re/VWK
$ curl -s 'https://unsha.re/VWK' | sha256sum -b
> c14a0f529b46ba3a8569d8473b8166f60a425920bf803494d537ea1fb07c72ee *-
$ echo VldLOm9KbkZrWHdKWGM5Tl9o | ncat unsha.re 10000
> Paste removed: VWK
FAQ
How is the data stored?
As a file on the file system.
Is there a database?
No.
How can paste ownership be determined?
Each paste action creates the file with extended attributes containing the expiration date and secret.
Are all filesystems supported?
It needs to support extended attributes (xattr).
How does the server know what type of data it is?
It doesn't, there is no insecure mime sniffing. You need to specify the format when retrieving the paste, e.g.: https://unsha.re/xyz/jpg
in order for the browser to get the correct headers.
Can I download the file with my browser?
Yes, append /dl
or /dl/<filename>
.