package com.worklight.common.security;

import android.content.Context;
import android.content.pm.PackageManager;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.provider.Settings.Secure;
import com.worklight.common.WLConfig;
import com.worklight.utils.Base64;
import java.security.KeyStore.PrivateKeyEntry;
import java.security.cert.Certificate;
import java.util.UUID;
import org.json.JSONObject;

public class WLDeviceAuthManager extends WLCertManager
{
  private static String KEYSTORE_FILENAME = ".keystore";
  private static WLDeviceAuthManager instance;
  private static char[] keyStorePassword = null;
  private String deviceUuid;

  protected WLDeviceAuthManager()
  {
    super(KEYSTORE_FILENAME, keyStorePassword);
  }

  public static WLDeviceAuthManager getInstance()
  {
    try
    {
      if (instance == null)
        instance = new WLDeviceAuthManager();
      WLDeviceAuthManager localWLDeviceAuthManager = instance;
      return localWLDeviceAuthManager;
    }
    finally
    {
    }
  }

  protected String getAlias(String paramString)
  {
    if (paramString.equals("application"))
      paramString = "app:" + WLConfig.getInstance().getAppId();
    return paramString;
  }

  public String getDeviceUUID(Context paramContext)
  {
    if (this.deviceUuid == null)
    {
      boolean bool = paramContext.getPackageManager().hasSystemFeature("android.hardware.wifi");
      String str1 = null;
      if (bool)
        str1 = ((WifiManager)paramContext.getSystemService("wifi")).getConnectionInfo().getMacAddress();
      String str2 = Settings.Secure.getString(paramContext.getContentResolver(), "android_id");
      if (str1 != null)
        str2 = str2 + str1;
      this.deviceUuid = UUID.nameUUIDFromBytes(str2.getBytes()).toString();
    }
    return this.deviceUuid;
  }

  public String signDeviceAuth(String paramString1, String paramString2, boolean paramBoolean)
    throws Exception
  {
    if ((paramBoolean) && (isCertificateExists(paramString2)))
    {
      JSONObject localJSONObject = new JSONObject();
      localJSONObject.put("alg", "RS256");
      KeyStore.PrivateKeyEntry localPrivateKeyEntry = getPrivateKeyEntry(paramString2);
      localJSONObject.put("x5c", Base64.encodeUrlSafe(localPrivateKeyEntry.getCertificate().getEncoded(), "UTF-8"));
      String str1 = localJSONObject.toString();
      String str2 = Base64.encodeUrlSafe(str1.getBytes(), "UTF-8") + "." + Base64.encodeUrlSafe(paramString1.getBytes(), "UTF-8");
      String str3 = Base64.encodeUrlSafe(signData(str2, localPrivateKeyEntry.getPrivateKey()), "UTF-8");
      return str2 + "." + str3;
    }
    return paramString1;
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.worklight.common.security.WLDeviceAuthManager
 * JD-Core Version:    0.6.2
 */