solving an elliptic curve discrete logarithm problem over …...ตาราง ฮาร...

9
การประชุมวิชาการระดับชาติ มหาวิทยาลัยรังสิต ประจาปี ๒๕๕๘( RSU National Research Conference 2015) วันที่ ๒๔ เมษายน ๒๕๕๘ 278 การหาผลเฉลยปัญหาลอการิทึมวิยุตเส้นโค้งเชิงวงรีเหนือฟีลด์ลักษณะเฉพาะสอง Solving an Elliptic Curve Discrete Logarithm Problem over Field of Characteristic Two พิเชษฐ เชี่ยวธนะกุล Bhichate Chiewthanakul อาจารย์ประจาภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยขอนแก่น อาเภอเมอ จัหวัขขอนแก่น 14002 Lecturer in Department of Computer Engineering, Faculty of Engineering, Khon Kaen University, Amphoe Muang, Khon Kaen 14002 E-mail: [email protected] บทคัดย่อ การรักษาความปลอดภัยของวิทยาการเข้ารหัสลับเส้นโค้งเชิงวงรี ขึ ้นอยู ่กับความยากของปัญหาลอการิทึม วิยุตเส้นโค้งเชิงวงรี (อีซีดีแอ็ลพี( เส้นโค้งเชิงวงรีที่ศึกษาในที่นี เป็นเส้นโค้งเชิงวงรีที่นิยามเหนือฟีลด์ลักษณะเฉพาะ สอง ปัจจุบันวิธีการทั ่วไป ที่จะหาผลเฉลยอีซีดีแอ็ลพีที่มีขนาดใหญ่ หมายถึง การเปลี่ยนแปลงเกี่ยวกับวิธีเบบี ้สเต็ป ไจแอนท์สเต็ป วิธีการเหล่านี ้ทางานสาหรับทุกอีซีดีแอ็ลพี เนื่องจากกรุ๊ปวัฏจักรจากัด โดยปกติขั ้นตอนวิธีเบบี ้สเต็ป ไจแอนท์สเต็ปถูกใช้สาหรับกรุ๊ปของยูนิตมอดุโลจานวนเฉพาะ บทความนี ้นาเสนอการเปลี่ยนแปลงใหม่เกี่ยวกับ ขั ้นตอนวิธีเบบี ้สเต็ปไจแอนท์สเต็ปที่จะโจมตีกรุ๊ปอื่น ที่เรียกว่ากรุ๊ปของเส้นโค้งเชิงวงรีเหนือฟีลด์ลักษณะเฉพาะสอง ผลการศึกษานี ้แสดงให้เห็นว่าความซับซ้อนเชิงเวลาและพื ้นที่ของแผนวิธีที่นาเสนอดีกว่าของการคานวณบรูทฟอร์ซ คำสำคัญ: วิทยาการเข้ารหัสลับเส้นโค้เชิวรี ลอการิทึมวิยุตเส้นโค้เชิวรี เบบี้สเต็ปไจแอนท์สเต็ป Abstract The security of elliptic curve cryptography is based on the difficulty of the elliptic curve discrete logarithm problem (ECDLP). Elliptic curves studied here are elliptic curves defined over fields of characteristic two. Currently, the general methods to solve ECDLPs are variants of baby-step giant-step method. These methods work for every ECDLP because of the finite cyclic group. Usually the baby-step giant-step algorithm is used for the group of units modulo prime. In this paper, we present a new variant of baby-step giant-step scheme to attack other groups called groups of elliptic curve over characteristic two fields. The results of this study showed that time and space complexity of this scheme is better than the naive brute force calculation. Keywords: elliptic curve cryptography, elliptic curve discrete logarithm, baby-step giant-step มหาวิ ทยาลั ยรั งสิ

Upload: others

Post on 10-Dec-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Solving an Elliptic Curve Discrete Logarithm Problem over …...ตาราง ฮาร ดแวร endfor ค านวณ for doto (Lang,) ศ กษาได ใน if เป

การประชมวชาการระดบชาต มหาวทยาลยรงสต ประจ าป ๒๕๕๘ ( RSU National Research Conference 2015) วนท ๒๔ เมษายน ๒๕๕๘

278

การหาผลเฉลยปญหาลอการทมวยตเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง

Solving an Elliptic Curve Discrete Logarithm Problem over Field of Characteristic Two

พเชษฐ เชยวธนะกล

Bhichate Chiewthanakul

อาจารยประจ าภาควชาวศวกรรมคอมพวเตอร คณะวศวกรรมศาสตร มหาวทยาลยขอนแกน อ าเภอเมออ จ หวขขอนแกน 14002

Lecturer in Department of Computer Engineering, Faculty of Engineering, Khon Kaen University, Amphoe Muang, Khon Kaen 14002 E-mail: [email protected]

บทคดยอ การรกษาความปลอดภยของวทยาการเขารหสลบเสนโคงเชงวงร ขนอยกบความยากของปญหาลอการทม

วยตเสนโคงเชงวงร (อซดแอลพ( เสนโคงเชงวงรทศกษาในทน เปนเสนโคงเชงวงรทนยามเหนอฟลดลกษณะเฉพาะสอง ปจจบนวธการทวไป ทจะหาผลเฉลยอซดแอลพทมขนาดใหญ หมายถง การเปลยนแปลงเกยวกบวธเบบสเตป ไจแอนทสเตป วธการเหลานท างานส าหรบทกอซดแอลพ เนองจากกรปวฏจกรจ ากด โดยปกตขนตอนวธเบบสเตป ไจแอนทสเตปถกใชส าหรบกรปของยนตมอดโลจ านวนเฉพาะ บทความนน าเสนอการเปลยนแปลงใหมเกยวกบขนตอนวธเบบสเตปไจแอนทสเตปทจะโจมตกรปอน ทเรยกวากรปของเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง ผลการศกษานแสดงใหเหนวาความซบซอนเชงเวลาและพนทของแผนวธทน าเสนอดกวาของการค านวณบรทฟอรซ ค ำส ำคญ: วทยาการเขารหสลบเสนโค เช ว ร ลอการทมวยตเสนโค เช ว ร เบบสเตปไจแอนทสเตป

Abstract The security of elliptic curve cryptography is based on the difficulty of the elliptic curve discrete logarithm

problem (ECDLP). Elliptic curves studied here are elliptic curves defined over fields of characteristic two. Currently, the general methods to solve ECDLPs are variants of baby-step giant-step method. These methods work for every ECDLP because of the finite cyclic group. Usually the baby-step giant-step algorithm is used for the group of units modulo prime. In this paper, we present a new variant of baby-step giant-step scheme to attack other groups called groups of elliptic curve over characteristic two fields. The results of this study showed that time and space complexity of this scheme is better than the naive brute force calculation. Keywords: elliptic curve cryptography, elliptic curve discrete logarithm, baby-step giant-step

มหาวทยาลยรงสต

Page 2: Solving an Elliptic Curve Discrete Logarithm Problem over …...ตาราง ฮาร ดแวร endfor ค านวณ for doto (Lang,) ศ กษาได ใน if เป

การประชมวชาการระดบชาต มหาวทยาลยรงสต ประจ าป ๒๕๕๘ ( RSU National Research Conference 2015) วนท ๒๔ เมษายน ๒๕๕๘

279

1. บทน า การน า เสนอวทยาการ เขารหสลบกญแจสาธารณะ (Diffie and Hellman, 1976) นบเปนการเ รมตนใชค ณตศาสต รอ ธบายสมม ตฐาน ปญหาลอการทมวยต ตอการไดเกณฑวธ (protocol) การสรางกญแจ หลงจากนน ไดมการน าเสนอแผนวธอกมากมายทใชปญหาลอการทมวยต (Girault, 1991) และ (PUB, 2000) และความปลอดภยของปญหานไดมการศกษาอยางแพรหลาย (Odlyzko, 2000) ผลการศกษาสวนใหญพบวามการประยกตใชงานวธเบบสเตปไจแอนทสเตป ซงมขอดคอ สามารถท างานไดกบทกกรป และวธแบบโร (rho method) ซงมขอดคอ ใชทรพยากรในการค านวณนอยกวา แตมขอจ ากดคอ สามารถท างานไดในบางกรป (Pollard, 1978) ขนตอนวธ (algorithm) เหลานถกใชเ พอการกคาลอการทมวยต และปจจบนนใชส าหรบอางองเพอหาขอบเขตความปลอดภยลางส าหรบลอการทมวยตลกษณะเดนอกประการหนงของปญหาลอการทมวยต คอ ในการแสดงตวตนหรอแผนวธการสรางลายเ ซนน น สามารถใชว ธค านวณบางสวนลวงหนาได สงผลใหการพสจนตวตนหรอลายเซนสามารถบรณาการในชบ (chip) ราคาไมแพงได (Schnorr, 1990) เพราะใชเพยงการด าเนนการคณมอดลาร (modular multiplication) หนงครง และหนงครงในการบวกมอดลาร (modular addition) ในขณะทการตรวจสอบลายเซนในวทยาการเขารหสลบแบบอารเอสเอ (RSA) กลบใชการค านวณดวยคาใชจายทมากกวา กลาวคอ ใชอยางนอยมากกวาหนงเลขชก าลงมอดลาร (modular exponential)

วทยาการเขารหสลบเสนโคงเชงวงร (Elliptic Curve Cryptography) เรยกแบบยอวาอซซ (ECC) อย บนพนฐานของโครงสรางพชคณตของเสนโคงเชงวงรเหนอฟลดจ ากด ถกคดคนในปค.ศ. 1985 โดย Miller (1986) และ Koblitz (1987) จดเปนอกทางเลอกหนงของ

กลไกแบบวทยาการเขารหสลบกญแจสาธารณะ สงทแตกตางอยางเดนชดจากวทยาการเขารหสลบแบบอารเอสเอ คอ ความปลอดภยของวทยาการเขารหสลบเสนโคงเชงวงร ขนอยกบความยากของปญหาลอการทมวยต สวนความปลอดภยของวทยาการเขารหสลบอารเอสเอ ขนอยกบความยากของการแยกตวประกอบ

จดเดนทส าคญคอ ทระดบความปลอดภยเทากนวทยาการเขารหสลบเสนโคงเชงวงรใชกญแจขนาดเลกกวามากเมอเทยบกบวทยาการเขารหสลบแบบอารเอสเอ นอกจากน วทยาการเขารหสลบเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสองใชขนาดกญแจเลกกวาวทยาการเขารหสลบเสนโคงเชงวงรเหนอฟลดเฉพาะ ทความปลอดภยระดบเดยวกน (Bos et al., 2009) ดงนน ในการวจยนจงศกษาการหาผลเฉลยปญหาลอการทมวยตเสนโคงเชงวงรเหนอฟลดเฉพาะสอง

บทความน มการจดล าดบ เ นอหาในการน าเสนอดงตอไปน วตถประสงคของงานวจยแสดงในหวขอท 2 หลงจากแนะน าข นตอนวธเบบสเตปไจแอนทสเตปในหวขอท 3 แลว ในหวขอท 4 อธบายการเปลยนแปลงใหมเ กยวกบข นตอนวธ เบบสเตปไจแอนทสเตป ส าหรบกรปของเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง หวขอท 5 แสดงตวอยางการประยกตเชงตวเลขส าหรบแผนวธทน าเสนอ และบทสรปในหวขอท 6 2. วตถประสงค 1. เพอประยกตเครองมอในพชคณตนามธรรมส าหรบพฒนาวธการสงกฎการด าเนนการทวภาคของกรปของยนตมอดโลจ านวนเฉพาะไปด าเนนการทวภาคภายใตกฎของกรปการบวกของเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง ซงเปนเรขาคณตนอกแบบ ยคลด

มหาวทยาลยรงสต

Page 3: Solving an Elliptic Curve Discrete Logarithm Problem over …...ตาราง ฮาร ดแวร endfor ค านวณ for doto (Lang,) ศ กษาได ใน if เป

การประชมวชาการระดบชาต มหาวทยาลยรงสต ประจ าป ๒๕๕๘ ( RSU National Research Conference 2015) วนท ๒๔ เมษายน ๒๕๕๘

280

2. เพอพฒนาการเปลยนแปลงใหมเกยวกบขนตอนวธเบบสเตปไจแอนทสเตปทสามารถโจมตกรปเสนโคงเ ชงวงรเหนอฟลดลกษณะเฉพาะสอง โดยสามารถหาผลเฉลยปญหาลอการทมวยตเสนโคงเชงวงรไดอยางถกตอง และมประสทธภาพทด

3. เพอน าเสนอตวอยางการประยกตแผนวธทไดพฒนาขนดวยโปรแกรมเซจ ซงเปนโปรแกรมแบบโอเพนซอรสทมประสทธภาพ เหมาะส าหรบการศกษาระดบสง

3. ขนตอนวธเบบสเตปไจแอนทสเตป

ในหวขอน แนะน าขนตอนวธเบบสเตปไจแอนทสเตป (Baby-Step Giant-Step algorithm) ปรากฏใน (พเชษฐ เชยวธนะกล, 2556) และ (Cohen, 1993( เรมตนดวยการก าหนดสญกรณ (notation) ในงานวจยดงตอไปน

สญกรณ 1 ให แทน กรปวฏจกรจ ากด (finite cyclic group) ถกกอก าเนดดวยสมาชก ภายใตการด าเนนการคณ ให แทน อนดบ (order) ของ แ ล ว ผ ล ท ไ ด ค อ { { }} ส าหรบสมาชก ใน นยาม ลอการทมวยต (discrete logarithm) ของ ในฐาน เขยนแทนดวย หมายถง จ านวนเตม ทไมเปนลบและมคานอยกวา ทซง และนยาม ปญหาลอการทมวยต (discrete logarithm problem) หมายถง การค านวณ เมอก าหนดคา และ ใน

ขนตอนวธแบบเบบสเตปไจแอนทสเตปเปนข นตอนวธทวไปส าหรบปญหาลอการทมวยต ถกน าเสนอโดยแชงซ (Shanks) (Cohen,1993) มความซบซอนเชงเวลา (time complexity) เทากบ (√ ) ปฏบตการคณในกรป

ขนตอนการท างานเปนดงน ให ⌈√ ⌉ หมายถง จ านวนเตมคานอยสดทมากกวาหรอเทากบ √ และส าหรบแตละสมาชก จะม ซง และ โดยท และ เปนจ านวนเตมบางตวซง จากความสมพนธนสงผลให และไดสมการท (1)

(1)

ส าหรบบางคาของจ านวน และ ดงนนเมอพจารณาสองรายการตอไปน

และ

ขอมลในรายการทงสองมการชน (collisions) และดวยก า ร ช น ม า ก ท ส ด จ า น ว น ส อ ง ค น น ค อ ม ค และค ท ซง และ ส าหรบ นน มคาของ ไดจากคทมคา ต าสด แลว และไดขนตอนวธท 1 ส าหรบความซบซอนเชงเวลาของขนตอนวธ ขนอยกบการค านวณของรายการท งสองเปนหลกทมจ านวนสมาชกเปน ดงน น ความซบซอนเชงเวลาของขนตอนวธนเทากบ (√ ) ปฏบตการคณในกรป และความซบซอนเชงพนท (space) เทากบจ านวน (√ ) สมาชกในกรป ขนตอนวธ 1 เบบสเตปไจแอนทสเตป Input: กรปวฏจกร ของอนดบ ดวยตวกอก าเนด

และสมาชก

มหาวทยาลยรงสต

Page 4: Solving an Elliptic Curve Discrete Logarithm Problem over …...ตาราง ฮาร ดแวร endfor ค านวณ for doto (Lang,) ศ กษาได ใน if เป

การประชมวชาการระดบชาต มหาวทยาลยรงสต ประจ าป ๒๕๕๘ ( RSU National Research Conference 2015) วนท ๒๔ เมษายน ๒๕๕๘

281

Output: คาของ ทซง

⌈√ ⌉

forall ทซง do

ค านวณ และเกบคาค ในตาราง endfor

ค านวณ

for to ) do

if เปนองคประกอบทสอง

ของคใดๆในตาราง then

else

endif

endfor

4. การเปลยนแปลงใหมเกยวกบขนตอนวธเบบสเตปไจแอนทสเตป

เรมตนดวยการแนะน าเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง แบบเสนโคงคอบลทซ (Koblitz curve) ในหวขอ 4.1 แลวหวขอ 4.2 วเคราะหการเปลยนแปลงใหมเกยวกบขนตอนวธเบบสเตปไจแอนทสเตปเหนอเสนโคงคอบลทซ

4.1 เสนโคงคอบลทซ

เสนโคงเ ชงวงรถกพฒนาจากทฤษฎของฟงกชนอลลปตก (Elliptic function) ในการวเคราะหเชงซอน ซงเปนฟงกชนผกผนของปรพนธเชงวงร (Elliptic integral) ไวแยรสทราสส (Weierstrass) ไดคนพบฟงกชนอลลปตกอยางงาย และไดมการน าไปเชอมโยงกบเสนโคงเชงวงรเปนอยางมาก จงมการเรยกสมการของไวแยรสทราสส วาสมการเสนโคงเชงวงร เซตของผลเฉลยภายใตการด าเนนการทวภาคของสมการไวแยรสทราสสมโครงสรางเปนกรปการบวก รายละเอยดเกยวของกบโครงสรางของสมการไวแยร

สทราสสมมากมายสามารถศกษาไดใน (Cohen, 1993) และ (Hoffstein, et al., 2008) สมการของเสนโคง คอบลทซจดเปนสมการไวแยรสทราสสรปแบบหนง มโครงสรางการค านวณทสอดคลองกบโครงสรางฮารดแวรของดจทลคอมพวเตอร จงน ามาศกษาในงานวจยน ตอไป ก าหนดสญกรณ (notation) ทใชในการวจย ส าหรบรายละเอยดเชงลกทางพชคณตสามารถศกษาไดใน (Lang, 2002) และ (Stewart, 2003) สวนรายละเอยดทางเรขาคณตเชงเลขคณตสามารถศกษาใน (Schmitt and Zimmer, 2003)

สญกรณ 2 ให แทน ฟลดลกษณะเฉพาะสอง (characteristic two field) แลวสงผลให 2 ส าหรบจ านวนเตมบวก ให หมายถง รงพหนามผลหาร (quotient polynomial ring) เหนอ ทมจ านวนสมาชก 2 ทซงเปนฟลด และให 2 แทนกาลวสฟลด (Galois field) ทมจ านวนสมาชก 2 โดยทฤษฎบทหลกมลทางพชคณตสงผลให และ 2

สณฐานเหมอนกน (isomorphic) บทนยาม 1 เสนโค คอบลทซ หมายถง เสนโคงเชงวงรนยามเหนอ ทสอดคลองกบสมการท (2)

(2)

เมอ และสญกรณ แทนเสนโคงคอบลทซ เชนเดยวกบปรากฏใน (Hoffstein, et al., 2008) เพอใหเกดความสะดวกในการเชอมโยงกบงานวจยทเกยวของ และเกดความแตกตางจากเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสองอน

จดเดนของเสนโคงคอบลทซคอ มโครงสรางการค านวณทสอดคลองกบโครงสรางฮารดแวรของด จ ทลคอมพ ว เ ตอ ร ท ใ ชแพ รหล า ย ใน ป จ จ บน

มหาวทยาลยรงสต

Page 5: Solving an Elliptic Curve Discrete Logarithm Problem over …...ตาราง ฮาร ดแวร endfor ค านวณ for doto (Lang,) ศ กษาได ใน if เป

การประชมวชาการระดบชาต มหาวทยาลยรงสต ประจ าป ๒๕๕๘ ( RSU National Research Conference 2015) วนท ๒๔ เมษายน ๒๕๕๘

282

(Hankerson et al., 2004) และสามารถประยกตวธการสงโฟรเบนอส (Frobenius map) (Hoffstein, et al., 2008) เพอลดจ านวนครงของการด าเนนการกรปในเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง จงสงผลใหความซบซอนเชงเวลาลดลงมาก เมอท าการเขารหสลบและการถอดรหสลบ ให แทนจ านวนจดในเสนโคงคอบลทซ และให แทนรอยโฟรเบนอส (Trace of Frobenius) ส าหรบบทนยามของรอยโฟรเบนอส มความเกยวของกบทฤษฎบทมากมาย และไมไดเกยวของกบงานวจยนโดยตรง ดงน น สามารถศกษาไดใน (Hoffstein, et al., 2008) จากทฤษฎบทของฮาสส (Theorem of Hasse) ปรากฎใน (Hoffstein, et al., 2008) ไดความสมพนธ ท ซง | | 2√2

เพราะวาจ านวนจดเปนจ านวนเตมบวก และจะมคามากส ด เ ม อ ⌈2√2⌉ 2 ด ง น น เนองจากจ านวนจดบนเสนโคงเชงวงรในสมการท (2) มไมเกน 5 จด และส าหรบจ านวนเฉพาะ ทยกก าลงดวย จะมฟลด ทมจ านวนสมาชก เสมอ ดงนน จงสามารถประยกตเสนโคงคอบลทซไดดงสมการท (3)

(3)

โดยท และสญกรณ แทนเสนโคง คอบลทซเหนอฟลด เ ชน เ ดยวกบปรากฏใน (Cohen, 1993) และ (Hoffstein, et al., 2008) เพอใหเกดความสะดวกในการเชอมโยงกบงานวจยทเกยวของและสะดวกในการพฒนาโปรแกรม

ส าห รบการด า เ น นก ารทว ภ าค (binary

operation) ของสมาชกในเสนโคงคอบลทซคอนขางซบซอนเพราะอยภายใตกฎเรขาคณตนอกแบบยคลด (non-Euclidean geometry) รายละเอยดสามารถศกษาได

ใน (Hankerson et al., 2004) และ (Schmitt and Zimmer, 2003)

ตอไป ผ วจยจะแสดงตวอยางการประยกตสมการท (3) ดวยเซจ (SAGE: System for Algebra and Geometry Experimentation) จดเปนโปรแกรมแบบโอเพนซอรส (open source) (Stein et al., 2014) และเปนอกทางเลอกหนงจากแมธแมตกา (Mathematica) ซงเปนซอฟตแวรลขสทธทตองไดรบอนญาตกอนส าหรบตวอยางน ผวจยใชเซจรน 1.4.6 ภายใตระบบปฏบตการลนกซมนท 6..6 เมท 64-บต (Linux Mint 6..6 Mate 64-bit) บนเครองเดลล (Dell) รนอนสไปรอน 6441 (Inspiron 1420) ซพยอนเทลคอรทดโอ (Intel core 4 duo) ความเรว 4.1 GHz หนวยความจ า 4 GBytes

ตวอยาง 1 ให 4 แลวสามารถกอก าเนดฟลด

ไดดวยค าสง sage: k=4;F.<x>=GF(4^k);F

แลวแสดงสมาชกท งหมดและจ านวนสมาชกใน

ดวยค าสงตามล าดบ sage: list(F);len(F)

, 16 จากนนสมคา และก าเนดเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง ไดดวยค าสง sage: lst=list(F) sage: a=lst[randrange(1,len(F))];a

sage: E=EllipticCurve(F,[6,a,1,1,1]);E

มหาวทยาลยรงสต

Page 6: Solving an Elliptic Curve Discrete Logarithm Problem over …...ตาราง ฮาร ดแวร endfor ค านวณ for doto (Lang,) ศ กษาได ใน if เป

การประชมวชาการระดบชาต มหาวทยาลยรงสต ประจ าป ๒๕๕๘ ( RSU National Research Conference 2015) วนท ๒๔ เมษายน ๒๕๕๘

283

แสดงก รปการบวก เสนโคง เ ช ง วง ร เห นอ ฟลดลกษณะเฉพาะสอง ไดดวยค าสง sage: list(E) 0 1 0 0 1 1 3 2 1 3 2 1 1 2 1 1 1 2 1 2 1 2 2 1 2 1 1 1 2 1 2 1 3 1 2 1 3 1 3 2 1 1 3 1 1 1 3 1 3 1 3 2 1 0 1 3 2 1 3 2 1 1 3 2 2 1 1 3 2 3 1 1

และค านวณจ านวนจดใน ดวยค าสง sage: order(E)

61

ในตวอยางท 1 แสดงใหเหนวาสามารถประยกตสมการท (3) เ พอกอก าเนดเสนโคงเ ชงวงรเหนอฟลดลกษณะเฉพาะสองได จ านวนจดบนเสนโคงเชงวงรหรอขนาดของกรปนจะขนอยกบจ านวนเตม เมอคา มากจะไดจ านวนจดมาก แตเมอคา นอยจะไดจ านวนจดนอย 4.2 ขนตอนวธเบบสเตปไจแอนทสเตปเหนอเสนโคงคอบลทซ

ความสมพนธระหวางกรปจ ากดการคณ และเสนโคงคอบลทซ ไดมการศกษาใน (ปานดาว แกวมณ และ ศวารจ พรรคชย, 2555) บอกใหทราบวา มสณฐานเหมอนกนระหวางกรปจ ากดและภาพของกรปจ ากด (image of finite group) ซงเปนกรปเสนโคงคอบลทซ ดงนน จงไดประพจนท 1

ประพจนท 1 ให แทนจ านวนเฉพาะ และ เปนฟลดจ ากด และให ) เปนเสนโคงคอบลทซ แลว

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

สณฐานเหมอนกนกบกรปเสนโคงคอบลทซ

การพสจน ให แทนจ านวนเฉพาะ และ เปนฟลดจ ากด แลวเซตยอย { } ของ ภายใตกฎการคณเปนกรปของ ยนตมอดโลจ านวนเฉพาะ เขยนแทนดวย

เพราะวามสณฐานเหมอนกนระหวางกรปจ ากด และ

กรปเสนโคงคอบลทซ จงสมมต เปนสมสณฐาน (isomorphism) เพอการสงระหวางกรป ดงสมการท (4)

) (4)

แลวกรปของยนตมอดโลจ านวนเฉพาะ มสณฐานเหมอนกนกบกรปการบวกของเสนโคงคอบลทซ

ประพจนท 1 บอกเปนนยวา มการสงทคงสภาพกรปและความสมพนธของสมาชกในกรประหวาง กรปของยนตมอดโลจ านวนเฉพาะและกรปการบวกของเสนโคงคอบลทซ หรอกลาวในเชงการประยกตวาการด าเนนการคณในกรปของยนตมอดโลจ านวนเฉพาะมผลลพธในท านองเดยวกนกบการด าเนนการบวกในเสนโคงคอบลทซ แลวจงไดประพจนท 2 บทนยาม 2 ให เปนจ านวนเตมบวก และให และ อยใน ) ทซง ⏟

การบวกบน ( )

เขยนแทนดวย แลวเรยกปญหาการหาคา

เมอทราบคา และ วา ปญหาลอการทมวยตเสนโค เช ว ร (อซขแอลพ)

ประพจนท 2 ให และ อยใน ) ทมจ านวนสมาชก ให ⌈√ ⌉ และส าหรบ เปนจ านวนเตมทไมเปนลบคานอยกวา แลวไดความสมพนธ

(5)

มหาวทยาลยรงสต

Page 7: Solving an Elliptic Curve Discrete Logarithm Problem over …...ตาราง ฮาร ดแวร endfor ค านวณ for doto (Lang,) ศ กษาได ใน if เป

การประชมวชาการระดบชาต มหาวทยาลยรงสต ประจ าป ๒๕๕๘ ( RSU National Research Conference 2015) วนท ๒๔ เมษายน ๒๕๕๘

284

การพสจน ให และ อยใน และให

) เปนสมสณฐานทซง และ

