david_zdw199065
2018-11-06 01:47
采纳率: 50%
浏览 1.0k

加密方式采用Base64,秘钥为contacts,这种方式怎么加密?

加密方式采用Base64,秘钥为contacts,这种方式怎么加密?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • t303844193 2018-11-06 02:16

    兄弟你好!我个人觉得Base64加密,你应该会.
    你的主要问题应该是 如何理解"秘钥为contacts".
    我有两种理解:一,在Map中,("contacts","Base64加密的字符串"),contacts作为key
    二,对contacts进行加密.

    /**
    * MD5加密
    * @param plaintext 明文 == "contacts"
    * @return ciphertext 密文
    */
    public final static String encryptMD5(String plaintext) {
    char hexDigits[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
    'a', 'b', 'c', 'd', 'e', 'f'};
    try {
    byte[] btInput = plaintext.getBytes();
    // 获得MD5摘要算法的 MessageDigest 对象
    MessageDigest mdInst = MessageDigest.getInstance("MD5");
    // 使用指定的字节更新摘要
    mdInst.update(btInput);
    // 获得密文
    byte[] md = mdInst.digest();
    // 把密文转换成十六进制的字符串形式
    int j = md.length;
    char str[] = new char[j * 2];
    int k = 0;
    for (int i = 0; i < j; i++) {
    byte byte0 = md[i];
    str[k++] = hexDigits[byte0 >>> 4 & 0xf];
    str[k++] = hexDigits[byte0 & 0xf];
    }
    return new String(str);
    } catch (Exception e) {
    return null;
    }
    }

        你用这两种理解方式,问问你们老大.理解需求了就能干事.望采纳
    
    打赏 评论
  • ainiburuqusi 2018-11-06 02:36

    Base64只是一种编码方式,不存在密钥,需要自己去封装。

    打赏 评论

相关推荐 更多相似问题