Tags:
Node Thumbnail

กระบวนการต่อเนื่องจากการระบุตัวตนแล้วโดยมากมักเป็นการรับรองตัวตนหรือ Authentication กระบวนการนี้เรามักทำอย่างไม่รู้ตัวกันตลอดเวลา เมื่อป้ายสินค้าชิ้นหนึ่งบอกชื่อสินค้าในห้างสรรพสินค้า เรามักตรวจสอบก่อนว่าสินค้าที่เรากำลังซื้อนั้นตรงกับสินค้าที่ป้ายบอกหรือไม่ หรือเมื่อเราพูดคุยกับใครสักคนทางโทรศัพท์ เมื่อเราได้ยินเสียงของคนที่เราคุยด้วยเราก็สามารถแน่ใจได้ว่าคนที่อยู่อีกฝั่งของคู่สายเป็นคนที่เราตั้งใจจะคุยด้วยจริงๆ เมื่อเราได้จดหมายของคนๆ หนึ่ง เราตรวจสอบดูว่ามีลายเซ็นหรือไม่ และลายเซ็นนั้นมีร่องรอยการปลอมแปลงหรือไม่

ขณะที่เราทำสิ่งต่างๆ เพื่อรับรองว่าบุคคล, เอกสาร, หรือสิ่งของ เป็นสิ่งที่เราตั้งใจจะ คุย, อ่าน, หรือใช้งาน กับสิ่งเหล่านั้นจริง สำหรับคอมพิวเตอร์แล้ว กระบวนการเหล่านี้จำเป็นจะต้องกำหนดกระบวนการล่วงหน้าไว้อย่างชัดเจน

กระบวนการรับรองตัวตนโดยทั่วไป มักจำแนกการรับรองออกเป็นสามประเภท

  1. เรารู้อะไร การรู้ความลับบางอย่างทำให้เราสามารถรับรองได้ว่าคนที่เรากำลังคุยอยู่ด้วยนั้นเป็นคนเราตั้งใจคุยจริงๆ ในละครเราอาจจะเห็นการถามถึงความหลังในวัยเด็ก ในทางคอมพิวเตอร์เราใช้รหัสผ่านที่เป็นความลับกันเสมอ
  2. เรามีอะไร เครื่องยืนยันตัวตนเช่นบัตรประชาชน หรือบัตรเครดิตที่มีเฉพาะเจ้าของเท่านั้นที่มีอยู่
  3. เราเป็นอะไร สิ่งที่เราเป็นสามารถใช้ยืนยันตัวตนของเราได้ เช่น ลายนิ้วมือ, ดีเอ็นเอ หรือละครไทยยุคเก่าที่ยืนยันลูกที่พลัดพรากด้วยปานแดงที่แก้มก้นซ้ายก็ใช้กระบวนการนี้

กระบวนการเหล่านี้โดยทั่วไปแล้วเพียงกระบวนการใดกระบวนการหนึ่งก็เพียงพอสำหรับการรับรองตัวตน แต่เราต้องเชื่อว่ากระบวนการนั้นมีประสิทธิภาพจริง เช่น ต้องไม่มีใครสามารถปลอมบัตรประชาชนได้และต้องไม่มีใครขโมยบัตรประชาชนของเราไปใช้งาน หรือเราต้องไม่เผลอบอกรหัสผ่านให้ใครรู้

ในโลกความเป็นจริง ความผิดพลาดเหล่านี้เกิดขึ้นเสมอ เราอาจจะวางใจในเทคโนโลยีที่ผิด ทำให้เชื่อว่าบัตร RFID ที่ปลอมได้ง่ายนั้นไม่สามารถปลอมแปลงได้ เราอาจจะเป็นคนสะเพร่าตั้งรหัสผ่านเป็นวันเกิดหรือจดในสมุดโน้ตแล้ววางทิ้งไว้บนโต๊ะทำงาน

ในกระบวนการที่ต้องการความน่าเชื่อถือสูงเช่นกระบวนการทางการเงินในสหรัฐฯ จึงมีคำแนะนำให้สถาบันทางการเงินรับรองตัวตนต้องใช้กระบวนการรับรองสองประเภทขึ้นไป เรียกกระบวนการนี้ว่า multi-factor authentication

ข้อความลับ จุดเริ่มต้นแห่งการรับรอง

กระบวนการตรวจสอบจากสิ่งที่เรา "รู้" นับเป็นกระบวนการเบื้องต้นที่สุดที่เราเคยทำกันมา เมื่อเราต้องเข้าเว็บสักเว็บ เว็บเหล่านั้นมักให้เรากำหนดรหัสผ่านเพื่อล็อกอินกันเป็นปกติ

แนวคิดของรหัสผ่านคือเราเป็นคนเดียวที่จะรู้ว่าข้อความลับนั้นเป็นอะไร หากมีใครที่ใส่ข้อความลับแบบเดียวกับเรา เว็บและบริการต่างๆ ก็จะเชื่อว่าเราเป็นผู้ใช้ตัวจริงที่มาเข้าใช้บริการ

ข้อความลับอาจจะใช้งานเป็นกลุ่มในกรณีเช่น ทหารในสมัยก่อนอาจจะมีการตกลงล่วงหน้าว่าหากเจอทหารไม่ทราบฝ่ายให้ตะโกนข้อความลับ หากได้คำตอบที่ถูกต้องแสดงว่าเป็นพวกเดียวกัน ในกรณีของสงครามโลกครั้งที่สอง มีการกำหนดให้ตะโกนว่า "flash" หากเจอทหารไม่ทราบฝ่ายและหากได้ยินต้องตะโกนกลับไปว่า " thunder"

กระบวนการเก็บรหัสผ่านทุกวันนี้ในระบบคอมพิวเตอร์ได้รับการพัฒนาไปอย่างมาก ระบบใหม่ๆ มักป้องกันไม่ให้ใครล่วงรู้รหัสผ่านของผู้ใช้แม้แต่ผู้ดูแลระบบเองก็ตาม (อ่านบทแฮช)

alt="upic.me"

ข้อความลับไม่ได้มีไว้เพื่อรับรองผู้ใช้เท่านั้น ทุกวันนี้บริการรับจ่ายเงินเช่น MasterCard เริ่มให้บริการ SecureCode ที่เมื่อสมัครครั้งแรกเราต้องกำหนดข้อความลับให้กับทาง MasterCard เอาไว้ (ในภาพคือช่อง Personal Greeting) หลังจากนั้น ทุกครั้งที่เราจ่ายเงิน เว็บที่จะรับจ่ายจะต้องนำเราไปยังหน้าเว็บของ MasterCard หน้าเว็บนั้นจะแสดงข้อความลับขึ้นมาเพื่อรับรองว่าเป็นเว็บของ MasterCard จริง ขณะเดียวกันก็ส่ง SMS มาให้เราเพื่อให้เราส่งข้อความจาก SMS กลับไปยังตัวเว็บ กระบวนการนี้ทำให้มีการรับรองตัวตนทั้งสองทาง คือเว็บรู้ว่าข้อความลับเป็นข้อความอะไร แสดงว่าเป็นเว็บจริง ขณะที่เรามีโทรศัพท์มือถือที่ลงทะเบียนเอาไว้จึงได้รับ SMS ที่ส่งมา แสดงว่าเราเป็นเจ้าของบัตรเครดิตนั้นจริง

CHAP ใช้รหัสแต่ไม่ส่งรหัส

กระบวนการใช้รหัสผ่านนั้นทำงานได้ดีต่อเมื่อช่องทางการสื่อสารไม่ถูกดักฟังได้โดยง่าย การสื่อสารยุคแรกๆ สายโทรศัพท์หรือการเชื่อมต่ออื่นๆ ล้วนมีคนเข้าใจในเทคโนโลยีไม่มากนัก ความเสี่ยงที่จะถูกดักฟังจึงไม่สูงมาก แต่เมื่อเทคโนโลยีเข้าถึงได้ง่ายขึ้นเรื่อยๆ กระบวนการดักฟังสัญญาณเหล่านี้ก็เป็นเรื่องง่ายมาก การดักฟังรหัสออกไปได้ทำให้ผู้ดักฟังสามารถนำรหัสผ่านที่ได้ไปล็อกอินเข้าสู่บริการในอนาคตต่อไป

ความกังวลถึงการดักฟังเป็นความกังวลแรกๆ ของการเชื่อมต่ออินเทอร์เน็ต แนวทางแก้ปัญหาที่ออกแบบมาและยังนิยมใช้งานสูงจนทุกวันนี้คือกระบวนการ CAHP (Challenge-Handshake Authentication Protocol) กำหนดมาตรฐานไว้ใน RFC1994 กระบวนการนี้เซิร์ฟเวอร์จะสุ่มเอาข้อความที่ไม่ซ้ำกันเลยในแต่ละครั้ง ส่งไปยังผู้ใช้ เมื่อผู้ใช้ใส่รหัสผ่านคอมพิวเตอร์จะไม่ส่งรหัสผ่านกลับไปเซิร์ฟเวอร์โดยตรง แต่นำรหัสผ่านนั้นไปต่อกับค่าที่เซิร์ฟเวอร์สุ่มมาให้ เรียกว่าค่า challenge แล้วแฮชด้วย MD5 จากนั้นจึงส่งค่ากลับเซิร์ฟเวอร์ กระบวนการนี้ทำให้ระหว่างการรับรองตัวตน ไม่ต้องมีการส่งข้อความลับไปตรงๆ เลย และหากเซิร์ฟเวอร์ทำงานได้ถูกต้อง ข้อความ challenge ก็ควรเปลี่ยนไปทุกครั้ง ทำให้ข้อความที่ใช้รับรองตัวตนเปลี่ยนไปทุกครั้งเช่นกัน

ข้อเสียของกระบวนการเช่นนี้คือเซิร์ฟเวอร์ต้องเก็บรหัสผ่านเอาไว้ในรูปแบบที่ย้อนกลับมาเป็นตัวรหัสผ่านได้ซึ่งมีข้อเสียในหลายกรณี เช่น ผู้ดูแลระบบสามารถเข้ามาดูรหัสผ่านได้

SIM รับรองด้วยความลับระหว่างกัน

ขณะที่ CHAP ใช้เพื่อรับรองผู้ใช้ด้วยรหัสผ่าน ระบบโทรศัพท์มือถือเองก็มีกระบวนการรับรองตัว "ซิมการ์ด" ที่คล้ายกัน โดยซิมการ์ดนั้นจะมีค่าความลับเป็นตัวเลขขนาด 128 บิตอยู่ภายในเรียกว่า Ki ตัวเลขนั้นไม่มีช่องทางอ่านออกมาได้ตามปกติ

กระบวนการรับรองซิมการ์ดจะรับรองกับเซิร์ฟเวอร์ที่เรียกว่า authentication center (AuC) ที่จะเก็บค่าหมายเลข IMSI ที่ใช้ระบุตัวตนของซิมการ์ดทุกใบในโลก พร้อมกับค่า Ki ด้วยเช่นกัน

AuC จะส่งหมายเลขสุ่ม (nonce) ไปยังซิมการ์ดผ่านโทรศัพท์มือถือที่เสียบซิมอยู่ ซิมการ์ดจะนำค่าไปต่อกับค่า Ki ในซิม แล้วแฮชออกมาด้วยฟังก์ชั่น COMP128 จากนั้นจึงคืนค่าแฮชที่ได้กลับไปยังเซิร์ฟเวอร์ ฝั่งเซิร์ฟเวอร์จะแฮชด้วยฟังก์ชั่นเดียวกันเพื่อเทียบว่าค่าตรงกันหรือไม่ หากตรงก็เป็นการรับรองว่าซิมที่ถูกต้องเชื่อมต่อกับโทรศัพท์อยู่จริง

ในโลกความเป็นจริง COMP128 เวอร์ชั่นแรกกลับออกแบบมาอย่างหละหลวมและเป็นความลับไม่สามารถตรวจสอบจากภายนอกได้ แต่เมื่อโครงข่าย GSM ได้รับความนิยมสูงในเวลาไม่นาน นักวิจัยก็สามารถย้อนกลับฟังก์ชั่น COMP128 ได้สำเร็จ ส่งผลให้สามารถย้อนหาค่า Ki ได้ด้วย ภายหลังจึงต้องปรับปรุงเป็น COMP128v2 จึงแก้ปัญหาไปได้

กระบวนการของ GSM ยังคงมีปัญหาสำคัญคือตัวซิมไม่สามารถตรวจสอบได้ว่ากำลังคุยกับเสาที่ถูกต้องจริงหรือไม่ ทำให้มีการโจมตีด้วยการตั้งเสาปลอม (rogue tower) ได้ เสา GSM ปลอมเหล่านี้อาจจะเป็นเสาที่ไม่เชื่อมต่อกับเครือข่ายใดๆ แต่มี AuC ปลอมๆ ที่ให้การรับรองซิมทุกตัวผ่านหมด หรืออาจจะเป็นการดักค่าตรงกลางเพื่อไปเชื่อมต่อก้บเครือข่าย GSM จริงๆ อีกทีหนึ่ง ทำให้เสาปลอมเหล่านี้สามารถดักฟังข้อความสนทนาได้

กระบวนการในระบบ UMTS ที่ได้รับการพัฒนาจาก GSM จึงมีการปรับปรุงให้ตัวซิมการ์ดเองต้องรับรองตัวตนของเสาสัญญาณด้วยเช่นกัน โดยตัวเสาจะส่งค่า AUTN มาพร้อมกับตัวเลขสุ่ม ภายในซิมการ์ดจะสามารถคำนวณค่า AUTN ได้จากเลขสุ่มที่ให้มา หากคำนวณค่าได้ไม่ตรง ตัวซิมจะไม่ยอมปล่อยค่าแฮชออกมาและยกเลิกการเชื่อมต่อ

กระบวนการของ UMTS อาจจะเปรียบเทียบคล้ายกับกระบวนการของ MasterCard SecureCode ที่ทั้งสองฝั่งต้องรับรองตัวตนของกันและกัน ก่อนจะเริ่มดำเนินการใดๆ ต่อไป

โทเค็นรับรองได้เพราะมีสิ่งรับรอง

กระบวนการรับรองในกรณีที่เราไม่รู้จักกันมาก่อน ในชีวิตประจำวัน เรามักจะรับรองตัวตนกันด้วย "สิ่งรับรอง" หรือโทเค็น (token) โดยสิ่งรับรองเหล่านี้ต้องมีความสามารถที่จะรับรองได้ว่าผู้ที่ถือมันเป็นตัวตนที่อ้างมาจริง ในกรณีของไทยนั้นเราคงใช้บัตรประชาชนกันเป็นเรื่องปกติ

เราเชื่อบัตรประชาชนเพราะโดยทั่วไปแล้วบัตรประชาชนนั้นปลอมได้ยากพอสมควร ฟิล์มใสที่เคลือบบัตรประชาชนนั้นเป็นพลาสติกแบบพิเศษที่พิมพ์ลายสะท้อนแสงเอาไว้ ลายเหล่านี้ปลอมได้ยาก แต่การตรวจสอบที่หละหลวม หลายครั้งธุรกรรมบางอย่างกลับไม่ได้ตรวจสอบอย่างดี และหลงเชื่อเพียงสำเนาที่ไม่ชัดเจนของบัตรประชาชนก็ทำให้การรับรองตัวตนผิดพลาดได้เรื่อยๆ

No Description

สินค้าหลายชนิดรับรองว่าสินค้าเป็นของแท้ด้วยกระบวนการคล้ายๆ กัน ด้วยการติดสติกเกอร์สะท้อนแสงที่ปลอมแปลงได้ยาก โดยระบุหมายเลขประจำตัวสินค้าที่ตรงกับสินค้าที่ขาย ทำให้ลูกค้ารู้ได้ว่าสินค้าที่กำลังซื้อนั้นเป็นของแท้

ในระบบเซิร์ฟเวอร์ในองค์กรขนาดใหญ่ หรือกระทั่งเกมออนไลน์หลายๆ เกม มักมี "พวงกุญแจ" ที่เก็บค่าความลับเอาไว้ภายในชิปที่ยากต่อการอ่านค่าออกมา เราเรียกพวงกุญแจเหล่านี้ว่าฮาร์ดโทเค็น (hard token) โดยภายในเป็นนาฬิกาที่คำนวณค่า ขณะที่กูเกิลเลือกใช้ซอฟต์แวร์ที่ชื่อว่า Google Authenticator แล้วรับค่าที่เป็นความลับผ่านการอ่าน QR-code เมื่อตอนลงทะเบียนครั้งแรกเอาไว้ ซอฟต์แวร์แบบนี้เรียกว่าซอฟต์โทเค็น (soft token) มันจะทำให้ โทรศัพท์มือถือ (หรืออุปกรณ์อื่นๆ) กลายเป็นเครื่องรับรองตัวตนของเรา เมื่อเราล็อกอิน แทนที่จะบริการจะถามเพียงรหัสผ่าน ก็จะถามค่าที่ได้รับจากโทเค็นเหล่านี้เพิ่มเติม หากเราใส่ค่าจากโทเค็นได้ถูกต้องก็แสดงว่าเรา "มี" เครื่องรับรองตัวตนนี้อยู่กับตัว

PKCS รับรองได้เพราะความลับอยู่กับเรา

กระบวนการรับรองตัวตนที่ได้รับความนิยมสูงในระดับองค์กรอีกอย่างหนึ่งคือการรับรองตัวตนผ่านโครงสร้างพื้นฐานกุญแจสาธารณะ (public-key infrastructure - PKI)

ปกติแล้วเมื่อเราพูดถึงกระบวนการรับรองตัวตนในมาตรฐาน SSL/TLS ที่เราใช้เข้าเว็บนั้นเรามักใช้เพื่อรับรองว่าเว็บที่เราเข้าชมอยู่นั้นเป็นเว็บจริง หลังจากนั้นเว็บจึงรับรองว่าเราเป็นใครด้วยการถามรหัสผ่านจากเราอีกครั้ง แต่กระบวนการ TLS นั้นมีระบุถึงกระบวนการรับรองผู้ใช้เอาไว้ด้วย โดยผู้ใช้จะต้องถือกุญแจลับและใบรับรองเอาไว้

การถือกุญแจลับและใบรับรองนั้นใบรับรองต้องถูกเซ็นลายเซ็นดิจิตอล (ซึ่งก็คือการเข้ารหัสค่าแฮชของไฟล์ด้วยกุญแจลับ) ด้วยหน่วยงานรับรอง (certification authority - CA) ที่เชื่อถือได้ สำหรับองค์กรทั่วไป ทางหน่วยงานอาจจะสร้าง CA ของตัวเองขึ้นมาใช้งาน หรืออาจจะใช้หน่วยงานภายนอกก็ได้ หากสร้าง CA ขึ้นมาใช้งานเอง ทางหน่วยงานก็มีหน้าที่ต้องกระจายใบรับรองของ CA ให้กับเครื่องคอมพิวเตอร์ทุกเครื่อง โดยต้องระวังว่าใบรับรองนี้จะไม่ถูกปลอมแปลงในระหว่างทาง

สำหรับกุญแจลับและใบรับรองของผู้ใช้ทั่วไป มีทางเลือกสองแบบคือการแจกจ่ายออกไปเป็นไฟล์ ที่เรียกมาตรฐานว่า PKCS#12 ไฟล์นี้จะเป็นไฟล์รวมทั้งใบรับรองตัวตนดิจิตอลไว้พร้อมกับกุญแจลับ เมื่อเซิร์ฟเวอร์ต้องการรับรองตัวตนของผู้ใช้ที่เชื่อมต่อเข้ามา เซิร์ฟเวอร์สามารถร้องขอใบรับรองซึ่งจะมีกุญแจสาธารณะติดมาด้วย จากนั้นจึงเข้ารหัสตัวเลขชุดหนึ่งแล้วส่งกลับไปยังผู้ใช้ ผู้ใช้ที่มีกุญแจลับจะสามารถถอดรหัสค่าที่เข้ารหัสมาแล้วส่งกลับไปยังเซิร์ฟเวอร์ได้

เซิร์ฟเวอร์รู้ว่าผู้ใช้เป็นตัวจริงเพราะผู้ใช้ "มี" กุญแจลับของใบรับรองที่ได้รับการรับรองโดยหน่วยงานออกใบรับรอง

หลายหน่วยงานไม่นิยมการออกใบรับรองและกุญแจลับให้เป็นไฟล์ เพราะสามารถทำสำเนาได้โดยง่าย ทางเลือกที่เราเห็นได้บ่อยคือการใช้สมาร์ตการ์ด กรณีนี้แทนที่ผู้ใช้จะถือไฟล์ของกุญแจลับโดยตรงและสามารถเปิดกุญแจขึ้นมาอ่านค่าได้ หน่วยงานออกใบรับรองจะให้สมาร์ตการ์ดกับผู้ใช้ไปหนึ่งใบ ภายในสมาร์ตการ์ดนั้นจะมีกุญแจลับอยู่ภายในแต่กลับไม่สามารถอ่านค่าออกมาได้ แต่จะมี API ขอให้สมาร์ตการ์ดเข้ารหัสและถอดรหัสข้อมูลที่ส่งเข้าไปแทน

alt="upic.me"

API ของการเรียกใช้สมาร์ตการ์ดเพื่อการรับรองตัวตนนี้มีมาตรฐานเรียกว่า PKCS#11 ปัจจุบันมีฮาร์ดแวร์หลากหลายรูปแบบ บางครั้งเป็นสมาร์ตการ์ดแบบเดียวกับบัตรประชาชนที่เราเห็นกัน แต่บางครั้งก็เป็น USB รูปร่างคล้ายแฟลชไดร์ฟสามารถเสียบเครื่องที่ไม่มีเครื่องอ่านสมาร์ตการ์ดได้ทันที

กระบวนการของความลับใน PKCS#11 นี้มีความพิเศษคือกุญแจลับเองก็เป็นความลับต่อผู้ใช้ที่ถือกุญแจลับเองด้วย กระบวนการรับรองตัวตนจึงน่าเชื่อถือขึ้นอีกขั้นหนึ่งเพราะโดยทั่วไปแล้วผู้ใช้เองก็ไม่สามารถทำสำเนาโทเค็นไปได้ กระบวนการนี้รับประกันว่าโทเค็นจะมีเพียงชิ้นเดียว

บัตรเครดิต เริ่มต้นความปลอดภัยด้วยการ "มอง"

กระบวนการรับรองการจ่ายเงินอีกรูปแบบหนึ่งคือการรับรองการจ่ายเงินผ่านบัตรเครดิต บัตรเครดิตยุคแรกนั้นเป็นบัตรนูนแสดงตัวเลขบัตร, วันที่ออกบัตรและวันหมดอายุ, และชื่อผู้ถือบัตร กระบวนการรับรองการจ่ายเงินคือเจ้าของร้านจะต้องตรวจสอบบัตรว่าเป็นบัตรจริง ด้วยการตรวจสอบลายสะท้อนแสงบนตัวบัตร จากนั้นจึงนำบัตรไปรูดบนกระดาษคาร์บอนเพื่อเก็บข้อมูลบนตัวบัตรออกมา

ปัญหาของกระบวนการเช่นนี้ คือ กระบวนการตรวจสอบอาศัยความซื่อสัตย์และความเชี่ยวชาญของร้านค้า หลายครั้งที่ร้านค้าไม่มีความเชี่ยวชาญในการตรวจสอบบัตรเครดิต ทำให้หลงรับบัตรปลอม และบางครั้งร้านค้าก็ร่วมมือกับกลุ่มฉ้อโกงเสียเอง กลุ่มเหล่านี้ผลิตบัตรที่ไม่มีการรับรองความถูกต้องใดๆ แต่มีเพียงตัวนูนเป็นตัวเลขและข้อมูลปลอมเท่านั้น เรียกว่า white card

กระบวนการรับรองว่ามีการใช้บัตรจริงเพื่อสั่งจ่ายเงินมีเพิ่มเติมมาเรื่อยๆ เช่น การเพิ่มหมายเลข CVV (card verification number) ในสมัยหนึ่งมีการเพิ่มเลขนี้ไว้ในแถบแม่เหล็ก ทำให้อ่านจากภายนอกไม่เห็น (ในสมัยนั้นเครื่องอ่านบัตรยังมีราคาแพงและหาไม่ได้ทั่วไป) โดยตัวเลขต้องได้จากการรูดแถบแม่เหล็กเท่านั้น (บางรายเรียกว่า CVV1) แต่ก็ไม่ประสบความสำเร็จนักเพราะเครื่องอ่านบัตรสามารถทำได้จากอุปกรณ์ที่หาได้ทั่วไปหากผู้ต้องการอ่านบัตรมีความรู้พอ ตัวเลขอีกชุดหนึ่งคือ CVV หลังบัตรที่มีตัวเลขสามหลักเพิ่มเติมเพื่อรับรองว่ามีบัตรจริงด้วยการดูหมายเลขบัตรด้านหลัง แม้จะดูไม่มีประโยชน์นักเพราะผู้ปลอมบัตรต้องการเพียงแค่เห็นบัตรสักครั้งก็สามารถปลอมแปลงได้แล้ว แต่ CVV หลังบัตรออกแบบเพื่อการใช้งานผ่านอินเทอร์เน็ตเป็นหลัก โดยมาตรฐานการจัดเก็บข้อมูลระบุไม่ให้เว็บไซต์ของผู้ค้าเก็บหมายเลข CVV นี้เอาไว้ในฐานข้อมูล ดังนั้นแม้ข้อมูลหมายเลขบัตรจะหลุดไป แฮกเกอร์ก็ไม่สามารถใช้งานหมายเลขบัตรเครดิตได้ ปัญหาคือในการใช้งานจริง ธนาคารผู้ออกบัตรหลายรายไม่ใช้หมายเลข CVV นี้ และผู้ค้าหลายรายก็ไม่ใช้งานหมายเลข CVV ด้วยเช่นกัน

ปัญหาการฉ้อโกงบัตรเครดิตสร้างปัญหาเรื่อยมา แต่ทุกวันนี้บัตรส่วนมากเป็นบัตรแบบมีชิปภายใน บัตรมีชิปที่ธนาคารออกให้เหล่านี้มักเป็นไปตามมาตรฐาน EMV (ตามชื่อบริษัท Europay, MasterCard, และ Visa ที่ร่วมสร้างมาตรฐาน) กระบวนเข้ารหัสทำให้ EMV ได้เปรียบกระบวนการรับรองบัตรแบบเดิมๆ มาก (อ่านเพิ่มเติม)

ส่วนประกอบสำคัญในบัตร EMV คือ คู่กุญแจสาธารณะและกุญแจลับที่อยู่ในตัวบัตร ส่วนธนาคารผู้ออกบัตรนั้นต้องมีกุญแจสาธารณะของตัวเองอีกชุดหนึ่ง

กระบวนการเพิ่มเติมของมาตรฐาน EMV มีสามขั้นตอนหลัก

  • รับรองว่าเป็นบัตรจริง: ด้วยการขออ่านบัตรว่าข้อมูลได้รับการรับรองจากธนาคารผู้ออกบัตรหรือไม่ เครื่องรับจ่ายจะมีกุญแจสาธารณะของธนาคาร ตัวบัตรจะส่งข้อมูลบัตรพร้อมกุญแจสาธารณะของตัวบัตรออกมาให้เครื่องอ่านเป็นไฟล์ที่มีลายเซ็นดิจิตอลของธนาคารผู้ออกบัตรรับรองอยู่ จากนั้นเครื่องอ่านบัตรจะส่งค่ากลับเข้ามาเป็นตัวเลข nonce เพื่อให้ตัวบัตรเซ็นด้วยกุญแจลับของตัวบัตรเอง หากลายเซ็นดิจิตอลที่คืนออกมาสามารถตรวจสอบด้วยกุญแจสาธารณะที่ธนาคารผู้ออกบัตรรับรองก็แสดงว่าเป็นบัตรจริง
  • รับรองผู้ถือบัตร: กระบวนการนี้บ้านเราไม่เห็นกันมากนัก แต่หลายธนาคารในต่างประเทศจะให้ผู้ใช้ใส่รหัสผ่าน หรือเซ็นลายเซ็นในเครื่องเพื่อรับรองการจ่ายเงิน
  • รับรองการจ่ายเงิน: มีทั้งแบบออนไลน์และออฟไลน์ โดยแบบออฟไลน์ตัวเครื่องจะส่งข้อมูลการจ่ายเงินเข้าไปในตัวบัตร ตัวบัตรจะเซ็นด้วยกุญแจลับให้เครื่องจ่ายไปเก็บไว้ ส่วนแบบออนไลน์ตัวบัตรจะส่งข้อมูลขอรับรองการจ่ายเงินไปยังธนาคารผู้ออกบัตร ธนาคารผู้ออกบัตรจะส่งใบรับรองการจ่ายเงินกลับมา

กระบวนการ EMV มีกระบวนการที่ซับซ้อนและตัวเลือกให้ใช้งานต่างกันไปตามแต่ธนาคารในแต่ละประเทศอีกมาก ในบทความนี้จะพูดคร่าวๆ เพียงเท่านี้

Software Authentication รับรองว่ารันของจริง

กระบวนการหนึ่งที่เราไม่ค่อยรู้ตัวนัก คือ ซอฟต์แวร์ทุกวันนี้มีกระบวนการรับรองตัวตนของผู้ผลิตเพื่อลดความเสี่ยง ให้เรารับรู้ได้ว่าซอฟต์แวร์ที่เรากำลังติดตั้งในเครื่องนั้นเป็นซอฟต์แวร์ที่มาจากผู้ผลิตจริง โดยที่เราไม่รู้ตัว กระบวนการรับรองตัวตนผู้ผลิตของซอฟต์แวร์กลายเป็นกุญแจสำคัญของการรักษาความปลอดภัยคอมพิวเตอร์

ลินุกซ์: เชื่อใจที่มา

กระบวนการติดตั้งซอฟต์แวร์ของลินุกซ์มักจะต่างจากวินโดวส์ เนื่องจากซอฟต์แวร์มักถูกติดตั้งจาก repository ที่มีซอฟต์แวร์จำนวนมากอยู่ด้วยกัน เพราะซอฟต์แวร์ส่วนใหญ่เองก็เป็นซอฟต์แวร์โอเพนซอร์สที่หาดาวน์โหลดได้ฟรี แต่แหล่งกระจายซอฟต์แวร์ของลินุกซ์นั้นมีมากมายทั่วโลก หลายที่ทำไว้เพื่อความสะดวกในการติดตั้งของคนในองค์กร บางที่ทำเพื่อให้บริการแก่สาธารณะ การเชื่อใจซอฟต์แวร์ที่จะมาติดตั้งจึงอาศัยกระบวนการเชื่อใจแหล่งที่มาของซอฟต์แวร์ ในกรณีนี้เราจะยกตัวอย่าง Debian ที่เป็นดิสโทรหนึ่งของลินุกซ์ กระบวนการทำงานคล้ายกับ Ubuntu แต่จะต่างไปจาก Redhat เล็กน้อย

เมื่อเราติดตั้งลินุกซ์ จะมีกุญแจสาธารณะของผู้ผลิตอยู่ในเครื่องอยู่แล้ว โดยวางไว้ที่ /etc/apt/trusted.gpg เมื่อเราต้องการติดตั้งซอฟต์แวร์ เราไม่ต้องดาวน์โหลดจากเซิร์ฟเวอร์ของทาง Debian โดยตรงแต่สามารถดาวน์โหลดจากแหล่งอื่นที่เราสะดวกได้เสมอ รวมถึงการติดตั้งจากแผ่นซีดี ในแหล่งดาวน์โหลดจะต้องมีไฟล์ค่าแฮชไฟล์ที่เก็บค่าแฮชของไฟล์ติดตั้งและลายเซ็นดิจิตอลวางไว้คู่กับตัวไฟล์ติดตั้งเสมอ ตัวอย่างเช่น ใน Debian 5.0 ที่ mirror1.ku.ac.th จะมีไฟล์ Release.gpg เซ็นกำกับรายชื่อไฟล์ของแต่ละสถาปัตยกรรมเอาไว้ เมื่อเราต้องการดาวน์โหลดไฟล์จากสถาปัตยกรรม i386 ระบบปฏิบัติการจะดาวน์โหลดไฟล์ Contents-i386.gz ซึ่งจะมีค่าแฮชของไฟล์ Packages.gz อีกครั้ง โดยในไฟล์นี้จะมีค่าแฮชของไฟล์ติดตั้งทุกไฟล์เอาไว้ในตัว การเก็บค่าแฮชเป็นลูกโซ่เช่นนี้ทำให้ไฟล์รับรองเพียงไฟล์เดียวสามารถรับรองไฟล์ติดตั้งทุกไฟล์ของระบบได้

วินโดวส์: รับรองชื่อผู้ผลิต

