status-im / status-desktop

Status Desktop client made in Nim & QML
https://status.app
Mozilla Public License 2.0
301 stars 79 forks source link

feat(BrowserConnect): Implementing eth_signTypedData_v4 #16777

Closed alexjba closed 1 hour ago

alexjba commented 3 days ago

What does the PR do

Iterates: #16770 Needs: https://github.com/status-im/status-go/pull/6108

Implementing eth_signTypedData_v4

This commit renames the personalSign to Sign in nim and status-go to enable eth_signTypedData_v4 signing. The sing request coming from the status-go API contains the signing method to be used by the client. Currently we're supporting personal sign and signTypedData_v4.

The only difference between these two signing methods is the order of challenge and address in the params array. This is handled in the SappsConnectorSDK::buildSignRequest

Affected areas

Architecture compliance

Screenshot of functionality (including design for comparison)

eth_signTypedData_v4 - BrowserConnect vs. WalletConnect

https://github.com/user-attachments/assets/d9823aab-00f2-4da2-add6-0a8b6d3a2c57

status-im-auto commented 2 days ago

Jenkins Builds

:grey_question: Commit :hash: Finished (UTC) Duration Platform Result
:heavy_check_mark: 14493061 #1 2024-11-19 12:34:58 ~6 min macos/aarch64 :apple:dmg
:heavy_check_mark: 14493061 #1 2024-11-19 12:37:14 ~9 min tests/nim :page_facing_up:log
:heavy_check_mark: 14493061 #1 2024-11-19 12:41:24 ~13 min tests/ui :page_facing_up:log
:heavy_check_mark: 14493061 #1 2024-11-19 12:43:22 ~15 min macos/x86_64 :apple:dmg
:heavy_check_mark: 14493061 #1 2024-11-19 12:49:39 ~21 min windows/x86_64 :cd:exe
:heavy_check_mark: 14493061 #1 2024-11-19 12:50:13 ~22 min linux-nix/x86_64 :package:tgz
:heavy_check_mark: 14493061 #1 2024-11-19 12:53:35 ~25 min linux/x86_64 :package:tgz
:x: 14493061 #2 2024-11-22 09:37:04 ~4 min macos/x86_64 :page_facing_up:log
:heavy_check_mark: 14493061 #2 2024-11-22 09:38:57 ~6 min macos/aarch64 :apple:dmg
:heavy_check_mark: 14493061 #2 2024-11-22 09:40:46 ~8 min tests/nim :page_facing_up:log
:heavy_check_mark: ae4c9d38 #3 2024-11-22 09:46:54 ~4 min macos/aarch64 :apple:dmg
:heavy_check_mark: ae4c9d38 #3 2024-11-22 09:50:44 ~8 min tests/nim :page_facing_up:log
:heavy_check_mark: ae4c9d38 #3 2024-11-22 09:54:54 ~12 min tests/ui :page_facing_up:log
:heavy_check_mark: ae4c9d38 #3 2024-11-22 09:56:10 ~13 min macos/x86_64 :apple:dmg
:heavy_check_mark: ae4c9d38 #3 2024-11-22 10:05:34 ~23 min linux/x86_64 :package:tgz
:heavy_check_mark: ae4c9d38 #3 2024-11-22 10:06:47 ~24 min linux-nix/x86_64 :package:tgz
:heavy_check_mark: ae4c9d38 #3 2024-11-22 10:09:52 ~27 min windows/x86_64 :cd:exe