軟件的奧秘 加密 密碼 壓縮 搜索是如何工作的

軟件的奧秘 加密 密碼 壓縮 搜索是如何工作的 pdf epub mobi txt 電子書 下載 2025

[美] V. Anton Spraul 著,解福祥 譯
圖書標籤:
  • 計算機科學
  • 密碼學
  • 數據壓縮
  • 信息檢索
  • 軟件工程
  • 算法
  • 數據結構
  • 計算機安全
  • 加密技術
  • 網絡安全
想要找書就要到 靜流書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 人民郵電齣版社
ISBN:9787115461995
版次:1
商品編碼:12185573
品牌:異步圖書
包裝:平裝
開本:16開
齣版時間:2017-09-01
用紙:膠版紙
頁數:185
正文語種:中文

具體描述

編輯推薦

吳漢洪 畢業於中國人民大學,獲經濟學博士學位。現為中國人民大學經濟學院經濟學教授,博士生導師。任中華外國經濟學說研究會理事。比利時魯汶大學高-級訪問學者。軟件驅動著現代世界,但對許多人來說其內部的工作原理仍然是個謎。雖然軟件在背後支撐著CGI圖形、安全網絡購物以及高速的Google搜索,並且我們每天都在使用軟件,但並不是每個人都確切瞭解其工作原理。
如果你想知道在計算機屏幕後麵究竟發生瞭什麼的話,本書將會帶你領略身邊那些軟件的神奇世界。例如,你將學到計算機生成的動畫是如何與現實世界中的鏡頭組閤起來並創造齣逼真特效的;視頻遊戲是如何實時渲染圖形的;哈希函數是如何混淆密碼以使其免受攻擊的;以及Google是如何對搜索結果進行排序的。
本書通俗易懂,具有詳細的解釋和任何人都能理解的直觀圖錶。本書不含任何代碼,故閱讀本無需技術背景。
如果想要瞭解計算機是如何在每天執行我們習以為常卻又很神奇的那些任務,你不必非得成為計算機科學傢,通過閱讀本書,你就可以領略軟件背後的奧秘。
通過閱讀本書,你還將瞭解:
? 加密的工作原理以及不同加密標準的安全程度;
? 如何壓縮視頻以滿足在綫流式播放;
? 數據是如何在龐大的數據庫中被搜索齣來(查找到)的;
? 應用程序是如何在沒有衝突的情況下協同工作的;
? 軟件是如何理解地圖信息並為你導航的。

內容簡介

軟件已經成為人們日常生活與工作中常見的輔助工具,但是對於軟件的工作原理,很多人卻不是非常瞭解。
本書對軟件的工作原理進行瞭解析,讓讀者對常用軟件的工作原理有一個大緻的瞭解。內容涉及數據如何加密、密碼如何使用和保護、如何創建計算機圖像、如何壓縮和存儲視頻、如何搜索數據、程序如何解決同樣的問題而不會引發衝突以及如何找齣路徑等方麵。
本書適閤從事軟件開發工作的專業技術人員,以及對軟件工作原理感興趣的讀者。

作者簡介

V. Anton Spraul,已經為來自世界各地的學生講授瞭15年以上的入門編程和計算機科學。同時他也是《Think Like a Programmer》(《像程序員一樣思考》)和《Computer Science Made Simple》這兩本書的作者。

目錄

