iT邦幫忙

cryptography相關文章
共有 43 則文章
鐵人賽 自我挑戰組 DAY 14
30天搞懂Python 系列 第 14 篇

技術 [第14天]30天搞懂Python-密碼學

前言 利用Cryptography函式庫進行密碼學實作 程式實作 安裝Cryptography函式庫 pip install cryptography fr...

鐵人賽 Web 3 DAY 17

技術 Day 17 - Cryptography

Cryptography Synchronization Link Tree Personal Website Medium LinkedIn...

鐵人賽 Web 3 DAY 18

技術 Day 18 - Signature, Sign, Sign Message & Transaction

Signature, Sign, Sign Message & Transaction Synchronization Link Tree Pers...

合約開發特訓班 系列 第 16 篇

技術 密碼學老師 Dan Boneh 寫的應用密碼學課本《A Graduate Course in Applied Cryptography》

學習區塊鏈技術,學到某個時期,很有可能會開始好奇一些與密碼學相關的議題,例如數位簽章(digital signature)。這時可能會感到後悔,大學的時候沒有...

技術 iThome 鐵人賽的連續 30 天發文挑戰 區塊鏈與資安實戰

為什麼選擇輕量級區塊鏈與資安實戰?身為資安系的學生,這是我第一次踏上 iThome 鐵人賽的連續 30 天發文挑戰。這次會定下這個主題,其實源自於今年寒假期間與...

技術 密碼學基礎複習:Hash、非對稱加密與數位簽章在區塊鏈的應用

在昨天我們提到,要在資源受限的環境下建構區塊鏈,必須捨棄沉重的現成框架從零開始。但無論架構再怎麼輕量,區塊鏈之所以被稱為「信任的機器」,完全是建立在幾項核心的密...

技術 輕量級區塊鏈架構探討:共識機制的抉擇

昨天我們用 Hash、非對稱加密和數位簽章,確保了資料的完整性與真實性。但在一個沒有中心化伺服器的分散式網路中,我們面臨著一個更棘手的問題:當多個節點同時產生資...

鐵人賽 Security DAY 29

技術 Day29:今天來聊一下CEH中講的Cryptography

隨著Internet越來越多地使用在商業和個人通訊,保護敏感訊息(例如:信用卡和 個人識別碼(PIN)、銀行帳號和私人消息)變得越來越重要,但也越來越難以實現。...

鐵人賽 Security DAY 30

技術 Day30:今天來聊一下CEH中講的Mail Cryptography

電子郵件加密通過將電子郵件內容加密為不可讀的形式來隱藏竊聽者電子郵件內容。 電子郵件可以通過使用公鑰和私鑰的數位簽章機制進行加密和解密:公鑰是共享的, 而私鑰是...

技術 實作輕量級區塊鏈 (一):定義區塊與區塊鏈資料結構

經過前三天密碼學與共識機制的理論洗禮,今天我們終於要打開編輯器,正式進入寫 Code 的階段了。 為了讓大家能以最直覺的方式理解區塊鏈的底層運作,我選擇使用 J...

技術 輕量架構的應用場景:確保物聯網感測資料上鏈的完整性

在過去的幾天裡,我們從密碼學的 Hash 與數位簽章打底,接著用 JavaScript 親手刻出了區塊資料結構、工作量證明(PoW)以及交易池機制。現在,我們手...

技術 實作輕量級區塊鏈 (三):交易池與 P2P 網路廣播機制初步

我們成功實作了工作量證明(PoW),讓區塊的產生有了合理的節奏。但在前幾天的程式碼中,我們的區塊裡都只放了一筆簡單的 data(例如一個溫濕度數值)。 在真實的...

技術 實作輕量級區塊鏈 (二):實作工作量證明與難度調整

昨天我們成功實作了區塊鏈的基礎資料結構,但如果你有實際執行昨天的程式碼,會發現 addBlock() 幾乎是在一瞬間就執行完畢並把區塊推入陣列中了。 在真實的分...

鐵人賽 Security DAY 16

技術 Day 16. Crypto - 雜湊與現代密碼學

前言 今天還是那個密碼學,不過主要會學習現代密碼學的基本知識,在這之前先補充說明一下 encryption 和 hash 的差別,因為昨天忘了寫。應該不太會出現...

技術 DeFi 應用實作:簡易的去中心化交易所 (DEX) 交易邏輯

昨天我們成功發行了標準的 ERC20 代幣。但代幣如果只能在朋友之間互轉,就無法形成真正的金融市場。在 Web3 的世界裡,要讓代幣具有流動性並能互相兌換,我們...

技術 開發環境建置:Hardhat 與 Foundry 實戰比較與安裝

