۶۰ مطلب توسط «BSimjoo» ثبت شده است

هنگام استفاده از VPN مراقب باشد

VPN چیست؟

Virtual Private Network پدیده ای نسبتا پیچیده در شبکه هست و می تونید با سرچ تو گوگل بیشتر در موردش بدونید ولی مردم اکثرا اون رو فقط به عنوان یک ابزار برای رفع محدودیت شبکه می شناسن. در واقع VPN ها کاربرد ها و پیچیدگی های خیلی بیشتری نسبت به رفع محدودیت داره.

ادامه مطلب...
مجوز مطالب و محتوا ۲۴ دی ۹۹ ، ۲۱:۰۴ ۰ نظر موافقین ۲ مخالفین ۰
BSimjoo

پروژه های تجاری می توانند متن باز باشند؟

فکر می کنم منظور از پروژه های تجاری به اندازه ی کافی روشن باشه؛ منظور پروژه هایی هستند که توسعه دهندگان می خواهند به نحوی از آن کسب درآمد بکنند. موضوع این مطلب یک بحث بین من و آقای کریمی زاده بود!

چرا باید پروژه های متن باز بنویسیم؟

  • توسعه جامعه‌ی برنامه‌نویسان و به قول خودمان زکات علم! خود من به عنوان یک برنامه نویس بسیاری از تجربیاتم رو از طریق خوندن و تحلیل کد های دیگران به دست آوردم، به همین خاطر خوش حال میشم اگر برنامه نویس دیگری هم از کد های من استفاده بکنه!
  • جلب اعتماد. وقتی پروژه ای متن باز باشه مصرف کنندگاد تا حد بالایی می تونن مطمئن باشن که پشت پرده چی میگذه حتی اگر برنامه نویس نباشند. چون حتما در عالم برنامه نویسی هست که بخواد کد رو ببینه و اگر کد مشکلی در نقض حریم خصوصی داشته باشه که برنامه نویس کد رو آزاد نمی گذاشت!
  • جلب حقوق معنوی. اولا اگر کد های خوب و با کیفیت و در نتیجه برنامه های با کیفیت بسازید می تونید خودتون رو به عنوان یک برنامه نویس به دیگران بیشتر معرفی کنید. ثانیا می توانید رسما اعلام کنید که در فلان پروژه فعال بودید یا سازنده آن بودید و از حقوق معنوی آن استفاده کنید.
  • بالا بردن کیفیت پروژه. اگه پروژه ای متن باز باشه برنامه نویسان مختلف می تونند کد رو بررسی کنن و اگر مشکلی دیدن یا پیشنهادی داشتند بهتون بگن تا کد رو اصلاح کنید و بهبود بدید. اگر هم خواستید به راحتی می تونید برنامه نویسان بیشتری رو در پروژه دخیل کنید.

چه طور میشه از پروژه های متن باز پول در آورد؟

همین اول باید بگم طبق بحثی که با دوستان (DotMan و FKZ) داشتم در نهایت به این نتیجه رسیدیم که اگر به دنبال فروش نرم افزار خود هستید نمی توانید آن را متن باز کنید. اما روش های دیگری هم برای پول در آوردن از پروژه های متن باز هست.

  • می توانید همانند پروژه هایی مانند wordpress کل پروژه رایگان باشد اما بسته هایی از امکانات را آماده و برای فروش بگزارید. برای نمونه پیام رسان سروش رایگان است ولی امکاناتی مانند تم و استیکر را برای فروش گذاشته.
  • می توانید از پشتیبانی کسب درآمد کنید.
  • تمام پروژه را متن باز نکنید. هر چند که این مورد زیاد دوست داشتنی نیست ولی خب اینم یک راه حله! اگر اسرار دارید تا از فروش نرم افزار متن بازتون کسب درآمد کنید همش رو لو ندید. اگر نرم افزارتون مورد مشابه داره امتیازاتی به آن اضافه کنید تا ارزش خرید داشته باشه و اون ها رو لو ندید!
مجوز مطالب و محتوا ۲۳ خرداد ۹۹ ، ۱۳:۰۰ ۱ نظر موافقین ۲ مخالفین ۰
BSimjoo

رمزش شکست؟!

طی یک اتفاق متوجه شدم که سیستم عامل اوبونتویم (Ubuntu mate 16.04) کاملا نا امن هست!

از اونجایی که من از دو سیستم عامل روی سیستمم استفاده می کنم از یک بوت لودر گراب (Grub boot loader) استفاده می کنم که در منوی بوت یک گزینه به نام:

Ubuntu GNU/Linux, with Linux 3.8.0-26-generic (recovery mode)

وجود داره. طی یک اتفاق مجبور شدم به این گزینه یک سری بزنم که به گزینه ی "Drop to root shell prompt" بر خوردم. کنجکاو شدم ببینم تا چه حد دسترسی بهم میده رفتم توش و نوشتم passwd [my-username] که دیدم ازم رمز جدید می خواد. طبق روال عادی رمز رو وارد کردم و قبول شد، ریبوت (Reboot) کردم و دیدم رمز عوض شد. به همین سادگی رمز عوض شد بدون این که ازم رمز قبلی رو بپرسه. البته که من هنوز تو استفاده از لینوکس تازه واردم ولی خیلی ساده رمزش شکسته شد.

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

مجوز مطالب و محتوا ۲۰ خرداد ۹۹ ، ۱۳:۰۰ ۷ نظر موافقین ۲ مخالفین ۰
BSimjoo

افزودن و ویرایش اطلاعات سازنده در ویندوز

System information panel

اگر می خواهید اطلاعات خود را به صورت دلخواه همانند بالا در مشخصات ویندوز وارد کنید این مطلب را دنبال کنید

ادامه مطلب...
مجوز مطالب و محتوا ۱۵ خرداد ۹۹ ، ۱۰:۵۵ ۱ نظر موافقین ۳ مخالفین ۰
BSimjoo

سواد رسانه‌ای در مقابله با مهمان ناخوانده این روز‌ها

در روزگاری که همه جا صحبت از این بیماری ناخوانده یعنی کرونا (Covid-19) هست ما هم کمی به این موضوع از بعد رسانه ای می پردازیم.

در این روز ها بازار شایعات از همیشه داغ تر است و حتی برخی شایعات می توانند از خود این ویروس هم برای جان ما خطرناک تر باشند! شایعاتی که هر کدام به دلایلی، به طور کل غیر انسانی، در شبکه های مجازی دست به دست می شوند و خواه و نا خواه به دست ما می رسند. البته که موضوعات مطرح شده در این مطلب، تنها اصول ساده ای، از سواد رسانه ای هستند؛ که در نظر داشتن آن ها حتی می توانند در مقابله با جنگ رسانه ای یا جنگ نرم هم کمک کننده باشد.

ادامه مطلب...
مجوز مطالب و محتوا ۲۷ اسفند ۹۸ ، ۱۳:۰۰ ۲ نظر موافقین ۱ مخالفین ۰
BSimjoo

کنترل ورودی در Python

def controllInput(func:callable, prompt = '>'):
  while True:
    try:
      inputValue = input(prompt)
      value = func(inputValue)
      if type(value) == bool:
        if value:
          return inputValue;
        else:
          print('!!INVALID INPUT!!')
      else:
        return value, inputValue
    except:
      print('!!INVALID INPUT!!')
      
a = controllInput(str.isdigit, 'digit: ')
print(a, type(a))
b = controllInput(int, 'int: ')[0]
print(b, type(b))
c = controllInput(str.isalpha, 'alpha: ')
print(c, type(c))
d = controllInput(lambda x: x.isalpha() and len(x)==5, '5 alpha:')
print(d, type(d))
مجوز مطالب و محتوا ۰۷ دی ۹۸ ، ۱۸:۵۹ ۱ نظر موافقین ۳ مخالفین ۰
BSimjoo

افزودن پایتون 3 به اندروید (نیاز به دسترسی روت)

از آنجا که به تازگی دارم پایتون کار می کنم می خواستم تا به هسته اندروید تبلتم پایتون رو اضافه کنم تا بتونم براش اسکریپت پایتونی هم بنویسم. پس جست و جو کردم تا چطور می تونم این کار رو انجام بدم؛ تا این که یافتم چطور می تونم پایتون 3.4.2 رو به اندروید اضافه کنم. البته برای استفاده از پایتون بر روی اندروید راه های دیگری مانند استفاده از برنامه QPython هم هست که به روت هم فکر نکنم نیاز باشه ولی در این جا شما می تونید کد ها و اسکریپت ها را از شل اجرا کنید و حتی اسکریپت هایی برای سیستم بنویسید که به سادگی اجرا می شوند.

قبل از هر چیز باید بگم که این دستورالعمل نیاز به دسترسی روت داره و طبق گفته ی منبع فقط روی پردازشگر های ARM جواب میده. من این کار رو انجام دادم و به خوبی روی تبلت سامسونگ به مدل GT-P3100 جواب داد. استفاده از ARM هم برای سادگی کار پیشنهاد می شه که البته میشه از یک terminal emulator برای اندروید هم استفاده کرد.

ادامه مطلب...
مجوز مطالب و محتوا ۰۵ آذر ۹۸ ، ۱۳:۰۰ ۱ نظر موافقین ۱ مخالفین ۰
BSimjoo

استفاده از نوع ها در سی شارپ به گونه ای دیگر!

در سی شارپ شما می توانید نوع (type) ها را در قالب یک متغییر برگرداند و جا به جا کرد. این نوع ها می توانند انواع متغیر ها و یا کلاس ها و در کل هر شئ موجود باشند. به طور مثال اگر کلاس های مشتقی دارید می تواند کلاس پایه و تمامی کلاس های مشتق را به گونه ای بنویسید که توع خود را در غالب یک متغیر اعلام کنند

ادامه مطلب...
مجوز مطالب و محتوا ۰۸ مرداد ۹۸ ، ۱۳:۰۰ ۰ نظر موافقین ۲ مخالفین ۰
BSimjoo

پنج سال وبلاگ نویسی

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

مجوز مطالب و محتوا ۲۰ تیر ۹۸ ، ۱۰:۳۷ ۳ نظر موافقین ۱ مخالفین ۰
BSimjoo

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

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

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

اکثر ما بابت جاسوس هایی که بسیار دوستشان داریم و با خودمان همه جا می بریم مقادیر زیادی پول خرج کردیم. یک پیشنهاد؛ یک سری به دسترسی نرم افزار های سیستمی مخصوصا نرم افزار های گوگل (برای گوشی های اندرویدی) بزنید. اکثر برنامه ها از جمله گوگل پلی به میکروفون، دوربین و مخاطبین دسترسی دارند. اصلا متوجه بخش Recommended for you در برنامه گوگل پلی شده اید؟ این بخش بر اساس سابقه جست و جو برنامه هایی که می تواند برای شما جذاب باشد را لیست می کند.

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

مجوز مطالب و محتوا ۱۸ تیر ۹۸ ، ۱۳:۰۰ ۰ نظر موافقین ۱ مخالفین ۰
BSimjoo

Image hijack

این اتفاق یعنی Image hijacking در ویندوز زمانی رخ می دهد که کاربر یا یک بدافزار در رجیستری به آدرس زیر تغییراتی به وجود بیاورد.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options

اگر آدرس بالا کلیدی با نام برنامه مورد نظر مانند taskmgr.exe ساخته شود و در آن مقداری از نوع رشته با نام Debugger ایجاد کنید می توانید در آن آدرس یک برنامه را بنویسید تا با برنامه اصلی جاییگزین شود و به جای آن اجرا شود و یا با خالی گذاشتن این مقدار مانع از اجرا شدن آن شوید. (در این مثال می توانید تر اجرا شدن برنامه Task manager تغییرات ایجاد کنید.)

توجه داشته باشید که این عمل برای هر فایل اجرایی قابل انجام است و حتی می تواند سبب اجرا نشدن نرم افزار های حیاتی ویندوز و ایجاد خطا شود؛ پس مراقب باشید. این شما هستید که می توانید از آن استفاده خوب یا بد بکنید!

مجوز مطالب و محتوا ۱۵ تیر ۹۸ ، ۱۳:۰۰ ۰ نظر موافقین ۳ مخالفین ۰
BSimjoo

ایجاد تغییرات در رجیستری ویندوز با استفاده از کد

اغلب برنامه ها در ایجاد تغییرات در رجیستری ویندوز مخصوصا کلید های حساس رجیستری مجاز به دسترسی نیستند و با خطای Access denied مواجه می شوند. در این مطلب می خواهم در خصوص چگونگی دور زدن این منع دسترسی توضیحاتی بدهم.

از آن جا که رجیستری ویندوز می تواند ابزار مخربی برای بدافزار ها باشد و تغییرات انجام شده در آن می تواند برای کاربران فاجعه بار باشد، لزا در بعضی کلید ها دسترسی های خاصی نیاز است؛ مخصوصا اگر با یک زبان تحت دات نت فریم ورک سر و کار داشته باشید (مانند سی شارپ). حال برای تغییرات می توانید از یک برنامه مورد اطمینان ویدوز به نام Reg.exe استفاده کنید. وجود این نرم افزار باعث شده تا بسیاری از نرم افزار ها به سادگی بتوانند حتی به جا های حساس ویندوز آسیب زده و مشکلاتی بوجود بیاورند. این برنامه درواقع یک واسط خط فرمان برای تغییر در رجیستری هست که توسط مایکروسافت نوشته شده و در آدرس "C:\Windows\System32\reg.exe" قرار دارد. برای استفاده از این برنامه لازم است با چگونگی دادن دستورات به آن آشنا شوید که توضیح آن در این مطلب نمی گنجد و پیشنهاد می کنم در خط فرمان توسط دستور reg help با چگونگی استفاده از آن آشنا شوید. برای انجام تغییرات کافیست از طریق کد های برنامه خود این نرم افزار را اجرا و دستورات لازم را به آن بدهید.

توجه این برنامه می تواند به شما دسترسی بیشتری در ویرایش رجیستری بدهد، پس این شما هستید که تصمیم می‌گیرید از این ترفند برای کار های خوب استفاده کنید یا بد!

مجوز مطالب و محتوا ۱۱ تیر ۹۸ ، ۱۵:۲۹ ۱ نظر موافقین ۱ مخالفین ۰
BSimjoo

پاسخ چالش ترک عملگر ها

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

ادامه مطلب...
مجوز مطالب و محتوا ۰۷ خرداد ۹۸ ، ۱۵:۵۱ ۰ نظر موافقین ۱ مخالفین ۰
BSimjoo

چالش ترک عملگر ها!

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

چالش از این قرار است: باید کدی بنویسید که با تعداد محدودی عملگر مجاز (تنها عملگر های مجاز عملگر های منطقی(عملگر های و؛ یا؛ نقیض) و عملگر انتساب (مساوی) هستند) بتواند دو عدد را در هم ضرب کند. عملگر های ضرب، جمع، تفریق، تقسیم و عملگر های بیتی و حتی عملگر های افزایش یا کاهش واحدی (++/--) غیر مجاز هستند. من تونستم کد رو به زبان سی شارپ (#C) بنویسم شما نیز با هر زبانی که می توانید بنویسید و در سایت apaste.info بارگزاری کرده (تاریخ انقضا نداشته باشد) و لینک آن را در نظرات ارسال. پاسخ بعد از دو هفته به اشتراک گزارده می شود.

مجوز مطالب و محتوا ۲۲ ارديبهشت ۹۸ ، ۱۰:۳۸ ۰ نظر موافقین ۱ مخالفین ۰
BSimjoo

برنامه‌نویسی را از کجا آغاز کنم؟ (2)

احساس کردم که مطلب "برنامه نویسی را از کجا آغاز کنم؟" به کمی بررسی بیشتر نیاز دارد، لذا تصمیم به بازنویسی این مطلب گرفتم.

لازم است قبل از هر چیز بگویم که من صرفا نظرات خودم را به جهت کمک به برنامه نویسان تازه‌وارد مطرح می کنم. در این مطلب به بررسی و راهنمایی برنامه نویسان تازه‌وارد می پردازیم تا علاقه مندان به این هنرِ فنی در رایانه راه خود را بیابند.

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

ادامه مطلب...
مجوز مطالب و محتوا ۱۵ ارديبهشت ۹۸ ، ۲۰:۰۶ ۳ نظر موافقین ۲ مخالفین ۰
BSimjoo