第1章 加密 1
1.1 加密目標 2
1.2 換位法:相同的數據,不同的
順序 2
1.2.1 密鑰 4
1.2.2 對加密的攻擊 5
1.3 替換法:替換數據 6
1.3.1 變化替換模式 6
1.3.2 密鑰擴展 9
1.4 高級加密標準 9
1.4.1 二進製基礎 10
1.4.2 AES加密:概述 12
1.4.3 AES中的密鑰擴展 13
1.4.4 AES加密處理流程 14
1.4.5 數據塊鏈接 15
1.4.6 AES為什麼是安全的 16
1.4.7 AES可能遭受的攻擊 17
1.5 私鑰加密的限製 18
第2章 密碼 19
2.1 將密碼轉成數字 19
2.2 MD5散列函數 21
2.2.1 密碼編碼 21
2.2.2 按位運算 22
2.2.3 MD5散列流程 23
2.2.4 達到好的散列函數的
標準 24
2.3 數字簽名 25
2.3.1 身份問題 25
2.3.2 碰撞攻擊 25
2.4 身份認證係統中的密碼 26
2.4.1 危險的密碼錶 26
2.4.2 對密碼進行散列 27
2.4.3 字典式攻擊 27
2.4.4 散列錶 28
2.4.5 散列鏈 29
2.4.6 迭代式散列 32
2.4.7 為密碼“加鹽” 33
2.4.8 密碼錶安全嗎 34
2.5 密碼存儲服務 34
2.6 小結 35
第3章 網絡安全 37
3.1 公鑰加密是如何解決密鑰共享
問題的 37
3.2 公鑰加密所需的數學運算 38
3.2.1 可逆函數(Invertible
Functions) 38
3.2.2 單嚮函數(One-Way
Functions) 39
3.2.3 暗門函數(Trapdoor
Functions) 40
3.3 RSA加密法 42
3.3.1 創建密鑰 42
3.3.2 使用RSA加密數據 44
3.3.3 RSA的效率 45
3.3.4 在真實世界中使用RSA 46
3.3.5 身份認證中的RSA 49
3.4 網絡安全:HTTPS 51
3.4.1 握手 51
3.4.2 在HTTPS下傳輸數據 53
3.5 共享密鑰的問題解決瞭嗎 54
第4章 電影CGI 57
4.1 傳統動畫軟件 59
4.1.1 數字圖像是如何工作的 59
4.1.2 顔色是如何定義的 61
4.1.3 軟件是如何製作cel
動畫的 61
4.1.4 從cel動畫軟件到
渲染式的2D圖形 69
4.2 3D CGI軟件 69
4.2.1 如何描述3D場景 70
4.2.2 虛擬攝像機 71
4.2.3 直接光照 72
4.2.4 全局光照 76
4.2.5 如何進行光綫追蹤 76
4.2.6 全屏抗鋸齒 80
4.3 真實與模擬相結閤 81
4.4 理想化的電影級品質渲染 82
第5章 遊戲圖形 83
5.1 實時圖形的硬件 84
5.2 為什麼遊戲不使用射綫追蹤 85
5.3 隻有直綫,沒有麯綫 85
5.4 不使用射綫追蹤來進行投影 86
5.5 渲染三角形 87
5.5.1 畫傢算法 88
5.5.2 深度緩衝 89
5.6 實時光照 90
5.7 陰影 92
5.8 環境光照和環境遮擋 94
5.9 紋理映射 95
5.9.1 最鄰近采樣 97
5.9.2 雙綫性過濾 99
5.9.3 Mipmaps 100
5.9.4 三綫性過濾 101
5.10 反射 102
5.11 僞造麯綫 104
5.11.1 遠距頂替物 104
5.11.2 凹凸映射 104
5.11.3 麯麵細分 105
5.12 實時抗鋸齒 107
5.12.1 超級采樣 107
5.12.2 多重采樣 109
5.12.3 後期處理抗鋸齒 109
5.13 渲染預算 111
5.14 遊戲圖形展望 112
第6章 數據壓縮 113
6.1 遊程編碼 114
6.2 字典壓縮 116
6.2.1 基本方式 116
6.2.2 哈夫曼編碼 118
6.3 重組數據以獲得更好的壓縮 119
6.3.1 預測編碼 119
6.3.2 量化 120
6.4 JPEG圖像 120
6.4.1 顔色的另一種存儲方式 121
6.4.2 離散餘弦變換 122
6.4.3 二維DCT 125
6.4.4 對DCT處理結果進行
壓縮 128
6.4.5 JPEG圖像質量 131
6.5 壓縮高清視頻 134
6.5.1 時間壓縮 134
6.5.2 MPEG-2視頻壓縮 135
6.5.3 視頻質量與時間壓縮 138
6.6 視頻壓縮的現在和未來 139
第7章 搜索 141
7.1 定義搜索問題 141
7.2 將數據按序存放 142
7.2.1 選擇排序 142
7.2.2 快速排序 143
7.3 二分搜索 146
7.4 索引 148
7.5 散列 150
7.6 網絡搜索 153
7.6.1 為抓取到的網頁結果進行
排名 153
7.6.2 高效地使用索引 155
7.7 網絡搜索的前景 156
第8章 並發 157
8.1 為何需要並發 157
8.1.1 性能 158
8.1.2 多用戶環境 158
8.1.3 多任務處理 158
8.2 並發是如何齣錯的 159
8.3 使並發安全 162
8.3.1 隻讀數據 162
8.3.2 基於事務的處理過程 162
8.3.3 信號量 163
8.4 無限等待的問題 165
8.4.1 有序隊列 166
8.4.2 循環等待造成的飢餓 166
8.5 信號量的性能問題 168
8.6 並發的未來 169
第9章 地圖路徑 171
9.1 軟件中對地圖的定義 171
9.1.1 最佳優先搜索 174
9.1.2 重用之前的搜索結果 177
9.2 一次找齣所有最佳路徑 179
9.2.1 弗洛伊德算法 179
9.2.2 存儲路徑方嚮 182
9.3 路徑查找的未來 185
《探秘代碼:理解軟件運行的底層邏輯》 在這數字化的浪潮席捲而來的時代,我們每天都在與海量的軟件打交道。從智能手機上的應用程序,到復雜的操作係統,再到支撐互聯網運轉的龐大服務器集群,軟件已經滲透到我們生活的方方麵麵,塑造著我們的溝通、工作、娛樂乃至思考方式。然而,有多少人曾停下腳步,真正去探究這些無形的“大腦”是如何思考、如何運作的呢?它們隱藏在屏幕背後的奧秘,究竟是什麼支撐起瞭這個數字世界的運轉? 《探秘代碼:理解軟件運行的底層邏輯》正是一本旨在揭開這些層層麵紗的讀物。它並非一本枯燥的技術手冊,也不是堆砌著晦澀算法的學術專著。相反,這本書以一種抽絲剝繭、循序漸進的方式,帶領讀者深入軟件世界的“心髒地帶”,理解那些看似神秘的操作是如何在底層實現的。我們將從軟件的本質齣發,探尋構成它的基本元素,以及這些元素如何協同工作,最終演變成我們所使用的每一個功能。 一、軟件的“ DNA ”:數據與指令的交響麯 任何軟件,無論其多麼復雜,其核心都離不開兩個最基本的組成部分:數據和指令。這本書將首先深入剖析“數據”的概念。我們會瞭解數據是如何被錶示、存儲和處理的,從最基礎的二進製數字,到更復雜的字符串、數值、圖像、音頻和視頻。我們將探討不同類型的數據在計算機內存中的“語言”,以及為什麼理解這些數據錶示方式對於理解軟件至關重要。例如,一張圖片在計算機看來並非我們視覺所見的色彩斑斕,而是由一係列數字組成的矩陣,而音頻文件則是對聲音波形振幅的采樣記錄。瞭解瞭這些,我們就能理解為什麼文件大小各異,以及為什麼不同格式的文件需要不同的程序來打開。 緊接著,我們將聚焦於“指令”。指令是軟件的“靈魂”,它們告訴計算機“做什麼”。我們會學習指令是如何被設計、組織和執行的。從簡單的算術運算(加、減、乘、除),到邏輯判斷(大於、小於、等於),再到控製流程(循環、分支),這些都是構成復雜指令集的基石。我們將理解,我們所看到的各種用戶界麵操作,例如點擊一個按鈕,輸入一段文字,最終都會被轉化為一係列微小的、有序的機器指令,由中央處理器(CPU)逐條執行。我們會探討指令是如何被翻譯成計算機能夠直接理解的機器碼,以及高級編程語言(如Python、Java、C++)是如何將復雜的指令抽象化,讓開發者能夠更高效地編寫軟件。 二、編織世界的“綫”:算法的藝術與力量 一旦理解瞭數據和指令,我們就將進入軟件的核心——算法。算法是解決問題的一係列清晰、明確的步驟。它如同一個精心設計的藍圖,指導著計算機如何處理數據以達到預期的結果。這本書將重點介紹一些具有代錶性的算法,並用生動形象的比喻和易於理解的示例來說明它們的工作原理。 我們會從最基礎的搜索算法開始。想象一下,你要在一本厚厚的字典裏查找一個單詞,你會怎麼做?你會從頭到尾翻閱嗎?很可能不會。你會利用字典的有序性,快速定位到單詞所在的字母區域,這便是二分查找的雛形。我們將深入探討綫性查找、二分查找等經典搜索算法,分析它們的效率,以及在不同場景下選擇哪種算法更為閤適。當我們處理海量數據時,高效的搜索算法將是必不可少的。 除瞭搜索,排序算法也是軟件中無處不在的。無論是整理你的文件列錶,還是對電商平颱上的商品進行價格排序,背後都離不開排序算法。我們會介紹冒泡排序、選擇排序、插入排序等基礎排序算法,理解它們如何通過一係列比較和交換來將無序的數據變得有序。更進一步,我們會觸及更高效的排序算法,如快速排序和歸並排序,理解它們背後的“分而治之”的思想,以及它們如何顯著提升處理大規模數據的能力。 三、保護秘密與隱私的盾牌:加密技術 在信息爆炸的時代,數據安全和隱私保護已成為重中之重。加密技術便是保護我們數字信息的強大盾牌。本書將揭示加密的神秘麵紗,讓我們瞭解它如何將明文信息轉化為一段難以理解的密文,隻有擁有特定“鑰匙”的人纔能將其還原。 我們會區分對稱加密和非對稱加密。對稱加密如同用一把鎖和一把鑰匙,同一個密鑰既用於加密也用於解密,其速度快,適用於加密大量數據。而非對稱加密則使用一對密鑰,一個公鑰用於加密,一個私鑰用於解密,它解決瞭密鑰分發的難題,是數字簽名和安全通信的基石。我們將探討一些常見的加密算法,例如AES(高級加密標準)和RSA(Rivest–Shamir–Adleman),理解它們的基本原理,以及它們在互聯網安全、數據傳輸中的廣泛應用。瞭解加密技術,不僅能讓我們更好地理解網絡安全,也能讓我們更謹慎地保護自己的數字足跡。 四、壓縮數據的智慧:節省空間與加速傳輸 隨著數據量的急劇增長,如何高效地存儲和傳輸數據成為一個挑戰。壓縮技術應運而生,它通過識彆和消除數據中的冗餘信息,將數據“瘦身”,從而節省存儲空間並加速傳輸速度。 本書將介紹兩種主要的壓縮方法:無損壓縮和有損壓縮。無損壓縮在解壓縮後能夠完全恢復原始數據,適用於文本文件、程序代碼等對數據完整性要求極高的場景。我們會深入瞭解霍夫曼編碼等經典無損壓縮算法,理解它們如何通過統計字符齣現的頻率來分配更短的編碼。而有損壓縮則允許在解壓縮時丟失部分信息,以換取更高的壓縮率,常用於圖像(如JPEG)、音頻(如MP3)和視頻(如MP4)的壓縮。我們將探討JPEG壓縮中離散餘弦變換(DCT)和量化等概念,理解它們如何通過去除人眼不敏感的信息來達到壓縮目的。 五、智能的“尋寶”:搜索的深層機製 除瞭前麵提到的簡單搜索算法,這本書還將觸及更復雜的搜索技術,尤其是在大規模、非結構化數據場景下的搜索。想象一下,我們如何在搜索引擎中快速找到我們想要的信息?如何在一個龐大的文件係統中定位某個文件? 我們將探討文本索引的原理,瞭解搜索引擎是如何在海量網頁中建立索引,從而實現閃電般的搜索速度。我們會介紹倒排索引、全文檢索等概念,理解它們如何將文檔內容映射到關鍵詞,以及關鍵詞如何指嚮具體的文檔。同時,我們也會觸及模糊搜索和近似搜索,理解計算機是如何在不完全匹配的情況下也能找到“接近”的結果,以及在語音識彆、圖像識彆等領域,這些技術所扮演的重要角色。 《探秘代碼:理解軟件運行的底層邏輯》旨在為你打開一扇通往軟件世界大門。它將幫助你從一個普通用戶,轉變為一個對軟件有更深層次理解的“探索者”。通過學習本書,你將不再僅僅滿足於“使用”軟件,而是能夠“理解”軟件。這種理解,將讓你在麵對新的技術時,不再感到無從下手;在遇到軟件問題時,能夠有更清晰的思路去分析;甚至,點燃你對軟件開發産生興趣的火花。這不僅僅是一次知識的探索,更是一次對數字時代運行機製的深刻認知。

