Tags:
Node Thumbnail

Signal แอพแชทเข้ารหัสได้อัพเดตฟีเจอร์ใหม่สำหรับ iOS และ Android โดยมีรายการปรับปรุงดังนี้

สำหรับ Android อัพเดตเป็นเวอร์ชัน 4.13.6 โดยมีอีโมจิใหม่ 56 แบบ รองรับ Unicode 10.0 และ Emoji 5.0, แถบค้นหาเข้าถึงได้ง่ายขึ้น และตอบรับสายเรียกเข้าได้โดยการปัดขึ้นหรือลง

ส่วนบน iOS นั้นเป็นเวอร์ชัน 2.19.2 โดยมีฟีเจอร์ใหม่ดังนี้

  • รองรับหน้าจอ iPhone X
  • ปรับปรุงเลย์เอาท์โค้ด เพื่อเพิ่มประสิทธิภาพและความยืดหยุ่น ผู้ใช้จะสังเกตได้ถึงความราบรื่นของทุกสิ่งในแอพ
  • ข้อมูลแชทเก่า ๆ สามารถเลื่อนขึ้นไปดูได้ โดยจะปรากฏอัตโนมัติ โดยไม่ต้องกดปุ่ม Load Earlier Messages อีกแล้ว
  • ประมวลผลข้อความไวขึ้น และใช้เครือข่ายได้อย่างมีประสิทธิภาพมากยิ่งขึ้น
  • Jumbomoji แสดงอีโมจิแบบใหม่ที่มีขนาดใหญ่ขึ้นในข้อความที่มีแต่อีโมจิ
  • ระบบรายงานการส่งข้อความล้มเหลวแสดงให้ผู้ใช้เห็นชัดเจนยิ่งขึ้น และส่งซ้ำได้ง่ายขึ้น
  • เพิ่มปุ่ม Tap For More สำหรับข้อความขนาดยาวมาก ๆ
  • การส่งไฟล์, ภาพ และ GIF ปรับปรุงใหม่ ไฟล์แนบจะแสดงพรีวิวบน message bar แทนที่จะมีหน้าจอยืนยันการส่งอีกครั้ง เพื่อให้ส่งไฟล์ได้เร็วขึ้น
  • ผู้ใช้ที่มีคีย์บอร์ดแยกสามารถใช้คีย์ลัด Shift+Return หรือ Command+Return ในการขึ้นไปข้างบนหรือแทนการกดปุ่มส่งตามลำดับ
  • เพิ่มภาษาที่รองรับ คือ Burmese, Hebrew และ Persian

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

  • แอพ Signal เปิดการเชื่อมต่อ TCP กับบริการ Signal
  • บริการ Signal เปิดการเชื่อมต่อ TCP กับ GIPHY HTTPS API endpoint และถ่ายโอนข้อมูลระหว่างแอพและ GIPHY
  • แอพ Signal จะใช้ระบบ TLS ผ่านการเชื่อมต่อ TCP แบบ proxy ในทุก ๆ ช่องทางที่เชื่อมต่อไปยัง GIPHY HTTPS API endpoint

จะเห็นได้ว่า การเชื่อมต่อนั้นผ่าน TLS ในทุกช่องทางที่เข้าสู่ GIPHY ดังนั้นบริการ Signal จะไม่เห็นข้อมูลว่ามีการรับส่งอะไรบ้าง และการเชื่อมต่อ TCP นั้นถูก proxy ผ่านระบบของ Signal เอง ดังนั้น GIPHY ก็จะไม่ทราบว่าใครเป็นคนเรียกข้อมูล (หรือว่าง่าย ๆ คือ Signal จะทำตัวเป็นเหมือน VPN สำหรับทราฟฟิกที่ส่งไปยัง GIPHY นั่นเอง)

แต่ยังไม่จบแค่นั้น Signal กล่าวว่าหากเซิร์ฟเวอร์ที่ให้บริการเกิดปัญหาอย่างเช่นมีผู้บุกรุก ข้อมูลที่ส่งผ่านเซิร์ฟเวอร์ก็จะสามารถวัดได้ว่าข้อมูลมีขนาดเท่าไร ดังนั้น Signal จะใช้วิธีการ padding ด้วยค่าสุ่มเข้าไปอีกชั้นที่ตัว ซึ่งจะทำให้ขนาดข้อมูลที่เห็นโดย Signal ก็จะไม่ใช่ขนาดจริง ด้วยมาตรฐาน RFC 7233 ที่อนุญาตให้ไคลเอนท์สามารถระบุว่าส่วนไหนของไฟล์ที่ต้องการรับจากเซิร์ฟเวอร์ระยะไกล โดยจะใส่เฮดเดอร์ Range เข้าไปใน request และเซิร์ฟเวอร์จะส่งส่วนของคอนเทนต์ตามขนาดไบต์มาให้

ยกตัวอย่างเช่น ไฟล์ขนาด 13 ไบต์ เลือกขนาดบล็อกมา เช่น 6 ไบต์ต่อบล็อก ซึ่งจะทำให้เหลือ 1 ไบต์ในบล็อกสุดท้าย ในส่วนบล็อกสุดท้ายนี้จะใช้วิธีให้บล็อกสุดท้ายเป็นคอนเทนต์จริงเฉพาะไบต์สุดท้าย ส่วนที่เหลือ 5 ไบต์แรกจะเป็น padding ดังนั้นเมื่อผู้ใช้ request ทั้งหมด 3 บล็อก สองบล็อกแรกจะเป็นข้อมูลเต็ม ส่วนบล็อกสุดท้ายก็จะทิ้ง 5 ไบต์ซึ่งเป็น padding ออกไปคงเหลือเฉพาะข้อมูลจริง 1 ไบต์เท่านั้น มาประกอบกันเป็นข้อมูลจริง

รายละเอียดฉบับเต็มและวิธีการทดสอบอ่านได้จาก Signal

ที่มา - Signal, App Store, Google Play

Get latest news from Blognone

Comments

By: hisoft
ContributorWindows PhoneWindows
on 3 December 2017 - 12:26 #1022017
hisoft's picture

Signal แอพแชทเข้ารหัสได้อัพเดตฟีเจอร์ใหม่สำหรับ iOS และ Android

แต่หัวข่าวมีแค่ iOS?

By: nutmos
WriteriPhoneUbuntuWindows
on 3 December 2017 - 15:05 #1022027 Reply to:1022017

ตาม update note นั้น Android ไม่ได้มีการเปลี่ยนแปลงอะไรขนาดนั้นครับ (เน้นเพิ่มฟีเจอร์เล็ก ๆ น้อย ๆ และไม่ได้กล่าวถึงเรื่องการปรับปรุงประสิทธิภาพ) ในขณะที่ iOS เน้นที่การปรับปรุงประสิทธิภาพ แล้วก็ไม่อยากจะเขียนแยกไปคนละข่าว เลยใช้หัวข้อแบบนี้ครับ