欢迎来到天天文库
浏览记录
ID:5565780
大小:3.70 MB
页数:13页
时间:2017-12-18
《电子商务安全技术实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、[键入文字]西安邮电大学电子商务安全技术实验一报告系部名称:经济与管理学院学生姓名:韩振伟专业名称:电子商务班级:1101班学号:02112003时间:2014-5-10[键入文字]一、实验目的:通过JAVA语言,来实现对称密钥加密算法,非对称秘钥加密算法对信息的加密解密,通过实际操作加深学生对对称密钥加密、非对称秘钥加密解密的理解。二、实验内容:安装JDK,配置Java开发环境,加压eclipse,编写对称秘钥的生成、对称密钥加密、解密的程序。编写非对称秘钥加密解密的程序,用私钥对信息进行加密,用公钥对信息
2、进行解密,然后用公钥对信息进行加密,用私钥对信息进行解密。三、实验用到的主要技术及工具主要技术:Java、BouncyCastle主要工具:Eclipse四、开发步骤:1、安装JDK,配置JAVA环境变量。2、解压eclipse。[键入文字]3、在eclipse中新建项目[键入文字]4、编写使用DES算法生成秘钥的程序。packageorg.zlex.chapter07_1;importjava.security.Key;importjava.security.SecureRandom;importjavax
3、.crypto.Cipher;importjavax.crypto.KeyGenerator;importjavax.crypto.SecretKey;importjavax.crypto.SecretKeyFactory;importjavax.crypto.spec.DESKeySpec;publicabstractclassDESCoder{publicstaticfinalStringKEY_ALGORITHM="DES";publicstaticfinalStringCIPHER_ALGORITHM
4、="DES/ECB/PKCS5PADDING";privatestaticKeytoKey(byte[]key)throwsException{DESKeySpecdks=newDESKeySpec(key);SecretKeyFactorykeyFactory=SecretKeyFactory.getInstance(KEY_ALGORITHM);SecretKeysecretKey=keyFactory.generateSecret(dks);returnsecretKey;}publicstaticby
5、te[]decrypt(byte[]data,byte[]key)throwsException{Keyk=toKey(key);Ciphercipher=Cipher.getInstance(CIPHER_ALGORITHM);cipher.init(Cipher.DECRYPT_MODE,k);returncipher.doFinal(data);}publicstaticbyte[]encrypt(byte[]data,byte[]key)throwsException{Keyk=toKey(key);
6、Ciphercipher=Cipher.getInstance(CIPHER_ALGORITHM);cipher.init(Cipher.ENCRYPT_MODE,k);returncipher.doFinal(data);}publicstaticbyte[]initKey()throwsException{KeyGeneratorkg=KeyGenerator.getInstance(KEY_ALGORITHM);kg.init(56,newSecureRandom());SecretKeysecretK
7、ey=kg.generateKey();returnsecretKey.getEncoded();}[键入文字]}packageorg.zlex.chapter07_1;importstaticorg.junit.Assert.*;importorg.apache.commons.codec.binary.Base64;importorg.junit.Test;publicclassDESCoderTest{@Testpublicfinalvoidtest()throwsException{Stringinp
8、utStr="DES";byte[]inputData=inputStr.getBytes();System.err.println("原文:t"+inputStr);byte[]key=DESCoder.initKey();System.err.println("密钥:t"+Base64.encodeBase64String(key));inputData=DESCoder.encrypt(i
此文档下载收益归作者所有