what engineers don't know (but probably mathematicians do)

20
what engineers don’t know (but mathematicians probably do) Budi Rahardjo School of Electical Engineering & Informatics Institut Teknologi Bandung

description

presentation by an engineer in front of mathematicians in math dept. [24 july 2009]

Transcript of what engineers don't know (but probably mathematicians do)

Page 1: what engineers don't know (but probably mathematicians do)

what engineers don’t know(but mathematicians probably do)

Budi RahardjoSchool of Electical Engineering & Informatics

Institut Teknologi Bandung

Page 2: what engineers don't know (but probably mathematicians do)

engineerscreate

products

[sorry, pictures deleted - unknown ipr]

Page 3: what engineers don't know (but probably mathematicians do)

security products

Page 4: what engineers don't know (but probably mathematicians do)

sometimes inefficient

• Longer time to boot or process stuff• Only work for toy problems• Even, … they just don’t work at all• [failed products?]

Page 5: what engineers don't know (but probably mathematicians do)

[taken from a product somewhere]

There are 3 kinds of peoplein this world:–Those who can count and–those who can’t

Page 6: what engineers don't know (but probably mathematicians do)

Need ways to improve

• Increase performance• Less power• Smaller in size• Cost efficiency• Always, not easy

Page 7: what engineers don't know (but probably mathematicians do)

Example

• Cryptographic applications, eg.public-key cryptography

c = me mod n• With large e and n (big num) integer

• Straight forward softwareimplementation is difficult

Page 8: what engineers don't know (but probably mathematicians do)

Large (512-bit) numbers

• n = 81 5a d0 b9 0a ac 9f 4c da cc 57 6e ca a76a c3 46 92 a7 81 68 ec 08 ec 77 dd 40 c2 ec97 52 cb 3b 34 2c b6 a6 e2 76 3a ed 42 84 fa55 ac 0d 6c 10 39 a2 7e a3 09 be 40 35 38 047d 06 43 1f 6f

• e = 29 40 70 02 50 db 19 6b b1 f4 8a a7 b4 596c 4b 66 b5 94 f6 15 ae e4 69 44 95 23 f3 d0fc ea 84 19 7c 55 e0 27 40 2d 19 18 15 08 0551 ac f5 98 91 f0 98 5f c4 17 05 eb 3b e8 a304 32 d4 20 2f

• d = 59 f1 2f 29 73 d0 bc 8e 13 6e 2a 21 53 2cb7 4d 69 82 c9 54 92 6c 64 43 0d 69 15 83 e944 a6 de 5e 30 e9 ae 48 f9 c8 84 a4 16 44 4ddf 50 f2 0e 96 3e 24 df a4 f4 ec 3d c6 db 61a7 e6 dc ea cf

[64 chunks]

Page 9: what engineers don't know (but probably mathematicians do)

Solutions, transformations,tricks, …

Mathematics• Fast

exponentiation• …

Programming• Loop unrolling• …

Page 10: what engineers don't know (but probably mathematicians do)

Fast Exponentiation

Page 11: what engineers don't know (but probably mathematicians do)

Loop Unrolling

for (int x = 0; x < 100; x++) { do(x);} /* before loop unroll */

for (int x = 0; x < 100; x += 5) { do(x); do(x+1); do(x+2); do(x+3); do(x+4);} /* after - less loops */

Page 12: what engineers don't know (but probably mathematicians do)

hardware

• Implementationin constraineddevices– Limitted memory &

computing power

Page 13: what engineers don't know (but probably mathematicians do)

a short detour to crypto

Page 14: what engineers don't know (but probably mathematicians do)

Encryption DecryptionPlaintextCiphertext

Shared (secret) key

Y$3*@8nhklq&ajbq

My phone555-1234

My phone555-1234

Plaintext

Alice Bob

Eve

Private-key crypto(secret key, symmetric)

Page 15: what engineers don't know (but probably mathematicians do)

Problems

• Key exchange• Number of keys explode

exponentially

Page 16: what engineers don't know (but probably mathematicians do)

n(# users)

n * (n-1) / 2 ≈ n2/2(# of keys)

10 50100 50001000 500.000

10.000 50.000.000100.000 5.000.000.000

Page 17: what engineers don't know (but probably mathematicians do)

New direction in cryptography

Page 18: what engineers don't know (but probably mathematicians do)

Public-key crypto(asymmetric)

Encryption DecryptionPlaintextCiphertext

L)8*@HgxuqnrpGtZ

My phone555-1234

My phone555-1234

Plaintext

Public key

Private key

Public key repositoryCertificate Authority (CA)

Page 19: what engineers don't know (but probably mathematicians do)

Concluding Remarks

… engineers taketh whatmathematicians giveth …

Page 20: what engineers don't know (but probably mathematicians do)

Thank You