以下示例有什么问题?
问题是解密字符串的第一部分是无意义的.但是,剩下的很好,我明白了......
Run Code Online (Sandbox Code Playgroud)Result: `£eB6O?geS??i are you? Have a nice day.
@Test
public void testEncrypt() {
try {
String s = "Hello there. How are you? Have a nice day.";
// Generate key
KeyGenerator kgen = KeyGenerator.getInstance("AES");
kgen.init(128);
SecretKey aesKey = kgen.generateKey();
// Encrypt cipher
Cipher encryptCipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
encryptCipher.init(Cipher.ENCRYPT_MODE, aesKey);
// Encrypt
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
CipherOutputStream cipherOutputStream = new CipherOutputStream(outputStream, encryptCipher);
cipherOutputStream.write(s.getBytes());
cipherOutputStream.flush();
cipherOutputStream.close();
byte[] encryptedBytes = outputStream.toByteArray();
// Decrypt cipher
Cipher decryptCipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
IvParameterSpec ivParameterSpec = …Run Code Online (Sandbox Code Playgroud) 对于我的学校项目,我必须表明我可以在程序中使用文件处理.为此,我做了一个非常简单的登录过程,您可以创建一个帐户,将用户名和密码写入资源文件夹中的文本文件.显然这根本没有任何安全性,因为它不是为了展示文件处理而设计的,但是我的老师说我应该尝试在文件中添加一些加密以获得更好的成绩.
我做了一些研究,很多人都在推荐DES.
我遇到的问题是我的项目没有太多时间,需要尽快完成.使用DES似乎需要一段时间来实现所有额外的代码.
在我的程序中,我使用一个简单的lineNumberReader来逐行读取文件.写入我正在使用BufferedWriter的文件.
反正非常简单地加密这些数据了吗?它不一定非常安全,但我需要证明我至少试图加密数据.加密和解密都将在同一应用程序上完成,因为数据未被传输.
我可以自己创建一个非常简单的加密和解密算法吗?