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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions