Giter VIP home page Giter VIP logo

consensus's Introduction

waterfall

consensus's People

Contributors

4meta5 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

consensus's Issues

HotStuff

HotStuff: BFT Consensus with Linearity and Responsiveness

Once network communication becomes synchronous, HotStuff enables a correct leader to drive the protocol to consensus at the pace of actual (vs.maximum) network delay—a property called responsiveness—and with communication complexity that is linear in the number of replicas.

Threshold Signature Scheme

Threshold Signatures Explained by Omer Shlomovits
...both multisig and TSS are essentially trying to achieve similar goals, but TSS is using cryptography off-chain, while multisig happens on-chain. However, the blockchain needs a way to encode multisig, which might harm privacy because the access structure (number of signers) is exposed on the blockchain. The cost of a multisig transaction is higher because the information on the different signers also needs to be communicated on the blockchain. In TSS, the signers’ details are folded into a regular looking transaction, reducing cost and maintaining privacy. On the other hand, multisig can be non-interactive, which saves the trouble of running a complex communication layer between the different signers.

NPoS

I've already written some basic, use-case oriented notes, but I want to understand how it actually works. Seems like a useful mechanism for achieving proportionally justified representation in any context (ie not limited to blockchain consensus algorithms)

Web 3 Reference Implementations

Paper

Substrate Implementation

IPLDMRDTDAG

structure a state machine that formats transactions in a way that provides domain-specific context with IPLD.

calculating dependence

The transaction format should allow us to calculate some meaningful measure of independence between transactions. This dependence measure can be used to manage the flow rate of proposals, voter participation, and other signalling expectations that the blockchain will need to be live to receive and incorporate into its future state.

dependence allows us to construct a flexible DAG

The metric for dependence does not need to be binary -- the point is to use measurements of dependence to allow for stateful merging of transactions while also limiting transaction throughput for certain operations to manage flow rate of actions.

in summary

When it comes to thinking about the transaction format, I have a few unrelated concepts that I think might prove useful for fostering certain stateful network operations over the read uncommitted (dirty) transactions

I'd also like to aspire to one of age's goal and adopt a simple, streaming encryption protocol (like noise/disco): "A good seekable streaming encryption scheme based on modern chunked AEADs, reusable as a general encryption format", but this should probably be done in some client-side library (the node)

Cryptography::Estimating Set Equality

I would like to at some point catalogue the varying levels of accuracy and efficiency for proving set membership and estimating membership/equality.

Proving Set Membership

  • vector commitments and accumulators (see subatomic repo)
  • merkle trees

Estimating Membership or Set Equality

Watermarking

seems like this could be vaguely related to proxy re-encryption

Watermarking Public Key Cryptographic Primitives
Watermarking public-key encryption or signatures means modifying the signing/decryption algorithm so that signatures are still verifiable on the same key and ciphertexts decryptable but one can extract a mark from the decryption/signing circuit. The authors suggest new constructions for both, allowing public marking, public mark extraction, and prohibiting mark removal.

iota (for L2 IOT)

Sunny's Thoughts on Iota brings up two issues:

  1. the suggested tip strategy may not be optimal => \exists some chance that a malicious strategy is optimal
  2. how can the Proof of Work be easy enough that IoT devices will have the ability to do it for their own transactions but still be hard enough to prevent 33% attacks or Denial of Service attacks on the system

Proving (1) seems difficult if not impossible. Equilibria in the Tangle provides some relevant analysis.

(2) might be addressed by coordicide and never occurred in Iota because of the use of a central coordinator

legitimate use cases

I agree; iota may be "put to better use as a permissioned second-layer micro-transaction solution amongst a number of semi-trusted devices on top of blockchains"

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.