Top Banner
IT346 Information System Security Week 4-2: Hash Function Faculty of Information Technology Page Week 4-2: Hash Function & Digital Signature ผศ.ดร.มัชฌิกา อ่องแตง 1
27

Information system security wk4-2

Nov 29, 2014

Download

Education

Bee Lalita

If you have question
Message me!
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Information system security wk4-2

IT346 Information System SecurityWeek 4-2: Hash Function

Faculty of Information Technology Page

Week 4-2: Hash Function& Digital Signature

ผศ.ดร.มชฌกา อองแตง

1

Pongsak
Stamp
Page 2: Information system security wk4-2

Cryptography� Cryptography หมายถงวทยาการรหสลบ มาจากคาวา crypto ทแปลวา

ซอน และคาวา graph ทแปลวาการเขยนCryptography จงมความหมายวา “การเขยนเพอซอนขอมล”

� Cryptography ใชในการปองกนขอมลและสารสนเทศ โดยประกอบดวย 3 เทคโนโลยหลก

Faculty of Information Technology Page

เทคโนโลยหลก‣ Symmetric Key Cryptography หรอ Secret Key Cryptographyคอการ

เขารหสขอมลแบบ “สมมาตร”‣ Asymmetric Key Cryptography หรอ Public Key Cryptographyคอการ

เขารหสขอมลแบบ “อสมมาตร”‣ Hash Function คอการสรางตวแทนขอมล

2

Page 3: Information system security wk4-2

Hash / Message Digest� เมอตองการรกษา Integrity (ความถกตองสมบรณ) ของขอมล เราใช

เทคนคการแปลงรปแบบของขอมลทรบเขามาใหเปนขอมลทถกยอย (Message Digest) Message Digest ทเรยกวาเทคนคการ Hash

� นาขอมลไปดาเนนการผาน One-Way Hash Function ซงจะเปลยน message ขนาดใหญใหมขนาดเลก และมขนาดคงทไมวา message ดงเดมจะมขนาดเทาไรกตาม

Faculty of Information Technology Page

จะมขนาดเทาไรกตาม

� เราไมสามารถทากระบวนการยอนกลบเพอใหกลายเปนขอมลตนฉบบได แตเราสามารถใช Hash ในการตรวจสอบวาขอมลทใหมาแตละครงตรงกบทเราตองการหรอไม หรอไฟลนนมการเปลยนแปลงโดยคนอนหรอไวรสหรอไม

hm = h(m)

3

Page 4: Information system security wk4-2

Hash / Message Digest� คณสมบตของ One-Way Hash Function คอ‣ เราไมสามารถ (ในทางปฏบต) คานวณ message จาก hash ของมนได (One-

Way) นนคอ หากม h(m) เราไมสามารถคานวณหา m ได‣ เราไมสามารถ (ในทางปฏบต) คานวณหา message 2 อนทม hash ตรงกนได‣ เราไมสามารถ (ในทางปฏบต) แกไข message โดยรกษาคา hash ใหคงเดมได‣ สามารถคานวณไดอยางรวดเรวและไมตองใชทรพยากรมาก

Faculty of Information Technology Page

‣ สามารถคานวณไดอยางรวดเรวและไมตองใชทรพยากรมาก

� ตวอยาง Hash Function ไดแก ‣ Message Digest (MD) เชน MD-4, MD-5 ‣ Secure Hash Algorithm เชน SHA-1, SHA-2

4

Page 5: Information system security wk4-2

Hash Function ทนยม� MD5 คดคนโดย Ron Rivest ซงเปน 1 ใน 3 คนทคดคน RSA‣ แม MD5 จะไดรบความนยมอยางมาก และไดมการนามาใชแพรหลายเชน

นามาใชสราง Digital Signature ในระบบ e-commerce อยางไรกตาม MD5 กถก break ไดโดย Professor Dr. Xiaoyun Wang ในป 2004 โดยใชเครองซเปอรคอมพวเตอร IBM P690 และใชเวลา Crack 1 ชวโมงกสามารถ break ได หลงจากนนกมคนอางวาสามารถใชเครอง Notebook ความเรว 1.6 GHz

Faculty of Information Technology Page

ได หลงจากนนกมคนอางวาสามารถใชเครอง Notebook ความเรว 1.6 GHz เบรค MD5 ไดภายในเวลา 8 ชวโมง

� SHA-0 และ SHA-1 ไดถกพฒนาใหมความแขงแรงกวา MD5 ‣ พฒนาจาก MD5 เดมให Output มความเปน Random สงกวา และม

