LN Capital Profile picture
Jan 8 18 tweets 4 min read
Every Bitcoiner should understand this graph.

Without it, #Bitcoin would be impossible.

Elliptic Curves thread:
Elliptic curve cryptography is a type of cryptography that uses elliptic curves to create mathematically linked public & private keys.
Bitcoin uses a curve called secp256k1, which is defined by the equation y^2=x^3+7.

The points along this curve are used to derive the values of public & private keys.
Public-key cryptography is useful because it satisfies two conditions:
1. It is computationally impossible to derive a private key from its public key.

2. It is possible to prove ownership of a given private/public key pair without revealing any useful information about the private key in the process.
How is this accomplished?

Bitcoin takes advantage of the Discrete Log Problem to create irreversible, one-way mathematical functions.
To summarize the Discrete Log Problem without getting into the math:

Making a smoothie is easy, but compiling the ingredients back into their original form is very hard.
In the same way, we can only ever get the public key from a private key but not the other way around.

If the public key is the smoothie, the private key is the ingredients.

This “trap door” mechanism ensures that your private key is secure.
To get an idea of the leverage involved here, there are 2^256 combinations of public and private keys.

That number is larger than the number of atoms in the observable universe.

To guess a private key is highly statistically unlikely.
So how does Bitcoin use the secp256k1 curve to generate public & private keys?

To create a public & private key pair using secp256k1 we can start with a random point on the curve, “k”.

“k” is our private key.
Bitcoin’s algorithm specifies a generator point “G” which is the same for all keypairs.

The generator point is just a single point on the secp256k1 curve.
If we multiply the point “k” (our random number) by the generator point “G”, we end up with a new point “P” - our public key.
Thanks to the Discrete Log Problem, the math involved only allows us to calculate from private keys (“k”) to public keys (“P”), and not the other way around.

In other words, dividing the public key “P” by the generator point “G” cannot yield the private key “k”.
We’ve now created a public key “P” which is linked to the private key “k”, but cannot be used to derive the private key “k”.
With Elliptic Curves, Bitcoin can provide the same security profile as other encryption methods like RSA, but with a much smaller footprint.

This is essential because BTC is a p2p network that requires small packets.
TLDR;

Bitcoin uses Elliptic Curves to calculate public & private keys.

It's computationally impossible to derive a private key from its public key.

It's possible to prove ownership of a given private/public key pair without leaking any useful information about the private key.
This was undoubtedly a simplified explanation of Elliptic Curves, but we hoped you learned something new.

Bear markets are for learning!

Be sure to follow us @LN_Capital for more.
If you haven't already, check out Torq, a financial management tool for your Lightning node. You can find it on @umbrel and @BtcpayServer, or you can download it directly from us. Stay tuned for updates!

github.com/lncapital/torq

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with LN Capital

LN Capital Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @LN_Capital

Dec 20, 2022
The magic of the Lightning Network is built on HTLCs

But most Bitcoiners don't know how they work.

Quick thread:
HTLC stands for “Hash Time-Lock Contract”

In short, HTLCs are programmable smart contracts that create atomic trustless transactions between peers on the Lightning Network.
HTLCs are conditional payments that say “I will pay you [x+1] satoshis if you prove you’ve forwarded [x] satoshis”.

(the +1 would be the routing fee in this scenario)
Read 13 tweets
Dec 18, 2022
Pickhardt Payments will supercharge the Lightning Network.

Here's how:
Payments over LN can happen in two ways:

1. Direct (node to node)
2. Indirect (node THROUGH node)

When sending an indirect payment, i.e, you don’t have a channel open with the recipient, your payment is ‘routed’ through an intermediate node or nodes.
But with 75,000 channels & 15,000 nodes, how do we choose the best route to send the payment?

@lightning’s LND implementation currently uses Dijkstra's algorithm for pathfinding (not the exact algo, but similar).
Read 19 tweets
Dec 11, 2022
“Lightning Node Operator” is the most important job title of this decade.

But when it comes to running a node, 99% of bitcoiners have no idea where to start.

Here are 10 routing tips for beginners:
1. Start small, build slowly.

Low👏Time👏Preference👏

Running a node is about building relationships & reputation.

Take your time finding good peers that won’t close a channel on you.
2. Inbound liquidity is essential.

@lncyberhub wrote a great guide on how to get it:

cyberhubnode.notion.site/cyberhubnode/H…
Read 12 tweets
Dec 8, 2022
Awesome space today w/ @dannydiekroeger @LNcyberhub @1sats_ln @c_otto83 @renepickhardt

Here's a quick summary in case you missed it:

(thread)
@LNcyberhub ran into performance issues with his raspi (page refresh and reports were super slow), switched to a ryzen 7🔥
@dannydiekroeger suggested that nodes could offer individual bonds as opposed to a singular Lightning Reference Rate.

More info on LNRR here:
Read 10 tweets
Dec 8, 2022
The Lightning Network will revolutionize capital markets.

But first it needs to develop its own.

Let’s take a quick look at the idea of a Lightning Network Reference Rate (LNRR):
The Lightning Network Reference Rate is a term coined by Nik Bhatia (@timevalueofbtc) in an article of the same name.

It outlines a protocol for determining the risk-free rate for off-chain bitcoin lending.

I’ll link his article at the end of this thread for those interested.
In short, the LNRR is an average of multiple Node Accrual Rates (NARs)

A node accrual rate is simply the annual rate of interest that a particular node generates from routing sats over Lightning.

NARs can be calculated with the following formula from @timevalueofbtc’s article:
Read 10 tweets
Dec 6, 2022
Onion Routing is a revolutionary cypherpunk technology.

But most Bitcoiners have no idea how it works or why it’s important.

Quick thread: Image
Onion routing is a method for anonymous communication over a computer network.

It’s called "onion routing" because it uses a layered approach to encrypting and transmitting data, similar to the layers of an onion.
The main idea behind onion routing is to protect the privacy of users by making it difficult for anyone to trace the origin or destination of a message.
Read 8 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(