Image for post
Image for post
Rinkeby sealers agreed on the network state. Photo by rawpixel on Unsplash

Most popular cryptocurrencies use Proof-of-work algorithms to achieve consensus. While some of them might eventually switch to Proof-of-stake, PoW is a standard for now. But there are other options. One of them is Proof-of-authority. Here, we will have a look at the general idea of the protocol, as well as one of the implementation called Clique, with its properties and current applications. We will also cover two testnets that currently implement Clique: Rinkeby and Görli.

Proof-of-authority has one distinctive feature: only approved signers can seal the blocks. That’s it, a valid block doesn’t require hash mining, or staking coins; the only requirement is to be included in the list of approved signers. This list can be static or dynamic. In the first case, a list of sealers is defined in the genesis block and can’t be changed. …

Image for post
Image for post

In the first article of this series, we generated a bitcoin private key: 60cf347dbc59d31c1358c8e5cf5e45b822ab85b79cb32a9f3d98184779a9efc2.

Here, we’ll use that key to get the public address and then the Ethereum wallet address of that private key.

Creating the Bitcoin wallet address from the private key is a bit complicated. Here, the process will be much simpler. We need to apply one hash function to get the public key and another one to get the address.

So let’s get started.

Public key

This part is almost identical to what we discussed in the Bitcoin article, so if you read that one, you can skip it (unless you need a refresher). …

Image for post
Image for post

In the previous article, we looked at different methods to generate a private key. Whatever method you choose, you’ll end up with 32 bytes of data. Here’s the one that we got at the end of that article:


We’ll use this private key throughout the article to derive both a public key and the address for the Bitcoin wallet.

What we want to do is to apply a series of conversions to the private key to get a public key and then a wallet address. Most of these conversions are called hash functions. These hash functions are one-way conversions that can’t be reversed. We won’t go to the mechanics of the functions themselves — there are plenty of great articles that cover that. …

Image for post
Image for post

In cryptocurrencies, a private key allows a user to gain access to their wallet. The person who holds the private key fully controls the coins in that wallet. For this reason, you should keep it secret. And if you really want to generate the key yourself, it makes sense to generate it in a secure way.

Here, I will provide an introduction to private keys and show you how you can generate your own key using various cryptographic functions. I will provide a description of the algorithm and the code in Python.

Do I need to generate a private key?

Most of the time you don’t. For example, if you use a web wallet like Coinbase or, they create and manage the private key for you. …

Image for post
Image for post

What is blockchain anyway? In this article, I will try to provide an in-depth yet simple to understand explanation. I will tell you about what is a blockchain, what features it has, which groups of users exist in blockchain network, and how they interact with each other.

Note: this article mostly covers public blockchains, and of that public blockchains, it’s mostly about their use for cryptocurrencies. There are other uses of public blockchains, and there are also private blockchains. Private (or permissioned) blockchains have a similar structure, but different functions and mechanics.


The blockchain is just a bunch of blocks. Each block contains pieces of information. In cryptocurrencies, the information is usually a set of transactions. Each block is connected to the previous one. …

If you got here, I suppose that you’re interested in cryptocurrencies. I also hope that you value in-depth research, and dislike news and price discussions. Because that’s the people that would like Longcaller.

The idea behind Longcaller is to provide educational and insightful pieces on cryptocurrencies and blockchain. It’s started as a standalone website and now it’s expanding to Medium.

For almost half of the year, I am actively researching different cryptocurrencies and the tech behind it. In 5 months, I’ve managed to write 24 reviews. Each review is a summary of all the technical information about one cryptocurrency. …

Image for post
Image for post

On March 6th, Tuesday I launched Longcaller on Product Hunt and got 3 upvotes, one of them is mine. Oh, well.

There are not so many stories about failed PH launches. After having a failed launch, I think I know why.

The first reason is obvious. There are stories of fails, but no one reads them. Because people don’t like to read about losers. Because fails are not motivating. And while this is partially true, I think that tells only part of the story. …

Image for post
Image for post

I am a man of code. I build things and they work. But they look like shit because I suck at design. I always did.

But you’re not born a designer, right? You become one. That means I can become a designer too!

But how? I am not ready to spend 4 years studying at design school. Nor I want to read books or enroll in the online course. Can I become not terrible at design in a short time?

Last month I built StartMap. It has tips for those who want to build a startup. It has the best practices on development, marketing, monetization. …

Image for post
Image for post

I like reading books. Good books always deliver insights and ingenious stories.

I read many books about startups. Almost all these books are the same. Iterate quickly, know where to find your customer, deliver best customer service. Yeah, we know that.

But one of them is different. It does not try to teach the reader, though the author would be a great teacher. It feels fresh, however, the book has been written almost a century ago.

It is “My Life and Work” by Henry Ford. In his book, Henry Ford talks about how and why he started his company.

For me, it is a compilation of great ideas and insights, tied together by Ford’s narrative. It is full of genuine entrepreneurial spirit. Henry’s motivation to start a business was to make the world more effective. …

Image for post
Image for post

How to make <mail>@<your-domain> for $0

I don’t usually use email address for my domains. I don’t send emails to press and I can receive customer feedback to my personal mailbox. But for one project of mine I needed a mail address with my domain simply to prove that it’s me, the creator of this project, who mails.

And it’s not like I am a cheapskate, but having to pay $5/month just to send a couple of emails in a week does not resonate with me. If my business will thrive and grow, I am okay to pay money. …


Timur Badretdinov

Interested in distributed systems, game design, and cryptoeconomic primitives. Write about cryptocurrencies.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store