information system security wk3-2

19
Faculty of Information Technology Page IT346 Information System Security Week 3-2: Symmetric Key Cryptography .พงษ์ศักดิ ไผ่แดง 1

Upload: bee-lalita

Post on 25-May-2015

484 views

Category:

Education


4 download

DESCRIPTION

If you have question Message me!

TRANSCRIPT

Page 1: Information system security wk3-2

Faculty of Information Technology Page

IT346 Information System Security

Week 3-2: Symmetric Key Cryptography

อ.พงษศกด ไผแดง

1

Page 2: Information system security wk3-2

Faculty of Information Technology Page

โหมดการท างานของ Block Cipher

Block Cipher เขารหสขอมลทละบลอค

‣ หากขอมลมขนาดใหญกวา 1 block จะตดขอมลเปนชนขนาดเทา block

‣ แตถาเรา encrypt ขอมลทละ block โดยตรง เมอขอมลมากกวา 1 block มคา

ของขอมลตรงกน คา ciphertext ของ block เหลานนกจะตรงกนดวย ท าให

การ encryption ไมไดประสทธภาพเตมท เพราะมการรวไหลเกยวกบขอมล

time time full part

Exrw vjyo gMsQ vjyo

encrypt encrypt encrypt encrypt

2

Page 3: Information system security wk3-2

Faculty of Information Technology Page

โหมดการท างานของ Block Cipher

เราแกปญหาการซ ากนของ ciphertext ของแตละบลอค เมอ plaintext

ของบลอคซ ากน ดวยโหมดการท างานของ block cipher

‣ Ciphertext ของแตละ block จะขนกบ plaintext ของ block นนๆ และ

plaintext ของ block อนๆดวย

‣ Encryption เปน probabilistic มากขน คอไมสามารถคาดเดา output อยาง

แนนอนจาก input นนๆของ block ได

3

Page 4: Information system security wk3-2

Faculty of Information Technology Page

โหมดการท างานของ Block Cipher

โหมดทส าคญ ไดแก

Mode การท างานแบบ Block Cipher โดยตรง

‣ Electronic Code Book (ECB)

‣ Cipher Block Chaining (CBC)

Mode การท างานแบบ Block Cipher ทมการด าเนนการแบบ Stream

Cipher

‣ Cipher Feedback (CFB)

‣ Output Feedback (OFB)

4

Page 5: Information system security wk3-2

Faculty of Information Technology Page

โหมดการท างานทงายทสด

ขอความทเขามาจะถกแบงออกเปน block ยอย ๆ

แตละ block ยอยจะถก encrypt อยางเปนอสระจาก block ยอยอนๆ

ทกๆ block จะใชกญแจเดยวกนเพอเขารหส

Electronic Code Book (ECB) mode

5

Page 6: Information system security wk3-2

Faculty of Information Technology Page

Electronic Code Book (ECB) mode

6

Page 7: Information system security wk3-2

Faculty of Information Technology Page

Cipher Block Chaining (CBC) mode

ในโหมดน แกปญหาการซ ากนของ ciphertext ของแตละบลอค เมอ

plaintext ของบลอคซ ากน โดยอาศยขนตอน Encryption ดงน

‣ Chain ของการท างานรบ Input เขามา 2 ชด คอ Block แรกของ plaintext

และ block ขอมลเพมเตมทเรยกวา Initial Vector (IV) หรอ เวกเตอรเรมตน

โดยท IV ไมจ าเปนจะตองเปนความลบ แตเราไมนยมใช IV ซ ากบค key

เดยวกน

‣ Block ท 2 จะ XOR กบ ciphertext ของ block แรก จากนน encrypt ดวยkey

เดม และไดผลลพธเปน ciphertext ของ block ท 2

‣ Block ท 3 จะ XOR กบ ciphertext ของ block ท 2 จากนน encrypt ดวยkey

เดม และไดผลลพธเปน ciphertext ของ block ท 3

‣ ท าเชนนไปเรอย ๆ กบบลอคขอความทเหลอ

7

Page 8: Information system security wk3-2

Faculty of Information Technology Page

Cipher Block Chaining (CBC) mode

ขนตอน Decryption เปน ดงน

‣ Ciphertext ของ block ท 1 ถกสงไป decrypt โดยใช key ตวเดยวกนทใชใน

ขนตอน encryption ผลลพธจากการด าเนนงานในขนตอนนน าไป XOR กบ

IV ไดผลลพธเปน plaintext ของ block ท 1

‣ Decrypt Ciphertext ของ block ท 2 แลว XOR กบ Ciphertext ของ block ท

1 ผลลพธทได คอ plaintext ของ block ท 2

‣ ด าเนนการเชนนไปเรอย ๆ จนกระทง decrypt ทก block เสรจสมบรณไดเปน

plaintext

8

Page 9: Information system security wk3-2

Faculty of Information Technology Page

Cipher Block Chaining (CBC) mode

C0 = IV

Ci = EK(Pi XOR Ci-1)

C0 = IV

Pi = DK(Ci) XOR Ci-1

9

Page 10: Information system security wk3-2

Faculty of Information Technology Page

Cipher Feedback (CFB) mode

เหมาะส าหรบการท างานทใชตวอกษรเปนหลก

‣ เชน โอเปอเรเตอรทพมพตวอกษรสงไปในเครอขายทนททนใดเพอสงขอมลไป

ใหอกฝงหนง

‣ ขอความจะถก encrypt ในรปแบบของหนวยทมขนาดเลก เชน อาจจะเปน

