آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

hash code ؟؟

!M!KT  10 سال پیش  10 سال پیش
+5 0

سلام 

یه سوال hash code چیه ::

 

 ممنون میشم بخاطر راهنمایی تون.

0 0
A way of getting a number from an object so it can be stored in a Hashtable. In Java a hash code can be any integer, and each object type is responsible for generating its own. Lookup the "hashCode" method of Object. (10 سال پیش)
0 0
لینک (10 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
Rabbit  10 سال پیش
+1 0

هر فایلی یک hash code مخصوص به خودش رو داره. هر رشته‌ای هر چیزی رو میشه به یک هش کد تبدیل کرد و هیچ دو hashی شبیه هم نیستن. و اینکه وقتی hash code از یک رشته ساخته شد قابل بازگشت نیست. یعنی از hash code نمیشه رشته اولیه رو فهمید.

من با سه تا از قابلیت‌های hash آشنا هستم:

1. برای جستجو سریعتر توی databaseها کاری که میکنه indexing داده ها و دسترسی سریعتر به اونهاست. اینکه دقیقا چه اتفاقی میفته خودم هم نمیدونم.

2. توی اینترنت وقتی یک بسته داده ارسال میشه ممکنه یه بخشی از اون خراب شه. روی داده نویز بیفته و یک صفری یک شه. حالا طرفی که بسته اطلاعاتی رو گرفته از کجا بفهمه این داده خراب شده؟ به اینصورت که طرفی که داره میفرسته hash code داده رو محاسبه میکنه و اون رو به انتهای داده اضافه میکنه. حالا وقتی اینور اطلاعات رو گرفت یکبار دیگه hash code رو حساب میکنه و با مقداری که فرستنده اعلام کرده مقایسه میکنه. از اونجایی که hash منحصر بفرده اگه داده کوچکترین تغییری کرده باشه کد ها فرق میکنن و گیرنده متوجه خطا در ارسال میشه و دوباره درخواست میده.

3. نگهداری رمز عبور. دیدی وقتی رمز عبور یک سایتی مثلا گوگل رو فراموش میکنیم، بعد از طی مراحل امنیتی جای اینکه رمز قبلیمون رو برامون بفرسته ازمون میخواد رمز رو عوض کنیم؟ دلیلش این هست که خودشم نمیدونه! چون که وقتی یک رمزی رو انتخاب میکنیم این رمز تبدیل به یک hash code میشه و ذخیره میشه، حالا وقتی شما رمزتون رو وارد میکنید این رمز ورودی دوباره تبدیل به یک hash میشه و با مقدار ذخیره شده مقایسه میشه، اگر یکی بود اجازه ورود داده میشه. دلیل این کار هم امنیت هست مشخصا. اگر رمزها لو بره هم هکرها نمیتونن به مقادیر واقعی پی ببرن.


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .