LINE.apk(点击下载) / b.java


package a8;

import android.util.Base64;
import em3.q;
import io.jsonwebtoken.JwsHeader;
import iz.a;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLConnection;
import java.security.KeyFactory;
import java.security.PublicKey;
import java.security.Signature;
import java.security.spec.X509EncodedKeySpec;
import java.util.Objects;
import org.json.JSONObject;
import sm3.r;

public final class b {
    public static final PublicKey a(String str) {
        byte[] decode = Base64.decode(r.A(r.A(r.A(str, "\n", "", false, 4), "-----BEGIN PUBLIC KEY-----", "", false, 4), "-----END PUBLIC KEY-----", "", false, 4), 0);
        q.e(decode, "Base64.decode(pubKeyString, Base64.DEFAULT)");
        PublicKey generatePublic = KeyFactory.getInstance("RSA").generatePublic(new X509EncodedKeySpec(decode));
        q.e(generatePublic, "kf.generatePublic(x509publicKey)");
        return generatePublic;
    }

    public static final String b(String str) {
        String str2;
        q.f(str, JwsHeader.KEY_ID);
        URLConnection openConnection = new URL("https://www.facebook.com/.well-known/oauth/openid/keys/").openConnection();
        Objects.requireNonNull(openConnection, "null cannot be cast to non-null type java.net.HttpURLConnection");
        HttpURLConnection httpURLConnection = (HttpURLConnection) openConnection;
        try {
            InputStream inputStream = httpURLConnection.getInputStream();
            q.e(inputStream, "connection.inputStream");
            InputStreamReader inputStreamReader = new InputStreamReader(inputStream, sm3.b.f143620b);
            str2 = new JSONObject(a.z(inputStreamReader instanceof BufferedReader ? (BufferedReader) inputStreamReader : new BufferedReader(inputStreamReader, 8192))).optString(str);
        } catch (Exception unused) {
            str2 = null;
        } catch (Throwable th4) {
            httpURLConnection.disconnect();
            throw th4;
        }
        httpURLConnection.disconnect();
        return str2;
    }

    public static final boolean c(PublicKey publicKey, String str, String str2) {
        q.f(str, "data");
        q.f(str2, "signature");
        try {
            Signature instance = Signature.getInstance("SHA256withRSA");
            instance.initVerify(publicKey);
            byte[] bytes = str.getBytes(sm3.b.f143620b);
            q.e(bytes, "(this as java.lang.String).getBytes(charset)");
            instance.update(bytes);
            byte[] decode = Base64.decode(str2, 8);
            q.e(decode, "Base64.decode(signature, Base64.URL_SAFE)");
            return instance.verify(decode);
        } catch (Exception unused) {
            return false;
        }
    }
}