กระบวนการรับรองชื่อผู้ผลิตของวินโดวส์นั้นต่างออกไป เนื่องจากเรามักดาวน์โหลดซอฟต์แวร์จากผู้ผลิตโดยตรงแทนที่จะมีแหล่งรวมตรงกลาง กระบวนการของวินโดวส์จึงเปิดให้มีการตรวจสอบได้แม้ผู้ผลิตจะไม่ได้เกี่ยวข้องกับไมโครซอฟท์โดยตรง

alt="upic.me"

ผู้ผลิตที่ต้องการเซ็นรับรองตัวตนในซอฟต์แวร์จะต้องติดต่อหน่วยงานออกใบรับรองรูปแบบเดียวกับใบรับรองดิจิตอลให้กับตนเอง กระบวนการตรวจสอบตัวตนของหน่วยงานออกใบรับรองของแต่ละที่ก็จะต่างกันไปตั้งแต่การส่งอีเมลรับรอง ไปจนถึงการขอเอกสารเป็นทางการ

หลังจากนั้นเมื่อติดตั้งซอฟต์แวร์ ตัวติดตั้งของไมโครซอฟท์จะแสดงชื่อผู้ผลิตขึ้นมาให้ผู้ใช้รับรู้ว่ากำลังติดตั้งจากผู้ผลิตรายใด โดยยกเว้นในบางกรณีของผู้ผลิตที่ได้รับรองจากหน่วยงานรับรองของไมโครซอฟท์เอง (Windows signing authority) หรือผู้ผลิตที่อยู่ในรายชื่อที่ได้รับความเชื่อถือ (trusted publisher) ก็จะติดตั้งได้เลย

นอกจากนี้ยังมีผู้ผลิตที่อยู่ในรายชื่อ "ไม่น่าเชื่อถือ" ที่วินโดวส์จะไม่ยอมติดตั้งเลยโดยไม่ถามผู้ใช้แต่จะล็อกความพยายามติดตั้งจากผู้ผลิตเหล่านี้เอาไว้ในระบบแทน

Android: ขอให้เหมือนเดิม

กระบวนการรับรองซอฟต์แวร์ในระบบปฎิบัติการสมัยใหม่อย่างแอนดรอยด์เลือกใช้เส้นทางที่ต่างออกไป เพราะการทำงานของของระบบปฎิบัติการเองก็ต่างออกไป ด้วยการจำกัดสิทธิ์ซอฟต์แวร์ได้ละเอียดกว่าลินุกซ์และวินโดวส์ การรับรองตัวตนของผู้ผลิตซอฟต์แวร์ในแอนดรอยด์มีเหตุผลสำคัญคือการอัพเดตซอฟต์แวร์ เนื่องจากแอนดรอยด์ต้องการให้ผู้ใช้สามารถอัพเดตซอฟต์แวร์ได้โดยง่ายผู้ใช้ไม่ต้องรับรู้เมื่อมีการอัพเดตแต่ละครั้ง แต่หากซอฟต์แวร์รุ่นใหม่กลับเป็นซอฟต์แวร์จากผู้ผลิตอื่นที่ปลอมตัวมาก็อาจจะสร้างความเสียหายได้

การรับรองตัวตนผู้ผลิตซอฟต์แวร์ของแอนดรอยด์จึงต้องการเพียงใบรับรองที่รับรองตัวเอง (self-signing certificate) เมื่อติดตั้งซอฟต์แวร์ลงในเครื่องครั้งแรก แอนดรอยด์จะจำใบรับรองไว้ และการอัพเดตทุกครั้งจะต้องใช้ใบรับรองเดิม ไม่เช่นนั้นจะติดตั้งไม่ได้ ด้วยแนวทางเช่นนี้ใบรับรองจะต้องมีอายุอย่างน้อย 25 ปี เพื่อให้แน่ใจว่าใบรับรองจะไม่หมดอายุเสียก่อนที่แอพพลิเคชั่นจะเลิกใช้งานไป

นอกจากใบรับรองผู้ผลิตทั่วไปแล้ว แอนดรอยด์ยังใช้ใบรับรองพิเศษชุดหนึ่งที่วางไว้ในช่วงการคอมไพล์เพื่อใช้เป็นใบรับรองระบบ (system certificate) หากมีแอพพลิเคชั่นใดเซ็นด้วยใบรับรองเหล่านี้จะสามารถขอสิทธิพิเศษเพิ่มเติม เช่น การรีบูตเครื่อง, การติดตั้งและถอดแอพพลิเคชั่นโดยไม่ต้องแจ้งผู้ใช้ ฯลฯ

ChromeOS: รับรองทุกครั้งที่บูต

นอกจากกระบวนการรับรอง "แอพพลิเคชั่น" ที่เราพบทั่วไปแล้ว คอมพิวเตอร์สมัยใหม่แทบทั้งหมดจะมีกระบวนการรับรองซอฟต์แวร์แทบทุกขั้นตอน โดยผู้ผลิตฮาร์ดแวร์จะมีเฟิร์มแวร์ที่ฝังอยู่ในส่วนที่ดัดแปลงแก้ไขได้ยาก เช่น ฝังอยู่ในซีพียู จากนั้นเฟิร์มแวร์นี้รันโปรแกรมเพื่อรับรองเฟิร์มแวร์ภายนอกที่สามารถอัพเดตแก้ไขได้ สุดท้ายเฟิร์มแวร์จึงไปรับรองระบบปฎิบัติการในดิสก์อีกครั้ง

คอมพิวเตอร์ยุคใหม่ในกลุ่มนี้ เช่น แอนดรอยด์เองก็มี bootloader ที่สามารถรับรองรอมที่จะมาติดตั้งได้ (ทำให้นักพัฒนาต้องการเครื่องแบบ unlocked bootloader) เครื่องเกมคอนโซลยุคใหม่ทั้งหมด ในสมัยเครื่อง Xbox รุ่นแรกนั้นเฟิร์มแวร์เริ่มต้นถูกฝังไว้ในชิป north bridge ที่เชื่อมต่อกับซีพียูด้วยบัส 700MHz โดยทางไมโครซอฟท์เชื่อว่าคนทั่วไปจะไม่สามารถดักฟังบัสความเร็วสูงเช่นนั้นได้ แต่นักวิจัยจากมหาวิทยาลัยก็สามารถดักฟังได้สำเร็จ และรอมเริ่มต้นการบูตก็หลุดออกมานำไปสู่การแฮก Xbox ในที่สุด (ดูเพิ่มเติมเรื่องระบบยืนยันเฟิร์มแวร์ของ Xbox ใน GoogleTechTalk)

กระบวนการรับรองซอฟต์แวร์ของ ChromeOS ระบุไว้ให้มีเฟิร์มแวร์สองชั้น ชั้นแรกจะอ่านได้อย่างเดียวและติดมากับผู้ผลิตโดยตรงเท่านั้น ภายในมีกุญแจสาธารณะของผู้ผลิตติดตั้งอยู่เพื่อทำหน้าที่รับรองเฟิร์มแวร์ชั้นต่อไป ในเฟิร์มแวร์ชั้นที่อ่าน/เขียนได้ จะต้องมีลายเซ็นดิจิตอลของผู้ผลิตอยู่ เฟิร์มแวร์ชั้นแรกจึงรับรองความถูกต้องได้ด้วยกุญแจสาธารณะ หากรับรองไม่สำเร็จ ระบบจะเตือนว่ามีการแก้ไขเฟิร์มแวร์แต่สามารถติดตั้งเฟิร์มแวร์ใหม่เพื่อใช้งานตามเดิมได้

เมื่อเฟิร์มแวร์รับรองสำเร็จจะเริ่มรัน เฟิร์มแวร์แบบอ่าน/เขียน เองจะมีกุญแจสาธารณะอื่นๆ (เช่น ของกูเกิล) เพื่อใช้รับรองเคอร์เนลในดิสก์ เมื่อรับรองสำเร็จแล้วก็จะถือว่าการบูตปลอดภัยดี

กระบวนการตรวจสอบซอฟต์แวร์ก่อนบูตมีข้อจำกัดอยู่ เช่น ไม่สามารถตรวจสอบซอฟต์แวร์ที่รันไปแล้วได้ หากมีการแก้ไขเคอร์เนลหลังจากเริ่มรันไปแล้วก็จะต้องกลับบูตใหม่เพื่อตรวจสอบว่ามีการแก้ไขหรือไม่

ส่งท้าย

กระบวนการยืนยันจากเดิมที่เคยเป็นการรับรองผู้ใช้กับระบบคอมพิวเตอร์ ทุกวันนี้ชิ้นส่วนต่างๆ ล้วนเป็นช่องทางให้ถูกโจมตีได้ทั้งสิ้น (สาเหตุหนึ่งก็เพราะช่องทางแฮกเดิมๆ ใช้งานไม่ได้แล้ว) การดัดแปลงซอฟต์แวร์และฮาร์ดแวร์เพื่อให้แฮกเกอร์บรรลุผลไม่ใช่เรื่องแปลกอีกต่อไป กระบวนการรับรองเหล่านี้สิ่งต่างๆ จึงแทรกซึมไปอยู่ในกระบวนการหลายอย่าง

บทความนี้ไม่พูดถึงอีกสองส่วนได้แก่ การรับรองเว็บ ที่พูดถึงไปแล้วในบท Asymmetric และ Biometric ที่พูดถึงในบท Identification

Get latest news from Blognone

Comments

By: adamy
iPhoneAndroidBlackberryUbuntu
on 6 January 2014 - 05:50 #669809

ยาวดีจริงๆครับ ใช้เวลาอ่านซักพักและต้องหยุดเพื่อทำความเข้าใจก่อนจะอ่านต่ออีกครับ : )

ปล."บทความนี้ไม่พูดถึงอีกสองส่วนได้แก่ การรับรองเว็บ ที่พูดถุงไปแล้วในบท Asymmetric และ Biometric ที่พูดถึงในบท Identification" ... พูดถึงนะครับ

ขอบคุณครับ สวัสดีครับ

By: panurat2000
ContributorSymbianUbuntuIn Love
on 6 January 2014 - 08:56 #669819 Reply to:669809
panurat2000's picture

เมื่อป้ายสินค้าชิ้นหนึ่งบอกขื่อสินค้าในห้างสรรพสินค้า

บอกขื่อ => บอกชื่อ

เรามักตรวจสอบก่อนว่าสินค้าที่เรากำลังซื้อนั้นตรงกับสินค้าทีป้ายบอกหรือไม่

ทีป้าย => ที่ป้าย

ขณะที่เราทำสิ่งต่างๆ เพื่อรับรองว่าบุคลล, เอกสาร, หรือสิ่งของ

บุคลล => บุคคล

จึงมีคำแนะนำให้สถาบันทางการเงินรับรองตัวตนต้องใช้การะบวนการรับรองสองประเภทขึ้นไป

การะบวนการ => กระบวนการ

ขณะที่เรามีโทรศัพท์มือถือที่ลงทะเบี่ยนเอาไว้จึงได้รับ SMS ที่ส่งมา

ลงทะเบี่ยน => ลงทะเบียน

แต่นำรหัสผ่านนั่นไปต่อกับค่าที่เซิร์ฟเวอร์สุ่มมาให้ เรียกว่าค่า challenge

รหัสผ่านนั่น => รหัสผ่านนั้น

ฟิล์มใสที่่เคลือบบัตรประชาชนนั้นเป็นพลาสติกแบบพิเศษ

ที่่ => ที่

ปกติแล้วเมื่อเราพูดถึงกระบวนการรับรองตัวคนในมาตรฐาน SSL/TLS

ตัวคน => ตัวตน

กระบวนการรับรองตัวตนจึงน่าเชื่อถือขึ้นอีกขึ้นหนึ่ง

อีกขึ้นหนึ่ง => อีกขั้นหนึ่ง

(ในสมัยนั้นเครื่องอ่านบัตรยังมีราคาแพงและหาไม่ได้ทั่วไป) โดยตัวเลขได้ต้องจากการรูดแถบแม่เหล็กเท่านั้น

โดยตัวเลขได้ต้องจากการรูดแถบแม่เหล็กเท่านั้น ?

ปัญการฉ้อโกงบัตรเครดิตสร้างปัญหาเรื่อยมา

ปัญการฉ้อโกง ?

หรือเซ็นลานเซ็นในเครื่องเพื่อรับรองการจ่ายเงิน

ลานเซ็น => ลายเซ็น

้กระบวนการ EMV มีกระบวนการที่ซับซ้อนและตัวเลือกให้ใช้งานต่างกันไป

้กระบวนการ EMV => กระบวนการ EMV

โดยยกเว้นบางในกรณีของผู้ผลิตที่ได้รับรองจากหน่วยงานรับรองของไมโครซอฟท์เอง

โดยยกเว้นบางในกรณี ?

กระบวนการยืนจากเดิมที่เคยเป็นการรับรองผู้ใช้กับระบบคอมพิวเตอร์

กระบวนการยืนจากเดิม ?

By: hisoft
ContributorWindows PhoneWindows
on 6 January 2014 - 10:50 #669849 Reply to:669819
hisoft's picture

พูดถุง => พูดถึง

By: mementototem
ContributorJusci's WriterAndroidWindows
on 6 January 2014 - 12:22 #669882 Reply to:669819
mementototem's picture

ซึ่งไม่มีข้อเสียในหลายกรณี

ซึ่งมีข้อเสียในหลายกรณี


Jusci - Google Plus - Twitter

By: Jonathan_Job
WriteriPhoneUbuntuWindows
on 6 January 2014 - 06:45 #669811
Jonathan_Job's picture

