อุปสรรคใหญ่ในการทำการค้าออนไลน์ของเมืองไทยอย่างหนึ ่งที่ทุกคนเจอกันคือการรับจ่ายเงินที่ยังทำได้ยาก การค้าออนไลน์จำนวนมากทุกวันนี้ยังอาศัยการโอนเงินแบ บตัวต่อตัว ทำให้ไม่มีกระบวนการคืนเงิน เรายังคงได้ยินข่าวการหลอกลวงทั้งลูกค้าถูกพ่อค้าแม่ ค้าหลอกลวง หรือฝั่งพ่อค้าแม่ค้าเองที่ถูกลูกค้าหลอกว่าโอนเงินแ ล้ว
วันนี้เราจึงมาคุยกับ Omise ผู้ให้บริการ payment gateway ที่จะเปิดโอกาสให้ร้านค้าออนไลน์สามารถรับจ่ายเงินผ่ านบัตรเครดิตได้โดยง่าย สามารถตรวจสอบย้อนหลังได้ ฝั่งลูกค้าก็สามารถทำเรื่องขอคืนเงินได้ อุปสรรคสำคัญที่ทำให้บริการเช่นนี้ไม่สามารถเปิดให้บ ริการโดยคนทั่วไปเพราะต้องผ่านการรับรอง PCI-DSS ที่มีกระบวนการตรวจสอบเข้มงวด หลายแห่งใช้เวลาขอรับรองนานนับปี และปีนี้ก็เริ่มมีการปรับไปสู่ PCI-DSS 3.0
ผมมีโอกาสได้คุยกับ Ezra Don Harinsut ผู้ร่วมก่อตั้ง Omise, CTO ของบริษัท Robin Clart, และ CIO ของบริษัท Frederico Araujo
ข้อมูลเปิดเผย ทาง Omise เป็นผู้สนับสนุน Blognone ด้วยการซื้อพื้นที่โฆษณา อย่างไรก็ดีบทความนี้เป็นการติดต่อจากความสนใจของผมเ อง (และจากผู้อ่านที่สังเกตจากยอด like ในข่าว) ไม่ได้เกี่ยวกับการสนับสนุนทางแบนเนอร์

Omise มาทำ Payment Gateway ได้อย่างไร

เรารวมตัวกันเมื่อต้นปีที่ผ่านมาโดยความตั้งใจแรกของ เราคือจะทำระบบอีคอมเมิร์ช และเราพบว่าอุปสรรคอย่างหนึ่งคือไม่มี payment gateway ที่เราต้องการ เราเลยวางแผนพัฒนา payment gateway ของเราเองเข้าไว้ในแผนการพัฒนาด้วย
หลังจากได้คุยกับผู้ลงทุน เราได้รับคำแนะนำว่าควรโฟกัสกับบริการเพียงอย่างเดีย วก่อน และในเมื่อบริการ payment gateway เป็นปัญหาใหญ่อยู่แล้วเราก็สามารถลงมาแก้ปัญหาตรงนี้ และทำบริการที่เป็นธุรกิจได้ ทำให้เราตัดสินใจเข้ามาทำบริการนี้
เราเริ่มพัฒนาเมื่อช่วงกลางปีที่ผ่านมา รวมเวลาพัฒนาจนกระทั่งให้บริการประมาณสี่เดือน โดยพัฒนาบริการบน Amazon Web Service (AWS)
ทำไมเลือกใช้บริการ AWS

มาตรฐาน PCI-DSS เองจะแบ่งหมวดการตรวจสอบเป็น 12 หมวด เช่น ระบบการล็อกอิน, การเข้าถึงข้อมูล, การเข้าถึงตัวเซิร์ฟเวอร์ ฯลฯ บริการ AWS มีบริการ AWS PCI Compliance Package อยู่แล้วโดยทางอเมซอนจะได้รับการตรวจสอบ PCI-DSS 3.0 ไปแล้ว 2-3 หมวดทำให้เราไม่ต้องขอการรับรองในส่วนนี้ซ้ำอีก
กระบวนการตรวจสอบเซิร์ฟเวอร์ใน PCI-DSS เป็นเรื่องใหญ่ เราต้องตรวจสอบการเข้าถึงเซิร์ฟเวอร์, มีบันทึกการเข้าถึงทุกครั้ง, หรือบางครั้งก็ต้องปิดไม่ให้ใช้งานพอร์ต USB บนเซิร์ฟเวอร์เอง กระบวนการเหล่านี้ยุ่งยากและกินเวลาในการตรวจสอบมาก หลายองค์กรเตรียมการขอรับรอง PCI-DSS หลายปีก็ยังไม่สามารถขอได้
AWS PCI Compliance Package จะแยกออกจากบริการปกติและต้องร้องขอเป็นกรณีพิเศษ เซิร์ฟเวอร์เหล่านี้จะถูกแยกออกจากเซิร์ฟเวอร์ทั่วไป และคนที่จะเข้าถึงเซิร์ฟเวอร์ได้ต้องได้รับการรับรอง
ให้บริการทางการเงินโดยใช้ AWS แบบนี้ธนาคารไม่ตกใจ?

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

มาตรฐาน PCI-DSS 3.0 เป็นมาตรฐานเพื่อรับรองว่าระบบของเราปลอดภัยพอที่จะป ระมวลผล, รับส่งข้อมูล, หรือเก็บข้อมูลบัตรเครดิตได้ โดยปกติมาตรฐานนี้จะออกใหม่ทุกสามปีอยู่แล้ว มาถึงปีนี้มาตรฐานก็ออกใหม่อีกครั้งเป็นรุ่น 3.0
โดยปกติแล้วผู้ให้บริการบัตรเครดิตจะให้ยอมเชื่อมต่อ ระบบกับ payment gateway หรือผู้ค้าได้ จะบังคับว่าคนที่มาเชื่อมต่อจะต้องได้รับรอง PCI-DSS รุ่นที่ยังมีผลอยู่เสียก่อน
ส่วนรุ่น 3.0 ที่จริงแล้วรุ่นนี้มีความเปลี่ยนแปลงที่เหมาะกับเราห ลายอย่าง โดยเฉพาะความยืดหยุ่นที่รองรับการให้บริการผ่านคลาวด ์อย่าง AWS ได้ ตัว PCI-DSS 2.0 เองก็กำลังหมดอายุภายในสิ้นปีนี้ ตอนนี้คงไม่มีประโยชน์ที่จะขอรับรองอีกต่อไป
มาตรฐานรุ่น 2.0 เองแม้จะไม่ได้รับรองคลาวด์โดยตรง แต่โดยตัวมาตรฐานก็ระบุว่าในส่วนที่ไม่สามารถควบคุมไ ด้จะต้องมีมาตรการความปลอดภัยเพิ่มเข้ามาทดแทน แต่ก็เป็นงานที่เพิ่มเข้ามา
กระบวนการขอรับรอง PCI-DSS 3.0 เป็นอย่างไร

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

ตัวมาตรฐานเองแบ่งออกเป็นหลายส่วนและเราสามารถเลือกท ี่จะไม่ทดสอบบางส่วนได้ เช่น การเก็บข้อมูลบัตรเครดิตไว้กับเรา ซึ่งจะทำให้เราไม่ต้องผ่านการตรวจสอบอีกหลายอย่าง
แต่การผ่านการรับรองการเก็บหมายเลขบัตรเครดิต จะทำให้เราสามารถให้บริการแบบ tokenize หรือการที่ผู้ใช้ไม่ต้องกรอกเลขบัตรเครดิตใหม่ทุกครั ้งแบบเดียวกับ Amazon หรือ Google Wallet ทำให้ลูกค้าของเราที่เป็นหน้าร้านรับบัตรเครดิตสามาร ถให้บริการลูกค้าได้สะดวกขึ้นมาก
เมื่อได้รับรองแล้วมีข้อจำกัดอะไรเพิ่มเติมบ้าง

หลังจากได้รับรอง เราต้องทำตามแนวทางที่ระบุไว้ก่อนหน้า เราต้องเก็บล็อกบันทึกไว้เป็นเวลานานว่าใครเข้าไปแก้ ไขอะไรด้วยเหตุผลอะไรบ้าง เราต้องอัพเดตช่องโหว่ซอฟต์แวร์ภายในเวลาอันรวดเร็ว
ทุกวันนี้เราใช้ Chef เพื่อเข้าไปแก้ไขอัพเดตระบบในแต่ละครั้ง เวลาที่มีอัพเดตเราต้องทดสอบกับระบบทดสอบล่วงหน้าด้ว ยสคริปต์อัพเดตที่เราเตรียมไว้แต่ละครั้ง จากนั้นก็รันสคริปต์อัพเดตในระบบจริงอีกครั้ง
ข้อจำกัดอย่างหนึ่งของซอฟต์แวร์คือเราต้องขอรับรองให ม่หากมีการแก้ไขโค้ดของระบบ กระบวนการนี้ทำให้เราต้องแบ่งโค้ดออกเป็นสองส่วนคือส ่วนแกนและภายนอกแยกออกจากกัน ส่วนแกนกลางจะไม่ค่อยแก้ไขอะไรนักและการอัพเดตจะอัพเ ดตจากส่วยภายนอกเป็นหลัก
PCI-DSS เป็นการรับรองที่ได้แล้วไม่มีการถอยหลัง ถ้าเราทำพลาดอะไรในอนาคตเราอาจจะไม่ได้รับรองอีก ธุรกิจเราอาจจะจบไปเลย
ร้านค้าที่มาใช้บริการ Omise เองต้องผ่านมาตรฐานความปลอดภัยอะไรไหม?

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

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

ตอนนี้เรามีเสียงเรียกร้องให้มีบริการสำหรับการรับจ่ ายเงินแบบต่อเนื่อง อย่างการสมัครนิตยสารที่ต้องจ่ายเงินอัตโนมัติรายปี หรือบริการรายเดือนต่างๆ
Interview, Information Security, Security




อ่านต่อ...