msasanmh / SecureDNSClient

A DNS Client Supporting DNSCrypt, Anonymized DNSCrypt, DoH, DoT, UDP And TCP.
https://msasanmh.github.io/SecureDNSClient/
GNU General Public License v3.0
828 stars 81 forks source link

Add new feature #59

Closed nonbarbari closed 1 year ago

nonbarbari commented 1 year ago

نسخه جدید رو هنوز تست نکردم اینا مربوط به قبله

خیلی سریع نسخه جدید رو آپلود کردی ! دمت گرم perfect 👌

ویژگی هایی که میتونه واسه نسخه های بعدی مفید باشه

  1. قابلیت ایجاد چند سری لیست با نام دلخواه از سرور ها برای کانکت شدن بدون تست + ذخیره خودکار یا دستی IP
  2. اضافه کردن بقیه anti-DPI ها با تمام تنظیمات پیشرفته شون (اگه راحته انجامش!)

مثلا https://github.com/krlvm/PowerTunnel https://github.com/krlvm/LibertyTunnel توی این صفحه نمونه های زیادی هست https://github.com/danoctavian/awesome-anti-censorship

  1. تولید آدرس DoH با نام یوزر کامپیوتر و Localhost داخل لاگ

  2. خودکار کردن پروسه تشخیص بهترین تنظیمات GoodbyDPI برای هر کار بر و نتی که داره .5 استفاده همزمان از چندین مود GoodbyDPI برای عناصر خاص صفحه منظورم اینه که مثلا HTML,CSS,JS سایت ها با مود مثلا High دانلود بشه و MP4,WEBP,PHP,PNG با مود 3 باز بشه یا اصلا برای دانلود بعضی از اجزا کلا GoodbyeDPI خاموش بشه چون ممکنه بعضی محتوای سایت از دامنه اصلی نباشه و پشت کلی CDN باشه مثلا تبلیغات خیلی سایت ها از دامنه گوگل هست. این کار زمان بره چون باید برسی شه که چه فایل هایی توی فرایند تیکه تیکه شدن بسته ها خراب میشن تا بشه بهترین مود رو برای هر فایل فرمت و پروتکل پیدا کرد میشه داخل مروگر با زدن F12 , داخل تب نتورک , بعد از رفرش کردن صفحه داده ها رو بر اساس Type , protocol مرتب کنید و ببینید کودوم استاتوس غیر 200 داره یا میتونید ارور ها رو چک کنید اگه شد خودم یه سری تست انجام میدم ولی اگه بخوام انجام بدم چون باید خیلی دقیق و اصولی باشه خیلی زمان میگیره ازم شاید حال نکنم انجامش بدم هرچند اینو باید خود GoodbyDPI انجام بده ولی اونا مشکل شون جدی نیس روسی هستن نهایت سه چهار تا سایت براشون مشکل داره اصلا اهمیت نمیدن

  3. همچنین میشه با LocalCDN تمامی اجزای سایت ها رو لود کرد, با مود هایی که کار میکنن (مود های مخصوص اون اجزا)بعد مرورگر از LocalCDN تمامی اجزا رو دریافت کنه یه نفر این کارو کرده

https://github.com/CacheBrowser/cachebrowser

https://github.com/SPIN-UMass/MassBrowser

.7 ریست کردن نتیجه تست ها و چک کردن هرچند ثانیه (قابل تنظیم) برای پایداری بیشتر و وصل شدن به سرور های بهتر "تاخیر کم تر" + (اضافه و حذف شدن سرور ها) خیلی خیلی میتونه مفید باشه

  1. شماره گزاری سرور ها به ترتیب موقع تست داخل لاگ
  2. جدا کردن سرور ها هر 100 میلی ثانیه با خط "----------------"یا "__"در لاگ
  3. هشدار دادن داخل لاگ وقتی DNS سرور برای دامنه خاصی آدرس IP داخی یا نامعتبر برگردوند مثل "0.0.0.0" , "127.0.0.1" , "10.10.0.0"
  4. هشدار دادن داخل لاگ وقتی یکی از سرور هایی که کانکت بوده از کار افتاد
  5. این NextDNS یه پروتکل اختصاصی داره داخل yogadns هم هست به درد می خوره که بخواهی اضافه کنی ؟
  6. ساپورت کردن بلک لیست از فرمت های متنی پیشرفته تر مثل

https://easylist.to یا

https://github.com/gorhill/uBlock

نمونه

https://raw.githubusercontent.com/AdguardTeam/FiltersRegistry/master/filters/filter_2_Base/filter.txt

  1. استفاده کردن از DoH گوگل به جای کلادفلر منطقی تر نیست چون ای پی های گوگل فیلتر نیستن اختلال هم ندارن اما کلاد فلر ها ….
  2. امکان اضافه کردن بیشتر از 1 سرور لیست کاستوم و انتخاب از بین شون
  3. ایجاد تب جدید برای نمایش سرور هایی که وصل هستن و کار میکنند و تاخیر شون با قابلیت حذف و اضافه کردن
  4. تست سرور ها بر اساس داشتن فیلترینگ خاص مثلا فیلتر کودک یا IP کشور خاص یا شبکه اجتماعی یا تبلیغ یا بازی ها و ... و نمایش نتیجه در لاگ
  5. فعال کردن fallback + قابلیت جابه جایی سریع"خاموش کردن کل نرم برنامه های SDC"
  6. خود GoodbyDPI یه سری تنظیمات برای وصل شدن به DoH داره اون ها استفاده شده ؟

مشکلات ن چندان مهم

1- برنامه برای چک کردن سرور ها به DNS های سیستم وابسه هست و با DNS سیستم تست انجام میشه ن DNS یی که داخل ستینگ نرم افزار ست کردیم 2- از داخل PC نمیشه به آدرس پروکسی و DOH که داخل شبکه هست وصل شد درصورتی که باید بشه یعنی به جای "127.0.0.1" باید بشه از آدرس IP سیستم داخل شبکه (مثال 192.168.1.5) هم با همون pc وصل شد حتی با IP پابلیک هم میشه که بشه اگر IP فورواردینگ فعال باشه این مشکل میتونه از فایر وال خودم بوده باشه باید تست کنم

3- موقع چک کردن سرور ها تمام پروتکل ها برسی میشن حتی اون هایی که تیک نخوردن (میتونید با وایر شارک برسی کنید)

4- لیست ورکینگ سرور ها قبل از تست خالی نمیشه

  1. بعد از استفاده از تب چهار اگر بخواهیم از GoodbyDPI استفاده کنیم یه ارور الکی میاد توی لاگ

    سوال

    اگر بعد از کانکشن وایر گارد از نرم افزار استفاده کنیم همچنان نرم افزار کارشو انجام میده ؟ یعنی بسته ها قبل از این که توسط وایر گارد رمز نگاری بشن یا بعدش میرسه به GoodbyDPI ؟

.

nonbarbari commented 1 year ago

میگم این Added user counter, date and time encoded in SHA512 which is one-way and undecryptable used to make a unique ID to count active users, it's make me find out how much time should I spend on this project. No personal info. Click here to see the method.

این داخل قسمت Tools قرار داره یا بعد از اجرای برنامه فعال میشه؟ میشه غیر فعالش کرد؟ از روی دانلود ها میشه حدودا تشخیص داد چقدر استفاده میکنن گیت هاب آمار نمیده؟ با دانش خیلی کم و کمک چت بات ها کد رو نگاه کردم اصلا به نظر نمیرسه که بتونه اطلاعات درست رو برگردونه شاید من نمیدونم شاید اعداد و ارقام گیت هاب قابل اطمینان تر باشن میتونی یه توضیح کامل و دقیق بدی

همچنین اصلا معلوم نیست اطلاعات به کجا میرن ن سرور ن هاست نیم ن دامنه و این که انتقال اطلاعات به چه صورت هست و با چی رمز میشه

همچنین هنوز نفهمیدم اطلاعات به صورت متن ارسال میشن یا هش میشن ارسال میشن یا یکی یکی هش میشن ارسال میشن یا ترکیب میشن بعد هش میشن

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

بعد خب از رندم استفاده کردی (اینو گوگل بارد گفت 😁) این هر دفعه که برنامه استارت بخوره یک هش جدید تولید میشه کلا اطلاعات بازم مشخص نیست که مثلا فقط یک بار ارسال میشه یا هر چند وقت ارسال میشه شامل مثلا مدت زمان استفاده و ... بعد از دایرکتوری استفاده کردی خب این میتونه تغییر کنه من همش جا به جا میکنم 😂 فکر کنم خودم به تنهایی 20 نفر حساب بشم و یه سری چیز ها هم این وسط نباید باشه اسم کامپیوتر یا اسم اکانت یا دایرکتوری .

