Model of secret-key cryptosystem และ Model of public-key cryptosystem

           การทำงานของแบบจำลอง จาก Figure 2.1 Model of secret-key cryptosystem  และ Figure 2.3 Model of public-key cryptosystem  ในหนังสือ Security of e-Systems and Computer Networks 

          ในกระบวนการในการเข้ารหัสของ Secret Key จะมีส่วนประกอบ ได้แก่
-Plain text คือ ข้อมูลต้นฉบับซึ่งเป็นข้อความที่สามารถอ่านแล้วเข้าใจ
-Encryption คือ ขั้นตอนในการแปลงข้อมูลต้นฉบับเป็นข้อมูลที่ได้รับการเข้ารหัส
-Ciphertext คือ ข้อมูลหรือข่าวสารที่ได้รับการเข้ารหัส ทำให้อ่านไม่รู้เรื่อง
-Key คือ เป็นกุญแจที่ใช้ร่วมกับ อัลกอริทึมในการเข้ารหัส (Encryption) และถอดรหัส  (Decryption)
และการเข้ารหัสแบ่งออกเป็น 2 ประเภทใหญ่ๆคือ   
1. การเข้ารหัสแบบสมมาตร Symmetric Cryptography (secret-key cryptosystem  )
2. การเข้ารหัสแบบไม่สมมาตร Asymmetric Cryptography (public-key cryptosystem )

จาก Figure 2.1 Model of secret-key cryptosystem 


 ตามรูป Secret-key cryptosystem   หรือ Symmetric Cryptography  หรือ Conventional Encryption  คือการเข้ารหัสแบบสมมาตร รูปแบบการเข้ารหัสกุญแจแบบสมมาตรคือ ทั้งผู้รับและผู้ส่งข้อความจะทราบคีย์ที่เหมือนกันทั้งสองฝ่ายในการรับหรือส่งข้อความ ประกอบด้วย 4 องค์ประกอบ คือ
ดังนี้        (a) M  คือข้อความธรรมดา (plaintext)  , (b) K  คือชุดกุญแจ/คีย์ ที่ใช้เข้ารหัส
                 (c) C  คือชุดของข้อมูลที่เข้ารหัสแล้ว (ciphertext)     ,(d) two map 
φ : M × K C and γ : C × K M.
ฟังก์ชั่นของการเข้ารหัส และการถอดรหัส เขียนได้เป็น
                                      φ(γ(c, k), k) = c and γ(φ(m, k), k) = m
φ(, k) : M C is a one-way function for all k
φ(m, ) : K C is a one-way function for all m
                ข้อความ (Plain Text) ที่ต้องการส่งมาทำการเข้ารหัสด้วยลูกกุญแจ (Encryption) จะได้ข้อความที่ถูกเข้ารหัส (Cipher Text) หากมีการเข้ารหัสโดยใช้กุญแจแบบสมมาตร เป็นการเข้ารหัสและถอดรหัสโดยการใช้กุญแจดอกเดียวกัน (Secret-Key) โดยอัลกอริทึมในการเข้ารหัสแบบสมมาตร เช่นมาตรฐาน DES ขนาด 56 บิต
               จากรูปที่ 2.1 เป้นการสร้างคีย์โดยคนกลาง (หรือบุคคลที่ 3 ) และส่งไปยังผู้ใช้ USA และผู้ใช้ USB  โดยจะส่งผ่านช่องทางที่ปลอดภัย (Secure Channel) และขั้นตอนการแลกเปลี่ยนกุญแจโดยใช้คนกลาง จะประกอบด้วย 4 ขั้นตอน คือ
