1. 首页
  2. 安全技术
  3. 网络安全
  4. java安全性编程实例

java安全性编程实例

上传者: 2019-09-22 00:09:02上传 PDF文件 2.89MB 热度 42次
详细介绍使用keytool生成证书,使用java进行证书检测,消息提取...前言随着的发展,安全性已经引起越来越大的关注。自其诞生起就将安全性作为主要考虑因素之一,随着的发展,更多的安全机制加入到中,在中更是集成了等安全扩展平台。这些安全机制是开发基于企业级应用平台()上安全的应用程序的基础。很多安仝性方面的书籍涉及人量难以理解的理论和概念,而缺乏浅显易懂的实例,使初次进入安全领域的学习者望而生畏。本书以实例为基础,从实例导入基本概念和理论,引导读者逐步进入安全领域。本书以功能和实例为导向,每个小节一个实例完成一个小的功能和知识点。各个实例经过精心简化,只保留最关键部分,因此本书的程序往往数行便可实现关键功能。读者可以方便地进行扩充和加上自己的代码。各个小节的实例像一块块积木,既有独立性又相互间关联,读者可以方便地利用这一块块“积木”搭建出大型的应用。本书共分章,主要内容如下第章解决的主要问题运行本书的程序需要哪些软件?主要内容介绍本书所使用的主要软作及其安装和配置第二章解决的主要问题—一内容的安仝性数据在网上传递怎么样防止被黑客窃听到硬檻上的文件中有敏感数据,如何防止被黑客看到主要内容本章解决的是数据内容的安全性,介绍的加密和解密技术。学元该章可以通过编程对各种数据进行各种形式的加密。密码学也是安仝机制的基础。第三章解决的主要问题——和源代码相关的安全性编写好的稈序给用户后,用户如果能反编译出源代码怎么办定义类、成员变量、方法时如何防止恶意或无意的攻击主要内容本章解决的是和源代码相关的保护。包括源代码、类、成员变量、方法的保护。通过常用的反编译上具加强对源代码保护的认识,使用混淆器和加密等方式对源代码作了初步保护。同时演示了编写程序时如何考虑攻击者对类、成员变量、方法等方面的攻击第四章解决的要问题——确定数据的完整性和所有者网上下载了个程序,如何桷定它确实是某某公司开发的?如何确定黑客没有将程序修改过?某公司或人发来一个文件,后来他不承认发过这个文件怎么办主要内容第四章起开始介绍和身份认证相关的技术。包括身份确定性、不可篡改性、不可否认性等,该章介绍的消息摘要和签名技术可解决这些问题。第五章、第六章解决的主要问题——数字化身份的凭证实际应用中如何方便地使用摘要和签名技术如何确定某个签名确实是某个人或机构的主要内容第扛章和第六章介绍基」摘要和签名技术的数字证书。这是安全中确定身份的主要技术。其中第五章介绍了数字讦书的创建、签发、验证和维护等,第六章介绍了多个证书组成的证书链()的创建和验证。第七章解决的上要问题——数据安全传输,服务器和用户身份的确定客户机和服务器之间的通信如何自动进行加密传输客户机和服务器之间的通信如何相互确定身份浏览器访问一个站点,如何确定这个站点不是黑客的服务器主要内容本章介绍介纽使用加密技术和证书机制的一个实际应用,基于和的编程。学完本章可以编写自己的和客广及服务器程序第八章解决的主要问题基于代码米源的程序的安全运行网上下载了一个程序,运行时会不会删除我的文件,或将某些文件泄漏给黑客编写了一个,如何让其能访问硬盘上的文件主要内容本章介绍基于代码来源的程序的安仝运行,可以基于运行时代码在哪个、或代码是谁签名的限制其可以访问哪些用户资源。还介绍了定义自己的权限以及签名第九章解决的主要问题身份验证和基于执行者身份的程序的安全运行程序需要用户输入账号和口令到数据库登录,但以后可能需要改为智能卡验证。程序需要访问某个用户资源,但只有用户以某些特殊身份登录时才需要该权限主要内容本章介绍验证和授权服务(),可以方便地更换验证模块,并实现基于身份的授权本书实例以帮助读者入门为目的,因此为了易于理解作了很多简化,如很多实例中口令以字符串保存,各个实例的异常处珵都作了简化。因此,在编写实际应用系统时不可照搬本书是作者是认证讲师,多年从事的培训与研究。对于本书的各种意见和建议请至,作者提供网站供读者交流。徐迎晓二○○三年一月于上:海大学木章将介绍木书所使用的软件的安装和设置。其中最主要的软件是安装好该软件后,将可以运行本书绝大部分程序。个别章节中使用的反编译器、混淆器等也在本章作了介绍。安装和配置环境安装反编译器安装混淆器的全称是)。本节介绍其下载、安装、设置以及其中本书所使用的主要⊥具。下载访向,在出现的主页中显示了平台的三种不同版本和本节使用的是单击“链接,在出现的贞面中单击“链接进而选择版本。山于自版本开始集成了各和安全机制和相关的,因此请选择或以上的版本。本书以版本为例双击版本的链接,在出现的下载窗口(中选择行列中的“”链接,最随后出现的协议窗口中单击“”按钮,出现最后的下载窗口,单击“,则提示保存目录并开始下载软件。该软件人小为在上述过程中同时可下载的文档。在文档中包含了多个教程和文档。也可在一些搜索引擎如输入”关键字搜索一些国内的下载站点。安装安装过程如下:()开始安装双击下载的安装程序,在出现的初始安装界面中单击按钮,出现许可协议窗口,选择“”接受协议()选择安装目录接着选择安装目录。不同版本的默认安装目录不同,对于,默认安装目录是不妨单击“按钮,重新设置安装目录为。这样,本书叙述中对不同的改进版本就可以统使用代表的安装日录。继续单击“”按钮。()选择安装的组件在接下来的窗口中选择欲安装的组件(如图),如果使盘空间足够的话不妨安装所有组件。其项是必选的组件提供了组成平台的所有类的源代码。在本书有些章节中会对利用部分源代码米理解各种文档和教程中某些比较含糊的地方。Installshield wizar dSelect com ponentsChoose the cornponents Setup will nstallSelect the compo ents you want to install and clea the commoner ts you do not want to installcriptIoNative ntertace Header -llesLibraries and exec tables for thDemosJava 2 sDK toolsWindows drive only)Space Requ red on C133304Kpace Awailable on C435388K日acNextancel()选择使用的浏览器在图的窗口中单击“”按钮,出现图所示的窗口。在节中将在浏览器中使用来运行,这里可选择所使用的浏览器类型。Installshield啊 izardXSelect browsersJava (tM)Plug-in will be the defAult Java runtime for the following browsers)w :Microsoft Inter et Explorer厂 Netscape bYou may change the default in the JavalTM) Plug-in Control Panolsh己日Next>Cancel结束安装继续单击图中的“”按钮将开始实际的安装过程,最后单击“按钮结束安装。没置的设置主要是设置环境交量,以方便使用安装目录下子目录中的各种工具。由于的编译、运行多在窗∏进行,为了能在任何目录中使用目录下的工具,可在操作系统盘根日录的中加入如下一行则以后每次打开窗口时,会自动将目录加入搜索路径(第一次设置时需重新启动计算机才生效)。在中执行一个稈序时,如果当前目录没有该程序,会自动到等目录査找。如果使用的是或可打开“控制面板”,双击其中的“系统在系统特性窗口单山“髙级”选项卡,进而单击“环境变量”按钮。在岀现的环境变量窗口中,在“系统变量”中选择“”,单击“编辑”按钮,在弹岀的“编辑系统变量”的伭口中变量值最后加上“如图所示。系统性?x常规网络标识硬烨用户配置文伴商级不变量administra-or的用变量r何使用内存J这将景问计算变量C: PyFilets cVcWrellLs业us! iLLEsAuIll L性能选项TMEC: documents and SettinzssAdm in哪找特定类型的信鼠哥淫⑩编辑迎)」壯除m」环变量吧〕系统变量!变量值OS2Li bEH二Htet3210s2 \dllC:WY- Systen32:二H,源让篡抛当错误导致计算机停COM EE. BAT,CMD,V辑系统变量PRCESSOR AR变量名athy1)」辑变量恒Qrer Tool: ABIN: c: 1j2sdk1. 4. 01b:n俯定确定取消单击多次“确定”后,无需重新启动计算机,则每次打开窗凵时将自动将目录加入搜索路径。的主要工具的主要工具安装在目录,这些工具主要功能如下,本书主要使用了其中的和工具基本工具编程语言的编译器。本书各章的程序都是在窗口中通过执行文件名”来编译程序的。文件名必须以为后缀,编译以后生成为后缀的字节码文件。用于执行应用程序。本书各章的程序大都通过在窗口输入“字节码文件名称”来运行编译好的程序。输入命令时,字节码文件名称的后缀不输入。用于牛成文档。在编写稈序时将注释语句写在“”和“”之间则其内容便可被识别,执行“”,自动生成文没有浏览器时可用来运行和调试程序,本书节使用了该工具管理文件。本书多次使用该工具将程序打包成为一个文件,并进而进行进一步的处理调试器头文件和存根的生成器,用于编写本地文件类分解器。可显示宇节码文件的包、标记为及的变量和方法等信息。检测文件的版本冲突工具:生成远程对象的架构和存根。执行后可根据给定的字节码文件生成和文件部署在系统中提供远程对象的注册服务。客户程序可通过该服务找到远程对象。启动激活系统后台程序返回类的国际化工只:将本地编码的文本转换为编码安全工具管理密钥库和证书。本书自第章起大量使用该工具对文件进行签名,并验证文件的签名。木书第章使用它为文件签名,实现基于代码所有者的授权。管理策眳文件的图形界面具。本书第章丌始使用它进行各种授权操作工具提供访问名字服务根据给定的文件牛成绑定,使程序可以使用功能在环境中使客户透明地定位和执行服务器上对象应用程序编写者注册、取消注册、启动、关闭服务器的命令行工具工具用于取消组件的注册修改调用的网页,将其中的标记按照一定格式转换为标记,以便让浏览器使用运行程序本书第章使用了该工具进行转换。是最著名的反编译器,其主贞为,在各个网上各个软件下载站点也多可下载。是命令行工具,本书使用的是不需要安装,只要将可执行文件从其格式的软件包中解开即可。不妨将其解压缩到目汞,这样,在窗口任意目录都可以使用该工只。的格式软件包中还包括一个文件。其部分用法如下()最简单的用法的最简单用法是直接输入“字节码文件名称”,如坐卷反编译,反编译得到的源代码保仔为如果已经存在,会提小是否覆盖。使用命令选项可垗过提小。()使用通配符支持通軋符,如可输入:则将当前目录所有字节码文件进行反编译。()指定输出形式如果希望反编译结果以为后缀,可输入但此时要注意不要覆盖了原有的源代码,尤其加上选项后,覆盖原有文件不会出现提示,更应小心。类似地,可以指定任意后缀。使用选项可以将反编译结果输出到屏幕,如进一步可将其重定向到任意文件名,如使用目录名”选项可指定反编译后的输出文件的目录,若没有目录会自动创建。或将当前目录所有字节码文件反编译到目录。)设置输出内容使用选项则可以使用字节码注释输出结果,得到类似如下的输出使用选项可以输出冗余的大括号(缺省不加大括号)。如语句中只有一条语句也加大括号,如使用选项则对所有类、成员变量和方法使用仝称,如
下载地址
用户评论