در این آموزش ما میاییم SHA1 امضای برنامه رو میگیریم که برای هر برنامه ای لازم است .
شخیص امضای دیجیتال برنامه به طور معمول، بعد از انجام مهندسی معکوس، امضای برنامه میشکند و به راحتی میتوان این موضوع را تشخیص داد؛ به همین دلیل، لازم است که در سمت سرور، قبل از ارائه محتوا، اطمینان حاصل شود که درخواست از نسخه اصلی برنامه انجام شده است. برای این منظور، ابتدا تابع زیر را به برنامه خود اضافه کنید:
برای به دست آوردن رشته منحصر به فرد امضای برنامه، لطفا این کد را به بخش Activity_Create اضافه کرده و یک بار برنامه را با امضای خود اجرا کنید:
✨ نکات مهم:
• کد آماده و تستشده (3 قطعهکد)
• کار با کتابخانههای: JavaObject، Encryption
• کپی و استفاده مستقیم در پروژه B4A
📚 کتابخانههای مورد نیاز:
JavaObject، Encryption
(از مسیر Libraries در محیط B4A تیک بزنید.)
🚀 نحوه استفاده:
کد زیر را کپی کنید و در Sub یا ماژول مناسب پروژه خود قرار دهید؛ کتابخانههای اعلامشده را تیک بزنید.
| دستهبندی | تکه کدها |
| تاریخ انتشار | ۲۷ شهریور ۱۴۰۵ - ۰۰:۱۹ |
| تعداد بازدید | ۳ |
| تعداد فروش | ۰ |
| فرمت تحویل | فایل دانلودی (بعد از پرداخت آنی فعال میشود) |
| پشتیبانی | تیکت پشتیبانی در پنل کاربری |
ویژگیهای کلیدی
- تکهکد آماده B4A
- کاملاً رایگان
- کد تستشده با توضیح فارسی
- کتابخانه: JavaObject، Encryption
هنوز نظری ثبت نشده است. اولین نفر باشید!
برای ثبت نظر وارد شوید. (ثبت نظر پس از خرید فعال میشود)
Sub KeyDetection As String
Try
Dim jo As JavaObject
jo.InitializeContext
Dim signatures() As Object = jo.RunMethodJO("getPackageManager", Null).RunMethodJO("getPackageInfo", _
Array (Application.PackageName, 0x00000040)).GetField("signatures")
Dim sig As JavaObject = signatures(0)
Dim md As MessageDigest
Dim hash() As Byte = md.GetMessageDigest(sig.RunMethod("toByteArray", Null), "SHA-1")
Dim bc As ByteConverter
Dim raw As String = bc.HexFromBytes(hash)
Dim sb As StringBuilder
sb.Initialize
For i = 0 To raw.Length - 2 Step 2
sb.Append(raw.CharAt(i)).Append(raw.CharAt(i + 1)).Append(":")
Next
sb.Remove(sb.Length - 1, sb.Length)
Return sb.ToString
Catch
Return "Null"
End Try
End Sub
Log(KeyDetection)
JavaObject
MessageDigest
ByteConverter