万本电子书0元读

万本电子书0元读

顶部广告

软件的奥秘——加密、密码、压缩、搜索是如何工作的电子书

软件驱动着现代世界,但对许多人来说其内部的工作原理仍然是个谜。虽然软件在背后支撑着CGI图形、安全网络物以及高速的Google搜索,并且我们每天都在使用软件,但并不是每个人都确切了解其工作原理。 如果你想知道在计算机屏幕后面究竟发生了什么的话,本书将会带你领略身边那些软件的神奇世界。例如,你将学到计算机生成的动画是如何与现实世界中的镜头组合起来并创造出逼真特效的;视频游戏是如何实时渲染图形的;哈希函数是如何混淆密码以使其免受攻的;以及Google是如何对搜索结果行排序的。

售       价:¥

纸质售价:¥38.70购买纸书

37人正在读 | 0人评论 6.3

作       者:(美) V. Anton Spraul 斯普劳

出  版  社:人民邮电出版社

出版时间:2017-09-01

字       数:12.5万

所属分类: 科技 > 计算机/网络 > 软件系统

温馨提示:此类商品不支持退换货,不支持下载打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
软件已经成为人们日常生活与工作中常见的辅助工具,但是对于软件的工作原理,很多人却不是非常了解。 本书对软件的工作原理行了解析,让读者对常用软件的工作原理有一个大致的了解。内容涉及数据如何加密、密码如何使用和保护、如何创建计算机图像、如何压缩和存储视频、如何搜索数据、程序如何解决同样的问题而不会引发冲突以及如何找出zui佳路径等方面。 本书适合从事软件发工作的专业技术人员,以及对软件工作原理感兴趣的读者。 软件已经成为人们日常生活与工作中常见的辅助工具,但是对于软件的工作原理,很多人却不是非常了解。 本书对软件的工作原理行了解析,让读者对常用软件的工作原理有一个大致的了解。内容涉及数据如何加密、密码如何使用和保护、如何创建计算机图像、如何压缩和存储视频、如何搜索数据、程序如何解决同样的问题而不会引发冲突以及如何找出zui佳路径等方面。 本书适合从事软件发工作的专业技术人员,以及对软件工作原理感兴趣的读者。
【推荐语】
软件驱动着现代世界,但对许多人来说其内部的工作原理仍然是个谜。虽然软件在背后支撑着CGI图形、安全网络物以及高速的Google搜索,并且我们每天都在使用软件,但并不是每个人都确切了解其工作原理。 如果你想知道在计算机屏幕后面究竟发生了什么的话,本书将会带你领略身边那些软件的神奇世界。例如,你将学到计算机生成的动画是如何与现实世界中的镜头组合起来并创造出逼真特效的;视频游戏是如何实时渲染图形的;哈希函数是如何混淆密码以使其免受攻的;以及Google是如何对搜索结果行排序的。 本书通俗易懂,具有详细的解释和任何人都能理解的直观图表。本书不含任何代码,故阅读本无需技术背景。 如果想要了解计算机是如何在每天执行我们习以为常却又很神奇的那些任务,你不必非得成为计算机科学家,通过阅读本书,你就可以领略软件背后的奥秘。 通过阅读本书,你还将了解: ? 加密的工作原理以及不同加密标准的安全程度; ? 如何压缩视频以满足在线流式播放; ? 数据是如何在庞大的数据库中被搜索出来(查找到)的; ? 应用程序是如何在没有冲突的情况下协同工作的; ? 软件是如何理解地图信息并为你导航的。
【作者】
V. Anton Spraul已经为来自世界各地的学生讲授了15年以上的门编程和计算机科学。同时他也是《Think Like a Programmer》(《像程序员一样思考》)和《Computer Science Made Simple》这两本书的作者。
目录展开

内容提要

作者简介

技术审阅者简介

致谢

前言

第1章 加密

1.1 加密目标

1.2 换位法:相同的数据,不同的顺序

1.2.1 密钥

1.2.2 对加密的攻击

1.3 替换法:替换数据

1.3.1 变化替换模式

1.3.2 密钥扩展

1.4 高级加密标准

1.4.1 二进制基础

1.4.2 AES加密:概述

1.4.3 AES中的密钥扩展

1.4.4 AES加密处理流程

1.4.5 数据块链接

1.4.6 AES为什么是安全的

1.4.7 AES可能遭受的攻击

1.5 私钥加密的限制

第2章 密码

