Forwarded from تیم برنامه نویسی جهان (Jahan Developer (Pixel))
😃بالاخره طراحی ربات تغییر چهره حرفه ای به پایان رسید
😱پیشرفته ترین ربات تغییر چهره و افکت گذاری و قاپ عکس
〽️سرعت بسیار بالا
✅کاملا رایگان
🌐دارای بیش از ۶۰۰ نوع افکت و قاپ عکس
🦸♂تبدیل به عکس کارتونی
😄و صد ها قابلیت منحصر به فرد دیگه
@TonifyBot
جهت سفارش وخرید ربات به آیدی @SudoJahan مراجعه نمایید
😱پیشرفته ترین ربات تغییر چهره و افکت گذاری و قاپ عکس
〽️سرعت بسیار بالا
✅کاملا رایگان
🌐دارای بیش از ۶۰۰ نوع افکت و قاپ عکس
🦸♂تبدیل به عکس کارتونی
😄و صد ها قابلیت منحصر به فرد دیگه
@TonifyBot
جهت سفارش وخرید ربات به آیدی @SudoJahan مراجعه نمایید
ژوپیتـر اِیپیآی | Jupiter API
تبدیل لینک joinchat به چت ایدی 🔅 Source: $link = "https://t.me/joinchat/VS7iOqbvlIqb5EF2"; preg_match("#https(?|s|)://t(?|elegram|)\.me/joinchat/([0-9a-zA-Z_-]{13,16})#", $link, $hash); $hash = base64_decode(strtr($hash[1], '-_', '+/')); $unpack = unpack("N3"…
تبدیل لینک joinchat به چت ایدی 🔅
اپدیت: اسکریپت قبلی برای لینک های جدید مشکل داشت این درست شد. البته فقط لینک اصلی این روش جواب میده.
Source:
اپدیت: اسکریپت قبلی برای لینک های جدید مشکل داشت این درست شد. البته فقط لینک اصلی این روش جواب میده.
Source:
$link = "https://t.me/joinchat/RedX2EQwViScD3tq";Result:
preg_match("#https(?|s|)://t(?|elegram|)\.me/joinchat/([0-9a-zA-Z_-]{13,16})#", $link, $hash);
$hash = base64_decode(strtr($hash[1], '-_', '+/'));
$id = unpack("N3", $hash);
$id = $id[1] <= 999999999 ? $id[2] : $id[1];
$id = "-100$id";
print "Chat ID: $id";
Chat ID: -1001172789208
Forwarded from جهان کلود | JahanCloud
🤔امسال در روز برنامه نویس چه هدیه ایی گرفتی؟ نکنه هنوز هدیه ایی دریافت نکرده ایی؟؟
کد تخفیف صد درصدی هاست های سی پنل به همراه دامنه رایگان یکساله
✅کد تخفیف 100 درصدی محصولات : developer_day
#ظرفیت_محدود
🟥دقت داشته باشید که کد تخفیف بر روی سرویس های یکماهه و دامنه IR یکساله قابل بهره برداری است
💻 روز جهانی برنامه نویسان مبارک 🤓
http://jahan-cloud.ir
کد تخفیف صد درصدی هاست های سی پنل به همراه دامنه رایگان یکساله
✅کد تخفیف 100 درصدی محصولات : developer_day
#ظرفیت_محدود
🟥دقت داشته باشید که کد تخفیف بر روی سرویس های یکماهه و دامنه IR یکساله قابل بهره برداری است
💻 روز جهانی برنامه نویسان مبارک 🤓
http://jahan-cloud.ir
چالش دیکد کردن یه تابع انکدر متن:
PHP:
جایزه هم نداره
PHP:
function encrypt($string){
$res = '';
$len = strlen($string);
if($len % 4 != 0)
$string .= str_repeat(' ', 4 - $len % 4);
$string = unpack("V*", $string);
for($i = 1; isset($string[$i]); ++$i){
for($j = 2; $j < 30; ++$j){
for($k = 2; $k < $j; ++$k)
if($j % $k == 0)
continue 2;
$res .= base_convert((41 * $string[$i]) % $j, 10, 36);
}
}
return $res;
}
print encrypt("Hello world! 😐");
Result:0145453a6p123015acfb0205143ha90231401c6d000342eg97تابع دیکدشو بنویسین دیگه
جایزه هم نداره
ژوپیتـر اِیپیآی | Jupiter API
چالش دیکد کردن یه تابع انکدر متن: PHP: function encrypt($string){ $res = ''; $len = strlen($string); if($len % 4 != 0) $string .= str_repeat(' ', 4 - $len % 4); $string = unpack("V*", $string); for($i = 1; isset($string[$i]); ++$i){ for($j…
PHP:
function decrypt($string){
$p = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29];
$res = [];
$string = str_split($string, 10);
foreach($string as $r){
$r = str_split($r);
$c = 0;
$m = 1;
for($i = 0; isset($r[$i]); ++$i){
$r[$i] = base_convert($r[$i], 36, 10);
while((41 * $c) % $p[$i] != $r[$i])
$c += $m;
$m *= $p[$i];
}
$res[] = $c;
}
$res = pack("V*", ...$res);
return $res;
}
print decrypt("0145453a6p123015acfb0205143ha90231401c6d000342eg97");
Result:Hello world! 😐راستش ازتون نا امید شدم کامل 😑
🔰 https://github.com/avid0/Alom/
اپدیت کتابخونه درهم سازی (انکدر) اسکریپت های php ورژن 2.4
➕ رفع باگ exception و نمایش کد در اررور ها موقع استفاده از دیباگر
➕ بهبود دادن انتی دیباگر و افزودن درهم سازی های جدید برای جلوگیری از بایپس شدنشون
➕ رفع باگ گلوبال کش و اجرا نشدن بعضی سورس ها
➕ افزایش سرعت اجرای لودر برای کد های درهم شده (حدود سه برابر)
➕ کاهش کدهای درهم شده خروجی تا 20 درصد
➕ فعال شدن دیفالت settings.rounds.unmeaning.variables
اگه مشکلی توی عملکردش دیدید توی قسمت کامنت ها بگید ممنون.
اپدیت کتابخونه درهم سازی (انکدر) اسکریپت های php ورژن 2.4
➕ رفع باگ exception و نمایش کد در اررور ها موقع استفاده از دیباگر
➕ بهبود دادن انتی دیباگر و افزودن درهم سازی های جدید برای جلوگیری از بایپس شدنشون
➕ رفع باگ گلوبال کش و اجرا نشدن بعضی سورس ها
➕ افزایش سرعت اجرای لودر برای کد های درهم شده (حدود سه برابر)
➕ کاهش کدهای درهم شده خروجی تا 20 درصد
➕ فعال شدن دیفالت settings.rounds.unmeaning.variables
اگه مشکلی توی عملکردش دیدید توی قسمت کامنت ها بگید ممنون.
Media is too big
VIEW IN TELEGRAM
آموزش کوتاهی برای استفاده از کتابخانه درهم سازی Alom برای محافظ و انکد کردن سورس های php
🛠 @Av_id
📷 @Mr_Mordad
🗂 https://github.com/avid0/Alom/
🛠 @Av_id
📷 @Mr_Mordad
🗂 https://github.com/avid0/Alom/
ژوپیتـر اِیپیآی | Jupiter API
فروش API سایت listvpn.net جهت ساخت پروکسی pptp. اطلاعات بیشتر پیوی: @LordDeveLoper
قابلیت ارتقاء برای ساخت پروکسی از نوع نمونههای داخل عکس
چیکار کنیم چیکار نکنیم؟ چیز دیگهای نیست؟🤨 APIای چیزی
encodes.php
8.2 KB
بخاطر اینکه بعضیاتون به توابع انکد دیکد متنا علاقه داشتین یه کاپی پیست از توابعی که قبلا نوشتم کردم و لیستشونو تو این فایل گذاشتم 😑
لیست توابعش:
bin_encode/decode
base4_encode/decode
pr4_encode/decode
oct_encode/decode
bcrypt64_encode/decode
base64url_encode/decode
base32_encode/decode
nsec3_encode/decode
str_rot
لیست توابعش:
bin_encode/decode
base4_encode/decode
pr4_encode/decode
oct_encode/decode
bcrypt64_encode/decode
base64url_encode/decode
base32_encode/decode
nsec3_encode/decode
str_rot
👍1
PHP:
function strsub($string){
return strtr($string, array_combine(str_split("0123456789+-=()abcdefghijklmnopqrstuvwxyz"), explode(' ', "₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉ ₊ ₋ ₌ ₍ ₎ ₐ b c d ₑ f g ₕ ᵢ ⱼ ₖ ₗ ₘ ₙ ₒ ₚ q ᵣ ₛ ₜ ᵤ ᵥ w ₓ y z")));
}
function strsup($string){
return strtr($string, array_combine(str_split("0123456789+-=()abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), explode(' ', "⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ⁺ ⁻ ⁼ ⁽ ⁾ ᵃ ᵇ ᶜ ᵈ ᵉ ᶠ ᵍ ʰ ⁱ ʲ ᵏ ˡ ᵐ ⁿ ᵒ ᵖ q ʳ ˢ ᵗ ᵘ ᵛ ʷ ˣ ʸ ᶻ ᴬ ᴮ ᶜ ᴰ ᴱ ᶠ ᴳ ᴴ ᴵ ᴶ ᴷ ᴸ ᴹ ᴺ ᴼ ᴾ Q ᴿ ˢ ᵀ ᵁ ⱽ ᵂ ˣ ʸ ᶻ")));
}
print "a".strsub(1)." = e".strsup(85)."\na".strsub(2)." = e".strsup('x')."\na".strsub(1)." * a".strsub(2)." = e".strsup("85+x");
Result:a₁ = e⁸⁵
a₂ = eˣ
a₁ * a₂ = e⁸⁵⁺ˣ
کارزار درخواست رفع فیلترینگ تلگرام
امضا کنید👇
https://www.karzar.net/27175
باتوجه به مشکلات فراوانی که فیلترینگ تلگرام برای کسبوکارهای آنلاین بهوجود آورده و همچنین دسترسی و آشنایی هر نوع فرد در هر سنی به فیلترشکنها، خواهشمندیم رفع فیلتر این برنامه را در دستور کار قرار دهید.
امضا کنید👇
https://www.karzar.net/27175
باتوجه به مشکلات فراوانی که فیلترینگ تلگرام برای کسبوکارهای آنلاین بهوجود آورده و همچنین دسترسی و آشنایی هر نوع فرد در هر سنی به فیلترشکنها، خواهشمندیم رفع فیلتر این برنامه را در دستور کار قرار دهید.
ژوپیتـر اِیپیآی | Jupiter API
کارزار درخواست رفع فیلترینگ تلگرام امضا کنید👇 https://www.karzar.net/27175 باتوجه به مشکلات فراوانی که فیلترینگ تلگرام برای کسبوکارهای آنلاین بهوجود آورده و همچنین دسترسی و آشنایی هر نوع فرد در هر سنی به فیلترشکنها، خواهشمندیم رفع فیلتر این برنامه…
اپدیت 2.7 کتابخونه alom 👍
مناسب برای درهم سازی (انکد) سورس های php که خودشم با php نوشته شده و روی هاست معمولی قابل اجراست. راهنمای فارسی گیتهاب:
https://github.com/avid0/Alom/blob/main/doc/README.fa.md
مناسب برای درهم سازی (انکد) سورس های php که خودشم با php نوشته شده و روی هاست معمولی قابل اجراست. راهنمای فارسی گیتهاب:
https://github.com/avid0/Alom/blob/main/doc/README.fa.md
مولتی پروسه؟ async؟ 😐
➕ فرایند/پروسه: وقتی یه برنامه باز میشه یه پروسه ایجاد میشه و منابعی رو به پروسه اختصاص میده. مثلا وقتی سایت php باز میکنید برنامه php باز میشه و میره توی مموری (معمولا بیست مگابایت رم مصرف میشه که ربطی به اسکریپت شما نداره) بعد شروع میکنه اجرا کردن اسکریپت مربوط بهش.
➕ ریسمان/ترد: یه پروسه میتونه همزمان چندین ترد داشته باشه. ترد ها طبق زمان بندی اجرا میشن همزمان اجرا نمیشن مثلا یک ترد وصل میشه اینترنت تا بخواد وصل بشه ای بین ترد های دیگه اجرا میشن. یه پروسه میتونه هرچقدر که میخواد ترد داشته باشه. تو php معمولا مدیریت ترد ها با pcntl مدیریت میشن که کتابخونه amp هم همینکارو میکنه.
فرق ترد با پروسه اینه که دوتا پروسه دوبار یک برنامه رو باز میکنن مموری هاشون جداس ممکنه تو دو سیپیو همزمان اجرا بشن ولی ترد ها تو یدونه پروسه هستن و وقتی یکی از تردا بیکار میشه ترد دیگه میاد جاش اجرا میشه فقط یک سیپیو میمونن مموریشونم مشترکه.
➕ مولتی پروسه: یه پروسه اگه چندین پروسه بسازه و کاری که میخواد بکنه رو بین پروسه ها تقسیم کنه میشه مولتی پروسه.
➕ مولتی ترد یا async: یه پروسه که چندین ترد میسازه تا با وقفه ها ادامه کد از کار نیافته رو میگن مولتی ترد. کاری تقسیم نمیشه منابع همونه.
❓ مولتی پروسه باعث افزایش سرعت ربات api میشه؟
نه فقط مموری بیشتری مصرف میکنین. وقتی تلگرام درخواست وبهوک میفرسته به سمت اسکریپت شما سیستم هایی مثل litespeed از ارسال دوباره درخواست جلوگیری میکنه تا وقتی که اسکریپت کارش تموم شه. که میگن اپدیت تلگرام درانتظار میمونه (پندینگ pending)
وقتی اپدیت میاد شما بعد از ارسال هدر ها و کد 200 به تلگرام از تابع
litespeed_finish_request()
باید استفاده کنید تا سیستم شما هم درخواست رو تموم شده درنظر بگیره و اپدیت های جدید بگیره.
البته خودش مولتی پروسس به هرحال وقتی اپدیت قبلی درحال پردازش باشه دوباره اپدیت بیاد مولتی پروسه میشه دیگ 😐 ولی ازینکه ندونسته یه پروسه باز کنید اپدیتو منتقل کنید پروسه جدید بهتره. معمولا با اینکار تایم اوت رو هم میشه تغییر داد چون تایم اوت واسه درخواستای litespeed هست که محدود میشه اینجوری پروسه میره پس زمینه میشه تایم اوتشم عوض کرد.
💻 ژوپیتر ای پی آی | @JupiterAPI
🌐 فراهاست | @Fara_Host
➕ فرایند/پروسه: وقتی یه برنامه باز میشه یه پروسه ایجاد میشه و منابعی رو به پروسه اختصاص میده. مثلا وقتی سایت php باز میکنید برنامه php باز میشه و میره توی مموری (معمولا بیست مگابایت رم مصرف میشه که ربطی به اسکریپت شما نداره) بعد شروع میکنه اجرا کردن اسکریپت مربوط بهش.
➕ ریسمان/ترد: یه پروسه میتونه همزمان چندین ترد داشته باشه. ترد ها طبق زمان بندی اجرا میشن همزمان اجرا نمیشن مثلا یک ترد وصل میشه اینترنت تا بخواد وصل بشه ای بین ترد های دیگه اجرا میشن. یه پروسه میتونه هرچقدر که میخواد ترد داشته باشه. تو php معمولا مدیریت ترد ها با pcntl مدیریت میشن که کتابخونه amp هم همینکارو میکنه.
فرق ترد با پروسه اینه که دوتا پروسه دوبار یک برنامه رو باز میکنن مموری هاشون جداس ممکنه تو دو سیپیو همزمان اجرا بشن ولی ترد ها تو یدونه پروسه هستن و وقتی یکی از تردا بیکار میشه ترد دیگه میاد جاش اجرا میشه فقط یک سیپیو میمونن مموریشونم مشترکه.
➕ مولتی پروسه: یه پروسه اگه چندین پروسه بسازه و کاری که میخواد بکنه رو بین پروسه ها تقسیم کنه میشه مولتی پروسه.
➕ مولتی ترد یا async: یه پروسه که چندین ترد میسازه تا با وقفه ها ادامه کد از کار نیافته رو میگن مولتی ترد. کاری تقسیم نمیشه منابع همونه.
❓ مولتی پروسه باعث افزایش سرعت ربات api میشه؟
نه فقط مموری بیشتری مصرف میکنین. وقتی تلگرام درخواست وبهوک میفرسته به سمت اسکریپت شما سیستم هایی مثل litespeed از ارسال دوباره درخواست جلوگیری میکنه تا وقتی که اسکریپت کارش تموم شه. که میگن اپدیت تلگرام درانتظار میمونه (پندینگ pending)
وقتی اپدیت میاد شما بعد از ارسال هدر ها و کد 200 به تلگرام از تابع
litespeed_finish_request()
باید استفاده کنید تا سیستم شما هم درخواست رو تموم شده درنظر بگیره و اپدیت های جدید بگیره.
البته خودش مولتی پروسس به هرحال وقتی اپدیت قبلی درحال پردازش باشه دوباره اپدیت بیاد مولتی پروسه میشه دیگ 😐 ولی ازینکه ندونسته یه پروسه باز کنید اپدیتو منتقل کنید پروسه جدید بهتره. معمولا با اینکار تایم اوت رو هم میشه تغییر داد چون تایم اوت واسه درخواستای litespeed هست که محدود میشه اینجوری پروسه میره پس زمینه میشه تایم اوتشم عوض کرد.
💻 ژوپیتر ای پی آی | @JupiterAPI
🌐 فراهاست | @Fara_Host
ژوپیتـر اِیپیآی | Jupiter API
مولتی پروسه؟ async؟ 😐 ➕ فرایند/پروسه: وقتی یه برنامه باز میشه یه پروسه ایجاد میشه و منابعی رو به پروسه اختصاص میده. مثلا وقتی سایت php باز میکنید برنامه php باز میشه و میره توی مموری (معمولا بیست مگابایت رم مصرف میشه که ربطی به اسکریپت شما نداره) بعد شروع…
#reply
مشابه تابع litespeed_finish_request که مختص وب سرور litespeed هست، تابع fastcgi_finish_request برای بقیه وبسرورهاست که اگه هاست یا سرورتون دسترسی PHPCGI داشته باشه میتونید ازش استفاده کنید.
💻 ژوپیتر ای پی آی | @JupiterAPI
🌐 فراهاست | @Fara_Host
مشابه تابع litespeed_finish_request که مختص وب سرور litespeed هست، تابع fastcgi_finish_request برای بقیه وبسرورهاست که اگه هاست یا سرورتون دسترسی PHPCGI داشته باشه میتونید ازش استفاده کنید.
💻 ژوپیتر ای پی آی | @JupiterAPI
🌐 فراهاست | @Fara_Host
ژوپیتـر اِیپیآی | Jupiter API
مولتی پروسه؟ async؟ 😐 ➕ فرایند/پروسه: وقتی یه برنامه باز میشه یه پروسه ایجاد میشه و منابعی رو به پروسه اختصاص میده. مثلا وقتی سایت php باز میکنید برنامه php باز میشه و میره توی مموری (معمولا بیست مگابایت رم مصرف میشه که ربطی به اسکریپت شما نداره) بعد شروع…
انکد؟ دیکد؟ درهمسازی؟ رمزنگاری؟ 😐
واسه سرتیتر خوبه ازین به بعد همینجوری شروع میکنم
اقا ینفر اومده پیوی سورس انکدشو داده بود قرار بود سورسشو دیکد کنم بعد سورسش اجرا نمیشه نمیگم چرا اجرا نمیشه میگه یه فایل txt داشت اونو حذف کردم اجرا نشه اینو دیکد کن/: بعد هیچی دیگ اومدم توضیحش بدم گفت نوبیو رفت خابید.
➕ انکریپت/دکریپت: به الگوریتمای رمزنگاری میگن که متن رو با یک کلید (یا دو کلید) ترکیب میکنن و بدون اون کلید هیچجوره نمیشه به متن اصلی دسترسی داشت. متنو با کلید ترکیب کنه میشه انکریپت با کلید بخاد متنو برگردونه میشه دکریپت.
➕ انکد/دیکد: الگوریتمایی که صرفا جهت هدف خاصی و تغییر نمایش متن ساخته شدن و هیچ هدف امنیتیو رمزنگاریی ندارن. مثلا base64 که از ascii به یه محدوده خاصی از حروف متنو تبدیل میکنه یا utf8 که برای لود کردن فونت های مخصوصش باید رو متن خام اعمال بشه یا اصن json_encode هم یه انکد دکده که ارایه و متنو تو پحپ بهم تبدیل میکنه.
➕ کامپایلر: کامپایلر مربوط به یک زبان وظیفه داره کدای اون زبانو به یه زبان سطح پایین تر یا کد ماشین تبدیل کنه و یکطرفس چون به هرحال زبان ها دقیقا خصوصیات یکسان ندارن ک. اگه بخایم از زبان کامپایل شده به زبان اصلی برگردونیم خوب هم کار سختیه هم خیلی از اطلاعات از دست میره.
➕ مفسر: مفسر یه زبان صرفا یه برنامس ک خودش کامپایل شده و برای اجرای کد های اون زبان استفاده میشه مثل این میمونه ک هربار برنامه رو کامپایل کنه و بخاد اجراش کنه.
➕ ترنسپایلر: اگه یه زبانیو به یه زبان دیگه تبدیل کنی میشه این حالت معمولا برای دوتا زبان اسکریپتی اینو بکار میبرن.
خوب حالا چرا اینارو گفتم میخام بگم درهم ساز چیه.
درهم ساز برای اینه که دسترسی به کدها سخت بشه و قابل خوندن نباشه. هیچوقت غیرممکن نیس اصلا جزو رمزنگاری حساب نمیشه چون واسه ادم قابل خوندن نباشه درنهایت واسه کامپیوتر ک باید قابل خوندن باشه باید حتما اجرا بشه دیگ درسته؟
➕ درهم سازی: کاری که روی یک زبان معمولا اسکریپت انجام میدن تا کدهاش به سختی قابل خوندن باشه. خوب مشخصا شما انکد دیکد لازم ندارید هزار بارم base64_encode استفاده کنید درنهایت فقط سرعت اجرا رو پایین میارین پس باید چیکار کنیم. به طور کلی معمول ترین راه کاری شبیه اتفاقیه که توی کامپایلر یا ترنسپایلر میافته. شما باید جای کدو عوض کنید کدارو به چیزای عجیب تغییر بدین مثلا جای
if(true)print "hello";
بنویسین
!![]||(base64_decode("\x63\x48\x4a\x70\x62\x6e\x52\x66\x63\x67\x3d\x3d"))(hex2bin("\x36\x38\x36\x35\x36\x63\x36\x63\x36\x66"));
کد همونه زبانم همونه. اجرا میشه همون کارو میکنه فقط انگار دیگه به اون سادگی قبلی نیستش.
این میشه اصلی ترین چیزی که باید برای یه درهم سازی خوب انجام بشه. بقیشم به کلک های کسی که درهمسازی میکنه بستگی داره.
یه درهم ساز بد هم میاد صد بار base64 میکنه که فقط سرعتو پایین میاره.
🤨 حالا خطاب به دوست عزیزی که میگفت قابلیت اجرای سورس رو حذف کردم دیکدش کن. عزیزم وقتی سورس رو خراب کنی دیگه اجرا نشه دیگه درهم سازی نیس. اونو باید کرک کرد ببینی چیبوده ک نمیشه قطعا. معنی درهم سازیو انکدو انکریپتو باهم قاطی نکنین تشکر❤️
:/
واسه سرتیتر خوبه ازین به بعد همینجوری شروع میکنم
اقا ینفر اومده پیوی سورس انکدشو داده بود قرار بود سورسشو دیکد کنم بعد سورسش اجرا نمیشه نمیگم چرا اجرا نمیشه میگه یه فایل txt داشت اونو حذف کردم اجرا نشه اینو دیکد کن/: بعد هیچی دیگ اومدم توضیحش بدم گفت نوبیو رفت خابید.
➕ انکریپت/دکریپت: به الگوریتمای رمزنگاری میگن که متن رو با یک کلید (یا دو کلید) ترکیب میکنن و بدون اون کلید هیچجوره نمیشه به متن اصلی دسترسی داشت. متنو با کلید ترکیب کنه میشه انکریپت با کلید بخاد متنو برگردونه میشه دکریپت.
➕ انکد/دیکد: الگوریتمایی که صرفا جهت هدف خاصی و تغییر نمایش متن ساخته شدن و هیچ هدف امنیتیو رمزنگاریی ندارن. مثلا base64 که از ascii به یه محدوده خاصی از حروف متنو تبدیل میکنه یا utf8 که برای لود کردن فونت های مخصوصش باید رو متن خام اعمال بشه یا اصن json_encode هم یه انکد دکده که ارایه و متنو تو پحپ بهم تبدیل میکنه.
➕ کامپایلر: کامپایلر مربوط به یک زبان وظیفه داره کدای اون زبانو به یه زبان سطح پایین تر یا کد ماشین تبدیل کنه و یکطرفس چون به هرحال زبان ها دقیقا خصوصیات یکسان ندارن ک. اگه بخایم از زبان کامپایل شده به زبان اصلی برگردونیم خوب هم کار سختیه هم خیلی از اطلاعات از دست میره.
➕ مفسر: مفسر یه زبان صرفا یه برنامس ک خودش کامپایل شده و برای اجرای کد های اون زبان استفاده میشه مثل این میمونه ک هربار برنامه رو کامپایل کنه و بخاد اجراش کنه.
➕ ترنسپایلر: اگه یه زبانیو به یه زبان دیگه تبدیل کنی میشه این حالت معمولا برای دوتا زبان اسکریپتی اینو بکار میبرن.
خوب حالا چرا اینارو گفتم میخام بگم درهم ساز چیه.
درهم ساز برای اینه که دسترسی به کدها سخت بشه و قابل خوندن نباشه. هیچوقت غیرممکن نیس اصلا جزو رمزنگاری حساب نمیشه چون واسه ادم قابل خوندن نباشه درنهایت واسه کامپیوتر ک باید قابل خوندن باشه باید حتما اجرا بشه دیگ درسته؟
➕ درهم سازی: کاری که روی یک زبان معمولا اسکریپت انجام میدن تا کدهاش به سختی قابل خوندن باشه. خوب مشخصا شما انکد دیکد لازم ندارید هزار بارم base64_encode استفاده کنید درنهایت فقط سرعت اجرا رو پایین میارین پس باید چیکار کنیم. به طور کلی معمول ترین راه کاری شبیه اتفاقیه که توی کامپایلر یا ترنسپایلر میافته. شما باید جای کدو عوض کنید کدارو به چیزای عجیب تغییر بدین مثلا جای
if(true)print "hello";
بنویسین
!![]||(base64_decode("\x63\x48\x4a\x70\x62\x6e\x52\x66\x63\x67\x3d\x3d"))(hex2bin("\x36\x38\x36\x35\x36\x63\x36\x63\x36\x66"));
کد همونه زبانم همونه. اجرا میشه همون کارو میکنه فقط انگار دیگه به اون سادگی قبلی نیستش.
این میشه اصلی ترین چیزی که باید برای یه درهم سازی خوب انجام بشه. بقیشم به کلک های کسی که درهمسازی میکنه بستگی داره.
یه درهم ساز بد هم میاد صد بار base64 میکنه که فقط سرعتو پایین میاره.
🤨 حالا خطاب به دوست عزیزی که میگفت قابلیت اجرای سورس رو حذف کردم دیکدش کن. عزیزم وقتی سورس رو خراب کنی دیگه اجرا نشه دیگه درهم سازی نیس. اونو باید کرک کرد ببینی چیبوده ک نمیشه قطعا. معنی درهم سازیو انکدو انکریپتو باهم قاطی نکنین تشکر❤️
:/