原创 Docker鏡像存儲格式分析

新版本的docker鏡像存儲其實是很繞的,各種ID和目錄定義較多,不是很直觀,本文較詳細的分析一下鏡像本地存儲和在registry存儲的格式。 root@ubuntu:/home# docker pull ubuntu Using defa

原创 密碼學基礎1:RSA算法原理全面解析 1 數論基礎 2 RSA算法原理 3 RSA 密鑰格式實例分析 參考資料

網上寫 RSA 算法原理的文章不少,但是基本上要麼忽略了數學原理的說明,要麼缺少實際的可運行的例子,爲此特寫了此文,將 RSA 需要用到的數學概念和定理都總結了一番,並基於算法原理使用 python 實現了 RSA 密鑰生成和加解密的de

原创 mit6.828-lab5 文件系統 1 文件系統初步 2 文件系統實現 3 Spawning 進程 4 鍵盤接口 5 Shell

lab5是實現文件系統相關功能,exercize實現代碼見 這裏。 1 文件系統初步 JOS文件系統設計相比Linux等系統的文件系統如ext2,ext3等,要簡化不少。它不支持用戶和權限特性,也不支持硬鏈接,符號鏈接,時間戳以及特殊設

原创 mit6.828-lab6 網絡 1 QEMU 虛擬網絡 2 網絡服務器 3 PCI接口、MMIO、DMA 4 傳輸數據包 5 接收數據包及input helper進程 6 WEB服務器

lab6是實現網絡部分,代碼見 這裏 1 QEMU 虛擬網絡 實驗中將使用到QEMU的用戶模式網絡棧,因爲它不需要管理員權限。JOS中通過更新makefile來啓用QEMU的用戶模式的網絡棧以及虛擬的E1000網卡。 QEMU默認提供了

原创 密碼學基礎2:橢圓曲線密碼學原理分析 1 橢圓曲線概述 2 數學基礎 3 橢圓曲線中的羣論 4 有限域橢圓曲線 5 橢圓曲線在密碼學的應用 6 總結 參考資料

早前寫過一篇文章分析 RSA 算法原理後,想了解下更復雜點的橢圓曲線密碼學原理,於是有了密碼學的第二篇筆記。基於橢圓曲線的密碼體系已經在密鑰交換(如ECDHE)和數字簽名(ECDSA)中得到廣泛應用,如比特幣就在其數字簽名算法中用到了橢圓

原创 TCP/IP協議筆記5-ICMP協議及其應用 1 ICMP協議概述 2 Ping 原理分析 3 Traceroute 原理分析 參考資料

1 ICMP協議概述 ICMP(Internet Control Message Protocol)協議是因特網控制報文協議,ICMP常被認爲是網絡層協議,它的報文存在於IP數據報的數據部分,如圖。 因爲ICMP是基於IP數據報的,所以跟

原创 Redis主體流程分析 1 啓動 2 請求處理和響應 3 總結 4 參考資料

網上分析Redis源碼的文章挺多,如黃健宏的《Redis設計與實現》就很詳盡的分析了redis源碼,很贊。前不久看到Paul Smith的較早年份的大作《Redis:under the hood》,受益匪淺,如此從整體上對redis原理有

原创 密碼學基礎3:密鑰文件格式完全解析 1 ASN.1 2 編碼規則 3 密鑰格式解析 4 總結 參考資料

這是密碼學筆記第三篇。之前兩篇分析了 RSA 算法和橢圓曲線密碼學的基本原理,從中可以知道 RSA 算法的本質是大整數質數因子分解,橢圓曲線密碼學的本質是曲線上的打點,樸素的原理後面處處閃耀着數學之光。從理論到實踐,這篇文章來解析下日常使

原创 密碼學基礎3:常見密鑰格式完全解析

這是密碼學筆記第三篇。之前兩篇分別是分析 RSA 和 橢圓曲線密碼的基本原理,本文分析了常見的密鑰格式,以確保在開發中能夠使用正確格式的密鑰。如有錯誤,懇請指正。 1 ASN.1 ASN.1(Abstract Syntax Notati

原创 橢圓曲線密碼學原理分析

之前寫過一篇文章分析過 RSA 算法原理後,想了解下更復雜點的橢圓曲線密碼學原理(Elliptic Curve Cryptography,ECC),於是有了這篇文章。基於橢圓曲線的密碼體系已經在密鑰交換(如ECDHE)和數字簽名(ECDS

原创 TCP/IP協議筆記5-ICMP協議及其應用

1 ICMP協議概述 ICMP(Internet Control Message Protocol)協議是因特網控制報文協議,ICMP常被認爲是網絡層協議,它的報文存在於IP數據報的數據部分,如圖。 因爲ICMP是基於IP數據報的,所以跟

原创 RSA算法原理全面解析

網上寫 RSA 算法原理的文章不少,但是基本上要麼忽略了數學原理的說明,要麼缺少實際的可運行的例子,爲此特寫了此文,將 RSA 需要用到的數學概念和定理都總結了一番,並基於算法原理使用 python 實現了 RSA 密鑰生成和加解密的de

原创 數據結構和算法面試題系列總結

本文是應掘金的邀請參加掘金技術徵文寫的數據結構和算法系列,主要整理自剛畢業那會找工作時寫的博客,代碼都有重寫和測試,希望大家指正。代碼倉庫地址在這裏shishujuan/dsalg: 數據結構與算法系列彙總,如果本系列有幫助到您,歡迎 s

原创 Redis主體流程分析

網上分析Redis源碼的文章挺多,如黃健宏的《Redis設計與實現》就很詳盡的分析了redis源碼,很贊。前不久看到Paul Smith的較早年份的大作《Redis:under the hood》,受益匪淺,如此從整體上對redis原理有

原创 mit6.828-lab5 文件系統

lab5是實現文件系統相關功能,exercize實現代碼見 這裏。 1 文件系統初步 JOS文件系統設計相比Linux等系統的文件系統如ext2,ext3等,要簡化不少。它不支持用戶和權限特性,也不支持硬鏈接,符號鏈接,時間戳以及特殊設