میخواهی تو ورود یه آدرس ایمیل بخواهی و این رو هش کنی و هش رو با TLS ارسال کنی ؟ بعد امنیت سرور هم مهمه که اصلا هیچ اطلاعاتی ندادی

msasanmh commented 1 year ago

نمیدونستم میشه این شکلی ریپلای کرد سوپرایز شدم 😂 خلاقیتت گاد بود

آره، فکر میکردم فقط با سایت دسکتاپ میشه.

مشکلات

1- ادامه دادن به تست بعد از تغییر مود در تب 4 یا 5

باید ببینم شدنی هست یا نه، روش کار میکنم، چون بعضی چیزا قابلیت کنسل ندارن.

حتما یه کاریش بکن حتی شده واسه 3 یا 4 ورژن بعد هم که شده یا اگر میشه تایم اوت شو به جای 30 ثانیه کاری کن که بشه دستی تغییر داد

آسیاب به نوبت

اضافه کردن اینا

1- اضافه کردن چند بار تست کردن بعد از تقییر مود (تعدادش قابل تنظیم باشه و این که خیلی به صورت خلاصه باید توی لاگ نوشته بشه مثلا فقط زمان نوشته بشه و رو به روی هم نوشته بشن که چندین بار اسم سایت تکرار نشه)

چند بار تست کردن یعنی چند برابر شدن زمان تست و معمولا اگه تست اول موفق باشه تست‌های بعدی هم موفق هستن، زمان شون هم کمی کاهش پیدا پیدا میکنه.

برای من همه شون یا کلا وصل نمیشه یا زیر 10 ثانیه جواب میاد . پس فرق زیادی نداره از طرفی توی کار با برنامه تداخلی ایجاد نمیکنه اگر هم بشه موازی تست کرد که خوبه بازم

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

1.1- کلید برای تست بیشتر بدون ری اکتیو کردن

اگه جایی برای گذاشتن دکمه پیدا کردم حتما.

2- افزایش دقت تست ها به میلی ثانیه

باشه.

3- اضافه کردن چندین سایت با چندین پروتکل یا سایت بدون دامنه برای تست همزمان

بگمونم بهتره بعدا یه تست پیشرفته‌تر در قسمت tools بذارم.

عالی میشه . تست خیلی مهمه

4- قابلیت ادامه دادن تست با تمام ساب دامنه ها و دامنه های المنت های سایت یعنی میخوام ببینم اگر یه جا یه دامنه ای لود نشد مشکل از کودوم دامنه اش بوده و این که ببینیم کل المنت ها بدون مشکل لود شدن یا ن

ورژن بعدی هر دامنه یا ساب دامنه‌ای که نتونه لود بشه رو داخل لاگ مینویسه که ip یا host فیلتره. خوبه

5- انجام تست پینگ + traceroute + WHOIS + DNS Lookup + کشور IP + اسکنر پورت TCP,UDP+ تست سرعت با دامنه و ای پی دامنه (میتونه داخل قسمت tools باشه)

قسمت dns lookup رو که گذاشتم، پینگ و پورت چک هم میتونم بذارم، اما whois و trace نیاز به سرور دارن و من نمیخوام برنامه رو به سرور وابسته کنم. Speed test هم باید چک کنم فعلا نمیدونم میشه یا نه.

این دو تا که گفتی whois و trace اصلا نیاز به سرور ندارن . trace رو که خود ویندوز داره از CMD میشه اجرا کرد . whois هم فکر کنم هم DNS داشته باشن هم از داخل http header بشه یه چیز هایی فهمید . نهایتا اینه که از API های FREE داخل وب یا حالا سایت های معمولی یا تخصصی میشه استخراج کرد خود سازمان IANA هم قرار داده https://www.iana.org/whois?q=www.google.com اینو نباید فیلتر کنن اگه عقل شون کار کنه

ای پی آی رایگان محدودیت داره و همین اینکه میتونه فیلتر بشه، اگه اطلاعات مهمی از DNS query یا هدر درومد داخل همون تست پیشرفته میذارم.

6- داخل لاگ وضیعت ساکسس بودن درخواست ها + زمان تاخیر در پاسخ سرور نوشته بشه

فقط میتونه چک بشه که ip فیلتره یا نه، چون پراکسی یه سوکت باز میکنه و داده هایی رد و بدل میشن اما هرگز مشخص نمیکنه که موفق بوده یا نه و از اونجایی که سوکت رو باز نگه میداره نمیشه زمانش رو سنجید.

اگر بتونه هدر پکت های TCP/IP رو بخونه همه نوشته شدن داخل هدر

پینگ ها بر اساس زیاد و کم بودن تغییر رنگ بدن باشه. همچنین نوع پروتکل + ترنسمیشن + متد + کد استاتوس + نوع + سایز نوشته بشه مثل چیزی که مروگر ها دارن

سایز رو که همین الانم داخل لاگ مینویسه، پروتوکل هم بالای ۹۹ درصد https و متد هم connect هستش.

اگر بتونه هدر پکت های TCP/IP رو بخونه همه نوشته شدن داخل هدر فکر کنم منظورم از متد گت یا پست و .. بود

برای ساخت پراکسی که هدر رو باید خوند فقط زمان داخلش نیست. متد کانکت اسم قدیمیه متد پست هستش

داخل PHP Proxy Judge یه سری از این ها هست میتونی استفاده کنی اینا قابل انتخاب باشن با چک باکسی چیزی و اگه بتونی برای GoodbyDPI هم این لاگ ها رو فعال کنی عالی میشه

خود GoodbyDPI لاگ نمیده، دست من نیست، حالا باز چک میکنم مطمئن شم.

آخه تب 4 بدون فعال کردن DPI هم تونستم لاگ بگیرم میشه برنامه ای که اون طرفه 😂رو واسه تب 5 هم فعال کرد؟

خب اون رو خودم از عمد گذاشتم، گفتم شاید یکی نیاز داشته باشه فقط یه پراکسی ایجاد کنه رو سیستمش. متاسفانه GoodbyeDPI از پراکسی عبور نمیکنه که بتونم لاگ بگیرم ازش.

7- همچنین تعداد ارور ها و درخواست های غیر ساکسس یا بدون پاسخ یا با پاسخ غیر عادی نوشته بشه تو قسمت status

نمیدانم، اطلاعی ندارم. 😁

8- قابلت انتخاب این که GoodbyDPI برای سیستم باشه یا برای Share یا هر دو

این قابلیت رو GoodbyDPI نذاشته و کلا رو سیستم اعمال میشه.

اینا میتونه کاربرد زیادی داشته باشه توی این که بهترین پارامتر ها رو بشه تشخیص داد و فعلا بیشتر به درد تست کردن میخورن

فوقش بشه اولین پارامتری که کار میکنه رو پیدا کرد، پیدا کردن بهترین پارامتر یعنی چک کردن ميليون ها احتمال.

که همین تست هم من بیشتر برای سازگار کردن گوگل پلی روی گوشی میخوام وگر ن یوتوب و ... باز میشن راحت و همه برنامه های داخل SDC به خوبی کار میکنن

فعلا وقت نکردم بفهمم مشکل گوگل پلی چیه.

خیلی عجیبه من یه برنامه رو داشتم دانلود میکردم تا 76% میرفت و دیگه دانلود نمیشد بعد جالبیش اینه بقیه نرم افزار ها به راحتی با حجم های کمتر یا بیشتر دانلود میشدن اما این برنامه هه رو هر بار دانلودش رو شروع میکردم آروم آروم میرفت دقیقا به 76% که می رسید دیگه جلو تر نمیرفت و من مشابه این اتفاق رو واسه 2 تا اپ دیگه هم دیدم 😐 بدیش اینه که اگر وسط کار دانلود متوقف بشه باید تمام اپ های تو لیست انتظار رو لغو کرد گوگل پلی رو کلیر کش کرد و کلی پارامتر و تغییر داد و با یه بدبختی گوشی رو کانکت کرد و دو باره تست کرد

یه کار دیگه هم که فعالا حالشو ندارم انجام بدم اینه که سعی کنم روی کامپیوتر روی یک سیمولاتور که گوگل پلی روش کار میکنه و از اینترنت سیستم بدون هیچ واسطه ای استفاده میکنه تست انجام بدم ببینم دقیقا مشکل کجاست که گوگل پلی این قدر بازی در میاره همچنین اگر یه روزی خواستی کاری کنی که برنامه به صورت خودکار بهترین پارامتر های ضد DPI ها رو برای هر سایت پیدا کنه به درد میخوردن همچنین میتونی یه سیستمی راه اندازی کنی که کاربر ها این لاگ ها رو از داخل برنامه آپلود کنن و بعد بر اساس لاگ ها میتونی تحلیل کنی که برای چه اپراتوری (یا بهتره بگم رنج IP چون مراکز مخابراتی هر منطقه فیلترینگ شون فرق داره)چه سایت هایی چه سرور هایی با چه پارامتر هایی خوب کار میکنن و خیلی چیز های دیگه

