رمزنگاری متن با AES و گذرواژه
برای ساخت بستهٔ محرمانه، روش AES-256-GCM و جهت «رمزنگاری» را انتخاب کنید. متن فارسی، انگلیسی، فاصلهها و خطهای جدید حفظ میشوند. گذرواژه باید دستکم ۱۲ نویسه داشته باشد؛ تکرار آن کمک میکند اشتباه تایپی، بستهای بدون گذرواژهٔ قابل استفاده نسازد. دکمهٔ ساخت گذرواژه از منبع تصادفی امن مرورگر استفاده میکند. گذرواژهٔ نمونه عمومی است و برای اطلاعات شخصی مناسب نیست.
پس از پردازش، کل بستهٔ JSON را کپی یا دریافت کنید. گذرواژه داخل این بسته نیست. بسته و گذرواژه را جدا از هم نگه دارید؛ با گمشدن گذرواژه یا خرابشدن بسته، ابزار راه بازیابی ندارد.
رمزگشایی و آزمون رفتوبرگشت
برای بازکردن متن، همان روش AES و جهت «رمزگشایی» را انتخاب کنید. بستهٔ کامل و همان گذرواژه را وارد کنید. تغییر حتی یک بخش از بسته یا گذرواژهٔ اشتباه ممکن است باعث ردشدن آن شود. پیام خطا میان این دو حالت تمایز قطعی نمیگذارد و خروجی ناقص نشان نمیدهد.
دکمهٔ «انتقال خروجی به ورودی» نتیجه را به کادر ورودی میبرد و جهت را برعکس میکند؛ پردازش بعدی با دکمهٔ اصلی انجام میشود. نمایش یا پنهانکردن گذرواژه، نتیجهٔ آماده را از بین نمیبرد. تغییر متن، روش، جهت یا گذرواژه، خروجی قبلی را کنار میگذارد تا نتیجهٔ مربوط به تنظیمات قدیمی کپی نشود.
قالب toolschi-aes-v1 و سازگاری
کلید AES با طول ۲۵۶ بیت، از گذرواژه و PBKDF2-SHA256 با ۶۰۰٬۰۰۰ تکرار ساخته میشود. salt تصادفی ۱۶بایتی، IV تصادفی ۱۲بایتی و برچسب احراز اصالت ۱۲۸بیتی به کار میروند. قالب خروجی toolschi-aes-v1 حفظ شده است؛ بستههای قبلی همین قالب با پارامترهای معتبر، همچنان قابل بازکردناند.
هر خروجی با نام AES، قالب یکسانی ندارد. این بخش، رشتهٔ قدیمی Salted/CryptoJS/OpenSSL یا کلید خام ابزارهای دیگر را بهجای بستهٔ جدید نمیپذیرد. برای دادهٔ قدیمی، حالت، روش ساخت کلید و قالب همان ابزار باید مشخص باشد؛ نسخهٔ اصلی را پیش از تبدیل حفظ کنید. این پیادهسازی به معنی ممیزی مستقل امنیتی کل سایت نیست.
تفاوت Base64، Base64URL و رمزنگاری
Base64 نمایش متنی بایتهای UTF-8 است؛ بدون گذرواژه باز میشود و برای حفاظت از اطلاعات حساس کافی نیست. در Base64 استاندارد، padding با علامت = حفظ میشود. Base64URL از - و _ استفاده میکند و در این ابزار بدون padding ساخته میشود. روش انتخابشده باید با ورودی یکسان باشد؛ داده یا UTF-8 خراب با خطا رد میشود.
تبدیل URL، HTML، Hex، JSON و Unicode
- URL یک جزء نشانی، مانند مقدار پارامتر را تبدیل میکند؛ پردازش نشانی کامل یا فرم دارای + بهجای فاصله نیست.
- HTML موجودیتهای متنی مانند amp، lt، gt، quot، apos، nbsp و کدهای عددی را بازمیگرداند. خروجی بهصورت HTML اجرا نمیشود و این کار جای پاکسازی جامع HTML نیست.
- Hex بایتهای UTF-8 را به رقمهای هگزادسیمال تبدیل میکند. هنگام بازگردانی، تعداد رقمها باید زوج و بایتها UTF-8 معتبر باشند.
- JSON یک رشتهٔ متنی با گیومهها و escapeهای لازم میسازد؛ هنگام بازگردانی، شیء، آرایه یا عدد را بهجای رشته نمیپذیرد.
- Unicode همهٔ واحدهای متن را به دنبالههای \uXXXX تبدیل میکند. ایموجی ممکن است دو واحد داشته باشد؛ جفت ناقص پذیرفته نمیشود. برای متن ترکیبی، روش JSON مناسبتر است.
محدودیتها و نگهداری خروجی
متن اولیه تا ۵۰٬۰۰۰ واحد UTF-16 و بستهٔ ورودی تا ۳۰۰٬۰۰۰ واحد پذیرفته میشود. ایموجی ممکن است بیش از یک واحد باشد. فایل متنی یا JSON با UTF-8، فقط در مرورگر خوانده میشود؛ فایل باینری ورودی این ابزار نیست.
متن و گذرواژه توسط ابزار برای پردازش به سرور ارسال نمیشوند و تاریخچهٔ دائمی ندارند. کلیپبورد، فایل دانلودشده و دادهای که خودتان برای دیگری میفرستید خارج از حافظهٔ فرم هستند. پاککردن فرم، کلیپبورد یا فایل دستگاه را حذف نمیکند. AES به HTTPS و مرورگر دارای Web Crypto نیاز دارد؛ از مرورگر و دستگاه مورد اعتماد استفاده کنید.
نظرات و پرسشها ۰
پرسش یا تجربهٔ مرتبط با همین صفحه را بنویسید؛ پاسخ تیم تولزچی هم اینجا نمایش داده میشود.
نوشتن دیدگاهگفتوگو را شروع کنید
هنوز دیدگاهی برای این صفحه منتشر نشده است. پرسشها و تجربههای مرتبط پس از بررسی نمایش داده میشوند.