├── .git-blame-ignore-revs ├── .github └── workflows │ ├── ci.yml │ └── rust.yml ├── .gitignore ├── Doxyfile ├── LICENSE ├── Makefile ├── README.md ├── commons.py ├── demo.sh ├── deploy_keys.py ├── docs ├── README.md ├── api.md ├── draft-pki.md ├── protocol.md └── threat_model.md ├── journalist.py ├── journalist_db.py ├── package.json ├── pki.py ├── poetry.lock ├── pyproject.toml ├── requirements.txt ├── securedrop-protocol ├── Cargo.lock ├── Cargo.toml ├── Makefile ├── bench.js ├── benches │ └── manual.rs ├── package-lock.json ├── package.json ├── src │ ├── bench │ │ ├── encrypt_decrypt.rs │ │ ├── mod.rs │ │ └── submit.rs │ ├── client.rs │ ├── journalist.rs │ ├── keys.rs │ ├── keys │ │ ├── journalist.rs │ │ ├── newsroom.rs │ │ └── source.rs │ ├── lib.rs │ ├── messages.rs │ ├── messages │ │ ├── core.rs │ │ └── setup.rs │ ├── primitives.rs │ ├── primitives │ │ ├── dh_akem.rs │ │ ├── mlkem.rs │ │ ├── pad.rs │ │ ├── x25519.rs │ │ └── xwing.rs │ ├── server.rs │ ├── setup.rs │ ├── sign.rs │ ├── source.rs │ └── storage.rs ├── tests │ ├── core.rs │ └── setup.rs └── www │ └── index.html ├── server.py └── source.py /.git-blame-ignore-revs: -------------------------------------------------------------------------------- 1 | # style: Prettier 2 | c2197f6334c484c20342f8a0221705c667f017e6 3 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/rust.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/.github/workflows/rust.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/.gitignore -------------------------------------------------------------------------------- /Doxyfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/Doxyfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/README.md -------------------------------------------------------------------------------- /commons.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/commons.py -------------------------------------------------------------------------------- /demo.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/demo.sh -------------------------------------------------------------------------------- /deploy_keys.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/deploy_keys.py -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/docs/README.md -------------------------------------------------------------------------------- /docs/api.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/docs/api.md -------------------------------------------------------------------------------- /docs/draft-pki.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/docs/draft-pki.md -------------------------------------------------------------------------------- /docs/protocol.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/docs/protocol.md -------------------------------------------------------------------------------- /docs/threat_model.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/docs/threat_model.md -------------------------------------------------------------------------------- /journalist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/journalist.py -------------------------------------------------------------------------------- /journalist_db.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/journalist_db.py -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/package.json -------------------------------------------------------------------------------- /pki.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/pki.py -------------------------------------------------------------------------------- /poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/poetry.lock -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/pyproject.toml -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | redis 2 | flask 3 | pynacl 4 | requests 5 | -------------------------------------------------------------------------------- /securedrop-protocol/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/Cargo.lock -------------------------------------------------------------------------------- /securedrop-protocol/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/Cargo.toml -------------------------------------------------------------------------------- /securedrop-protocol/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/Makefile -------------------------------------------------------------------------------- /securedrop-protocol/bench.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/bench.js -------------------------------------------------------------------------------- /securedrop-protocol/benches/manual.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/benches/manual.rs -------------------------------------------------------------------------------- /securedrop-protocol/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/package-lock.json -------------------------------------------------------------------------------- /securedrop-protocol/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/package.json -------------------------------------------------------------------------------- /securedrop-protocol/src/bench/encrypt_decrypt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/bench/encrypt_decrypt.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/bench/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/bench/mod.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/bench/submit.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/bench/submit.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/client.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/client.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/journalist.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/journalist.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/keys.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/keys.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/keys/journalist.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/keys/journalist.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/keys/newsroom.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/keys/newsroom.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/keys/source.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/keys/source.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/lib.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/messages.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/messages.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/messages/core.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/messages/core.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/messages/setup.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/messages/setup.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/primitives.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/primitives.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/primitives/dh_akem.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/primitives/dh_akem.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/primitives/mlkem.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/primitives/mlkem.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/primitives/pad.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/primitives/pad.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/primitives/x25519.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/primitives/x25519.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/primitives/xwing.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/primitives/xwing.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/server.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/setup.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/setup.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/sign.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/sign.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/source.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/source.rs -------------------------------------------------------------------------------- /securedrop-protocol/src/storage.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/src/storage.rs -------------------------------------------------------------------------------- /securedrop-protocol/tests/core.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/tests/core.rs -------------------------------------------------------------------------------- /securedrop-protocol/tests/setup.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/tests/setup.rs -------------------------------------------------------------------------------- /securedrop-protocol/www/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/securedrop-protocol/www/index.html -------------------------------------------------------------------------------- /server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/server.py -------------------------------------------------------------------------------- /source.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freedomofpress/securedrop-protocol/HEAD/source.py --------------------------------------------------------------------------------