เก็บความลับให้พ้นจากโค้ด
เก็บข้อมูลเข้าสู่ระบบอย่างปลอดภัย ไม่ใช่เป็นข้อความธรรมดา
เก็บความลับให้พ้นจากโค้ด เป็นบทเรียน Arduino & IoT Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Arduino & IoT Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Arduino & IoT Academy มีบทเรียนทั้งหมด 4 บทเรียน
บางส่วนของบทเรียนนี้ยังไม่ได้รับการแปล และแสดงเป็นภาษาอังกฤษ
What Counts as a Secret
WiFi passwords, API tokens, and private keys are all secrets. Anything that grants access must never sit in plain sight inside your sketch. 🔑
The Danger of Plaintext Keys
Flash memory can be read back over the wire. A plaintext key in your code is one chip dump away from being copied by anyone.
String apiKey = "AKIA12345SECRET"; // visible to anyone who reads the flashWhy Git Makes It Worse
Commit a secret once and it lives in your history forever. Even after you delete it, the old commit still holds the exposed key.
Use a Separate Header
Put credentials in a small file like secrets.h kept out of version control. This secrets header keeps keys off GitHub while your sketch stays shareable.
#include "secrets.h" // holds WIFI_SSID and WIFI_PASS, never committedIgnore It in Git
Add your secrets file to .gitignore so it can never be committed by accident. This single line prevents most real-world key leaks.
# .gitignore
secrets.hProvision at Setup Time
Instead of baking keys in, enter them once when the device first boots. Provisioning via a config page keeps secrets off your source entirely.
Store in NVS or EEPROM
The ESP32 offers NVS, a key-value store in flash for runtime secrets. You write the token once and read it back on every boot.
preferences.begin("net", false);
preferences.putString("token", userToken);One Device, One Key
Give each unit its own credentials, never a shared master key. With per-device keys, one stolen device can be revoked without touching the rest.
Rotate and Revoke
Plan to change keys on a schedule and kill leaked ones fast. Rotation limits how long any single stolen secret stays useful.
Least Privilege
Give each token only the access it truly needs. Least privilege means a leaked device key can read its own topic, not your whole account.
Scan Before You Push
Tools can catch a key before it reaches a remote repo. A secret scanner in your workflow blocks accidental leaks before they happen.
Quick Check
One of these keeps a key off your public repo.
Recap
Never bake secrets into code. Use a gitignored header, provision at setup, store in NVS, and keep per-device keys you can rotate. 🔐
คำถามที่พบบ่อย
บทเรียน “เก็บความลับให้พ้นจากโค้ด” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “เก็บความลับให้พ้นจากโค้ด” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Arduino & IoT Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Arduino & IoT Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “เก็บความลับให้พ้นจากโค้ด”
เก็บข้อมูลเข้าสู่ระบบอย่างปลอดภัย ไม่ใช่เป็นข้อความธรรมดา คุณปฏิบัติ Arduino & IoT Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Arduino & IoT Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Arduino & IoT Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “เก็บความลับให้พ้นจากโค้ด” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Arduino & IoT Academy นี้ได้ไหม
ได้ บทเรียน Arduino & IoT Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ช่องทางโจมตี IoT ที่พบบ่อย
- เก็บความลับให้พ้นจากโค้ด
- เข้ารหัสด้วย TLS และตรวจสอบใบรับรอง
- ลงลายเซ็นและล็อกเฟิร์มแวร์