用戶評價

評分

“壓縮”和“搜索”這兩個詞,則讓我聯想到瞭日常生活中那些“化繁為簡”的場景。我們是如何將龐大的文件變得小巧,方便傳輸和存儲的?又是如何在海量的信息中快速找到我們所需的那一部分?這本書的齣現,仿佛為我打開瞭一扇通往這些“幕後魔法”的大門。我迫切想知道,那些常見的壓縮算法,比如 ZIP、RAR,它們是如何工作的?是否真的如同傳說中的那樣,通過識彆重復的模式來節省空間?又或者,在某些情況下,它們是以犧牲一部分數據質量為代價來換取壓縮率的?對於搜索,我更加好奇。搜索引擎是如何在眨眼之間,從互聯網的浩瀚海洋中撈齣我們想要的信息的?是采用瞭什麼樣的數據結構來索引海量數據,又依靠怎樣的算法來匹配關鍵詞,並對結果進行排序?這本書是否會觸及倒排索引、B-樹等概念?我希望能從這本書中獲得一些關於這些技術的清晰解釋,甚至能有一些簡單的示例,讓我能夠更好地理解這些在軟件中無處不在卻又常常被我們忽略的功能。

評分

這本書的書名,尤其是“軟件的奧秘”這幾個字,給我一種探索未知領域的興奮感。我一直覺得,我們每天都在使用各種各樣的軟件,但對其內在的運作機製卻知之甚少。這本書就像是一個嚮導,承諾將帶領我們揭開這些“奧秘”。我特彆關注“加密”、“密碼”、“壓縮”和“搜索”這幾個關鍵詞,它們代錶瞭軟件技術中非常核心且實用的部分。我希望這本書能夠以一種易於理解的方式,介紹這些技術的原理和應用。例如,關於加密,我希望能瞭解一些基礎的加密和解密流程,以及一些常見的加密算法的簡單介紹,而不是過於深奧的數學公式。對於壓縮,我很好奇它究竟是如何在不顯著損失信息的前提下,減小文件大小的,這對我處理大量數據時非常有幫助。而搜索,更是我每天都在使用的功能,我想知道它背後是如何做到如此快速和精準的。這本書是否會包含一些圖示或者流程圖,來幫助我們更直觀地理解這些復雜的概念?我非常期待這本書能夠填補我在這些方麵的知識空白。

評分

這本書的書名本身就充滿瞭吸引力,它直擊瞭軟件背後的一些核心“奧秘”。我尤其被“加密”、“密碼”、“壓縮”和“搜索”這些關鍵詞所吸引,因為它們都是我們在日常使用軟件時經常接觸到,但對其工作原理卻瞭解甚少的功能。我一直對數據安全充滿興趣,因此,“加密”和“密碼”這兩部分內容對我來說尤其具有吸引力。我希望這本書能夠以一種深入淺齣的方式,解釋這些安全技術的原理,比如,我們輸入的密碼是如何被存儲和驗證的?又有哪些技術可以防止信息被非法竊取?同樣,“壓縮”也是一個非常實用的技術,它能夠幫助我們節省存儲空間和傳輸時間。我非常好奇,軟件是如何實現文件壓縮的?是否是通過識彆和消除數據中的冗餘信息來實現的?而“搜索”功能,更是我們獲取信息的重要途徑。我希望這本書能夠揭示搜索引擎是如何在海量數據中快速定位我們所需信息的?它是否會介紹一些高效的索引和檢索算法?我期待這本書能讓我對這些軟件的內在機製有一個全新的認識,從而更好地理解和運用這些技術。

評分

這本書的書名就充滿瞭神秘感,讓人不禁好奇“軟件的奧秘”究竟隱藏著怎樣的精彩。我特彆對“加密”和“密碼”這兩個詞匯産生瞭濃厚的興趣。在信息爆炸的時代,數據安全的重要性不言而喻,而加密和密碼正是保障信息安全最關鍵的技術。我一直對那些能夠將原本雜亂無章的數據轉化成隻有特定密鑰纔能解讀的密文的過程感到驚嘆。這本書能否揭示其中的原理?例如,它是否會深入淺齣地講解 RSA、AES 這些耳熟能詳的加密算法?它們背後精妙的數學原理是如何被應用到軟件中的?我渴望瞭解,當我們輸入密碼時,軟件是如何將其與存儲的哈希值進行比對,又為何即使黑客截獲瞭密文,也無法輕易解開?這本書是否會提供一些實例,讓我們能夠更直觀地理解這些概念?或許,它還會探討一些密碼學的曆史發展,以及不同時期加密技術的演進,這將為我們提供更宏觀的視角。總之,我對書中關於加密和密碼的部分充滿瞭期待,希望能藉此機會,深入理解這一充滿智慧的領域。

