specs icon indicating copy to clipboard operation
specs copied to clipboard

Proposed changes to NewActorAddress

Open arajasek opened this issue 4 years ago • 2 comments

There are ~three~ four proposed changes to how actor addresses are generated in the VM. They are:

  1. Use the origin address, not the _immediateCaller. This seems necessary to avoid address collisions (for example, in power_actor's CreateMiner method).
  2. Use the pubkey address, not the ID address, which is what the spec currently says we should do.
  3. Use the top level message's nonce, and not the top level sender's actor's nonce (since that has already been incremented by this point).
  4. [New!] Replace internalCallSeqNum counting all internal message sends with a newActorAddressCount counter of calls to the method specifically, in the context of the originating message. The first value used is zero. (@anorth)

I think we already have broad consensus on these proposed changes.

cc @frrist

arajasek avatar Mar 17 '20 20:03 arajasek

This SGTM, Thanks for writing this up @arajasek !

whyrusleeping avatar Mar 17 '20 20:03 whyrusleeping

I have added a fourth change to the issue description:

Replace internalCallSeqNum counting all internal message sends with a newActorAddressCount counter of calls to the method specifically, in the context of the originating message

anorth avatar Mar 19 '20 01:03 anorth