> For the complete documentation index, see [llms.txt](https://www.saladpuk.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.saladpuk.com/cloud/blockchain/smart-contract.md).

# หัดเขียน Smart Contract กัน

จากบทความตอนที่แล้ว เราได้ทำการสร้าง Blockchain ของตัวเองขึ้นมาเรียบร้อยแล้ว ถัดไปในบทความนี้เราก็จะมาลองเขียนโปรแกรมใน **Blockchain** หรือที่เขาเรียกกันว่า **Smart Contract** กันดูบ้างดีกว่า

{% hint style="success" %}
**แนะนำให้อ่าน**\
บทความนี้เป็นหนึ่งในซีรี่ **Blockchain** ดังนั้นถ้าเพื่อนสนใจบทความทั้งหมดตั้งแต่เริ่มต้นว่า Blockchain คืออะไร แล้วจะเริ่มต้นสร้าง Blockchain เป็นของตัวเองได้ยังไง เพื่อนสามารถกดไปอ่านได้จากลิงค์นี้ครับ [👶 Blockchain](https://saladpuk.gitbook.io/learn/cloud/blockchain) และเราก็มีบทความเรื่องอื่นๆที่น่าสนใจซึ่งสามารถกดดูได้จาก Side menu เบย
{% endhint %}

{% hint style="danger" %}
ขออภัยบทความนี้ยังทำไม่เสร็จแต่ผมหลง publish บทความนี้ออกมา เดี๋ยวถ้ามีเวลาจะกลับมาทำต่อครับ ช่วงนี้งานเยอะม๊วก
{% endhint %}

## 🔥 เปิด SSH ให้สามารถเข้าใช้งานได้

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

1.กดเข้าไปที่ `Resource group` ที่เราสร้างตัว Blockchain ของเราไว้ ซึ่งผมตั้งชื่อมันว่า `saladpuk-demo` ดังนั้นผมก็จะเข้าไปในตัวนี้

![](/files/-LoEby2fCVLIWSclLcBM)

2.ถัดไปให้เราหาดูตัวที่มี `TYPE` เป็น **Network security group** ให้เจอ แล้วทำการคลิกเข้าไปในตัว service นั้นเลย ตามรูปด้านล่าง

![](/files/-Lv0GIxzpy1u1sJWEaXD)

3.เราจะเห็นว่าในหมวด Inbound security rules นั้นมันจะไม่ยอมให้เข้าไปใช้ผ่าน SSH ดังนั้นเราก็จะทำการแก้ไขมันหน่อยนึง โดยการจิ้มมันไปหนึ่งทีครับ

![](/files/-LpP4-FoZBpGqt-IfxEh)

4.ถัดไปให้เลื่อนลงไปด้านล่างนิดหน่อยในหมวด **Action** ให้เลือกเป็น **Allow** ไปครับ เพียงเท่านี้เราก็จะสามารถเข้าใช้งาน Blockchain ของเราผ่าน SSH ได้แล้วครับ

![](/files/-LnNZcCMVvpgGJ5EflIb)

## 🔥 เข้าไปเอา connection ของ Blockchain กัน

ในการที่เราจะเข้าไปใช้งาน Blockchain server ของเราได้นั้นเราจะต้องมีตัว Connection ของตัวเซิฟเวอร์ของเราเสียก่อน โดยทำตามขั้นตอนด้านล่างได้เลยครัช

1.เข้าไปที่ `Resource group` ที่เราสร้าง Blockchain ของเราไว้เหมือนเดิม แล้วกดที่ `Deployments` ได้เลย

![](/files/-LnIE2QEBooRFpaxus_P)

2.ถัดมาให้เลือกหาตัวที่ชื่อยาวที่สุดและใช้เวลานานที่สุดครับ ส่วนใหญ่น่าจะเป็นตัวล่าสุดตามรูปเลย

![](/files/-LsoRGTHFvB-pp1ae2P5)

3.คราวนี้ในเมนูให้เลือก **`Outputs`** แล้วเราจะเห็นรายละเอียดการเข้าใช้งานแต่ละส่วนของ Blockchain ของเรา ซึ่งสิ่งที่เราต้องการก็คือ Connection ที่จะเอาไว้เชื่อมต่อผ่าน SSH เข้าไปใช้งานผ่านวง Blockchain ที่เราสร้างไว้ ดังนั้นให้กดคัดลอกด้านหลังสุดของช่องที่ชื่อว่า **ssh\_to\_first\_vl\_node\_region1แล้ว**เอาเก็บไว้ในใช้ในขั้นตอนถัดไปได้เลยครับ

![ถ้ามองไม่ชั้นให้กดที่รูปเพื่อขยายได้นะ](/files/-Lo6OzkHFv6wIDCOPB6a)

**อธิบายเพิ่มเติม**\
ของที่เราทำการ copy มานั้นมันจะประกอบไปด้วยของ 2 อย่างคือตัว Connection กับตัว Port นะครับ ตามรูปสีแดงคือ Connection ส่วนสีน้ำเงินคือ port ครับ ดังนั้นในกรณีของผมคือจะได้เป็น

| ชื่อ           | ค่า                                                            |
| -------------- | -------------------------------------------------------------- |
| **Port**       | 4000                                                           |
| **Connection** | <saladpuk@ethxfjmkv-dns-reg1.southeastasia.cloudapp.azure.com> |

## 🔥 ติดตั้ง Putty

ถัดมาเราจะต้องทำการใช้โปรแกรมช่วยนิดหน่อย เพื่อเชื่อมต่อไปยังตัวเซิฟเวอร์ของเรา ซึ่งถ้าใครใช้ตัวโปรแกรมอื่นเป็นอยู่แล้วก็ใช้ตัวที่ถนัดก็ได้ ส่วนใครไม่เคยใช้ก็ลองโหลดตัว Putty มาลองเล่นได้นะครับจากลิงค์นี้เลย [https://www.putty.org](https://www.putty.org/) เมื่อเข้าไปปุ๊ปก็ให้กดตามรูปเลยครับ

![](/files/-Lo6RZrqhTnihcHYjFhj)

ถัดมาก็ให้เลื่อนลงไปด้านล่างนิสนุง แล้วจะเจอช่องให้ดาวโหลด ก็ทำการเลือกได้เลยว่าเครื่องตัวเองเป็น 32 หรือ 64 bit (ถ้าไม่รู้ก็กดโหลดๆไปเลย ถ้าไม่ได้ก็โหลดอีกตัวเท่านั้นเอง ฮี่ๆ)

![](/files/-LwiaLuv4V3X0cLsDIIK)

หลังจากที่ดาวโหลดมาเสร็จก็ทำการกดเปิดโปรแกรมนั้นขึ้นมาเลยครับ แล้วในช่อง **`Host name`** ให้ใส่ตัว **Connection** กับ **Port** ที่เราไปเอามาจากขั้นตอนที่แล้วลงไป แล้วกดปุ่ม **`Open`** ได้เลยครับ

![](/files/-LqHoGVfzmH8ND6h-_Zn)

ถัดมาเขาจะแจ้งว่าเตือนบลาๆ ให้เรากด **`Yes`** ไปได้เลยครับ

![](/files/-LsozFRMoEIlUunrITvC)

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

![](/files/-Lo6QTntGGfEWBMiRsHB)

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

![](/files/-LtpOKx0qc6Mpe75c-0C)

{% hint style="danger" %}
ขออภัยบทความนี้ยังทำไม่เสร็จแต่ผมหลง publish บทความนี้ออกมา เดี๋ยวถ้ามีเวลาจะกลับมาทำต่อครับ ช่วงนี้งานเยอะม๊วก
{% endhint %}
