node的crypto和Java的crypto加密双方无法解密

node端加密文件

const crypto = require('crypto');
const fs = require('fs');
const cipher = crypto.createCipher('aes128', '66666666');

const input = fs.createReadStream('file.js');
const output = fs.createWriteStream('./fileAES/test.enc');

input.pipe(cipher).pipe(output);

java端解密

    public File decryptFile(File sourceFile,String fileType,String sKey){  
        File decryptFile = null;  
        InputStream inputStream = null;  
        OutputStream outputStream = null;  
        try {  
            decryptFile = File.createTempFile(sourceFile.getName(),fileType);  
            Cipher cipher = initAESCipher(sKey,Cipher.DECRYPT_MODE);  
            inputStream = new FileInputStream(sourceFile);  
            outputStream = new FileOutputStream(decryptFile);  
            CipherOutputStream cipherOutputStream = new CipherOutputStream(outputStream, cipher);  
            byte [] buffer = new byte [1024];  
            int r;  
            while ((r = inputStream.read(buffer)) >= 0) {  
                cipherOutputStream.write(buffer, 0, r);  
            }  
            cipherOutputStream.close();  
        } catch (IOException e) {  
            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.  
        }finally {  
            try {  
                inputStream.close();  
            } catch (IOException e) {  
                e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.  
            }  
            try {  
                outputStream.close();  
            } catch (IOException e) {  
                e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.  
            }  
        }  
        return decryptFile;  
    } 

自己都能加解密 但是加密后的文件互换后无法解密

阅读 2.2k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题