Java实用技术学习--Java自学网

1.加密算法
                  2.文件上传下载
                  3.JFreeChart
                  4.POI
                  5.任务调度
                  6.findBugs
                              加密算法介绍
====================================================================================
 
单钥密码体制(对称算法):是一种传统的加密算法,是指信息的发送方和接收方共同使用同一把密钥进行加解密。单钥密码体制的代表是美国的DES
公钥体系(非对称算法):在公钥体制中,加密密钥不同于解密密钥,加密密钥公之于众,谁都可以使用;解密密钥只有解密人自己知道。它们分别称为公开密钥(Public key)和秘密密钥(Private key)。迄今为止的所有公钥密码体系中,RSA系统是最著名、最多使用的一种。
消息摘要:一个消息摘要就是一个数据块的数字指纹。两个不同的报文难以生成相同的摘要;难以对指定的摘要生成一个报文。代表:美国国家标准技术研究所的SHA1和麻省理工学院Ronald Rivest提出的MD5
数字签名:就是信息发送者用其私钥对从所传报文中提取出的特征数据(或称数字指纹)进行RSA算法操作,以保证发信人无法抵赖曾发过该信息(即不可抵赖性),同时也确保信息报文在经签名后末被篡改(即完整性)。当信息接收者收到报文后,就可以用发送者的公钥对数字签名进行验证。代表:DSA
 

                                                      DES加密算法2-1
==========================================================================================================================
 
美国国家标准局1977年1月采纳IBM公司设计的数据加密标准(Data Encryption Standard)。DES算法在POS、ATM、磁卡及智能卡(IC卡)等领域被广泛应用。
DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。
在网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。
 
                                                      DES加密算法2-2
 
KeyGenerator keygen = KeyGenerator.getInstance("DES");
desKey = keygen.generateKey();
cipher.init(Cipher.ENCRYPT_MODE, desKey );
ob[0] = Digit[(ib >>> 4) & 0X0F]; //右移后高四位成了低四位,0X0F=1111=15
ob[1] = Digit[ib & 0X0F];  //与1111后高四位全部丢失
 

                                                      MD5     Message-Digest Algorithm 5(信息-摘要算法)
===========================================================================
 
MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest开发出来,经MD2、MD3和MD4发展而来。它的作用是让大容量信息在用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。
2004年8月,山东大学的王小云教授做了破译MD5、HAVAL-128、 MD4和RIPEMD算法的报告。王小云教授的报告缘何引起如此大的反响?因为她的研究成果作为密码学领域的重大发现宣告了固若金汤的世界通行密码标准MD5的堡垒轰然倒塌,引发了密码学界的轩然大波。
 
 
 

                                                      文件上传组件 
====================================================================================================================================================================================================================================================================================
 
在上传文件到服务器时,必须要使用ENCTYPE=“multipart/form-data”的编码方式,并且不能直接使用request.getParameter()来取得。
至于所使用的方法有很多种,比如:
jspsmart公司的jspsmartupload组件
O`Rrilly公司的cos组件
Jakarta Apache公司的commonsFileUpload组件
JavaZoom的uploadbean组件
还有Struts组件中自带的org.apache.struts.upload类工具

文章转载自 http://www.javalearns.com/Html/?1831.html


更多Java知识学习请访问 Java免费学习网  http://www.javalearns.com


关注微信号:javalearns  ,随时随地学Java
手机赚钱网:http://javalearns.jifenqiang.com/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值