public final class io.vertx.ext.auth.impl.jose.JWE extends java.lang.Object
{
private final javax.crypto.Cipher cipher;
private final io.vertx.ext.auth.impl.jose.JWK jwk;
public void <init>(io.vertx.ext.auth.impl.jose.JWK)
{
io.vertx.ext.auth.impl.jose.JWK v;
java.lang.RuntimeException v;
java.lang.IllegalArgumentException v;
io.vertx.ext.auth.impl.jose.JWE v;
javax.crypto.Cipher v;
java.security.GeneralSecurityException v;
java.lang.String v, v, v, v;
boolean v;
v := @this: io.vertx.ext.auth.impl.jose.JWE;
v := @parameter: io.vertx.ext.auth.impl.jose.JWK;
specialinvoke v.<java.lang.Object: void <init>()>();
v = virtualinvoke v.<io.vertx.ext.auth.impl.jose.JWK: java.lang.String use()>();
if v == null goto label;
v = "enc";
v = virtualinvoke v.<io.vertx.ext.auth.impl.jose.JWK: java.lang.String use()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("JWK isn\'t meant to perform JWE operations");
throw v;
label:
v = virtualinvoke v.<io.vertx.ext.auth.impl.jose.JWK: java.lang.String kty()>();
v = staticinvoke <javax.crypto.Cipher: javax.crypto.Cipher getInstance(java.lang.String)>(v);
v.<io.vertx.ext.auth.impl.jose.JWE: javax.crypto.Cipher cipher> = v;
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
v.<io.vertx.ext.auth.impl.jose.JWE: io.vertx.ext.auth.impl.jose.JWK jwk> = v;
return;
catch java.security.NoSuchAlgorithmException from label to label with label;
catch javax.crypto.NoSuchPaddingException from label to label with label;
}
public byte[] encrypt(byte[]) throws java.security.InvalidKeyException, javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException
{
java.lang.Throwable v;
byte[] v, v;
java.lang.IllegalStateException v;
io.vertx.ext.auth.impl.jose.JWK v;
java.security.PublicKey v;
io.vertx.ext.auth.impl.jose.JWE v;
javax.crypto.Cipher v, v, v, v;
v := @this: io.vertx.ext.auth.impl.jose.JWE;
v := @parameter: byte[];
v = v.<io.vertx.ext.auth.impl.jose.JWE: io.vertx.ext.auth.impl.jose.JWK jwk>;
v = virtualinvoke v.<io.vertx.ext.auth.impl.jose.JWK: java.security.PublicKey publicKey()>();
if v != null goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Key doesn\'t contain a pubKey material");
throw v;
label:
v = v.<io.vertx.ext.auth.impl.jose.JWE: javax.crypto.Cipher cipher>;
entermonitor v;
label:
v = v.<io.vertx.ext.auth.impl.jose.JWE: javax.crypto.Cipher cipher>;
virtualinvoke v.<javax.crypto.Cipher: void init(int,java.security.Key)>(1, v);
v = v.<io.vertx.ext.auth.impl.jose.JWE: javax.crypto.Cipher cipher>;
virtualinvoke v.<javax.crypto.Cipher: byte[] update(byte[])>(v);
v = v.<io.vertx.ext.auth.impl.jose.JWE: javax.crypto.Cipher cipher>;
v = virtualinvoke v.<javax.crypto.Cipher: byte[] doFinal()>();
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
public byte[] decrypt(byte[]) throws java.security.InvalidKeyException, javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException
{
java.lang.Throwable v;
byte[] v, v;
java.lang.IllegalStateException v;
io.vertx.ext.auth.impl.jose.JWK v;
io.vertx.ext.auth.impl.jose.JWE v;
javax.crypto.Cipher v, v, v, v;
java.security.PrivateKey v;
v := @this: io.vertx.ext.auth.impl.jose.JWE;
v := @parameter: byte[];
v = v.<io.vertx.ext.auth.impl.jose.JWE: io.vertx.ext.auth.impl.jose.JWK jwk>;
v = virtualinvoke v.<io.vertx.ext.auth.impl.jose.JWK: java.security.PrivateKey privateKey()>();
if v != null goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Key doesn\'t contain a secKey material");
throw v;
label:
v = v.<io.vertx.ext.auth.impl.jose.JWE: javax.crypto.Cipher cipher>;
entermonitor v;
label:
v = v.<io.vertx.ext.auth.impl.jose.JWE: javax.crypto.Cipher cipher>;
virtualinvoke v.<javax.crypto.Cipher: void init(int,java.security.Key)>(2, v);
v = v.<io.vertx.ext.auth.impl.jose.JWE: javax.crypto.Cipher cipher>;
virtualinvoke v.<javax.crypto.Cipher: byte[] update(byte[])>(v);
v = v.<io.vertx.ext.auth.impl.jose.JWE: javax.crypto.Cipher cipher>;
v = virtualinvoke v.<javax.crypto.Cipher: byte[] doFinal()>();
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
public java.lang.String label()
{
io.vertx.ext.auth.impl.jose.JWK v;
java.lang.String v;
io.vertx.ext.auth.impl.jose.JWE v;
v := @this: io.vertx.ext.auth.impl.jose.JWE;
v = v.<io.vertx.ext.auth.impl.jose.JWE: io.vertx.ext.auth.impl.jose.JWK jwk>;
v = virtualinvoke v.<io.vertx.ext.auth.impl.jose.JWK: java.lang.String label()>();
return v;
}
}