20145113 Java实验五 网络编程及安全

实验内容

  • 对于客户端与服务器端:修改原代码,使其可以实现连续的传消息,并且传送文件。
  • 对于加解密部分:
    • 对于原先的加密只加密“hello world",修改实现对一个.txt文件进行DES加密
    • 然后接收对方传送的公钥
    • 用公钥对DES的密钥进行加密,并将加密好的密钥传送给对方
    • 对方使用私钥对加密好的密钥进行解密,然后得到DES的密钥
    • 使用DES的密钥进行对加密的文件解密,得到明文
    ###实验成果 #####客户端(Client):20145113 林晶

    DES生成密钥

    将明文用DES进行加密

    接收服务器端的公钥,对DES的密钥用RSA进行加密

    将进行RSA加密后的密钥和明文发送给服务器端,进行解密。

    服务器(Serve):20145102 周正一

    生成RSA的公钥和私钥

    将公钥发送给客户端,然后接收客户端发送的加密后的密钥跟明文进行解密
    先将密钥进行RSA解密

    得到解密后的密钥,然后进行密文的DES解密

    但是最终出现了问题。

    实验中遇到的问题

    问题:在正常进行RSA加解密的时候读入的是.txt文件可以进行正常的加解密,但是在对DES的密钥进行加解密的时候就出现了问题,加密后解密的内容与原来的密钥不匹配,缺失的部分位数,其中有部分值还发生的改变。
    分析问题:对于原先的.txt文件是一个文本文件,可以直接进行读取,但是可能密钥存放的.dat文件是个二进制文件,在读取的环节出现了问题。但是还没能够解决问题。