Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
C
chnmuseum-party
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liqin
chnmuseum-party
Commits
87c3be8c
Commit
87c3be8c
authored
Apr 17, 2021
by
liqin
💬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bug fixed
parent
ebd8ed94
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
3 deletions
+13
-3
RSAUtils.java
...va/cn/wisenergy/chnmuseum/party/common/util/RSAUtils.java
+13
-3
No files found.
src/main/java/cn/wisenergy/chnmuseum/party/common/util/RSAUtils.java
View file @
87c3be8c
...
...
@@ -8,11 +8,21 @@ import java.security.spec.X509EncodedKeySpec;
import
java.util.ArrayList
;
import
java.util.Base64
;
/**
* https://www.jianshu.com/p/62804d9c265c
*/
public
final
class
RSAUtils
{
//加密算法KEY
private
static
final
String
KEY_ALGORITHM
=
"RSA"
;
//密钥长度:512bit/1024bit/2048bit/4096bit
private
static
final
int
KEY_SIZE
=
2048
;
public
static
final
String
SIGNATURE_ALGORITHM
=
"SHA256withRSA"
;
//http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html
//RSA签名算法:对RSA密钥的长度不限制,推荐使用2048位以上
public
static
final
String
SIGNATURE_ALGORITHM_1
=
"SHA1WithRSA"
;
//RSA2签名算法:强制要求RSA密钥的长度至少为2048
public
static
final
String
SIGNATURE_ALGORITHM_2
=
"SHA256WithRSA"
;
//密钥格式:PKCS#1/PKCS#8
public
static
final
String
RSA_TYPE
=
"RSA/ECB/PKCS1Padding"
;
private
final
static
String
PUBLIC_KEY_NAME
=
"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsTVgqPjswjCKU7kjOfZO/jB1Oiz3zrW0kLfjBiRXHnXrm3Br4cgpA78snK/isaVykOBJYL549JkgHqTo17RSdqdS2i0rjzEUtKEotSpoP9XzNxt3ufKSq1MxBU5ZVuJTJ4Juat9RKcgNvhTc5NYMjF7PsBrrqPolgOd9Y5VyMaNRch+3owlDNzck0zWXAWas8KNJuV68ZH6hqu0Lb0QfrWETkm4o3ah7A1ss/UB//XSg0wipMa2em9WI6hUxW87JKR3W63dx89q9aP589UeE5XpamDhr1fglIpzeS/SdA61cY4K5v9v+mGxI3jePc6RSETvwc8P68/XNViSgT+uJAwIDAQAB"
;
...
...
@@ -113,7 +123,7 @@ public final class RSAUtils {
byte
[]
signed
;
try
{
PrivateKey
privateKey
=
getPrivateKey
(
PRIVATE_KEY_NAME
);
Signature
Sign
=
Signature
.
getInstance
(
SIGNATURE_ALGORITHM
);
Signature
Sign
=
Signature
.
getInstance
(
SIGNATURE_ALGORITHM
_2
);
Sign
.
initSign
(
privateKey
);
Sign
.
update
(
requestData
.
getBytes
());
signed
=
Sign
.
sign
();
...
...
@@ -129,7 +139,7 @@ public final class RSAUtils {
boolean
verifySignSuccess
=
false
;
try
{
PublicKey
publicKey
=
getServicePublicKey
();
Signature
verifySign
=
Signature
.
getInstance
(
SIGNATURE_ALGORITHM
);
Signature
verifySign
=
Signature
.
getInstance
(
SIGNATURE_ALGORITHM
_2
);
verifySign
.
initVerify
(
publicKey
);
verifySign
.
update
(
requestData
.
getBytes
());
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment