Twisted Hermitian Codes and the McEliece Cryptosystem Bethany - - PowerPoint PPT Presentation

twisted hermitian codes and the mceliece cryptosystem
SMART_READER_LITE
LIVE PREVIEW

Twisted Hermitian Codes and the McEliece Cryptosystem Bethany - - PowerPoint PPT Presentation

Twisted Hermitian Codes and the McEliece Cryptosystem Bethany Matsick Liberty University January 26, 2018 Joint work with Austin Allen, Keller Blackwell, Olivia Fiol, Rutuja Kshirsagar, and Zoe Nelson, supervised by Gretchen Matthews. Coding


slide-1
SLIDE 1

Twisted Hermitian Codes and the McEliece Cryptosystem

Bethany Matsick

Liberty University

January 26, 2018

Joint work with Austin Allen, Keller Blackwell, Olivia Fiol, Rutuja Kshirsagar, and Zoe Nelson, supervised by Gretchen Matthews.

slide-2
SLIDE 2

Coding Theory

What is coding theory?

Coding theory studies the properties of codes and their various

  • applications. Its goal is to provide reliable communication or

reliable storage of data.

What are codes used for?

◮ Data transmission ◮ Data storage ◮ Error/correction ◮ Cryptography

slide-3
SLIDE 3

The Hermitian code

Definition

Fix a prime power q, and let Fq be the finite field with q elements. A Hermitian code by the set C(αP∞) := {(f (P1), . . . , f (Pn)) : f ∈ L(αP∞)} ⊆ (Fq)n, where L(αP∞) = 1, x, y, x2, xy, y2, x3, x2y, . . . , xmyn, and m and n are the largest integers such that mq + n(q + 1) ≤ α.

slide-4
SLIDE 4

Example

A Hermitian code

Let q = 5 and α = 12. For every xiyj, we require that i and j satisfy the equation 5i + 6j ≤ 12. Thus, L(12P∞) = 1, x, y, x2, xy, y2.

slide-5
SLIDE 5

Introduction to McEliece

The McEliece cryptosystem

◮ Public key cryptosystem ◮ Security based on code indistinguishability ◮ Candidate for use in the post-quantum era

slide-6
SLIDE 6

The McEliece cryptosystem

Method of Encryption and Decryption Let

◮ S ∈ Fk×k q

be an invertible matrix.

◮ P ∈ Fn×n q

be a permutation matrix.

◮ G ∈ Fk×n q

be a generator matrix for a t-error correcting code. Set G pub = SGP ∈ Fk×n

q

.

◮ Release (G pub, t) as the public key. ◮ Keep (S, DC, P) as the private key where DC is an efficient

decoding algorithm.

slide-7
SLIDE 7

Encryption and Decryption

To send a private message m = (m1, m2, ..., mk) ∈ Fk

q, ◮ Multiply on the right by G pub and add an error vector e of

weight ≤ t to obtain w = mG pub + e = mSGP + e. When w is received by the user holding the private key,

◮ Multiply by P−1 on the right to obtain

wP−1 = mSG + eP−1.

◮ Apply DC to wP−1 to get mS. ◮ Multiply by S−1 on the right to obtain m.

slide-8
SLIDE 8

Schur square

Definition The Schur square of C ⊆ Fn is C2 = a ∗ b : a, b ∈ C. If Ck ⊆ Fn has basis {b1, b2, ..., bk}, then C2

k = bi ∗ bj : 1 ≤ i, j ≤ k.

slide-9
SLIDE 9

Schur square dimension

How large can the Schur square be for a given code C of dimension k?

◮ The largest possible dimension of is

k+1

2

  • = k(k+1)

2

.

◮ Since C2 ⊆ Fn, its dimension cannot exceed n. ◮ Consequently, dim C2 ≤ min{n,

k+1

2

  • }.
slide-10
SLIDE 10

Schur squares and McEliece

Lemma If C ⊆ Fn is a code chosen at random from the set of all k-dimensional codes with k+1

