PDA

View Full Version : روش های لایسنس گذاری روی کدها



beh9am
دوشنبه 17 شهریور 1393, 21:50 عصر
سلام و خسته نباشید خدمت همه

من برای گذاشتن لایسنس از این کد استفاده میکنم :





$behnam=file_get_contents("http://your-address.com/lic.txt");
$site=$_SERVER['SERVER_NAME'];
if(!strstr($behnam,$site)) die('<font color="red">لایسنس شما منقضی شده است . لطفا جهت خرید ، اقدام فرمایید</font>');



این روش مشکلی که داره اینه آدرس ها توی http://your-address.com/lic.txt مشخصه و همه میتونن ببینن

من میخوام کاری کنم که آدرس ها توی این فایل دیده نشه یعنی مثلا نوع فایل از txt تغییر بکنه به php که اگه مستقیم به این آدرس رفتیم صفحه سفید بیاد

ممنون میشم مبتدی کمکم کنید

DR.HTML
سه شنبه 18 شهریور 1393, 11:23 صبح
کلا این مساله یه چیز 100% نیست کلا به دو شکل صورت میگیره یا کدهاتون انکد شده یا نشده درصورتی که نشده حتی قویترین لایسنس ها هم نال میشن مثل همین ویبولتین درصورتیم که انکد میکنید که بحثش فرق میکنه سایتهایی هستن که براتون انکد میکنن که درصد دیکد شدنش پایینه مثل http://www.parscoders.com/phpencoder/%DA%A9%D8%AF%DA%AF%D8%B0%D8%A7%D8%B1%DB%8C-%D9%88-%D8%B1%D9%85%D8%B2%D9%86%DA%AF%D8%A7%D8%B1%DB%8C-PHP-%D8%A8%D8%A7-IonCube/

beh9am
سه شنبه 18 شهریور 1393, 12:47 عصر
بله انکود میکنم

مشکل من چیز دیگریست میخوام آدرس ها دیده نشن تو پست اول ذکر کردم

DR.HTML
سه شنبه 18 شهریور 1393, 17:11 عصر
یعنی چی دیده نشن ؟ وقتی انکد کنید به این شکل نشون داده نمیشن دیگه ؟

prans.info
سه شنبه 18 شهریور 1393, 20:24 عصر
بله انکود میکنم

مشکل من چیز دیگریست میخوام آدرس ها دیده نشن تو پست اول ذکر کردم
آدرس ها رو هش کنید و تویه فایل قرار بدید و تویه کدتون هم $_SERVER رو به همون شکل هش کنید
مثال :


$behnam=file_get_contents("http://your-address.com/lic.txt");$site=md5($_SERVER['SERVER_NAME']);if(!strstr($behnam,$site)) die('<font color="red">لایسنس شما منقضی شده است . لطفا جهت خرید ، اقدام فرمایید</font>');
فقط از چند هش ترکیبی استفاده کنید که قابل حدس نباشه ...

DR.HTML
سه شنبه 18 شهریور 1393, 22:04 عصر
آدرس ها رو هش کنید و تویه فایل قرار بدید و تویه کدتون هم $_SERVER رو به همون شکل هش کنید
مثال :


$behnam=file_get_contents("http://your-address.com/lic.txt");$site=md5($_SERVER['SERVER_NAME']);if(!strstr($behnam,$site)) die('<font color="red">لایسنس شما منقضی شده است . لطفا جهت خرید ، اقدام فرمایید</font>');
فقط از چند هش ترکیبی استفاده کنید که قابل حدس نباشه ...
کلا همینم قابل دور زدن هست به نظرم هر کسی یه ذره از کد نویسی حالیش شه میفهمه این یه call هستش :لبخند:

SadeghPro19
سه شنبه 18 شهریور 1393, 22:17 عصر
یه کار دیگه هم میتونید بکنید. اول یه فایل پی اچ پی بجای فایل "http://your-address.com/lic.txt" بسازید مثلا license.php :

$Sites_List = array('test.com','test2.com');
$Sites_List = array_map( 'strtolower' , $Sites_List );
if(in_array(strtolower($_GET['r']), $Sites_List))
echo 'ok';
کد بالا رو در اون فایل قرار بدید و لیست سایتهای که دارای لایسنس هستن رو در آرایه $Sites_List خط اول قرار میدید.
کد پایینی هم بجای کد فعلیتون هست:

$site=$_SERVER['SERVER_NAME'];
$SB=file_get_contents("http://your-address.com/license.php?r=$site");
if($SB != 'ok'){
die('<font color="red">لایسنس شما منقضی شده است . لطفا جهت خرید ، اقدام فرمایید</font>');
}
البته باید بگم که روش خودتون و روش بالا براحتی قابل دور زدن هست ولی اون چیزی که شما میخواستید رو میتونید در کد بالا بدست بیارید.
اگه بازم سوالی هست در خدمتم.