評分

“軟件的奧秘:加密 密碼 壓縮 搜索是如何工作的”——光是這個書名,就足以勾起我對技術探索的強烈好奇心。作為一個經常與電腦打交道的普通讀者,我對這些看似“幕後”的技術總是充滿瞭敬畏和好奇。尤其是“加密”和“密碼”部分,我常常在思考,我們輸入的密碼是如何被軟件安全地存儲和驗證的?那些我們看到的“星號”背後,究竟發生瞭什麼?這本書能否以一種通俗易懂的語言,解釋這些安全機製的原理?比如,它是否會介紹一些常見的加密算法,並簡要說明它們的工作方式,讓我們明白為什麼即使數據被泄露,也並非完全暴露?同樣,“壓縮”也是一個非常實用的概念,我一直對它如何能夠將巨大的文件變得小巧感到神奇。這本書是否會揭示其中的秘密,例如,它是否會介紹一些數據壓縮的基本思想,以及一些常見的壓縮格式的特點?我非常期待這本書能夠讓我對這些技術有一個更清晰、更深入的認識,不再僅僅停留在“知道它能用”的層麵。

評分

涉及數據如何加密、密碼如何使用和保護、如何創建計算機圖像、如何壓縮和存儲視頻、如何搜索數據、程序如何解決同樣的問題而不會引發衝突以及如何找齣zui佳路徑等方麵

評分

涉及數據如何加密、密碼如何使用和保護、如何創建計算機圖像、如何壓縮和存儲視頻、如何搜索數據、程序如何解決同樣的問題而不會引發衝突以及如何找齣zui佳路徑等方麵

評分

很好。。。。。。。。。。。。。。。

評分

書寫的很好

評分

湊單的,買來看著玩兒,其實密碼學還挺有意思的。京東活動買的還蠻閤適呢。

評分

很好。。。。。。。。。。。。。。。

評分

湊單的,買來看著玩兒,其實密碼學還挺有意思的。京東活動買的還蠻閤適呢。

評分

湊單的,買來看著玩兒,其實密碼學還挺有意思的。京東活動買的還蠻閤適呢。

評分

湊單的,買來看著玩兒,其實密碼學還挺有意思的。京東活動買的還蠻閤適呢。

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.coffeedeals.club All Rights Reserved. 靜流書站 版權所有