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

              Budi Rahardjo
 School of Electical Engineering...
engineers
     create
    products

[sorry, pictures deleted - unknown ipr]
security products
sometimes inefficient
• Longer time to boot or process stuff
• Only work for toy problems
• Even, … they just don’t work a...
[taken from a product somewhere]

There are 3 kinds of people
in this world:
– Those who can count and
– those who can’t
Need ways to improve
• Increase performance
• Less power
• Smaller in size
• Cost efficiency
• Always, not easy
Example
• Cryptographic applications, eg.
  public-key cryptography
         c=   me   mod n
• With large e and n (big num...
Large (512-bit) numbers
• n = 81 5a d0 b9 0a ac 9f 4c da cc 57 6e ca a7
  6a c3 46 92 a7 81 68 ec 08 ec 77 dd 40 c2 ec
  9...
Solutions, transformations,
          tricks, …
Mathematics        Programming
• Fast             • Loop unrolling
  expon...
Fast Exponentiation
Loop Unrolling
for (int x = 0; x < 100; x++) {
  do(x);} /* before loop unroll */

for (int x = 0; x < 100; x += 5) {
   d...
hardware
• Implementation
  in constrained
  devices
  – Limitted memory &
    computing power
a short detour to crypto
Private-key crypto
            (secret key, symmetric)
Alice                                                              ...
Problems
• Key exchange
• Number of keys explode
  exponentially
n       n * (n-1) / 2 ≈ n2/2
(# users)      (# of keys)
   10               50
   100             5000
  1000           50...
New direction in cryptography
Public-key crypto
                        (asymmetric)
   Public key repository                            Public key
   C...
Concluding Remarks


… engineers taketh what
mathematicians giveth …
Thank You
Upcoming SlideShare
Loading in …5
×

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

2,477 views

Published on

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

Published in: Education, Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,477
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
43
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

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

  1. 1. what engineers don’t know (but mathematicians probably do) Budi Rahardjo School of Electical Engineering & Informatics Institut Teknologi Bandung
  2. 2. engineers create products [sorry, pictures deleted - unknown ipr]
  3. 3. security products
  4. 4. sometimes inefficient • Longer time to boot or process stuff • Only work for toy problems • Even, … they just don’t work at all • [failed products?]
  5. 5. [taken from a product somewhere] There are 3 kinds of people in this world: – Those who can count and – those who can’t
  6. 6. Need ways to improve • Increase performance • Less power • Smaller in size • Cost efficiency • Always, not easy
  7. 7. Example • Cryptographic applications, eg. public-key cryptography c= me mod n • With large e and n (big num) integer • Straight forward software implementation is difficult
  8. 8. Large (512-bit) numbers • n = 81 5a d0 b9 0a ac 9f 4c da cc 57 6e ca a7 6a c3 46 92 a7 81 68 ec 08 ec 77 dd 40 c2 ec 97 52 cb 3b 34 2c b6 a6 e2 76 3a ed 42 84 fa 55 ac 0d 6c 10 39 a2 7e a3 09 be 40 35 38 04 7d 06 43 1f 6f • e = 29 40 70 02 50 db 19 6b b1 f4 8a a7 b4 59 6c 4b 66 b5 94 f6 15 ae e4 69 44 95 23 f3 d0 fc ea 84 19 7c 55 e0 27 40 2d 19 18 15 08 05 51 ac f5 98 91 f0 98 5f c4 17 05 eb 3b e8 a3 04 32 d4 20 2f • d = 59 f1 2f 29 73 d0 bc 8e 13 6e 2a 21 53 2c b7 4d 69 82 c9 54 92 6c 64 43 0d 69 15 83 e9 44 a6 de 5e 30 e9 ae 48 f9 c8 84 a4 16 44 4d df 50 f2 0e 96 3e 24 df a4 f4 ec 3d c6 db 61 a7 e6 dc ea cf [64 chunks]
  9. 9. Solutions, transformations, tricks, … Mathematics Programming • Fast • Loop unrolling exponentiation •… •…
  10. 10. Fast Exponentiation
  11. 11. 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 */
  12. 12. hardware • Implementation in constrained devices – Limitted memory & computing power
  13. 13. a short detour to crypto
  14. 14. Private-key crypto (secret key, symmetric) Alice Bob Shared (secret) key Encryption Decryption Plaintext Ciphertext Plaintext My phone Y$3*@8nh My phone 555-1234 klq&ajbq 555-1234 Ev e
  15. 15. Problems • Key exchange • Number of keys explode exponentially
  16. 16. n n * (n-1) / 2 ≈ n2/2 (# users) (# of keys) 10 50 100 5000 1000 500.000 10.000 50.000.000 100.000 5.000.000.000
  17. 17. New direction in cryptography
  18. 18. Public-key crypto (asymmetric) Public key repository Public key Certificate Authority (CA) Private key Encryption Decryption Plaintext Ciphertext Plaintext My phone L)8*@Hgx My phone 555-1234 uqnrpGtZ 555-1234
  19. 19. Concluding Remarks … engineers taketh what mathematicians giveth …
  20. 20. Thank You

×