Skip to content

Commit

Permalink
Update EIP-4519: Move to last call (ethereum#5908)
Browse files Browse the repository at this point in the history
* Update eip-4519.md

* Update eip-4519.md
  • Loading branch information
Hardblock-IMSE-CNM authored and nachomazzara committed Jan 13, 2023
1 parent bb4c43b commit f3b5212
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions EIPS/eip-4519.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ title: Non-Fungible Tokens Tied to Physical Assets
description: Interface for non-fungible tokens representing physical assets that can generate or recover their own accounts and obey users.
author: Javier Arcenegui (@Hardblock-IMSE-CNM), Rosario Arjona (@RosarioArjona), Roberto Román <[email protected]>, Iluminada Baturone (@lumi2018)
discussions-to: https://ethereum-magicians.org/t/new-proposal-of-smart-non-fungible-token/7677
status: Review
status: Last Call
last-call-deadline: 2022-11-30
type: Standards Track
category: ERC
created: 2021-12-03
Expand Down Expand Up @@ -45,7 +46,7 @@ $$K_A = SK_A*PK_{O_{-}A}$$

If everything is correctly done, $K_O$ and $K_A$ are the same since:

$$K_O=PK_A*SK_{O_{-}A}=(SK_A*P)\*SK_{O_{-}A}= SK_A*(SK_{O_{-}A}*P)=SK_A*PK_{O_{-}A}$$
$$K_O=PK_A\*SK_{O_{-}A}=(SK_A\*P)\*SK_{O_{-}A}= SK_A\*(SK_{O_{-}A}\*P)=SK_A\*PK_{O_{-}A}$$

Using the function `ownerEngagement`, the asset sends the hash of $K_A$, and if it is the same as the data in `hashK_OA`, then the state of the token changes to `engagedWithOwner` and the event `OwnerEngaged` are sent. Once the asset receives the event, it changes its operation mode to `engagedWithOwner`. This process is shown in `Figure 4`. From this moment, the asset can be managed by the owner and they can communicate in a secure way using the shared key.

Expand All @@ -59,7 +60,7 @@ $$K_A = SK_A*PK_{U_{-}A}$$

If everything is correctly done, $K_U$ and $K_A$ are the same since:

$$K_U=PK_A*SK_{U_{-}A}=(SK_A*P)\*SK_{U_{-}A}= SK_A*(SK_{U_{-}A}*P)=SK_A*PK_{U_{-}A}$$
$$K_U=PK_A\*SK_{U_{-}A}=(SK_A\*P)\*SK_{U_{-}A}= SK_A\*(SK_{U_{-}A}\*P)=SK_A\*PK_{U_{-}A}$$

Using the function `userEngagement`, the asset sends the hash of $K_A$ obtained and if it is the same as the data in `hashK_UA`, then the state of the token changes to `engagedWithUser` and the event `UserEngaged` is sent. Once the asset receives the event, it changes its operation mode to `engagedWithUser`. This process is shown in `Figure 5`. From this moment, the asset can be managed by the user and they can communicate in a secure way using the shared key.

Expand Down

0 comments on commit f3b5212

Please sign in to comment.