diff --git a/src/main/java/com/hao/digitalsignature/controller/FileDealController.java b/src/main/java/com/hao/digitalsignature/controller/FileDealController.java index 0c6e899e2cba00aabdc3921333a7b58bab9d1684..ab520c04c9d64462a72351dd676dedbdeb220907 100644 --- a/src/main/java/com/hao/digitalsignature/controller/FileDealController.java +++ b/src/main/java/com/hao/digitalsignature/controller/FileDealController.java @@ -161,7 +161,7 @@ public class FileDealController { String rsaDef=RSAEncrypt.RSAde(rsaEnf); String rsaDes=RSAEncrypt.RSAde(rsaEns); String recRes=rsaDef+rsaDes; - + System.out.println('6'); DownloadMsg.downloadByStringContent(request, response, fileName.split("\\.")[0], recRes); }catch (Exception e) { diff --git a/src/main/java/com/hao/digitalsignature/controller/FilesController.java b/src/main/java/com/hao/digitalsignature/controller/FilesController.java index 44d63ed08679a835dd6def0b7e4bb4ad1f9b065f..fcd5dd2a2ad4e57481bec683119f880d0feafbef 100644 --- a/src/main/java/com/hao/digitalsignature/controller/FilesController.java +++ b/src/main/java/com/hao/digitalsignature/controller/FilesController.java @@ -1,8 +1,10 @@ package com.hao.digitalsignature.controller; +import com.hao.digitalsignature.encryption.DSASign; import com.hao.digitalsignature.entity.User; import com.hao.digitalsignature.mapper.UserMapper; +import com.sun.org.apache.xerces.internal.impl.dv.util.Base64; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -12,6 +14,7 @@ import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import java.io.File; import java.io.IOException; +import java.math.BigInteger; import java.util.List; @RestController @@ -56,6 +59,17 @@ public class FilesController { @PostMapping("/file/save") public String save(@RequestBody Files file){ System.out.println(file); + BigInteger back[]=new BigInteger[2]; + int j=0; + Base64 base64 = new Base64(); + DSASign dsa = new DSASign(); + dsa.initKeys(); + //要签名的数据,传入AES加密后的内容 + String message = file.getPicture_realname(); + System.out.println("签名的数据:"+message); + BigInteger sig[] = dsa.signature(message.getBytes()); + String dig=sig[0]+";"+sig[1]+";"+dsa._hashInZq(message.getBytes()); + file.setDig(dig); int i = fileMapper.insert(file); if (i>0) return "success"; diff --git a/src/main/java/com/hao/digitalsignature/encryption/RSAEncrypt.java b/src/main/java/com/hao/digitalsignature/encryption/RSAEncrypt.java index 419e60a27f4d4e9e6b4521655bda6fcefd7ee480..bfa49f6f7efdccd48537d69b4a90feff02525f2b 100644 --- a/src/main/java/com/hao/digitalsignature/encryption/RSAEncrypt.java +++ b/src/main/java/com/hao/digitalsignature/encryption/RSAEncrypt.java @@ -332,8 +332,8 @@ public class RSAEncrypt { return stringBuilder.toString(); } public static String RSAde(byte[] cipherData) throws Exception { - String publicPath = "C:\\Users\\w10"; //公匙存放位置 - String privatePath = "C:\\Users\\w10"; //私匙存放位置 + String publicPath = "C:\\Users\\10908"; //公匙存放位置 + String privatePath = "C:\\Users\\10908"; //私匙存放位置 Base64 base64 = new Base64(); String cipher = new String(base64.encode(cipherData)); // 私钥解密过程 @@ -347,8 +347,8 @@ public class RSAEncrypt { return restr; } public static byte[] RSAen(String key) throws Exception { - String publicPath = "C:\\Users\\w10"; //公匙存放位置 - String privatePath = "C:\\Users\\w10"; //私匙存放位置 + String publicPath = "C:\\Users\\10908"; //公匙存放位置 + String privatePath = "C:\\Users\\10908"; //私匙存放位置 Base64 base64 = new Base64(); String signKey = key; // 公钥加密过程 diff --git a/src/main/resources/static/index.html b/src/main/resources/static/index.html index 9584a950142b1584acdf5da12c7af192291517d4..b48539470f3803203956dfe8e52cc5fb68c533a0 100644 --- a/src/main/resources/static/index.html +++ b/src/main/resources/static/index.html @@ -226,34 +226,7 @@ }) axios.post("/file/downloadMsg",f,).then((res)=>{ console.log(res) - // var url = (window.document.location.href+"img/"+res.config.data) - // var a = document.createElement("a"); - // a.download = file.picture_name; - // a.href = URL.createObjectURL(blob); - // document.body.appendChild(a) - // a.click(); - // URL.revokeObjectURL(a.href) // 释放URL 对象 - // document.body.removeChild(a) - // var url = (window.document.location.href+"img/"+res.config.data) - // var that = this - // var fileName = file.picture_name - // this.convertUrlToBase64(url).then(function (base64) { - // var blob = that.convertBase64UrlToBlob(base64); // 转为blob对象 - // // 下载 - // if (that.myBrowser() == "IE") { - // window.navigator.msSaveBlob(blob, fileName + ".txt"); - // } else if (that.myBrowser() == "FF") { - // window.location.href = url; - // } else { - // var a = document.createElement("a"); - // a.download = fileName; - // a.href = URL.createObjectURL(blob); - // document.body.appendChild(a) - // a.click(); - // URL.revokeObjectURL(a.href) // 释放URL 对象 - // document.body.removeChild(a) - // } - // }); + this.downloadFile(res.data,file.picture_name) }) },