本文整理了Java中com.nimbusds.jose.JWEObject.serialize()
方法的一些代码示例,展示了JWEObject.serialize()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JWEObject.serialize()
方法的具体详情如下:
包路径:com.nimbusds.jose.JWEObject
类名称:JWEObject
方法名:serialize
[英]Serialises this JWE object to its compact format consisting of Base64URL-encoded parts delimited by period ('.') characters. It must be in a State#ENCRYPTED or State#DECRYPTED state.
[header-base64url].[encryptedKey-base64url].[iv-base64url].[cipherText-base64url].[authTag-base64url]
[中]将此JWE对象序列化为其压缩格式,该格式由以句点('.')分隔的Base64URL编码部分组成。它必须处于加密或解密状态
[header-base64url].[encryptedKey-base64url].[iv-base64url].[cipherText-base64url].[authTag-base64url]
代码示例来源:origin: naturalprogrammer/spring-lemon
@Override
public String createToken(String aud, String subject, Long expirationMillis, Map
Payload payload = createPayload(aud, subject, expirationMillis, claimMap);
// Create the JWE object and encrypt it
JWEObject jweObject = new JWEObject(header, payload);
try {
jweObject.encrypt(encrypter);
} catch (JOSEException e) {
throw new RuntimeException(e);
}
// Serialize to compact JOSE form...
return jweObject.serialize();
}
代码示例来源:origin: de.adorsys.psd2/consent-management-lib
@Override
public Optional
try {
Payload payload = new Payload(data);
SecretKey key = getSecretKey(password);
JWEHeader header = new JWEHeader(ALGORITHM, METHOD);
JWEObject jweObject = new JWEObject(header, payload);
JWEEncrypter encrypter = new AESEncrypter(key.getEncoded());
jweObject.encrypt(encrypter);
String encryptedData = jweObject.serialize();
return Optional.of(new EncryptedData(encryptedData.getBytes()));
} catch (GeneralSecurityException | JOSEException e) {
log.error("Error encryption data: {}", e);
}
return Optional.empty();
}
代码示例来源:origin: adorsys/xs2a
@Override
public Optional
try {
Payload payload = new Payload(data);
SecretKey key = getSecretKey(password);
JWEHeader header = new JWEHeader(ALGORITHM, METHOD);
JWEObject jweObject = new JWEObject(header, payload);
JWEEncrypter encrypter = new AESEncrypter(key.getEncoded());
jweObject.encrypt(encrypter);
String encryptedData = jweObject.serialize();
return Optional.of(new EncryptedData(encryptedData.getBytes()));
} catch (GeneralSecurityException | JOSEException e) {
log.error("Error encryption data: {}", e);
}
return Optional.empty();
}
代码示例来源:origin: de.adorsys.sts/sts-simple-encryption
public String encrypt(String plainText) {
Payload payload = new Payload(plainText);
JWEObject jweObject = new JWEObject(header, payload);
try {
jweObject.encrypt(jweEncrypter);
} catch (JOSEException e) {
throw new EncryptionException(e);
}
return jweObject.serialize();
}
}
代码示例来源:origin: de.adorsys.keycloak/user-secret-adapter-embedded
private String encrypt(String plain, byte[] key) {
Builder headerBuilder = new JWEHeader.Builder(JWEAlgorithm.DIR, EncryptionMethod.A128GCM);
JWEObject jweObj = new JWEObject(headerBuilder.build(), new Payload(plain));
try {
jweObj.encrypt(new DirectEncrypter(key));
} catch (JOSEException e) {
throw new IllegalStateException(e);
}
return jweObj.serialize();
}
代码示例来源:origin: de.adorsys.keycloak/user-secret-adapter-embedded
private String generateUserMainSecret(UserModel userModel, String secretAttrName, byte[] secretEncryptionPasswordPBKDF2) {
String userMainSecretPlain = RandomStringUtils.randomGraph(16);
Builder headerBuilder = new JWEHeader.Builder(JWEAlgorithm.DIR, EncryptionMethod.A128GCM);
JWEObject jweObj = new JWEObject(headerBuilder.build(), new Payload(userMainSecretPlain));
try {
jweObj.encrypt(new DirectEncrypter(secretEncryptionPasswordPBKDF2));
} catch (JOSEException e) {
throw new IllegalStateException(e);
}
String customSecretAttr = jweObj.serialize();
userModel.setAttribute(secretAttrName, Arrays.asList(customSecretAttr));
return userMainSecretPlain;
}
代码示例来源:origin: de.adorsys.sts/sts-resource-server
public String encrypt(JWK jwk, String rawSecret) throws SecretEncryptionException {
JWEEncrypter jweEncrypter;
jweEncrypter = JWEEncryptedSelector.getEncrypter(jwk, null, null);
Payload payload = new Payload(rawSecret);
// JWE encrypt secret.
JWEObject jweObj;
try {
jweObj = new JWEObject(getHeader(jwk), payload);
jweObj.encrypt(jweEncrypter);
} catch (JOSEException e) {
throw new SecretEncryptionException(e);
}
return jweObj.serialize();
}
代码示例来源:origin: de.adorsys.oauth/oauth-server
public static String serialize(JWTClaimsSet claimsSet, byte[] key) {
try {
// Create HMAC signer
JWSSigner signer = new MACSigner(key);
SignedJWT signedJWT = new SignedJWT(HEADER, claimsSet);
// Apply the HMAC
signedJWT.sign(signer);
// Create JWE object with signed JWT as payload
JWEObject jweObject = new JWEObject(
JWE_HEADER,
new Payload(signedJWT));
// Perform encryption
jweObject.encrypt(new DirectEncrypter(key));
// Serialise to JWE compact form
String jweString = jweObject.serialize();
return jweString;
} catch (JOSEException e) {
throw new IllegalStateException(e);
}
}
代码示例来源:origin: io.gravitee.management.idp/gravitee-management-api-idp-core
public String serialize(IdentityReference reference) throws Exception {
// Create HMAC signer
JWSSigner signer = new MACSigner(secretKey.getEncoded());
// Prepare JWT with claims set
JWTClaimsSet claimsSet = new JWTClaimsSet.Builder()
.subject(reference.getReference())
.issuer(reference.getSource())
.build();
SignedJWT signedJWT = new SignedJWT(new JWSHeader(JWSAlgorithm.HS256), claimsSet);
// Apply the HMAC protection
signedJWT.sign(signer);
// Create JWE object with signed JWT as payload
JWEObject jweObject = new JWEObject(
new JWEHeader.Builder(JWEAlgorithm.DIR, EncryptionMethod.A256GCM)
.contentType("JWT") // required to signal nested JWT
.build(),
new Payload(signedJWT));
// Perform encryption
jweObject.encrypt(new DirectEncrypter(secretKey.getEncoded()));
// Serialize to compact form
return new String(Base64.getEncoder().encode(jweObject.serialize().getBytes()));
}
代码示例来源:origin: gravitee-io/gravitee-management-rest-api
public String serialize(IdentityReference reference) throws Exception {
// Create HMAC signer
JWSSigner signer = new MACSigner(secretKey.getEncoded());
// Prepare JWT with claims set
JWTClaimsSet claimsSet = new JWTClaimsSet.Builder()
.subject(reference.getReference())
.issuer(reference.getSource())
.build();
SignedJWT signedJWT = new SignedJWT(new JWSHeader(JWSAlgorithm.HS256), claimsSet);
// Apply the HMAC protection
signedJWT.sign(signer);
// Create JWE object with signed JWT as payload
JWEObject jweObject = new JWEObject(
new JWEHeader.Builder(JWEAlgorithm.DIR, EncryptionMethod.A256GCM)
.contentType("JWT") // required to signal nested JWT
.build(),
new Payload(signedJWT));
// Perform encryption
jweObject.encrypt(new DirectEncrypter(secretKey.getEncoded()));
// Serialize to compact form
return new String(Base64.getEncoder().encode(jweObject.serialize().getBytes()));
}
代码示例来源:origin: de.adorsys.cryptoutils/encobject-jcloud
String jweEncryptedObject = jweObject.serialize();
代码示例来源:origin: de.adorsys.cryptoutils/encobject
@Override
public byte[] encrypt(byte[] data, KeySource keySource, KeyID keyID, Boolean compress) {
try {
ContentMetaInfo metaInfo = new ContentMetaInfo();
Key key = keySource.readKey(keyID);
PersistenceLayerContentMetaInfoUtil.setKeyID(metaInfo, keyID);
PersistenceLayerContentMetaInfoUtil.setEncryptionType(metaInfo, EncryptionType.JWE);
EncryptionParams encParams = EncParamSelector.selectEncryptionParams(key);
JWEHeader.Builder headerBuilder = new JWEHeader.Builder(encParams.getEncAlgo(), encParams.getEncMethod()).keyID(keyID.getValue());
ContentMetaInfoUtils.metaInfo2Header(metaInfo, headerBuilder);
if (compress != null && compress) {
headerBuilder = headerBuilder.compressionAlgorithm(CompressionAlgorithm.DEF);
}
JWEHeader header = headerBuilder.build();
JWEEncrypter jweEncrypter = JWEEncryptedSelector.getEncrypter(key, encParams.getEncAlgo(), encParams.getEncMethod());
JWEObject jweObject = new JWEObject(header, new Payload(data));
jweObject.encrypt(jweEncrypter);
String jweEncryptedObject = jweObject.serialize();
byte[] bytesToStore = jweEncryptedObject.getBytes("UTF-8");
return bytesToStore;
} catch (Exception e) {
throw BaseExceptionHandler.handle(e);
}
}
代码示例来源:origin: GluuFederation/oxAuth
return jweObject.serialize();
} catch (Exception e) {
System.out.println("Error encryption with Nimbus: " + e.getMessage());
代码示例来源:origin: org.pac4j/pac4j-jwt
return jweObject.serialize();
} else {
代码示例来源:origin: GluuFederation/oxAuth
@Test
public void nestedJWT() throws Exception {
RSAKey senderJWK = (RSAKey) JWK.parse(senderJwkJson);
RSAKey recipientPublicJWK = (RSAKey) (JWK.parse(recipientJwkJson));
// Create JWT
SignedJWT signedJWT = new SignedJWT(
new JWSHeader.Builder(JWSAlgorithm.RS256).keyID(senderJWK.getKeyID()).build(),
new JWTClaimsSet.Builder()
.subject("testi")
.issuer("https:devgluu.saminet.local")
.build());
signedJWT.sign(new RSASSASigner(senderJWK));
JWEObject jweObject = new JWEObject(
new JWEHeader.Builder(JWEAlgorithm.RSA_OAEP, EncryptionMethod.A128GCM)
.contentType("JWT") // required to indicate nested JWT
.build(),
new Payload(signedJWT));
// Encrypt with the recipient's public key
RSAEncrypter encrypter = new RSAEncrypter(recipientPublicJWK);
jweObject.encrypt(encrypter);
final String jweString = jweObject.serialize();
decryptAndValidateSignatureWithGluu(jweString);
}
代码示例来源:origin: org.apache.kerby/token-provider
throw new KrbException("Failed to encrypt the JWE object", e);
tokenStr = jweObject.serialize();
} else {
tokenStr = signedJWT.serialize();
代码示例来源:origin: apache/directory-kerby
throw new KrbException("Failed to encrypt the JWE object", e);
tokenStr = jweObject.serialize();
} else {
tokenStr = signedJWT.serialize();