Просмотр исходного кода

变更rsa加密填充方式OAEP,公钥加密

dengsixing недель назад: 3
Родитель
Сommit
fa2598258b

+ 24 - 0
pom.xml

@@ -27,6 +27,11 @@
       <id>nexus-aliyun</id>
       <url>http://maven.aliyun.com/nexus/content/groups/public</url>
     </repository>
+    <repository>
+      <id>chinatower</id>
+      <name>铁塔</name>
+      <url>http://10.38.77.5:8081/repository/maven-public/</url>
+    </repository>
   </repositories>
 
   <dependencies>
@@ -121,6 +126,24 @@
       <version>1.5.19</version>
     </dependency>
 
+    <dependency>
+      <groupId>com.chinatower</groupId>
+      <artifactId>chinatower-encrypt</artifactId>
+      <version>1.7.1</version>
+<!--      <exclusions>-->
+<!--        <exclusion>-->
+<!--          <groupId>org.bouncycastle</groupId>-->
+<!--          <artifactId>bcprov-jdk15on</artifactId>-->
+<!--        </exclusion>-->
+<!--      </exclusions>-->
+    </dependency>
+
+    <dependency>
+      <groupId>org.bouncycastle</groupId>
+      <artifactId>bcprov-jdk15on</artifactId>
+    <version>1.60</version>
+  </dependency>
+
 
   </dependencies>
 
@@ -147,4 +170,5 @@
   </distributionManagement>
 
 
+
 </project>

Разница между файлами не показана из-за своего большого размера
+ 17 - 26
src/main/java/com/fdkankan/extend/service/impl/TowerServiceImpl.java


+ 32 - 1
src/main/java/com/fdkankan/extend/util/FileUtil.java

@@ -72,7 +72,7 @@ public class FileUtil {
      */
     public static String getMulFileMD5(InputStream fileInputStream) {
         try {
-            MessageDigest MD5 = MessageDigest.getInstance("MD5");
+            MessageDigest MD5 = MessageDigest.getInstance("SHA-256");
             byte[] buffer = new byte[8192];
             int length;
             while ((length = fileInputStream.read(buffer)) != -1) {
@@ -92,4 +92,35 @@ public class FileUtil {
             }
         }
     }
+
+
+    /**
+     * 获取一个文件的md5值(可处理大文件)
+     * @return md5 value
+     */
+    public static String getMulFileMD5(MultipartFile file) {
+        InputStream fileInputStream = null;
+        try {
+//            MessageDigest MD5 = MessageDigest.getInstance("MD5");
+            MessageDigest MD5 = MessageDigest.getInstance("SHA-256");
+            fileInputStream = file.getInputStream();
+            byte[] buffer = new byte[8192];
+            int length;
+            while ((length = fileInputStream.read(buffer)) != -1) {
+                MD5.update(buffer, 0, length);
+            }
+            return new String(Hex.encodeHex(MD5.digest())).substring(0,32);
+        } catch (Exception e) {
+            e.printStackTrace();
+            return null;
+        } finally {
+            try {
+                if (fileInputStream != null){
+                    fileInputStream.close();
+                }
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
 }

Разница между файлами не показана из-за своего большого размера
+ 40 - 16
src/main/java/com/fdkankan/extend/util/RsaCryptTools.java


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
src/main/resources/application-prod.yml


Разница между файлами не показана из-за своего большого размера
+ 1 - 0
src/main/resources/application-test.yml