Git Product home page Git Product logo

kernel-plugins's Introduction

  • ๐Ÿ‘‹ Hi, Iโ€™m @hangleang. Just me as simple
  • ๐Ÿ‘€ Iโ€™m interested in Tech: Blockchain, Smart Contract and web3 in general
  • ๐ŸŒฑ Iโ€™m also interested in RegAgri: Permaculture, Agroforestry, Market Gardening
  • ๐Ÿ“ซ How to reach me ...

kernel-plugins's People

Contributors

hangleang avatar

Watchers

 avatar

kernel-plugins's Issues

Whitelists Address

Description:

only allow transactions to certain addresses that you know to be safe. This means that even if your private key was stolen, the attacker could not send funds to non-whitelisted destination accounts. These whitelists would require multiple signatures to change them so that an attacker couldn't add their own address to the list unless they had access to several of your backup keys.

Interpretation:

Block by #1

Refactor: Multisig Authorization

  • submit_transaction
  • confirm_transaction
  • execute_transaction
  • revoke_confirmation
  • set_threshold
  • set_guardians
  • set_guardians_and_threshold

Recovery Keys

Description:

Lost a device or forgotten a password? In the current paradigm this means your assets could be frozen forever. With a smart contract wallet, you can set some pre-approved accounts that can authorize new devices and reset access.

Interpretation:

Block by #1

Multisig Authorization

Description:

You can share authorization credentials across multiple trusted people or devices. Then the contract can be configured so that transactions of more than some preset value require authorization from a certain proportion (e.g. 3/5) of the trusted parties. For example, high value transactions might require approval from both a mobile device and a hardware wallet, or signatures from accounts distributed to trusted family members.

Interpretation:

  • storage: create multisig authorization state
struct MultisigAuthorizationStorage {
   bool enabled;
   uint8 threshold;
}

mapping(address kernel => MultisigAuthorizationStorage validatorStorage) public multisigAuthorizationStorage;
mapping(address guardian => mapping(address kernel => bool isTrue)) public isGuardian;
  • enable: extract trusted parties' address, set those isGuardian to true and threshold from enableData
  • disable: extract list of address from bytes data, and set those isGuardian to false, or delete the kernel entry
  • validateUserOp: extract approvalCount, aggregate signatures from userOp.signature, check those signature from trusted parties, and hit threshold

Spending Limit Policy

Description:

specify daily thresholds for how much value can be transferred from the account in a day/week/month. This means if an attacker does gain access to your account they can't drain everything at once and you have opportunities to freeze and reset access.

Interpretation:

Block by #1
Inspired by Rate Limit Policy

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.