Last active
May 7, 2022 04:08
-
-
Save hok00age/bf7375677d49860f3940 to your computer and use it in GitHub Desktop.
Taruh code ini di Class Activity. Return berupa string dapat Anda masukkan di perujuk http://rajaongkir.com/akun/ubahperujuk
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
private String getCertificate() { | |
String certificate = null; | |
PackageManager pm = this.getPackageManager(); | |
String packageName = this.getPackageName(); | |
int flags = PackageManager.GET_SIGNATURES; | |
PackageInfo packageInfo = null; | |
try { | |
packageInfo = pm.getPackageInfo(packageName, flags); | |
} catch (NameNotFoundException e) { | |
} | |
Signature[] signatures = packageInfo.signatures; | |
byte[] cert = signatures[0].toByteArray(); | |
InputStream input = new ByteArrayInputStream(cert); | |
CertificateFactory cf = null; | |
try { | |
cf = CertificateFactory.getInstance("X509"); | |
} catch (CertificateException e) { | |
e.printStackTrace(); | |
} | |
X509Certificate c = null; | |
try { | |
c = (X509Certificate) cf.generateCertificate(input); | |
} catch (CertificateException e) { | |
} | |
try { | |
MessageDigest md = MessageDigest.getInstance("SHA1"); | |
byte[] publicKey = md.digest(c.getPublicKey().getEncoded()); | |
StringBuffer hexString = new StringBuffer(); | |
for (int i = 0; i < publicKey.length; i++) { | |
String appendString = Integer.toHexString(0xFF & publicKey[i]); | |
if (appendString.length() == 1) | |
hexString.append("0"); | |
hexString.append(appendString); | |
} | |
certificate = hexString.toString(); | |
} catch (NoSuchAlgorithmException e1) { | |
} | |
return certificate + ";" + packageName; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
private String getCertificate() {
String certificate = null;
PackageManager pm = this.getPackageManager();
String packageName = this.getPackageName();
int flags = PackageManager.GET_SIGNATURES;
PackageInfo packageInfo = null;
try {
packageInfo = pm.getPackageInfo(packageName, flags);
} catch (NameNotFoundException e) {
}
Signature[] signatures = packageInfo.signatures;
byte[] cert = signatures[0].toByteArray();
InputStream input = new ByteArrayInputStream(cert);
CertificateFactory cf = null;
try {
cf = CertificateFactory.getInstance("X509");
} catch (CertificateException e) {
e.printStackTrace();
}
X509Certificate c = null;
try {
c = (X509Certificate) cf.generateCertificate(input);
} catch (CertificateException e) {
}
try {
MessageDigest md = MessageDigest.getInstance("SHA1");
byte[] publicKey = md.digest(c.getPublicKey().getEncoded());
StringBuffer hexString = new StringBuffer();
for (int i = 0; i < publicKey.length; i++) {
String appendString = Integer.toHexString(0xFF & publicKey[i]);
if (appendString.length() == 1)
hexString.append("0");
hexString.append(appendString);
}
certificate = hexString.toString();
} catch (NoSuchAlgorithmException e1) {
}
return certificate + ";" + packageName;
}