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?
Let's wrap up
ecdhandchacha20poly1305in 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.ecdh(using the Rust plugin)chacha20poly1305(using the Rust plugin)blogs about Rust-on-mobile:
@tomastiminskas what do you know about wrapping Rust inside swift/kotlin?