mirror of
https://gitee.com/dromara/MaxKey.git
synced 2025-12-06 17:08:29 +08:00
Update JWKSetKeyStore.java
This commit is contained in:
parent
c0df0c9d76
commit
6caa5a02f4
@ -142,46 +142,54 @@ public class JWKSetKeyStore {
|
|||||||
|
|
||||||
public String toString(String mediaType){
|
public String toString(String mediaType){
|
||||||
StringBuffer metaDataString = new StringBuffer("");
|
StringBuffer metaDataString = new StringBuffer("");
|
||||||
if(StringUtils.isNotBlank(mediaType) && mediaType.equalsIgnoreCase("XML")) {
|
//RSA Only
|
||||||
metaDataString.append("<RSAKeyValue>").append("\n");
|
if(jwkSet.getKeys().get(0).getKeyType().getValue().equalsIgnoreCase("RSA")) {
|
||||||
for(JWK jwk : jwkSet.getKeys()) {
|
|
||||||
RSAKey rsaKey = jwk.toRSAKey();
|
if(StringUtils.isNotBlank(mediaType) && mediaType.equalsIgnoreCase("XML")) {
|
||||||
PublicKey publicKey;
|
|
||||||
try {
|
metaDataString.append("<RSAKeyValue>").append("\n");
|
||||||
publicKey = rsaKey.toPublicKey();
|
for(JWK jwk : jwkSet.getKeys()) {
|
||||||
metaDataString.append("<Modulus>").append("\n");
|
RSAKey rsaKey = jwk.toRSAKey();
|
||||||
metaDataString.append(RSAUtils.getPublicKeyPEM(publicKey.getEncoded()));
|
PublicKey publicKey;
|
||||||
metaDataString.append("</Modulus>").append("\n");
|
try {
|
||||||
//keyID
|
publicKey = rsaKey.toPublicKey();
|
||||||
metaDataString.append("<Algorithm>");
|
metaDataString.append("<Modulus>").append("\n");
|
||||||
metaDataString.append(rsaKey.getAlgorithm());
|
metaDataString.append(RSAUtils.getPublicKeyPEM(publicKey.getEncoded()));
|
||||||
metaDataString.append("</Algorithm>").append("\n");
|
metaDataString.append("</Modulus>").append("\n");
|
||||||
|
//keyID
|
||||||
metaDataString.append("<KeyID>");
|
metaDataString.append("<Algorithm>");
|
||||||
metaDataString.append(rsaKey.getKeyID());
|
metaDataString.append(rsaKey.getAlgorithm());
|
||||||
metaDataString.append("</KeyID>").append("\n");
|
metaDataString.append("</Algorithm>").append("\n");
|
||||||
|
|
||||||
metaDataString.append("<KeyType>");
|
metaDataString.append("<KeyID>");
|
||||||
metaDataString.append(rsaKey.getKeyType());
|
metaDataString.append(rsaKey.getKeyID());
|
||||||
metaDataString.append("</KeyType>").append("\n");
|
metaDataString.append("</KeyID>").append("\n");
|
||||||
|
|
||||||
metaDataString.append("<Format>");
|
metaDataString.append("<KeyType>");
|
||||||
metaDataString.append(publicKey.getFormat());
|
metaDataString.append(rsaKey.getKeyType());
|
||||||
metaDataString.append("</Format>");
|
metaDataString.append("</KeyType>").append("\n");
|
||||||
|
|
||||||
metaDataString.append("<PublicExponent>");
|
metaDataString.append("<Format>");
|
||||||
metaDataString.append(rsaKey.getPublicExponent());
|
metaDataString.append(publicKey.getFormat());
|
||||||
metaDataString.append("</PublicExponent>").append("\n");
|
metaDataString.append("</Format>");
|
||||||
} catch (JOSEException e) {
|
|
||||||
_logger.error("JOSEException ", mediaType);
|
metaDataString.append("<PublicExponent>");
|
||||||
|
metaDataString.append(rsaKey.getPublicExponent());
|
||||||
|
metaDataString.append("</PublicExponent>").append("\n");
|
||||||
|
} catch (JOSEException e) {
|
||||||
|
_logger.error("JOSEException ", mediaType);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
metaDataString.append("</RSAKeyValue>");
|
||||||
|
|
||||||
|
}else {
|
||||||
|
//RSA Only
|
||||||
|
metaDataString.append(PrettyFactory.getJsonPretty().format(
|
||||||
|
jwkSet.toPublicJWKSet().toString()));
|
||||||
}
|
}
|
||||||
metaDataString.append("</RSAKeyValue>");
|
|
||||||
}else {
|
}else {
|
||||||
metaDataString.append(PrettyFactory.getJsonPretty().format(
|
metaDataString.append("RSA Only");
|
||||||
jwkSet.toPublicJWKSet().toString()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return metaDataString.toString();
|
return metaDataString.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user