From 0f0b0835862764a103fd9730d18978cdb7d1b4e3 Mon Sep 17 00:00:00 2001 From: Franck Royer Date: Fri, 13 Aug 2021 16:23:14 +1000 Subject: [PATCH 1/2] Update changelog for Eth-PM Wallet Encryption changes --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cfbc8032bd..9a2275304b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,6 +22,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 it is a type used for the [TOY-CHAT](https://rfc.vac.dev/spec/22/) protocol; js-waku users should not build on top if this toy protocol and instead design message data structures appropriate to their use case. +### Added +- Examples: New [Ethereum Private Message Using Wallet Encryption Web App](./examples/eth-pm-wallet-encryption/README.md) + example that demonstrates the usage of `eth_encrypt` API (available on Metamask) and EIP-712 for typed structured data signing. + ## [0.10.0] - 2021-08-06 ### Added From 0e8062d32e7f958c2ad55c6c03fe83efb424b4ae Mon Sep 17 00:00:00 2001 From: Franck Royer Date: Fri, 13 Aug 2021 16:48:32 +1000 Subject: [PATCH 2/2] Add caveat section --- examples/eth-pm-wallet-encryption/README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/examples/eth-pm-wallet-encryption/README.md b/examples/eth-pm-wallet-encryption/README.md index 20a0db277a..027d868498 100644 --- a/examples/eth-pm-wallet-encryption/README.md +++ b/examples/eth-pm-wallet-encryption/README.md @@ -25,3 +25,10 @@ cd examples/eth-pm-wallet-encryption npm install # Install dependencies for the web app npm run start # Start development server to serve the web app on http://localhost:3000/js-waku/eth-pm-wallet ``` + +## Caveats + +This is a PoC with some obvious UX caveats: + +- As the message payload is fully encrypted, the dApp asks MetaMask who in turns ask the user to decrypt every received message (even if we are the sender). +- This only uses Relay protocol to receive messages, meaning that participants must have the dApp open at the same time to receive private messages or public keys from each other.