Skip to content

crypter in app #42

@Evanfeenstra

Description

@Evanfeenstra

Let's wrap up ecdh and chacha20poly1305 in a rust binary and put it inside Swift and Kotlin! First thing to do with this is securely pass the VLS seed from the phone to the hardware.

  • Phone generates a sepc256k keypair (using swift/kotlin)
  • Hardware generates a secp256k1 keypair
  • app posts its key via http, and receives the hardware's key
  • both sides generate a shared secret using ecdh (using the Rust plugin)
  • app generates the 32-byte VLS seed
  • app encrypts the seed with the secret using chacha20poly1305 (using the Rust plugin)
  • app sends the encrypted seed to the hardware (also the home wifi, password, and broker url)
  • hardware decrypts the seed, and stores it! (along with the other info)

blogs about Rust-on-mobile:

@tomastiminskas what do you know about wrapping Rust inside swift/kotlin?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions