FSapp.
A file moves. Its contents stay private. An Android sharing application combining encrypted transfers, key exchange, and integrity verification.
- Java
- AES
- RSA
- SHA-256
- Firebase
The problem
behind the project.
FSapp explores secure file sharing between Android devices, combining encryption with identity, key validation, and integrity checks across cloud and offline peer-to-peer workflows.
How it works.
- 01
Prepare the transfer
The native Java application encrypts file data using AES and handles key exchange with RSA.
- 02
Move between devices
Firebase provides authentication and cloud storage. The application also supports offline peer-to-peer sharing.
- 03
Verify the received data
SHA-256 integrity verification and key validation workflows help identify changes to transferred data.
Engineering choices.
Use distinct cryptographic responsibilities
AES handles the payload, RSA handles key exchange, and SHA-256 supports integrity verification. Each part has a specific responsibility within the sharing workflow.
Support more than one transport
Cloud storage and offline peer-to-peer sharing allow the app to support different connectivity conditions.
Validate beyond delivery
The workflow includes key validation and tamper-detection checks, rather than treating a completed transfer as the only success condition.
Explore the source.
The repository is the implementation reference. The illustrations on this page explain the architecture; they are not application screenshots or measured results.
- Native Java Android application
- AES, RSA, and SHA-256 transfer workflow
- Firebase authentication and storage with offline P2P support