Skip to content

Commit 19e0a3a

Browse files
Varunramgitbook-bot
authored andcommitted
GitBook: [master] 44 pages modified
1 parent a411577 commit 19e0a3a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+81
-171
lines changed

SUMMARY.md

+25
Original file line numberDiff line numberDiff line change
@@ -69,23 +69,48 @@
6969
* [Advantages](alternate-ideas/bitcoin-lightning-network/advantages.md)
7070
* [Disadvantages](alternate-ideas/bitcoin-lightning-network/disadvantages.md)
7171
* [Bitcoin Pre Signed Transactions](alternate-ideas/bitcoin-pre-signed-transactions/README.md)
72+
* [Introduction](alternate-ideas/bitcoin-pre-signed-transactions/introduction.md)
7273
* [Disadvantages](alternate-ideas/bitcoin-pre-signed-transactions/disadvantages.md)
7374
* [Advantages](alternate-ideas/bitcoin-pre-signed-transactions/advantages.md)
7475
* [Bitcoin Sidechains](alternate-ideas/bitcoin-sidechains/README.md)
76+
* [Introduction](alternate-ideas/bitcoin-sidechains/introduction.md)
7577
* [Disadvantages](alternate-ideas/bitcoin-sidechains/disadvantages.md)
7678
* [Advantages](alternate-ideas/bitcoin-sidechains/advantages.md)
7779
* [Bitcoin Statechains](alternate-ideas/bitcoin-statechains/README.md)
80+
* [Disadvantages](alternate-ideas/bitcoin-statechains/disadvantages.md)
7881
* [Advantages](alternate-ideas/bitcoin-statechains/advantages.md)
82+
* [Introduction](alternate-ideas/bitcoin-statechains/introduction.md)
7983
* [Bitcoin](alternate-ideas/bitcoin/README.md)
84+
* [Introduction](alternate-ideas/bitcoin/introduction.md)
8085
* [Advantages](alternate-ideas/bitcoin/advantages.md)
86+
* [Disadvantages](alternate-ideas/bitcoin/disadvantages.md)
8187
* [Ethereum Sharding](alternate-ideas/ethereum-sharding/README.md)
88+
* [Introduction](alternate-ideas/ethereum-sharding/introduction.md)
89+
* [Disadvantages](alternate-ideas/ethereum-sharding/disadvantages.md)
8290
* [Advantages](alternate-ideas/ethereum-sharding/advantages.md)
8391
* [DeFi and Algorithmic Stablecoins](alternate-ideas/defi-and-algorithmic-stablecoins/README.md)
92+
* [Introduction](alternate-ideas/defi-and-algorithmic-stablecoins/introduction.md)
93+
* [Disadvantages](alternate-ideas/defi-and-algorithmic-stablecoins/disadvantages.md)
8494
* [Advantages](alternate-ideas/defi-and-algorithmic-stablecoins/advantages.md)
8595
* [DAOs](alternate-ideas/daos/README.md)
96+
* [Introduction](alternate-ideas/daos/introduction.md)
8697
* [Advantages](alternate-ideas/daos/advantages.md)
98+
* [Disadvantages](alternate-ideas/daos/disadvantages.md)
8799
* [Cross Blockchain Bridges](alternate-ideas/cross-blockchain-bridges/README.md)
100+
* [Introduction](alternate-ideas/cross-blockchain-bridges/introduction.md)
101+
* [Disadvantages](alternate-ideas/cross-blockchain-bridges/disadvantages.md)
88102
* [Advantages](alternate-ideas/cross-blockchain-bridges/advantages.md)
89103
* [Ethereum](alternate-ideas/ethereum/README.md)
104+
* [Introduction](alternate-ideas/ethereum/introduction.md)
105+
* [Disadvantages](alternate-ideas/ethereum/disadvantages.md)
90106
* [Advantages](alternate-ideas/ethereum/advantages.md)
91107

108+
## Ideas
109+
110+
* [Ideas](ideas/ideas.md)
111+
* [Stellar](ideas/stellar/README.md)
112+
* [Introduction](ideas/stellar/introduction.md)
113+
* [Advantages](ideas/stellar/advantages.md)
114+
* [Disadvantages](ideas/stellar/disadvantages.md)
115+
* [Stellar](ideas/stellar-1.md)
116+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Bitcoin Lightning Network
2+