Collision นอยกวาเพอลดโอกาสในการถก Crack ได‣ SHA0 และ SHA1 กถกเบรคไดโดย Professor Dr. Xiaoyun Wang เชนกน‣ SHA2 ซงยงไมมใคร break ได

5

Page 6: Information system security wk4-2

ตวอยาง 1: การใชงาน Hash� โดยปกต เราใชงาน Hash เพอตรวจสอบ Integrity ของขอมล‣ Alice กบ Bob แชร Secret Key K ดวยกน ใชในการ Encrypt ขอมล‣ Alice สงขอมล M ให Bob ดงน

• Encrypt ขอมล M ดวย key K ไดเปน EK(M) ���� ทาเพอรกษา Security Goal ใด?

• คานวณ h(M) แลวนาผลลพธทไดแนบไปกบ E (M)

Faculty of Information Technology Page

• คานวณ h(M) แลวนาผลลพธทไดแนบไปกบ EK(M) ���� ทาเพอรกษา Security Goal ใด?

Alice Bob

h(M) | EK(M)

Note: ������ ��� ��������� ����� Encrypt h(M)?

6

Page 7: Information system security wk4-2

ตวอยาง 1: การใชงาน Hash‣ Bob สามารถตรวจสอบ Integrity ของขอมลทรบมาได ดงน

• Decrypt EK(M) ดวย Key K เพอใหได M• คานวณ h(M) • เปรยบเทยบ h(M) ทตนคานวณได กบ h(M) ท Alice แนบมา หากเทากน แปลวา

ไมไดมใครเปลยนแปลง M

h(M) | EK(M)

Faculty of Information Technology Page

Alice Bob

h(M) | EK(M)

h(M) | EK(M)

hash

Decrypt

M

h(M)

=?

7

Page 8: Information system security wk4-2

ตวอยาง 2: การใชงาน Hash� ผใช machigar ตง password เปนคาวา abc123 ‣ หากเกบรหสผานลงบน Database โดยตรงจะทาใหผใดกตามทเขาถงฐานขอมล

ได ทราบรหสผานทเกบไว (ผทเขาถงฐานขอมลไดเชนผดแลระบบ ผดแลฐานขอมล และแฮกเกอรทอาจเจาะเขามาในระบบ

� เพอใหเกบ password ไดอยางปลอดภย ระบบทาการสรางตวแทนรหสผานดวยฟงกชน Hash (สราง h(password))

Faculty of Information Technology Page

เพอใหเกบ password ไดอยางปลอดภย ระบบทาการสรางตวแทนรหสผานดวยฟงกชน Hash (สราง h(password)) ‣ ตวอยาง ใชอลกอรธม MD5 ยอยรหสผาน abc123 ไดเปน

h(abc123) = e99a18c428cb38d5f260853678922e03 � ระบบเกบ h(password) ลงใน Database แทนทจะเกบ password

โดยตรง ทาใหการเปดดรหสผานใน Database ไมพบ password แตจะพบเพยงคา h(password) ทเกบไวแทน

8

Page 9: Information system security wk4-2

ตวอยาง 2: การใชงาน Hash� การเกบ h(password) แทนคา password เปนการปองกนการเปดเผย

password ‣ เราไมสามารถใชคา h(password) ในการคานวณยอนกลบไปเปน password

ได � ในการตรวจสอบสทธผใชแตละครงสาหรบการลอกอนทาไดโดย

Faculty of Information Technology Page

ในการตรวจสอบสทธผใชแตละครงสาหรบการลอกอนทาไดโดย‣ นา password ทผใชปอนเขามาไปผานฟงกชน Hash เพอคานวณหา

h(password)‣ นาคา h(password) ทไดมาเทยบกบคา h(password) ทเกบไวใน Database

หากมคาตรงกนกแสดงวารหสผานถกตอง

9

Page 10: Information system security wk4-2

ตวอยางการใชงาน Hash

PasswordDatabase

PasswordDatabaseh(password)

password

password

hash

=?

Faculty of Information Technology Page

h(password)

=?

&��' ()*� +,-�.*/0���1����)) Linux 678�.*/0���9�:;�*,ก��=>� MD5 ��ก �ก�*A�กB;*�C)�.B�ก�����;(ก�-&8�ก��678�.*/0���&� Web Application ���� I �8�� Moodle 6,� Mambo

10

Page 11: Information system security wk4-2

กจกรรมท 1� จบคเพออภปรายกรณการใชเทคโนโลย Cryptography เพอปกปองการ

สอสารตอไปน� การสอสารนรกษา Confidentiality, Integrity หรอไม อยางไร

EK(M)

Faculty of Information Technology Page

� การสอสารนรกษา Confidentiality, Integrity หรอไม อยางไร

Alice Bob

Alice Bob

M | h(M)

11

Page 12: Information system security wk4-2

กจกรรมท 1� การสอสารรกษา Confidentiality, Integrity หรอไม อยางไร

Alice Bob

h(M) | EK(M)

Faculty of Information Technology Page

� การสอสารนรกษา Confidentiality, Integrity หรอไม อยางไร

Alice Bob

EK(M | h(M))

12

Page 13: Information system security wk4-2

Message Authentication Code (MAC)� MAC คอการเขารหสขอมลเพอใชในการพสจนความคงสภาพของขอมล

โดยจะใช Secret Key และขอความทมความยาวเทาใดกได และคานวณออกมาเปน MAC ‣ การพสจนทราบขอมลนนผตรวจสอบจะตองม Secret Key เดยวกน

Faculty of Information Technology Page

� เรา encrypt คา hash ของ message เพอสรางเปน message authentication code (MAC) ของ message จากนนจงตอสวน MAC เขาไปกบ message

13

Page 14: Information system security wk4-2

Message Authentication Code (MAC)� กระบวนการสราง MAC

Message M

Hash Algorithm

hash(M)

MAC Message M

Faculty of Information Technology Page

hash(M)

MAC

Secret

Key encryption

EK(h(M)) | M

� การใชงาน MAC ในลกษณะน รกษา Confidentiality หรอไม?

14

Page 15: Information system security wk4-2

Message Authentication Code (MAC)

� กระบวนการตรวจสอบ MAC

Message M

Hash Algorithmdecryption

MAC

Secret

Key

Faculty of Information Technology Page

Hash Algorithm

h(M)h(M)h(M)

decryption

=?

Secret

Key

15

Page 16: Information system security wk4-2

Asymmetric-Key Cryptography� Asymmetric-key Cryptography เพอรกษา confidentiality‣ Encrypt ขอมลทตองการปกปดดวย public key ของผรบ

E(P, PK ) = C

P = PlaintextC = CiphertextPK = Public KeySK = Private Key

D(C, SK ) = P

EncryptionEncryption DecryptionDecryptionPlaintext Ciphertext

Public Key Private Key

Plaintext

Faculty of Information Technology Page

� Asymmetric-key Cryptography เพอรกษา Non-Repudiation‣ Encrypt ขอมลทตองการยนยนดวย private key ของผสง

E(P, PKreceiver) = C D(C, SKreceiver) = P

E(P, SKsender) = C D(C, PKsender) = P

EncryptionEncryption DecryptionDecryptionPlaintext Ciphertext

Private Key Public Key

Plaintext

16

Page 17: Information system security wk4-2

Digital Signatures� การทาธรกรรมอเลคทรอนกสจาเปนทจะตองมการยนยนเอกสารหรอขอมลท

สงวาถกสงมาจากผสงจรง เพอการปองกนการปฏเสธการทาธรกรรม (Non-repudiation) และเปนการพสจนทราบตวตน (Authentication) ของผสรางเอกสาร

� จาก Asymmetric Key Cryptography เราทราบวาการเขารหสขอมล

Faculty of Information Technology Page

� จาก Asymmetric Key Cryptography เราทราบวาการเขารหสขอมลดวย Private Key สามารถยนยนผสงได‣ เชนผใช A เขารหสขอมลดวย Private Key ของตนเองแลวสงขอมลไปใหผใช B

และผใช C จากนนผใช B และผใช C กถอดรหสโดยใช Public Key ของผใช A ได เปนการยนยนไดวาขอมลมาจากผใช A จรง เพราะเปนคนเดยวทม Private Key ของผใช A

Page 18: Information system security wk4-2

Digital Signature� ลายเซนอเลกทรอนกส (Digital Signature) อาศย Asymmetric Key

Cryptography เพอเปนการรบรองวาผสงนนเหนดวยกบขอความทสงและขอความสงถงผรบโดยไมมการเปลยนแปลงโดยบคคลทสาม เนอหาอาจจะเปดเผยได

� เทยบไดกบลายเซนกากบการทาธรกรรมบนกระดาษ

Faculty of Information Technology Page

� เทยบไดกบลายเซนกากบการทาธรกรรมบนกระดาษ

18

Page 19: Information system security wk4-2

Digital Signature� นอกจากเราใช public-private key pair ในการรกษา confidentiality

โดยการใช public key ในการ encrypt ขอมลแลว เรายงสามารถใช private key ในการ encrypt ขอมล เพอพสจนตวตนของแหลงทมาของขอมลได (message authentication)‣ เฉพาะผสงทแทจรงเทานนทสามารถ encrypt ขอมลได เนองจาก private key

Faculty of Information Technology Page

เฉพาะผสงทแทจรงเทานนทสามารถ encrypt ขอมลได เนองจาก private key จะรเฉพาะผสงเทานน

� เมอ encrypt ดวย private key จะตอง decrypt ดวย public key ทสมพนธกน

19

E(C, PKsender) = PE(P, SKsender) = C

Page 20: Information system security wk4-2

แนวคดการทา Enveloping� เนองจาก symmetric key cryptography ใชเวลาดาเนนการตา จงนยม

มากกวาในการ encrypt ขอมลมากๆ� เราสามารถใช public key encryption เปนกลไกในการสง secret

(symmetric) key ได Message m

K

Faculty of Information Technology Page 20

Symmetric Encryption

s receiverE(Ks, PKreceiver)

PKreceiverencryption

Random Key

Ks

sE(m, Ks)

Page 21: Information system security wk4-2

Enveloping ใน Digital Signature� ในการสงขอมลทมขนาดใหญ หากตองการทจะยนยนผสงดวยวธการขางตน

เราจะตองทาการเขารหสขอมลทงหมดดวย Private Key ของผสง (เพอเปนการยนยนตวตนผสง) ‣ ขอเสยคอจะตองมการเขารหสขอมลขนาดใหญทงหมด และผรบจะตองทาการ

ถอดรหสขอมลทงหมดเชนกน ซงทาใหเปลอง CPU และเปลองเวลาในการ

Faculty of Information Technology Page

ถอดรหสขอมลทงหมดเชนกน ซงทาใหเปลอง CPU และเปลองเวลาในการประมวลผล

� หากขอมลทจะสงนน "ไมเปนความลบ“ เราสามารถทจะประยกตใชการทา Enveloping ใหใช CPU และเปลองเวลานอยลงไดโดยใชฟงกชน Hash‣ เนองจากขอมลไมเปนความลบ จงไมทา Secret Key Encryption แตทาการ

hash แทน เพอใหขอมลขนาดเลกลง

Page 22: Information system security wk4-2

Enveloping ใน Digital Signature� เนองจากการดาเนนการ public key cryptosystem มกใชเวลาใน

ดาเนนการสง เราจงนยมทา message authentication โดยการ encrypt สวน Message Authentication Code (MAC) ซงมขนาดเลกวา และ encrypt ไดรวดเรวกวาแทน เรยกวา Digital Signature (DS)

Message m

Faculty of Information Technology Page 22

Message m

Hash Algorithm

h(m)

DS

DS Message m

SKsenderencryption

SK = Private Key

Page 23: Information system security wk4-2

Digital Signature� ขนตอนในการทา Digital Signature‣ ขอมลทตองการจะสงจะถกคานวณใหไดขอความทสนลงโดยใช Hash Function

ผลทไดจะเปนขอมลสนๆ และความยาวคงท ซงเรยกวา Message Digest‣ ผสงจะเซนชอในขอความโดยการ Encrypt ตว Message Digest h(m) โดยใช

Private Key ของตวเอง เรยกผลลพธดงกลาววา Digital Signature‣ ขอความเดมจะถกสงไปพรอมกบ Digital Signature นไปใหผรบ

Faculty of Information Technology Page

‣ ขอความเดมจะถกสงไปพรอมกบ Digital Signature นไปใหผรบ‣ ผรบทาการตรวจสอบขอมลทไดรบ

23

DS = E(h(m), SKsender)

Page 24: Information system security wk4-2

Digital Signature� ขนตอนในการตรวจสอบ Digital Signature

Message m

Hash Algorithmdecryption

DS

PKsender

Faculty of Information Technology Page 24

h(m)h(m)h(m)

PKsender

=?

Page 25: Information system security wk4-2

Faculty of Information Technology Page 25

Page 26: Information system security wk4-2

ประโยชนของการใชลายเซนดจทล� พสจนไดวาขอมลทรบมานนมาจากผสงตวจรง และไมไดถกปลอมแปลง

(Authentication)� พสจนไดวาขอมลไดถกเปลยนแปลงหรอไม (Data Integrity)

Faculty of Information Technology Page 26

Page 27: Information system security wk4-2

กจกรรมท 2� จบกลม กลมละ 3 คน เพออภปรายความแตกตางระหวาง Message

Integrity Code (MAC) และ Digital Signature‣ การทางานและโครงสรางของ MAC และ Digital Signature ตางกนอยางไร‣ ความแตกตางดงกลาวทาให MAC และ Digital Signature ใหคณสมบตดาน

การรกษาความมนคงปลอดภยตางกนอยางไร

Faculty of Information Technology Page

การรกษาความมนคงปลอดภยตางกนอยางไร

27