# 給開發者的指南

- [技術開發總覽](/gei-kai-fa-zhe-de-zhi-nan/blockchain-dev.md): 區塊鏈技術開發涵蓋從節點運行、智能合約開發到密碼學基礎，是建構去中心化應用的核心技能。
- [密碼學](/gei-kai-fa-zhe-de-zhi-nan/cryptography.md): 密碼學是區塊鏈安全的基石，保護著每一筆交易和每一個錢包。
- [哈希算法](/gei-kai-fa-zhe-de-zhi-nan/cryptography/hash.md): 哈希函數\\(Hash Function或Hash\\)又稱雜湊函數，是一個密碼學黑箱，可以接受任何的數位輸入，基本上是任何東西：抖音影像檔，江山美人mp3檔，你的生日日期，只要輸入進去，就會得到一串固定長度的獨一無二的編號，又稱哈希值。
- [SHA256](/gei-kai-fa-zhe-de-zhi-nan/cryptography/sha256.md): SHA256是Secure Hash Algorithm 256的簡寫，屬於SHA2家族，其中256指的是其產生的哈希值共有256位元\\(bit\\)。目前被發現和MD5、SHA1一樣具有被長度擴展攻擊\\(Length extension attack\\)的風險。
- [SHA3](/gei-kai-fa-zhe-de-zhi-nan/cryptography/sha3.md): SHA3是Secure Hash Algorithm 3的簡寫，相較於先前的SHA0、SHA1和SHA2，SHA3是Secure Hash Algorithm家族的最新標準，因SHA2證實出有被攻擊的風險而誕生。SHA3發明了一種名為海綿函數（sponge function）的算法來防止上述攻擊。
- [Base64](/gei-kai-fa-zhe-de-zhi-nan/cryptography/base64.md): Base64是一個位元對應文字的轉換方式。表格來自Wikipedia如下：
- [Base58](/gei-kai-fa-zhe-de-zhi-nan/cryptography/base58.md): 類似於Base64，由比特幣創辦人Satoshi Nakamoto所提出，將原先的64的字元縮減成58個。
- [哈希碰撞](/gei-kai-fa-zhe-de-zhi-nan/cryptography/peng-zhuang.md): RIPE-MD160.\\
- [曲線密碼學（ECC）](/gei-kai-fa-zhe-de-zhi-nan/cryptography/qu-mi-ecc.md): 橢圓曲線密碼學是區塊鏈公私鑰系統的數學基礎，用較短的金鑰提供高度安全性。
- [零知識證明](/gei-kai-fa-zhe-de-zhi-nan/cryptography/ling-zhi-ming.md): 零知識證明\\(Zero-knowledge Proof或ZK Proof\\)用在許多需要認證卻又無法洩漏資訊的場合。比方說網購平台如果需要會員上傳身分證確認是真人，卻又想保障客戶的隱私，就可以使用ZK Proof在"不看到身份證的情況下，確認這張身份證是真的"。
- [公鏈](/gei-kai-fa-zhe-de-zhi-nan/public-chain.md): 公鏈是對所有人開放的區塊鏈，任何人都可以參與、驗證和使用。
- [創世區塊](/gei-kai-fa-zhe-de-zhi-nan/public-chain/genesis-block.md): 創世區塊（英文：Genesis Block），指是一個區塊鏈網路的初始區塊，也就是帳本的第一頁。
- [主網](/gei-kai-fa-zhe-de-zhi-nan/public-chain/mainnet.md): 主網是區塊鏈正式運作的網路環境，所有真實的交易和資產都在這裡發生。
- [測試網](/gei-kai-fa-zhe-de-zhi-nan/public-chain/undefined-8.md): 測試網是開發者用來測試智能合約和 DApp 的練習場，所有代幣都沒有真實價值。
- [水龍頭](/gei-kai-fa-zhe-de-zhi-nan/public-chain/undefined-8/shui.md): 水龍頭是免費發放測試網代幣的服務，讓開發者可以在測試網上進行開發測試。
- [分片](/gei-kai-fa-zhe-de-zhi-nan/public-chain/fen-pian.md): 分片是將區塊鏈拆分成多個部分同時處理交易的擴容技術。
- [隔離見證](/gei-kai-fa-zhe-de-zhi-nan/public-chain/ge.md): 隔離見證是一種技術，通過把佔用大量存儲空間的區塊的數字簽名重新放置到不同的記 錄\\(也稱為隔離\\)，使每個區塊能進行更多的交易，以達到擴容的目的。區塊鏈上不僅 記載了每筆轉賬的具體信息，還包括了每筆交易的數字簽名以覈實交易的合法性。礦工 在打包區塊的時候需要用數字簽名來驗證每筆交易，確認無誤之...
- [上鏈](/gei-kai-fa-zhe-de-zhi-nan/public-chain/shang.md): 上鏈是將資料或交易記錄永久寫入區塊鏈的過程。
- [跨鏈](/gei-kai-fa-zhe-de-zhi-nan/public-chain/kua.md): 跨鏈是讓不同區塊鏈之間能夠互相通訊和轉移資產的技術。
- [私鏈](/gei-kai-fa-zhe-de-zhi-nan/si.md): 私鏈的完整介紹與說明。
- [Geth](/gei-kai-fa-zhe-de-zhi-nan/si/geth.md): Geth的完整介紹與說明。
- [Parity](/gei-kai-fa-zhe-de-zhi-nan/si/parity.md): Parity的完整介紹與說明。
- [側鏈](/gei-kai-fa-zhe-de-zhi-nan/undefined-7.md): 側鏈是與主網平行運作的獨立區塊鏈，透過雙向橋接與主網互通。
- [節點](/gei-kai-fa-zhe-de-zhi-nan/node.md): 節點（英文：Node）就是一個設備的儲存空間內含某區塊鏈的帳本記錄檔，透過程式與其他相似設備透過網路互相連結（該帳本記錄檔的其他副本）並同步更新。
- [全節點](/gei-kai-fa-zhe-de-zhi-nan/node/quan.md): 全節點（英文：Full-node）就是指該節點設備保存的帳本資訊是完全/完整的，例如 "比特幣全節點"，就是該設備上的比特幣帳本記錄檔完整包含從第一筆比特幣交易到最近一筆的交易紀錄，通通都在上面。 全名可以叫做 - 全帳本節點。
- [輕量節點](/gei-kai-fa-zhe-de-zhi-nan/node/liang.md): 輕量節點（英文：Lightweight-node）就是一個區塊鏈帳本儲存設備，但不一定存有該帳本的完整資料，只存有最近一定量的交易記錄，或是某大類別或時間的交易記錄。但只要有心，一個輕量節點也可以透過其所擁有部份或全部分帳本資訊位置資訊，擴充升級為全節點。
- [分岔](/gei-kai-fa-zhe-de-zhi-nan/fork.md): 分岔（Fork）是區塊鏈程式碼被修改後，導致新舊版本平行共處的狀態。依分岔後新舊版本的相容與否分為硬分岔和軟分岔。
- [軟分岔](/gei-kai-fa-zhe-de-zhi-nan/fork/soft-fork.md): 想像一個圖書館有規定：借書最多 10 本。
- [硬分岔](/gei-kai-fa-zhe-de-zhi-nan/fork/hard-fork.md): 想像一個國家要改用新版護照。
- [UTXO](/gei-kai-fa-zhe-de-zhi-nan/utxo.md)
- [OP\_RETURN](/gei-kai-fa-zhe-de-zhi-nan/op-return.md)
- [Taproot](/gei-kai-fa-zhe-de-zhi-nan/taproot.md)
- [預言機（Oracle）](/gei-kai-fa-zhe-de-zhi-nan/oracle.md)