beh9am
چهارشنبه 19 شهریور 1393, 00:54 صبح
دوستان ممنون

مشکل بنده اون فایل txt بود که قابل خوندن بود چون خود کد رو با ioncube انکود میکنم

روش جناب Busaba همونی بود که میخواستم

beh9am
چهارشنبه 19 شهریور 1393, 00:55 صبح
یه کار دیگه هم میتونید بکنید. اول یه فایل پی اچ پی بجای فایل "http://your-address.com/lic.txt" بسازید مثلا license.php :

$Sites_List = array('test.com','test2.com');
$Sites_List = array_map( 'strtolower' , $Sites_List );
if(in_array(strtolower($_GET['r']), $Sites_List))
echo 'ok';
کد بالا رو در اون فایل قرار بدید و لیست سایتهای که دارای لایسنس هستن رو در آرایه $Sites_List خط اول قرار میدید.
کد پایینی هم بجای کد فعلیتون هست:

$site=$_SERVER['SERVER_NAME'];
$SB=file_get_contents("http://your-address.com/license.php?r=$site");
if($SB != 'ok'){
die('<font color="red">لایسنس شما منقضی شده است . لطفا جهت خرید ، اقدام فرمایید</font>');
}
البته باید بگم که روش خودتون و روش بالا براحتی قابل دور زدن هست ولی اون چیزی که شما میخواستید رو میتونید در کد بالا بدست بیارید.
اگه بازم سوالی هست در خدمتم.

تشکر بابت پاسخ

بله میدونم روش ساده ای هست ولی خوب مبتدی هستم و بیشتر از این بلد نبودم

روش های دیگه ای هست که سخت تر باشه ؟

ashokri.nll
چهارشنبه 19 شهریور 1393, 01:03 صبح
سلام
لایسنس گذاری به این شکل مشکل داره میتونید به یه فایل دیگه تو سرور دیگه ای وصل بشید که اون از دیتابیس بخونه این راه بهتره میتونید با روش های زیادی این کارو کنید ، من روشی رو که گفتم تست کردم .

ضمنا هش تو php قابل حدس نیست فقط از راه های غیرمعمول میشه استفاده کرد .
این پروژه رو چند ماه پیش که خیلی ساده بود اجرا کردم و اونم بخاطر این بود که یه دوستی متوجه بشه .
لینک : http://hash.eahost.ir

انکد فایل هم راه خوبیه که تا حدی میشه روش حساب کرد

beh9am
چهارشنبه 19 شهریور 1393, 02:14 صبح
سلام
لایسنس گذاری به این شکل مشکل داره میتونید به یه فایل دیگه تو سرور دیگه ای وصل بشید که اون از دیتابیس بخونه این راه بهتره میتونید با روش های زیادی این کارو کنید ، من روشی رو که گفتم تست کردم .

ضمنا هش تو php قابل حدس نیست فقط از راه های غیرمعمول میشه استفاده کرد .
این پروژه رو چند ماه پیش که خیلی ساده بود اجرا کردم و اونم بخاطر این بود که یه دوستی متوجه بشه .
لینک : http://hash.eahost.ir

انکد فایل هم راه خوبیه که تا حدی میشه روش حساب کرد


تشکر

بله میدونم راه بنده ساده هست چون مبتدی هستم و زیاد با php آشنا نیستم برای همینمجبورماز اینروش استفاده بکنم و انکود کردن با ioncube

راه های دیگه که میگید فکر کنم سخت باشه

beh9am
چهارشنبه 19 شهریور 1393, 17:02 عصر
آپ .....

ashokri.nll
پنج شنبه 20 شهریور 1393, 01:10 صبح
دوست عزیز ی کار اصولی که خیلی بهتره یه هاست بگیر به عنوان بخش مرکزی نرم افزار که داخلش دیتابیس هست داخلش یه جدول داشته باش لایسنس کسانی که حق استفاده دارند .

تو نرم افزار که تو هاست های دیگه اجرا میشه شما یه مقداری رو هش شده بفرست ( البته تو سرور اصلی هم باید همین مدلی بگیری و بررسی کنی ) ، بعد از توی بانک اصلی بخون که آیا این طرف حق استفادع رو داره یا نه اگه نداره هر کاری میخای بکنی انجام بده . مثلا برو به صفحه خرید لایسنس تو سایت خودت .

یه نکته خیلی مهم : فایل تابعی که قراره به بانکت متصل بشه رو انکد کن که طرف نتونه لایسنس قلابی داشته باشه .

