🟡 Nostr โปรโตคอล Social network สุด Decentralized ที่อาจเข้ามาแทนที่โซเชียลในอนาคต

🟡 Nostr (Notes and Other Stuff Transmitted by Relays) โปรโตคอล Social network สุด Decentralized ที่อาจเข้ามาแทนที่โซเชียลในอนาคต

PubBit Thailand

PubBit Thailand

post image
Nostr (Notes and Other Stuff Transmitted by Relays)

🌠 Nostr (Notes and Other Stuff Transmitted by Relays) โปรโตคอล Social network สุด Decentralized ที่อาจเข้ามาแทนที่โซเชียลในอนาคต

post image
TL;DR แบบสั้น ๆ

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

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

post image
การกล่าวถึงของ Jimmy Song

🌠Intro

🏖️หากจำกันได้ เมื่อกลางปีที่แล้วเราได้พูดถึง Web 5.0 ของ Jack Dorsey ที่อธิบายเกี่ยวกับความเป็นไปได้ในการใช้โซเชียลมีเดียแบบไร้ศูนย์กลางกันไปแล้วรอบหนึ่ง มาคราวนี้เรามีเทคโนโลยีใหม่ที่อาจทำได้ใกล้เคียงกันมานำเสนอ กับโปรโตคอลใหม่สำหรับสร้าง Decentralized social network ที่เรียกว่า “Nostr”

🏖️ถึงขนาดที่ว่า Jimmy Song ทวีตยกให้ Nostr เป็นเทคโนโลยีใหม่ที่จะเข้ามาเปลี่ยนโลกในระดับเดียวกันกับ Computer, internet, และ Bitcoin เลยทีเดียว

post image
คนดังเริ่มย้ายมา Nostr


🌠คนดังเริ่มย้ายมา Nostr

🏖️ปัจจุบันคนดังสายเทคฯ รวมไปถึง Bitcoiner หลายคนก็ได้หันมาใช้ Nostr ส่งข้อความกันแล้วผ่าน Client เจ้าต่าง ๆ แล้ว โดยหน้าตาของแอปฯ ส่วนใหญ่นั้นออกแบบมาคล้ายคลึงกับ Twitter เลยทีเดียว

🏖️คนดังที่ชื่อคุ้นตาที่ลองมาใช้ Nostr แล้วก็จะมี Jimmy Song, Edward Snowden, Jack Dorsey, Michael Saylor เป็นต้น

post image
Nostr

🌠Nostr คืออะไร

🏖️ Nostr ย่อมาจาก Notes and Other Stuff Transmitted by Relays (บันทึกและสิ่งอื่น ๆ ที่ส่งโดยผ่าน Relay) หรือก็คือเป็นโปรโตคอลหนึ่งที่ออกแบบอย่างเรียบง่าย มุ่งเน้นไปที่การสร้าง Social network ระดับโลกที่สามารถป้องกันการโดนแทรกแซงได้ (Censorship-resistant)

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

post image
คุณสมบัติของ Nostr

🌠คุณสมบัติของ Nostr

🏖️ใช้งานง่าย

โปรโตคอลมีพื้นฐานมาจาก Objects ที่ใช้งานง่ายและยืดหยุ่นที่สุด (ส่งกันไปมาผ่านไฟล์ JSON) และใช้การเข้ารหัสแบบ Elliptic-curve ในการจัดการกุญแจและลายเซ็นดิจิทัล โดยจะรองรับการเชื่อมต่อแบบ websocket จาก Client สู่ relay เพียงเท่านั้น ทำให้ง่ายต่อการออกแบบ Client ที่จะนำมาใช้งานด้วย

🏖️ความคงทน ยืดหยุ่น ป้องกัน Censorship

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

🏖️ตรวจสอบได้

บัญชีของ Nostr ขึ้นอยู่กับการเข้ารหัส Public-private key จึงมั่นใจได้ว่าคนที่ส่งข้อความคือเราจริง ๆ เว้นแต่จะถูกขโมย Public key ไป

Nostr เป็นเพียงแค่โปรโตคอลที่ถูกคิดค้นขึ้นมาเหมือนกับ HTTP และ TCP-IP เป็นเหมือนมาตรฐานสากลที่เปิดให้นักพัฒนาเข้ามาสร้างแอปฯ ใหม่ได้ตลอด จำว่าตัว Nostr นั้นจะไม่ใช่แอปฯ หรือบริการใด ๆ ที่เปิดให้ผู้ใช้ใช้งานได้ทันที ต้องมีการพัฒนา Client ขึ้นก่อนเสมอ

post image
ปัญหาของ Social Network

🌠ทำไมถึงต้องมี Nostr

🏖️โซเชียลมีเดียในปัจจุบันกำลังมีปัญหาหลายอย่าง

-จงใจขาย ยิงโฆษณาให้ผู้ใช้ทีเข้ามาใช้งาน

-มีเทคนิคหลากหลายที่ทำให้ผู้ใช้ติดอยู่กับแพลตฟอร์มเดิม

-จำกัด Content ที่ผู้ใช้สามารถเข้าชมได้ตามอัลกอริทึมของตัวเอง ผู้ใช้ไม่มีสิทธิมีเสียง

-มีอำนาจผูกขาดว่าจะให้ใครเข้าร่วมได้บ้าง (Censorship)

-มีแต่ข้อความ Spam และ Bot

post image
Nostr Client-relay

🌠 Nostr Client-relay คืออะไร

🏖️ส่วนประกอบหลัก ๆ มีสองอย่างคือ Client และ Relay  ผู้ใช้เป็นคนเปิด Client ส่วนใครก็ได้ในโลกสามารถเปิด Relay

🏖️ผู้ใช้จะถูกระบุตัวตนโดย Public key  โพสต์ต่าง ๆ จะมีลายเซ็นของผู้ใช้แนบไปด้วย ซึ่ง Client จะมีหน้าที่ตรวจสอบตรงนี้

🏖️ Client แต่ละเจ้าดึงข้อมูลจาก Relay ที่ออนไลน์อยู่และนำข้อมูลเหล่านั้นมาแสดงผลให้ผู้ใช้  โดย Relay จะไม่พูดคุยกันเอง แต่จะเชื่อมต่อกับผู้ใช้โดยตรง

🌠Client คืออะไร

🏖️Client ที่สร้างโดยใช้ Nostr เป็นเหมือนแอปพลิเคชันที่ให้ผู้ใช้เข้ามาใช้งานแพลตฟอร์มได้บนพื้นฐานของ Nostr เรียกได้ว่าเป็นเหมือนกับ Twitter หรือแอปฯ ทั่ว ๆ ไปนั่นเอง

🌠Relay คืออะไร

🏖️ Relay เป็นเหมือนใจกลางหลังบ้านของโปรโตคอล Nostr คอย คอยเก็บข้อความหรือส่งต่อข้อความของเราให้กับ Client ที่เชื่อมต่ออยู่

🏖️ปัจจุบัน Relay ยังถือว่าใหม่มากและอาจมีการอัปเกรดเพิ่มเติมได้ในอนาคต ถ้าตอนนี้ผู้ใช้รู้สึกว่าใช้ Nostr บางครั้งแล้วยังรู้สึกอืด ๆ อยู่ ส่วนใหญ่มักจะเป็นเพราะปัญหาจากทาง Relay  ดังนั้นตอนนี้ให้เชื่อมกับ Relay เยอะ ๆ ไว้จะดีกว่า

post image
ทำความรู้จัก “Keys”

🌠ทำความรู้จัก “Keys”

🏖️บัญชี Nostr ทุกอันจะมี Private/public key อยู่ด้วยเสมอ ให้คิดง่าย ๆ ว่า Public key เป็นเหมือน Username ไว้เพิ่มเพื่อน ส่วน Private key เป็นเหมือน Password ใช้ล็อกอินเข้าระบบ แต่มีข้อแม้หนึ่งว่า Private key นี้จะไม่สามารถรีเซ็ตใหม่ได้หากทำหายหรือมีคนอื่นรู้เข้า ดังนั้นเมื่อสร้างบัญชีครั้งแรกก็อย่าลืมเก็บ Private key ให้ดี

🏖️Public key จะใช้ชื่อที่อยู่นำหน้าด้วย npub1 ส่วน Private key จะใช้ชื่อนำหน้าด้วย nsec1  

post image
Protocol vs Client

🌠โปรโตคอล vs Client

🏖️Nostr เป็นเพียง ‘โปรโตคอล’ ที่เอาไว้ส่งข้อความไปมาบนอินเทอร์เน็ต

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

“ข้อมูล” แบบเดียวที่อยู่บน Nostr จะเรียกว่า “Event”

post image
การเซ็นยืนยัน Event

🌠การเซ็นยืนยันว่าเป็นเจ้าของข้อมูล “Event”

🏖️Events เหล่านี้จะมีลายเซ็นติดไปด้วยเสมอเพื่อยืนยันความเป็นเจ้าของตัวจริงของผู้เขียน

🏖️ในการสร้างลายเซ็น Client จะต้องใช้ Private key ของผู้ใช้ ดังนั้นแอปฯ ต่าง ๆ ก็จะมีช่องให้ผู้ใช้แปะ Private key ของตัวเอง ซึ่งเป็นเหมือนการล็อกอินเข้าสู่ระบบ เมื่อเข้าได้แล้ว ตัวแอปฯ ก็จะรู้ถึง Public key ของผู้ใช้ด้วย

🏖️สำหรับการใช้งานบน Web app อาจไม่เหมาะกับการก็อปวาง Private key สักเท่าไหร่ ทาง Nostr แนะนำว่าให้ใช้ Browser extension ที่ใช้ฟังก์ชันพิเศษของ Nostr ที่ทำให้ Client สามารถใช้งาน Private key ของผู้ใช้ได้โดยไม่จำเป็นต้องรู้ตัวเลข Key ที่แน่ชัด ตัวอย่างเช่น Flamingo, Alby และ nos2x.

post image
หน้าตาของ “Event”

🌠หน้าตาของ “Event”

🏖️หน้าตาของ Event หรือข้อมูลที่เราส่งกันไปมาในฝั่งของตัวโค้ดจะค่อนข้างเรียบง่าย ตรงไปตรงา

post image
ค้นหาเพื่อนแล้วกดติดตาม

🌠เริ่มหาเพื่อนแล้วกดติดตาม!

🏖️ถ้าเคยใช้ Twitter มาแล้ว อาจลองเข้าไปที่ nostr.directory ดูก่อนเพื่อค้นหาคนดังจาก Twitter ที่คุณเคยติดตามแล้วเขาได้เชื่อมบัญชีกับ Nostr public key เอาไว้

🏖️หรือจะลองใช้แอปฯ ที่มีฟังก์ชันแนะนำคนติดตามให้เลยก็ได้อย่าง Snort และ Iris.to

post image
FAQ

🌠คำถามที่หลายคนอาจสงสัย (FAQ)

🌠ใช้ Client หลายเจ้าได้ไหม

🏖️ได้ หลังจากที่ผู้ใช้ได้สร้าง Private/public key แล้ว ผู้ใช้สามารถนำ Key เดิมนี้ไปล็อกอินบน Client ไหนก็ได้ที่เป็น Nostr client  ข้อมูลต่าง ๆ ของผู้ใช้จะยังคงอยู่เหมือนเดิมครบถ้วน ให้จำไว้เลยว่า Client เปรียบเสมือนหน้าต่างที่เอาไว้เข้าถึง Nostr protocol เฉย ๆ เพียงเท่านั้น

🌠ถ้า Relay ทั้งหมดที่เชื่อมต่ออยู่หยุดทำงาน จะเกิดอะไรขึ้น?

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

🌠ผู้ใช้ควรมี Relay เป็นของตัวเองไหม?

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

post image
ตัวอย่าง Nostr Client

🌠ตัวอย่าง Nostr Client ที่เปิดให้เล่นแล้ววันนี้

Web  Coracle.social /Iris.to/ Snort.social/ astral.ninja
Android Nostros/ amethyst/ Nozzle
iOS Damus
Desktop Gossip


🟡 Nostr โปรโตคอล Social network สุด Decentralized ที่อาจเข้ามาแทนที่โซเชียลในอนาคต