moaminsharifi/fa-wiki-spell-checker huggingface dataset:
علی‌اصغر هدایتی (خرداد ۱۳۱۱ - دی ۱۳۹۲) حقوقدان ایرانی و پژوهشگر بیمه و بانکداری بود. او مدتی رئیس بانک مسکن و عضو هیئت علمی مؤسسه عالی بانکداری بود. او برای نگارش کتاب "بیمه و نقش آن در تاریخ خسارات" در سال ۱۳۳۵ برندهٔ جایزه سلطنتی کتاب سال شد."بررسی روند ارائه جایزه کتاب از آغاز تا کنون در ایران"، زهرا حسینی جوادی، پایان‌نامه کارشناسی‌ارشد کتابداری و اطلاع‌رسانی، دانشگاه آزاد اسلامی واحد تهران شمال، زمستان ۱۳۹۳
سرگی کووالیوف (؛ ۱۴ اکتبر ۱۹۴۴ – ۱۶ مه ۲۰۱۱) قایقران کانو اهل رومانی بود.
سوفیا کوربان (؛ زادهٔ ۱ اوت ۱۹۵۶) قایقران روئینگ اهل رومانی بود.
مسابقات قهرمانی بسکتبال آسیا ۱۹۶۳ دومین دورهٔ قهرمانی آسیا برای مردان می‌باشد که از ۲۰ نوامبر تا ۳ دسامبر در تایپه، جمهوری چین برگزار گردید.
هنگامی که فیلیپین و جمهوری چین پس از انجام ۱۰ بازی خود، در امتیازات با هم برابر شدند، لازم بر این شد که یک تک بازی با هم انجام دهند تا قهرمان این دوره از مسابقات مشخص شود.
یک متخصص مواد منفجره برای کار در یک باند تبهکاران فریب خورده‌است.
این فیلم سالها در دسترس نبود.'Lost' Norman Wisdom film to be shown again "Lancashire Telegraph", 20 January 2008. Retrieved 27 September 2014.
و در نهایت در تاریخ ۸ مه ۲۰۱۷ در دی وی دی منتشر شد.
پرنسس لئونیلا ایوانووا باریاتینسکایا در ۹ مه ۱۸۱۶ در مسکو متولد شد. وی دختر شاهزاده ایوان ایوانوویچ باریاتینسکی، عضو یکی از تأثیرگذارترین خانواده‌های نجیب‌زاده روسی و نوه شاهزاده خانم کاترین از شلسویگ-هولشتاین بود. مادر وی کنتس ماری ویلهلمین ون کلر، دختر کنت کریستوف ون کلر، دیپلمات آلمانی و کنتس آمالی لوئیز زو سای ویتگنشتاین ساین بود.
در ۲۳ اکتبر ۱۸۳۴، لئونیلا با پسر عموی خود و یکی از معاونان تزار، شاهزاده لودویگ زو سی-ویتگنشتاین-برلبورگ (۱۷۹۹–۱۸۶۶)، در قلعه مارینوی استان کورسک ازدواج کرد. لودویگ یک اشراف‌زاده روسی‌تبار آلمانی بود که در روسیه با عنوان لو پتروویچ ویتگنشتاین شناخته می‌شد. وی فرزند ارشد پیتر اول شاهزاده سی ویتگنشتاین-برلبورگ-لودویگسبورگ و یک اشراف‌زاده لهستانی به نام آنتونیا زیلی اسنارسکا بود. لودویگ پیشتر با پرنسس استفانیا رادزیویل ازدواج کرده بود که در هنگام مرگ زودرسش، یک املاک بزرگ در اروپای مرکزی و دو فرزندشان پیتر و ماری، که با شاهزاده کلودویگ زو هوهنلو ازدواج کرد را برای لودویگ به یادگار گذاشت.Ormond & Blackett-Ord, "Franz Xaver Winterhalter and the Courts of Europe", , p. 185.
لئونیلا و لودویگ چهار فرزند داشتند. زیبایی او جایگاهش را در دربار روسیه تقویت کرد اما شوهرش از لطف دربار افتاد، شاید به این دلیل که سیاست و رفتاری لیبرال را در میان دیگر سروانها پیش گرفت. آنها روسیه را در سال ۱۸۴۸ ترک کردند. لودویگ به عنوان هدیه ای از پادشاه فردریش ویلهلم چهارم پروس، کرسی خانوادگی سابق قلعهٔ سای را که در جنگ سی ساله نابود شده بود، دریافت کرد. وی با خرید منزل سابق شوالیه در ساین، عنوان شاهزادهٔ سای-ویتگنشتاین-ساین را بدست آورد.
آنها زمین‌های وسیعی در روسیه داشتند. محل دارایی‌های آنها شامل پاولینوو، کامنکا، جنوب کیف و ورکی بود که در حال حاضر لیتوانی است. لئونیلا که مذهب کاتولیک را بجای ارتدکس روسی پذیرفته بود، روم و پاریس را به بقیه املاکش ترجیح می‌داد؛ جایی که او شاهد غارت و چپاول تویلری در سال ۱۸۴۸ بود. خانواده پرنسس به‌صورت فصلی از کشوری به کشور دیگر کوچ کردند و فرزندان، حیوانات خانگی، خادمان و مربیان خود را با خود بردند.
لودویگ و لئونیلا یک ملک اربابی باروک را در زیر قلعه ساین بازسازی کردند و آن را به خانه مسکونی به سبک معماری نئوگوتیک تبدیل کردند. پسر کوچک آنها الکساندر با یوون، دختر دوک بلاکای فرانسه ازدواج کرد و پس از ازدواج برادران بزرگترش با زنانی از طبقهٔ پایین‌تر، عمارت ساین را به ارث برد. وی پس از مرگ زودرس همسرش، دوباره ازدواج کرد و زندگی خود را به عنوان کنت هاچنبرگ در اقامتگاه‌های خانوادگی در هاچنبرگ و فریدوالد در وستروالد گذراند. پرنسس لئونیلا یک تالار سلطنت طلب و کاتولیک را ایجاد کرد و در سال ۱۹۱۸ در سن ۱۰۱ سالگی در ویلای خود مون آبری در کنار دریاچه ژنو سوئیس درگذشت.Ormond & Blackett-Ord, "Franz Xaver Winterhalter and the Courts of Europe", , p. 185.
لئونیلا که به خاطر زیبایی و هوش سرشار خود شناخته شده بود، سوژه تعدادی پرتره توسط فرانز وینترهالتر شد.Ormond & Blackett-Ord, "Franz Xaver Winterhalter and the Courts of Europe", , p. 185. مشهورترین آنها رنگ روغنی است، اثر فرانتس ژاور وینترهالتر هم‌اکنون در موزه گتی لس آنجلس قرار دارد. سمت راست پرتره در سال ۱۸۴۳ امضا شده‌است. وینترهالتر تصمیم به تولید یک پرتره جسورانه و غیر معمول، هم از نظر مفهوم و هم در قالب گرفت.
ارزش‌های خودابرازی بخشی از هسته ارزش‌ها در فرایند مدرن‌سازی هستند. خودابرازی مجموعه‌ای از ارزش‌هایی است که رواداری اجتماعی، ، ابراز عمومی، و آرزومندی به آزادی را شامل می‌شود. ، استاد دانشگاه میشیگان و پرورش‌دهنده نظریه به تفصیل بر روی این مفهوم کار کرده‌است.
لوردانا دینو (؛ زادهٔ ) شمشیرباز اهل رومانی است.
ازافتخارات وی میتوان به کسب مدال طلا اپه تیمی در بازی‌های المپیک تابستانی ۲۰۱۶ اشاره کرد.
سامیت () همچنین شناخته شده با نام اوال‌سی‌اف-۴ ابررایانه گسترش‌یافته توسط شرکت آی‌بی‌ام است که برای استفادهٔ آزمایشگاه ملی اوک ریج ساخته شده‌است. از نوامبر ۲۰۱۹ سامیت با قدرت پردازش ۲۰۰ پتافلاپس تحت عنوان سریعترین ابررایانه دنیا شناخته می‌شود. سرعت کلاک سامیت تحت آزمون سنجش فنی بنچمارک لین‌پک به کمینهٔ ۱۴۸/۶ پتافلاپس رسید. از نوامبر ۲۰۱۹ ابررایانه سامیت همچنین عنوان پنجمین مصرف‌کنندهٔ بهینه و کارآمد انرژی نسبت به راندمان کاری در جهان را در اختیار دارد که این میزان برابر است با ۱۴/۶۶۸ واحد گیگافلاپس/وات. این در حالی است که سامیت اولین ابررایانه‌ای است که توانسته به سرعت ۱/۸۸ اکزافلاپ (یک کوینتیلیون عملیات در ثانیه) برای یک تجزیه ژنومیک دست یابد که حداکثر بیشینهٔ آن ۳/۳ اکزافلاپ در حالت استفاده از محاسبات دقیق ترکیبی بود.
وزارت انرژی ایالات متحده آمریکا در نوامبر سال ۲۰۱۴ میلادی سفارش ساخت سامیت را طی قراردادی به مبلغ ۳۲۵ میلیون دلار با آی‌بی‌ام، انویدیا و ملانوکس تکنولوژیس منعقد نمود. حاصل چنین قرارداد و پروژه‌ای تولد "سامیت" و "سیرا" بود. پروژه سامیت بر پایهٔ اهداف تحقیقات علمی غیرنظامی بنیانگذاری شده و خاستگاه آن آزمایشگاه ملی اوک ریج واقع در تنسی بود. این در حالی بود که پروژه سیرا برای شبیه‌سازی سلاح‌های هسته‌ای و در آزمایشگاه ملی لارنس لیورمور انجام شد. ابررایانه سامیت در مجموع فضایی بالغ بر دو زمین بسکتبال را پوشش می‌دهد که ۱۳۶ مایل کابل‌کشی دارد. محققان از سامیت در زمینه‌های متنوعی همچون کیهان‌شناسی، پزشکی و اقلیم‌شناسی استفاده می‌نمایند.
واسیل دیبا (؛ زادهٔ ۲۴ ژوئیه ۱۹۵۴) قایقران کانو اهل رومانی بود.
تاج سرنره (نوک پنیس) () اشاره دارد به دور پایه سرنره در انسان‌های نر که یک مرز بیرون‌زده گرد را فرم می‌دهد، یک رتروگلاندولار سولکوس (شیار) ژرف در بیرون و دور آن قرار دارد، که پشت آن گردن آلت مردی است.
مرد ساندویچی (به انگلیسی: "The Sandwich Man") یک فیلم کمدی بریتانیایی محصول سال ۱۹۶۶ به کارگردانی رابرت هارتفورد-دیویس است. در این فیلم بازیگرانی همچون دورا برایان، هری اچ. کوربت، برنارد کریبینز، دایانا دورس، نورمن ویزدوم، تری توماس، مایکل بالفور، ایان هندری و بسیاری دیگر از بازیگران انگلیسی نقش‌آفرینی می‌کنند. Petrie p 7-8
این فیلم در زمان اکرانش، از نظر انتقادی و تجاری، ضعیف ارزیابی شده است.Petrie p 13-14
نمک‌های صفراوی مولکول‌های استروئیدی هستند که در سلول‌های کبدی از کلسترول ساخته می‌شوند. دو نمک صفراوی کولات و کنو داکسی کولات در کبد انسان ساخته می‌شوند. این نمک‌ها عملکردهایی مثل تحریک جریان صفراوی و انتقال و هضم چربی‌ها دارند. نمک‌های صفراوی به حرکات کرمی روده باریک نیز کمک می‌کنند.
مادر دودینسکایا ناتالیا تاگلیوری بود؛ بالرینی که توسط انریکو سیچتی کشف شده بود. دودینسکایا که توسط آگریپینا واگانووا آموزش دیده بود، از مدرسه خود در سال ۱۹۳۱ قبول شد. او تمام نمایش‌های کلاسیک را در تئاتر کیروف رقصید از جمله نقش اصلی باله سیندرلا. وی بعداً نقش اصلی را در شعله‌های پاریس بوریس آصفیف و تاراس بولبا را بدست آورد. وی اغلب تحت عنوان نقش لارنسیا در دن کیشوت شناخته شده بود. او غالباً همسرش کنستانتین سرگئیف، رقصنده مشهور گرجی و واختانگ چابکیانی و در پایان دوران کار خود، رودلف نوریف ۲۱ ساله را بعنوان زوج لورنسیا برمی‌گزید. وضع نابسامان جسمی او را وادار به بازنشستگی در سال ۱۹۶۱ کرد. اما وی با این حال در نسخه فیلم سینمایی همسرش، زیبای خفته در سال ۱۹۶۴ رقصید. دودینسکایا در طول زندگی حرفه ای خود، چهار جایزه استالین را دریافت کرد. در سال ۱۹۵۷، او به عنوان یک هنرمند مردمی اتحاد جماهیر شوروی معرفی شد.
پس از بازنشستگی، دودینسکایا معلمه باله کیروف و یکی از مشهورترین مربیان مؤسسه واگانووا شد. پس از پناهندگی رودلف نوریف در سال ۱۹۶۱ به غرب، او و همسرش کنستانتین سرگئیف تحت توبیخ مقامات شوروی قرار گرفتند. آنها در نهایت موقعیت خود را پس از فرار ناتالیا ماکارونا در سال ۱۹۷۰ از دست دادند اما دودینسکیا همچنان به تدریس و تربیت رقصنده‌های نسل آینده پرداخت. آناستازیا ولوچکووا و اولیانا لوپاتکینا جزو آخرین بالرین‌هایی بودند که توسط وی کشف شدند. دودینسکایا همچنین به شوهرش کمک کرد که تولید نمایش‌های کلاسیک روسی در خارج از روسیه را برپا کند و در باله بوستون شرکت کند. به عنوان مثال او در دهه‌های ۱۹۸۰ و ۱۹۹۰، در "باله ژیزل"، "دریاچه قو"، "لا بیادره" و "باله دزد دریایی" کار کرد. وی در سال ۲۰۰۳ در سن ۹۰ سالگی درگذشت.
ساچوپریون گونه ای از گیاه خزنده سانان بودند که در دوره تریاس در نواحی آمریکا شمالی زندگی می‌کردند و در اطراف نهر و رودخانه‌ها سکونت داشتند. ساختار کلی بدن آنها به تمساح شبیه بود. ۶۵سانتی‌متر ارتفاع، ۴۲۰کیلوگرم وزن و حدود ۵ متر هم طول داشت؛ و در زمان ظهور اولین گونه‌های تمساح تکامل یافته به تدریج ناپدید شدند. اسکلت این جانور در سال ۱۸۷۷ در پنسیلوانیا یافت شد.
این موجود با توجه به این که در کنار نهرها و رودخانه‌ها زندگی می‌کرده و ساختار بدنی شبیه تمساح امروزی داشته و می‌توانست جاندارانی از قبیل ماهی‌ها و پتروسور‌های کوچک و دوزیستان را شکار کند شناگر چابکی بود و می‌توانست با سرعت ۱۵ کیلومتر بر ساعت شما کند و این جانور سختی زیادی را برای شکار متحمل نمی‌شد. به نظر می‌رسد مانند تمساح امروزی شکار می‌کرده
با توجه به این که قطعات کوچکی از اسکلت این جانور باقی بانده، نمیتوان حدس زد که چه نوع موجودی بوده‌است. برخی از دانشمندان معتقدند که نوعی ساروپود بوده ولی با توجه به این که قطعات کوچکی از اسکلت این جانور باقی بانده، نمیتوان دقیقاً فهمید که از چه نژاد، گونه و دسته ای بوده است . وی صفحات استخوانی در روی سطح بدنش داشته که در برابر شکارچیان بزرگتر از خود محافظت کند
در رمزنگاری، تابع درهم ساز مرکل - دمگارد، روشی برای ایجاد توابع درهم ساز ، از طریق در برابر برخورد استGoldwasser, S. and Bellare, M. "Lecture Notes on Cryptography" . Summer course on cryptography, MIT, 1996-2001. این ساختار در طراحی بسیاری از الگوریتم‌های درهم ساز معروف همچون MD5، SHA-1 و SHA -2 استفاده شده‌است.
ساخت مرکل - دمگارد در پایان‌نامه دکتری رالف مرکل در سال ۱۹۷۹ توصیف شد.R.C. Merkle. "Secrecy, authentication, and public key systems." Stanford Ph.D. thesis 1979, pages 13-15. رالف مرکل و ایوان دمگارد به‌طور مستقل ثابت کردند که: در صورتی اگر از طرح لایه گذاری مناسب استفاده شود و تابع فشرده‌سازی مقاوم باشد، تابع درهم سازی نیز مقاوم برخورد خواهد شد.I. Damgård. "A Design Principle for Hash Functions". In Advances in Cryptology – CRYPTO '89 Proceedings, Lecture Notes in Computer Science Vol. 435, G. Brassard, ed, Springer-Verlag, 1989, pp. 416-427.R.C. Merkle. "A Certified Digital Signature". In Advances in Cryptology - CRYPTO '89 Proceedings, Lecture Notes in Computer Science Vol. 435, G. Brassard, ed, Springer-Verlag, 1989, pp. 218-238.
تابع درهم ساز مرکل - دمگارد برای ایجاد یک ورودی شامل تعداد ثابتی از عدد ثابت (به عنوان مثال ۵۱۲ یا ۱۰۲۴) عمل می‌کند. این به این دلیل است که توابع فشرده‌سازی نمی‌توانند ورودی اندازه دل‌خواه را کنترل کنند. سپس تابع درهم ساز، نتیجه را به بلوک‌هایی با اندازه ثابت تقسیم می‌کند، و آن‌ها را دریک زمان با تابع فشرده‌سازی پردازش می‌کنند، هر بار یک بلوک ورودی را با خروجی راند قبلی ترکیب کرد.
برای اطمینان از ساخت و ساز، مارکل و دمگارد پیشنهاد کردند که پیامها با لایه ای که طول پیام اصلی را رمزگذاری می‌کند، قرار بگیرند. به این حالت لایه گذاری طولی یا تقویت مرکل - دمگارد گفته می‌شود.
در نمودار، تابع فشرده‌سازی تک جهتی با f نشان داده می‌شود و دو ورودی طول ثابت را به خروجی همان اندازه به عنوان یکی از ورودی‌ها تبدیل می‌کند. الگوریتم با یک مقدار اولیه شروع می‌شود، بردار مقداردهی اولیه (IV. (IV یک مقدار ثابت است (الگوریتم یا پیاده‌سازی خاص) برای هر بلوک پیغام، تابع فشرده‌سازی (یا فشرده‌سازی) f نتیجه را تا اینجا می‌گیرد، آن را با بلوک پیغام ترکیب می‌کند و یک نتیجه میانی تولید می‌کند. بلوک آخر با صفر به صورت نیاز و بیت با نمایش طول کل پیام اضافه می‌شود. (برای مثال، به قسمت پایین مراجعه کنید)
برای مقاوم تر شدن بیشتر هش، نتیجه نهایی گاهی اوقات از طریق تابع نهایی تغذیه می‌شود. تابع نهایی می‌تواند چندین هدف از قبیل فشرده کردن یک حالت داخلی بزرگ‌تر را داشته باشد (آخرین نتیجه) به یک اندازه هش کوچک‌تر، یا تضمین یک اثر مخلوط سازی بهتر و ی بر روی بیت‌های جمع هش باشد. تابع نهایی اغلب با استفاده از تابع فشرده‌سازی ساخته می‌شود؛ که در بعضی از اسناد اصطلاحات متفاوتی به کار رفته‌است: عمل لایه گذاری «نهایی کردن» نامیده می‌شود.
محبوبیت این ساخت و ساز به دلیل واقعیتی است که توسط مرکل و دمگارد ثابت شده‌است که اگر عملکرد یک طرفه فشرده سازی "f" در برابر برخورد مقاومت داشته باشد، بنابراین عملکرد هش با استفاده از آن نیز ساخته شده‌است. متأسفانه، این ساخت و ساز چندین ویژگی نامطلوب نیز دارد:
با توجه به ضعف ساختاری سازه‌های مرکل - دمگارد به خصوص مشکل گسترش طول و حملات مالتی‌کالیژنی، استفان لاکس استفاده از هش لوله گسترده را پیشنهاد کرد، به جای این که به ساختار مرکل دمگارد، درهم سازی لوله گسترده بسیار شبیه ساختار مرکل - دمگارد است اما دارای اندازه داخلی بزرگ‌تر است، به این معنی که طول بیتی که از داخل استفاده می‌شود بزرگ‌تر از طول بیت خروجی است. اگر یک هش از n بیت مورد نظر باشد، تابع فشرده‌سازی f مقدار 2n بیت از ارزش زنجیره‌ای و m بیت پیام را می‌گیرد و این مقدار را به خروجی 2n بیت فشرده می‌کند.
بنابراین، در یک گام نهایی، یک تابع فشرده‌سازی ثانویه آخرین مقدار هش درونی (2n) را به مقدار هش نهایی (n بیت) فشرده می‌کند. این کار را می‌توان به سادگی با کنار گذاشتن نیمی از خروجی 2n بیتی انجام داد. SHA-512/224 و SHA-512/256 این شکل را می‌گیرند زیرا از نوع SHA-512 مشتق شده‌اند. SHA-384 و SHA-224 به ترتیب به ترتیب از SHA-512 و SHA-256 مشتق شده‌اند، اما عرض لوله آنها بسیار کمتر از "2n است".
توسط Mridul Nandi و نشان داده شده‌است که اگر حالت لوله گسترده را به صورت زیر تقسیم کنیم می‌توان عملکرد هش لوله گسترده را تقریباً دو برابر سریعتر انجام داد: نیمی از آن وارد عملکرد فشرده سازی موفق می‌شود و نیمی دیگر همراه با خروجی آن عملکرد فشرده سازی.Mridul Nandi and Souradyuti Paul.
ایده اصلی ساخت هش این است که نیمی از مقدار زنجیره قبلی را جلو بکشید تا آن را به خروجی تابع فشرده‌سازی XOR کنید.
با استفاده از همان تابع f مانند قبل، مقادیر زنجیره n بیتی و n + m بیت پیام را می‌گیرد. با این حال هزینه اضافی ما حافظه اضافه شده برای جلو کشیدن زنجیره قبلی می‌باشد.
همان‌طور که در مقدمه ذکر شد، طرح لایه گذاری مورد استفاده در ساخت‌وساز برای اطمینان از امنیت طرح باید به دقت انتخاب شود. لازم است ذکر شود که برای حصول اطمینان از ایمن بودن ساختمان مرکل - دمگارد، شرایط کافی برای طرح لایه گذاری وجود دارد:
با این شرایط، ما در تابع درهم سازی مرکل - دمگارد برخورد می‌یابیم درست زمانی که در تابع فشرده‌سازی اساسی برخورد برخورد می‌کنیم؛ بنابراین، در صورت ایمن بودن عملکرد فشرده سازی اساسی، ساخت و ساز مرکل - دامگارد به‌طور قابل ملاحظه ای ایمن است.
"به عنوان مثال، بیایید بگوییم پیامی که باید هش شود "HashInput" است و اندازه بلوک عملکرد فشرده سازی ۸ بایت (۶۴ بیت) است." "بنابراین ما دو بلوک مانند این داریم:"
اما این کافی نیست زیرا این بدان معنی است که پیام‌های مجزا که با همان داده‌ها شروع می‌شوند و با صفر یا بیشتر بایت از داده‌های ثابت لنت ختم می‌شوند، با استفاده از همان بلوک‌های مشابه، تولید همان جمع نهایی نهایی را وارد تابع کاهش می‌کنند.
برای جلوگیری از این امر، باید بیت اول داده‌های ثابت پر شده تغییر یابد. از آنجایی که لایه‌گذاری ثابت به‌طور کلی از صفر ساخته می‌شود، اولین بیت لنت به‌طور اجباری به "۱" تغییر می‌یابد.
برای مقاوم شدن بیشتر هش، طول پیام را می‌توان در یک بلوک اضافی اضافه کرد.
برای جلوگیری از ابهام، مقدار طول پیام باید خود در برابر حملات پسوند طول مقاوم باشد. اکثر پیاده‌سازی‌های متداول از یک اندازه بیت ثابت (به‌طور کلی ۶۴ یا ۱۲۸ بیت در الگوریتم‌های مدرن) و یک موقعیت ثابت در انتهای آخرین بلوک برای رمزگذاری مقدار طول پیام استفاده می‌کنند (برای توضیحات، "شبه کد SHA-1 را ببینید")، اگرچه این امر مطابق با منطق ارائه شده در این صفحه، از قرار دادن طول در ابتدای پیام، در جایی که خود مسئولیت حمله به پسوند ندارد، کمتر مؤثر است، اما قبل از شروع بررسی تعداد داده‌های در حال بررسی، یا قرار دادن چندین مقدار از این مقادیر، در جهت بلوک، در جریان بررسی، به دانش نیاز دارد.
اکنون این مقدار کمی هدر رفته‌است زیرا به معنی ایجاد یک بلوک کامل برای یک مقدار طول است؛ بنابراین یک بهینه‌سازی سرعت جزئی وجود دارد که اکثر الگوریتم‌های هش از آن استفاده می‌کنند. اگر فضای کافی در بین صفرهای منتهی به آخرین بلوک وجود داشته باشد، در عوض می‌توان مقدار طول را در آنجا پر کرد.
توجه داشته باشید که ذخیره طول پیام به خارج از باند در ابرداده یا در غیر این صورت در آغاز پیام تعبیه شده‌است، یک کاهش مؤثر در مقابل حمله طولانی مدت می‌باشد. (تا زمانی که نادرستی طول پیام و عمل (checksum) هر دو مورد توجه واقع شوند)
توزیع کلید کوانتومی (QKD) یک روش ارتباط امن است که یک پروتکل رمزنگاری مبتنی بر مکانیک کوانتومی را پیاده سازی می کند. این روش امکان اشتراک گذاری یک کلید تصادفی مخفی را بین دو شخص فراهم می کند، که می توان از آن برای رمزگذاری و رمزگشایی پیامها استفاده کرد. معمولاً این روش به اشتباه رمزنگاری کوانتومی خوانده می شود، زیرا شناخته شده ترین مثال از کاربرد آن است.
از ویژگی‌های منحصر به فرد و مهم توزیع کلید کوانتومی این است که دو کاربر در حال ارتباط می توانند حضور شخص ثالث و تلاش او برای کسب دانش از کلید را تشخیص دهند. این ویژگی از یکی از اصول پایه مکانیک کوانتوم ناشی می شود: به طور کلی اندازه گیری یک سیستم کوانتومی آن را مختل می کند. شخص ثالثی که قصد شنود کلید را داشته باشد باید به طریقی آن را اندازه بگیرد، و به این ترتیب ناسازگاری‌های قابل تشخیص ایجاد می کند. با استفاده از برهم‌نهی کوانتومی و یا درهم‌تنیدگی کوانتومی و انتقال اطلاعات در حالت کوانتومی، می توان یک سیستم ارتباطی ایجاد کرد که توانایی تشخیص استراق سمع را داشته باشد. اگر مقدار استراق سمع از سطح معینی کمتر باشد، می توان کلیدی با امنیت تضمین شده تولید کرد که شخص ثالث نتواند درباره آن اطلاعاتی کسب کند. در غیر این صورت تولید کلیدی امن ممکن نیست و ارتباط قطع می شود.
بر خلاف رمزنگاری کلید عمومی کلاسیک که بر مبنای دشواری محاسباتی توابعی خاص بنا شده و نمی‌تواند اثباتی ریاضی برای سختی وارونه کردن توابع یک طرفه مورد استفاده ارائه کند، امنیت رمزنگاری مبتنی بر توزیع کلید کوانتومی به اصول مکانیک کوانتوم وابسته است. امنیت توزیع کلید کوانتومی با استفاده از نظریه اطلاعات و امنیت رو به جلو (forward secrecy) قابل اثبات است.
نقطه ضعف اصلی توزیع کلید کوانتومی این است که معمولاً به یک کانال ارتباطی اصالت‌سنجی شده‌ی کلاسیک نیاز دارد. در رمزنگاری مدرن، داشتن چنین کانالی به این معنی است که از قبل یک کلید متقارن با طول کافی یا کلید عمومی با سطح امنیت قابل قبول تبادل شده است. با چنین شرایطی بدون توزیع کلید کوانتومی و با استفاده روش‌هایی مانند گالوییس/مد شمارنده از استاندارد رمزنگاری پیشرفته می توان ارتباطی اصالت‌سنجی شده و امن داشت. توزیع کلید کوانتومی کار یک رمز دنباله‌ای با هزینه ای چند برابر آن را انجام می دهد. بروس اشنایر، متخصص امنیت مشهور گفته است که توزیع کلید کوانتومی "بی مصرف و گران" است.
توزیع کلید کوانتومی تنها برای تولید و توزیع کلید استفاده می شود، نه برای ارسال پیام یا داده. این کلید می تواند در یک الگوریتم رمزگذاری دلخواه برای رمزگذاری یا رمزگشایی پیام استفاده شود، که در ادامه این پیام در یک کانال مخابراطی عادی ارسال می شود. از الگوریتم‌های شناخته شده توزیع کلید کوانتومی پد یک‌بار مصرف است. امنیت این الگوریتم در صورت استفاده از یک کلید تصادفی امن قابل اثبات است. این الگوریتم در عمل معمولاً در کنار الگوریتم‌های کلید متقارن مانند الگوریتم استاندارد رمزنگاری پیشرفته استفاده می شود.
ارتباط کوانتومی شامل انتقال اطلاعات در قالب حالت‌های کوانتومی یا کیوبیت می شود، بر خلاف ارتباط کلاسیک که در آن اطلاعات با استفاده از بیتها منتقل می شود. معمولاً از فوتونها برای این وضعیت‌های کوانتومی استفاده می شود. توزیع کلید کوانتومی از بعضی ویژگی‌های وضعیت کوانتومی برای تضمین امنیت آن بهره می برد. روش‌های متعددی برای توزیع کلید کوانتومی وجود دارد، ولی می توان آن‌ها را با توجه به ویژگی مورد استفاده در دو دسته قرار داد.
این دو روش در ادامه به سه دسته تقسیم می شوند: متغیر گسسته، پیوسته و رمزگذاری توزیع شده ارجاع فاز. پروتکل‌های گسسته زودتر اختراع شدند، و در بین پروتکل‌ها گسترده تر از بقیه استفاده می شوند. هدف دو روش دیگر رفع محدودیت‌های عملیاتی در آزمایشات است. دو پروتکلی که در ادامه توصیف می شوند از رمزگذاری گسسته استفاده می کنند.
این پروتکل که بر اساس نام مخترعان و سال انتشارش BB84 نامیده شده، در ابتدا با حالات فوتون پولاریزه اطلاعات را منتقل می‌کرد.C. H. Bennett and G. Brassard. Quantum cryptography: Public key distribution and coin tossing. In Proceedings of IEEE International Conference on Computers, Systems and Signal Processing, volume 175, page 8. New York, 1984. اما هر جفتی از حالت‌های مذدوج می‌توانند برای این پروتوکل استفاده شوند و تعداد زیادی از پیاده سازی‌های مبتنی بر فیبر نوری که به عنوان BB84 توصیف می‌شوند از حالات ذخیره شده در فاز بهره می‌برند. فرستنده (که معمولاً به او نام آلیس داده می‌شود) و گیرنده (باب) توسط یک کانال کوانتومی با یکدیگر ارتباط دارند که امکان تبادل حالات کوانتومی را فراهم می‌کند. در صورت استفاده از فوتون‌ها این کانال معمولاً فیبر نوری یا خلاء است. علاوه بر این، آن‌ها از طریق اینترنت یا رادیو یک ارتباط عمومی کلاسیک نیز دارند. پروتکل با این فرض طراحی شده که یک شنودگر (معمولاً با نام ایو) می‌تواند به روش‌های مختلف در کانال کوانتومی اختلال ایجاد کند، اما کانال کلاسیک نیاز به اصالت‌سنجی دارد.
امنیت این پروتکل از ذخیره‌ی اطلاعات در حالات نامتعامد ناشی می‌شود. نامعلومی کوانتومی به این معناست که این حالات نمی‌توانند بدون ایجاد اختلال در حالت اصلی اندازه‌گیری شوند ( را ببینید). پروتکل BB84 از دو جفت حالت استفاده می‌کند که هر جفت نسبت به دیگری متعامد است و دو حالت درون هر جفت نسبت به هم متعامد هستند. جفتی از حالات متعامد پایه نام دارد. جفت حالات پولاریزه‌ی مورد استفاده معمولاً پایه‌ی مستطیلی عمودی (0°) و افقی (90°)، پایه‌ی قطری 45° و 135° یا پایه‌ی دایره‌ای سمت چپ-راست است. هر جفت از این پایه‌ها نسبت به هم مذدوج هستند، لذا هر دوتا از آن‌ها می‌توانند در پروتکل استفاده شوند. در زیر پایه‌های مستطیلی و قطری استفاده شده‌اند.
اولین مرحله در BB84 ارتباط کوانتومی است. آلیس یک بیت تصادفی (0 یا 1) انتخاب می‌کند و سپس یکی از دو پایه‌ی خود را (در این مثال مستطیلی یا قطری) برای انتقال آن برمی‌گزیند. او سپس یک حالت پولاریزاسیون فوتون را با توجه به مقدار بیت و پایه مطابق جدول کناری انتخاب می‌کند. برای مثال 0 در پایه‌ی مستطیلی (+) به عنوان یک حالت عمودی ذخیره می‌شود، و 1 در پایه‌ی قطری (x) به حالت 135° در می‌آید. سپس آلیس یک فوتون را در این حالت با استفاده از کانال کوانتومی به باب ارسال می‌کند. این فرایند از مرحله‌ی انتخاب بیت رندوم تکرار می‌شود و آلیس حالت، پایه و زمان ارسال هر فوتون را ثبت می‌کند.
طبق مکانیک کوانتومی (مخصوصا نامعلومی کوانتومی)، هیچ اندازه‌گیری ممکنی نمی‌تواند بین چهار حالت پولاریزاسیون تمایز را تشخیص دهد زیرا همه‌ی آن‌ها متعامد نیستند. تنها اندازه‌گیری ممکن بین دو حالت متعامد (پایه‌ای متعامد) است. بنابراین به طور مثال اندازه‌گیری در پایه‌ی مستطیلی نتیجه‌ی عمودی یا افقی درپی خواهد داشت. اگر فوتون در حالت افقی یا عمودی (یک حالت ویژهی کوانتومی) آماده شده باشد این اندازه‌گیری حالت درست را تشخیص می‌دهد، اما اگر فوتون در حالت 45° یا 135° آماده شده باشد اندازه‌گیری در پایه‌ی مستطیلی به طور تصادفی نتیجه‌ی افقی یا عمودی خواهد داشت. همچنین بعد از این اندازه‌گیری، پولاریزاسیون فوتون در حالتی که اندازه‌گیری شده خواهد بود (افقی یا عمودی) و تمامی اطلاعات درباره‌ی پولاریزاسیون اولیه‌ی آن از دست خواهد رفت.
از آنجایی که باب پایه‌ای که فوتون‌ها در آن ذخیره شده‌اند را نمی‌داند، تنها می‌تواند یک پایه را تصادف انتخاب کرده و در آن اندازه‌گیری کند. او این کار را برای هر فوتونی که دریافت کند انجام می‌دهد و در عین حال زمان، پایه‌ی اندازه‌گیری و حالت اندازه‌گیری شده را ثبت می‌کند. پس از آن که باب همه‌ی فوتون‌ها را دریافت کرد با آلیس در کانال عمومی کلاسیک ارتباط برقرار می‌کند. آلیس پایه‌ی فوتون‌هایی که ارسال کرده را برای باب می‌فرستد و باب نیز پایه‌هایی که در آن‌ها اندازه‌گیری انجام داده را برای آلیس ارسال می‌کند. هردوی آن‌ها اندازه‌گیری (بیت) هایی را که باب در پایه‌ی نادرست اندازه‌گیری کرده دور می‌ریزند که به طور میانگین نصف بیت‌ها خواهد بود و از نصف باقی مانده‌ی بیت‌ها به عنوان کلید اشتراکی استفاده می‌کنند.
برای بررسی وجود یک شنودگر، آلیس و باب زیرمجموعه‌ی از پیش تعیین شده‌ای از بیت‌های باقی مانده را با هم مقایسه می‌کنند. اگر شخص ثالثی (معمولاً با نام ایو) به اطلاعات پولاریزاسیون فوتون‌ها دست یافته باشد، این موضوع باعث ایجاد خطا در اندازه‌گیری‌های باب می‌شود. سایر شرایط محیطی به شکل مشابهی می‌توانند باعث ایجاد خطا شوند. اگر بیشتر از formula_1 بیت متفاوت باشد، کلید دور ریخته شده و آن‌ها دوباره تلاش می‌کنند. ارتباط جدید ممکن است با کانال کوانتومی جدیدی برقرار شود، زیرا امنیت کلید قابل تضمین نیست. formula_1 به گونه‌ای انتخاب می‌شود که اگر بیت‌های شناخته شده توسط ایو از آن کمتر باشد، بتوان با تشدید حریم خصوصی و کاهش طول کلید دانش ایو از آن را نیز به مقدار دلخواه کاهش داد.
طرح آرتور اکرت از جفت‌های درهم‌تنیده‌ی فوتون‌ها استفاده می‌کند. این فوتون‌ها می‌توانند توسط آلیس، باب، منبعی مستقل از این دو یا حتی آلیس تولید شوند. فوتون‌ها به گونه‌ای توزیع می‌شوند که آلیس و باب هر کدام یک فوتون از هر جفت را دریافت کنند.
این طرح بر اساس دو ویژگی درهم‌تنیدگی بنا شده است. اولین ویژگی آن است که حالات درهم‌تنیده کاملاً به یکدیگر مرتبط هستند به نحوی که اگر باب و آلیس پولاریزاسیون فوتون‌هایشان را اندازه‌گیری کنند، با قطعیت کامل همواره نتیجه‌ی مشابه یکدیگر خواهند یافت. این برای هر جفت دیگری از فوتون‌های تولید شده در پولاریزاسیون‌های متعامد برقرار است. در نتیجه لازم است این دو شخص مستقل از فاصله‌ی بینشان درک مشابهی از جهت داشته باشند. با این حال نتایج خاص به طور کامل تصادفی هستند؛ برای آلیس پیشبینی پولاریزاسیونی که خود (یا باب) قرار است اندازه‌گیری کند (افقی یا عمودی) غیر ممکن است. ویژگی دوم این است که هر گونه استراق سمع توسط ایو ارتباط بین دو فوتون را به شکل محسوسی برای باب و آلیس تغییر می‌دهد.
مشابه BB84، این پروتکل شامل یک پروتکل اندازه‌گیری خصوصی قبل از تشخیص حضور ایو می‌شود. در مرحله‌ی اندازه‌گیری آلیس هر فوتون را در یکی از پایه‌های formula_3 و باب در یکی از پایه‌های formula_4 می‌سنجند، که در آن‌ها formula_5 دوران یافته‌ی پایه‌ی formula_6 به اندازه‌ی formula_7 است. آلیس و باب پایه‌های انتخاب شده‌ی خود را تا قبل از پایان اندازه‌گیری‌ها مخفی نگه می‌دارند. دو گروه فوتون تشکیل می‌شوند: گروه اول شامل فوتون‌هایی می‌شود که توسط باب و آلیس در پایه‌ی مشابهی اندازه‌گیری شدند و سایر فوتون‌ها در گروه دوم قرار می‌گیرند. برای تشخیص استراق سمع، باب و آلیس می‌توانند آماره‌ی formula_8 را با استفاده از ضریب همبستگی بین پایه‌هایشان مشابه آزمایش بل محاسبه کنند. نتیجه برای فوتون‌هایی که حداکثر درهم‌تنیدگی را دارند formula_9 خواهد شد. اگر چنین نباشد، آلیس و باب می‌توانند نتیجه بگیرند که ایو با وارد کردن واقع‌گرایی محلی به سیستم سبب نقض قضیه بل شده است. اگر پروتکل موفقیت‌آمیز باشد، می‌توان از گروه اول برای تولید کلیدها استفاده کرد.
حمله‌های امنیتی نقاط ضعف در عملکرد پروتکل توزیع کلید کوانتومی یا نقص‌های اجزای فیزیکی سازنده‌ی آن را هدف قرار می‌دهند. اگر امکان دستکاری تجهیزات استفاده شده در توزیع کلید کوانتومی وجود داشته باشد، این سیستم می‌تواند با حمله‌ی مولد عدد تصادفی وادار به تولید کلیدهای غیر امن شود. نوع دیگری از حمله‌های متداول حمله‌ی اسب تروآ است که نیازمند دسترسی فیزیکی به ورودی ها نیست: به جای تلاش برای خواندن فوتون های آلیس و باب، ایو پالس های بزرگی از نور را در زمان بین ارسال فوتون‌ها به آلیس ارسال می‌کند. دستگاه آلیس بخشی از نور ایو را بازتاب می‌دهد و اینگونه پایه‌ی او آشکار می‌شود. اما این حمله می‌تواند با استفاده از یک یابنده‌ی کلاسیک که سیگنال‌های نامعتبر را تشخیص می‌دهد خنثی شود. همچنین گمان بر آن است که بیشتر حمله‌ها را می‌توان با تغییر روش پیاده‌سازی خنثی کرد، البته اثبات رسمی تاکنون ارائه نشده است.
حمله‌های دیگری از قبیل حمله‌ی حالت جعلی، تغییر فاز، و حمله‌ی شیفت زمانی شناخته شده هستند. حمله‌ی شیفت زمانی بر روی یک سیستم رمزنگاری کوانتومی تجاری نیز آزمایش شده است. این اولین نمایش هک کوانتومی بر روی یک سیستم توزیع کلید کوانتومی غیرخانگی است. پس از آن حمله‌ی تغییر فاز نیز بر روی سیستم توزیع کلیدی که توسط پروژه‌ی هک کوانتومی شرکت سوییسی به منظور تحقیق ساخته شده نمایش داده شد.F. Xu, B. Qi, and H.-K. Lo, New J. Phys. 12, 113026 (2010) آین یکی از اولین حمله‌های جلوگیری و باز-ارسال است که بر روی یک پیاده‌سازی متداول QKD در سیستم های QKD تجاری انجام می‌شود. این واقعه بازتاب خبری قابل توجهی داشته است.Quantum crypto boffins in successful backdoor sniff - Erroneous error-handling undermines bulletproofness retrieved 2010-05-26
اولین حمله‌ای که ادعای شنود کامل کلید بدون برجا گذاشن رد را مطرح کرد در سال 2010 اتفاق افتاد. در عمل نشان داده شد که یابنده های تک-فوتون موجود در دو دستگاه تجاری را می‌شد از راه دور با ارسال اشعه های خاص پرنور کنترل کرد. در دنباله‌ای از مقالات پس از آن، همکاری بین دانشگاه علم و فناوری نروژ و در آلمان روش‌های متعددی برای شنود سیستم های QKD تجاری را آشکار کرد که از نقاط ضعف موجود در دیود نوری بهمنی بهره می‌بردند. این موضوع باعث رشد تحقیقات بر روی روش های جدید به منظور تامین امنیت شبکه‌های ارتباطی شده است.
با استفاده از پروتکل ارائه شده توسط Tae-Gon Noh می‌توان یک کلید امن را بدون عبور ذرات حامل اطلاعات سرّی از کانال کوانتومی توزیع کرد. به این شکل که آلیس یک فوتون ایجاد می‌کند که تا قبل از اندازه‌گیری در اَبَرحالتی از مسیر الف و ب قرار دارد. مسیر الف در داخل دستگاه امن آلیس قرار دارد و مسیر ب به باب می‌رود. با نپذیرفتن فوتون‌هایی که باب دریافت می‌کند و تنها پذیرفتن آن‌هایی که دریافت نمی‌کند، باب و آلیس می‌توانند یک کانال امن ایجاد کنند. تلاش ایو برای خواندن فوتون‌های "غیرواقعی" قابل تشخیص خواهد بود. این پروتکل از یک پدیده‌ی کوانتومی بهره می‌برد که در آن صرف وجود احتمال ارسال یک فوتون در سیستم تاثیرگذار است حتی وقتی ارسال نشده است. نیز از همین پدیده‌ی کوانتومی استفاده می‌کند، به طور مثال در که می‌توان در آن بمب‌های قابل انفجار را بدون منفجر کردن از بمب‌های بی‌خطر تشخیص داد. بجز در حالت غیرواقعی.
رمزنگاری کوانتومی نخستین بار توسط که استاد دانشگاه کلمبیا در نیویورک بود پیشنهاد شد که در اوایل دهه‌ی 1970 ایده‌ی رمزگذاری کوانتومی مذدوج را معرفی کرد. مقاله‌ی اولیه‌ی او با عنوان "رمزگذاری مذدوج" توسط IEEE Information Theory رد شد اما در سال 1983 در (SIGACT News (15:1 pp. 78–88, 1983 به چاپ رسید. در این مقاله او روش ذخیره یا ارسال دو پیام در قالب یک جفت مذدوج قابل اندازه‌گیری مانند پولاریزاسیون خطی یا دایره‌ای نور را شرح داد، به گونه‌ای که هر کدام و نه هردو به طور همزمان بتوانند دریافت و رمزگشایی شوند. به منظور شرح ایده‌اش او طرحی برای سندهای بانکی غیرقابل جعل ارائه کرد. پس از یک دهه، از متعلق به IBM و از دانشکاه مونترآل روشی برای ارتباط امن بر اساس فرضیه‌ی "جفت مذدوج قابل اندازه‌گیری" ویزنر ارائه کردند. در 1990، آرتور اکرت که در آن زمان دانشجوی دکترا در بود روشی متفاوت برای توزیع کلید کوانتومی مبتنی بر درهم‌تنیدگی کوانتومی طراحی کرد.
سیستم‌های تجاری فعلی اکثراً برای دولت‌ها و شرکت‌هایی با نیازمندی‌های امنیتی سطح بالا طراحی شده‌اند. در چنین مواقعی که روش‌های کلاسیک توزیع کلید تضمین مورد نظر را فراهم نمی‌کند، از توزیع کلید با استفاده از قاصد استفاده می‌شود. از مزیت های این روش نداشتن محدودیت فاصله‌ای ذاتی است، و با وجود زمان های انتقال طولانی نرخ انتقال می‌تواند به دلیل وجود حافظه‌های قابل حمل با ظرفیت بالا افزایش یابد. تمایز اصلی توزیع کلید کوانتومی در توانایی تشخیص دستبرد در کلید آن است، در حالی که در صورت استفاده از قاصد امنیت کلید نمی‌تواند اثبات یا آزموده شود. مزیت دیگر سیستم های توزیع کلید کوانتومی خودکار بودن آن‌ها است، و در عین حال در مقایسه با یک شبکه‌ی انسانی قاصد قابل اطمینان‌تر هستند و هزینه‌های عملیاتی آن‌ها کمتر است.
پروتکل سه مرحله‌ای کاک به عنوان روشی کاملاً کوانتومی برای ارتباط امن پیشنهاد شده است، بر خلاف توزیع کلید کوانتومی که در آن ارتباط رمزی از الگوریتم های کلاسیک استفاده می‌کند.
عواملی مانند هزینه‌ی بالای تجهیزات و نبودن خطری مشهود در استفاده از پروتکل های تبادل کلید فعلی مانع از استفاده‌ی گسترده از توزیع کلید کوانتومی خارج از کاربرد های امنیتی سطح بالا می‌شود. اما با وجود شبکه‌های فیبر نوری در بسیاری از کشورها، زیرساخت مناسب برای استفاده‌ی بیشتر فراهم است.
یک گروه تعیین استاندارد (ISG) در نهاد استانداردهای مخابراطی اروپا (ETSI) برای رفع مشکلات استاندارد سازی در رمزنگاری کوانتومی تشکیل شده است.
اس‌اچ‌ای۳ (الگوریتم امن درهم‌ساز ۳) آخرین عضو خانواده الگوریتم امن درهم‌ساز است که توسط مؤسسه ملی فناوری و استانداردها در ۵ اوت ۲۰۱۵ منتشر شد. ساختار داخلی اس‌اچ‌ای۳ با ساختار اس‌اچ‌ای-۱ و اس‌اچ‌ای-۲ که بیشتر شبیه ام‌دی۵ می‌باشند تفاوت دارد، اگرچه عضوی از همان سری استانداردها محسوب می‌شود.
اس‌اچ‌ای۳ یک زیر مجموعه از خانواده بدوی گسترده‌تر رمزنگاری Keccak() است، که توسط گیدو برتونی، جوان دیمِن، مایکل پیترز و ژیل وان آش طراحی شده و بر روی RadioGatún بنا شده‌اند. نویسندگان Keccak کاربردهای اضافی برای این تابع ارائه داده‌اند، که البته هنوز توسط NIST استاندارد نشده‌اند، از جمله رمز دنباله‌ای، یک سیستم رمزگذاری تأیید هویت، یک برنامه درهم‌ساز «درختی» برای درهم‌سازی سریعتر بر روی برخی معماری‌های خاص، Sections 5.1.2.1 (mentioning "tree mode"), 6.2 ("other features", mentioning authenticated encryption), and 7 (saying "extras" may be standardized in the future). و رمزهای AEAD کیاک(Keyak) و کِتجه(Ketje).
Keccak مبتنی بر یک رویکرد جدید به نام ساخت اسفنجی است. ساخت اسفنجی مبتنی بر یک تابع تصادفی گسترده تصادفی یا جایگشت تصادفی است و این امکان را می‌دهد که هر مقدار از داده وارد شود("جذب" در اصطلاحات اسفنجی)، و هر مقدار از داده بیرون انداخته شود("فشردن")، در حالی که با توجه به همه ورودی‌های قبلی به عنوان یک تابع نیمه تصادفی عمل می‌کند. این منجر به انعطاف‌پذیری زیادی می‌شود.
NIST در حال حاضر برنامه ای برای برداشت اس‌اچ‌ای۲ یا حذف آن از استاندارد اصلاح شده ایمن درهم‌سازی ندارد. هدف از اس‌اچ‌ای۳ این است که می‌تواند در برنامه‌های فعلی در صورت لزوم مستقیماً جایگزین اس‌اچ‌ای۲ شود و استحکام ابزار کلی الگوریتم درهم‌ساز NIST را به طرز قابل توجهی بهبود بخشد.
سازندگان الگوریتم‌های Keccak و توابع اس‌اچ‌ای۳ پیشنهاد می‌کنند از تابع سریعتر KangarooTwelve با پارامترهای تنظیم شده و حالت درهم‌سازی درختی جدید بدون سربار اضافی، برای پیام‌های با اندازه کوچک استفاده کنند.
الگوریتم Keccak اثری از گیدو برتونی، جوان دیمِن (که وی همچنین رمزنگاری Rijndael را با همکاری وینسنت رجمن طراحی کرده)، مایکل پیترز، و ژیل وان آش می‌باشد. این الگوریتم مبتنی بر طرح‌های درهم‌سازی قبلی PANAMA و RadioGatún است. PANAMA در سال ۱۹۹۸ توسط دیمِن و کریگ کلَپ طراحی شده‌است. RadioGatún، جانشین PANAMA، توسط پیترز، دیمِن و وان آش طراحی شد و در کارگاه NIST Hash در سال ۲۰۰۶ ارائه شد. کد منبع اجرای مرجع از طریق چشم پوشی CC0 به حوزه عمومی اختصاص داده شده است.KeccakReferenceAndOptimized-3.2.zip mainReference.c ""The Keccak sponge function, designed by Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche. For more information, feedback or questions, please refer to our website: http://keccak.noekeon.org/Implementation by the designers, hereby denoted as "the implementer". To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. https://creativecommons.org/publicdomain/zero/1.0/""
در سال ۲۰۰۶، NIST برای ایجاد یک استاندارد جدید درهم‌سازی، اس‌اچ‌ای۳، اقدام به سازماندهی رقابت تابع درهم‌سازی NIST کرد. اس‌اچ‌ای۳ قرار نیست که جایگزین اس‌اچ‌ای۲ شود، زیرا هیچ حمله قابل توجهی به اس‌اچ‌ای۲ نشان داده نشده‌است. به دلیل حملات موفقیت‌آمیز بر اس‌اچ‌ای۰، ام‌دی۵ واس‌اچ‌ای۱، NIST احساس نیاز به یک رمزنگاری درهم‌ساز جایگزین و متفاوت کرد، که SHA-3 نام گرفت.
پس از یک دوره تنظیم، پذیرش‌ها باید تا پایان سال ۲۰۰۸ ارسال می‌شدند. کچاک(Keccak) به عنوان یکی از ۵۱ نامزد پذیرفته شد. در ژانویه ۲۰۰۹، ۱۴ الگوریتم برای دور دوم انتخاب شد. کچاک به آخرین مرحله در دسامبر ۲۰۱۰ رسید.
در طول مسابقه، به شرکت کنندگان اجازه داده شد الگوریتم‌هایشان را «اصلاح» کنند تا مشکلاتی که کشف شده بود حل شوند. تغییراتی که در کچاک ایجاد شده‌است به این شرح است:
در تاریخ ۲ اکتبر ۲۰۱۲، کچاک به عنوان برنده مسابقه انتخاب شد.
در سال ۲۰۱۴، NIST پیش نویس FIPS 202 «استاندارد SHA-3: توابع هش مبتنی بر permutation و توابع خروجی قابل گسترش» را منتشر کرد. FIPS 202 در ۵ اوت ۲۰۱۵ تصویب شد.
در ۵ اوت ۲۰۱۵، NIST اعلام کرد که اس‌اچ‌ای۳ به یک استاندارد درهم‌سازی تبدیل شده‌است.
اس‌اچ‌ای۳ از ساخت اسفنجی استفاده می‌کند، که در آن داده‌ها «جذب» اسفنج می‌شوند، سپس نتیجهٔ آن‌ها به بیرون «فشرده» می‌شود. در مرحله جذب، بلوک‌های پیام XOR شده و به زیر مجموعه ای از حالت تبدیل می‌شوند، که بعداً با استفاده از یک تابع جایگشت formula_1 به صورت یک کل درمی‌آیند. در مرحله «فشردن»، بلوک‌های خروجی از همان زیر مجموعه حالت خوانده می‌شوند، و با استفاده از تابع تغییر حالت formula_1 تغییر می‌یابند. سایز بخشی از حالت که نوشته شده و خوانده شده‌است «نرخ» (مشخص شده با formula_3) نامیده می‌شود، و اندازه بخشی که توسط ورودی / خروجی دست نخورده می‌ماند، «ظرفیت» (مشخص شده با formula_4) نامیده می‌شود. ظرفیت تعیین‌کننده امنیت طرح است. حداکثر سطح امنیتی برابر نصف ظرفیت است.
با درنظر گرفتن یک رشته بیت ورودی formula_5 ، یک تابع پدینگ مانند formula_6 ، یک تابع جایگشت formula_1 که روی بلوک‌های بیتی با عرض formula_8 کار می‌کند، نرخ formula_3 و طول خروجی formula_10 ، ظرفیتی برابر با formula_11 و ساخت اسفنجی formula_12 را داریم، می‌دهد رشتهٔ بیتی formula_13 به طول formula_10، که به شرح زیر کار می‌کند:
این واقعیت که وضعیت داخلی "S" حاوی "c" بیت اضافی اطلاعات علاوه بر آنچه در خروجی "Z نوشته می‌شود است،" مانع از حملات طولانی مدت می‌شود که ام‌دی۵، اس‌اچ‌ای۱، اس‌اچ‌ای۲ و سایر درهم‌سازی‌های مبتنی بر ساخت و ساز مرکل-دامگارد مستعد آن هستند.
در اس‌اچ‌ای۳، حالت "S" شامل یک آرایه شامل کلمات "w" بیتی ("w=۶۴")، و درکل "b" = ۵ × ۵ × "w" = ۵ × ۵ × ۶۴ = ۱۶۰۰ بیت است. کچاک(Keccak) همچنین برای کلمه‌های توان دویی با اندازه‌های کوچکتر "w" و حتی با ۱ بیت (که درمجموع حالتی با ۲۵ بیت می‌سازد) هم تعریف شده‌است. اندازه‌های حالت کوچک می‌تواند برای آزمایش حملات تحلیل رمزنگاری مورد استفاده قرار گیرد، و اندازه‌های حالت متوسط (از ، با ۲۰۰ بیت، تا ، با ۸۰۰ بیت) در برنامه‌های کاربردی سبک استفاده می‌شود.
برای موارد اس‌اچ‌ای۳–۲۲۴، اس‌اچ‌ای۳–۲۵۶، اس‌اچ‌ای۳–۳۸۴، و اس‌اچ‌ای۳–۵۱۲، مقدار "r" از "d بیشتر است"، بنابراین در مرحله فشردن نیازی به جایگشت‌های بلوکی اضافی نیست. "d" بیت اول از وضعیت، همان درهم‌سازی مورد نظر ما می‌باشد. با این حال، SHAKE-۱۲۸ و SHAKE-۲۵۶ امکان خروجی با طول دلخواه را به ما می‌دهند، که در برنامه‌هایی مانند رمزگذاری با پرکردن نامتقارن بهینه مفید است.
برای اطمینان از اینکه پیام را می‌توان به بلوک‌های "r" بیتی مساوی تقسیم کرد، لایه‌گذاری لازم است. اس‌اچ‌ای۳ از الگوی ۱*۱۰ در عملکرد لایه‌گذاری خود استفاده می‌کند: یک بیتِ ۱، به‌دنبال آن صفر یا بیشتر بیتِ ۰ (حداکثر تا) و یک بیتِ ۱ نهایی.
حداکثر بیت صفر زمانی رخ می‌دهد که آخرین بلوک پیام بیت طول داشته باشد. دراین‌حالت بلوک دیگری پس از بیتِ ۱ اولیه اضافه می‌شود که حاوی بیتِ صفر قبل از بیتِ ۱ نهایی است.
دو بیتِ ۱، حتی اگر طول پیام در حال حاضر بر "r" بخش‌پذیر باشد، اضافه می‌شوند. در این حالت، یک بلوک دیگر به پیام اضافه می‌شود که حاوی یک بیتِ ۱ است، به دنبال آن یک بلوک تایی بیتِ صفر و یک بیتِ ۱ دیگر می‌باشد. این کار لازم است برای اینکه که یک پیام که طولش بر "r" بخش پذیر است و به چیزی که شبیه لایه‌گذاری به نظر می‌رسد ختم می‌شود، همان درهم‌سازی را تولید نکند که یک پیام دیگری که آن بیت‌ها را ندارد تولید می‌کند.
بیتِ ۱ اولیه برای این نیاز است که پیام‌هایی که فقط چند بیتِ ۰ اضافی آخرشان متمایز است، یک درهم‌سازی مشابه ایجاد نکنند.
موقعیت بیتِ ۱ نهایی نشان می‌دهد که از کدام نرخ "r" استفاده شده‌است (لایه‌گذاری چند نرخی)، که برای اثبات امنیت لازم است تا برای انواع مختلف درهم‌سازی کار کند. بدون آن، درهم‌سازی‌های مختلف از یک پیام کوتاه یکسان می‌تواند دارای برش یکسانی شود.
تبدیل بلوکی "f"، که Keccak-f [1600] برای اس‌اچ‌ای۳ است، جایگشتی است که از عملیات XOR، AND و NOT استفاده می‌کند و برای پیاده‌سازی آسان در هردوی نرم‌افزار و سخت‌افزار طراحی شده‌است.
این تبدیل برای هر طول کلمه‌ای که توانی از دو باشد، تعریف شده‌است. نسخه اصلی اس‌اچ‌ای۳، از کلمات ۶۴ بیتی، استفاده می‌کند.
آرایهٔ حالت می‌تواند به صورت یک آرایهٔ بیتی در نظر گرفته شود. فرض کنید برابر بیتِ ام از ورودی باشد، که در یک مدل Little Endian از قرارداد شمارش بیتی و اندیس گذاری ردیف-اول فرض شده‌است، یعنی شماره ردیف، شماره ستون و شماره بیت را مشخص می‌کند.
اندیس گذاری حسابی برای دو بعد اول، در پیمانه ۵ و برای بعد سوم در پیمانه w انجام می‌شود.
تابع جایگشت بلوکیِ پایه، متشکل از دورِ پنج مرحله‌ای است:
سرعت درهم‌سازی پیام‌های طولانی توسط اس‌اچ‌ای۳، بسیار تحت تأثیر محاسبهٔ "f" = Keccak-f [۱۶۰۰] و XOR کردن "S" با مقدار گسترش‌یافتهٔ "P" ، که یک عملیات روی "b" = ۱۶۰۰ بیت است، می‌باشد. با این حال، از آنجایی که c بیت آخر مقدار گسترش‌یافتهٔ "P " درهرصورت صفر هستند، و XOR با ۰ یک NOP است، کافی است عملیات XOR را فقط برای r بیت انجام دهیم"(r" = ۱۶۰۰–۲ × ۲۲۴ = ۱۱۵۲ بیت برای اس‌اچ‌ای۳–۲۲۴، ۱۰۸۸ بیت برای اس‌اچ‌ای۳–۲۵۶، ۸۳۲ بیت برای اس‌اچ‌ای۳–۳۸۴ و ۵۷۶ بیت برای اس‌اچ‌ای۳–۵۱۲). هرچه "r" پایین‌تر باشد (و برعکس، هرچه "c" = "b" - "r" = 1600 - "r" بالاتر باشد)، درهم‌سازی ناکارآمدتر و پرهزینه‌تر اما ایمن تر می‌شود، زیرا تعداد بیت کمتری از پیام می‌تواند با حالت XOR شود (یک عملیات سریع) قبل از هر بار استفاده از "f" که از نظر محاسباتی پرهزینه است. نویسندگان سرعت‌های زیر را برای اجرای پیاده‌سازی‌های نرم‌افزاری Keccak-f [1600] به اضافه XOR کردن ۱۰۲۴بیت گزارش می‌دهند، که تقریباً با اس‌اچ‌ای۳–۲۵۶ مطابقت دارد:
برنشتاین به‌طور دقیق برای اس‌اچ‌ای۳–۲۵۶ روی x۸۶–۶۴، عدد ۱۱٫۷–۱۲٫۲۵ cpb را بسته به CPU اندازه‌گیری کرده‌است. اس‌اچ‌ای۳ به دلیل کند بودن در معماری‌های مجموعه دستورالعمل (CPU) که دستورالعمل خاصی برای محاسبه سریعتر توابع Keccak ندارند، مورد انتقاد قرار گرفته‌است - اس‌اچ‌ای۲–۵۱۲ بیش از دو برابر سریعتر از اس‌اچ‌ای۳، و اس‌اچ‌ای۱ بیش از سه برابر سریعتر از آن روی یک پردازنده Intel Skylake با فرکانس کلاک ۳٫۲ گیگاهرتز اجرا می‌شود. نویسندگان با پیشنهاد استفاده از SHAKE۱۲۸ و SHAKE۲۵۶ به جای اس‌اچ‌ای۳–۲۵۶ و اس‌اچ‌ای۳–۵۱۲، به قیمت کاهش یافتن نصف مقاومت‌پیش‌نمایش (اما با همان مقاومت برخورد)، به این انتقاد واکنش نشان داده‌اند. با این کار، عملکرد برابر می‌شود با اس‌اچ‌ای۲–۲۵۶ و اس‌اچ‌ای۲–۵۱۲.
با این حال، از نظر پیاده‌سازی سخت‌افزاری، اس‌اچ‌ای۳ به طرز ویژه‌ای سریعتر از سایر فینالیست‌ها است، Keccak is second only to Luffa, which did not advance to the final round. و همچنین سریع تر از اس‌اچ‌ای۲ و اس‌اچ‌ای۱.
معماری‌های ARMv8ARM corporation, ARM architecture reference manual ARMv8, for ARMv8-A architecture profile, document ARM DDI 0487C.a (ID121917), https://www.arm.com و IBM s۳۹۰x در حال حاضر (از سال ۲۰۱۸) شامل دستورالعمل‌های ویژه ای هستند که الگوریتم‌های Keccak را قادر می‌سازند سریعتر اجرا شوند.
استاندارد NIST نمونه‌های زیر را برای پیام "M" و طول خروجی "d نشان می‌دهد":
با تعاریف زیر
توجه داشته باشید که پسوندهای اضافه شده به صورت رشته‌های بیتی نوشته می‌شوند، نه رقم‌های مبنای ۱۶.
نمونه‌های اس‌اچ‌ای۳ جایگزین قطره‌ای برای اس‌اچ‌ای۲ هستند، با همان ادعاهای امنیتی یکسان. نمونه‌های SHAKE به اصطلاح توابع خروجی قابل گسترش XOF گفته می‌شوند. به عنوان مثال، SHAKE128(M، ۲۵۶) می‌تواند به عنوان یک تابع درهم‌سازی با طول ۲۵۶ بیت و امنیت کلی ۱۲۸بیتی استفاده شود.
توجه داشته باشید که همه نمونه‌ها، تعدادی بیت به پیام اضافه می‌کنند، که سمت راست‌ترین آنها نشان‌دهندهٔ پسوند جدایی دامنه است. هدف از این کار این است که اطمینان حاصل شود نمی‌توان پیام‌هایی با همان خروجی درهم‌سازی‌شده را برای کاربردهای مختلف برنامه درهم‌سازی Keccak ساخت. پسوندهای جدایی دامنه زیر موجودند:
RawSHAKE پایه ای است برای رمزگذاری ساکورا جهت درهم‌سازی درختی، که هنوز استاندارد نشده‌است. با این حال، پسوند SHAKE با دقت انتخاب شده‌است تا این‌که سازگار با نسخه‌های بعدی ساکورا باشد. قبل از اعمال RawSHAKE، Sakura بیت ۰ را برای یک هاپ زنجیره‌ای یا بیت ۱ را برای یک پیام، سپس ۱۰*۰ را برای یک گره غیرنهایی (داخلی) یا ۱ را برای یک گره نهایی، اضافه می‌کند. درهم‌سازی متوالی مربوط به درخت هاپ با یک گره پیام است، بدین معنی که ۱۱ قبل از اعمال RawSHAKE به پیام اضافه می‌شود؛ بنابراین، SHAKE XOFs مقدار ۱۱۱۱ را به پیام اضافه می‌کند، یعنی ۱ برای پیام، ۱ برای گره نهایی و ۱۱ برای پسوند جدایی دامنه RawSHAKE.
از آنجا که لایه‌گذاری ۱۰*۱ همیشه حداقل دو بیت را اضافه می‌کند، در کتابخانه‌های مرتب با بایت همیشه شش بیت صفر استفاده نشده وجود دارد؛ بنابراین، این بیت‌های اضافی هرگز پیام لایه‌گذاری را طولانی‌تر نمی‌کنند.
در دسامبر سال ۲۰۱۶، NIST یک سند جدید با نام NIST SP.800-185 منتشر کردSHA-3 Derived Functions: cSHAKE, KMAC, TupleHash and ParallelHash که عملکردهای اضافی مشتق شده اس‌اچ‌ای۳ را شرح می‌دهد:
در سال ۲۰۱۶، همان تیمی که توابع اس‌اچ‌ای۳ و الگوریتم Keccak را ایجاد کرده بودند، یک جایگزین سریعتر با تعداد دورهای کاهش‌یافته (کاهش‌یافته به ۱۲ و ۱۴دور، از ۲۴ دور در اس‌اچ‌ای۳) که به دلیل استفاده از درهم‌سازی درختی، می‌تواند از قابلیت اجرای موازی بهره بگیرد، ارائه کردند: KangarooTwelve و MarsupilamiFourteen.
این توابع با ParallelHash، تابع درهم‌سازی استاندارشده FIPS باقابلیت موازی سازی و مبتنی بر Keccak، از نظر موازی‌سازی متفاوت است، زیرا در پیام‌های با اندازه کوچک سریعتر از ParallelHash هستند.
تعداد دور کاهش یافته با تلاش بسیار زیاد تحلیلی رمزنگاری متمرکز بر Keccak که نتوانست در حمله عملیاتی به هیچ الگوریتم Keccak با تعداد دور نزدیک به دوازده ایجاد کند، تصدیق می‌شود. این الگوریتم‌های با سرعت بالاتر جزئی از اس‌اچ‌ای۳ نیستند (زیرا آنها بعداً توسعه یافته‌اند)، و بنابراین سازگار با FIPS نیستند. اما آنها به همان اندازه توابع اس‌اچ‌ای۳ ایمن هستند، زیرا آنها از همان جایگشت Keccak استفاده می‌کنند و هیچ حمله ای به Keccak ۱۲ دوری نشده‌است.
KangarooTwelve یک نسخه با تعداد دور کاهش یافته (از ۲۴ به ۱۲ دور) با عملکرد بالاتر از Keccak است که ادعا می‌کند ۱۲۸ بیت امنیت دارد در حالی که عملکردی برابر با ۰٫۵۵ چرخه در هر بایت دارد. این الگوریتم یک پیش نویس IETF RFC است.
MarsupilamiFourteen، نسخهٔ اندکی تغییریافتهٔ KangarooTwelve، از ۱۴ دور جایگشت Keccak استفاده می‌کند و ادعا می‌کند ۲۵۶ بیت امنیت دارد. توجه داشته باشید که امنیت ۲۵۶ بیتی در عمل مفیدتر از امنیت ۱۲۸ بیتی نیست، اما ممکن است طبق برخی استانداردها مورد نیاز باشد. درحال حاضر ۱۲۸ بیت برای پیروزشدن بر حملات brute-force بر روی سخت‌افزار فعلی کافی است، بنابراین داشتن امنیت ۲۵۶ بیتی ارزش عملی نمی‌افزاید، مگر اینکه کاربر نگران پیشرفتهای چشمگیر سرعت کامپیوترهای "کلاسیک" باشد. برای مقاومت در برابر رایانه‌های "کوانتومی"، به زیر مراجعه کنید.
KangarooTwelve و MarsupilamiFourteen، مشابه SHAKE، توابع با قابلیت گسنرش خروجی هستند، بنابراین آنها برای یک پیام مشترک با طول خروجی متفاوت، خروجی نزدیک به هم تولید می‌کنند (خروجی طولانی‌تر تعمیم‌یافتهٔ خروجی کوتاه‌تر می‌باشد). توابع درهم‌ساز مانند اس‌اچ‌ای۳ یا ParallelHash (به جز انواع مختلف XOF) چنین خاصیتی از خود نشان نمی‌دهند.
در سال ۲۰۱۶، تیم Keccak یک ساخت و ساز مختلف به نام ساخت و ساز فارفاله، و Kravatte، یک نمونه از فارفاله که از جایگشت Keccak-p استفاده می‌کند، منتشر کردند، به‌علاوهٔ دو الگوریتم رمزگذاری معتبر
Kravatte-SANE و Kravatte-SANSE
یک نتیجه کلی (الگوریتم گرور) وجود دارد که کامپیوترهای کوانتومی می‌توانند یک حمله پیش‌نمایش ساختار یافته را در formula_20 انجام دهند، در حالی که یک حمله brute-force کلاسیک به 2"d" نیاز دارد. یک حمله ساختار یافته پیش‌نمایش نشانگر یک حمله پیش‌نمایش دوم و در نتیجه یک حمله تصادم است. یک کامپیوتر کوانتومی همچنین می‌تواند یک حمله روز تولد را در formula_21 (اگرچه این مورد اختلاف است) انجام دهد، درنتیجه مقاومت در برابر تصادم را ازبین ببرد. با توجه به این که حداکثر قدرت می‌تواند formula_22 باشد، کران‌های بالای زیر بر روی امنیت کوانتومی اس‌اچ‌ای۳ حاصل می‌شوند:
نشان داده شده‌است که ساخت و ساز مرکل-دامگورد، که در اس‌اچ‌ای۲ از آن استفاده می‌شود، در حال فروپاشی است و به تبع آن، مقاوم در برابر تصادم کوانتومی است، اما برای ساخت اسفنج مورد استفاده در اس‌اچ‌ای۳، نویسندگان فقط برای این مورد که تابع بلوکی "f" باهزینه‌کم وارون‌پذیر نیست اثبات کرده‌اند. Keccak-f [۱۶۰۰]، ولی، باهزینه‌کم وارون‌پذیر است و بنابراین اثبات آنها کاربردی نیست.
در فوریه ۲۰۱۳در کنفرانس RSA، و سپس در اوت ۲۰۱۳ در CHES، NIST اعلام کرد که مقادیر مختلفی را برای ظرفیت، که پارامتر امنیتی است، برای استاندارد اس‌اچ‌ای۳، در مقایسه با ارسال اولیه، انتخاب می‌کنند. این تغییرات باعث سردرگمی شد.
مسابقات توابع درهم‌سازی، خواستار توابع درهم‌ساز شد که حداقل به همان اندازه نمونه‌های اس‌اچ‌ای۲ امنیت داشته باشند. به این معنی که یک خروجی d بیتی باید مقاومت d/۲ بیتی درمقابل حملات تصادم و مقاومت d بیتی در برابر حملات پیش‌نمایش داشته باشد، مقدار حداکثری که برای d بیت از خروجی دست یافتنی است. اثبات امنیتی Keccak امکان تنظیم سطح امنیتی را مبتنی بر «ظرفیت» "c" می‌دهد، که مقاومت "c"/۲ بیتی در برابر هردو حمله تصادم و حمله پیش‌نمایش فراهم می‌کند. جهت برآورده ساختن قوانین اصلی رقابت، نویسندگان کچاک "c" = "۲d را پیشنهاد کردند". تغییر اعلام شده برای پذیرش همان امنیت "d"/۲ بیتی برای همه اشکال حمله و استانداردسازی "c" = "d بود". این می‌توانست با فراهم کردن امکان درهم‌سازی d بیت اضافه‌تر از ورودی درهربار تکرار چرخه، سرعت Keccak را بالا ببرد؛ ولی، توابع درهم‌سازی دیگر نمی‌توانستند جایگزین‌های قطره‌ای با همان مقاومت پیش‌نمایشی اس‌اچ‌ای۲ باشند. با این کار مقاومت پیش‌نمایشی به نصف کاهش می‌یافت، باعث می‌شد در برابر پیشرفت‌های محاسبات کوانتومی آسیب‌پذیر شود، که به‌طور مؤثری آن را دوباره به نصف کاهش می‌داد.
در سپتامبر ۲۰۱۳، دنیل جی برنشتاین در لیست پستی انجمن درهم‌سازی NIST پیشنهاد کرد که امنیت را با رساندن ظرفیت به ۵۷۶ بیت، که در ابتدا به عنوان پیش فرض کچاک پیشنهاد شده بود، و علاوه بر این در مشخصات فنی اس‌اچ‌ای۳ گنجانده نشده بود، تقویت کنند. این کار می‌توانست حداقل یک اس‌اچ‌ای۳–۲۲۴ و اس‌اچ‌ای۳–۲۵۶ با همان مقاومت پیش‌نمایشی به اندازه پیشینیان اس‌اچ‌ای۲ خود فراهم کند، اما اس‌اچ‌ای۳–۳۸۴ و اس‌اچ‌ای۳–۵۱۲ مقاومت پیش‌نمایشی بسیار کمتری نسبت به پیشینیان اس‌اچ‌ای۲ خود پیدا می‌کردند. در اواخر ماه سپتامبر، تیم کچاک با بیان این‌که آن‌ها قبلاً امنیت ۱۲۸ بیتی با تعیین را به عنوان یک گزینه در پروپوزال اس‌اچ‌ای۳ خود پیشنهاد داده‌بودند، پاسخ داد. اگرچه از نظر آنها کاهش ظرفیت قابل توجیه بود، با توجه به پاسخ منفی، آنها پیشنهاد کردند ظرفیت به "c" = ۵۱۲ بیت برای همه نمونه‌ها افزایش یابد. این مقدار ظرفیت به همان اندازهٔ هر استاندارد قبلی با حداکثر سطح امنیتی ۲۵۶ بیتی بود، و در عین حال بازده مناسبی هم داشت، اما نه به اندازهٔ مقاومت پیش‌نمایشی 384- / 512 بیتی ارائه شده توسط اس‌اچ‌ای۲–۳۸۴ و اس‌اچ‌ای۲–۵۱۲. نویسندگان سعی کردند با این ادعا که "ادعاکردن یا اعتماد بر سطح قدرت امنیتی بالای ۲۵۶ بیت بی معنی است" خود را توجیه کنند.
در اوایل اکتبر ۲۰۱۳، بروس اشنیر با انتقاد از تصمیم NIST مبنی بر تأثیرات مضر آن بر پذیرش الگوریتم، گفت:
پل کرولی، رمزنگار و توسعه دهنده ارشد در یک شرکت مستقل توسعه نرم‌افزار، با گفتن این‌که کچاک قرار است قابل تنظیم باشد و هیچ دلیلی بر وجود سطوح امنیتی مختلف درون یک اصل اولیه وجود ندارد، حمایت خود از این تصمیم را بیان کرد. وی همچنین اضافه کرد:
برخی گمان‌ها نیز مبنی بر ایجاد تغییرات داخلی در کچاک وجود داشت. تیم کچاک این موضوع را روشن کرد و اظهار داشت که پیشنهاد NIST برای اس‌اچ‌ای۳ زیرمجموعه ای از خانواده کچاک است که برای آن بشود با استفاده از کد مرجع ارسال شده به مسابقه، بردارهای تست تولید کرد و این پیشنهاد نتیجه یک سری بحث‌ها بین آنها و تیم درهم‌سازی NIST بود. همچنین، بروس اشنایر اظهارات قبلی خود را اصلاح کرد و گفت:
در پاسخ به این بحث و گفتگو، در نوامبر ۲۰۱۳ جان کلسی از NIST پیشنهاد بازگشت به طرح اصلی برای همه نمونه‌های جایگزینی قطره ای اس‌اچ‌ای۲ را داد. این بازبینی در پیش نویس آوریل ۲۰۱۴ تأیید شد. این پیشنهاد در استاندارد انتشار نهایی در اوت ۲۰۱۵ پیاده‌سازی شد.
فرم‌های با ظرفیت کاهش‌یافته با عنوان SHAKE۱۲۸ و SHAKE۲۵۶ منتشر شدند، که عدد آن‌ها سطح امنیتی را نشان می‌دهد و تعداد بیت‌های خروجی متغیر است، اما باید دو برابر مقاومت موردنیاز در برابر تصادم باشد.
مقادیر درهم‌سازی زیر از NIST.gov است:
تغییر یک بیت واحد باعث می‌شود که هر بیت در خروجی با احتمال ۵۰٪ تغییر کند که یک اثر بهمنی را نشان می‌دهد:
در جدول زیر، "حالت داخلی" به معنی تعداد بیت‌هایی است که به بلوک بعدی منتقل می‌شوند.
در زیر لیستی از کتابخانه‌های رمزنگاری که از اس‌اچ‌ای۳ پشتیبانی می‌کنند آمده‌است: