• 大小: 4KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-01-11
  • 语言: 其他
  • 标签: java  js  RSA  jsencrypt  

资源简介

登录时,用户的密码用明文传输,太不安全,应该加密传输,怎么做呢,对称加密一旦秘钥丢失则形同虚设,最好使用非对称加密的方式,由后端事先生成公钥和私钥,公钥发给前端页面,私钥后端自己保留,前端进行认证时,把密码原文用公钥加密再发给后端,后端用私钥解密而得到原文。非对称加密算法常用RSA算法,秘钥使用base64编码成字符串,后端使用jdk8的标准API,前端使用jsencrypt.js进行RSA的对应操作。经过测试,本例中的前后端代码的加密解密计算结果是一致的。

资源截图

代码片段和文件信息

package com.test.service;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.base64;

/**
 * base64编码解码工具包
 */
public class base64Util {

/**
 * 文件读取缓冲区大小
 */
private static final int FILE_BUFFER_SIZE = 1024;


/**
 * 二进制原文 编码为 base64字符串
 */
public static String encode(byte[] bytes) throws Exception {
return base64.getEncoder().encodeToString(bytes);
}

/**
 * base64字符串 解码为 二进制原文
 */
public static byte[] decode(String base64Str) throws Exception {
return base64.getDecoder().decode(base64Str);
}

/**
 * base64数据 解码为 二进制原文
 */
public static byte[]

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2920  2020-02-10 20:46  test\client\网页客户端.html

     文件       2586  2020-02-10 19:38  test\service\base64Util.java

     文件       3830  2020-02-10 19:38  test\service\RsaUtil.java

     目录          0  2020-02-10 20:32  test\client

     目录          0  2020-02-10 19:38  test\service

     目录          0  2020-02-10 19:38  test

----------- ---------  ---------- -----  ----

                 9336                    6


评论

共有 条评论