计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

电子商务的安全分析、设计及JAVA实现(2)

2014-12-23 01:46
导读:现将部分安全关键技术详述如下: ● 用RMI机制的3层模式结构来封装加密算法 RMI即 Remote Method Invocation(远程方法调用),它提供了针对java对象的分布式计算的


现将部分安全关键技术详述如下:
● 用RMI机制的3层模式结构来封装加密算法
RMI即 Remote Method Invocation(远程方法调用),它提供了针对java对象的分布式计算的一种简单而直接的模型。RMI使用Java内置的安全机制保证下载执行程序时用户系统的安全,并使用专门为保护系统免遭恶意小程序侵害而设计的安全治理程序。RMI机制将表示层、处理层和数据层分开,一方面使得并发操纵更易被处理,另一方面,使得安全控制更轻易实现。 RMI架构包括3部分:(1)桩/骨架层Stub/Skeleton;(2)远程调用层Remote Reference Layer;(3)传输层Transport Layer。
实现RMI分3步进行:第一步是建立和编译服务接口。这个接口定义了所有的提供远程服务的功能;第二步是远程服务的实现;第三步是使用RMI编译器rmic来天生桩和框架文件;最后是建立服务器和客户端。其中接口设计的源代码如下:
//天生RMI接口的JAVA源代码
//packagename: rmiinte***ce.rmi
Package rmiinte***ce.rmi
import java.rmi.Remote;
public inte***ce Encrypt extends Remote{
public byte[] Encode(String sText)
throws java.rmi.RemoteException;
public String Decode(byte[] sText)
throws java.rmi.RemoteException;
}
需要说明的是,这个接口继续自Remote,每一个定义的方法都必须抛出一个RemoteException异常对象。

● 使用SSL加密来实现安全传输
SSL(Secure Socket Layer),安全套接字层,位于HTTP层和TCP层之间,用来建立用户与服务器之间的加密通讯,确保所传递信息的安全性。SSL是工作在公共密钥和私人密钥基础上的,任何用户都可以获得公共密钥来加密数据,但解密数据必须要通过相应的私人密钥。
使用SSL安全机制时,首先客户端与服务器建立连接,服务器把它的数字证书与公共密钥一并发送给客户端,客户端随机天生会话密钥,用从服务器得到的公共密钥对会话密钥进行加密,并把会话密钥在上传递给服务器,而会话密钥只有在服务器端用私人密钥才能解密,这样,客户端和服务器端就建立了一个惟一的安全通道。加密解密通常用RSA算法来实现分3步完成:第一步:天生密钥对;第二步:公钥加密;第三步:私钥解密。为简单起见,这里只列出密钥对的天生过程,源代码如下: (科教论文网 lw.nseaC.Com编辑发布)
//天生密钥对的JAVA源代码
public int generateKeyPair(int length){
BigIntegerp, q, n, d, e, pSub1, qSub1, phi;
BigIntegerdP, dQ, qInv;



int pbitlength = (length 1) / 2;
int qbitlength = (length- pbitlength);
e=new BigInteger("65537",10);

//天生素数p,并且使p-1与e互素
for (;;){
p = new BigInteger(pbitlength, 50,new SecureRandom());
if (e.***(p.subtract(ONE)).equals(ONE)) break;
}
for (;;){
//天生素数q,并且使q-1与e互素,与p不相等
for (;;)
{
q = new BigInteger(qbitlength,50,new SecureRandom());
if (e.***(q.subtract(ONE)).equals(ONE)
上一篇:电子商务信用图章经济功能:基于中国背景样本 下一篇:没有了