این هم نیاز به سرور داره.

یه همچین چیزی رو فکر کنم دیدم یکی با هاست رایگان گیت هاب انجام داده بود

گیتهاب فقط static هستش نمیشه.

هر کودوم به نظرت خوب بود اعمال بشه رو به لیست notion اضافه کن

فعلا دیگه ورژن بعد رو آماده کردم، کار کردن بروی اینا میمونه برای بعد.

من که فقط برام همین مهمه که میخونی و جواب میدی قشنگ میفهمم چقدر داری تلاش میکنی برای رهایی از این وضع خراب اینترنت

❤️

راستی این چک فور اپدیت نرم افزار رو اگر باید از سمت وب کاری کنی که برنامه خبر بده . انجام بده چون الان چک زنم Checking update...

You are using the latest version.

ورژن بعد خود برنامه خودکار اطلاع میده اگه ورژن جدیدی وجود داشته باشه.

msasanmh commented 1 year ago

میگم این Added user counter, date and time encoded in SHA512 which is one-way and undecryptable used to make a unique ID to count active users, it's make me find out how much time should I spend on this project. No personal info. Click here to see the method.

این داخل قسمت Tools قرار داره یا بعد از اجرای برنامه فعال میشه؟

موقع کانکت شدن فرستاده میشه.

میشه غیر فعالش کرد؟

نه نمیشه

از روی دانلود ها میشه حدودا تشخیص داد چقدر استفاده میکنن گیت هاب آمار نمیده؟

آمار دانلود با آمار active user کاملا متفاوته.

با دانش خیلی کم و کمک چت بات ها کد رو نگاه کردم اصلا به نظر نمیرسه که بتونه اطلاعات درست رو برگردونه شاید من نمیدونم شاید اعداد و ارقام گیت هاب قابل اطمینان تر باشن میتونی یه توضیح کامل و دقیق بدی

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

همچنین اصلا معلوم نیست اطلاعات به کجا میرن ن سرور ن هاست نیم ن دامنه و این که انتقال اطلاعات به چه صورت هست و با چی رمز میشه

به یه سرور php فرستاده میشه.

همچنین هنوز نفهمیدم اطلاعات به صورت متن ارسال میشن یا هش میشن ارسال میشن یا یکی یکی هش میشن ارسال میشن یا ترکیب میشن بعد هش میشن

گفتم که sha512 هستش

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

بعد خب از رندم استفاده کردی (اینو گوگل بارد گفت 😁) این هر دفعه که برنامه استارت بخوره یک هش جدید تولید میشه

اگه وجود نداشته باشه ایجاد میشه، رندوم نیست، تاریخ و ساعت هستش

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

فقط موقع کانکت ارسال میشه

بعد از دایرکتوری استفاده کردی خب این میتونه تغییر کنه من همش جا به جا میکنم 😂 فکر کنم خودم به تنهایی 20 نفر حساب بشم

این قسمت رو سرور پوشش میده، اونایی که فعال نیستن حذف میشن.

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

ببین، اسم کامپیوتر، تاریخ، ساعت، دقیقه، ثانیه و میلی ثانیه کنار هم قرار میگیرن و بعد توسط sha512 انکد میشن و تبدیل میشن به یه مشت حروف و عدد که این حروف و اعداد دیگه قابل دیکریپت شدن نیسن چون sha یه encoding یک طرفه هستش. همونطور که گفتم هیچ اطلاعاتی از کاربر به من ارسال نمیشه، فقط یه id یونیک ارسال میشه.

میخواهی تو ورود یه آدرس ایمیل بخواهی و این رو هش کنی و هش رو با TLS ارسال کنی ؟ بعد امنیت سرور هم مهمه که اصلا هیچ اطلاعاتی ندادی

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

درضمن اگه ورژن 2.3.5 رو دانلود کردی پاک کن، یه باگ مهم توی پراکسی افتاده، از release برداشتمش تا مشکل رو برطرف کنم.

nonbarbari commented 1 year ago

میگم این Added user counter, date and time encoded in SHA512 which is one-way and undecryptable used to make a unique ID to count active users, it's make me find out how much time should I spend on this project. No personal info. Click here to see the method. این داخل قسمت Tools قرار داره یا بعد از اجرای برنامه فعال میشه؟

موقع کانکت شدن فرستاده میشه.

میشه غیر فعالش کرد؟

