課程目錄

課程介紹

本課程涵蓋區(qū)塊鏈開發(fā)全部的必備密碼學技術,包括密碼理論、對稱加密、分組密碼、非對稱加密、單向散列、消息認證、數(shù)字簽名、證書、SSL 等部分。掌握常見的密碼學接口和程序設計。

區(qū)塊鏈技術是21世紀的重大創(chuàng)新技術,它是數(shù)字化資產的分布式賬本,是構建價值互聯(lián)網(wǎng)的基石,是驅動分享經(jīng)濟發(fā)展的新引擎。Go語言是區(qū)塊鏈主流編程語言,簡單易學、開發(fā)速度快且并發(fā)性好。 《Go語言與區(qū)塊鏈》就業(yè)課程涵蓋 go高級編程,go web開發(fā),區(qū)塊鏈密碼學,以太坊,分布式微服務,hyperledger等技術要點,旨在打造基礎扎實、知識面廣、綜合能力強的區(qū)塊鏈應用層及底層技術引領者。

GO區(qū)塊鏈密碼學開發(fā)視頻教程

2019年Go語言與區(qū)塊鏈課程

鏈接: https://pan.baidu.com/s/1rtstZKws3t9L8bcFZmUd3Q 提取碼: gx1r

2019年Go語言與區(qū)塊鏈課程

鏈接: https://pan.baidu.com/s/1rtstZKws3t9L8bcFZmUd3Q 提取碼: gx1r

2019年Go語言與區(qū)塊鏈課程

鏈接: https://pan.baidu.com/s/1rtstZKws3t9L8bcFZmUd3Q 提取碼: gx1r

一 、概念

主要介紹非對稱加密的一些概念。

公鑰、私鑰:均可加密或解密。私鑰用來解密和簽名,給自己用的。公鑰由本人公開,用于加密和驗證簽名,給他人用的。

驗簽:用公鑰解密簽名得到摘要,然后用原始文件經(jīng)過hash得到摘要,與解密出的摘要進行對比。 

簽名:內容->hash->digest->私鑰加密->簽名 

證書:數(shù)字證書則是由證書認證機構(CA)對證書申請者真實身份驗證之后,用CA的根證書對申請人的一些基本信息以及申請人的公鑰進行簽名(相當于加蓋發(fā)證書機構的公章,即CA的私鑰加密生成)后形成的一個數(shù)字文件。

二、舉例說明

假設X給Y寫一份信,那么這封將包含如下三部分內容: 

1、信本身的內容 

2、X的數(shù)字簽名 

3、X的數(shù)字證書

然后Y收到這封信,Y會想這封確定是X發(fā)過來的嗎?這封信在發(fā)送過程中有被篡改,還是完整的嗎?只有當Y確認清楚,才能判斷出信的內容是否可靠。 

然后Y先用ZX提供的公鑰解開數(shù)字證書,根據(jù)得到:如X個人信息,確定是X發(fā)過來的;得到X的公鑰等。

接著,用X的公鑰解開X的數(shù)字簽名就能得到,信本身內容的摘要。然后將信的本身內容經(jīng)hash計算得到又一個摘要,將兩個摘要比較,如果相同說明信的內容沒有被篡改。

BCCSP(Blockchain crypto provider)即區(qū)塊鏈加密提供商,用于定義選擇使用的密碼學實現(xiàn)庫。負責摘要生成,非對稱密鑰的簽名與驗證,根據(jù)證書查找私鑰等。該模塊提供了一系列的接口,這些接口定義了摘要的生成方法,簽名,驗證,加密,解密等。所有自定義的密碼學實現(xiàn)庫都需要實現(xiàn)這些接口,以此達到密碼學算法的可插拔。

目前fabric BCCSP模塊的接口有三種實現(xiàn)類,如下圖所示: 

其中SW(software based)實現(xiàn)方式是直接調用golang提供的庫文件來進行加解密,哈希,簽名驗簽等。 

PKCS11是調用ecdsa來進行加密,解密,哈希,簽名驗簽等,而ecdsa是通過調用動態(tài)運行庫來進行以上功能的完成。

GM國密算法實現(xiàn)方式與PKCS11一致。中間層提供SM2進行簽名與驗簽,SM3進行哈希,SM4實現(xiàn)加密。

郵箱
huangbenjincv@163.com

华池县| 勐海县| 康马县| 务川| 秦安县| 克什克腾旗| 洞口县| 六枝特区| 台南县| 海城市| 涡阳县| 永宁县| 栾川县| 镇江市| 清原| 民县| 丰顺县| 兰溪市| 无为县| 达尔| 库尔勒市| 龙游县| 华蓥市| 乡城县| 女性| 封开县| 白沙| 乡城县| 南华县| 汝州市| 安顺市| 鞍山市| 庄河市| 陆川县| 藁城市| 东光县| 八宿县| 丽江市| 弥勒县| 佛学| 夏津县|