توسعه‌دهنده 🔒 در مرورگر اجرا می‌شود — داده‌ای ارسال نمی‌شود

تولید هش SHA-256

هش SHA-256 هر متن یا فایلی را محاسبه کنید و بدون آپلود چیزی، آن را با چک‌سام منتشرشده مقایسه کنید.

متن ورودی

تولید هش SHA-256 به‌صورت آنلاین

SHA-256 تابع هش رمزنگاری همه‌کاره‌ای است که در کارهای روزمره همه‌جا دیده می‌شود. هر ورودی را به اثر انگشتی ۲۵۶ بیتی تبدیل می‌کند که با تغییر حتی یک بیت از ورودی کاملاً عوض می‌شود، و تاکنون هیچ‌کس راه عملی برای ساختن دو ورودی با هش یکسان پیدا نکرده است. تولیدکنندگان نرم‌افزار چک‌سام SHA-256 منتشر می‌کنند تا بتوانید مطمئن شوید فایل دانلودشده اصل و سالم است.

این صفحه سازنده هش را با SHA-256 برجسته‌شده باز می‌کند. متن با UTF-8 هش می‌شود و فایل‌ها به‌صورت محلی با Web Crypto API مرورگر خوانده می‌شوند؛ هیچ چیزی آپلود نمی‌شود.

نمودار: هش SHA-256 دو ورودی «hello» و «hello.» کاملاً متفاوت است، اما طول هر دو ۶۴ کاراکتر هگز است.ورودیهش SHA-256helloSHA-2562cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824hello.SHA-2561589999b0ca6ef8814283026a9f166d51c70a910671c3d44049755f07f2eb910فقط یک کاراکتر بیشترهمیشه ۶۴ کاراکتر هگز (۲۵۶ بیت)
اضافه کردن فقط یک نقطه کل هش SHA-256 را عوض می‌کند، اما طول آن هیچ‌وقت تغییر نمی‌کند. ورودی یکسان همیشه هش یکسان می‌دهد؛ به همین دلیل چک‌سامِ منتشرشده ثابت می‌کند فایل دانلودشده سالم رسیده است.

کاربردهای رایج

  • تأیید فایل‌های دانلودی مثل ایمیج سیستم‌عامل، فایل نصب و بسته‌های نرم‌افزاری.
  • بررسی یکپارچگی در پایپ‌لاین‌های CI و فایل‌های lock.
  • آدرس‌دهی بر اساس محتوا، یعنی شناختن فایل با هش محتوایش؛ مثل digest ایمیج‌های Docker و قالب جدیدتر اشیای Git.
  • امضا: گواهی‌های TLS و امضای کد، داده را پیش از امضا با SHA-256 هش می‌کنند.

SHA-256 در خط فرمان

سیستمدستور
Linuxsha256sum file.iso
macOSshasum -a 256 file.iso
Windows PowerShellGet-FileHash file.iso (الگوریتم پیش‌فرض SHA-256 است)
Windows cmdcertutil -hashfile file.iso SHA256
OpenSSLopenssl dgst -sha256 file.iso

وقتی رشته‌ای را در shell هش می‌کنید، از printf '%s' "text" | sha256sum یا echo -n استفاده کنید؛ echo ساده یک خط جدید اضافه می‌کند و هشی متفاوت با هش این صفحه می‌دهد.

SHA-256 در کد

جاوااسکریپت در مرورگر: crypto.subtle.digest('SHA-256', new TextEncoder().encode(text)). پایتون: hashlib.sha256(text.encode()).hexdigest(). PHP: hash('sha256', $text). هر سه برای ورودی UTF-8 یکسان، همان رشته هگز را برمی‌گردانند.

انتخاب میان توابع هش

برای کارهای جدید، SHA-256 انتخاب پیش‌فرض و امن است. SHA-512 خروجی بلندتری می‌دهد و روی سیستم‌های ۶۴ بیتی ممکن است سریع‌تر باشد؛ MD5 فقط برای چک‌سام‌های قدیمی است. برای بررسی قدم‌به‌قدم یک فایل دانلودشده، بررسی چک‌سام فایل را ببینید.

آموزش‌های مرتبط