drawing

Description

A couple of years ago I created StegoSecretS, a small cli used to encrypt and split a secret into multiple keys, using the Shamir's Secret Sharing algorithm.

The idea is to re-implement the project using physical devices. One device alone will be useless, but when close together they can be used to decrypt the secret.

On a practical side the user encrypts the secret with a mobile application. The same application is used to split the secret, and load the partial keys into different micro-controllers. Another user will be able to decrypt the secret only having at least N devices close together (using the application).

I'm planning to use a couple of ESP32-C3 I bought, and build a very simple Android mobile application.

Goals

  • Learn about Rust and micro-controllers (ESP32-C3)
  • Learn about mobile applications (Android and Kotlin)

Resources

Looking for hackers with the skills:

esp32 espressif rust mobile android microcontroller esp

This project is part of:

Hack Week 24

Activity

  • 11 months ago: michals liked this project.
  • 11 months ago: robert.richardson liked this project.
  • 11 months ago: llansky3 liked this project.
  • 11 months ago: FSzekely liked this project.
  • 11 months ago: baldarn liked this project.
  • 11 months ago: ecandino started this project.
  • 11 months ago: ecandino added keyword "esp32" to this project.
  • 11 months ago: ecandino added keyword "espressif" to this project.
  • 11 months ago: ecandino added keyword "rust" to this project.
  • 11 months ago: ecandino added keyword "mobile" to this project.
  • 11 months ago: ecandino added keyword "android" to this project.
  • 11 months ago: ecandino added keyword "microcontroller" to this project.
  • 11 months ago: ecandino added keyword "esp" to this project.
  • 11 months ago: ecandino originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    Create an Android app for Syncthing as part of the Syncthing Tray project by mkittler

    Description

    There's already an app but code/features already in Syncthing Tray could be reused to create a nicer app with additional features like managing ignore patterns more easily. The additional UI code for the app could then in turn be re-used by other parts of Syncthing Tray, e.g. to implement further steps in the wizard as requested by some users. This way one "UI wrapper codebase" could serve GNU/Linux, Windows and Android (and in theory MacOS) at the same time which is kind of neat.

    Goals

    • DONE: Learn more about development for Android and development of UIs with Qt Quick
    • DONE: Create an experimental app reusing as much existing Syncthing Tray code as possible
    • DONE: Build Syncthing as a library also for Android and use it in the app (already done but needs further testing and integration with the rest of the app configuration)
    • DONE: Update the Syncthing Tray website, documentation
    • DONE: Extend the app so it has at least a start page and an import
    • Update forum thread
    • DONE: Upload an experimental build on GitHub
    • Extend the Syncthing API to download single files on demand (instead of having to sync the whole directory or use ignore patterns)
    • Bring back parts of the newly developed mobile UI back to Syncthing Tray on the desktop to fully benefit from the cross-platform development
      • Add UI to add/edit folders and devices in desktop tray app
      • Add UI to show out-of-sync items in desktop tray app
      • Create an alternative "AppWindow" tailored for desktop platforms reusing UI components developed for the mobile app

    Resources

    • Android SDK/NDK and emulator
    • Qt Quick