alifallah
پنج شنبه 20 شهریور 1393, 02:00 صبح
به نظرم اگه اسکریپت و کدهای اصلی رو هاست خودمون باشه و خدمات رو از طریق سایت خودمون توسط api یا عضویت کاربر ارائه بدیم!
اگه توسط api باشه که خیلی بهتره و برای اسکریپت های دیگه یا سیستم عامل های دیگه هم استفاده کرد و برنامه های مربوط به اون هم نوشت.
اونوقت به کاربرانی که لایسنس خریداری می کنند یه apikey داد که بتونن ازش استفاده کنن!
مدیریت کردن به این روش آسون تر به نظر میاد، گرچه مشکل اصلی این روش اینه که اگر به هر دلیلی مشکلی ایجاد بشه، همه اعضا صداشون در میاد

beh9am
پنج شنبه 20 شهریور 1393, 12:43 عصر
دوست عزیز ی کار اصولی که خیلی بهتره یه هاست بگیر به عنوان بخش مرکزی نرم افزار که داخلش دیتابیس هست داخلش یه جدول داشته باش لایسنس کسانی که حق استفاده دارند .

تو نرم افزار که تو هاست های دیگه اجرا میشه شما یه مقداری رو هش شده بفرست ( البته تو سرور اصلی هم باید همین مدلی بگیری و بررسی کنی ) ، بعد از توی بانک اصلی بخون که آیا این طرف حق استفادع رو داره یا نه اگه نداره هر کاری میخای بکنی انجام بده . مثلا برو به صفحه خرید لایسنس تو سایت خودت .

یه نکته خیلی مهم : فایل تابعی که قراره به بانکت متصل بشه رو انکد کن که طرف نتونه لایسنس قلابی داشته باشه .

بله تشکر بنده هم میدونم بایداینکارو کنم اما مشکل اینجاست که بلد نیستم !!

beh9am
پنج شنبه 20 شهریور 1393, 12:44 عصر
دوست عزیز ی کار اصولی که خیلی بهتره یه هاست بگیر به عنوان بخش مرکزی نرم افزار که داخلش دیتابیس هست داخلش یه جدول داشته باش لایسنس کسانی که حق استفاده دارند .

تو نرم افزار که تو هاست های دیگه اجرا میشه شما یه مقداری رو هش شده بفرست ( البته تو سرور اصلی هم باید همین مدلی بگیری و بررسی کنی ) ، بعد از توی بانک اصلی بخون که آیا این طرف حق استفادع رو داره یا نه اگه نداره هر کاری میخای بکنی انجام بده . مثلا برو به صفحه خرید لایسنس تو سایت خودت .

یه نکته خیلی مهم : فایل تابعی که قراره به بانکت متصل بشه رو انکد کن که طرف نتونه لایسنس قلابی داشته باشه .

این خیلی خوبه اما برای پروژه های بزرگ

برای منفقط یک اسکریپته

beh9am
پنج شنبه 20 شهریور 1393, 22:31 عصر
دوستان ممنون میشم کمک کنید

ashokri.nll
جمعه 21 شهریور 1393, 00:39 صبح
کاری نداره میتونید دوتاش کنید مثل یه نرم افزار تحت شبکه که از دو بخش admin و client تشکیل شده تو .
api به نظرم خوبه .
یه سوال قراره کاربر با برنامه ی شما دقیقا چیکار کنه ؟؟؟ این مهمه

dasa1234
سه شنبه 06 مرداد 1394, 00:30 صبح
سلام

ببخشید من زیاد برنامه نویسی بلد نیستم.

من برای یک نرم افزار گرافیکی، یک آموزش تعاملی (اینتراکتیو) ساختم با استفاده از نرم افزار DemoShield که تو لینک زیر هست:

http://softsara.ir/%D8%B3%D8%A7%D8%AE%D8%AA-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%C2%90%D9%87%D 8%A7%DB%8C-%D8%A2%D9%85%D9%88%D8%B2%D8%B4%DB%8C-%D8%AA%D8%B9%D8%A7%D9%85%D9%84%DB%8C-%D9%88-%D8%A7%DB%8C%D9%86%D8%AA%D8%B1/


الان میخوام برای فروش این آموزش، روی اون لایسنس بذارم به طوری که هر کسی این آموزش رو خریداری میکنه فقط بتونه روی یک سیستم نصب و اجراش کنه.

ممنون میشم به زبان ساده بگید من چطوری میتونم خودم اینکارو انجام بدم.

با تشکر فراوان

dasa1234
چهارشنبه 07 مرداد 1394, 10:18 صبح
کسی تو این زمینه تخصص نداره؟؟؟

moghan
جمعه 09 خرداد 1399, 23:18 عصر
سلام از دوستان کسی روش لایسنس گذاری روی دامنه ها با تعریف تاریخ انقضای مستقل برای هر دامنه را میتوانند به صورت سمپل کد توضیح دهند.