Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public String KEY = "Just to encrypt and decrypt";
- public Byte[] IvB = ("Dein IvB").getBytes();
- public String Salt = "Dein Salt";
- public String encrypt(String str) {
- try {
- IvParameterSpec ivspec = new IvParameterSpec(this.IvB);
- SecretKeyFactory factory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA256");
- KeySpec spec = new PBEKeySpec(this.KEY.toCharArray(), salt.getBytes(), 65536, 256);
- SecretKey tmp = factory.generateSecret(spec);
- SecretKeySpec secretKey = new SecretKeySpec(tmp.getEncoded(), "AES");
- Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
- cipher.init(Cipher.ENCRYPT_MODE, secretKey, ivspec);
- return Base64.getEncoder().encodeToString(cipher.doFinal(str.getBytes("UTF-8")));
- } catch (Exception e) {
- System.out.println("Error while encrypting: " + e.toString());
- }
- return null;
- }
- public String decrypt(String str) {
- try {
- IvParameterSpec ivspec = new IvParameterSpec(this.IvB);
- SecretKeyFactory factory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA256");
- KeySpec spec = new PBEKeySpec(this.KEY.toCharArray(), salt.getBytes(), 65536, 256);
- SecretKey tmp = factory.generateSecret(spec);
- SecretKeySpec secretKey = new SecretKeySpec(tmp.getEncoded(), "AES");
- Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5PADDING");
- cipher.init(Cipher.DECRYPT_MODE, secretKey, ivspec);
- return new String(cipher.doFinal(Base64.getDecoder().decode(str)));
- } catch (Exception e) {
- System.out.println("Error while decrypting: " + e.toString());
- }
- return null;
- }
- /////////////////////////////////////////////////////////////////////////////////////////////////////////////
- function encrypt(str, KEY, IvB, SALT) {
- var key = KEY;
- var iv = Buffer.from(IvB, 'utf8');
- var salt = SALT;
- key = crypto.pbkdf2Sync(key, new Buffer(salt, 'hex'), 65536, 32, 'sha256');
- var cipher = crypto.createCipheriv('aes-256-cbc', key, iv);
- cipher.setAutoPadding(true);
- var cip = cipher.update(str, 'utf8', 'base64');
- cip += cipher.final('base64');
- return cip;
- };
- function decrypt(str, KEY, IvB, SALT) {
- var key = KEY;
- var iv = Buffer.from(IvB, 'utf8');
- var salt = SALT;
- key = crypto.pbkdf2Sync(key, new Buffer(salt), 65536, 32, 'sha256');
- console.log();
- var decipher = crypto.createDecipheriv('aes-256-cbc', key, iv);
- decipher.setAutoPadding(true);
- var dec = decipher.update(str, 'base64', 'utf8');
- dec += decipher.final('utf8');
- return dec;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement