【问题标题】:big file transfer using AES使用 AES 传输大文件
【发布时间】:2013-01-20 05:02:42
【问题描述】:

我想在服务器和客户端之间传输一个大文件,我知道该怎么做: 对于客户端,代码如下:

OutputStream output = sk.getOutputStream();     

    FileInputStream fileInputStream = new FileInputStream(file);
    byte[] buffer = new byte[1024*1024];
    int bytesRead = 0;

    while((bytesRead = fileInputStream.read(buffer))>0)
    {
        output.write(buffer,0,bytesRead);
    }

    fileInputStream.close();

服务器端:

InputStream input = sk.getInputStream();

    file = new File(filename);
    FileOutputStream out = new FileOutputStream(file);

    byte[] buffer = new byte[1024*1024];

    int bytesReceived = 0;

    while((bytesReceived = input.read(buffer))>0) {
        out.write(buffer,0,bytesReceived);
        System.out.println(bytesReceived);
        break;
    }

现在的问题是,服务器和客户端同意一个 128 位的 AES 密钥,所以我想充分利用会话密钥来保证文件传输过程的安全。我的问题是,我在哪里可以在我的客户端和服务器中插入 AES 加密过程?谢谢!

【问题讨论】:

    标签: java android file aes


    【解决方案1】:

    我认为您可以使用 javax.crypto.CipherInputStream / javax.crypto.CipherOutputStream。用法示例http://www.flexiprovider.de/examples/ExampleCrypt.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-05
      • 1970-01-01
      • 2016-03-30
      • 2011-07-30
      相关资源
      最近更新 更多