CAHP -> CHAP
ที่ย้อนกลับมาเป็นตัวรหัสผ่านได้ซึ่งไม่มีข้อเสียในหลายกรณี -> ที่ย้อนกลับมาเป็นตัวรหัสผ่านได้ซึ่งมีข้อเสียในหลายกรณี

By: sp on 6 January 2014 - 09:06 #669822

อนุโมทนาในความอุตสาหะที่ค้นคว้ามาให้อ่านครับ

By: pingkunga
iPhoneWindows PhoneAndroidRed Hat
on 6 January 2014 - 10:23 #669832

บทความเจ๋งดีครับ มีอะไรที่ผมไม่รู้มากมายจากการทำโปรเจคจบมากเลยครับ โดยเฉพาะบทความช่วงครึ่งท้าย ซึ่งเป็นสิ่งที่คน IT มักขลุกอยู่กับมัน แต่อาจจะไม่สังเกตุครับ ^___^

By: xenatt
ContributorWindows PhoneRed HatSymbian
on 6 January 2014 - 10:35 #669839
xenatt's picture

upicme ไม่แสดงรูป


Opensource - Hackintosh - Graphic Design - Scriptkiddie - Xenlism Project

By: figgaro
ContributorAndroidWindows
on 6 January 2014 - 10:54 #669851
figgaro's picture

จะต้องมีลายเซ็นดิจิตอลของผู้ผลิตอยู่ => จะต้องมีลายเซ็นดิจิทัลของผู้ผลิตอยู่


Texion Business Solutions

By: dabjed
Windows
on 6 January 2014 - 11:58 #669875

ตัวรหัสผ่านได้ซึ่งไม่มีข้อเสียในหลายกรณี => ตัวรหัสผ่านได้ซึ่งมีข้อเสียในหลายกรณี

By: jaideejung007
ContributorWindows PhoneWindows
on 6 January 2014 - 14:22 #669923
jaideejung007's picture

ในส่วนของ วินโดวส์: รับรองชื่อผู้ผลิต

เราจะขอรับรองซอฟต์แวร์ จะมีขั้นตอนในการดำเนินการอย่างไรบ้างครับ ตั้งแต่เริ่มต้นเลย (หรือมีเว็บอ่านไหมครับ) อยากศึกษาไว้เป็นความรู้ และมีค่าใช้จ่ายในการดำเนินการมากน้อยเพียงใด

By: panurat2000
ContributorSymbianUbuntuIn Love
on 6 January 2014 - 15:39 #669948 Reply to:669923
panurat2000's picture
By: Elysium
ContributorWindows PhoneSymbianWindows
on 6 January 2014 - 14:41 #669924
Elysium's picture

แล้วตระกูล Apple ทั้งหมดละครับ


คนขี้ลืม | คนบ้าเกม | คนเหงาๆ

By: lew
FounderJusci's WriterMEconomicsAndroid
on 6 January 2014 - 15:12 #669939 Reply to:669924
lew's picture

ผมไม่มีใช้งานเลยครับ เลยไม่รู้จะเขียนยังไง


lewcpe.com, @wasonliw

By: willwill
ContributorAndroid
on 7 January 2014 - 02:00 #670112 Reply to:669924
willwill's picture

คล้ายๆ Linux ครับ OS จะมี public key ของ Apple ไว้อยู่แล้วนักพัฒนาที่จ่ายตังให้ Apple แล้วก็ส่ง CSR ไปให้ Apple เซ็นได้ (คล้ายๆ ขอ SSL สำหรับเว็บไซต์)

ใน Lion สามารถตั้งบล็อคไม่ให้แอพที่เซ็นไว้รันได้ได้ (ค่าปกติผมรู้สึกว่าจะเป็น Mac App Store only) ส่วนไอโฟนผมไม่แน่ใจว่าเจลแล้วปลดบล็อคได้มั้ย แต่เหมือนว่าพอเจลแล้วเครื่องจะยอมรับ self-signed certificate

alt="Imgur"

By: F16
iPhoneWindows PhoneAndroidIn Love
on 6 January 2014 - 18:10 #669998

อ่านสนุกมากครับ แต่ต้องตั้งใจอ่านนิดนึง ข้อมูลทางเทคนิคเยอะ
แต่อ่านแล้วได้ความรู้ สามารถเอาไปดัดแปลงใช้งานได้จริง
ขอบคุณครับ

By: rerngrit
Android
on 6 January 2014 - 18:42 #670008

Flash/Thunder นี่จำได้แม่นจากหนัง Saving Private Ryan แต่ในหนังมันผิด เพราะไปตะโกนสลับกัน

By: viroth
ContributorBlackberryIn Love
on 6 January 2014 - 22:06 #670058 Reply to:670008
viroth's picture

Band of Brother ตอนโดดร่มเลยครับ

By: rerngrit
Android
on 7 January 2014 - 00:42 #670098 Reply to:670058

มินิซีรี่ส์เรื่องนี้ก็เป็นผลพวงจากความติดใจกันมาของ สปีลเบิร์ก กับ ทอม แฮงค์ จากหนังใหญ่เรื่องแรกนั่นแหละครับ (ตอนหลังยังออก The Pacific ตามมาอีกเรื่อง)
ผมก็จำไม่ได้เหมือนกันว่าใน Band of Brothers นี่เค้าแก้ไขให้ถูกแล้วหรือยัง ^_^

พานอกเรื่องกันใหญ่ :-P

By: mr_tawan
ContributoriPhoneAndroidWindows
on 6 January 2014 - 22:23 #670066
mr_tawan's picture

ต่อไปเป็นเรื่อง Authorization ใช่ไหมครับ ?


  • 9tawan.net บล็อกส่วนตัวฮับ
By: neizod
ContributorTraineeIn Love
on 7 January 2014 - 09:46 #670154 Reply to:670066
neizod's picture

แล้วจบด้วย Accounting เย่

By: alph501
iPhoneWindowsIn Love
on 9 January 2014 - 10:38 #670929
alph501's picture

พูดเรื่องนี้ ผมทำให้ผมนึกถึงบัตรเดบิตกรุงเทพครั้งแรก
คือพนักงาน แกก็เอาบัตรไปรูด ได้สลิปมาเซนต์ แล้วก็จบ

เราก็คิดว่าเอ้ยง่ายจังถ้าวันนึง มีคนเอาขโมยบัตรเอาไปใช้ได้ รูด 1 ที 20000 ซื้อของแล้วก็เซนต์คล้ายๆกับหลังบัตรก็ผ่านแล้ว ตั้งแต่นั้นมาก็ไม่ใช้แล้วครับ ออกง่ายเกิน

จริงๆควรจะให้มีการกดรหัสยืนยันคนใช้บ้างนะครับ