1.             ผู้ใช้  USA จะส่งร้องขอไปยัง ศูนย์กลางการแจกคีย์ (Key Distribution Center : KDC)  เพื่อสร้างคีย์ลำสำหรับส่งข้อมูลไปยัง ผู้ใช้ USB  โดยจะเรียกว่าเป็น IDA 
2.             KDC จะสร้างคีย์ลับแทนด้วย Ks สำหรับสร้างรหัสเข้ารหัส และสร้างข้อความที่เข้ารหัสด้วยคีย์ลับ แทนเป็น kA ระหว่าง USA และ KDC  และในข้อความจะประกอบด้วย (a) Ks  (b) ข้อความต้นฉบับที่ส่งไปร้องขอคีย์ลับ (c) ข้อความที่เข้ารหัสเพื่อแชร์ kB ให้กับ KDC และ USB แล้ว USA จะถ่ายทอดไปยัง USB  โดยในข้อความจะประกอบด้วย Ks และ USA , IDA 
3.             ผู้ใช้ USA จะตรวจสอบข้อความที่ร้องขอต้นฉบับที่ยังไม่เปลี่ยนแปลงขณะส่งข้อความไป  ผู้ใช้ USB  ที่ประกอบไปด้วย IDA   , ข้อความที่เข้ารหัสโดย KDC ที่ถ่ายทอดไปยัง USB  และรหัสลับของ , IDA  ที่รับรองโดย Ks
4.             จนกระทั่งข้อความมาถึงผู้ใช้ USB ทาง USB จะทำการเช็คตัวตนของ USA  และคีย์ลับ  Ks  ในส่วนสุดท้ายของการตรวจสอบว่ารหัสลับระหว่าง USB และ USA สามารถเข้ากันได้ ก้จะสามารถแชร์ข้อมูลกัน หรือติดต่อกันได้  
สรุป  Secret-key cryptosystem   หรือ Symmetric Cryptography  หรือ Conventional Encryption   นั้น USB และ USA  สองฝั่งต้องมีคีย์อันเดียวกัน ข้อด้อยคือ  การส่ง key ไปให้อีกฝ่ายอาจถูกจับได้ , หากมีผู้ใช้จานวนมากขึ้นต้องใช้ key ถึง N(N-1)/2 คีย์ ทำให้มีคีย์มาก ทำให้ไม่ปลอดภัย ทั้งตอนสร้าง ตอนส่ง ตอนเก็บรักษา   Diffie -  Hellman ได้เสนอวิธีที่เรียกว่า public-key cryptography ใช้ได้สองแบบคือแบบ การเข้ารหัส หรือ digital signature (การแสดงตนด้วยคีย์)จะใช้สองคีย์คือ public key ที่แจกได้ และ private key ทีต้องเก็บไว้เป็นของตัวเองคนเดียว มีความปลอดภัยสูงแบบนี้ถือเป็น Asymmetric Key คือ เข้าด้วย คีย์ 1 ต้องถอดด้วยคีย์ 2 เข้าคีย์ 2 ถอดคีย์ 1คีย์ใดๆใช้ถอดรหัสที่เข้าด้วยคีย์เดียวกันไม่ได้ ดังนั้นผู้ส่งก็จะใช้ public  คีย์ของเป้าหมายเข้ารหัส คนที่มี private คีย์จึงสาเปิดอ่านได้คนเดียว สูตรที่ใช้คำนวณเพิ่มเติมคือ
UsA and UsB compute:     :  z A = (yB)x A mod p and z B = (x A)x B mod p.
The two users assert that:    K s = z A and K s = z B.
Given: yA = gx A (mod p) and yB = gx B (mod p),
Find: z = z A = z B = gx A x B (mod p) = gx B x A (mod p).


