هش – هش رمزنگاری بدون برخورد بدون دردسر؟

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

آیا چنین هش رمزنگاری وجود دارد؟

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

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

رمزگذاری – چرا کلید خصوصی آلفا عددی است

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

به شما این امکان را می دهد که به عنوان مثال آنها را به صورت آنلاین ارسال کنید، آنها را در یک ویرایشگر متن و غیره مشاهده کنید، در حالی که شما نمیتوانید با فرم باینری خود به درستی کار کنید.

هنگامی که کلید ها استفاده می شوند، دوباره باینری و ذخیره شده در حافظه (RAM)