首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在ionic4中使用加密js进行加密/欺骗?

如何在ionic4中使用加密js进行加密/欺骗?
EN

Stack Overflow用户
提问于 2019-08-07 07:02:44
回答 2查看 2.7K关注 0票数 1

我很麻烦,如何在ionic4中使用密码js进行加密/欺骗?

我用java编写了加密解密代码。

代码语言:javascript
复制
public static String encrypt(String str) 
{
    String encryptedString = str;

    try {
        byte[] utf8 = str.getBytes("UTF8");
        byte[] enc = encryptor.doFinal(utf8);
        encryptedString = Base64.encodeBase64URLSafeString(enc);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return encryptedString;
}

用于解密

代码语言:javascript
复制
public static String decrypt(String str) 
{
    String decryptedString = "";        
    try {
        byte[] dec = Base64.decodeBase64(str);
        byte[] utf8 = decryptor.doFinal(dec);
        decryptedString = new String(utf8, "UTF8");
    } catch (Exception e) {
        e.printStackTrace();
    } 
    return decryptedString;
}

分泌密钥生成

代码语言:javascript
复制
public static void genKeyPair(int i)    {
    try {
        // generates DES key from string //
        key = new SecretKeySpec(Skey.getBytes(), "DES");

        // initialize the cipher with key //
        encryptor = Cipher.getInstance("DES");
        decryptor = Cipher.getInstance("DES");
        encryptor.init(Cipher.ENCRYPT_MODE, key);
        decryptor.init(Cipher.DECRYPT_MODE, key);

        System.err.println(java.util.Base64.getEncoder().encodeToString(key.getEncoded()));
    } catch (Exception e) {
        e.printStackTrace();
    }
}

我想用ionic4写同样的东西,怎么做请帮帮我。我是ionic4(混合应用程序)的新手

EN

回答 2

Stack Overflow用户

发布于 2019-08-07 07:08:20

您的代码看起来像自定义加密/解密,您可以使用多种加密方法中的一种,例如:

它非常简单,下面是示例代码,可以继续使用

代码语言:javascript
复制
import * as utf8 from 'crypto-js/enc-utf8';
import * as AES from 'crypto-js/aes';

// Encryption
AES.encrypt(JSON.stringify(data),your_encKey).toString();

// Decryption
AES.decrypt(userdata, your_encKey).toString(utf8);

欲了解更多信息:在这里读

--我认为这个代码片段已经足够的引用了,可以帮助你用离子4/角.转换你的代码。

票数 0
EN

Stack Overflow用户

发布于 2019-08-08 08:45:38

我在角(离子4)中找到了解决方案,但是符号字符与java代码不同。

代码语言:javascript
复制
let key="AND$VBOA";
var keyHex = CryptoJS.enc.Utf8.parse(key);
var message = CryptoJS.enc.Utf8.parse(message);
var encrypted = CryptoJS.DES.encrypt(message, keyHex, {
    mode: CryptoJS.mode.ECB,
    padding: CryptoJS.pad.Pkcs7
});
console.log("Encrypted:="+encrypted.toString());

解密

代码语言:javascript
复制
var decrypted = CryptoJS.DES.decrypt({
    ciphertext: CryptoJS.enc.Base64.parse(encrypted)
}, keyHex, {
    mode: CryptoJS.mode.ECB,
    padding: CryptoJS.pad.Pkcs7
});
console.log("Derypted:="+decrypted .toString());

离子

代码语言:javascript
复制
Ecrypted: 6qPw1YkOopA=
Decrypted: Nitin

在Java中

代码语言:javascript
复制
Ecrypted: 6qPw1YkOopA
Decrypted: Nitin

离子语

代码语言:javascript
复制
Ecrypted: oOmH6uQ4R/Q=
Decrypted: Message

在Java中

代码语言:javascript
复制
Ecrypted: oOmH6uQ4R_Q
Decrypted: Message

离子语

代码语言:javascript
复制
Ecrypted: f+eTKAqlUwXnznPVyjTXWA==
Decrypted: engineer

在Java中

代码语言:javascript
复制
Ecrypted: f-eTKAqlUwXnznPVyjTXWA
Decrypted: engineer

在Java "-“&在离子"+”和离子"/“& java "_”中,在离子型extra =或==中测试的示例很多。那么,这个示例代码有什么问题,请建议我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57388662

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档