Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Decentralized Web Notes #91

Closed
wants to merge 5 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions 00 - Notes/Blockchain คืออะไร.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
version: "0.0.0"
---
uplinks:: [[Genesis]]
tags:: #type/note #lang/th #people/parinyar
# Blockchain คืออะไร ?
**Blockchain** เปรียบเสมือนหนังสือแบบกระจายอำนาจ ที่มีไว้สำหรับจดบันทึกข้อมูลที่เกี่ยวกับความเป็นเจ้าของ ของข้อมูลทุกประเภท ซึ่งถ้าหากเขียนข้อมูลลงไปใน **Blockchain** แล้ว จะไม่สามารถแก้ไขได้ รูปแบบการเก็บข้อมูลภายในนั้นเรียกว่า **Chain of Block** เปรียบเสมือนสายโซ่ล่ามติดกันแต่ละ **Block** นั้นจะถูกเชื่อมโดยใช้ **Hash** ของ **Block** ก่อนหน้า โดย **Block** แรกบนระบบจะถูกเรียกว่า **Genesis-Block**

## ข้อดีของระบบ Blockchain
- ระบบกระจายอำนาจ **Decentralized**
- ทำธุรกรรมได้โดยไม่ต้องเปิดเผยตัวตน **Pseudonymous**
- ข้อมูลทุกอย่างเปิดเผยอย่างโปร่งใส **Transparent**
- ลดความจำเป็นในการเชื่อใจผู้อื่น และยังสามารถทำงานได้อย่างถูกต้อง **Minimal Trust**
- เสถียรและปลอดภัย **Robust**
- ข้อมูลทุกอย่างสามารถตรวจสอบได้ **Audiable / Verifiable**

## Concepts ของ Blockchain
- **[[Cryptographic Key คืออะไร|Cryptographic Key]]**
- **[[โครงสร้างของ Blockchain|Data Structure]]**
- **State Machine**
- **[[Consensus คืออะไร|Consensus]]**

## References

## See Also
11 changes: 11 additions & 0 deletions 00 - Notes/Cryptographic Key คืออะไร.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
version: "0.0.0"
---
uplinks:: [[Genesis]]
tags:: #type/note #lang/th
# Cryptographic Key คืออะไร ?
**Cryptographic Key** ประกอบไปด้วย Public Key เปรียบเสมือนเลขบัญชีธนาคาร และ Private Key เปรียบเสมือนรหัสกดเงิน ซึ่งโดยปกติแล้ว 1 คน สามารถมีได้หลายบัญชีธนาคารในโลกของ **[[What is Blockchain|Blockchain]]** ก็เช่นกัน การที่มี Private Key ของ Public Key นั้นๆ จะสามารถพิสูจน์ได้ว่า เราเป็นเจ้าของ Public Key นั้นจริง จึงจะสามารถทำธุรกรรมบน **[[What is Blockchain|Blockhain]]** ได้ โดยใช้ Public Key นั้น เช่น การโอนเงิน โดยหน้าที่ของ Private Key จะเป็นตัวที่เซ็นต์อนุมัติการทำธุรกรรม เรียกว่าการเซ็นต์ลายเซนต์ดิจิทัล หรือ Digital Signature ซึ่งจะต่างจากโลกความเป็นจริงคือ เราสามารถพิสูจน์ว่าเราเป็นเจ้าของบัญชีได้โดยการมีชื่ออยู่ในสมุดบัญชีนั้น หรือธนาคารเป็นคนยืนยันว่าเราเป็นเจ้าของจริงๆ

## References

## See Also
11 changes: 11 additions & 0 deletions 00 - Notes/Distributed Network คืออะไร.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
version: "0.0.0"
---
uplinks:: [[Genesis]]
tags:: #type/note #lang/th #people/parinyar
# Distributed คืออะไร ?
**Distributed** คือระบบกระจายศูนย์กลางของข้อมูล แต่ยังคงมีเจ้าของเพียงคนเดียวเหมือนกับระบบ **[[Draft-Centralized Network คืออะไร|Centralized]]** เมื่อเทียบกับระบบ **[[Draft-Centralized Network คืออะไร|Centralized]]** แล้วมีความเสถียรกว่า ข้อมูลไม่ได้รวมกันอยู่อยู่จุดเดียว ทำให้ไม่เกิด **Single Point of failure**

## References

## See Also
15 changes: 15 additions & 0 deletions 00 - Notes/Hash คืออะไร.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
version: "0.0.0"
---
uplinks:: [[Genesis]]
tags:: #type/note #lang/th #people/parinyar
# Hash คืออะไร
**Hash** คือ Output ของ Hash Function หลังจากที่เราใส่ Input เข้าไป Hash Function เป็นฟังก์ชั่นอะไรก็ได้ที่เป็นแบบ One way หมายความว่าจะทราบว่า Output คืออะไร แต่ไม่สามารถทราบได้ว่า Input ที่ทำให้ได้ Output ออกมาแบบนี้คืออะไร การเปลี่ยน Input แค่ตัวอักษรเดียวทำให้ Hash เปลี่ยนและไม่ใกล้เคียงก่อนหน้าเลยแม้จะเปลี่ยนแค่ 1 ตัวอักษร วิธีเดียวที่จะรู้ Input ได้ คือต้องสุ่มจนกว่าจะได้ Output ที่ตรงกัน ถึงจะรู้ว่า Input คืออะไร

**ในระบบ Blockchain**, Input คือ ข้อมูลของ Block ก่อนหน้านี้เมื่อทำการใส่ไปยัง Hash Function แล้วค่า Hash ที่ได้มานั้นเปรียบเสมือน ID ของ Block ถ้าข้อมูลภายใน Block เปลี่ยน ID ก็จะเปลี่ยนไปด้วย
ตัวอย่างเช่น มี Block ที่เชื่อมต่อกันในระบบทั้งหมด 3 Block หากข้อมูลของ Block 1st เปลี่ยนแปลง จะกระทบกับ Block 2nd และ 3rd ด้วย เนื่องจาก Block 2nd มีค่า Hash ID ของ Block 1st อยู่และ Block 3rd ก็มี Hash ID ของ Block 2nd อยู่ด้วย ทำให้เมื่อ Block 1st อัพเดทข้อมูล จำเป็นต้องอัพเดททุก Block หลังจาก Block 1st ด้วย


## References

## See Also
15 changes: 15 additions & 0 deletions 00 - Notes/Token คืออะไร.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
version: "0.0.0"
---
uplinks:: [[Genesis]]
tags:: #type/note #lang/th #people/parinyar
# Token คืออะไร ?
**Token** คือ สินทรัพย์ที่ทำหน้าที่เป็นสื่อกลางในการแลกเปลี่ยน และยังเป็นตัววัดมูลค่าได้อีกด้วย โดยแบ่งออกเป็น 2 ประเภท คือ Utility Token และ Security Token แต่ Token ก็ยังสามารถเป็นได้ทั้ง Utility Token และ Security Token พร้อมกันได้

**Utility Token** - ใช้สำหรับการแลกเปลี่ยนสินค้าและบริการต่างๆ
**Security Token** - ใช้สำหรับแสดงความเป็นเจ้าของ ของทรัพย์สินต่างๆ


## References

## See Also
14 changes: 14 additions & 0 deletions 00 - Notes/Tokenomy คืออะไร.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
version: "0.0.0"
---
uplinks:: [[Token คืออะไร]]
tags:: #type/note #lang/th #people/parinyar
# Tokenomy คืออะไร ?
**Tokenomy** คือการใช้ **Token + Economy** ในการสร้างแรงจูงใจที่จะดึงดูดให้คนทั่วไปมาใช้งาน DApps Platform เช่น การแจก Token ให้กับผู้ที่ใช้งานแพลตฟอร์ม ณ ปัจจุบันการออกแบบ Tokenomy ได้กลายเป็นองค์ประกอบที่สำคัญของการพัฒนา DApps แล้ว

## ตัวอย่างการออกแบบ Tokenomy
**App Video Streaming** ได้ออก Utility Token ขึ้นมา เพื่อใช้ในการดูสตรีมมิ่ง โดยให้ผู้ใช้งานทำการซื้อ Utility Token นี้ เพื่อที่จะได้ดูสตรีมมิ่ง ส่วนสตรีมเมอร์ก็ได้ **[[Token คืออะไร|Token]]** จากผู้ใช้งานที่ยอมจ่ายเพื่อดูสตรีมมิ่งของตนเอง และในอนาคตเนื่องจาก Supply ของ **[[Token คืออะไร|Token]]** มีจำนวนจำกัด เมื่อ Demand เยอะขึ้น คนต้องการดูสตรีมมิ่งเยอะขึ้น เลยทำให้เป็นปัจจัยในการทำให้ **[[Token คืออะไร|Token]]** มีมูลค่าสูงขึ้น ซึ่งจะทำให้ผู้คนมีแรงจูใจที่จะซื้อและถือ **[[Token คืออะไร|Token]]** หากพวกเขาเชื่อว่าราคา **[[Token คืออะไร|Token]]** ที่พวกเขาถือ จะเพิ่มขึ้นในอนาคต เนื่องจากพวกเขาสามารถทำกำไรจากการขาย **[[Token คืออะไร|Token]]** หรือนำไปใช้ดูสตรีมมิ่งในราคาที่ถูกกว่าต้นทุนของพวกเขา

## References

## See Also
25 changes: 25 additions & 0 deletions 00 - Notes/โครงสร้างของ Blockchain.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
version: "0.0.0"
---
uplinks:: [[Genesis]]
tags:: #type/note #lang/th #people/parinyar
# Blockchain Data Structure
**Blockchain Data Structure** หรือโครงสร้างของ **[[What is Blockchain|Blockchain]]** โดยแต่ละ **Block** เชื่อมต่อกันแบบ **Chain of Block** เปรียบเสมือนสายโซ่ล่ามติดกันแต่ละ **Block** นั้นจะถูกเชื่อมโดยใช้ **[[Hash คืออะไร|Hash]]** ของ **Block** ก่อนหน้า โดย **Block** แรกบนระบบจะถูกเรียกว่า **Genesis-Block**

## ส่วนประกอบของ Block
**Block** ประกอบไปด้วย **2 ส่วน** คือ **Block Header** และ **Body of the Block (Transactions)**

### Block Header
- **Prev Block Hash**
- **Timestamp**
- **Version**
- **Markel Root Hash**
- **Nonce**
- **Difficulty Target**

### Body of the Block (Transactions)
- **Transaction**

## References

## See Also