অ্যান্ড্রয়েড বিকাশকারীরা কীভাবে তাদের অ্যাপ্লিকেশনগুলি আইএপি হ্যাকারদের থেকে রক্ষা করতে পারে



সমস্যাগুলি দূর করার জন্য আমাদের উপকরণটি ব্যবহার করে দেখুন

এই গাইডটি অ্যান্ড্রয়েড অ্যাপ বিকাশকারীদের জন্য যারা আইএপিগুলি থেকে আয় উপার্জন করে এবং হ্যাকিংয়ের সরঞ্জামগুলির মাধ্যমে হ্যাকার এবং প্রতারণামূলক ক্রয় থেকে নিজেকে রক্ষা করতে চায়। সেখানে বেশ কয়েকটি সুপরিচিত আইএপি হ্যাকিংয়ের সরঞ্জাম রয়েছে, যা আমি এখানে তালিকাভুক্ত করব না, তবে মূলত এই সরঞ্জামগুলি ব্যবহারকারীকে ফ্রি আইএপি উপভোগ করার অনুমতি দেওয়ার জন্য আপনার অ্যাপটিতে মিথ্যা ক্রয়ের রশিদ প্রেরণ করে। এটি মাসিক সাবস্ক্রিপশন থেকে ইন-গেম টোকেনের যে কোনও কিছু হতে পারে।





এই হ্যাকিং সরঞ্জামগুলির নতুন সংস্করণ সর্বদা প্রকাশিত হচ্ছে এবং তাদের সর্বশেষ আপডেটগুলি এবং পদ্ধতিগুলি সম্পর্কে সচেতন থাকার অধ্যবসায় খুব গুরুত্বপূর্ণ, আপনার অ্যাপ্লিকেশন আইএপিএস চুরি হওয়া থেকে রক্ষা করার জন্য কয়েকটি জিনিস আপনি করতে পারেন। সর্বাধিক উল্লেখযোগ্যভাবে, আপনাকে সার্ভার-সাইড আইএপি যাচাইকরণের কয়েকটি পদ্ধতি সক্ষম করতে হবে, যা আমি নীচে বিস্তারিত করব।



এই গাইডটি newbies জন্য নয়, কিন্তু অভিজ্ঞ অ্যাপ বিকাশকারীরা যারা এই গাইডের বিভিন্ন লিঙ্গো বুঝতে পারবেন understand

বিশেষত এই উদ্দেশ্যে গিট রেপো প্লাগ-ইন ব্যবহার করা:

পাইরেসিচেকার

আপনার প্রকল্পে ভাণ্ডার যুক্ত করুন build.gradle :



ভান্ডারগুলি {

মেভেন {

url 'https://jitpack.io'

}

}

এবং আপনার মডিউলে লাইব্রেরি যুক্ত করুন build.gradle :

নির্ভরতা {

সংকলন ‘com.github.javiersantos: পাইরেসিচেকার: 1.1’

}

সুপারিশ

  • আপনার উত্পাদন প্রকাশে সর্বদা প্রোগার্ড সক্ষম করুন।
  • যত তাড়াতাড়ি সম্ভব একটি বৈধ লাইসেন্সের জন্য চেক করার জন্য পাইরেসিচেকারটিকে আপনার অনক্রিট পদ্ধতিতে অন্তর্ভুক্ত করা উচিত।
  • লাইসেন্সটি বৈধ না হলে ডায়ালগের পরিবর্তে একটি নতুন ক্রিয়াকলাপ দেখানোর পরামর্শ দেওয়া হয়। এইভাবে আপনি নিশ্চিত হন যে অ্যাপ্লিকেশনটির মূল ক্রিয়াকলাপ শেষ হয়েছে। দেখা ' একটি ডায়ালগ বা একটি নতুন ক্রিয়াকলাপে ফলাফল প্রদর্শন করুন '।

গুগল প্লে লাইসেন্সিং (এলভিএল) যাচাই করুন

গুগল প্লে একটি লাইসেন্সিং পরিষেবা দেয় যা আপনাকে গুগল প্লেতে প্রকাশিত অ্যাপ্লিকেশনগুলির জন্য লাইসেন্স নীতিমালা প্রয়োগ করতে দেয়। গুগল প্লে লাইসেন্সিংয়ের মাধ্যমে আপনার অ্যাপ্লিকেশনটি বর্তমান ব্যবহারকারীর লাইসেন্সিংয়ের স্থিতি পেতে গুগল প্লেকে জিজ্ঞাসা করতে পারে।