เมอพจารณาสมการท (1) แลวได

ดงนน

ประพจนท 2 บอกเปนนยวาสามารถเปลยนกฎการค านวณใน ขนตอนวธท 1 แลวไดขนตอนวธทสามารถหาผลเฉลย ปญหาลอการทมวยตเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง ดงขนตอนวธท 2 เพราะวากรปของยนตมอดโลจ านวนเฉพาะมสณฐานเหมอนกนกบกรปการบวกของเสนโคงคอบลทซ ดงนน จ านวนครงของการด าเนนการกรปของขนตอนวธท 2 จงเทากบการด าเนนการกรปในขนตอนวธท 1 นนคอ ความซบซอนเชงเวลาของขนตอนวธนเทากบ (√ )

ปฏบตการบวกในกรป และความซบซอนเชงพนท (space) เทากบจ านวน (√ ) สมาชกในกรปดกวาเวลาการท างานเทากบ ของการค านวณบรทฟอรซธรรมดา

ขนตอนวธ 2 เบบสเตปไจแอนทสเตปเหนอเสนโคงคอบลทซ Input: กรปวฏจกร ) ของอนดบ ดวยตวกอก าเนด และสมาชก

Output: คาของ ทซง

⌈√ ⌉

forall ทซง do

ค านวณ และเกบคาค ในตาราง endfor

