Skip to content

Owner Use Of Multi Sign Address #302

Open

Description

@kaola526

1. Proposed issue:

Miner's owner address supports the use of multi sign address

2. Why is this issue important?

  1. The owner address holds the absolute power of miner, and uses multiple signature addresses to improve security;
  2. Improve the multi sign address application scenario of filecoin

3. Tasks

  1. The owner address is changed from ordinary address to multi sign address, multi sign address is changed to new multi sign address, and multi sign address is changed to single sign address.
    eg: ordinary address to multi sign address
    a,lotus-miner actor set-owner --really-do-it multisigAddress senderAddress
    multisigAddress: multisigAddress is multi sign address

    b-1,lotus-miner actor-msig set-owner --really-do-it=true --from=proposerAddress multisigAddress multisigAddress
    --from: Set the initiator of multi sign address transfer(Use local Default address when not set,But it must belong to the signers)
    --minerid: set Miner's address (Use local Default address when not set)
    b-2,lotus wallet approve approveAddress multisigAddress transferID [proposerAddress destination value [methodId methodParams]]

    eg: multi sign address address to other multi sign address
    a-1,lotus-miner actor-msig set-owner --really-do-it=true --from=proposerAddress newmultisigAddress oldmultisigAddress
    --from: Set the initiator of multi sign address transfer(Use local Default address when not set,But it must belong to the signers for oldmultisigAddress)
    --minerid: set Miner's address (Use local Default address when not set)
    a-2,lotus wallet approve approveAddress oldmultisigAddress transferID [proposerAddress destination value [methodId methodParams]]

    b-1,lotus-miner actor-msig set-owner --really-do-it=true --from=proposerAddress newmultisigAddress newmultisigAddress
    --from: Set the initiator of multi sign address transfer(Use local Default address when not set,But it must belong to the signers for newmultisigAddress
    --minerid: set Miner's address (Use local Default address when not set)
    b-2,lotus wallet approve approveAddress newmultisigAddress transferID [proposerAddress destination value [methodId methodParams]]

  2. With drawbalance when the owner is a multi sign address.
    eg:
    a-1,lotus-miner actor-msig withdraw --from=proposerAddress amount
    --from: Set the initiator of multi sign address transfer(Use local Default address when not set,But it must belong to the signers)
    --minerid: set Miner's address (Use local Default address when not set)
    a-2,lotus wallet approve approveAddress multisigAddress transferID [proposerAddress destination value [methodId methodParams]]

  3. When the owner is a multi sign in address, modify the control address
    eg:
    a-1,lotus-miner actor-msig control set --really-do-it=true --from=proposerAddress [...address]
    --from: Set the initiator of multi sign address transfer(Use local Default address when not set,But it must belong to the signers for owner)
    --minerid: set Miner's address (Use local Default address when not set)
    a-2,lotus wallet approve approveAddress multisigAddress transferID [proposerAddress destination value [methodId methodParams]]

  4. When the owner is a multi sign on address, modify the worker address
    eg:
    a-1,lotus-miner actor-msig propose-change-worker --really-do-it=true --from=proposerAddress [address]
    --from: Set the initiator of multi sign address transfer(Use local Default address when not set,But it must belong to the signers for owner)
    --minerid: set Miner's address (Use local Default address when not set)
    a-2,lotus wallet approve approveAddress multisigAddress transferID [proposerAddress destination value [methodId methodParams]]

    It needs to wait for some time. The height of the block is about 900 higher than the propose-change-worker cmd

    b-1,lotus-miner actor-msig confirm-change-worker --really-do-it=true --from=proposerAddress [address]
    --from: Set the initiator of multi sign address transfer(Use local Default address when not set,But it must belong to the signers for owner)
    --minerid: set Miner's address (Use local Default address when not set)
    b-2,lotus wallet approve approveAddress multisigAddress transferID [proposerAddress destination value [methodId methodParams]]

4. Additional Context

issues298

Activity

  1. jennijuju commented on Sep 17, 2021

    @jennijuju
    Member

    How is this different from what we have in lotus today? https://github.com/filecoin-project/lotus/pull/6490/files

  2. jennijuju commented on Sep 17, 2021

    @jennijuju
    Member

    From a bounty perspective, I’d imagine this to be combined with #298 as “msig wallet user experience improvement”

  3. kaola526 commented on Sep 17, 2021

    @kaola526
    Author

    How is this different from what we have in lotus today? https://github.com/filecoin-project/lotus/pull/6490/files
    The approach is very similar. We focused on the lotus-miner directory and didn't notice that lotus-shed provided minermultisigscmd. Recommended to add changeworker and changecontrol

  4. kaola526 commented on Sep 17, 2021

    @kaola526
    Author

    From a bounty perspective, I’d imagine this to be combined with #298 as “msig wallet user experience improvement”
    I thought of it this way. Lotus and lotus miner are two categories, so I thought of separating them. In addition, when using other lotus miner commands, we need to consider fixing bugs for supporting multiple sign in addresses

  5. jennijuju commented on Sep 20, 2021

    @jennijuju
    Member

    Fair enough.

  6. removed their assignment
    on Oct 27, 2021
  7. kaola526 commented on Oct 28, 2021

    @kaola526
    Author

    We are ready. Please help change the status from open bounds to in progress

  8. codeboost-tr commented on Jun 4, 2026

    @codeboost-tr

    Hello! I'd like to work on this multi-sign address documentation bounty. I'll be writing a comprehensive guide covering owner address transitions between ordinary, multi-sign, and single-sign addresses, as well as withdrawal, control address, and worker address management with multi-sign owners. Working on it now!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions