區塊鏈技術及應用課程的主要目的是讓學生了解區塊鏈的起源、發展以及各行業的應用需求;理解和掌握區塊及鏈、密碼技術、共識機制、激勵機制、智能合約、P2P網絡等的基本原理和實踐應用,掌握比特幣、以太坊、Hyperledge fabric等區塊鏈技術的實踐應用;領會區塊鏈的設計思想,了解區塊鏈的發展趨勢在各行業的應用方案。
區塊鏈技術及應用
課程大綱
一、課程目的
區塊鏈技術及應用課程的主要目的是讓學生了解區塊鏈的起源、發展以及各行業的應用需求;理解和掌握區塊及鏈、密碼技術、共識機制、激勵機制、智能合約、P2P網絡等的基本原理和實踐應用,掌握比特幣、以太坊、Hyperledge fabric等區塊鏈技術的實踐應用;領會區塊鏈的設計思想,了解區塊鏈的發展趨勢在各行業的應用方案。
二、 課程性質
本課程為計算機科學與技術專業的專業選修課程,是掌握新一代信息技術必不可少的課程之一。
三、先修課程
本課程的先修課程:高級語言程序設計、計算機安全學、計算機網絡等。
四、課程內容
第1章 區塊鏈概述
(一)基本要求
1.掌握:區塊鏈思想,區塊鏈價值,區塊鏈技術原理;
2.理解:區塊鏈和信息安全、密碼技術的關系;
3.了解:區塊鏈的發展史、能解決的行業問題以及未來的發展趨勢。
(二)教學及考核內容
1. 構建誠信社會
2. 區塊鏈與密碼學
3. 區塊鏈技術原理
第2章 密碼學基礎
(一)基本要求
1.掌握:Hash函數,公鑰密碼體制,數字簽名,OpenSSL密碼庫;
2.理解:密碼算法的原理與應用,區塊鏈與密碼學的關系;
3.了解:密碼學與信息安全的關系。
(二)教學及考核內容
1. 區塊鏈與密碼學
2. Hash函數及算法實現
3. 公鑰密碼體制及算法實現
4. 數字簽名及算法實現
5. 密鑰管理
第3章 比特幣技術
(一)基本要求
1.掌握:編程實現創世區塊及索引;
2.掌握:編程實現交易,交易數據結構;
3.理解:交易原理;
4.理解:區塊及索引的數據結構;
(二)教學及考核內容
1. 比特幣技術原理
2.交易生成
3. 交易數據解讀
第4章 共識機制
(一)基本要求
1.掌握:典型共識算法及實現;
2.理解:分布式及共識機制的思想;
3.了解:零知識證明協議。
(二)教學及考核內容
1. 共識機制簡介
2. POW機制與比特幣挖礦
3. POS機制
4. DPOS機制
5. PBFT機制
第5章 智能合約
(一)基本要求
1.掌握:比特幣腳本編寫;
2.理解:智能合約原理及意義;
(二)教學及考核內容
1. 輸入和輸出腳本;
2. 標準交易腳本;
第6章 P2P網絡
(一)基本要求
1.掌握:P2P網絡協議及網絡編程;
2.理解:比特幣網絡;
(二)教學及考核內容
1. 網絡協議
2. 網絡節點
3. 網絡初始化、關閉
第7章 以太坊
(一)基本要求
1.理解:以太坊技術原理
2.理解:以太坊技術開發平臺
(二)教學及考核內容
1. 以太坊智能合約簡介
2. 以太坊虛擬機
第8章 Hyperledge Fabric超級賬本
(一)基本要求
1.了解超級賬本的發展情況
2. 理解超級賬本的原理
3. 了解超級賬本的應用場景
4. 掌握超級賬本的環境搭建
(二)教學及考核內容
1. 超級賬本項目
2. Hyperledge Fabric項目開發
五、教學方法和教學手段
1.線上課程為主,根據情況適時調整。
2.使用學者網平臺(管理)+騰訊課堂(直播)。
六、教材及教學參考資料
1.《精通比特幣》(第2版),Andreas M.Antonopoulos;
2.《區塊鏈:技術驅動金融》,阿爾文德·納拉亞南等,2016.08,中信出版社;
3.《以太坊技術詳解與實戰》,閆鶯等,2018.4,機械工業出版社;
4.《Hyperledge fabric技術內幕》,李鑫,2019.4,機械工業出版社。
七、考核方法及成績評定
1. 平時:40%(上課,作業);
2. 期末:60%(考核方式待定)。