پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
کد:
گام بعدی اینکه فایلی که اینگونه کد گذاری کردیم رو میتونید با هرگونه دکودر ناخونا کنید مثل زندگارد و ....... روش دیگری هم خودمون میتونیم بهتون پیشنهاد بدیم که با خود PHP ناخونا میشه کدهاتون که به هیچ وجه قابل بازگردوندن نیست ...نمونه :
باسلام، بحث ناخوانا یا obfuscator کردن شما اونم با یک utf8 که هیچ ارزشی ندارد، اگر قرار باشد در این پروژه از انکودر های zend یا ioncube استفاده شود که دیگر به سیستم شما نیازی نیست، اگر باز قرار است تکه کد حیاتی از سرور خوانده شود با Sniff کردن شبکه خیلی راحت آن تکه کد را میتوان بدست آورد و جایگزین کرد داخل کد ها، در هر صورت اگر تمایل داشتید یک لایسنس برای دامین Faranevis.com ایجاد کنید و یک کد لایسنس دار شده برای من بفرستید تا امنیت سیستم لایسنس شما را تست کنم.
پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
نقل قول:
نوشته اصلی توسط
T.Toosi
کد:
گام بعدی اینکه فایلی که اینگونه کد گذاری کردیم رو میتونید با هرگونه دکودر ناخونا کنید مثل زندگارد و ....... روش دیگری هم خودمون میتونیم بهتون پیشنهاد بدیم که با خود PHP ناخونا میشه کدهاتون که به هیچ وجه قابل بازگردوندن نیست ...نمونه :
باسلام، بحث ناخوانا یا obfuscator کردن شما اونم با یک utf8 که هیچ ارزشی ندارد، اگر قرار باشد در این پروژه از انکودر های zend یا ioncube استفاده شود که دیگر به سیستم شما نیازی نیست، اگر باز قرار است تکه کد حیاتی از سرور خوانده شود با Sniff کردن شبکه خیلی راحت آن تکه کد را میتوان بدست آورد و جایگزین کرد داخل کد ها، در هر صورت اگر تمایل داشتید یک لایسنس برای دامین Faranevis.com ایجاد کنید و یک کد لایسنس دار شده برای من بفرستید تا امنیت سیستم لایسنس شما را تست کنم.
پس حالا که شما میفرمایید با روش خودتون به هر فایل php در سرور دیگری هم دسترسی دارین ما یه لینک میدیم و محتویات اون فایل php رو برای ما بزارین...از نظر شما که سادس و مشکلی ندارد که ؟
پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
نقل قول:
نوشته اصلی توسط
nikrasam
پس حالا که شما میفرمایید با روش خودتون به هر فایل php در سرور دیگری هم دسترسی دارین ما یه لینک میدیم و محتویات اون فایل php رو برای ما بزارین...از نظر شما که سادس و مشکلی ندارد که ؟
اشتباه متوجه شدید.
نقل قول:
و بازهم راه دیگری هست که جدا از تمام موارد بالا که عرض شد بیاین اون کد گذاری لایسنس رو در یکی از فایل های مهم و اصلی سورستون مثلا در یکی از Function ها قرار بدین و اون تک فایل رو در سرور خودتون قرار بدین و بدون دسترسی یوزر هست و بعد تو سورس بازخونیش کنید....
ضعف اول : مجبورید قسمتی از فایل را کد کنید، اگر obfuscator باشد که هیچ ارزشی ندارد حتی وبمستر های سطح پایین هم میتوانند دیکد کنند، اگر از انکودر های دیگری استفاده کنید که دیگر نیازی به سیستم شما نیست.
ضعف دوم: خواندن قسمتی از کد از سرور، وقتی از کلاینت به سرور درخواستی ارسال می شود، به طور مثال دریافت قسمتی از کد، خیلی ساده کلاینت میتواند شبکه داخلی خودش را Sniff کند و پاسخ سرور را مشاهده کند.
در کل بیشتر تمرکز شما ایجاد یک سایت و سامانه برای مدیریت لایسنس ها بوده است نه امنیت و متاسفانه نمیدونم چرا نمونه کد قرار نمیدید یا ارسال نمی کنید! تا مشتری از امنیت سیستم شما مطمئن نشود هیچ سرویسی از شما تهیه نمی کند، برای مثال میتوانید یک کد Hello World لایسنس دار شده برای دامنه به طور مثال، من مشتری ارسال کنید تا سیستم شما را تست کند.
پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
درود بر تمامی دوستان عزیز.
با اجازه از استارت عزیز.
چند نکته رو یادآوری کنم :
مشکلات اصلی این سیستم که قابل استفاده بودن تقریبا نیست، این هست که obfuscator ندارین، و اگر هم دارین تقریبا با نداشتنش فرقی نداره لذا به راحتی میشه این بخش رو از کدها حذف کرد.
نکته بعدی دوستان zend و ioncube رو مثال زدند، در این سیستم ها قابلیت محدود سازی وجود داره اما نه حرفه ای مثلا محدود کردن زمانی، لایسنسی یا حتی آی پی خاص، خب این بدین معنی هست که اگر بخواین مثلا ioncube رو محدود کنید باید هربار برای هر مشتری مجدد کد کنید یا با تغییر IP طرف باز مجدد این کار رو انجام بدید که عملا کارآیی رو پایین میاره!
خب بنده چند سالی هست به دلایلی سیستمی این چنینی طراحی کردم و استفاده میکنم! البته که در برخی موارد سیستم شمارو حتی با داشتن obfuscator میشه دور زدش!
سیستمی که مدتهاست استفاده میکنیم و اخیرا آپدیتش کردیم و البته فقط برای خودمون هست و هنوز به صورت عمومی منتشر نکردیم. مزایا خاصی داره. (البته این مزایا که ذکر میکنم شامل سیستم ایشون هم میشه.)
مثلا اینکه شما بخواید بلادرنگ لایسنس منتشر کنید.
یا تستی یک سیستم رو به شخصی بدید و در زمان دلخواه منقضی کنید.
یا اینکه لایسنس رو راحت تغییر بدید و ...
و حتی در سایت ما بلافاصله بعد از خرید لایسنس شخص برای دامنه یا IP فرد صادر میشه.
خب سیستم ما تقریبا نمونه ای از بخش اتصالی شمارو داره البته کمی کامل تر، که فعلا توضیح نمیدم.
در زمینه obfucator هم یا باید هزینه بالایی رو بدید که ioncube یا zend رو خرید کنید. یا از مثلا نسخه آنلاین ioncube استفاده کنید که باید هزینه برای هر فایل پرداخت کنید.
خب ما با روشی به وسیله ioncube و کمک از اون کدهارو obfucator میکنیم. این کار هزینه هارو کاهش میده.
تضمین صد در صد ایمن بودن رو نمیکنیم. چون هیچ سیستمی امن نیست! اما خب تاحدی میشه گفت مطمئن هست.
نمونه هم در اینستاگرامم منتشر کردم، البته فقط خودمون استفاده میکنیم، اما احتمالا با یکسری آپدیتها در سایتمون هم منتشرش کنیم.
بقیه هم استفاده کنن.
نمونه فقط Obfuscator :
https://www.instagram.com/p/BROD8Gpg...y=masterking32
درضمن قفل سخت افزاری PHP هم قابل فعال شدن هست که برای یک سیستم کار میکنه با هر آی پی یا هر دامنه ای.
نقاط ضعفی که دوستمون گفت رو همه رو میشه فیکس کرد. چرا که Sniff یا هرچیزی در صورت کد بودن اطلاعات به روشی جدید غیر قابل نفوذ هست.
مورد بعدی کاهش تعداد اتصالات هست! اینکه برای هر درخواست به سایت شما متصل بشه اصلا بهینه نیست.
این رو هم برای درک بهتر دوستان گفتم و قصد خراب کردن تاپیک ایشون و ***ی یا معرفی سیستم دیگه ای رو ندارم، چون در حال حاضر این سیستم رو ارائه نمیدیم که کار شمارو خراب کنیم. فقط جهت اطلاع و شفاف سازی دوستان گفتم.
باز هم اینها قدیمی شده تقریبا نمونه های جدید و بهتری داریم.
که انشاا... اگه شد معرفی میکنیم.
موفق باشید.
پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
باسلام، در کل چک کردن لایسنس به صورت ریموت به دلیل عدم تضمین آپ تایم کار اشتباهی هست حتی اگر اطلاعات شما به صورت کد شده در شبکه منتقل شود، کلاینت با راه اندازی Destination Nat می تواند آدرس Request لایسنس را به اسکریپت خودش منتقل کند و Response مورد نظر خودش را برگشت دهد.
پیشنهاد من به شما راه اندازی سامانه ای مثل دوست ـمون که در بالا اشاره کردن است، الگوریتم دیکد خودشان را با Ioncube کد کرده اند و کد بهم ریخته را به آن می فرستند. که شما یک فایل Runner به مشتری هاتون بدید برای اجرای کد های بهم ریخته.
پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
نقل قول:
نوشته اصلی توسط
T.Toosi
باسلام، در کل چک کردن لایسنس به صورت ریموت به دلیل عدم تضمین آپ تایم کار اشتباهی هست حتی اگر اطلاعات شما به صورت کد شده در شبکه منتقل شود، کلاینت با راه اندازی Destination Nat می تواند آدرس Request لایسنس را به اسکریپت خودش منتقل کند و Response مورد نظر خودش را برگشت دهد.
پیشنهاد من به شما راه اندازی سامانه ای مثل دوست ـمون که در بالا اشاره کردن است، الگوریتم دیکد خودشان را با Ioncube کد کرده اند و کد بهم ریخته را به آن می فرستند. که شما یک فایل Runner به مشتری هاتون بدید برای اجرای کد های بهم ریخته.
درود مجدد،
آپتایم بله گاها به این مشکل میخوریم، اما خب میشه از چند سرور به صورت ترکیبی استفاده کرد.
در مورد Response دلخواه هم بهتره ذکر کنم که در مورد مثلا سیستم ما این عمل کارآیی نداره ! چراکه یک رشته کد نامعلوم End-To-End دریافت میکنه و این رشته به روش های مختلف فقط به صورت خاصی معتبر هست بعد از یکسری عملیات ها کلا باطل میشه و دیگه قابل استفاده نیست، روش گفته شده شما برای سیستم های معمولی راحت میشه دورش زد اما نه برای هر سیستمی !
پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
نقل قول:
نوشته اصلی توسط
masterking32
درود مجدد،
آپتایم بله گاها به این مشکل میخوریم، اما خب میشه از چند سرور به صورت ترکیبی استفاده کرد.
در مورد Response دلخواه هم بهتره ذکر کنم که در مورد مثلا سیستم ما این عمل کارآیی نداره ! چراکه یک رشته کد نامعلوم End-To-End دریافت میکنه و این رشته به روش های مختلف فقط به صورت خاصی معتبر هست بعد از یکسری عملیات ها کلا باطل میشه و دیگه قابل استفاده نیست، روش گفته شده شما برای سیستم های معمولی راحت میشه دورش زد اما نه برای هر سیستمی !
باسلام،
چک کردن لایسنس به صورت ریموت علاوه براینکه آپ تایم هیچ وقت نمیتونید تضمین کنید و استفاده از چند سرور و dns failover هزینه بسیار بالایی دارد! کار کرکر را خیلی راحت میکند و هر کمپانی بزرگی به صورت ریموت راه اندازی کرد به سریعترین شکل ممکن نال شده است، چون همانطور که گفتم پیدا کردن Response مثبت هیچ و Destination Nat کاری ندارد.
سیستم شما را دقیقا نمیدونم چگونه کار می کند اما چیزی که از فیلم متوجه شدم الگوریتم دیکد obfuscator خودتان را با Ioncube کد کردید، سپس کد های obfuscator را با آن دیکد و اجرا می کنید، در صورت تمایل یک نمونه برای بنده بفرستید برای بررسی.
پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
نقل قول:
نوشته اصلی توسط
masterking32
مورد بعدی کاهش تعداد اتصالات هست! اینکه برای هر درخواست به سایت شما متصل بشه اصلا بهینه نیست.
انتظار قرار دادن تمامی کدهارو ندارین که ! ما فقط بخش کمی از کدهای مربوطه رو انتشار دادیم و بیشتر از این هم منتشر نمیشه ... جهت اطلاع عرض میکنم که ماهم خیلی بی فکرانه اتصالات مکرر یوزر رو به سرور قرار ندادیم.....فقط ۱ بار اتصال صورت میگیره ... درضمن حتی فکر این هم شده که هیچ سروری آپ تایم 100٪ ندارد که پس تکلیف حتی 1 دقیقه ای که اون هاست قطعی براش به وجود میاد چیه و آیا سایت یوزر از کار میوفته !
جواب خیر است و میتونیم تعریف کنیم که مثلا حتی زمانی که سرور در دسترس نبود و چک کننده نتونست اتصال برقرار کنه این مورد رو صحیح درنظر بگیره و در اولین زمان بعدی مجددا اتصال رو چک کنه
نقل قول:
نوشته اصلی توسط
masterking32
این رو هم برای درک بهتر دوستان گفتم و قصد خراب کردن تاپیک ایشون و ***ی یا معرفی سیستم دیگه ای رو ندارم، چون در حال حاضر این سیستم رو ارائه نمیدیم که کار شمارو خراب کنیم. فقط جهت اطلاع و شفاف سازی دوستان گفتم.
بازم اگر دقیق تر ملاحضه میکردید ما اصلا نیازی به فروش این سیستم نداریم چون نه جایی هزینه ای اعلام کردیم نه فروش و حراجی زدیم واسه این سیستم پس نه نگران فروشیم نه سیستم شما تهدیدی برای ماست... اگر متوجه باشید این کار یجور تعامله با همکارانمون و برنامه نویسان...یعنی نقات قوت و ضعف گفته میشه واسه قوی تر شدن کار...وگرنه این یه اسکریپت مثلا فروشگاهی نیست که طمع داشته باشیم 200 نسخه ازش بفروشیم....کلا هدف رو اشتباه متوجه شدین. این جوابی هست به اون یوزری هم هست که گفت اینجوری کسی از شما خرید نمیکنه ( نمیدونم چی فکر کردن )
با وجود این بازهم حدود 20 یوزر برنامه نویس داریم که دارن از این سیستم استفاده میکنن و هیچ مشکلی هم ندارن و نمیتونیم هم انتشار بدیم هیچ موردی از اون هارو هم و به هر کدام هم با الگوریتم خاص و منحصربفردی سیستم رو تحویل دادیم... کار ما چیز دیگه ای هست و اگر چنین بحثی رو راه انداختیم تعاملی بوده با برنامه نویس ها.
پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
نقل قول:
نوشته اصلی توسط
T.Toosi
باسلام،
چک کردن لایسنس به صورت ریموت علاوه براینکه آپ تایم هیچ وقت نمیتونید تضمین کنید و استفاده از چند سرور و dns failover هزینه بسیار بالایی دارد! کار کرکر را خیلی راحت میکند و هر کمپانی بزرگی به صورت ریموت راه اندازی کرد به سریعترین شکل ممکن نال شده است، چون همانطور که گفتم پیدا کردن Response مثبت هیچ و Destination Nat کاری ندارد.
سیستم شما را دقیقا نمیدونم چگونه کار می کند اما چیزی که از فیلم متوجه شدم الگوریتم دیکد obfuscator خودتان را با Ioncube کد کردید، سپس کد های obfuscator را با آن دیکد و اجرا می کنید، در صورت تمایل یک نمونه برای بنده بفرستید برای بررسی.
درود،
خب اون بخشش که مربوط به Obfuscator هست که روشنه بنده بیشتر راجب بخش لایسنسینگش حرف زدم.
نقل قول:
نوشته اصلی توسط
nikrasam
انتظار قرار دادن تمامی کدهارو ندارین که ! ما فقط بخش کمی از کدهای مربوطه رو انتشار دادیم و بیشتر از این هم منتشر نمیشه ... جهت اطلاع عرض میکنم که ماهم خیلی بی فکرانه اتصالات مکرر یوزر رو به سرور قرار ندادیم.....فقط ۱ بار اتصال صورت میگیره ... درضمن حتی فکر این هم شده که هیچ سروری آپ تایم 100٪ ندارد که پس تکلیف حتی 1 دقیقه ای که اون هاست قطعی براش به وجود میاد چیه و آیا سایت یوزر از کار میوفته !
جواب خیر است و میتونیم تعریف کنیم که مثلا حتی زمانی که سرور در دسترس نبود و چک کننده نتونست اتصال برقرار کنه این مورد رو صحیح درنظر بگیره و در اولین زمان بعدی مجددا اتصال رو چک کنه
بازم اگر دقیق تر ملاحضه میکردید ما اصلا نیازی به فروش این سیستم نداریم چون نه جایی هزینه ای اعلام کردیم نه فروش و حراجی زدیم واسه این سیستم پس نه نگران فروشیم نه سیستم شما تهدیدی برای ماست... اگر متوجه باشید این کار یجور تعامله با همکارانمون و برنامه نویسان...یعنی نقات قوت و ضعف گفته میشه واسه قوی تر شدن کار...وگرنه این یه اسکریپت مثلا فروشگاهی نیست که طمع داشته باشیم 200 نسخه ازش بفروشیم....کلا هدف رو اشتباه متوجه شدین. این جوابی هست به اون یوزری هم هست که گفت اینجوری کسی از شما خرید نمیکنه ( نمیدونم چی فکر کردن )
با وجود این بازهم حدود 20 یوزر برنامه نویس داریم که دارن از این سیستم استفاده میکنن و هیچ مشکلی هم ندارن و نمیتونیم هم انتشار بدیم هیچ موردی از اون هارو هم و به هر کدام هم با الگوریتم خاص و منحصربفردی سیستم رو تحویل دادیم... کار ما چیز دیگه ای هست و اگر چنین بحثی رو راه انداختیم تعاملی بوده با برنامه نویس ها.
بنده هم در این امر مشارکت کردم و تجربه شخصی خودم رو اعلام کردم، امیدوارم موفق باشید :)
پاسخ : سامانه مدیریت لایسنس مشترکین (ساخت لایسنس برای پروژه های php )
استارتر عزیز، امیدوارم از صحبت های بنده نارحت نشده باشید، چون مخاطب سیستم شما برنامه نویس ها هستند و اولین سوالی که در ذهن برنامه نویس پدیدار میشود این است که کد های من در این سیستم امن است؟ جواب این سوال را شفاف سازی نکردید یا حداقل یک نمونه کد دراختیار نگذاشتید(حداقل اگر قصدتون از این تاپیک تعامل با برنامه نویس ها هست). من فقط به عنوان برنامه نویس ضعف هایی که در سیستم شما دیدم اعلام کردم که اگر من جای شما بودم از انتقاد و تجربه های دوستان استفاده میکردم، موفق باشید.