গুগল প্লে এর মাধ্যমে আপনি যে অ্যাপ্লিকেশনটি প্রকাশ করেন তা গুগল প্লে লাইসেন্সিং পরিষেবা ব্যবহার করতে পারে। কোনও বিশেষ অ্যাকাউন্ট বা নিবন্ধকরণের প্রয়োজন নেই।

নতুন পাইরেসিচেকার (এটি)

.enableGooglePlayLicensing ('BASE_64_LICENSE_KEY')

...

.start ();

আপনার BASE64 লাইসেন্স কীটি পুনরুদ্ধার করতে আপনার অ্যাপ্লিকেশনটি অবশ্যই আপলোড করতে হবে গুগল প্লে বিকাশকারী কনসোল । তারপরে আপনার অ্যাপ্লিকেশন -> পরিষেবা এবং API- এ অ্যাক্সেস করুন।

গুগল প্লে লাইসেন্সিং ব্যবহার করার সময় পরিষেবাটি চলমান একাধিক দৃষ্টান্ত এড়াতে আপনার ক্রিয়াকলাপের onDestroy () পদ্ধতিতে .destroy () কল করা উচিত।

আপনার অ্যাপ্লিকেশন এর স্বাক্ষর শংসাপত্র যাচাই করুন (স্বাক্ষর)

ব্যবহারকারীদের ডিভাইসে অ্যাপটি ইনস্টল করার আগে বিকাশকারীদের সর্বদা তাদের ব্যক্তিগত কী / শংসাপত্র (একটি। কিস্টোর ফাইলে থাকা) দিয়ে অ্যাপ্লিকেশনগুলিতে স্বাক্ষর করতে হবে। স্বাক্ষরকারী শংসাপত্রটি অবশ্যই অ্যাপ্লিকেশনটির সারা জীবন জুড়ে থাকবে এবং সাধারণত 25 বছর মেয়াদ শেষ হতে হবে have

অ্যাপ্লিকেশন স্বাক্ষরটি নষ্ট হয়ে যাবে যদি .apk কোনওভাবেই পরিবর্তন করা হয় - স্বাক্ষরযুক্ত অ্যাপসটি সাধারণত ইনস্টল করা যায় না। উদাহরণস্বরূপ, কোনও আক্রমণকারীর অর্থ প্রদান ছাড়াই সম্পূর্ণ অ্যাপ্লিকেশন বৈশিষ্ট্য সক্ষম করতে লাইসেন্স-চেকিং কোড অপসারণের কল্পনা করতে পারি। সংবেদনশীল ব্যবহারকারীর ডেটা সংগ্রহের জন্য একটি বৈধ অ্যাপে ম্যালওয়্যার অন্তর্ভুক্ত করার জন্য আরও বিপজ্জনক উদাহরণ হ'ল .apk পরিবর্তন করা। পরিবর্তিত .apk ইনস্টল করার জন্য, আক্রমণকারীকে অবশ্যই এটি ত্যাগ করতে হবে।

নতুন পাইরেসিচেকার (এটি)

.enableSigningCertificate ('478yYkKAQF + KST8y4ATKvHkYibo =') // উত্পাদনের সংস্করণের জন্য আসল APK স্বাক্ষর

...

.start ();

সাবধান হও!! পাইরেসিচেকার ইউটিস পদ্ধতি ব্যবহার করে আপনার অ্যাপ্লিকেশন স্বাক্ষর পুনরুদ্ধার করা যেতে পারে। নিশ্চিত হয়ে নিন যে আপনি আপনার উত্পাদনের কীস্টোর (ডিইবিইউজি ব্যবহার করছেন না) ব্যবহার করে আপনার APK এ স্বাক্ষর করেছেন এবং যে সংস্করণটি আপনি বিতরণ করার পরিকল্পনা করছেন সেটি ইনস্টল করেছেন। তারপরে কনসোলে এই পদ্ধতিতে ফেরানো স্বাক্ষরটি অনুলিপি করুন এবং .enableSigningCerર્ટate ('YOUR_APK_SIGNATURE') এ পেস্ট করুন

// এই পদ্ধতিটি আপনার অ্যাপ্লিকেশন স্বাক্ষরটি কনসোলে মুদ্রণ করবে

লগ.ই ('স্বাক্ষর', পাইরেসিচেকার ইউটি.স.এপএপকে স্বাক্ষর (এটি));

ইনস্টলারটি যাচাই করুন