จาก Figure 2.3 Model of public-key cryptosystem   

           จาก Figure 2.3 Model of public-key cryptosystem   เป็นการเข้ารหัสแบบอสมมาตร    การเข้ารหัสแบบนี้จะอาศัยคู่ของกุญแจ Public Key - Secret Key ใช้ในการเข้ารหัสและถอดรหัสข้อมูล ผู้ใช้แต่ละคนจะมีกุญแจ Public Key - Secret Key คนละคู่  ดังรูปผู้ใช้โดยทั่วไป เรียกเป็น UsB  เมื่อต้องการที่จะส่งข้อความไปหาผู้ใช้  UsA  ใครที่มีกุญแจลับสามารถที่จะส่งไปหา ผู้ใช้  UsA  ได้ แต่จะมีเฉพาะ ผู้ใช้  UsA  เท่านั้นที่สามารถถอดรหัสและเข้ารหัสข้อมูลนั้นๆ ได้  กุญแจจะสามารถรับรองความถูกต้องของผู้ใช้คีย์สาธารณะ โดยเมื่อข้อมูลดังกล่าวส่งมาถึงผู้รับ ผู้รับจะใช้ Public key ของผู้ส่งในการถอดรหัสเพื่ออ่านข้อความ ถ้าสามารถเปิดอ่านได้แสดงว่าเป็นผู้ส่งคนนั้นจริงๆ
                การเข้ารหัสและการถอดรหัส เขียนแทนด้วย φ และ γ  
โดย  α : C ดังนั้น   φ(γ(c, k), α(k)) = และ     γ(φ(m, α(k)), k) = m
                เมื่อ  (
α(k), kหมายถึงคู่ของคีย์ส่วนตัวและสาธารณะ  และ  α  คือลักษณะของการเชื่อมโยงทางคณิตศาสตร์ระหว่างคีย์ส่วนตัว  α(k)  และกุญแจที่เกี่ยวข้องของผู้ใช้

ฟังก์ชั่นกับดัก (Trapdor function modelคือ การเขารหัสโดยมีการใช้ one way trapdoor function  
 f : X X,  คือฟังก์ชั่นทางเดียวที่ไม่สามารถหาย้อนกลับมาได้ แจ่จะมีการเพิ่มประตูหากมีกุญแจที่สามารถไขประตูได้ คือจะสามารถหาฟังก์ชั่นย้อนกลับได้

ถ้ากำหนดให้ f  คือ trapdoor  one way function   โดยรู้เฉพาะแค่ผู้ใช้  USA สามารถเขียนได้เป็น
Public key : f and Private key : f1
สมมติว่า f−1 เป็นฟังก์ชันผกผัน f และถูก f−1 ที่สร้างขึ้นร่วมกัน ขั้นตอนวิธีการเข้ารหัสคีย์สาธารณะ (public key ) จะทำงานดังต่อไปนี้
               
1. USB ต้องการที่จะส่งข้อความ m ไปหาผู้ใช้  USA เขาจะเข้ารหัสข้อความ โดยใช้กุญแจสาธารณะของ USA  = UsA’s  public key f และส่งข้อความ c ไปหา USB
                 2. เมื่อได้รับข้อความ c แล้ว USA จะคำนวณ m = f1 (c) และหลังจากนั้นจะถอดรหัส c โดยใช้กุญแจส่วนตัว  Private key : f1  

ในส่วนของรูปแบบลายเซ็นดิจิตอลมีการประมวลผลดังต่อไปนี้ สมมติว่าผู้ใช้ USA มี กุญแจสาธารณะ (public key) และ กุญแจส่วนตัว (private key) คือ   f และ f1 ตามลำดับ  
1. ผู้ใช้  USA ต้องการที่จะลงนามข้อความ m  และส่งไปยัง  USB   เขาจะต้องเข้ารหัส m โดยใช้กุญแจส่วนตัว (private key) และส่ง s,m ไปยัง USB 
               
2. เมื่อได้รับ s,m แล้ว USB   จะคำนวณ  f(s) โดยการตรวจสอบว่า  m = f(s)  ถ้าตัวตนถูกต้อง USB   จะเชื่อว่า USA เป็นแหล่งที่มาของข้อความและข้อความที่ไม่ได้รับการแก้ไขในระหว่างการส่งข้อมูล 


ที่มา : เรียบเรียงบทความ และเครดิตภาพจาก หนังสือ  Security of e-Systems and Computer Networks   
Advertisement

Advertisement
    Blogger Comment
    Facebook Comment

0 ความคิดเห็น:

แสดงความคิดเห็น