class JWKHelper {

    /**
     * Build the secret from the JWK JSON.
     *
     * @param json the json
     * @return the secret
     */
    public static String buildSecretFromJwk(final String json) {
        CommonHelper.assertNotBlank("json", json);

        try {
            val octetSequenceKey = OctetSequenceKey.parse(json);
            return new String(octetSequenceKey.toByteArray(), "UTF-8");
        } catch (final UnsupportedEncodingException | ParseException e) {
            throw new TechnicalException(e);
        }
    }

    /**
     * Build the RSA key pair from the JWK JSON.
     *
     * @param json the json
     * @return the key pair
     */
    public static KeyPair buildRSAKeyPairFromJwk(final String json) {
        CommonHelper.assertNotBlank("json", json);

        try {
            val rsaKey = RSAKey.parse(json);
            return rsaKey.toKeyPair();
        } catch (final JOSEException | ParseException e) {
            throw new TechnicalException(e);
        }
    }

    /**
     * Build the EC key pair from the JWK JSON.
     *
     * @param json the json
     * @return the key pair
     */
    public static KeyPair buildECKeyPairFromJwk(final String json) {<FILL_FUNCTION_BODY>}
}

        CommonHelper.assertNotBlank("json", json);

        try {
            val ecKey = ECKey.parse(json);
            return ecKey.toKeyPair();
        } catch (final JOSEException | ParseException e) {
            throw new TechnicalException(e);
        }
    
<no_super_class>