原创 雲ids的設計方案

概述 爲了搭建雲IDS平臺,需要選型合適的虛擬化方案,以及對相應部署做一定的優化。基本設計架構爲,在以Centos操作系統安裝的宿主機中再部署IDS虛擬機(基於Centos操作系統)。 本設計文檔所述的設計方案,基於以下環境:

原创 使用Wireshark解密SSL/TLS數據包並調試

使用Wireshark解密SSL/TLS數據 我們使用wireshark抓取的HTTPS數據包,可以使用wireshark通過以下兩種方式直接解密查看 1. 用服務器證書私鑰解碼 第一種方法是:使用服務器證書的私鑰進行解碼。 在I

原创 ALPN協議

協議介紹 ALPN (Application Layer Protocol Negotiation)是TLS的擴展,允許在安全連接的基礎上進行應用層協議的協商。ALPN支持任意應用層協議的協商,目前應用最多是HTTP2的協商。在2

原创 六 數字簽名 - 消息到底是誰寫的

從上一篇文章裏面我們知道,消息認證碼可以識別篡改或者發送者身份是否被僞裝,也就是驗證消息的完整性,還可以對消息進行認證。但是消息認證碼的缺陷就在於它的共享密鑰上面。由於雙方都有共享祕鑰,第三方無法確認是哪一方發出,導致無法防止抵

原创 使用開源庫libuuid庫生成隨機串

libuuid介紹 libuuid是一個開源的用於生成UUID(Universally Unique Identifier,通用唯一標識符)的庫,它的源碼可從https://sourceforge.net/projects/lib

原创 long long類型的主機字節序和網絡字節序轉換

1. 網絡字節序和主機字節序 在網絡編程中經常會碰到網絡字節序和主機字節序。關於網絡字節序和主機字節序在學習前需要理解以下幾個概念。 字節序,指的是字節在內存中存儲的順序,比如一個int32_t類型的數值佔用4個字節,這4個字節在

原创 基於OpenSSL設計旁路解密HTTPS流量

文章目錄1 引言1.1 編寫目的1.2 背景1.3 參考資料2 總體設計2.1 需求概述2.2 總體設計圖2.3 流程設計2.4 功能描述2.5 功能設計2.5.1 SSL/TLS協議解析2.5.2 SSL/TLS建立連接解析Se

原创 SSL/TLS建立連接之狀態切換

本文基於OpenSSL 1.0.2u學習OpenSSL中對SSL/TLS協商過程的實現 協商過程的狀態切換 OpenSSL中服務端ssl3_accept接口實現對協商過程數據包的解析,解析完不同的數據包之後,切換到下一個狀態:

原创 二 分組密碼模式

分組密碼的模式 簡介 前面介紹的DES和AES都屬於分組密碼,它們只能加密固定長度的明文,如果需要加密任意長度的明文,就需要對分組密碼進行迭代,而分組密碼進行迭代,而分組密碼的迭代方法就被稱爲分組密碼的“模式”。 分組密碼有很多種

原创 AES加密算法詳解

簡介 爲比利時密碼學家 Joan Daemen 和 Vincent Rijmen 所設計,又稱 Rijndael 加密算法 常用填充算法:PKCS7 常用分組工作模式:GCM AES的三種密鑰長度 AES的分組長度爲128位

原创 一 對稱密碼

一次性密碼本 一次性密碼本是一種非常簡單,它的原理是“將明文與一串隨機的比特序列進行XOR運算”。如果將硬幣的證明設爲0,反面設爲1,則通過不斷擲硬幣就能產生這樣一串隨機的比特序列。 加密 解密 正如上面所講到的那樣,一次性密

原创 SSL/TLS概述

文章目錄TLS/SSL協議設計目的握手協議TLS安全密碼套件解讀對稱加密和非對稱加密對稱加密AES加密算法詳解對稱加密分組模式非對稱加密混合加密摘要算法數字簽名數字證書和CA TLS/SSL協議 TLS/SSL位於TCP層和應用層

原创 openstack部署之nova

簡介   本次部署nova組件,分別部署nova和nova-compute,nova部署到controller節點,nova-compute部署到另一臺設備,這樣部署說明nova-compute是可以部署多個進行橫向擴展的。下邊開始部署n

原创 選擇排序、插入排序、冒泡排序、希爾排序

簡介 以下總結幾個基礎的排序算法,包括選擇排序、插入排序、冒泡排序、希爾排序,這幾個排序算法是比較簡單的幾個。以下給出算法的分析和代碼示例。 時間複雜度 選擇排序、插入排序、冒泡排序、希爾排序四個排序算法的時間複雜度都是O(n^2)。 算

原创 JSON C庫的使用

創建json對象 (1)函數: extern struct json_object* json_object_new_object(void); 函數說明: 創建一個新的json對象,引用計數1,該具有唯一的所有權。當使用js