发新话题
打印

用开源实现Solaris到Server2008的加密

用开源实现Solaris到Server2008的加密

使消息保密的技术和科学叫做密码编码学,从事此行的人叫密码编码者。破译密文的技术和科学就是密码分析学,从事此行的人是密码分析者。作为数学的一个分支的密码学包括密码编码学和密码分析学,精于此道的人称为密码学家,现代的密码学家通常也是理论数学家。

一、跨平台技术简介  在java之前,跨平台是很痛苦的事情,主要是因为所有对于系统的调用,在不同的操作系统下结果都不一样,简单的来说,int的长度在不同操作系统里面就不一样,甚至于连字节排列的顺序都不同。

调用同一个函数返回的格式也不同,因此,写程序的人自己要对不同的系统非常了解,如果真的需要对不同操作系统进行兼容,要在程序里面写很多if,编译的时候要先判断使用的操作系统,创造很多环境变量才能编译,而且编译好的二进制可执行文件只能在本系统上运行。如果你写的是个功能库供别人调用的,那么光对操作系统的判断就占了代码的绝大部分,而且,还要你在不同平台下进行测试,这可是个艰苦卓绝的工作。建议你有空可以看看apachehttpd服务器的源代码就知道了。自从有了java之后,就把操作系统兼容的工作丢给了jvm了,对于程序员来说就再也不要关心int有几位,还有高位在前还是地位在前的问题了,你只要用java的代码把你程序的逻辑实现出来就可以了,这些兼容的问题就交给jvm去处理吧。这样,如果你写一个程序交付给客户使用,如果客户的环境是运行AIX的,你就不需要在本地也装一个AIX来开发和运行,你可以在windows上完成所有的开发,然后把编译好的文件交给客户就可以了,以后有别的客户需要在Solaris上运行这个程序,你都不用修改,直接拿过去就可以运行,这难道不是一种方便吗?只有被跨平台开发折磨过的人才能更深得体会到用java开发跨平台应用的优势。  二、密码技术简介  使消息保密的技术和科学叫做密码编码学,从事此行的人叫密码编码者。破译密文的技术和科学就是密码分析学,从事此行的人是密码分析者。作为数学的一个分支的密码学包括密码编码学和密码分析学,精于此道的人称为密码学家,现代的密码学家通常也是理论数学家。  密码学要实现的基本功能  数据加密的基本思想是通过变换信息的表示形式来伪装需要保护的敏感信息,使非授权者不能了解被保护信息的内容。网络安全使用密码学来辅助完成在传递敏感信息时的相关问题,主要包括以下几个方面。  1.机密性(confidentiality)  仅有发送方和指定的接收方能够理解传输的报文内容。窃听者可以截取到加密了的报文,但不能还原出原来的信息,及不能知道报文内容。  2.鉴别(authentication)  发送方和接收方都应该能证实通信过程所涉及的另一方确实具有他们所声称的身份,即第三者不能冒充跟你通信的对方。  3.报文完整性(messageintergrity)  即使发送方和接收方可以互相鉴别对方,但他们还需要确保其通信的内容在传输过程中未被改变。  4.不可否认性(non-repudiation)<clk></clk>  如果<nobr oncontextmenu="return false;" onmousemove="kwM(0);" id="clickeyekey0" onmouseover="kwE(event,0, this);" style="COLOR: #6600ff; BORDER-BOTTOM: #6600ff 1px dotted; BACKGROUND-COLOR: transparent; TEXT-DECORATION: underline" onclick="return kwC(event,0)" onmouseout="kwL(event,this)" target="_blank[/img]我们</nobr>收到通信对方的报文后,还要证实报文确实来自所宣称的发送方,发送者事后不可能虚假地否认他发送的消息。这些功能是通过计算机进行社会交流至关重要的需求,就像面对面交流一样。某人是否就是他说的人;某人的身份证明文件(驾驶执照、医学学历或者护照)是否有效;声称从某人那里来的文件是否确实从那个人那里来的;这些事情都是通过鉴别、完整性和抗抵赖来实现的。  加密算法术语  明文:即原始的或未加密的数据。通过加密算法对其进行加密,加密算法的输入信息为明文和密钥。

TOP

TOP

发新话题