Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

CryptoKupa

A Decentralized Bitcoin Scheme for Communal Funds
by

Ori Shimony

on 2 May 2018

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of CryptoKupa

Some Background
have
trust
"built in"

be
sustainable
over time and space

be securely
decentralized

A solution should...
Enables a defined group of individuals to securely contribute and spend from a "Kupa" of Bitcoin

Serverless system: each member downloads the CryptoKupa client and blockchain to their own machine

CryptoKupa
m
-of-
n
multisig
n
>
m
: faster approval

n
-->
Individual Spending Cap (Max)
vulnerable to malicious collusion


c
(chunk)

c
--> spending flexibility, tx fees

approvals-per-BTC = (
m
-1)/
c
varied to adjust "difficulty"
m
&
c
can be varied
Parameters
CryptoKupa
A Decentralized Bitcoin Scheme for Communal Funds
By Ori Shimony
Kupa:
Collective living frameworks are used as the foundation for achieving goals

These collectives operate on a system of sharing, modeled off the Israeli Kibbutz Movement, called Kupa

Kupa is essentially a pot of money that a group of people contribute to and spend from
Structure
Establishment
: Members have a meeting to decide on the rules/parameters for their Kupa system
Contributions
: Members hand cash to the democratically elected treasurer
Spending
: Members use personal cash for purchases then present receipts to
the treasurer for reimbursements
Ideology
Responsible spending and adequate member contributions are not guaranteed
>
dependent on
social pressures and continuous
trust
Limitations
Spending power is independent of amount contributed
> One's socioeconomic standing "out there" should not effect their power "in here"
> Removes money as a divisive social power
Give what you can
Take what you need
Strengthens our community:
> Money as a tool for enhancing the collective
> Empowers individuals to act in
the group's best interest
Requires
a competent and trustworthy
central authority
(treasurer)
Very
difficult to sustain
over large distances and time-spans
A Cooperative Fund
Contributing
The Scheme
M
= {A, B, C, D, E}
each member's public key

L
= {AB, AC, AD, AE, BC, BD, BE, CD, CE, DE}
all member pairs
everyone keeps L in this order

all tx's use agreed upon chunks, size
c
ex)
c
= .05 BTC

all tx's use an agreed upon
m
-of-
n
multisig
ex) 2-of-2

U
- set of all UTXO's in kupa
U'
- all U with at least 6 confirmations
Member D Pays .15 BTC to Kupa
Each user has 3 roles:
Contributor
,
Spender
, &
Approver
D creates and broadcasts 3 2-of-2 multisig tx's of .05BTC, where L[0] must sign and is then popped/pushed to the end of
L
scriptPubKey:
OP_2 {pubkeyA} {pubkeyB} OP_2 OP_CHECKMULTISIG
L
= {AC, AD, AE, BC, BD, BE, CD, CE, DE, AB}
OP_2 {pubkeyA} {pubkeyC} OP_2 OP_CHECKMULTISIG
L
= {AD, AE, BC, BD, BE, CD, CE, DE, AB, AC}
OP_2 {pubkeyA} {pubkeyD} OP_2 OP_CHECKMULTISIG
L
= {AE, BC, BD, BE, CD, CE, DE, AB, AC, AD}
L
= {AB, AC, AD, AE, BC, BD, BE, CD, CE, DE}
Spending
Member A spends .1 BTC from Kupa
U'a
: all
U'
elements that include A (UTXO's on which A is a cosigner)
>
U'a
: {AB1, AC1, AD1, AE1, AB2, AC2}

1. A creates a transaction transferring the value of the first two elements (chronologically) of U'a to himself
2. A tells B and C he wants to spend .1BTC
3. If they approve, B and C send A their sigs
4. A adds his sig then broadcasts the tx's
scriptSig1: <sig A, sig B>
scriptSig2: <sig A, sig C>
Approving
Member C approves A's request
1. C receives a request from A for a signature as part of a .1BTC withdrawal

2. C constructs U'a and verifies that he is a cosigner on one of its first two elements

3. If C approves, then he signs the transaction and sends it back to A
Maintaining the Network
Contributing
: scan
U
on blockchain for last few contributions in order to know the proper order of
L

Spending
: scan blockchain to create proper
U'a
Approving
: create proper
U'a
for verification
Checking Balance
: scan blockchain for all elements of
U'
Maintaining the Community of Trust
If someone breaks a rule, other members will be notified by their own blockchain-aware client

Possible infractions:
putting less than
c
on contribution tx
submitting to pair of
L
out of order
requesting approval from people out of chronological order (
U'a
)

Members will refuse to approve the withdrawals of a "bad" member
Properties
Spending power is independent of amount contributed: equality
> contributions are cosigned to each member based only on deterministic iterations through
L
Individual spending power is not unlimited: limited to
n
/|
M
|
Flexible: adjustable parameters
ex)
L
= {ABC, ABD, ACD, BCD}
L
= {AB, AC, AD, BC, BD, CD}

> failure would result in uneven ticket distribution
> Max = maximum proportion of the Kupa that any member 'A' can spend
> Max = |
U'a
| / |
U'
|
> Assuming
U
'
>>
L
,
Max =
n
/|
M
|
>In our 5 person 2-of-2 multisig example,
each member can never cumulatively
spend over 2/5 of the Kupa
Max
Any member can easily
contribute
Difficulty of
spending
is tied to size of withdrawal and
approval
by peers
Sustainable
over space and time: immutable blockchain
Decentralized
: purely peer-to-peer
Secure without
trust
but requires trust in order to be useful
Problems
Simultaneous contributions: could lead to divergent arrangements of
L

Requires full blockchain

Not all-or-nothing: partially approved requests yield some Bitcoin to spender
Full transcript