alternate-ideas/bitcoin-lightning-network/advantages.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@
44
2. **Faster payments:** Since Lightning transactions are settled immediately, this is faster than having to wait for a block. Lightning transactions can also be asynchronous since there are multiple channels open at the same time.
55
3. **Good partner ecosystem:** Many partner companies are available in the Lightning ecosystem and it is easy to leverage their help to improve the functionality of Opensolar. Building on Lightning would also enable the possibility of lightning mobile apps - web platform cross integration, making it easier for receivers to pay back towards projects.
66
4. **Improved Functionality:** Lightning offers more functionality \(atomic swaps, state update proofs\) that Opensolar could expand on compared to Stellar, and Lightning core development is faster than Stellar.
7-
5. **Option to switch between Bitcoin-L1 and Lightning:** For high valued investments, it is easy to leverage Bitcoin-L1's security.
7+
5. **Option to switch between Bitcoin-L1 and Lightning:** For high valued investments, it is easy to leverage Bitcoin-L1's security.
8+

alternate-ideas/bitcoin-lightning-network/disadvantages.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@
22

33
1. **Need to manage liquidity:** Since the platform acts as a central provider of liquidity, it maintains a non trivial balance of Bitcoin in open channels and it should manage these balances efficiently. Failure to manage balances efficiently could lead to the platform's inability to open new channels and therefore increase costs. Maintaining channel balances also means there's an amount that is constantly locked and not spendable.
44
2. **Need to handle channel closing:** Since lightning is a channel based infrastructure, the platform should be adequately equipped to handle channel closures \(both by the platform, and by the entities on the platform\). An alternative might be that the platform does not offer channel closures to entities on the platform though this comes at the cost of reduced decentralisation.
5-
3. **Handling large payments:** Lightning is still in its infancy with respect to channel capacity and large amounts that need to be transferred sometimes fail to find a route. One way to handle this is by ramping up channel capacity on the platform's end as needed although this would conflict with 1 above, and make liquidity handling more difficult.
5+
3. **Handling large payments:** Lightning is still in its infancy with respect to channel capacity and large amounts that need to be transferred sometimes fail to find a route. One way to handle this is by ramping up channel capacity on the platform's end as needed although this would conflict with 1 above, and make liquidity handling more difficult.
6+

alternate-ideas/bitcoin-lightning-network/introduction.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# LN Hub and Spoke Model
1+
# Introduction
22

33
In the Hub and Spoke model, the platform \("Hub"\) acts as a centralized hub with which all the entities \("Spokes"\) in the platform interact and have channels with. The hub provides outbound liquidity to all spokes, coordinates payments and handles state updates. The platform does not expose public keys and channel ids, and handles lightning channels and state updates internally. This reduces the possibility of attacks by entities since they don't have a copy of their state \(only the platform does\). This however, this increases trust and responsibility on the platform since the platform should maintain these states in a stable manner, ensuring that no entity defrauds the other. The platform could also hire a watchtower's services in order to provide guarantees on users' channels not closing due to internal platform errors.
44

@@ -26,4 +26,5 @@ Investors holding altcoins can use atomic swap services \(which could either be
2626

2727
The platform should take note of griefing attacks \(ie\) when users sign up as receivers or developers but don't use the account, effectively forcing the platform to lock funds for a pre-defined period of time. This can be avoided by only opening channels with entities that are already associated with a project, and by efficiently closing unused channels.
2828

29-
The trust model in this scenario is that entities trust the platform to push funds to the developer, contractor, create multisig escrows, etc. The availability of proofs in the form of state update hashes and tx ids removes the need for state variables.
29+
The trust model in this scenario is that entities trust the platform to push funds to the developer, contractor, create multisig escrows, etc. The availability of proofs in the form of state update hashes and tx ids removes the need for state variables.
30+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Bitcoin Pre Signed Transactions
2+

alternate-ideas/bitcoin-pre-signed-transactions/advantages.md

+1
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@
55
3. **No stablecoin:** This model does not involve a stablecoin, and people need not trust third party vendors.
66
4. **Big partner ecosystem:** Bitcoin has a lot of partner companies which are looking to improve different aspects of using and getting on to Bitcoin. Since the model does not use a stablecoin, the platform can build more on core Bitcoin functionality without worrying about third party stablecoin providers
77
5. **Improved functionality:** Bitcoin has more opcodes than Stellar, and can therefore the platform can look to implement more complex functionality.
8+

alternate-ideas/bitcoin-pre-signed-transactions/disadvantages.md

+1
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@
33
1. **Less decentralised than Lightning:** Since the platform possesses pre-signed transactions, a malicious platform could refuse to broadcast or delete the transactions, grief attacking the entities involved in the transaction. Although such an attack would come at a reputational risk to the platform, this places more trust on the platform than Lightning.
44
2. **Slow confirmation times:** Bitcoin transactions are slower than Stellar transactions, so the platform needs to wait for a given period of time before it can confirm an investment or withdrawal.
55
3. **High Fees:** Bitcoin transaction fees vary widely, and sometimes it can be expensive to spend Bitcoin. Since this model does not make use of a stablecoin, the fees associated with a stablecoin is discounted and more than accounts for any Bitcoin transaction fee involved.
6+
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,2 @@
1-
# Bitcoin Pre Signed Transactions
1+
# Introduction
22

3-
A bitcoin transaction requires signatures from all private keys associated with input utxos. A transaction can be broadcast to the blockchain at any time provided the spending conditions and associated signatures are still valid at the time of broadcast. As a result, a transaction can be signed beforehand but broadcast when required. Such a transaction is referred to as a "pre-signed transaction". This transaction can have conditions associated to spending \(for example, invest 1000 in this project within 3 months, else refund money to this other address\) that refund to a user if not broadcast within a certain interval of time, can have locktimes that automatically render the spending conditions invalid, etc.
4-
5-
If an investor wishes to invest in a project, they could give a pre-signed transaction to the platform guaranteeing their investment if it reaches the investment threshold. If the investment threshold is reached, the platform checks if the spending conditions and signatures are valid, checks the blockchain to see if the txos are still unspent, and broadcasts the transaction. The investor can also add conditions to investments which are a combination of project conditions and blockchain rules \(example: if this project raises atleast 10000 within 1 month, invest 4000 else wait for project investment and refund after 3 months if project threshold is not reached\), and the platform would check if these are valid at the time of broadcast.
6-
7-
The platform on completion of investment signs transactions paying funds to the developer and contractor but does not publish them until the receiver has marked their role complete and provides proof that the installation was complete. The guarantor gives pre-signed transactions that the platform agrees to not publish unless the receiver defaults on a number of payments.
8-
9-
In the event the investment threshold is not reached, the investor should spend the funds associated with the address to another address or should specify a refund address to the platform. The latter places responsibility for broadcasting the refund transaction onto the platform and the former places emphasis on the investor to transfer their funds as soon as their deadline for investment has is reached.
10-
11-
This model would involve the construction of a secure way to store pre-signed transactions since any user in possession of them can broadcast the transaction, and gried users if they act maliciously. One time passcodes that are relayed on completion of certain events to encrypt the transactions are a potential solution to this problem.
12-
13-
The trust model of this idea relies on the platform not grief attacking its users and not broadcasting funds. At most, the platform has the ability to selectively censor txs, prevent recipients from getting money, etc.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Bitcoin Sidechains
2+

alternate-ideas/bitcoin-sidechains/advantages.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@
44
2. **Fast transactions:** Sidechain transactions are usually faster than Bitcoin-L1, and depending on construction, faster than Stellar.
55
3. **Easy integration with Bitcoin-L1 and Lightning:** Sidechain pegs are easy to get in and out of. Onboarding is therefore easier since one can leverage the partner ecosystem of Bitcoin to get into a sidechain.
66
4. **More secure decentralised than Stellar:** Sidechains usually have more running nodes than Stellar and therefore, it is less likely a transaction will be censored. Since sidechains are used in combination with Bitcoin-L1, sidechains borrow from Bitcoin-L1's security.
7-
5. **Low fees:** Sidechains usually have negligible fees as compared to Bitcoin-L1, and sometimes, Stellar.
7+
5. **Low fees:** Sidechains usually have negligible fees as compared to Bitcoin-L1, and sometimes, Stellar.
8+

alternate-ideas/bitcoin-sidechains/disadvantages.md

+1
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@
33
1. **External consensus mechanism:** The sidechain may have its own consensus mechanism and the attack vectors associated with this needs to be reviewed carefully.
44
2. **Deposits and Withdrawal delays:** When an entity wants to withdraw funds, they need to wait for the next commitment / merge mined block on Bitcoin, and subsequent confirmations on Bitcoin in order to withdraw their funds. This is usually slow since entities wait for a certain period of time before confirming a transaction on Bitcoin.
55
3. **Not time tested:** Sidechains are a relatively new idea, and their security has not been as time tested as Bitcoin. Sidechains however, have not suffered attacks like Stellar.
6+
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,2 @@
1-
# Bitcoin Sidechains
1+
# Introduction
22

3-
Sidechains are similar in design to the Lightning Network and act as a parallel layer for settlement of transactions. They however, differ in architectural construction since they don't have channels or liquidity. Sidechains' design is the same as Bitcoin-L1 except that the block headers are committed at regular intervals to Bitcoin-L1 or their blocks merge-mined along with Bitcoin-L1 with smaller commitments being made in parallel on the sidechain. A sidechain when viewed from the outside looks no different than a standard blockchain., and a platform that adopts Bitcoin-L1 can readily migrate to a sidechain by naking minimal changes.
4-
5-
A sidechain can provide an improved set of features \(eg: the block interval can be smaller, there may be no transaction fees associated with the sidechain, etc\). All bitcoin protocol rules valid in Bitcoin-L1 are valid in a sidechain based on Bitcoin, although a sidechain can be based off a different currency like Ethereum and commit state updates to Bitcoin-L1. A sidechain can also be a federated system, with certain entities having permissions to write to the sidechain and subsequently, Bitcoin-L1.
6-
7-
Each openx platform can be its own sidechain and a centralized coordinator can group the hashes and commit them at regular intervals to Bitcoin-L1. The parent openx platform could itself be a sidechain and different platforms based off openx can be children sidechains which commit to the parent openx sidechain. Functions inside the platform can be same as that on Bitcoin except they can be faster, cheaper and have more features added on to the base layer. Each individual platform need not worry about whether it is running on a sidechain or not since there is no distinction.
8-
9-
An alternate architecture would be one where each platform submits transactions and other changes to the bigger openx platform, and openx decides which sidechain to post the transaction to. Additional features \(that are not present on the Bitcoin base layer\) if used can be marked with flags. Openx can maintain an internal store of the transactions broadcast by a platform. Openx can also broadcast transactions without flags to Bitcoin-L1 depending on the amount transacted and the current fee market. Openx should return a proof to the caller platform \(ideally a tx id\) that the transaction was broadcast, along with a sidechain or Bitcoin-L1 identifier. This identifier can be used on a sidechain or Bitcoin-L1 explorer to identify the transaction.
10-
11-
A sidechain explorer should contain the details of the tx \(like a normal blockchain explorer\) along with the L-1 block the chain's headers were committed to. This way, entities in possession of the proofs can easily cross reference where their transactions were committed. In the alternate architecture, an explorer must display if the transaction was commit to Bitcoin-L1 or a sidechain, and provide an identifier for the same.
12-
13-
A sidechain could also be used in combination with another Bitcoin-L1 or another blockchain with each performing a subset of functions. The sidechain could be used as a layer for updating state and Bitcoin-L1 could be the layer where investments and payments happen.
14-
15-
The trust model for this depends on the sidechain's construction - who can create blocks, who can post transactions, etc. Since opensolar's idea revolves around trusting the platform, the platform can be the entity that performs these functions. Existing sidechains like Liquid or merge mined coins like RSK can also be used in place of a custom sidechain. The trust model for the latter is that one should trust the entities controlling these sidechains along with the platform.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Bitcoin Statechains
2+
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,2 @@
11
# Disadvantages
22

3-
1. **Less decentralised than Lightning:** Since the platform acts a a central coordinator for processing statechains, any of the previous owners of the utxo can collude with the platform to steal funds from a user. Such an attack will be public and does come at a reputational cost to the platform but the construction is more centralised than Lightning which does not have any such trust involved.
4-
2. **Absence of assets:** Since Bitcoin doesn't support assets, there is no ready solution to adopt which can replace assets on Stellar. An alternative is to get rid of assets and handle only proofs.
5-
3. **Slow confirmation times:** Bitcoin transactions are slower than Stellar transactions, so the platform can not afford to make a lot of synchronous payment requests during the investment workflow. This is a concern only when entering and exiting the statechain since transactions within the statechain are instantaneous.
6-
4. **High Fees and whole utxos:** Bitcoin transaction fees vary widely, and sometimes it can be expensive to spend Bitcoin. This would affect entities entering and exiting the statechain. Statechains also require complete utxos and splitting utxos should occur as a transaction on Bitcoin-L1, increasing fees and wait times involved.
7-
5. **Not time tested:** Statechains is a recent development, and hasn't been battle tested for security.
8-

0 commit comments

Comments
 (0)