ขนาด 8 บต แทนทจะเปน block ขนาดใหญ

10

Page 11: Information system security wk3-2

Faculty of Information Technology Page

Cipher Feedback (CFB) mode

Encryption มขนตอนการท างาน ดงน

‣ IV จะถกเกบอยใน shift register คา IV จะถก encrypt ไดผลลพธเปนcipher

IV ขนาด 64 bits

‣ พจารณาจาก bit ทอยทางซายสด j บต ของ cipher IV แลวน ามา XOR กบ j

บตแรกของ plaintext block ท 1 จะไดผลลพธออกมาเปน ciphertext block ท

1

‣ สงคา ciphertext block ท 1 ไปใหผรบ

‣ น า IV มา shift bit ไปทางซาย j ต าแหนง จากนนน า ciphertext block ท 1

มาเตมใหบตทางขวาสด j ต าแหนง

‣ ท าซ าจากขนตอนท 1 ถง 4 จนกระทง plaintext ถกเขารหสทงหมด

11

Page 12: Information system security wk3-2

Faculty of Information Technology Page

CFB Mode

Encryption

Decryption

12

Page 13: Information system security wk3-2

Faculty of Information Technology Page

Output Feedback (OFB) mode

คลายคลงกบโหมดแบบ CFB แตกตางตรงท

‣ ในกรณแบบ CFB นน ciphertext จะถกน าไปเปน IV ของการ encryption ขน

ตอไป

‣ แตโหมดแบบ OFB นน ciphertext ของ IV จะถกน าเปน IV ของกระบวนการ

เขารหสขนตอไป

13

Page 14: Information system security wk3-2

Faculty of Information Technology Page

Output Feedback (OFB) mode

14

Page 15: Information system security wk3-2

Faculty of Information Technology Page

กจกรรม 1

ใหนกศกษาจบกลมเพอวเคราะหปญหาของ Symmetric Key

Cryptography โดยพจารณาจากประเดนปญหาตอไปน

ในการใชงาน Symmetric Key Cryptography นน key ทใชในการท า

Encryption และ Decryption ตองมความสมพนธกนอยางไร?

Alice ตองการสงขอมลลบไปใหกบ Bob อยางไรกตาม Alice ไมเคยรจก

Bob มากอน และไมเคยมปฏสมพนธกบ Bob มากอน ในกรณน Alice

สามารถใช Symmetric Key Cryptography ในการเขารหสขอมลไปให

Bob โดยท Bob สามารถถอดรหสไดเลยหรอไม ถาไม คดวาตองมกลไก

ใดเกดขนกอนทจะเรม Symmetric Key Cryptography

15

Page 16: Information system security wk3-2

Faculty of Information Technology Page

Diffie-Hellman

Diffie-Hellman อาศยหลกการวาการค านวณคาของเอกโปเนนเชยล

(Exponential) นนงายกวาการค านวณลอกการทม (Logarithm) โดย

อลกอรทมนจะอนญาตใหคนสองคนสามารถสราง Secret Key เพอใชใน

การเขารหสขอมล

ขนตอนการท างาน

เรมโดยการเลอกตวเลขจ ำนวนเฉพำะ ทมคามากคาหนง เปน p แลวตอง

เลอกอกตวเลขหนง สมมตวาเปน g โดยท g < p และ g ตองเปน

Primitive เมออางกบ p (Primitive Root Modulo p)

‣ ถา g เปน Primitive ของ p กตอเมอ ถาเราสามารถหาจ านวนเตม i โดยท gi =

j (mod p) ส าหรบทกคาของ j ทมคาตงแต 1 ถง p-1

16

Page 17: Information system security wk3-2

Faculty of Information Technology Page

Diffie-Hellman (Example)

ตวอยาง เลอก g = 3, p = 5

ทดสอบคณสมบต Primitive

‣ g1 mod 5 = 3 mod 5 = 3

‣ g2 mod 5 = 9 mod 5 = 4

‣ g3 mod 5 = 27 mod 5 = 2

‣ g4 mod 5 = 81 mod 5 = 1

‣ g5 mod 5 = 243 mod 5 = 3

‣ g6 mod 5 = 729 mod 5 = 4

ดงนน 3 เปน primitive ของจ านวนเฉพาะ 5

17

Page 18: Information system security wk3-2

Faculty of Information Technology Page

Diffie-Hellman

วธการสราง Secret Key

Bob Alice

เลอกคา g และ p

เลอกเลขทมคามากๆ a

ค านวณ A = ga mod p

สง g, p, A ให Bob

รบ B จาก Bob

ค านวณหาคา K = Ba mod p

รบ g, p, A

เลอกเลขทมคามากๆ b

สงคา B = gb mod p ให Alice

ค านวณหาคา K = Ab mod p

g, p, A

B

18

Page 19: Information system security wk3-2

Faculty of Information Technology Page

Diffie-Hellman

g = 3 and p = 5

Bob Alice

เลอกคา g=3 และ p=5

เลอก a = 2

ค านวณ A = 32 mod 5 = 4

สง g=3, p=5, A=4 ให Bob

รบ B จาก Bob

ค านวณหาคา K = 22 mod 5 = 4

รบ g=3, p=5, A=4

เลอกเลขทมคามากๆ b = 3

สงคา B = 33 mod 5 = 2 ให

Alice

ค านวณหาคา K = 43 mod 5 = 4

g=3, p=5,

A=4

B

19