Шифрование ByteArray с использованием AES в Javascript - PullRequest
0 голосов
/ 29 ноября 2018

Я пытался зашифровать массив байтов с помощью AES в JavaScript, но у меня возникли некоторые проблемы с этим.Это мой код на Java, и я не могу достичь того же результата в JavaScript.Может ли кто-нибудь мне помочь?Я пробовал использовать CriptoJs, Forge-Node, AES-js, но ни одна из них не работала нормально.

public static byte[] Cipher() throws Exception {
    byte[] msgCifrada = null;
    byte[] keyBytes = [85, -9, -79, -24, -80, 87, -3, 73, 87, -75, -120, 125, 90, -124, 109, -102];
    byte[] dados = [-88, -93, 5, -78, -116, 36, -49, -11, 106, 111, 110, 97, 116, 104, 97, 115, 46, 115, 105, 108, 118, 97];

    try {
        SecretKey secretKey = new SecretKeySpec(keyBytes, "AES");
        Cipher c = Cipher.getInstance("AES");
        c.init(Cipher.ENCRYPT_MODE, secretKey);
        msgCifrada = c.doFinal(dados);
    } catch (InvalidKeyException ike) {
        throw new Exception("Chave simétrica inválida.");
    } catch (Exception e) {
        throw new Exception("Erro na cifragem da mensagem: "+ .getMessage());
    }
    return msgCifrada;
}

Результатом в Java является то, что ByteArray:

[- 90, 91,44, 29, -113, 116, -1, -29, 42, 47, 122, -117, -12, -12, -49, -94, 59, -50, 110, 115, 105, -21,80, 93, -15, 13, 71, -108, 23, -80, 56, -96]

Спасибо!

...