- Added realracing3-community.apk (71.57 MB) - Removed 32-bit support (armeabi-v7a) - Only includes arm64-v8a libraries - Decompiled source code included - Added README-community.md with analysis
58 lines
2.0 KiB
Java
58 lines
2.0 KiB
Java
package com.mbridge.msdk.playercommon.exoplayer2.drm;
|
|
|
|
import android.util.Log;
|
|
import com.mbridge.msdk.foundation.entity.CampaignEx;
|
|
import com.mbridge.msdk.playercommon.exoplayer2.util.Util;
|
|
import org.json.JSONArray;
|
|
import org.json.JSONException;
|
|
import org.json.JSONObject;
|
|
|
|
/* loaded from: classes4.dex */
|
|
final class ClearKeyUtil {
|
|
private static final String TAG = "ClearKeyUtil";
|
|
|
|
private ClearKeyUtil() {
|
|
}
|
|
|
|
public static byte[] adjustRequestData(byte[] bArr) {
|
|
return Util.SDK_INT >= 27 ? bArr : Util.getUtf8Bytes(base64ToBase64Url(Util.fromUtf8Bytes(bArr)));
|
|
}
|
|
|
|
public static byte[] adjustResponseData(byte[] bArr) {
|
|
if (Util.SDK_INT >= 27) {
|
|
return bArr;
|
|
}
|
|
try {
|
|
JSONObject jSONObject = new JSONObject(Util.fromUtf8Bytes(bArr));
|
|
StringBuilder sb = new StringBuilder("{\"keys\":[");
|
|
JSONArray jSONArray = jSONObject.getJSONArray("keys");
|
|
for (int i = 0; i < jSONArray.length(); i++) {
|
|
if (i != 0) {
|
|
sb.append(",");
|
|
}
|
|
JSONObject jSONObject2 = jSONArray.getJSONObject(i);
|
|
sb.append("{\"k\":\"");
|
|
sb.append(base64UrlToBase64(jSONObject2.getString(CampaignEx.JSON_KEY_AD_K)));
|
|
sb.append("\",\"kid\":\"");
|
|
sb.append(base64UrlToBase64(jSONObject2.getString("kid")));
|
|
sb.append("\",\"kty\":\"");
|
|
sb.append(jSONObject2.getString("kty"));
|
|
sb.append("\"}");
|
|
}
|
|
sb.append("]}");
|
|
return Util.getUtf8Bytes(sb.toString());
|
|
} catch (JSONException e) {
|
|
Log.e(TAG, "Failed to adjust response data: " + Util.fromUtf8Bytes(bArr), e);
|
|
return bArr;
|
|
}
|
|
}
|
|
|
|
private static String base64ToBase64Url(String str) {
|
|
return str.replace('+', '-').replace('/', '_');
|
|
}
|
|
|
|
private static String base64UrlToBase64(String str) {
|
|
return str.replace('-', '+').replace('_', '/');
|
|
}
|
|
}
|