Java 如何在使用AES后通知我文件已加密&;如何检查它是否是我加密的文件?
我在java中使用AES对称加密算法,在我加密文件后,我想在它上面放一些东西,告诉我它是加密的,这样我可以在解密之前检查它是否存在? 下面是一个代码示例Java 如何在使用AES后通知我文件已加密&;如何检查它是否是我加密的文件?,java,file,encryption,cryptography,aes,Java,File,Encryption,Cryptography,Aes,我在java中使用AES对称加密算法,在我加密文件后,我想在它上面放一些东西,告诉我它是加密的,这样我可以在解密之前检查它是否存在? 下面是一个代码示例 ` cipher.init(Cipher.DECRYPT_MODE, secretKeySpec); jTextField3.setText(""+secretKeySpec); String cleartextFile = "E:\\"+dir; FileInputStream fis = new FileIn
` cipher.init(Cipher.DECRYPT_MODE, secretKeySpec);
jTextField3.setText(""+secretKeySpec);
String cleartextFile = "E:\\"+dir;
FileInputStream fis = new FileInputStream(cleartextFile);
CipherInputStream cis = new CipherInputStream(fis, cipher);
FileOutputStream fos = new FileOutputStream("E:\\d"+dir);
FileChannel out = fos.getChannel();
out.transferFrom(Channels.newChannel(cis), 0, Long.MAX_VALUE); `
transferFrom()
不能保证在一次调用中执行整个传输。您必须循环。@SherifMostafa如果您的意思是要为加密文件定义文件格式?@SherifMostafa只有在每个未加密文件中都有可唯一识别的内容时,才可以执行此操作。无法确定某个文件是任意未加密文件还是加密文件。@EJP transferFrom()传输所有无需进行循环我在图像和视频上尝试过它工作正常@Artjom B非文件格式我需要确保它是我在解密之前加密的文件,因为如果我对未加密的文件进行解密,它将受到损坏,所以我需要的是如何在加密时对文件进行加密,以确保在解密时它是正确的有效的