Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant...

41
Time-Memory Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Transcript of Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant...

Page 1: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Time-Memory Trade-Offs for Side-Channel

Resistant Implementations of Block Ciphers

Praveen Vadnala

Page 2: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Differential Power Analysis

2

• Implementations of cryptographic systems leak

• Leaks from bit “1” and bit “0” are different

• Correct key is identifiable

Page 3: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

• Each intermediate variable is divided into two shares

• Computing on linear functions is easy

• Non-linear functions (e.g. S-boxes)?

Masking countermeasure

3

𝒙 𝒓𝒓

𝒙

𝑓 (𝑥𝑟) = 𝑓 𝑥 𝑓(𝑟)

Page 4: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

S-box LUT

4

S(0)

S(x)

S(FF)

• S-boxes are often

implemented using LUT

• Challenge: How to apply

masking on LUT?

Page 5: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

S-box LUT

5

S(0)

S(x)

S(FF)

• Input 𝒙 is only available as

𝒙𝟏 = 𝒙𝒓

• Output 𝐒(𝒙) can only be

revealed as 𝐒(𝒙) ⊕ 𝒔

Page 6: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Randomized LUT

6

S(0)

S(x)

S(FF)

S(0)s

S(x)s𝑻 𝒖′

= 𝑻 𝒖 𝒓= 𝑺(𝒖)𝒔

𝑻𝒂𝒃𝒍𝒆𝑻

Page 7: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Rivain-Prouff solution

7

𝑅1

𝑎 = 𝑟?Yes

= 𝑆(𝑥)𝑠

Page 8: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Rivain-Prouff solution

8

𝑅0 𝑅1

𝑎 = 𝑟?YesNo

= 𝑆(𝑥)𝑠= 𝑑𝑢𝑚𝑚𝑦

Page 9: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

• We have two solutions at two ends of spectrum

• Penalty factor vs Memory

Unexplored space

• How about a generic solution?

What are we trying to solve?

9

Page 10: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Compression of LUT

10

S(0)

S(x)

S(FF)

𝑆0 𝑥 𝑆1 𝑥

4 bits 4 bits

𝑇 𝑥

4 bits

Page 11: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Compression of LUT

11

S(0)

S(x)

S(FF)

𝑺𝟎 𝒓𝟏𝑺𝟏 𝒓𝟐 𝒔

𝑺𝟎 𝒙𝒓𝟏𝑺𝟏 𝒙𝒓𝟐 𝒔

𝑻 𝒖′

= 𝑺𝟎 𝒖𝒓𝟏𝑺𝟏 𝒖𝒓𝟐 𝒔

𝑻𝒂𝒃𝒍𝒆𝑻

256 * 4bits = 128 bytes

Page 12: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Compression scheme variant…

12

S(0)

S(1)

S(2)

S(FF)𝑇 𝑥

𝑆0 𝑥 = 𝑆(𝑥| 0 ,𝑆1 𝑥 = 𝑆(𝑥| 1

Page 13: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Randomized Compression

scheme variant…

13

𝑇1 𝑢= 𝑆0 𝑢𝑟1 𝑆1 𝑢𝑟2 𝑠

𝑻𝒂𝒃𝒍𝒆 𝑻𝟏

S(0)

S(1)

S(2)

S(FF)

𝑺𝟎 𝒓𝟏𝑺𝟏 𝒓𝟐 𝒔

128* 8bits = 128 bytes

Page 14: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Getting masked S-box output

14

𝒙 = 𝒙 𝟏 𝒙 𝟐

7 bits 1 bit

𝑺𝟎 𝒙 𝟏 𝒔

𝑺𝟏 𝒙 𝟏 𝒔

𝑻𝒂𝒃𝒍𝒆 𝑻𝟏

𝑺(𝒙)𝒔

𝑺(𝒙𝟏)𝒔

𝑻𝒂𝒃𝒍𝒆 𝑻𝟐

𝑺(𝒙)𝒔

Page 15: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Generic compression

15

𝒙 = 𝒙 𝟏 𝒙 𝟐

n-l bits l bits

𝑺𝒊 𝒙𝟏 𝒔

𝑻𝒂𝒃𝒍𝒆 𝑻𝟏

𝑻𝒂𝒃𝒍𝒆 𝑻𝟐

𝑺(𝒙)𝒔𝑺(𝒙𝒊)𝒔

Page 16: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Generic Compression

16

Page 17: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

• Apply Rivain-Prouff method for Table 𝑻𝟐; 𝑻𝟏 stays the same

• The memory required will be further reduced as we don't need

RAM for 𝑻𝟐

Time-Memory Trade-Offs

17

l 𝑻𝟏 𝑻𝟐

1 128 2

2 64 4

3 32 8

4 16 16

5 8 32

6 4 64

7 2 128

Page 18: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Implementation Results

18

Page 19: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

• Second-order compression & Time-memory trade-off

• Security arguments (software)

More in the paper….

19

Page 20: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

• Generic compression schemes for first- and second-order

• Time-memory trade-offs

• Reasonably efficient implementations with just under 40 bytes of

RAM

• Future work

• Apply to higher-order?

• Apply to AES T-table based implementations?

Conclusions

20

Page 21: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala
Page 22: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

Riscure North America

550 Kearny St.

Suite 330

San Francisco, CA 94108

+1 (650) 646 9979

[email protected]

Riscure B.V.

Frontier Building, Delftechpark 49

2628 XJ Delft

The Netherlands

Phone: +31 15 251 40 90

www.riscure.com

Contact: Praveen Vadnala

[email protected]

Page 23: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

FEBRUARY 15, 2017RSA CONFERENCE CRYPTOGRAPHERS‘ TRACK, SAN FRANCISCO, USA

PASCAL SASDRICH, AMIR MORADI, TIM GÜNEYSU

HIDING HIGHER-ORDER SIDE-CHANNEL LEAKAGE− RANDOMIZING CRYPTOGRAPHIC IMPLEMENTATIONS IN RECONFIGURABLE HARDWARE −

Page 24: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

INTRODUCTION

Page 25: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

𝑜𝑢𝑡𝑝𝑢𝑡 ← 𝐸𝐾(𝑖𝑛𝑝𝑢𝑡)

INTRODUCTION | SIDE-CHANNEL ANALYSIS (SCA)

ATTACKER MODEL

COUNTERMEASURES

25

input

outpu

t

leakag

e

timing, power,

EM emanations, …

masking hiding re-keying

Page 26: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

BASICS:

Side-Channel Analysis (SCA): attacks exploit information leakage of cryptographic devices

Side-Channel Protection: countermeasures based on masking, hiding or re-keying (using random behavior)

PROBLEM:

Common countermeasures only protect against first-order attacks, but still are vulnerable to higher-order attacks (using higher-order statistical moments).

DIFFERENT APPROACHES TO ENCOUNTER THIS PROBLEM:

Dedicated Higher-Order Countermeasures (e.g., HO-TI [1])

• might be restricted to univariate settings

• area overhead and randomness requirement might be problematic

• finding representations might be challenging

Stay with 1st-order secure countermeasure and make higher-order attacks harder

• reduce the signal (e.g., power equalization schemes, logic styles) [2]

• increase the noise (e.g., shuffling) [3]

OUR CONTRIBUTION: General methodology (dynamic hardware modifications) to increase noise.

INTRODUCTION | MOTIVATION

26

[1] B. Bilgin, B. Gierlichs, S. Nikova, V. Nikov, and V. Rijmen, “Higher-Order Threshold Implementations”. ASIACRYPT 2014

[2] A. Moradi, A. Wild, “Assessment of Hiding the Higher-Order Leakages in Hardware – What are the Achievements versus Overheads?”. CHES 2015

[3] P. Sasdrich, A. Moradi, T. Güneysu, “Affine Equivalence and its Application to Tightening Threshold Implementations”. SAC 2015

Page 27: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

CONCEPT

27

Page 28: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

CONCEPT | DYNAMIC HARDWARE MODIFICATION

build a side-channel protected implementation using classical countermeasures

(masking)

find directed graph representing the side-channel protected implementation

morph graph into different but equivalent representation using random encodings

update (randomize) protected implementation according to new representation

APPROACH:ALGORITHM:

28

OBSERVATIONS:

1. Cryptographic implementations can be represented as sequence of atomic functions applied sequentially.

2. Cryptographic implementations can be modeled by different but equivalent directed graphs.

Page 29: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

CASE STUDY

29

Page 30: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

THRESHOLD IMPLEMENTATION:

efficient countermeasure in hardware against (first-order) Side-Channel Analysis

introduced in 2006 by Nikova et al. [1]

provides provable security even in a glitching circuit

CONCEPT AND PROPERTIES:

uniform masking

non-completeness

correctness

uniform sharing of function outputs

(each set of output pairs occurs with

same probability)

NOTE: The number of input and output shares

depends on the function S.

CASE STUDY | THRESHOLD IMPLEMENTATION

30

[4] S. Nikova, C. Rechberger, V. Rijmen, “Threshold Implementations Against Side-Channel Attacks and Glitches”, ICICS, 2006

Page 31: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

THRESHOLD IMPLEMENTATION OF PRESENT CIPHER:

S-box decomposition into two quadratic functions g and f [5]

minimal number of shares (m = n = 3)

register stages to separate functions

linear permutation applied individually

RANDOM ENCODING:

TI as network of look-up tables

each table updates 4 bit of internal state

use White-Box Cryptography [6] concepts:

apply random non-linear 4-bit encoding to every table output

apply inverse encoding to every adjacent table input (preserves correctness)

DYNAMIC UPDATE:

find new random non-linear encodings using element swapping algorithm

update look-up tables using BRAM scrambling

CASE STUDY | CONCEPT

31

[5] A. Poschmann, A. Moradi, K. Khoo, C. Lim, H. Wang, S. Ling, “Side-Channel Resistant Crypto for Less than 2300 GE”. Journal of Cryptology, 2011

[6] S. Chow, P. A. Eisen, H. Johnson, P. C. van Oorschot, “White-Box Cryptography and an AES Implementation”. SAC, 2002

Page 32: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

CASE STUDY | IMPLEMENTATION (QUARTER ROUND)

round-based architecture using look-up tables for TI S-box and permutation layer

4 quarter rounds in parallel, each using 48 BRAMs

permutation layer implemented as table-lookup

each BRAM can hold up to 32 different tables

store look-up tables for every round (31 rounds)

update tables using BRAM scrambling and remaining (empty) table entry

track context of active table positions

PRACTICAL FPGA IMPLEMENTATION:

32

Page 33: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

CASE STUDY | IMPLEMENTATION RESULTS

post-place-and-route implementation on a Kintex-7 of SAKURA-X board

basic architecture mainly implemented in Block RAM

general purpose logic only required in order to perform dynamic hardware modification

PRACTICAL IMPLEMENTATION:

33

Page 34: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

SIDE-CHANNEL EVALUATION

34

Page 35: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

SIDE-CHANNEL EVALUATION | SETUP

SAKURA-X Side-Channel Evaluation Board

designs running @ 24 MHz

power measurements using a digital oscilloscope @ 500 MS/s

high-performance measurement and evaluation setup

two different measurement profiles

leakage assessment methodology:

non-specific t-test (for 1st, 2nd, 3rd order)

PROFILE 1:

reference measurement

PRNG off (countermeasure disabled)

1 000 000 power traces

random vs. fix plaintexts

PROFILE 2:

actual measurement

PRNG on (countermeasure enabled)

100 000 000 power traces

random vs. fix plaintexts

MEASUREMENT SETUP EVALUATION SETUP

35

Page 36: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

SIDE-CHANNEL EVALUATION | NON-SPECIFIC T-TEST

measure (many) power traces with digital oscilloscope

group traces depending on fix or randomly chosen plaintext (non-specific t-test)

compute sample mean for each point in time

compute sample variance for each point in time

determine t-statistic for each point in time, according to:

𝑡 =𝜇 𝑇 𝜖 𝐺1 − 𝜇(𝑇 𝜖 𝐺0)

𝛿2(𝑇 𝜖 𝐺1)𝐺1

+𝛿2(𝑇 𝜖 𝐺0)

𝐺0

where 𝜇 denotes the sample mean and 𝛿 denotes the sample variance.

EVALUATION BASED ON WELCH‘S t-TEST VISUALIZATION

36

More info: “Leakage Assessment Methodology - a clear roadmap for side-channel evaluations”, CHES 2015, ePrint: 2015/207

G0 G1

4.5

- 4.5

Fail/Pass Criteria: If there is any point in time for which the t-

statistic exceeds a threshold of ±4.5 the device under test fails.

Page 37: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

SIDE-CHANNEL EVALUATION | PROFILE 1 (PRNG OFF)

37

first-order t-test

second-order t-test

NON-SPECIFIC T-TEST (1 MILLION TRACES)

third-order evolution

first-order evolution

second-order evolution

EVOLUTION OF ABSOLUTE T-TEST MAXIMUM

third-order t-test

Page 38: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

SIDE-CHANNEL EVALUATION | PROFILE 2 (PRNG ON)

38

third-order t-test

first-order t-test

second-order t-test

NON-SPECIFIC T-TEST (100 MILLION TRACES)

third-order evolution

first-order evolution

second-order evolution

EVOLUTION OF ABSOLUTE T-TEST MAXIMUM

Page 39: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

CONCLUSION

39

Page 40: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

RSA CONFERENCE CRYPTOGRAPHERS’ TRACK, SAN FRANCISCO, USA

RUHR-UNIVERSITÄT BOCHUM | CHAIR FOR EMBEDDED SECURITY PASCAL SASDRICH

CONCEPT:

success of higher-order attacks depends on noise-level

combining hiding countermeasures (noise addition) with classical approaches (e.g. first-order secure TI)

dynamic hardware modifications (inspired by white-box cryptography) as generic hiding approach

RESULTS:

proposing a generic approach and methodology called dynamic hardware modifications

case study: FPGA implementation combining dynamic hardware modifications with PRESENT TI

providing power measurements and leakage assessment (using non-specific t-test)

case study implementation is (practically) secure against higher-order attacks (2nd and 3rd order)

Dynamic hardware modifications are an alternative

approach achieve higher-order protection

providing generality and scalability.

CONCLUSION

40

Page 41: Time-Memory Trade-Offs for Side-Channel Resistant ... Trade-Offs for Side-Channel Resistant Implementations of Block Ciphers Praveen Vadnala

FEBRUARY 15, 2017RSA CONFERENCE CRYPTOGRAPHERS‘ TRACK, SAN FRANCISCO, USA

[email protected]

Thank you for your attention!

Any questions?

HIDING HIGHER-ORDER SIDE-CHANNEL LEAKAGE− RANDOMIZING CRYPTOGRAPHIC IMPLEMENTATIONS IN RECONFIGURABLE HARDWARE −