шифрование и дешифрование большого файла с использованием rsa в Java

Я использую алгоритм RSA для шифрования и дешифрования файла с размером, превышающим размер ключа RSA.

В приведенном ниже коде для шифрования я читаю содержимое файла блочно и конвертирую в зашифрованный текст. Размер блока составляет 32 байта.

FileInputStream fin1 = new FileInputStream(genfile);

FileOutputStream fout = new FileOutputStream(seedcipher);

byte[] block = new byte[32];
int i;
while ((i = fin1.read(block)) != -1)
{
    byte[] inputfile= cipher.doFinal(block);
    fout.write(inputfile);
}

fin1.close();

В части дешифрования, то же самое блочное дешифрование выполняется в коде, где я упомянул размер блока как 128 байт.

FileInputStream fin1 = new FileInputStream(encryptedfile);
FileOutputStream fout = new FileOutputStream(seedcipher);

DataInputStream dos =new DataInputStream(fin1);
DataOutputStream dosnew =new DataOutputStream(fout);
byte[] block = new byte[128];
int i;
while ((i = fin1.read(block)) != -1)
{
    byte[] inputfile= cipher.doFinal(block);
      fout.write(inputfile);
}

Размер входного файла составляет 81,3 КБ, и файл содержит

0
1
2
3
4.....29000 

После расшифровки файла выходные данные содержат некоторые дополнительные значения, которые не имеют отношения к делу. почему эти дополнительные данные в результате?

Ответы на вопрос(0)

Ваш ответ на вопрос