ค านวณ

for to ) do

if เปนองคประกอบทสอง

ของคใดๆในตาราง then

else

endif

endfor

5. ตวอยางการประยกตเชงตวเลข

หวขอนน าเสนอตวอยางการประยกตเบบ สเตปไจแอนทสเตปเหนอเสนโคงคอบลทซดงทแสดงในขนตอนวธท 2 ดวยโปรแกรมเซจ

ตวอยาง 2 ให 10 แลวสามารถกอก าเนดฟลด

และสมเสนโคงเชงวงร ) ไดดวยค าสง sage: k=10;F.<x>=GF(2^k);lst=list(F) sage: a=lst[randrange(0,len(F))] sage: E=EllipticCurve(F,[1,a,0,0,1](;E

สมไดสมการ 2 3

( 8 7 6 5 2) 2 1

แลวค านวณตวกอก าเนดเสนโคงเชงวงรแทนดวยจด

จากนนสมจด ดวยค าสง sage: P=E.gens()[0] sage: Q=randrange(1,order(E))*P; sage: P

ได ( 8 7 6 3 2

1 9 8 7 6 4 2 ) และ sage: Q

( 8 7 6 9 1)

แลวใชขนตอนวธท 2 โดยเขยนโปรแกรมในรปฟงกชนไดดงตอไปน sage: #------------------------------------------------------------- #Algorithm Baby-step giant-step for ECC_Char2 # function ECC_Baby_Gian(P,y,n) #------------------------------------------------------------- def EEC_BaBy_Gian(P,y,n):

มหาวทยาลยรงสต

Page 8: Solving an Elliptic Curve Discrete Logarithm Problem over …...ตาราง ฮาร ดแวร endfor ค านวณ for doto (Lang,) ศ กษาได ใน if เป

การประชมวชาการระดบชาต มหาวทยาลยรงสต ประจ าป ๒๕๕๘ ( RSU National Research Conference 2015) วนท ๒๔ เมษายน ๒๕๕๘

285

m=1+floor(sqrt(n)) #------------------------------------------------------------- #Generate First Table: #-------------------------------------------------------------

table_st=[] for j in range(m):

table_st.append((j*P)) #------------------------------------------------------------- #Generate Second Table: #-------------------------------------------------------------

table_nd=[] for j in range(len(table_st)):

table_nd.append(table_st[j]) table_nd.sort()

#------------------------------------------------------------- P_inv = -P P_ninv = m*P_inv j=0 flag=true while flag:

gamma1=y+j*P_ninv if gamma1 in table_nd:

i=table_st.index(gamma1( flag=false

else: j=j+1

x=j*m+i return x

#-------------------------------------------------------------

จากนนใชฟงกชน ECC_Baby_Gian(P,y,n) หาผลเฉลย sage: x=EEC_BaBy_Gian(P,Q,n);x 59 แลวได 59 ทายสด ลองตรวจค าตอบ sage: bool(Q==x*P)

true แสดงวาหาผลเฉลยไดถกตอง

6. บทสรป

การรกษาความปลอดภยของวทยาการเขารหสลบเสนโคงเ ชงวงร ขนอยกบความยากของปญหาลอการทมวยตเสนโคงเชงวงร (อซดแอลพ( โดยศกษาเสนโคงวงร ทนยามเหนอฟลดลกษณะเฉพาะสอง ปจจบน วธการทวไปทจะหาผลเฉลยอซดแอลพทมขนาดใหญ หมายถง การเปลยนแปลงเกยวกบวธเบบ สเตปไจแอนทสเตป วธการเหลานท างานส าหรบทก อซดแอลพเพราะเปนการค านวณเหนอกรปวฏจกรจ ากด โดยปกตข นตอนวธเบบสเตปไจแอนทสเตปถกใชส าหรบกรปของยนตมอดโลจ านวนเฉพาะ ในบทความนเราน าเสนอการเปลยนแปลงใหมเกยวกบขนตอนวธ เบบสเตปไจแอนทสเตปทจะโจมตกรปอน ทเรยกวากรปของเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง โดยการใชเครองมอทางพชคณตเพอเปลยนกฎการค านวณในขนตอนวธเบบสเตปไจแอนทสเตปเหนอ กรปการคณ ใหอยในรปกฎการบวกในเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง แลวไดขนตอนวธเบบ สเตปไจแอนทสเตปเหนอเสนโคงคอบลทซ ผลการศกษานแสดงใหเหนวาขนตอนวธสามารถหาผลเฉลยไดถกตอง โดยเวลาการท างานและความซบซอนพนทของขนตอนวธนเทากบ (√ ) ดกวาเวลาการท างานเ ทากบ ของการค านวณบรทฟอรซธรรมดา

มหาวทยาลยรงสต

Page 9: Solving an Elliptic Curve Discrete Logarithm Problem over …...ตาราง ฮาร ดแวร endfor ค านวณ for doto (Lang,) ศ กษาได ใน if เป

การประชมวชาการระดบชาต มหาวทยาลยรงสต ประจ าป ๒๕๕๘ ( RSU National Research Conference 2015) วนท ๒๔ เมษายน ๒๕๕๘

286

7. กตตกรรมประกาศ ผเขยนขอขอบคณศาสตราจารยซลเวอรแมน โจ เซฟ แ หงมหาวทยาลย เบราว ณ โรดไอแลน ศาสตราจารยสไตล วลเลยม แหงมหาวทยาลยวอชงตน ณ เมองซแอตเตล และศาสตราจารยมาซ แบรร แหงมหาวทยาลยฮารวารด ณ เมองเคมบรดจ ทไดสรางแรงบนดาลใจใหกบผเขยน

8. เอกสารอางอง ปานดาว แกวมณ และ ศวารจ พรรคชย. (2555). แผนวธ

แบบอสมมาตรดวยเสนโคงเชงวงรเหนอฟลดลกษณะเฉพาะสอง. คนเมอ 8 ธนวาคม 2557 จาก http://mis.en.kku.ac.th/administrator/ doc_upload/20130313184509.pdf

พเชษฐ เชยวธนะกล. (2556). วทยาการรหสลบเชงคณตศาสตร. มหาวทยาลยขอนแกน.

Bos, J. W., Kaihara, M. E., Kleinjung, T., Lenstra, A. K., and Montgomery, P. L. (2009). On the security of 1024-bit rsa and 160-bit elliptic curve cryptography. IACR Cryptology ePrint Archive, 2009, 389.

Cohen, H. (1993). A course in computational algebraic number theory. Springer.

Diffie, W., and Hellman, M. E. (1976). New directions in cryptography. Information Theory, IEEE Transactions on, 22(6): 644–654.

Girault, M. (1991). Self-certified public keys. In Advances in Cryptology-EUROCRYPT’91 (pp.490–497).

Hankerson, D., Vanstone, S., and Menezes, A. J. (2004). Guide to elliptic curve cryptography. Springer.

Hoffstein, J., Pipher, J. C., and Silverman, J. H. (2008). An introduction to mathematical cryptography. Springer.

Koblitz, N. (1987). Elliptic curve cryptosystems. Mathematics of computation, 48(177): 203–209.

Lang, S. (2002). Algebra. (Third edition). Springer. Miller, V. S. (1986). Use of elliptic curves in

cryptography. In Advances in Cryptology-CRYPTO’85 Proceedings (pp. 417–426).

Odlyzko, A. (2000). Discrete logarithms: The past and the future. In Towards a Quarter-Century of Public Key Cryptography (pp. 59–75). Springer.

Pollard, J. M. (1978). Monte carlo methods for index computation (mod p). Mathematics of computation, 32(143): 918–924.

PUB, F. (2000). Digital signature standard (dss). Schmitt, S., and Zimmer, H. G. (2003). Elliptic

Curves: A computational approach (Vol. 31). Walter de Gruyter.

Stein, W. A., et al. (2014). Sage Mathematics Software (Version 6.4.1(. The Sage Development Team, http://www.sagemath.org.

มหาวทยาลยรงสต