2.1 将密码转成数字

好的散列函数的特征

2.2 MD5散列函数

2.2.1 密码编码

2.2.2 按位运算

2.2.3 MD5散列流程

2.2.4 达到好的散列函数的标准

2.3 数字签名

2.3.1 身份问题

2.3.2 碰撞攻击

2.4 身份认证系统中的密码

2.4.1 危险的密码表

2.4.2 对密码进行散列

2.4.3 字典式攻击

2.4.4 散列表

2.4.5 散列链

2.4.6 迭代式散列

2.4.7 为密码“加盐”

2.4.8 密码表安全吗

2.5 密码存储服务

2.6 小结

第3章 网络安全

3.1 公钥加密是如何解决密钥共享问题的

3.2 公钥加密所需的数学运算

3.2.1 可逆函数(Invertible Functions)

3.2.2 单向函数(One-Way Functions)

3.2.3 暗门函数(Trapdoor Functions)

3.3 RSA加密法

3.3.1 创建密钥

3.3.2 使用RSA加密数据

3.3.3 RSA的效率

3.3.4 在真实世界中使用RSA

3.3.5 身份认证中的RSA

3.4 网络安全:HTTPS

3.4.1 握手

3.4.2 在HTTPS下传输数据

3.5 共享密钥的问题解决了吗

第4章 电影CGI

4.1 传统动画软件

4.1.1 数字图像是如何工作的

4.1.2 颜色是如何定义的

4.1.3 软件是如何制作cel动画的

4.1.4 从cel动画软件到渲染式的2D图形

4.2 3D CGI软件

4.2.1 如何描述3D场景

4.2.2 虚拟摄像机

4.2.3 直接光照

4.2.4 全局光照

4.2.5 如何进行光线追踪

4.2.6 全屏抗锯齿

4.3 真实与模拟相结合

4.4 理想化的电影级品质渲染

第5章 游戏图形

5.1 实时图形的硬件

5.2 为什么游戏不使用射线追踪

5.3 只有直线,没有曲线

5.4 不使用射线追踪来进行投影

5.5 渲染三角形

5.5.1 画家算法

5.5.2 深度缓冲

5.6 实时光照

5.7 阴影

5.8 环境光照和环境遮挡

5.9 纹理映射

5.9.1 最邻近采样

5.9.2 双线性过滤

5.9.3 Mipmaps

5.9.4 三线性过滤

5.10 反射

5.11 伪造曲线

5.11.1 远距顶替物

5.11.2 凹凸映射

5.11.3 曲面细分

5.12 实时抗锯齿

5.12.1 超级采样

5.12.2 多重采样

5.12.3 后期处理抗锯齿

5.13 渲染预算

5.14 游戏图形展望

第6章 数据压缩

6.1 游程编码

6.2 字典压缩

6.2.1 基本方式

6.2.2 哈夫曼编码

6.3 重组数据以获得更好的压缩

6.3.1 预测编码

6.3.2 量化

6.4 JPEG图像

6.4.1 颜色的另一种存储方式

6.4.2 离散余弦变换

6.4.3 二维DCT

6.4.4 对DCT处理结果进行压缩

6.4.5 JPEG图像质量

6.5 压缩高清视频

6.5.1 时间压缩

6.5.2 MPEG-2视频压缩

6.5.3 视频质量与时间压缩

6.6 视频压缩的现在和未来

第7章 搜索

7.1 定义搜索问题

7.2 将数据按序存放

7.2.1 选择排序

7.2.2 快速排序

7.3 二分搜索

7.4 索引

7.5 散列

7.6 网络搜索

7.6.1 为抓取到的网页结果进行排名

7.6.2 高效地使用索引

7.7 网络搜索的前景

第8章 并发

8.1 为何需要并发

8.1.1 性能

8.1.2 多用户环境

8.1.3 多任务处理

8.2 并发是如何出错的

8.3 使并发安全

8.3.1 只读数据

8.3.2 基于事务的处理过程

8.3.3 信号量

8.4 无限等待的问题

8.4.1 有序队列

8.4.2 循环等待造成的饥饿

8.5 信号量的性能问题

8.6 并发的未来

第9章 地图路径

9.1 软件中对地图的定义

9.1.1 最佳优先搜索

9.1.2 重用之前的搜索结果

9.2 一次找出所有最佳路径

9.2.1 弗洛伊德算法

9.2.2 存储路径方向

9.3 路径查找的未来

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部