Amiko Pay is a flexible implementation of the
Lightning network.
In other words, it is a scalable, de-centralized network for performing fast,
secure, cheap and privacy-friendly electronic transactions.
Scalable
Amiko Pay is scalable to billions of users, without losing its desirable
properties. Potentially, all people could use Amiko Pay for all their
daily transactions.
Centralized systems are relatively straightforward to scale up, and their
per-user costs usually don't increase much with increasing scale. However,
when scaling up, their central hub becomes an increasingly attractive target for
all sorts of attackers, increasing the vulnerability of such systems.
De-centralized systems have their own scaling issues. Ryan Fugger's original
concept of Ripple would scale well in terms of costs and technical performance,
but in a de-centralized, many-nodes scenario, there would be little regulation
on the debts of nodes, leading to risks of financial instability. The original
concept of Ripple was never implemented, and the implemented system nowadays
known as Ripple has its own flaws (mainly by not very de-centralized at all).
Bitcoin is de-centralized, but its de-centralized nature depends on all (or many)
participants exchanging the "block chain", containing all transactions,
with each other. When scaling such a system to larger numbers of transactions, it
becomes less attractive for participants to participate in this process, leaving
the transaction processing to a small, relatively centralized group of
organizations.
Amiko Pay solves this problem by using Bitcoin under the hood, but leaving most
transactions out of the block chain. Transaction information is normally only
exchanged between a few participants, and participants can forget about the
transaction as soon as it is completed. The block chain is only used for changes
to the network (opening and closing micro-transaction channels), and for
enforcement of transaction states and channel balances in case a participant
is not playing by the rules. Both should be very rare compared to the frequency
of regular transactions, so the block chain can remain much smaller, and much
easier to share.
De-centralized
Amiko Pay contains no dependencies on centralized parties, a.k.a. "single points
of control" / "single points of failure". All participants in the network can
potentially perform the same roles. The design of Amiko Pay contains features
that ensure it stays that way.
Amiko Pay participants create connections between each other, and transactions
are routed over these connections, similar to how information is routed over
the internet. The shape of the network is arbitrary, but just like the internet,
the network could become partially centralized around a couple of large service
providers. Unlike the internet, where creation of new physical connections is
expensive and difficult, connections in Amiko Pay are completely virtual, and
it will continue to be easy to create new connections. Also, routing in Amiko
Pay is designed such that intermediate parties can not determine the identity
of end points (payer and payee): it will always be possible to route transactions
through a proxy. This severely limits the power of any centralized entities,
and makes it possible to re-decentralize in case any centralized entity abuses
its position.
Fast
Amiko Pay transactions typically become definitive within seconds, often
even less than a second. This makes Amiko Pay suitable for Point Of Sale
(POS) applications.
Unlike regular Bitcoin transactions, Amiko Pay transactions are normally
not included in a block chain. Instead, they consist of updates
in the balances of micro-transaction channels, which are enforceable on
the block chain. Enforceability of a channel update is immediately clear,
so it does not have the issue of "zero confirmation double spending" of
regular Bitcoin transactions.
Secure
Other participants in the Amiko Pay network can not steal or freeze your funds.
You do not have to ask anyone for permission or depend on cooperation from
anyone for keeping access to your funds. You are in full control.
By default, Amiko Pay is based on the same technology as the Lightning network.
This technology ensures that transactions and balances are always enforceable.
The idea is that, under normal operation, microtransaction channel balances are
updated cooperatively by the participants of a transaction. In case one of the
participants does not play by the rules, or becomes unresponsive, the
micro-transaction channels to that party will be closed by his neighbors in the
network, and the state of those channels will be enforced on the block chain
with Bitcoin smart contracts.
As an analogy, you can see a microtransaction channel as a "contract" between
two parties, and the block chain as a de-centralized "judge" (or jury). Most
contracts are followed voluntarily, and do not end up in court. However,
contracts still have power, since they are enforceable in court, even when they
do not always need to be enforced.
Note that, in some cases, non-cooperation of another party can cause a
temporary freeze of funds in a channel. This risk can be reduced by
splitting funds over separate channels to different parties; the maximum freeze
time is configurable, and is a security trade-off.
Cheap
Amiko Pay transactions are expected to be much cheaper than regular Bitcoin
transactions, making them potentially one of the cheapest payment methods
available. Amiko Pay is useful for true microtransactions, e.g. for
pay-per-article funding of websites, as an alternative to advertising.
Intermediate nodes in the network are expected to charge some fees when
forwarding transactions, but since the cost of performing Amiko Pay transactions
is much lower than the total cost of keeping the same transactions in a block
chain, and since there will be plenty of competition between different parties,
the fees are expected to be much lower. Regular Bitcoin mining fees will still
be paid, but this will only happen infrequently (opening/closing of channels,
including conflict resolution).
Note that Amiko Pay is mostly useful for small transactions, where it is
essential to have low fees. For large transactions, Amiko Pay is less suitable,
since its microtransaction channels have a limited capacity (depending on
how many funds people put into them). For large transactions, regular
on-blockchain transactions remain more useful.
Privacy-friendly
The existence of a transaction is only revealed to a couple of intermediate
parties, and these intermediate parties receive very little meta-data (basically
only the amount transferred and the moment the transaction is performed). There
is no need for intermediate parties to remember a transaction after it has
finished. The shape of the network (who is connected to who) is not completely
revealed.
The privacy features are strongly related to how transaction routing is
performed. Amiko Pay uses a combination of non-source routing (where
intermediate nodes decide the direction of the route, based on a "destination
address") and "onion routing" (where the end points decide what route must be
followed, and where each next step in the route is encrypted, so that
previous nodes in the route can not read it). Amiko Pay uses bi-directional
routing, where both endpoints (payer and payee) route towards a meeting point.
The meeting point might be, but is not necessarily, the same node as one of the
end points (in case it is one of the end points, routing will of course be
unidirectional).
As a result of this, there is no need for payer/payee to reveal their network
addresses to each other or to other nodes, or to even have network
addresses. Payer and payee need to agree on the address of the "meeting point"
to be used; the "meeting point" node does not need to know the identity of
payer/payee. All that intermediate nodes see is the address of the next
onion-routing hop (the last of which is the meeting point), and the interface
on which the transaction was received. Because of the non-source routing
in-between onion-routing hops, nodes do not need a very detailed map of the
network to decide on an onion route. They only need to have a reasonable idea
of which nodes are reachable from which nodes through non-source routing.
There are some remaining privacy issues. Since the transaction time-out is
different on different hops of the route, it can be used to estimate the network
distance to the payee. This might be made less feasible by randomizing the
time-out increment. Another issue is that the software uses a certain hash value
for testing whether a transaction has committed or not; since this hash value is
the same on all hops, it can be used by an entity that has access to different
nodes on the network to see that the same transaction flows through both. While
this issue can be solved with certain technology, the combination of exact amount
and the moment the transaction occurred can still be used to correlate a
transaction on different parts of its route.
Flexible
Amiko Pay is designed to be a flexible framework for building a wide range of
similar types of payment technologies, which are all interoperable. People
choose for themselves which technologies to use, and the network bridges between
them. Amiko Pay is open source software, and provides an open platform for performing
"permission-less" innovation in payment technology and services.
The default mode of operation of payment channels in Amiko Pay is like the
Lightning network, but it will also be possible to have a more Ripple-like mode
of operation, where less capital is required for building links, but where at
least one of the sides has to trust the other.
It is possible to use Amiko Pay to perform immediate transactions between
different block chains. When different assets are traded, nodes that provide
the interface between those assets perform an exchange function.
Together, such nodes form a de-centralized exchange between those assets.
Normally, Amiko Pay will be used to transact in cryptographic currencies, such as
Bitcoin. However, it is also possible to transact in (cryptographic representations
of) non-cryptographic assets, such as tradtional "fiat" currencies. For such
transactions, an element of trust is usually required, but the trusted entity
is not necessarily involved in the transactions.
For instance, cryptographic representations of euros or dollars might be backed
by a (central) bank, and then traded between individuals, similar to how bank
notes are backed by a central bank and traded between individuals.
Note that, to take full advantage of the security features of Amiko Pay, it
has to be used in a Lightning network mode, using a reliable cryptographic currency.
How does it work?
Amiko Pay forms a network between users and payment providers, just like the
Internet forms a network between users and Internet providers. And,
just like the Internet, all providers deliver the same connectivity
(to websites vs. to merchants/customers), so large providers do not
have connectivity advantages over small providers.
Links between Amiko Pay nodes are protected by
micro-payment channels; as a result, only a very low amount of trust
is required to securely establish a link with a payment provider.
This should remove the need for regulation, and it should allow people
to have a large choice of suitable payment providers; even a small,
unknown payment provider on a different continent can be a suitable
option. This should allow plenty of competition, leading to lots of
freedom and low prices.
More information can be found on the resources
page.
Where can I get it?
Amiko Pay is unfinished software, and since development is currently
not funded, the availability of development time is never guaranteed.
At the current pace of development, it might take a couple of years
before Amiko Pay becomes useful.