نه نمیشه

از روی دانلود ها میشه حدودا تشخیص داد چقدر استفاده میکنن گیت هاب آمار نمیده؟

آمار دانلود با آمار active user کاملا متفاوته.

با دانش خیلی کم و کمک چت بات ها کد رو نگاه کردم اصلا به نظر نمیرسه که بتونه اطلاعات درست رو برگردونه شاید من نمیدونم شاید اعداد و ارقام گیت هاب قابل اطمینان تر باشن میتونی یه توضیح کامل و دقیق بدی

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

همچنین اصلا معلوم نیست اطلاعات به کجا میرن ن سرور ن هاست نیم ن دامنه و این که انتقال اطلاعات به چه صورت هست و با چی رمز میشه

به یه سرور php فرستاده میشه.

همچنین هنوز نفهمیدم اطلاعات به صورت متن ارسال میشن یا هش میشن ارسال میشن یا یکی یکی هش میشن ارسال میشن یا ترکیب میشن بعد هش میشن

گفتم که sha512 هستش

یا اصلا بلایی سر شون نمیاد به صورت متن اما رمز نگاری شده ارسال میشن و در نهایت داخل سرور ذخیره میشن بعد خب از رندم استفاده کردی (اینو گوگل بارد گفت 😁) این هر دفعه که برنامه استارت بخوره یک هش جدید تولید میشه

اگه وجود نداشته باشه ایجاد میشه، رندوم نیست، تاریخ و ساعت هستش

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

فقط موقع کانکت ارسال میشه

بعد از دایرکتوری استفاده کردی خب این میتونه تغییر کنه من همش جا به جا میکنم 😂 فکر کنم خودم به تنهایی 20 نفر حساب بشم

این قسمت رو سرور پوشش میده، اونایی که فعال نیستن حذف میشن.

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

ببین، اسم کامپیوتر، تاریخ، ساعت، دقیقه، ثانیه و میلی ثانیه کنار هم قرار میگیرن و بعد توسط sha512 انکد میشن و تبدیل میشن به یه مشت حروف و عدد که این حروف و اعداد دیگه قابل دیکریپت شدن نیسن چون sha یه encoding یک طرفه هستش. همونطور که گفتم هیچ اطلاعاتی از کاربر به من ارسال نمیشه، فقط یه id یونیک ارسال میشه.

میخواهی تو ورود یه آدرس ایمیل بخواهی و این رو هش کنی و هش رو با TLS ارسال کنی ؟ بعد امنیت سرور هم مهمه که اصلا هیچ اطلاعاتی ندادی

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

درضمن اگه ورژن 2.3.5 رو دانلود کردی پاک کن، یه باگ مهم توی پراکسی افتاده، از release برداشتمش تا مشکل رو برطرف کنم.

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

میدونم الگوریتم های هش یک طرفه هستن و رندوم هستن چون اصلا هیچ ایده ای نداشتم که دقیقا کد داره چیکار میکنه پرسیدم

پس یعنی یه سری اطلاعات شامل اسم یوزر اسم کامپیوتر دایرکتوری اسم برنامه زمان و ... میگیری به صورت استرینگ یا باینری جمع شون میکنی در نهایت ازش هش تولید میکنی

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

بعد خب چرا این همه کارو سخت کری نمیشه واقعا هیچ جور دیگه ای به این هدف رسید ؟ دارم بهش فکر میکنم خیلی کارا میشه کرد هش کردن برای پسورد و چک سام کاربرد داره رمزنگاری نیست اینم میدونی خودت ولی آخه هش هایی که تقریبا رندمم هستن ارزش مقایسه ندارن نمیدونم چجوری میخواهی یونیک بودن کار بر ها رو تشخیص بدی

سمت سرور هم خیلی مهمه حتی اگر هیچی نگیره هیچی نگیره هم IP گرفته یه سری فینگر پرینت گرفته تایم گرفته اطلاعات کار بر هاست اطلاعات دسترسی خودت و... مشخص هم نیست که اطلاعات تا کی میمونن و میشه درخواست حذف شدن شون رو داد یا ن

نمیدونم بازم که نگاش میکنم نمیتونه اطلاعات مهمی رو داشته باشه ولی اتفاق بد خبر نمیکنه همه جور کاربر از خبرنگار و ... هم میتونن باشن اینجا

همین که دانلود 2.3.5 رو زدم برداشتی دسترس شو 😂

msasanmh commented 1 year ago