2

  • < n, then

Pr

  • dim C2

k =

k + 1 2

  • = 1.

Goal: Choose families of codes such that G pub behaves as the generator matrix of a random code. Given the above lemma, we seek codes with dim C2 = k+1

2

  • .
slide-11
SLIDE 11

Example

Schur square of a Hermitian code Let q = 5 and α = 12. Then L(12P∞) = 1, x, y, x2, xy, y 2.

◮ Counting the basis elements, observe k = 6. ◮ Thus, we have

k+1

2

  • = 21.

Computing the Schur square, we find L(12P∞)2 = 1, x, y, x2, xy, y 2, . . . , x2y 2, xy 3, y 4.

◮ Counting the basis elements, we find 15 < 21 basis

elements.

◮ While not extremely low, this dimension is clearly less

than the desired Schur square dimension.

slide-12
SLIDE 12

Example

Three twists

Let q = 5 and α = 12. Recall L(12P∞) = 1, x, y, x2, xy, y2.

◮ To implement three “twists,” let h = ((2, 0), (1, 1), (0, 2)) and

t = ((4, −1), (7, 0), (10, 1)).

◮ “Hooking” and “twisting” elements appropriately,

Lk,t,h,η(12P∞) = 1, x, y, x2 + x4y, xy + x7y2, y2 + x10y3.

slide-13
SLIDE 13

Example

Three twists (continued)

◮ From the previous slide, recall

Lk,t,h,η(12P∞) = 1, x, y, x2 +x4y, xy +x7y 2, y 2 +x10y 3.

◮ Counting the basis elements, we find k = 6. ◮ Thus, we desire a Schur square dimension of

6+1

2

  • = 6 · 7

2

= 21.

◮ We indeed find that dim Lt,h,η(12P∞)2 = 21.

slide-14
SLIDE 14

Why did the twists raise the dimension so effectively?

Main ideas

◮ Hook elements with powers equal to the sums of other powers. ◮ Space out twists so that multiplied elements land in “gaps.” ◮ Maintain linear independence of basis elements.

slide-15
SLIDE 15

ℓ-Twisted Hermitian codes

Definition

We define an ℓ-twist Hermitian code to be Ck,t,h,η(αP∞) = ev(f : f ∈ Lk,t,h,η(αP∞)), where Lk,t,h,η(αP∞) := {xiyj : 0 ≤ i, 0 ≤ j ≤ q − 1, iq + j(q + 1) ≤ α, (i, j) = (ak, bk), ∀k = 1, . . . , ℓ} ∪

  • k=1
  • xakybk + ηkxu+rkyv+sk
  • .
slide-16
SLIDE 16

General Twisted Hermitian codes

Then, if dim Ck,t,h,η(αP∞) = k, we find that dim Ck,t,h,η(αP∞)2 ≥ k + 1 2

  • − g.
slide-17
SLIDE 17

References

  • P. Beelen, M. Bossert, S. Puchinger, J. Rosenkilde. Structural

Properties of Twisted Reed-Solomon Codes with Applications to Cryptography, IEEE International Symposium on Information Theory, 2018.

  • P. Beelen, J.S.R. Nielsen. Sub-quadratic Decoding of One-Point

Hermitian Codes, IEEE Transactions on Information Theory, 2015.

  • P. Beelen, S. Puchinger, J. Rosenkilde. Twisted Reed-Solomon

Codes, IEEE International Symposium on Information Theory, 2017.

  • J. Walker. Codes and Curves, 2000.
slide-18
SLIDE 18

Acknowledgements

Work completed collectively with Austin Allen, Keller Blackwell, Olivia Fiol, Rutuja Kshirsagar, and Zoe Nelson, supervised by Gretchen Matthews. The twisted construction is a variant of that considered by Peter Beelen, Martin Bossert, Sven Puchinger, and Johan Rosenkilde. Special thanks to Liberty University for providing assistance with the cost of travel.