MCPcopy Index your code
hub / github.com/droidstealth/droid-stealth

github.com/droidstealth/droid-stealth @1.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.0 ↗ · + Follow
859 symbols 2,367 edges 63 files 421 documented · 49%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Android Stealth

This application provides a platform for secure hidden storage of user data on an Android phone. The application is hidden on the phone, only to be found with the correct PIN access code, and data managed by the application is encrypted and hidden from other applications on the phone. However even if you don't want that data readily available for everyone that gets hands on your phone there are many cases where you still want to share that data. Which is why it incorporates several sharing features, both for people who have the app and those who don't. Yet it very much remains tricky thing to balance between the security and sharing aspects of this project.

Furthermore, the application can be shared directly between two Android phones via a WiFi hotspot, BlueTooth, and Android Beam (when available). The goal is to implement the tools to make offline sharing and distribution an easy thing. Both of the app and the data stored inside the app.

Project Vision

The application aims to provide a secure platform for the user to store sensitive data. The user, and only the user may unlock, view and share the data managed (encrypted and hidden) by the application.

Near-future goals

Create a user-friendly data management experience. That is, provide an intuitive, smooth flow around locking and hiding data from other applications on the phone, or other users of the phone. Several core features for the hiding include:

  • Allowing users to 'morph' the application by renaming it and choosing a custom icon when sharing it with others. To deal with the fact that the app will always be in the installed apps list.
  • Keep the app out of the running processes list when the user is not using it.
  • And many more minor things like not being in the app drawer, not being part of the recent items list, etc.

In addition to the above:

  • A 'safety net' for the user, by providing notifications; for example when files have been left unlocked.
  • Direct phone-to-phone sharing of the application itself.
  • Direct phone-to-phone sharing of data stored within the application by user request.

Caveats

Currently the use of this application has several issues that may result in data loss. This sections aims to list all of them as a warning both for use and as a reminder of what to work on.

  • The applications encryption keys are tied to the installation.
  • Uninstalling the app deletes the data managed by the app.
  • Force-quitting the app may make the the app inaccessible, as well as the encrypted data, as it makes it stop listening for the right phone calls.
  • Any crashes of the app may do the same as the above.
  • This is unclear but very specific situations where the app is running and the phone really needs memory that it may force-quit the app and cause the above.

Far-future goals

Connecting the application to other (non-internet) means of communicating data.

Suggestions for this README? Create an issue.

Extension points exported contracts — how you extend this code

IOnResult (Interface)
Created by OlivierHokke on 3/29/14. [12 implementers]
AndroidStealth/src/main/java/com/stealth/utils/IOnResult.java
OnFragmentInteractionListener (Interface)
This interface must be implemented by activities that contain this fragment to allow an interaction in this fragment to [2 …
libraries/DirectoryChooser/src/main/java/net/rdrei/android/dirchooser/DirectoryChooserFragment.java
Callbacks (Interface)
Interface to listen for events. [1 implementers]
libraries/FileChooser/src/com/ipaulpro/afilechooser/FileListFragment.java
OnPinResult (Interface)
Allows interaction with this fragment [2 implementers]
AndroidStealth/src/main/java/com/stealth/pin/PinFragment.java
ICrypto (Interface)
Created by Alex on 2/22/14. [2 implementers]
AndroidStealth/src/main/java/com/stealth/encryption/ICrypto.java
IContentManager (Interface)
Created by Alex on 3/6/14. [2 implementers]
AndroidStealth/src/main/java/com/stealth/encryption/IContentManager.java
IDialogResponse (Interface)
Listener interface for the input dialog Created by OlivierHokke on 11-Apr-14. [2 implementers]
AndroidStealth/src/main/java/com/stealth/dialog/IDialogResponse.java

Core symbols most depended-on inside this repo

d
called by 88
AndroidStealth/src/main/java/com/stealth/utils/Utils.java
getContext
called by 50
AndroidStealth/src/main/java/com/stealth/utils/Utils.java
add
called by 42
libraries/FileChooser/src/com/ipaulpro/afilechooser/FileListAdapter.java
onResult
called by 37
AndroidStealth/src/main/java/com/stealth/utils/IOnResult.java
toast
called by 28
AndroidStealth/src/main/java/com/stealth/utils/Utils.java
length
called by 28
AndroidStealth/src/main/java/com/stealth/files/JSONArrayUnsorted.java
put
called by 28
AndroidStealth/src/main/java/com/stealth/files/JSONArrayUnsorted.java
getString
called by 28
AndroidStealth/src/main/java/com/stealth/files/JSONArrayUnsorted.java

Shape

Method 773
Class 70
Interface 14
Enum 2

Languages

Java100%

Modules by API surface

AndroidStealth/src/main/java/com/stealth/content/ContentFragment.java52 symbols
libraries/DirectoryChooser/src/test/java/net/rdrei/android/dirchooser/TestMenuItem.java39 symbols
AndroidStealth/src/main/java/com/stealth/utils/Utils.java39 symbols
AndroidStealth/src/main/java/com/stealth/files/JSONArrayUnsorted.java36 symbols
AndroidStealth/src/main/java/com/stealth/files/IndexedFile.java31 symbols
AndroidStealth/src/main/java/com/stealth/morphing/MorphingFragment.java30 symbols
libraries/DirectoryChooser/src/main/java/net/rdrei/android/dirchooser/DirectoryChooserFragment.java29 symbols
AndroidStealth/src/main/java/com/stealth/content/ContentAdapter.java26 symbols
libraries/FileChooser/src/com/ipaulpro/afilechooser/utils/FileUtils.java25 symbols
AndroidStealth/src/main/java/com/stealth/pin/PinFragment.java24 symbols
AndroidStealth/src/main/java/com/stealth/encryption/EncryptionService.java24 symbols
AndroidStealth/src/main/java/com/stealth/drawer/NavigationDrawerFragment.java23 symbols

For agents

$ claude mcp add droid-stealth \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact