本文整理汇总了Java中org.jose4j.jwe.JsonWebEncryption.getPlaintextString方法的典型用法代码示例。如果您正苦于以下问题:Java JsonWebEncryption.getPlaintextString方法的具体用法?Java JsonWebEncryption.getPlaintextString怎么用?Java JsonWebEncryption.getPlaintextString使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.jose4j.jwe.JsonWebEncryption
的用法示例。
在下文中一共展示了JsonWebEncryption.getPlaintextString方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: jweDecrypt
import org.jose4j.jwe.JsonWebEncryption; //导入方法依赖的package包/类
private static String jweDecrypt(Key key, String jwt) throws Exception {
JsonWebEncryption jwe = new JsonWebEncryption();
jwe.setAlgorithmConstraints(
new AlgorithmConstraints(
ConstraintType.WHITELIST,
KeyManagementAlgorithmIdentifiers.RSA_OAEP));
jwe.setContentEncryptionAlgorithmConstraints(
new AlgorithmConstraints(
ConstraintType.WHITELIST,
ContentEncryptionAlgorithmIdentifiers.AES_256_CBC_HMAC_SHA_512));
jwe.setCompactSerialization(jwt);
jwe.setKey(key);
return jwe.getPlaintextString();
}
示例2: decrypt
import org.jose4j.jwe.JsonWebEncryption; //导入方法依赖的package包/类
@Override
public String decrypt(String data, PrivateKey privateKey) throws JWEFailure {
String decrypted;
JsonWebEncryption jwe = new JsonWebEncryption();
jwe.setKey(privateKey);
try {
jwe.setCompactSerialization(data);
decrypted = jwe.getPlaintextString();
} catch (JoseException e) {
throw new JWEFailure("An error occurred attempting to decrypt a JWE", e);
}
return decrypted;
}
示例3: jweRoundTripExample
import org.jose4j.jwe.JsonWebEncryption; //导入方法依赖的package包/类
@Test
public void jweRoundTripExample() throws JoseException
{
//
// An example showing the use of JSON Web Encryption (JWE) to encrypt and then decrypt some content
// using a symmetric key and direct encryption.
//
// The content to be encrypted
String message = "Well, as of this moment, they're on DOUBLE SECRET PROBATION!";
// The shared secret or shared symmetric key represented as a octet sequence JSON Web Key (JWK)
String jwkJson = "{\"kty\":\"oct\",\"k\":\"Fdh9u8rINxfivbrianbbVT1u232VQBZYKx1HGAGPt2I\"}";
JsonWebKey jwk = JsonWebKey.Factory.newJwk(jwkJson);
// Create a new Json Web Encryption object
JsonWebEncryption senderJwe = new JsonWebEncryption();
// The plaintext of the JWE is the message that we want to encrypt.
senderJwe.setPlaintext(message);
// Set the "alg" header, which indicates the key management mode for this JWE.
// In this example we are using the direct key management mode, which means
// the given key will be used directly as the content encryption key.
senderJwe.setAlgorithmHeaderValue(KeyManagementAlgorithmIdentifiers.DIRECT);
// Set the "enc" header, which indicates the content encryption algorithm to be used.
// This example is using AES_128_CBC_HMAC_SHA_256 which is a composition of AES CBC
// and HMAC SHA2 that provides authenticated encryption.
senderJwe.setEncryptionMethodHeaderParameter(ContentEncryptionAlgorithmIdentifiers.AES_128_CBC_HMAC_SHA_256);
// Set the key on the JWE. In this case, using direct mode, the key will used directly as
// the content encryption key. AES_128_CBC_HMAC_SHA_256, which is being used to encrypt the
// content requires a 256 bit key.
senderJwe.setKey(jwk.getKey());
// Produce the JWE compact serialization, which is where the actual encryption is done.
// The JWE compact serialization consists of five base64url encoded parts
// combined with a dot ('.') character in the general format of
// <header>.<encrypted key>.<initialization vector>.<ciphertext>.<authentication tag>
// Direct encryption doesn't use an encrypted key so that field will be an empty string
// in this case.
String compactSerialization = senderJwe.getCompactSerialization();
// Do something with the JWE. Like send it to some other party over the clouds
// and through the interwebs.
System.out.println("JWE compact serialization: " + compactSerialization);
// That other party, the receiver, can then use JsonWebEncryption to decrypt the message.
JsonWebEncryption receiverJwe = new JsonWebEncryption();
// Set the compact serialization on new Json Web Encryption object
receiverJwe.setCompactSerialization(compactSerialization);
// Symmetric encryption, like we are doing here, requires that both parties have the same key.
// The key will have had to have been securely exchanged out-of-band somehow.
receiverJwe.setKey(jwk.getKey());
// Get the message that was encrypted in the JWE. This step performs the actual decryption steps.
String plaintext = receiverJwe.getPlaintextString();
// And do whatever you need to do with the clear text message.
System.out.println("plaintext: " + plaintext);
}