আপনি যদি কেবলমাত্র কোনও নির্দিষ্ট দোকানে অ্যাপ্লিকেশন বিতরণ করার পরিকল্পনা করেন তবে এই কৌশলটি অন্য কোনও স্টোর ব্যবহার করে অ্যাপ্লিকেশন ইনস্টল করা থেকে বিরত থাকবে।

সমর্থিত স্টোর: গুগল প্লে, অ্যামাজন অ্যাপ স্টোর এবং স্যামসং গ্যালাক্সি অ্যাপ্লিকেশন।

নতুন পাইরেসিচেকার (এটি)

.enableInstallerId (ইনস্টলারআইডি। GOOGLE_PLAY)

.enableInstallerId (ইনস্টলারআইডি.আমাজোন_এপিপিপিওরে)

.enableInstallerId (InstallerID.GALAXY_APPS)

...

.start ();

সাবধান হও!! এটি সত্যিই একটি সীমাবদ্ধ কৌশল কারণ এটি আপনার অ্যাপ্লিকেশনটিকে অন্য বাজার ব্যবহার করে বা ডিভাইসে .apk সরাসরি ইনস্টল করা থেকে আটকাবে। বেশিরভাগ ক্ষেত্রে এটি প্রস্তাবিত নয়।

জলদস্যু অ্যাপগুলির ব্যবহার যাচাই করুন

আপনি যদি পরীক্ষা করতে চান যে ব্যবহারকারীর জলদস্যু অ্যাপ্লিকেশন ইনস্টল রয়েছে কিনা, আপনি এই কোডটি ব্যবহার করতে পারেন।

এটি চেক করবে: লাকি প্যাচার, ইউরেট প্যাচার, ফ্রিডম এবং ক্রিহ্যাক।

নতুন পাইরেসিচেকার (এটি)

.enableUnauthorised অ্যাপস চেক ()

...

.start ();

এই জলদস্যু অ্যাপগুলি আনইনস্টল হয়ে গেলেও আপনি অ্যাপ্লিকেশনটিকে ব্লক করতে পারেন। এটি আপনার অ্যাপ্লিকেশন ব্যবহার চালিয়ে যাওয়ার জন্য পাইরেট অ্যাপটি আনইনস্টল করে প্যাচ করা থেকে অ্যাপটিকে আটকা দেয়। পাইরেট অ্যাপটি কখন সনাক্ত করা হয়েছে তা জানতে লাইব্রেরিটি একটি SharedPreferences মান সংরক্ষণ করবে।

এই কাজটি করার দুটি পদ্ধতি আছে:

আপনি ফলাফলটি যেখানে সংরক্ষণ করতে চান সেখানে ভাগ করা পছন্দসই নামগুলি পছন্দ করুন।

নতুন পাইরেসিচেকার (এটি)

.enableUnauthorised অ্যাপস চেক ()

। blockIfUnauthorised অ্যাপ্লিকেশনটি আনইনস্টল করা হয়েছে (পছন্দসমূহ, 'app_unauthorised') // আপনার নিজের মান দিয়ে 'app_unauthorised' পরিবর্তন করুন

...

.start ();

আপনি যে ফলাফলটি সংরক্ষণ করতে চান সেখানে ভাগ করা পছন্দসই নাম এবং পছন্দটির নাম সংজ্ঞায়িত করুন।

নতুন পাইরেসিচেকার (এটি)

.enableUnauthorised অ্যাপস চেক ()

। blockIfUnauthorised অ্যাপ্লিকেশনটি আনইনস্টল করা ('লাইসেন্স_প্রিফারেন্স', 'app_unauthorised') // আপনার নিজস্ব মান সহ 'লাইসেন্স_পরিচয়' এবং 'app_unauthorised' পরিবর্তন করুন

...

.start ();

তৃতীয় পক্ষের অ্যাপ্লিকেশনগুলির ব্যবহার যাচাই করুন

আপনি যদি তদন্ত করতে চান যে ব্যবহারকারীর তৃতীয় পক্ষের অ্যাপ্লিকেশন ইনস্টল রয়েছে কিনা, আপনি এই কোডটি ব্যবহার করতে পারেন।

এটি যাচাই করবে: অ্যাপটোইড, ব্ল্যাকমার্ট, মোবাজেনি, 1 মোবাইল, গেটএপক, গেটজার, স্লাইডম এবং এসি মার্কেট।

নতুন পাইরেসিচেকার (এটি)

.enableStoresCheck ()

...

.start ();

অ্যাপটি কোনও ডিবাগ বিল্ড কিনা তা যাচাই করুন

যদি আপনার অ্যাপ্লিকেশনটি বিকাশের প্রক্রিয়ার বাইরে কোনও এমুলেটরটিতে চলছে তবে এটি এমন একটি ইঙ্গিত দেয় যে আপনি ব্যতীত অন্য কেউ অ্যাপটিকে বিশ্লেষণ করার চেষ্টা করছেন।

নতুন পাইরেসিচেকার (এটি)

.enableDebugCheck ()

...

.start ();

অ্যাপ্লিকেশনটি কোনও এমুলেটরটিতে চলছে কিনা তা যাচাই করুন

উন্নয়নের বাইরে, আপনার অ্যাপ্লিকেশনটি কোনও এমুলেটরটিতে চলমান হওয়া উচিত নয় এবং ডিবাগযোগ্য সক্ষমযুক্ত অ্যাপ্লিকেশনগুলি নিরস্ত করা উচিত কারণ এটি সংযুক্ত কম্পিউটারগুলিকে অ্যান্ড্রয়েড ডিবাগ ব্রিজের মাধ্যমে অ্যাপ্লিকেশনটি অ্যাক্সেস করতে এবং ডিবাগ করতে দেয়।

বুলিয়ান গভীর = মিথ্যা;

নতুন পাইরেসিচেকার (এটি)

.enableEmulatorCheck (গভীর)

...

.start ();

বিঃদ্রঃ: ডিভাইসটি এমুলেটর কিনা তা সনাক্ত করতে গভীর বুলিয়ান লাইব্রেরিটিকে অতিরিক্ত চেক করে তোলে। এটি কিছু অদ্ভুত ক্রাশ হতে পারে, তাই এটি ব্যবহার করার সময় বুদ্ধিমান হন।

SharedPreferences মধ্যে লাইসেন্স চেক ফলাফল সংরক্ষণ করুন

লাইসেন্স চেকের ফলাফল সংরক্ষণ করা একাধিকবার। স্টার্ট () কল না করেই লাইসেন্সের স্থিতি পরীক্ষা করার জন্য কার্যকর।

এই কাজটি করার দুটি পদ্ধতি আছে:

আপনি ফলাফলটি যেখানে সংরক্ষণ করতে চান সেখানে ভাগ করা পছন্দসই নামগুলি পছন্দ করুন।

নতুন পাইরেসিচেকার (এটি)

.SaveResultToSharedPreferences (পছন্দসমূহ, 'বৈধ_লাইসেন্স') // আপনার নিজস্ব মান সহ 'বৈধ_লিক্স' পরিবর্তন করুন

...

.start ();

আপনি যে ফলাফলটি সংরক্ষণ করতে চান সেখানে ভাগ করা পছন্দসই নাম এবং পছন্দটির নাম সংজ্ঞায়িত করুন।

নতুন পাইরেসিচেকার (এটি)

.SaveResultToSharedPreferences ('লাইসেন্স_প্রিফারেন্সস', 'বৈধ_লাইসেন্স') // আপনার নিজস্ব মান সহ 'লাইসেন্স_প্রিফারেন্স' এবং 'বৈধ_লাইসেন্স' পরিবর্তন করুন

...

.start ();

কাস্টমাইজেশন

একটি ডায়ালগ বা একটি নতুন ক্রিয়াকলাপে ফলাফল প্রদর্শন করুন

লাইসেন্সটি বৈধ না হলে ডায়ালগের পরিবর্তে একটি নতুন ক্রিয়াকলাপ দেখানোর পরামর্শ দেওয়া হয়। এইভাবে আপনি নিশ্চিত হন যে অ্যাপ্লিকেশনটির মূল ক্রিয়াকলাপ শেষ হয়েছে।

ডিফল্টরূপে একটি বাতিল-বাতিল ডায়ালগ প্রদর্শিত হবে।

নতুন পাইরেসিচেকার (এটি)

.ডিসপ্লে (প্রদর্শন.অ্যাকটিভিটি)

...

.start ();

ডিফল্টরূপে, প্রদর্শিত ক্রিয়াকলাপটি লাইব্রেরির রঙগুলি ব্যবহার করবে। একটি কাস্টম প্রাথমিক এবং প্রাথমিক গা dark় রঙ প্রয়োগ করতে, এবং ক্রিয়াকলাপটি স্বাভাবিক বা হালকা স্থিতি দণ্ড প্রদর্শন করা উচিত কিনা তা নির্ধারণ করতে:

.অ্যাক্টিভিটিজ ইংরাজির সাথে (আর.সি.এলআর। রঙিনপ্রাইমারী, আর.সি.এলআর। কালারপ্রিমারি ডার্ক, লাইটস্ট্যাটাসবার সহ)

আপনি এই ক্রিয়াকলাপের সামগ্রীর জন্য কাস্টম লেআউট এক্সএমএল সংজ্ঞায়িত করতে পারেন:

.অ্যাক্টিভিটিলয়আউট (আর। ব্লাউট.মাই_ কাস্টম_লাইআউট)

কাস্টম কলব্যাক ব্যবহার করা

বিল্ডারে কলব্যাক যোগ করা আপনাকে লাইসেন্সটি চেক করা হলে কী হবে তা কাস্টমাইজ করার অনুমতি দেয় এবং ব্যবহারকারীর অ্যাপটি ব্যবহারের অনুমতি না দেওয়া হলে লাইসেন্স চেক ত্রুটিগুলি পরিচালনা করে। এই পদ্ধতিটি ব্যবহার করার সময় মনে রাখবেন অননুমোদিত ব্যবহারকারীদের থেকে অ্যাপটি অবরুদ্ধ করার বিষয়ে আপনাকে অবশ্যই সচেতন হতে হবে

ডিফল্টরূপে, গ্রাহকটি অ্যাপ্লিকেশনটি ব্যবহার করার অনুমতি না দিলে একটি বাতিল-বাতিল ডায়ালগ প্রদর্শন করবে, অন্যথায় কিছুই হবে না।

বিল্ডারটি ব্যবহার করুন এবং নিম্নলিখিতগুলি যুক্ত করুন:

.ক্যালব্যাক (নতুন পাইরেসিচেকারক্যালব্যাক () {

@অগ্রাহ্য করা

পাবলিক অকার্যকর অনুমতি () {

// ব্যবহারকারীকে অ্যাপটি ব্যবহার করার অনুমতি দেওয়া হলে কিছু করুন

}

@অগ্রাহ্য করা

সর্বজনীন শূন্য রোধ না (@ নননুল পাইরেসিরিচেকার এরর ত্রুটি, @ নূর পাইরেট অ্যাপ অ্যাপ্লিকেশন) {

// ব্যবহারকারীকে অ্যাপটি ব্যবহারের অনুমতি না দেওয়া হলে আপনি নির্দিষ্ট কিছু করতে পারেন

// অথবা 'ত্রুটি' প্যারামিটারটি ব্যবহার করে ত্রুটিটি পরিচালনা করুন, নিজেই (errors @ লিঙ্ক পাইরেসিচিচারার ror এ লিঙ্কগুলি দেখুন)।

// অতিরিক্তভাবে, আপনি যদি পাইরেট অ্যাপস এবং / অথবা তৃতীয় পক্ষের স্টোরগুলির চেক সক্ষম করে থাকেন তবে, 'অ্যাপ' প্যারাম

// ডিভাইসে সনাক্ত করা অ্যাপ্লিকেশন। অ্যাপ্লিকেশনটি নাল হতে পারে এবং যখন নਾਲ হয়, এর অর্থ কোনও পাইরেট অ্যাপ বা স্টোর পাওয়া যায় নি,

// অথবা আপনি এই অ্যাপ্লিকেশনগুলির জন্য চেকটি অক্ষম করেছেন।

// এটি আপনাকে লাইসেন্স অবৈধ হওয়ার সম্ভাব্য কারণগুলি ব্যবহারকারীদের জানাতে দেয়।

}

@অগ্রাহ্য করা

এয়ারে সর্বজনীন শূন্যতা (@ নননুল পাইরেসিরিচেকার এরির ত্রুটি) {

// এই পদ্ধতিটি প্রয়োগ / ওভারডিডেনের প্রয়োজন হয় না তবে…

// আপনি যদি লাইসেন্স পরীক্ষা করার সময় ত্রুটি ঘটে তখন আপনি নির্দিষ্ট কিছু করতে পারেন,

// অথবা 'ত্রুটি' প্যারামিটারটি ব্যবহার করে ত্রুটিটি পরিচালনা করুন, নিজেই (errors @ লিঙ্ক পাইরেসিচিচারার ror এ লিঙ্কগুলি দেখুন)।

}

})

6 মিনিট পঠিত