میگم این Added user counter, date and time encoded in SHA512 which is one-way and undecryptable used to make a unique ID to count active users, it's make me find out how much time should I spend on this project. No personal info. Click here to see the method. این داخل قسمت Tools قرار داره یا بعد از اجرای برنامه فعال میشه؟

موقع کانکت شدن فرستاده میشه.

میشه غیر فعالش کرد؟

نه نمیشه

از روی دانلود ها میشه حدودا تشخیص داد چقدر استفاده میکنن گیت هاب آمار نمیده؟

آمار دانلود با آمار active user کاملا متفاوته.

با دانش خیلی کم و کمک چت بات ها کد رو نگاه کردم اصلا به نظر نمیرسه که بتونه اطلاعات درست رو برگردونه شاید من نمیدونم شاید اعداد و ارقام گیت هاب قابل اطمینان تر باشن میتونی یه توضیح کامل و دقیق بدی

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

همچنین اصلا معلوم نیست اطلاعات به کجا میرن ن سرور ن هاست نیم ن دامنه و این که انتقال اطلاعات به چه صورت هست و با چی رمز میشه

به یه سرور php فرستاده میشه.

همچنین هنوز نفهمیدم اطلاعات به صورت متن ارسال میشن یا هش میشن ارسال میشن یا یکی یکی هش میشن ارسال میشن یا ترکیب میشن بعد هش میشن

گفتم که sha512 هستش

یا اصلا بلایی سر شون نمیاد به صورت متن اما رمز نگاری شده ارسال میشن و در نهایت داخل سرور ذخیره میشن بعد خب از رندم استفاده کردی (اینو گوگل بارد گفت 😁) این هر دفعه که برنامه استارت بخوره یک هش جدید تولید میشه

اگه وجود نداشته باشه ایجاد میشه، رندوم نیست، تاریخ و ساعت هستش

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

فقط موقع کانکت ارسال میشه

بعد از دایرکتوری استفاده کردی خب این میتونه تغییر کنه من همش جا به جا میکنم 😂 فکر کنم خودم به تنهایی 20 نفر حساب بشم

این قسمت رو سرور پوشش میده، اونایی که فعال نیستن حذف میشن.

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

ببین، اسم کامپیوتر، تاریخ، ساعت، دقیقه، ثانیه و میلی ثانیه کنار هم قرار میگیرن و بعد توسط sha512 انکد میشن و تبدیل میشن به یه مشت حروف و عدد که این حروف و اعداد دیگه قابل دیکریپت شدن نیسن چون sha یه encoding یک طرفه هستش. همونطور که گفتم هیچ اطلاعاتی از کاربر به من ارسال نمیشه، فقط یه id یونیک ارسال میشه.

میخواهی تو ورود یه آدرس ایمیل بخواهی و این رو هش کنی و هش رو با TLS ارسال کنی ؟ بعد امنیت سرور هم مهمه که اصلا هیچ اطلاعاتی ندادی

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

درضمن اگه ورژن 2.3.5 رو دانلود کردی پاک کن، یه باگ مهم توی پراکسی افتاده، از release برداشتمش تا مشکل رو برطرف کنم.

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

میدونم الگوریتم های هش یک طرفه هستن و رندوم هستن چون اصلا هیچ ایده ای نداشتم که دقیقا کد داره چیکار میکنه پرسیدم

پس یعنی یه سری اطلاعات شامل اسم یوزر اسم کامپیوتر دایرکتوری اسم برنامه زمان و ... میگیری به صورت استرینگ یا باینری جمع شون میکنی در نهایت ازش هش تولید میکنی

خب از روی این که هیچی نمیشه فهمید الان من اگه کد رو اجرا کنم (سعی کردم اجرا کنم نشد) هر دفعه یک هش رندم میده که با هش 1 ثانیه قبل فرق داره . خب چرا از اول هش رندم تولید نشه

یک بار هش تولید میشه و روی فایل ذخیره میشه، دفعه بعد دیگه هش تولید نمیشه، همون هش قبلی از روی فایل خونده میشه. چرا از اول هش رندوم تولید نشه؟ چون به شرطی خروجی sha یونیک هست که string ورودی یونیک باشه.

اگر اطلاعات جدا . جدا. هش بشن شاید بشه کاری کرد