Remix 確實非常方便,隨開即用,但當我們要把專案規模放大,或是進行嚴謹的資安測試與自動化部署時,網頁版就顯得力不從心了。因此,身為未來的專業開發者與資安人員...

技術 從底層走向應用:智慧合約與 EVM (以太坊虛擬機) 運作原理

我們從零開始探討並實作了輕量級區塊鏈架構。那個微型區塊鏈非常適合用在資源受限的物聯網環境,幫我們解決了資料不可篡改的問題。但是,如果我們想要在區塊鏈上執行更複雜...

技術 實作第一個智慧合約:ERC20 代幣發行

今天,我們終於要來點有成就感的實作了——發行屬於我們自己的加密貨幣(代幣)!在以太坊上,發行代幣最普及的標準就是 ERC20。幾乎所有你在交易所買賣的非原生代幣...

技術 資安攻防 (三):整數溢位與下位 (Overflow/Underflow) 及 SafeMath

今天,我們要來聊聊一個讓無數開發者跌破眼鏡的經典資安問題:整數溢位與下位 在日常生活中,我們都知道 0 - 1 = -1,或者 255 + 1 = 256。但在...

技術 智慧合約開發的生命週期與測試腳本撰寫

寫完 Code 絕對不能直接上主網 在過去兩天中,我們順利開發了 ERC20 代幣與去中心化交易所(DEX)的核心合約。對於傳統軟體開發來說,寫完程式碼、跑起來...

技術 Solidity 基礎語法與型別系統解析

在 Web3 的世界裡,每一行程式碼都與「錢(加密資產)」直接掛鉤,且佈署後無法輕易竄改。因此,今天我們在解析 Solidity 的基礎語法時,我不會只教你怎麼...

技術 資安攻防 (一):重入攻擊 (Reentrancy Attack) 原理與駭客實作

從今天開始,我們將正式踏入本系列賽最硬核、也是我身為資安系學生最期待的章節:「資安攻防大亂鬥」。 提到智慧合約的安全漏洞,我們絕對不能跳過重入攻擊 (Reent...

技術 資安攻防 (二):防禦重入攻擊的最佳實踐

前一篇親手寫了一段駭客合約,利用「重入攻擊」將銀行合約裡的資金瞬間掏空。如果你仔細回顧昨天的攻擊流程,會發現駭客之所以能成功,完全是因為銀行合約在「扣除餘額」之...

技術 預言機操縱的防禦:整合 Chainlink 確保價格報價安全

駭客之所以能得逞,根本原因在於該 DeFi 協議將「單一去中心化交易所(DEX)的資金池」當作唯一的價格來源。在資安領域,我們非常忌諱「單一故障點(Single...

技術 資安攻防 (七):偽造簽章與 ECDSA 簽章重放攻擊 (Replay Attack)

在 Web3 的世界裡,許多專案為了節省使用者的 Gas 費,會採用「鏈下簽章、鏈上驗證」的機制。例如:專案方在自己的伺服器上審核你的資格,然後用專案方的私鑰簽...

技術 資安自動化檢測工具介紹:Slither 靜態分析實戰

在實務的資安稽核中,光靠人眼一行一行去看程式碼(Manual Review)是非常危險且沒有效率的。人類會因為疲勞而漏看一個 unchecked 區塊,或者忽略...

鐵人賽 Security DAY 18

技術 Day 18. Crypto - 非對稱式加密 實戰

前言 這次在 picoCTF 選了一題 RSA 的題目:miniRSA,想自己挑戰的讀者一樣先不要往下看~~ Write-up miniRSA 從題目下載下來的...

技術 資安攻防 (五):預言機操縱 (Oracle Manipulation) 與閃電貸攻擊

前幾篇我們討論的重入攻擊、整數溢位或是權限控制漏洞,大多是單一合約內部「程式碼邏輯」上的瑕疵。但在去中心化金融(DeFi)的世界裡,各個協議就像樂高積木一樣可以...

技術 資安攻防 (六):阻斷服務攻擊 (DoS) 於智慧合約中的展現

在傳統 Web2 世界裡,DoS 通常是指用海量的封包把伺服器頻寬塞爆,讓正常用戶連不上線。但在 Web3 的世界裡,因為有 Gas 機制的存在,駭客很難用「海...

技術 資安攻防 (四):權限控制漏洞與 Ownable 實作缺陷

在 Web3 的世界裡,我們常說「程式碼就是法律」。過去幾天我們討論的重入攻擊與整數溢位,都屬於「邏輯與數學運算」上的漏洞。但現在要探討的是一種極度低級、卻屢見...