on Apr 29, 2019 · 6 min read
Today, we'll talk about MAC, DLIES and ECIES.

## DLIES

The first topic is DLIES, or Discrete Logarithm Integrated Encryption Scheme.

Pretend Alice wants to send a message to Bob. Alice doesn't want others to read the message, so she's going to encrypt it. Let's help Alice!

Read more →
on Apr 29, 2019 · 7 min read
Hello! Today I'm going to tell you about ECDH, or Elliptic Curve Diffie-Hellman protocol.

First of all, let's remember what EC means and what DH means.

EC is an Elliptic Curve. You can read about Elliptic Curve arithmetic on this blog. If you don't want to read it, here's an overview: We have some objects (points) which we can add. The usual rules apply, i.e. `$A + B = B + A, (A + B) + C = A + (B + C)$`

.

DH is Diffie-Hellman protocol, i.e. a key derivation protocol. You can read about it on this blog as well. An overview: If Alice and Bob have private keys `$a$`

and `$b$`

they don't share, they can make up some integers `$G$`

and `$M$`

(`$G$`

is any integer, `$M$`

is a big prime integer). Then, they generate public keys: `$A = G^a \mod M, B = G^b \mod M$`

which they give to each other. Then, they generate shared key that they use for symmetric encryption: `$S = B^a \mod M = A^b \mod M$`

.

Now, we're going to merge these two unmergable things. How? Read here.

Read more →
on Apr 28, 2019 · 4 min read
1
Hello again!

Today, let's talk about key derivation.

### The problem

Pretend Alice and Bob are talking to each other, and they want to encrypt their messages. Of course, encryption requires a key, so they have to find a key somewhere. They could just meet in Alice's house, but... Alice and Bob are *a little bit* far from each other, so they can't meet directly. They also can't use mail to send the key because it could be compromised, and so on.

Oopsie.

Read more →
on Apr 28, 2019 · 5 min read
3
Today, let's talk about Elliptic Curve arithmetic.

## Elliptic curves

First of all, what is an elliptic curve? If we're working in `$\R$`

field, we can say that an elliptic curve is defined by two real numbers `$a$`

and `$b$`

that follows the equation:

$x^2 = y^3 + ax + b$

This form is called the Weierstrass equation.

Read more →
## Latest comments: