Forwarded from DevTwitter | توییت برنامه نویسی
کاهش هزینه سیستمهای هوش مصنوعی با Semantic Caching
با رشد مدلهای زبانی بزرگ و پیشرفته، هزینه و زمان پاسخدهی هم به شدت افزایش پیدا کرده. مدلهایی مثل GPT-5 یا Claude برای کارهای پیچیده فوقالعادهاند، ولی استفاده از اونها هم پرهزینه و هم کند محسوب میشه. از طرف دیگه، AI Agentها واقعاً «توکنخور» هستن؛ یعنی برای انجام یک کار معمولاً چندین مرحله طی میکنن: تحقیق، برنامهریزی، عمل و بازتاب و تکرار. همین باعث میشه چندین بار با مدل تماس بگیرن و در نتیجه هزینه و تأخیر افزایش پیدا کنه و متنهای طولانیتر تولید بشه. برای مثال، یه بنچمارک اخیر از TheAgentCompany در ۲۰۲۵ نشون داده اجرای کامل یک Agent گاهی تا ۶.۸ دلار هزینه داره.
یکی از مشکلات اصلی در دنیای واقعی، تکراری بودن سوالهاست، مخصوصاً توی پشتیبانی مشتری. کاربران دائماً سوالهای مشابهی میپرسن: مثل «چطور پولم رو پس بگیرم؟» یا «شرایط بازگشت وجه چیه؟» و Agent مجبور میشه هر بار پاسخ رو از صفر تولید کنه. نتیجهش افزایش هزینه، طولانی شدن زمان پاسخ و فشار بیشتر روی سیستمهای RAG و زیرساختهاست.
در نگاه اول، ممکنه فکر کنیم کش کلاسیک کفایت میکنه. ایدهی کش ساده اینه که اگر یک سوال قبلاً پاسخ داده شده، دوباره سراغ مدل نریم. ولی مشکل اینجاست که کش سنتی دنبال Exact Match یا تطابق دقیق متنه. سوالهایی که از نظر معنی یکی هستن ولی عبارتهاشون فرق میکنه، مثل: «میخوام پولم رو پس بگیرم»، «چطور میتونم درخواست بازگشت وجه بدم؟» و «سیاست بازگشت پولتون چیه؟»، همه Cache Miss میشن و کش عملاً استفاده نمیشه.
اینجاست که Semantic Caching وارد میشه. به جای تطابق کلمهبهکلمه، کش به معنی و مفهوم جمله نگاه میکنه. مزیت اصلیش اینه که Recall و Hit Rate بالاتره و احتمال استفاده از کش و صرفهجویی خیلی بیشتر میشه. البته چالشش هم اینه که گاهی ممکنه جواب بیربط بده یا همون «False Positive» رخ بده.
روش کار Semantic Caching ساده است ولی هوشمندانه: ابتدا سوال کاربر به Embedding یا بردار عددی تبدیل میشه. بعد با بردارهای موجود در کش با Semantic Search مقایسه میشه. اگر فاصله معنایی کم باشه، پاسخ از کش برگردونده میشه؛ در غیر این صورت به RAG یا LLM میریم. در نهایت سوال و پاسخ جدید هم ذخیره میشه تا دفعه بعدی قابل استفاده باشه.
پیادهسازی Semantic Caching با چالشهایی همراهه؛ مثل دقت (Accuracy) که آیا کش جواب درست میده، کارایی (Performance) و میزان Cache Hit، سرعت سرویسدهی، آپدیتپذیری کش و اینکه آیا میتونیم کش رو گرم، تازهسازی یا پاکسازی کنیم. همچنین مشاهدهپذیری (Observability) مهمه تا بتونیم hit rate، latency، صرفهجویی هزینه و کیفیت کش رو بسنجیم.
معیارهای اصلی سنجش کش شامل Cache Hit Rate هست که نشون میده چند درصد درخواستها از کش پاسخ داده میشن و Precision/Recall/F1 Score که کیفیت و دقت پاسخها رو مشخص میکنه. برای بهبود دقت و کارایی کش هم میتونیم Threshold فاصله رو تنظیم کنیم، Reranker اضافه کنیم مثل Cross-encoder یا LLM-as-a-judge، از Fuzzy Matching برای تایپوها استفاده کنیم و فیلترهای اضافی مثل تشخیص پرسشهای زمانمحور (Temporal) یا تشخیص کد (Python، Java و…) اعمال کنیم تا سوالات اشتباه وارد کش نشن.
یه مثال واقعی از این تکنولوژی پروژه waLLMartCache در Walmart هست. اونها با نوآوریهایی مثل Load Balancer برای توزیع کش روی چند Node و Dual-tiered Storage که L1 = Vector DB و L2 = In-memory Cache مثل Redis هست، هم سرعت و هم دقت رو بالا بردن. Multi-tenancy هم باعث شده چند تیم یا اپلیکیشن از یک زیرساخت مشترک استفاده کنن. Decision Engine هم شامل تشخیص کد و زمانه و اگر سوال مناسب کش نباشه مستقیماً به LLM یا RAG میره. نتیجهش رسیدن به دقت نزدیک ۹۰٪ بوده.
@DevTwitter | <Reza Jafari/>
با رشد مدلهای زبانی بزرگ و پیشرفته، هزینه و زمان پاسخدهی هم به شدت افزایش پیدا کرده. مدلهایی مثل GPT-5 یا Claude برای کارهای پیچیده فوقالعادهاند، ولی استفاده از اونها هم پرهزینه و هم کند محسوب میشه. از طرف دیگه، AI Agentها واقعاً «توکنخور» هستن؛ یعنی برای انجام یک کار معمولاً چندین مرحله طی میکنن: تحقیق، برنامهریزی، عمل و بازتاب و تکرار. همین باعث میشه چندین بار با مدل تماس بگیرن و در نتیجه هزینه و تأخیر افزایش پیدا کنه و متنهای طولانیتر تولید بشه. برای مثال، یه بنچمارک اخیر از TheAgentCompany در ۲۰۲۵ نشون داده اجرای کامل یک Agent گاهی تا ۶.۸ دلار هزینه داره.
یکی از مشکلات اصلی در دنیای واقعی، تکراری بودن سوالهاست، مخصوصاً توی پشتیبانی مشتری. کاربران دائماً سوالهای مشابهی میپرسن: مثل «چطور پولم رو پس بگیرم؟» یا «شرایط بازگشت وجه چیه؟» و Agent مجبور میشه هر بار پاسخ رو از صفر تولید کنه. نتیجهش افزایش هزینه، طولانی شدن زمان پاسخ و فشار بیشتر روی سیستمهای RAG و زیرساختهاست.
در نگاه اول، ممکنه فکر کنیم کش کلاسیک کفایت میکنه. ایدهی کش ساده اینه که اگر یک سوال قبلاً پاسخ داده شده، دوباره سراغ مدل نریم. ولی مشکل اینجاست که کش سنتی دنبال Exact Match یا تطابق دقیق متنه. سوالهایی که از نظر معنی یکی هستن ولی عبارتهاشون فرق میکنه، مثل: «میخوام پولم رو پس بگیرم»، «چطور میتونم درخواست بازگشت وجه بدم؟» و «سیاست بازگشت پولتون چیه؟»، همه Cache Miss میشن و کش عملاً استفاده نمیشه.
اینجاست که Semantic Caching وارد میشه. به جای تطابق کلمهبهکلمه، کش به معنی و مفهوم جمله نگاه میکنه. مزیت اصلیش اینه که Recall و Hit Rate بالاتره و احتمال استفاده از کش و صرفهجویی خیلی بیشتر میشه. البته چالشش هم اینه که گاهی ممکنه جواب بیربط بده یا همون «False Positive» رخ بده.
روش کار Semantic Caching ساده است ولی هوشمندانه: ابتدا سوال کاربر به Embedding یا بردار عددی تبدیل میشه. بعد با بردارهای موجود در کش با Semantic Search مقایسه میشه. اگر فاصله معنایی کم باشه، پاسخ از کش برگردونده میشه؛ در غیر این صورت به RAG یا LLM میریم. در نهایت سوال و پاسخ جدید هم ذخیره میشه تا دفعه بعدی قابل استفاده باشه.
پیادهسازی Semantic Caching با چالشهایی همراهه؛ مثل دقت (Accuracy) که آیا کش جواب درست میده، کارایی (Performance) و میزان Cache Hit، سرعت سرویسدهی، آپدیتپذیری کش و اینکه آیا میتونیم کش رو گرم، تازهسازی یا پاکسازی کنیم. همچنین مشاهدهپذیری (Observability) مهمه تا بتونیم hit rate، latency، صرفهجویی هزینه و کیفیت کش رو بسنجیم.
معیارهای اصلی سنجش کش شامل Cache Hit Rate هست که نشون میده چند درصد درخواستها از کش پاسخ داده میشن و Precision/Recall/F1 Score که کیفیت و دقت پاسخها رو مشخص میکنه. برای بهبود دقت و کارایی کش هم میتونیم Threshold فاصله رو تنظیم کنیم، Reranker اضافه کنیم مثل Cross-encoder یا LLM-as-a-judge، از Fuzzy Matching برای تایپوها استفاده کنیم و فیلترهای اضافی مثل تشخیص پرسشهای زمانمحور (Temporal) یا تشخیص کد (Python، Java و…) اعمال کنیم تا سوالات اشتباه وارد کش نشن.
یه مثال واقعی از این تکنولوژی پروژه waLLMartCache در Walmart هست. اونها با نوآوریهایی مثل Load Balancer برای توزیع کش روی چند Node و Dual-tiered Storage که L1 = Vector DB و L2 = In-memory Cache مثل Redis هست، هم سرعت و هم دقت رو بالا بردن. Multi-tenancy هم باعث شده چند تیم یا اپلیکیشن از یک زیرساخت مشترک استفاده کنن. Decision Engine هم شامل تشخیص کد و زمانه و اگر سوال مناسب کش نباشه مستقیماً به LLM یا RAG میره. نتیجهش رسیدن به دقت نزدیک ۹۰٪ بوده.
@DevTwitter | <Reza Jafari/>
👏1
Forwarded from سید فرندز / برنامه نویسی / هک و امنیت / تکنولوژی
نوشته شده که زمانی دولت ها نفوذ و جمع آوری اطلاعاتشون جواب نده میرن سراغ یک راه حل سومی ، یک تکنیک حمله به اسم Onion Overloading via Tor2web
یعنی عملا توضیح داده که چطوری میشه از طریق Tor2web یک دامنه onion رو از دسترس خارج کرد البته بدون اینکه کل ترافیک تانل بشه جالبیش اینه که یک فشار کوچیک باعث میشه که یک دامنه مثل دامنه باج افزار LockBit بالا نیاد و از این تکنیک پلیس استفاده کرده .
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
خیلی از آدمای اطرافم رو حذف کردم. می دونی آدمای اطراف آدم مثل ی زنجیر دورتو میگیرن
حذفش می کنم که بتونم آزاد باشم و به جلو برم
حذفش می کنم که بتونم آزاد باشم و به جلو برم
👍4
Forwarded from Syntax | سینتکس (Alireza F)
چرا Code-level Monolith معماری برنده است؟ (درسهایی از Grafana Loki)
دوراهی مونولیت یا میکروسرویس:
از یک طرف، مونولیت (Monolith) ساده است اما اگر بد نوشته شود به "کد اسپاگتی" تبدیل میشود.
از طرف دیگر، میکروسرویس (Microservices) مقیاسپذیر است اما شما را در جهنمی از پیچیدگیهای شبکه، دیپلوی و مدیریت ۵۰ کانتینر مختلف غرق میکند.
اما اگر راه سومی وجود داشته باشه چی؟ راهی که در آن کدتان را "مثل میکروسرویس" مینویسید، اما آن را "مثل مونولیت" اجرا میکنید.
در معماری Code-level Monolith، شما مرزهای سرویسهایتان را کاملا رعایت میکنید. یعنی سرویس
اما در زمان بیلد (Build Time)، به جای اینکه آنها را در کانتینرهای جداگانه بستهبندی کنید، همه را در یک فایل اجرایی (Binary) واحد لینک میکنید.
شعار این معماری:
> *"میکروسرویس در توسعه، مونولیت در اجرا."*
جادوی Grafana Loki و Tempo
بهترین مثال زنده این معماری در دنیا، ابزارهای شرکت Grafana Labs (مانند Loki برای لاگ، Tempo برای تریس و Mimir برای متریک) هستند.
سورس کد Grafana Loki از اجزای مختلفی تشکیل شده است:
*
*
*
نکته نبوغآمیز اینجاست: همه اینها در یک کدبیس و یک فایل باینری هستند.
1. حالت (All-in-One):
وقتی میخواهید Loki را روی لپتاپ یا سرور کوچک خود اجرا کنید، دستور زیر را میزنید:
در این حالت، تمام اجزا در یک پروسه اجرا میشوند. ارتباط بین
* تاخیر: صفر نانوثانیه.
* پیچیدگی: صفر.
2. حالتِ اسکیل بالا (Microservices):
وقتی ترافیک شما میلیونی میشود، همان فایل باینری را با فلگ متفاوتی اجرا میکنید:
حالا این باینری فقط نقش Ingester را بازی میکند و بقیه کدها خاموش میشوند. در این حالت، ارتباطات به صورت خودکار به gRPC/HTTP تغییر میکند.
چرا باید به این روش فکر کنید؟
1. حذف سربار شبکه (Zero Latency):
در میکروسرویس، دادهها باید Serialize شوند، به شبکه بروند و Deserialize شوند. در Code-level Monolith، این فقط یک جابجایی اشارهگر (Pointer) در حافظه است. سرعت اجرای شما وحشتناک بالا میرود.
2. دیپلوی آسان (Operational Simplicity):
برای شروع پروژه، نیازی به Kubernetes و مدیریت ۱۰ تا فایل YAML ندارید. یک فایل باینری را کپی و اجرا میکنید.
3. انعطافپذیری (Agility):
شما امروز نمیدانید پروژه شما چقدر بزرگ میشود. با این روش، شما امروز ساده شروع میکنید، اما کدتان "Ready to Scale" است. هر زمان لازم شد، با تغییر کانفیگ، مونولیت را میشکنید.
چطور پیادهسازی کنیم؟ (مثال Go)
کلید کار در استفاده از Interface هاست.
به جای اینکه سرویس A مستقیماً با gRPC کلاینتِ سرویس B صحبت کند، با یک اینترفیس صحبت میکند.
* **در حالت Monolith: پیادهسازی اینترفیس، مستقیماً متد سرویس B را صدا میزند.
* در حالت Microservice: پیادهسازی اینترفیس، یک درخواست gRPC میفرستد.
—-
این مقاله به خوبی پیاده سازیش رو توضیح میده:
بیایید فرض کنیم اینکه برنامه میکروسرویس باشد یا مونولیت، فقط یک جزئیات پیادهسازی است
سوال:
در گوئیک کانکت چطور میشه به code level monolith رسید؟
https://github.com/syntaxfa/quick-connect
#code_level_monolith
@Syntax_fa
دوراهی مونولیت یا میکروسرویس:
از یک طرف، مونولیت (Monolith) ساده است اما اگر بد نوشته شود به "کد اسپاگتی" تبدیل میشود.
از طرف دیگر، میکروسرویس (Microservices) مقیاسپذیر است اما شما را در جهنمی از پیچیدگیهای شبکه، دیپلوی و مدیریت ۵۰ کانتینر مختلف غرق میکند.
اما اگر راه سومی وجود داشته باشه چی؟ راهی که در آن کدتان را "مثل میکروسرویس" مینویسید، اما آن را "مثل مونولیت" اجرا میکنید.
در معماری Code-level Monolith، شما مرزهای سرویسهایتان را کاملا رعایت میکنید. یعنی سرویس
Auth و سرویس Order کدهای کاملا جداگانهای دارند (درست مثل میکروسرویس).اما در زمان بیلد (Build Time)، به جای اینکه آنها را در کانتینرهای جداگانه بستهبندی کنید، همه را در یک فایل اجرایی (Binary) واحد لینک میکنید.
شعار این معماری:
> *"میکروسرویس در توسعه، مونولیت در اجرا."*
جادوی Grafana Loki و Tempo
بهترین مثال زنده این معماری در دنیا، ابزارهای شرکت Grafana Labs (مانند Loki برای لاگ، Tempo برای تریس و Mimir برای متریک) هستند.
سورس کد Grafana Loki از اجزای مختلفی تشکیل شده است:
*
Ingester (دریافت لاگ)*
Distributor (توزیع بار)*
Querier (جستجو)نکته نبوغآمیز اینجاست: همه اینها در یک کدبیس و یک فایل باینری هستند.
1. حالت (All-in-One):
وقتی میخواهید Loki را روی لپتاپ یا سرور کوچک خود اجرا کنید، دستور زیر را میزنید:
./loki -target=allدر این حالت، تمام اجزا در یک پروسه اجرا میشوند. ارتباط بین
Distributor و Ingester از طریق Function Call در حافظه رم انجام میشود.* تاخیر: صفر نانوثانیه.
* پیچیدگی: صفر.
2. حالتِ اسکیل بالا (Microservices):
وقتی ترافیک شما میلیونی میشود، همان فایل باینری را با فلگ متفاوتی اجرا میکنید:
./loki -target=ingesterحالا این باینری فقط نقش Ingester را بازی میکند و بقیه کدها خاموش میشوند. در این حالت، ارتباطات به صورت خودکار به gRPC/HTTP تغییر میکند.
چرا باید به این روش فکر کنید؟
1. حذف سربار شبکه (Zero Latency):
در میکروسرویس، دادهها باید Serialize شوند، به شبکه بروند و Deserialize شوند. در Code-level Monolith، این فقط یک جابجایی اشارهگر (Pointer) در حافظه است. سرعت اجرای شما وحشتناک بالا میرود.
2. دیپلوی آسان (Operational Simplicity):
برای شروع پروژه، نیازی به Kubernetes و مدیریت ۱۰ تا فایل YAML ندارید. یک فایل باینری را کپی و اجرا میکنید.
3. انعطافپذیری (Agility):
شما امروز نمیدانید پروژه شما چقدر بزرگ میشود. با این روش، شما امروز ساده شروع میکنید، اما کدتان "Ready to Scale" است. هر زمان لازم شد، با تغییر کانفیگ، مونولیت را میشکنید.
چطور پیادهسازی کنیم؟ (مثال Go)
کلید کار در استفاده از Interface هاست.
به جای اینکه سرویس A مستقیماً با gRPC کلاینتِ سرویس B صحبت کند، با یک اینترفیس صحبت میکند.
* **در حالت Monolith: پیادهسازی اینترفیس، مستقیماً متد سرویس B را صدا میزند.
* در حالت Microservice: پیادهسازی اینترفیس، یک درخواست gRPC میفرستد.
—-
این مقاله به خوبی پیاده سازیش رو توضیح میده:
بیایید فرض کنیم اینکه برنامه میکروسرویس باشد یا مونولیت، فقط یک جزئیات پیادهسازی است
سوال:
در گوئیک کانکت چطور میشه به code level monolith رسید؟
https://github.com/syntaxfa/quick-connect
#code_level_monolith
@Syntax_fa
🔥1🤝1
Forwarded from Linuxor ?
با این ابزار میتونید به صورت آنلاین با هوش مصنوعی آیکون بسازید :
perchance.org/ai-icon-generator
@Linuxor
perchance.org/ai-icon-generator
@Linuxor
Forwarded from Security Analysis
از سال 2005 تا سال 2025 توی امنیت سایبری چند نکته از تجربیات خود و اطرافیان و همچنین کامیونیتی که داریم رو ، از دیدگاه خودم دوست داشتم به اشتراک بذارم ، نسل جدیدی ها بخصوص که عجله دارند خیلی زود هکر بشن باید بیشتر به این موضوع دقت کنند.
نسلی که مدام شروع کننده هست اما به ندرت موردی رو تموم میکنه و سوالشون اینه چرا هیچ چیز به نتیجه نمیرسه؟ نکته توی تمرکز ما هستش
شمشیری که بی هدف روی هوا تاب میخوره خطری نداره ولی وقتی روی یک نقطه فرود میاد میتونه یک پادشاهی رو از هم بپاشه.
عامل خیلی از شکستهایی که میخورن کمبود استعداد یا نبود شانس نیست بلکه از شاخه به شاخه پریدن هستش.
بزرگترین توهم نسل جدید اینه : میتونیم همه چیز رو با هم پیش ببریم.
وسوسه های متعدد یعنی دوری از هدف !
هرچیزی که بلدید همون باشید ، یک پله جلوتر از خودتون بیشتر تعریف نکنید که دیده بشید یا با احترام فیک خریدن بشید الگوی توییتر و اینستاگرام.
سنگ بزرگ نشونه نزدن هستش، اینکه گفته میشه ؛ امنیت سایبری یک دوره ی آموزشی نیست و ترکیبی از آموزشها و خطاها و تمرین های پرتکرار هست واقعیت داره.
عنوان های بزرگ یعنی نداشتن علمی که تجربه ی کافی در اون ندارید دیر یا زود اشکار میشید ، مثل اونی که همین 6 سال پیش وقتی توی شرکت امن پردازان کویر یزد استخدام شده بود توی رزومه نوشته بود : عضویت در گروه تلگرام وب آموز- عضویت در وبسایت آشیانه- عضویت در وبسایت IRanonymous
تهش یه سری اکسپلویت های دیگران رو از وبسایت cxsecurity برده بود بنام خودش توی وبسایت Exploit-db ثبت کرده بود.
ادم پوشالی همیشه توخالی و متوهم میمونه ، همین ادم بعد شش سال توی مصاحبه فنی OWASP رد شد توی یکی از شرکتهای امنیت(فیلم مصاحبه اش موجوده) ، ولی امثال توی ایونت باگ بانتی راورو بعنوان داور دیده شد:دی
اینکه بقیه رو به زور قانع کنید که هکر هستید و انواع عنوان های RedTeamer و دیگری Advanced Soc Team Lead بزنید توی لینکدین و دیگری شب و روز توییتر و اینستاگرام دنبال اثبات خودشه ، همشون اشتباهه و اگر اینکارو کردید یا کمبود چیزی در زندگی داشتید یا بیمار هستید.
قدیم ادم ها رو با علم تعریف و تمجید میکردن ، الان با یوتیوب و اینستاگرام گردی و پول نمایش دادن ، این یه نوع بیماری واگیردار هست ، احترام توی جوامع علمی با علم و تخصصی بدست میاد ، اگر 200 هزارنفر فالور داشتید نگاهی بندازید ببینید 20 نفرشون متخصص هستن یا همشون کاربرهای زامبی طوری هستن که بدون داشتن علم و آگاهی و تخصصی فقط به به و چه چه میکنند؟!
هیچکس جای دیگری رو نگرفته ، تخصصی حرف بزنید و فکر نکنید اگر امنیت بلدید بقیه ی انسان ها از شما پایین تر هستن ، شما هم فقط یک شغل دارید نه کمتر نه بیشتر از بقیه ، اینجا غرور همون بیماری واگیردار هستش که سراغ خیلی ها میاد، آدم باشید.
هیچ کاری هیجان دائمی نداره ، اگر سالهای اول شروع کار شما باشه جذابه، ولی بعدا ممکنه عادی یا حتی خسته کننده هم باشه ، اما شما یک شغل دارید که باهاش به امن بودن بقیه کمک میکنید پس ناامیدی مال شما نیست.
قدیم میگفتن ابزارهای اتومات پنتست زدن پیشرفته میشن و پنتستر ها کنار گذاشته میشن ، اما از اون تایم حداقل یادمه 18 سال گذشته و این تخصصی منابع انسانی بود که غلبه داشت بر ابزارهای اتومات و بعد سالها امثال ابزار Burp Suite اومد دیدن واقعا تسلط امنیت کار رو پلتفرم و معماری و برنامه نویسی و زیرساخت و درک کامل آسیب پذیری ها هستش که ادم رو توی شرایط فنی جلو میبره نه ابزار اتومات.
الان هم میگن هوش مصنوعی جای شما رو میگیره اما هوش مصنوعی برای شما یک دستیار خوب میشه اگر علم و تخصص پشتوانه شما باشه و همیشه بروز باشید .
تخصص درآمد میاره پس سختی ها رو پشت سر بذارید بعدش دنبال شغل بگردید و دست و پا شکسته حرکت نکنید چون از یک مهندس امنیت باید انتظار یک برنامه نویس حرفه ای و معمار درست حسابی هم دربیاد قبلش.
آینده همیشه برای کسایی هست که تخصصی جلو میرن و همیشه بروز هستند و فعال
بقول بزرگی : مثل تمبر پستی باشید ، بچسبید به یک تخصص و تا مقصد برسونید خودتون رو :)
بازم تکرار حرف آخرم اینه :
To disrupt a system, you must first understand it
@securation
نسلی که مدام شروع کننده هست اما به ندرت موردی رو تموم میکنه و سوالشون اینه چرا هیچ چیز به نتیجه نمیرسه؟ نکته توی تمرکز ما هستش
شمشیری که بی هدف روی هوا تاب میخوره خطری نداره ولی وقتی روی یک نقطه فرود میاد میتونه یک پادشاهی رو از هم بپاشه.
عامل خیلی از شکستهایی که میخورن کمبود استعداد یا نبود شانس نیست بلکه از شاخه به شاخه پریدن هستش.
بزرگترین توهم نسل جدید اینه : میتونیم همه چیز رو با هم پیش ببریم.
وسوسه های متعدد یعنی دوری از هدف !
هرچیزی که بلدید همون باشید ، یک پله جلوتر از خودتون بیشتر تعریف نکنید که دیده بشید یا با احترام فیک خریدن بشید الگوی توییتر و اینستاگرام.
سنگ بزرگ نشونه نزدن هستش، اینکه گفته میشه ؛ امنیت سایبری یک دوره ی آموزشی نیست و ترکیبی از آموزشها و خطاها و تمرین های پرتکرار هست واقعیت داره.
عنوان های بزرگ یعنی نداشتن علمی که تجربه ی کافی در اون ندارید دیر یا زود اشکار میشید ، مثل اونی که همین 6 سال پیش وقتی توی شرکت امن پردازان کویر یزد استخدام شده بود توی رزومه نوشته بود : عضویت در گروه تلگرام وب آموز- عضویت در وبسایت آشیانه- عضویت در وبسایت IRanonymous
تهش یه سری اکسپلویت های دیگران رو از وبسایت cxsecurity برده بود بنام خودش توی وبسایت Exploit-db ثبت کرده بود.
ادم پوشالی همیشه توخالی و متوهم میمونه ، همین ادم بعد شش سال توی مصاحبه فنی OWASP رد شد توی یکی از شرکتهای امنیت(فیلم مصاحبه اش موجوده) ، ولی امثال توی ایونت باگ بانتی راورو بعنوان داور دیده شد:دی
اینکه بقیه رو به زور قانع کنید که هکر هستید و انواع عنوان های RedTeamer و دیگری Advanced Soc Team Lead بزنید توی لینکدین و دیگری شب و روز توییتر و اینستاگرام دنبال اثبات خودشه ، همشون اشتباهه و اگر اینکارو کردید یا کمبود چیزی در زندگی داشتید یا بیمار هستید.
قدیم ادم ها رو با علم تعریف و تمجید میکردن ، الان با یوتیوب و اینستاگرام گردی و پول نمایش دادن ، این یه نوع بیماری واگیردار هست ، احترام توی جوامع علمی با علم و تخصصی بدست میاد ، اگر 200 هزارنفر فالور داشتید نگاهی بندازید ببینید 20 نفرشون متخصص هستن یا همشون کاربرهای زامبی طوری هستن که بدون داشتن علم و آگاهی و تخصصی فقط به به و چه چه میکنند؟!
هیچکس جای دیگری رو نگرفته ، تخصصی حرف بزنید و فکر نکنید اگر امنیت بلدید بقیه ی انسان ها از شما پایین تر هستن ، شما هم فقط یک شغل دارید نه کمتر نه بیشتر از بقیه ، اینجا غرور همون بیماری واگیردار هستش که سراغ خیلی ها میاد، آدم باشید.
هیچ کاری هیجان دائمی نداره ، اگر سالهای اول شروع کار شما باشه جذابه، ولی بعدا ممکنه عادی یا حتی خسته کننده هم باشه ، اما شما یک شغل دارید که باهاش به امن بودن بقیه کمک میکنید پس ناامیدی مال شما نیست.
قدیم میگفتن ابزارهای اتومات پنتست زدن پیشرفته میشن و پنتستر ها کنار گذاشته میشن ، اما از اون تایم حداقل یادمه 18 سال گذشته و این تخصصی منابع انسانی بود که غلبه داشت بر ابزارهای اتومات و بعد سالها امثال ابزار Burp Suite اومد دیدن واقعا تسلط امنیت کار رو پلتفرم و معماری و برنامه نویسی و زیرساخت و درک کامل آسیب پذیری ها هستش که ادم رو توی شرایط فنی جلو میبره نه ابزار اتومات.
الان هم میگن هوش مصنوعی جای شما رو میگیره اما هوش مصنوعی برای شما یک دستیار خوب میشه اگر علم و تخصص پشتوانه شما باشه و همیشه بروز باشید .
تخصص درآمد میاره پس سختی ها رو پشت سر بذارید بعدش دنبال شغل بگردید و دست و پا شکسته حرکت نکنید چون از یک مهندس امنیت باید انتظار یک برنامه نویس حرفه ای و معمار درست حسابی هم دربیاد قبلش.
آینده همیشه برای کسایی هست که تخصصی جلو میرن و همیشه بروز هستند و فعال
بقول بزرگی : مثل تمبر پستی باشید ، بچسبید به یک تخصص و تا مقصد برسونید خودتون رو :)
بازم تکرار حرف آخرم اینه :
To disrupt a system, you must first understand it
@securation
Forwarded from DevTwitter | توییت برنامه نویسی
امروز داشتم یکم ریکت یاد میگرفتم ک یهو با سایت usehooks.com روبرو شدم.
منبع جالب و خوب برای اموزش و استفاده از هوک های آماده react هست.
طبق بررسی ک انجام دادم کدهای موجود در سایت ساده و قابل فهم هستن و کاربردی میتونه باشه ،
امیدوارم ک بدردتون بخوره
@DevTwitter | <Ali Adinehpour/>
منبع جالب و خوب برای اموزش و استفاده از هوک های آماده react هست.
طبق بررسی ک انجام دادم کدهای موجود در سایت ساده و قابل فهم هستن و کاربردی میتونه باشه ،
امیدوارم ک بدردتون بخوره
@DevTwitter | <Ali Adinehpour/>
Forwarded from محتوای آزاد سهراب (Sohrab)
Forwarded from محتوای آزاد سهراب (Sohrab)
محتوای آزاد سهراب
پیاز مورد علاقمون هم بهروزرسانی شد. ادامش به علت محدودیت ها در پست بعدی. @SohrabContents
شبکه تور اقدام به جایگزینی الگوریتم رمزنگاری قدیمی خود به نام تور۱ با یک سامانه جدید و پیشرفتهتر به نام شمارنده گالوا پیازی یا به اختصار سیجیاو کرده است. این تصمیم با هدف افزایش امنیت و مقاومت شبکه در برابر حملات نوین رهگیری ترافیک گرفته شده که میتوانست امنیت دادهها و ناشناس بودن کاربران تور را به خطر بیندازد.
الگوریتم تور۱ در زمانی طراحی شده بود که دانش رمزنگاری به پیشرفت امروزی نرسیده بود و از آن زمان تاکنون استانداردهای امنیتی به شکل قابل توجهی بهبود یافتهاند. یکی از مشکلات اصلی تور۱ این بود که از رمزنگاری ایایاس-سیتیآر بدون گواهیسازی بین گرهها استفاده میکرد، که این موضوع منجر به آسیبپذیری در برابر حملات برچسبگذاری میشد و به مهاجمان اجازه میداد ترافیک بین رلههایی که زیر کنترل آنها بود را دگرگون کنند. همچنین تور۱ از کلیدهای ایایاس یکسانی در طول عمر یک مسیر استفاده دوباره میکرد که در صورت سرقت کلید، امکان رمزگشایی را فراهم میآورد.
الگوریتم نوین سیجیاو بر پایه یک ساختار رمزنگاری به نام جایگشت شبهتصادفی استوار ساخته شده که توسط پژوهشگران برجسته رمزنگاری طراحی و تأیید شده است. این سامانه از رمزنگاری بلوک پهن و زنجیرهسازی برچسبها استفاده میکند، به گونهای که هرگونه دگرگونی در ترافیک باعث غیرقابل بازیابی شدن کل سلول و سلولهای آینده میشود و حملات برچسبگذاری را مسدود میکند. افزون بر این، سیجیاو کلیدها را پس از هر سلول بهروزرسانی میکند تا حتی در صورت افشای کلیدهای کنونی، ترافیک گذشته قابل رمزگشایی نباشد. در این سامانه نو، اِساِچای-۱ به طور کامل از رمزنگاری رله برداشته شده و به جای آن از یک گواهیکننده هویت ۱۶-بایتی استفاده میشود که بسیار توانمندتر است.
کاربران مرورگر تور نیازی به انجام هیچ کاری برای بهرهمندی از سیجیاو ندارند، زیرا که این دگرگونی به صورت خودکار هنگامی که سامانه نو به طور کامل مستقر شود اعمال خواهد شد، هرچند که زمان دقیق برای پیشگزیده شدن این گزینه هنوز اعلام نشده است.
🔗 منبع
@SohrabContents
الگوریتم تور۱ در زمانی طراحی شده بود که دانش رمزنگاری به پیشرفت امروزی نرسیده بود و از آن زمان تاکنون استانداردهای امنیتی به شکل قابل توجهی بهبود یافتهاند. یکی از مشکلات اصلی تور۱ این بود که از رمزنگاری ایایاس-سیتیآر بدون گواهیسازی بین گرهها استفاده میکرد، که این موضوع منجر به آسیبپذیری در برابر حملات برچسبگذاری میشد و به مهاجمان اجازه میداد ترافیک بین رلههایی که زیر کنترل آنها بود را دگرگون کنند. همچنین تور۱ از کلیدهای ایایاس یکسانی در طول عمر یک مسیر استفاده دوباره میکرد که در صورت سرقت کلید، امکان رمزگشایی را فراهم میآورد.
الگوریتم نوین سیجیاو بر پایه یک ساختار رمزنگاری به نام جایگشت شبهتصادفی استوار ساخته شده که توسط پژوهشگران برجسته رمزنگاری طراحی و تأیید شده است. این سامانه از رمزنگاری بلوک پهن و زنجیرهسازی برچسبها استفاده میکند، به گونهای که هرگونه دگرگونی در ترافیک باعث غیرقابل بازیابی شدن کل سلول و سلولهای آینده میشود و حملات برچسبگذاری را مسدود میکند. افزون بر این، سیجیاو کلیدها را پس از هر سلول بهروزرسانی میکند تا حتی در صورت افشای کلیدهای کنونی، ترافیک گذشته قابل رمزگشایی نباشد. در این سامانه نو، اِساِچای-۱ به طور کامل از رمزنگاری رله برداشته شده و به جای آن از یک گواهیکننده هویت ۱۶-بایتی استفاده میشود که بسیار توانمندتر است.
کاربران مرورگر تور نیازی به انجام هیچ کاری برای بهرهمندی از سیجیاو ندارند، زیرا که این دگرگونی به صورت خودکار هنگامی که سامانه نو به طور کامل مستقر شود اعمال خواهد شد، هرچند که زمان دقیق برای پیشگزیده شدن این گزینه هنوز اعلام نشده است.
🔗 منبع
@SohrabContents
Forwarded from Entrepreneurship Articles
▪️پذیرش فزاینده ابزارهای خرید مبتنی بر هوش مصنوعی در آمریکا
نمودار نشان میدهد که نسل ۱۸–۳۹ سال پیشران اصلی استفاده از هوش مصنوعی در خرید است و در تمام شاخصها با فاصله قابلتوجهی جلوتر از گروه ۴۰–۶۴ سال قرار دارد.
اعتماد به توصیههای هوش مصنوعی در نسل جوان به ۴۱٪ رسیده؛ یعنی AI به بخشی از تصمیمسازی خرید تبدیل شده است.
اینفلوئنسرهای دیجیتال مبتنی بر AI برای ۴۴٪ از جوانان به اندازه نمونههای انسانی مؤثر بهنظر میرسند—نشانهای از تغییر الگوی بازاریابی.
جستوجوی محصول با AI نیز در هر دو گروه جایگاه تثبیتشدهای دارد، هرچند جوانترها پذیرش بالاتری نشان میدهند.
جمعبندی:
دادهها نشان میدهد که AI به محور رفتار خرید نسل جدید تبدیل شده و برندها باید استراتژیهای خود در حوزه جستوجو، توصیهسازی و بازاریابی دیجیتال را بر این روند منطبق کنند.
Join us: @Entrepreneurship_Articles
نمودار نشان میدهد که نسل ۱۸–۳۹ سال پیشران اصلی استفاده از هوش مصنوعی در خرید است و در تمام شاخصها با فاصله قابلتوجهی جلوتر از گروه ۴۰–۶۴ سال قرار دارد.
اعتماد به توصیههای هوش مصنوعی در نسل جوان به ۴۱٪ رسیده؛ یعنی AI به بخشی از تصمیمسازی خرید تبدیل شده است.
اینفلوئنسرهای دیجیتال مبتنی بر AI برای ۴۴٪ از جوانان به اندازه نمونههای انسانی مؤثر بهنظر میرسند—نشانهای از تغییر الگوی بازاریابی.
جستوجوی محصول با AI نیز در هر دو گروه جایگاه تثبیتشدهای دارد، هرچند جوانترها پذیرش بالاتری نشان میدهند.
جمعبندی:
دادهها نشان میدهد که AI به محور رفتار خرید نسل جدید تبدیل شده و برندها باید استراتژیهای خود در حوزه جستوجو، توصیهسازی و بازاریابی دیجیتال را بر این روند منطبق کنند.
Join us: @Entrepreneurship_Articles
Forwarded from DevTwitter | توییت برنامه نویسی
کمپانی OpenAi یک دایکیومنت بسیار ارزنده معرفی کرده به عنوان Building an AI-native engineering team
در این سند، راهکارهای قابل اجرا ارائه شده است تا رهبران مهندسی بتوانند از همین امروز فرایند ساخت تیمها و فرآیندهای بومی هوش مصنوعی (AI-native) را آغاز کنند
نسخه فارسی :
https://xpoury4.github.io/ai-native-engineering-persian/
نسخه اصلی :
https://cdn.openai.com/business-guides-and-resources/building-an-ai-native-engineering-team.pdf
لینک گیتهاب برای دانلود :
https://github.com/xPOURY4/ai-native-engineering-persian
@DevTwitter | <POURYA/>
در این سند، راهکارهای قابل اجرا ارائه شده است تا رهبران مهندسی بتوانند از همین امروز فرایند ساخت تیمها و فرآیندهای بومی هوش مصنوعی (AI-native) را آغاز کنند
نسخه فارسی :
https://xpoury4.github.io/ai-native-engineering-persian/
نسخه اصلی :
https://cdn.openai.com/business-guides-and-resources/building-an-ai-native-engineering-team.pdf
لینک گیتهاب برای دانلود :
https://github.com/xPOURY4/ai-native-engineering-persian
@DevTwitter | <POURYA/>
👍1
Forwarded from DevTwitter | توییت برنامه نویسی
مدلی که این روزها توی اخبار خوب دیده نشد مدل ۶ میلیارد پارامتری Z-Image چینی هستش که تصاویر با کیفیتی رو با سرعت بالا (۱ ثانیه!) روی VRAM 16 GB و به صورت لوکال تولید میکنه.
مثل بیشتر مدلهای اوپن سورس چینی، بدون سانسور و محدودیته.
https://github.com/Tongyi-MAI/Z-Image
@DevTwitter | <Diego Jr/>
مثل بیشتر مدلهای اوپن سورس چینی، بدون سانسور و محدودیته.
https://github.com/Tongyi-MAI/Z-Image
@DevTwitter | <Diego Jr/>
Forwarded from Syntax | سینتکس (Alireza F)
چند تا گیتهاب اکشن کاربردی که بدرد اکثر ریتوزیتوری ها میخوره:
1. اکشن لینت
با این اکشن، اکشن هارو لینت کن و بررسی کن ورژن ها، سینتکس و همه چی اوکیه یا نه. همچنین خودش تو پول ریکوئست ها کامنت هم میذاره و مشکلات رو میگه.
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/action-lint.yml
2. داکر لینت:
فایل Dockerfile هارو لینت میکنه
از نظر امنیتی، استاندارد و اینکه الکی حجم ایمیج رو زیاد نکرده باشید و ... لینت میکنه.
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/docker-lint.yml
3. کامیت لینت:
لینت کردن کامیت ها مسیج کامیت و ...
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/commit-lint.yml
4. SQL Lint:
فایل های sql رو لینت میکنه.
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/sql-lint.yml
5. دپلوی روی داکر هاب
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/admin-deploy.yml
#github #action
@Syntax_fa
1. اکشن لینت
با این اکشن، اکشن هارو لینت کن و بررسی کن ورژن ها، سینتکس و همه چی اوکیه یا نه. همچنین خودش تو پول ریکوئست ها کامنت هم میذاره و مشکلات رو میگه.
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/action-lint.yml
2. داکر لینت:
فایل Dockerfile هارو لینت میکنه
از نظر امنیتی، استاندارد و اینکه الکی حجم ایمیج رو زیاد نکرده باشید و ... لینت میکنه.
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/docker-lint.yml
3. کامیت لینت:
لینت کردن کامیت ها مسیج کامیت و ...
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/commit-lint.yml
4. SQL Lint:
فایل های sql رو لینت میکنه.
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/sql-lint.yml
5. دپلوی روی داکر هاب
نمونه کد:
https://github.com/syntaxfa/quick-connect/blob/main/.github/workflows/admin-deploy.yml
#github #action
@Syntax_fa
Forwarded from Hack Haven (pooriya)
برای اینکه بتونید از llm برای باگ بانتی استفاده کنید
یدونه llm پیدا کردم خیلی خوبه
بدون محدودیت براتون هرچی بخواید میسازه
باید روی سیستم یا سرورتون نصبش کنید
https://github.com/MrSanZz/KawaiiGPT
https://cybersecuritynews.com/kawaiigpt-black-hat-ai/
📌 @hackhaven_new
یدونه llm پیدا کردم خیلی خوبه
بدون محدودیت براتون هرچی بخواید میسازه
باید روی سیستم یا سرورتون نصبش کنید
https://github.com/MrSanZz/KawaiiGPT
https://cybersecuritynews.com/kawaiigpt-black-hat-ai/
📌 @hackhaven_new
GitHub
GitHub - MrSanZz/KawaiiGPT: WormGPT kawaii ver
WormGPT kawaii ver. Contribute to MrSanZz/KawaiiGPT development by creating an account on GitHub.
Forwarded from Linuxor ?
خیلیا براشون سواله وقتی شرکت های بزرگ وبسایتشون رو پابلیش میکنن چه کار هایی روش انجام میدن؟
انجام Tree-shaking باعث میشه که کدهای استفاده نشده حذف بشن.
انجام Minification باعث میشه فایلها کوچیکتر بشن.
انجام Bundle باعث میشه چند فایل JS/CSS ترکیب بشن.
انجام Code Splitting باعث میشه فقط کد مورد نیاز هر صفحه لود بشه.
انجام Lazy Loading باعث میشه ماژولها فقط هنگام نیاز دانلود بشن.
انجام Dead Code Elimination باعث میشه کدهای مرده (شرط غیر قابل اجرا مثلا) حذف بشن.
انجام Asset Optimization که تصاویر و فایلها فشرده بشن.
انجام Hashing برای Cache Busting که مرورگر نسخه جدید فایلها رو دریافت کنه.
انجام ابزار Babel که کد با مرورگرهای قدیمی سازگار بشه.
انجام CSS Extraction که CSS از JS جدا و قابل cache بشه.
انجام Inlining و Preloading باعث میشه لود اولیه صفحه سریعتر باشه.
انجام Pre-Bundling باعث میشه کتابخانههای سنگین سریعتر آماده بشن.
انجام Scope Hoisting که باعث میشه ماژولها کارآمدتر و سریعتر اجرا بشن.
انجام gzip/Brotli که باعث میشه فایلها سبک بشن و سریع دانلود بشن.
@Linuxor
انجام Tree-shaking باعث میشه که کدهای استفاده نشده حذف بشن.
انجام Minification باعث میشه فایلها کوچیکتر بشن.
انجام Bundle باعث میشه چند فایل JS/CSS ترکیب بشن.
انجام Code Splitting باعث میشه فقط کد مورد نیاز هر صفحه لود بشه.
انجام Lazy Loading باعث میشه ماژولها فقط هنگام نیاز دانلود بشن.
انجام Dead Code Elimination باعث میشه کدهای مرده (شرط غیر قابل اجرا مثلا) حذف بشن.
انجام Asset Optimization که تصاویر و فایلها فشرده بشن.
انجام Hashing برای Cache Busting که مرورگر نسخه جدید فایلها رو دریافت کنه.
انجام ابزار Babel که کد با مرورگرهای قدیمی سازگار بشه.
انجام CSS Extraction که CSS از JS جدا و قابل cache بشه.
انجام Inlining و Preloading باعث میشه لود اولیه صفحه سریعتر باشه.
انجام Pre-Bundling باعث میشه کتابخانههای سنگین سریعتر آماده بشن.
انجام Scope Hoisting که باعث میشه ماژولها کارآمدتر و سریعتر اجرا بشن.
انجام gzip/Brotli که باعث میشه فایلها سبک بشن و سریع دانلود بشن.
@Linuxor
Forwarded from localhost (Yousef Taheri)
با ابزار خفن FindME میتونی هر نام کاربری رو تو بیش از ۴۰۰ شبکه اجتماعی و پلتفرم آنلاین ردیابی کنی!
دوتا نکته مهم :
اول اینکه نسخه انلاین خروجی نمیده ، حتما نصب کنید ( روی codespace )
و مورد دوم اون مواردی 404 میده همیشه درست نیست ، ولی 404 گرفتید ، حتما دستی تست کنید ، که میتونید یوزرنیم دلخواهتون رو توی اون پلتفرم بسازید!
https://github.com/0xSaikat/findme
POURYA
دوتا نکته مهم :
اول اینکه نسخه انلاین خروجی نمیده ، حتما نصب کنید ( روی codespace )
و مورد دوم اون مواردی 404 میده همیشه درست نیست ، ولی 404 گرفتید ، حتما دستی تست کنید ، که میتونید یوزرنیم دلخواهتون رو توی اون پلتفرم بسازید!
https://github.com/0xSaikat/findme
POURYA
GitHub
GitHub - 0xSaikat/findme: FindME is a CLI tool for searching social media and online profiles linked to a username. It’s ideal…
FindME is a CLI tool for searching social media and online profiles linked to a username. It’s ideal for reconnaissance, digital footprint verification, or checking username availability. - 0xSaika...