هش – رمزگذاری مبتنی بر رمز عبور جاوا اسکریپت نامتقارن

من می خواهم یک برنامه وب را که به 2 کاربر امکان می دهد پیام های رمز شده را به یکدیگر ارسال کنم، می خواهم، و من می خواهم به حداکثر رساندن امنیت، بنابراین من می خواهم مقدار اعتماد را که من در ارائه دهنده ابر من قرار داده (هر دو پایگاه داده و سرور که در آن کد برنامه است).

بنابراین، من تصمیم گرفتم سعی کنم یاد بگیرم که چگونه تمام طرف رمزگذاری / رمزگشایی را در جاوااسکریپت انجام دهم.

اما من مقالات مختلف را خوانده ام از سال 2013، 2011 و 2017 به شدت توصیه می شود هیچ کس هیچ کدام از رمزنگاری مربوط به JS را کد نکنید.

اگر فرض کنم که هشدار کارشناسان رمزنگاری درباره JS درست است، من این سؤالات را دارم:

  1. From به نظر من، Libsodium یک کتابخانه رمزنگاری بسیار محترم است، پس چرا آن یک نسخه جاوا اسکریپت را ارائه می دهد اگر JS ضعیف باشد؟ (و همچنین استنفورد، W3C و سیگنال است.)
  2. آیا امکان دارد برنامه ای مانند پیش بینی (رمزگذاری کامل از مشتری به سرویس گیرنده) را بدون نیاز به یادگیری برای کد کردن اندروید یا iOS توسعه دهم؟ (اگر نه، سپس چه رویکردی به هدف من نزدیک می شود؟ )

من همچنین راحتی را می خواهم: من می خواهم کاربران بتوانند از هر وسیله ای به وب سایت وارد شوند تا زمانی که آنها نیز بتوانند کد امنیتی چند عامل را از تلفن خود ارائه کنید.

(یعنی با استفاده از برنامه نمی تواند به محلی خاص ذخیره سازی برای یک دستگاه نیاز داشته باشد یا نیاز به آپلود فایل های کلید هایی که برای حفظ بیش از حد طولانی است؛ کاربران باید بتوانند فقط به سیستم وارد شوید با ارائه مدارک معتبر آنها را حفظ کرد.)

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

نحوه محافظت از کد منبع جاوا در هنگام توزیع برنامه جاوا من به عنوان کپی به کاربران؟

جعل کد منبع کافی است، زیرا کسانی که مایل به خواندن کد منبع شما هستند، عمدتا مایل به مراقبت از جریان اطلاعات و ساختار داده هستند. این مقاله عالی 1 می گوید AOT (پیش از تدوین زمان) راهی برای رفتن است. اکنون سوال این است: استفاده از ExcelsiorJet کد بومی من نسبتا امن از مهندس معکوس است

یکی دیگر از روش توزیع یک ماشین مجازی (می گوید لینوکس) حاوی برنامه در داخل آن VM، و ایجاد کاربر ریشه از آن داشتن رمز عبور از مثال 50 کاراکتر اشکال این است که اندازه دانلود برنامه من بیش از حد بزرگ است (برخی از Gigas). سوال بعدی این است: آیا یک هکر میتواند کد جاوا را از داخل یک تصویر دیسک VDI خواند؟

البته اگر بتوانم کد بومی خود را در یک ماشین مجازی قرار دهم، سخت تر خواهد بود. اما من می خواهم بدانیم که روش کمترین هزینه برای کد جاوا کدام است.

هنوز یک راه دیگر وجود دارد: به عنوان مثال C + + برای نوشتن بیشترین رمز مهم امنیتی، آن را به بومی واقعی کامپایل کرده و منبع جاوا جاودانگی من را نشان می دهد. اما این بدان معنی است که من باید هر دو قسمت را نیز حفظ کنم.

بسیار ممنون،

ابزار برای محافظت از کد منبع جاوا

حملات – می تواند کد جاوا اسکریپت در مرورگر توسط هکر تغییر یافته برای دسترسی به منابع غیر مجاز؟

برنامه API Spring Boot در سمت سرور و برنامه VueJS در سمت سرویس گیرنده من وجود دارد. پس از ورود موفقیت آمیز، طرف سرور پاسخ JSON را ارسال می کند که شامل accountType با مقدار VIEW_GOLD یا VIEW_SILVER است، اگر accountType VIEW_GOLD باشد، کاربر برای مشاهده لیستی از شی GoldBar و به همین ترتیب مانند در این کد در سمت سرویس گیرنده VueJS:

          اگر (response.data) {
             اگر (response.data.accountType === 'VIEW_GOLD') {

               $ this. $ router.replace ({name: 'GoldBars'})

             }
             else if (response.data.accountType === 'VIEW_SILVER') {

               $ this. $ router.replace ({name: 'SilverBars}}
            }

سوال این است که آیا می توان یک دیدگاه هکر Goldbars زمانی که AccountType VIEW_SILVER با استفاده از مرورگر هکر مانند Tor

ورودی جاوا اسکریپت را بدون اعدام ذخیره کنید

برنامه من دارای یک جعبه متن ثروتمند است که هر جاوا اسکریپت را به عنوان ورودی می گیرد و آن را برای اصلاح ذخیره می کند، بعد از آن در داخل وب سایت دیگری استفاده می شود (به عنوان مثال کد را به یک صفحه وب وارد می کند). هنگامی که برخی از کد های مخرب وارد و ذخیره می شوند، آن را در همان برنامه / صفحه مانند XSS ذخیره شده (نوع خود حمله) اجرا می شود. اما ورودی جاوا اسکریپت (بدون هیچ کدام از اصلاح / خروجی) این قابلیت است.

پرسش های من عبارتند از:

  • چه مکانیزم های امنیتی باید در محل من وجود داشته باشد؟
  • آیا دفاع حاشیه ای وجود دارد؟ (غیر از هدر X-XSS و CSP)
  • به نظر این وضعیت از دیدگاه "قابلیت و امنیت"، راه حل چیست؟