C#数据安全手册
基本信息
- 原书名: C# Data Security Handbook
- 原出版社: Wrox
- 作者: Matthew MacDonald,Erik Hohansson
- 译者: 崔伟 毛尧飞
- 丛书名: 清华版WROX公司.NET和Oracle编程经典系列
- 出版社:清华大学出版社
- ISBN:7302067910
- 上架时间:2003-8-6
- 出版日期:2003 年7月
- 开本:16开
- 页码:272
- 版次:1-1
- 所属分类:
计算机 > 软件与程序设计 > C#
编辑推荐
.NET Framework提供数据安全功能的命名空间中实现的一些密码技术从本质上来说是坚不可摧的。导致机密数据暴露给攻击者的一些缺陷,绝大部分都是由应用程序实现中的错误引起的。因此仅仅向用户介绍如何使用.NET中的类是不够的,我们还需要指导他们如何创建可靠的应用程序。
内容简介回到顶部↑
本书主要讲述了如何使用.NET支持的加密技术。首先介绍了.NET支持的密码术,接着介绍散列和签名,讨论了如何通过加密技术来保护通信数据和一些长期保存的数据,重点讨论了密钥和证书管理,此外还列出了一些好的和不好的做法。本书最后通过一个完整的例子演示了前面所讲的技术。
本书适用于创建分布式应用程序或需要安全地存储数据的C#开发人员,旨在帮助C#开发人员创建他们自己的安全应用程序。
.NET Framework提供数据安全功能的命名空间中实现的一些密码技术从本质上来说是坚不可摧的。致机密数据暴露给攻击者的一些缺陷,绝大部分都是由应用程序实现中的错误引起的。因此仅仅向用介绍如何使用.NET中的类是不够的,我们还需要指导他们如何创建可靠的应用程序。
本书将介绍在.NET中使用对称和非对称密码术的基本要点,然后讨论如何在下列几个方面实际运这些技术:
安全数据交换--对于现代的电子商务应用来说,安全的在线通信是至关重要的。我们将讨论如何在应用程序中使用SSL、TLS、安全的远程通信以及实现密码系统安全数据存储--这一点实际上更具挑战性,我们将讨论如何在数据库中以及在使用Windows安全存储API的NT文件系统中安全地存储数据数据完整性--我们将看一下在必须验证数据有无改变的情况下,散列代码和签名所扮演的角色公钥体系结构--对于任何安全应用程序来说,密钥的管理实际上是最为关键的。本书将讨论如何进行密钥管理本书目的在于使那些对密码术了解甚少(或是完全不了解)的C#开发人员能够从容地实现自己的安全用程序。本书适用于那些正在开发分布式应用程序或是希望以一种安全的方式来存储数据的C#开发人员。
本书适用于创建分布式应用程序或需要安全地存储数据的C#开发人员,旨在帮助C#开发人员创建他们自己的安全应用程序。
.NET Framework提供数据安全功能的命名空间中实现的一些密码技术从本质上来说是坚不可摧的。致机密数据暴露给攻击者的一些缺陷,绝大部分都是由应用程序实现中的错误引起的。因此仅仅向用介绍如何使用.NET中的类是不够的,我们还需要指导他们如何创建可靠的应用程序。
本书将介绍在.NET中使用对称和非对称密码术的基本要点,然后讨论如何在下列几个方面实际运这些技术:
安全数据交换--对于现代的电子商务应用来说,安全的在线通信是至关重要的。我们将讨论如何在应用程序中使用SSL、TLS、安全的远程通信以及实现密码系统安全数据存储--这一点实际上更具挑战性,我们将讨论如何在数据库中以及在使用Windows安全存储API的NT文件系统中安全地存储数据数据完整性--我们将看一下在必须验证数据有无改变的情况下,散列代码和签名所扮演的角色公钥体系结构--对于任何安全应用程序来说,密钥的管理实际上是最为关键的。本书将讨论如何进行密钥管理本书目的在于使那些对密码术了解甚少(或是完全不了解)的C#开发人员能够从容地实现自己的安全用程序。本书适用于那些正在开发分布式应用程序或是希望以一种安全的方式来存储数据的C#开发人员。
目录回到顶部↑
第1章 密码术简介
1.1 加密技术简史
1.2 密码术的基础知识
1.2.1 定义
1.2.2 加密功能
1.3 保密性
1.3.1 信息交换
1.3.2 密钥简介
1.3.3 对称密码算法
1.3.4 非对称密码算法
1.4 完整性
1.4.1 mac--消息认证码
1.4.2 签名
1.4.3 安全保存协议
1.5 身份验证
1.6 不可否认性
1.6.1 不可否认案例
1.6.2 不可否认协议
1.7 算法
1.7.1 加密软件出口问题
1.1 加密技术简史
1.2 密码术的基础知识
1.2.1 定义
1.2.2 加密功能
1.3 保密性
1.3.1 信息交换
1.3.2 密钥简介
1.3.3 对称密码算法
1.3.4 非对称密码算法
1.4 完整性
1.4.1 mac--消息认证码
1.4.2 签名
1.4.3 安全保存协议
1.5 身份验证
1.6 不可否认性
1.6.1 不可否认案例
1.6.2 不可否认协议
1.7 算法
1.7.1 加密软件出口问题
前言回到顶部↑
"如果要实现加密系统,要么就出色完成,要么就干脆不要实现"。密码术并不能确保应用程序一定是安全的。如果要免受攻击者的入侵,必须了解潜在的弱点。虽然在.NETFramework安全命名空间中实现的大部分加密算法基本是不会被攻破的,但导致数据暴露的大部分缺陷是由应用程序实现中存在的错误引起的。
尽管密码术背后的实际算法比较复杂,但没有必要详细了解它们。最重要的是正确使用实现这些算法的.NET类。因此,本书将介绍如何充分利用.NET Framework的加密支持,重点是实际问题和良好的编码习惯。
本书读者对象
本书对象是创建分布式应用程序或需要以安全的方式存储数据的C#.NET开发人员。本书旨在使那些了解甚少或不具备加密知识的C#开发人员可以放心地实现他们自己的安全应用程序。
本书主要内容
本书介绍了在.NET Framework和Windows平台中使用对称和非对称的加密技术,并说明如何实际使用这些技术。
第1章--密码术简介
本章通过介绍在新的分布式计算环境下需要考虑的威胁,说明了使用密码术背后的动机。本章介绍了.NET支持的各种密码术的类型和用法。
第2章--.NET密码术
在本章中,首先介绍了.NET的加密服务。我们将对类模型作详细研究,了解它如何与流和加密转换一起工作,如何用新算法和实现来扩展它。
第3章--数据的完整性--散列码和签名
从本章中将学到如何应用散列技术确保数据不被篡改。我们将讨论基本的散列法、密钥散列、数字签名和XML签名标准。
第4章--保护长期保存的数据
本章讨论了如何保护在存储器中存储了很长时间的数据。同时,将看到如何将加密的数据存储到文件、XML文档和数据库中。还将介绍对操作系统功能的支持,如加密文件系统(EFS),以及这些技术在安全应用程序中的作用。
第5章--保护通信数据
在本章中,重点讨论了如何使用密码术和身份验证确保分布式系统中组件间通信的安全。将讨论内置到传输格式(例如可能使用SSL)中的自动(透明的)加密,使用.NET Framework的加密类在将部分数据发送到消息中之前有选择性地进行加密。
第6章--密钥和证书管理
密钥管理是密码术中最为重要的内容,但通常不易于理解。本章将讨论如何将密钥存储在Windows中,如何使用.NET环境访问它们。还将讨论数字证书背后的概念,证书到底是什么,证书的作用和如何管理证书。
第7章--密码术--最佳和最坏做法
要创建安全代码,开发人员不仅需要了解本书介绍的加密原理和概念,还需要深刻理解细节。本章介绍了一些开发人员需要养成的良好做法和应该避免的不好的做法。
尽管密码术背后的实际算法比较复杂,但没有必要详细了解它们。最重要的是正确使用实现这些算法的.NET类。因此,本书将介绍如何充分利用.NET Framework的加密支持,重点是实际问题和良好的编码习惯。
本书读者对象
本书对象是创建分布式应用程序或需要以安全的方式存储数据的C#.NET开发人员。本书旨在使那些了解甚少或不具备加密知识的C#开发人员可以放心地实现他们自己的安全应用程序。
本书主要内容
本书介绍了在.NET Framework和Windows平台中使用对称和非对称的加密技术,并说明如何实际使用这些技术。
第1章--密码术简介
本章通过介绍在新的分布式计算环境下需要考虑的威胁,说明了使用密码术背后的动机。本章介绍了.NET支持的各种密码术的类型和用法。
第2章--.NET密码术
在本章中,首先介绍了.NET的加密服务。我们将对类模型作详细研究,了解它如何与流和加密转换一起工作,如何用新算法和实现来扩展它。
第3章--数据的完整性--散列码和签名
从本章中将学到如何应用散列技术确保数据不被篡改。我们将讨论基本的散列法、密钥散列、数字签名和XML签名标准。
第4章--保护长期保存的数据
本章讨论了如何保护在存储器中存储了很长时间的数据。同时,将看到如何将加密的数据存储到文件、XML文档和数据库中。还将介绍对操作系统功能的支持,如加密文件系统(EFS),以及这些技术在安全应用程序中的作用。
第5章--保护通信数据
在本章中,重点讨论了如何使用密码术和身份验证确保分布式系统中组件间通信的安全。将讨论内置到传输格式(例如可能使用SSL)中的自动(透明的)加密,使用.NET Framework的加密类在将部分数据发送到消息中之前有选择性地进行加密。
第6章--密钥和证书管理
密钥管理是密码术中最为重要的内容,但通常不易于理解。本章将讨论如何将密钥存储在Windows中,如何使用.NET环境访问它们。还将讨论数字证书背后的概念,证书到底是什么,证书的作用和如何管理证书。
第7章--密码术--最佳和最坏做法
要创建安全代码,开发人员不仅需要了解本书介绍的加密原理和概念,还需要深刻理解细节。本章介绍了一些开发人员需要养成的良好做法和应该避免的不好的做法。







点击看大图

加载中...

