Skip to main content

RecoveryVault Demo

The App

This is an educational mobile app designed to provide hands-on experiments and experience with Shamir's Secret Sharing.

How to use the app

  1. Enter “the secret” (any text) in the primary text box. This text will be processed into shares.
  2. Optionally: enable or disable Randomize Share Size. The purpose of this is described in the Share Details section.
  3. Select a Threshold such as 2
  4. Select the number of Shares such as 3
  5. Tap the Generate Shares button. Tapping the button more than once will replace the previously generated shares with new shares applying a new set of randomized coefficients.
  6. Select any combination of shares to meet the previously defined Threshold.
  7. Tap the Reconstruct Secret button to apply the selected shares to decrypt/reconstruct and display the result matching the original secret.

Observations

The shares do not contain any part of the original secret and tapping Generate Shares multiple times will show some level of share randomization.

If Randomize Share Size is disabled, the share size in bytes will be correlated to the secret size in bytes; however, if Randomize Share Size is enabled, the shares will be of varying sizes.

Selecting more shares than the threshold will work, but less than the threshold will fail.

How it works?

For a simple overview on how it works you can check out this description.

The full details can be found here in the original paper by Adi Shamir published in 1979.

Beyond

Interested in using Shamir Secret Sharing? As described above, while the protocol is straightforward, practical implementation is very tricky. Don’t fear: the creators of this RecoveryVault Demo have SecretShield ready for use.