بعد خب چرا این همه کارو سخت کری نمیشه واقعا هیچ جور دیگه ای به این هدف رسید ؟ دارم بهش فکر میکنم خیلی کارا میشه کرد هش کردن برای پسورد و چک سام کاربرد داره رمزنگاری نیست اینم میدونی خودت ولی آخه هش هایی که تقریبا رندمم هستن ارزش مقایسه ندارن نمیدونم چجوری میخواهی یونیک بودن کار بر ها رو تشخیص بدی

طبق توضیحات بالا این هش ها یونیک هستن.

سمت سرور هم خیلی مهمه حتی اگر هیچی نگیره هیچی نگیره هم IP گرفته یه سری فینگر پرینت گرفته تایم گرفته اطلاعات کار بر هاست اطلاعات دسترسی خودت و...

گفتم به php فرستاده میشه، مثل v2ray نیست که لاگ کنه. مثل این میمونه که شما از یک وبسایت دیدن کرده باشی.

مشخص هم نیست که اطلاعات تا کی میمونن و میشه درخواست حذف شدن شون رو داد یا ن

شما از هر وبسایتی که بازدید میکنی، بعد به اون وبسایت درخواست میدی تا اطلاعاتت رو پاک کنه؟

نمیدونم بازم که نگاش میکنم نمیتونه اطلاعات مهمی رو داشته باشه ولی اتفاق بد خبر نمیکنه همه جور کاربر از خبرنگار و ... هم میتونن باشن اینجا

واقعا تعجب کردم از این حرفهایی که زدی.

همین که دانلود 2.3.5 رو زدم برداشتی دسترس شو 😂

nonbarbari commented 1 year ago

مراقب اعداد رندمی که از ما میگیری باش 😂

آره خب تا حالا دیلیت اکانت نکردی 🙃 گوگل پلی اگر نرم افزاری قبول نکنه که اطلاعات رو پاک کنه خیلی واضح هشدار میده

میگم من الان بخوام سریع این پروژه رو پیدا کنم چی تو گوگل سرچ کنم همش دارم از هیستوری مرورگر پیدا میکنم

nonbarbari commented 1 year ago

آمار کاربر های فعال رو پالیکش هم بکن اگه فعال شد

msasanmh commented 1 year ago

مراقب اعداد رندمی که از ما میگیری باش 😂

🙄

آره خب تا حالا دیلیت اکانت نکردی 🙃 گوگل پلی اگر نرم افزاری قبول نکنه که اطلاعات رو پاک کنه خیلی واضح هشدار میده

اونا برنامه‌هایی هستن که مثلا کانکشن VPN ایجاد میکنن یا dns هستن که به آدرس تمام وبسایت‌هایی که بازدید میکنید دسترسی دارن، برای همین هشدار برای اونا نیازه.

میگم من الان بخوام سریع این پروژه رو پیدا کنم چی تو گوگل سرچ کنم همش دارم از هیستوری مرورگر پیدا میکنم

Sdc secure dns client

nonbarbari commented 1 year ago

شوخی میکنم جدی نگیر . تمام پسورد های دنیا با الگوریتم هش ذخیره میشن تو سرور ها . من اصلا از اولش یه چیز دیگه فکر میکردم . چون گفتی با sha 512 اینکریپت میکنی فکر کردم که منظور اینه اطلاعاتی که تو کد خواسته بود رو به صورت رمز شده انتقال میده چون از هش برای چک سام استفاده میشه تعجب کردم بعد فکر کردم که این sha 512 رو داری واسه چک سام کلید رمزت استفاده میکنی .

msasanmh commented 1 year ago

شوخی میکنم جدی نگیر . تمام پسورد های دنیا با الگوریتم هش ذخیره میشن تو سرور ها . من اصلا از اولش یه چیز دیگه فکر میکردم . چون گفتی با sha 512 اینکریپت میکنی فکر کردم که منظور اینه اطلاعاتی که تو کد خواسته بود رو به صورت رمز شده انتقال میده چون از هش برای چک سام استفاده میشه تعجب کردم بعد فکر کردم که این sha 512 رو داری واسه چک سام کلید رمزت استفاده میکنی .

فقط بدون من امنیت رو جدی می‌گیرم، مخصوصا که DNSCrypt این برنامه رو در لیست کلاینت هاش قرار داده، پس نمیام گند بزنم.

با روش‌های زیادی میشه یه string رو کد کرد، من فقط خروجی یه id یونیک می‌خواستم که sha512 میتونه تا چندین تريليون id یونیک تولید کنه. البته گفتم به شرطی که string ورودی یونیک باشه، واسه همین از تاریخ و ساعت دقیق و چیزای دیگه استفاده کردم.