មុខងារហាសកូដសម្ងាត់

និយមន័យអនុគមន៍ហាម៉ែត្រគ្រីប

មុខងារហាស្មៅលេខកូដសម្ងាត់គឺជាប្រភេទនៃក្បួនដោះស្រាយដែលអាចដំណើរការនៅលើទិន្នន័យមួយដូចជា ឯកសារ ផ្ទាល់ខ្លួនឬពាក្យសម្ងាត់ដើម្បីបង្កើតតម្លៃដែលហៅថាឆេកសាំ។

ការប្រើសំខាន់នៃអនុគមន៍ហ្រ្វូតុក្រាហ្វិចគឺដើម្បីផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវនៃបំណែកទិន្នន័យមួយ។ ឯកសារពីរអាចត្រូវបានធានាថាមានដូចគ្នាបេះបិទប្រសិនបើឆេកសាំដែលបានមកពីឯកសារនិមួយៗដោយប្រើមុខងារហាស្មូក្រាហ្វិចដូចគ្នានឹងដូចគ្នា។

មុខងារ ប្រហាក់ប្រហែល មួយចំនួនដែលប្រើជាទូទៅគឺប្រព័ន្ធ MD5 និង SHA-1 ប៉ុន្តែមានជាច្រើនទៀត។

ចំណាំ: មុខងារហាហារគ្រីបជារឿយៗត្រូវបានសំដៅជាទម្រង់ ហាស្មៅ តែវាមិនត្រឹមត្រូវតាមលក្ខណៈបច្ចេកទេស។ មុខងារហាសគឺជាពាក្យទូទៅដែលប្រើជាទូទៅដើម្បីបញ្ចូលអនុគមន៍ក្រាហ្វិចឌីជីថលរួមជាមួយប្រភេទផ្សេងទៀតនៃក្បួនដោះស្រាយដូចជាការត្រួតពិនិត្យពន្យាពេលរង្វិលជុំ។

មុខងារហាមឃាត់កូដសម្ងាត់: ករណីការប្រើប្រាស់

ចូរនិយាយថាអ្នកទាញយក កំណែចុងក្រោយបំផុតនៃកម្មវិធីរុករក Firefox ។ ដោយហេតុផលអ្វីក៏ដោយអ្នកត្រូវទាញយកវាពីគេហទំព័រក្រៅពី Mozilla ។ មិនត្រូវបានបង្ហោះនៅលើវែបសាយត៍ដែលអ្នកបានជឿទុកចិត្តនោះអ្នកចង់ធ្វើឱ្យប្រាកដថាឯកសារដំឡើងដែលអ្នកបានទាញយកគ្រាន់តែជារឿងដូចគ្នាដែល Mozilla ផ្តល់ជូន។

ដោយប្រើការ គណនាស្គ្រីប អ្នកគណនាឆេកសាំដោយប្រើអនុគមន៍ហ្រ្គីតកូដជាក់លាក់ (និយាយ SHA-2) ហើយបន្ទាប់មកប្រៀបធៀបទៅនឹងអ្វីដែលបានបោះពុម្ពផ្សាយនៅលើវែបសាយត៍របស់ Mozilla ។

ប្រសិនបើពួកគេស្មើគ្នានោះអ្នកអាចប្រាកដថាការទាញយកដែលអ្នកមានគឺ Mozilla មួយដែលអ្នកចង់បាន។

សូមមើល តើឆេកស៊ិកគឺជាអ្វី? សម្រាប់ព័ត៌មានបន្ថែមស្តីពីការគណនាពិសេសទាំងនេះបូកបន្ថែមឧទាហរណ៍អំពីការប្រើប្រាស់ឆែកសេនដើម្បីឱ្យប្រាកដថាឯកសារដែលអ្នកទាញយកពិតជាអ្វីដែលអ្នករំពឹងទុក។

មុខងារហាមសម្ងាត់អាចត្រូវបានត្រឡប់វិញទេ?

មុខងារហាស្មូរគ្រីបត្រូវបានបង្កើតឡើងដើម្បីទប់ស្កាត់សមត្ថភាពក្នុងការបញ្ច្រាសឆរឆាយដែលពួកគេបង្កើតត្រឡប់មកវិញទៅក្នុងអត្ថបទដើម។

ទោះបីជាយ៉ាងណាក៏ដោយទោះបីជាវាស្ទើរតែមិនអាចបញ្ច្រាសបានក៏ដោយវាមិនមានន័យថាពួកវាត្រូវបានធានា 100% ដើម្បីការពារទិន្នន័យនោះទេ។

អ្វីមួយដែលគេហៅថា តារាងឥន្ទធនូ អាចត្រូវបានគេប្រើដើម្បីរកមើលច្បាប់ចំលងឆែកយ៉ាងរហ័ស។ តារាងឥន្ទធនូគឺជាមូលដ្ឋានគ្រឹះនៃវចនានុក្រមដែលរាយរាប់ពាន់រាប់លានរាប់ពាន់ឬទាំងនេះរាប់បញ្ចូលទាំងតម្លៃអត្ថបទធម្មតា។

ខណៈពេលដែលនេះមិនត្រូវបានបច្ចេកទេស បញ្ច្រាស ក្បួនដោះស្រាយកូដហ្រ្គេនធ៍ធ៍, វាអាចជាផងដែរដោយសារតែវាជាការងាយស្រួលណាស់ដើម្បីធ្វើ។ តាមការពិតដោយសារមិនមានតារាងឥន្ទធនូអាចរាយបញ្ជីរាល់ checksum ដែលមាននៅក្នុងនោះទេពួកគេគ្រាន់តែជា "មានប្រយោជន៍" សម្រាប់ឃ្លាសាមញ្ញដូចជាពាក្យសម្ងាត់ដែលខ្សោយ។

នេះជាកំណែសាមញ្ញនៃតារាងឥន្ទធនូដើម្បីបង្ហាញពីរបៀបដែលវានឹងដំណើរការនៅពេលប្រើមុខងារហាស្ម៉ីក្រាហ្វិច SHA-1:

អត្ថបទ​ធម្មតា SHA-1 Checksum
12345 8cb2237d0679ca88db6464eac60da96345513964
password1 e38ad214943daad1d64c102faec29de4afe9da3d
ilovemydog a25fb3505406c9ac761c8428692fbf5d5ddf1316
Jenny400 7d5eb0173008fe55275d12e9629eef8bdb408c1f
dallas1984 c1e6d80f4c7c087ad29d2c0dc3e059fc919da2

ចំពោះតម្លៃទាំងនេះត្រូវបានកំណត់ដោយប្រើឆែកនេះនឹងតម្រូវឱ្យពួក Hacker យល់ថាតើក្បួនដោះស្រាយកូដសញ្ញាសម្ងាត់ត្រូវបានគេប្រើដើម្បីបង្កើតវា។

ចំពោះការការពារបន្ថែមគេហទំព័រមួយចំនួនដែលរក្សាទុកពាក្យសម្ងាត់អ្នកប្រើអនុវត្តមុខងារបន្ថែមទៅក្បួនដោះស្រាយកូដហ្រ្គេតឌីក្រូហ្វិកបន្ទាប់ពីតម្លៃត្រូវបានបង្កើតប៉ុន្តែមុនពេលវាត្រូវបានរក្សាទុក។

នេះបង្កើតតម្លៃថ្មីមួយដែលមានតែម៉ាស៊ីនបម្រើបណ្ដាញប៉ុណ្ណោះដែលយល់និងមិនត្រូវនឹងឆេកសាំដើម។

ឧទាហរណ៍បន្ទាប់ពីបញ្ចូលពាក្យសម្ងាត់និងឆេកសាំរួចវាអាចត្រូវបានបំបែកជាច្រើនផ្នែកនិងរៀបចំឡើងវិញមុនពេលវាត្រូវបានរក្សាទុកក្នុងមូលដ្ឋានទិន្នន័យពាក្យសម្ងាត់ឬតួអក្សរមួយចំនួនអាចត្រូវបានប្ដូរជាមួយអ្នកដទៃ។ នៅពេលអ្នកប្រើព្យាយាមផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវនៅពេលក្រោយដែលពួកគេចូលប្រព័ន្ធនោះមុខងារបន្ថែមនេះនឹងត្រូវបានបញ្ច្រាសដោយម៉ាស៊ីនមេនិងឆែកឆៅដើមដែលត្រូវបានបង្កើតម្តងទៀតដើម្បីបញ្ជាក់ថាពាក្យសម្ងាត់របស់អ្នកប្រើមានសុពលភាព។

ការធ្វើបែបនេះជួយកំណត់នូវប្រយោជន៍នៃការ hack ដែលឆែកទាំងអស់ត្រូវបានគេលួច។

ជាថ្មីម្តងទៀតគំនិតនៅទីនេះគឺដើម្បីអនុវត្តមុខងារដែលមិនស្គាល់ដូច្នេះប្រសិនបើ hacker ដឹងក្បួនដោះស្រាយកូដហ្រ្គេមតូហ្រ្គេតប៉ុន្តែមិនមានលក្ខណៈផ្ទាល់ខ្លួនទេនោះការដឹងថាឆេកសាំឆេកសាំគឺមិនមានប្រយោជន៍ទេ។

ពាក្យសម្ងាត់និងមុខងារកូដសម្ងាត់

ស្រដៀងគ្នានឹងតុឥន្ទធនូមួយដែរគឺថាតើឃ្លាំងទិន្នន័យរក្សាទុកនូវពាក្យសម្ងាត់របស់អ្នកប្រើ។ នៅពេលដែលពាក្យសម្ងាត់របស់អ្នកត្រូវបានបញ្ចូលឆេកសាំត្រូវបានបង្កើតនិងបានប្រៀបធៀបទៅនឹងទិន្នន័យដែលមានឈ្មោះអ្នកប្រើ។ អ្នកនឹងទទួលបានការចូលប្រើប្រសិនបើទាំងពីរគឺដូចគ្នា។

ដែលបានផ្ដល់ឱ្យថាមុខងារហួចកូដសម្ងាត់បង្កើតឆែកសេនដែលមិនអាចផ្ទៀងផ្ទាត់បានតើវាមានន័យថាអ្នកអាចធ្វើឱ្យពាក្យសម្ងាត់របស់អ្នកសាមញ្ញដូចជា 12345 ជំនួសឱ្យ 12 @ 34 $ 5 ដោយគ្រាន់តែឆែកមើលដោយខ្លួនឯងមិនអាចយល់បានទេ? វាពិតជា មិន មានហើយនេះហើយជាមូលហេតុដែល ...

ដូចដែលអ្នកអាចមើលឃើញពាក្យសម្ងាត់ទាំងពីរនេះមិនអាចបកស្រាយបានដោយគ្រាន់គ្រាន់តែរកមើលនៅឆេកសាំ។

MD5 សម្រាប់ 12345: 827ccb0eea8a706c4c34a16891f84e7b

MD5 សម្រាប់ 12 @ 34 $ 5: a4d3cc004f487b18b2ccd4853053818b

ដូច្នេះ, នៅ glance ដំបូងអ្នកប្រហែលជាគិតថាវាជាការល្អក្នុងការប្រើទាំងពាក្យសម្ងាត់ទាំងនេះ។ នេះជាការពិតប្រសិនបើអ្នកវាយប្រហារព្យាយាមស្វែងរកពាក្យសម្ងាត់របស់អ្នកដោយទាយឆែក MD5 checksum (ដែលគ្មាននរណាម្នាក់ធ្វើ) ប៉ុន្តែមិនពិតទេប្រសិនបើការប្រើកម្លាំងរឺការវាយប្រហារវចនានុក្រមត្រូវបានអនុវត្ត (ដែលជាយុទ្ធសាស្ត្រទូទៅ) ។

ការវាយប្រហារដោយកម្លាំងហួសប្រមាណគឺនៅពេលដែលមានចៃដន្យចៃដន្យជាច្រើនត្រូវបានគេយកទៅទស្សន៍ទាយពាក្យសម្ងាត់។ ក្នុងករណីនេះវានឹងមានភាពងាយស្រួលក្នុងការស្មាន "12345" ប៉ុន្តែវាពិបាកក្នុងការរកមើលលេខមួយផ្សេងទៀត។ វចនានុក្រមវចនានុក្រមមួយគឺស្រដៀងគ្នានៅក្នុងនោះអ្នកវាយប្រហារអាចព្យាយាមគ្រប់ពាក្យលេខឬឃ្លាពីបញ្ជីពាក្យសម្ងាត់សាមញ្ញ (និងតិចជាងគេប្រើជាទូទៅ) "12345" ពិតជាមួយដែលនឹងត្រូវបានសាកល្បង។

ដូច្នេះទោះបីមុខងារហាស៉ីបណ្តាកូដបង្កការលំបាកដល់ការឆែកឆែកមិនអាចទៅរួចក៏ដោយក៏អ្នកនៅតែប្រើពាក្យសម្ងាត់ស្មុគស្មាញសម្រាប់គណនីអ្នកប្រើលើបណ្ដាញនិងអ្នកប្រើក្នុងតំបន់របស់អ្នកទាំងអស់។

ព័ត៌មានជំនួយ: មើល ឧទាហរណ៍នៃពាក្យសម្ងាត់ដែលខ្សោយនិងរឹងមាំ ប្រសិនបើអ្នកមិនប្រាកដថាតើអ្នកចាត់ទុកជាពាក្យសម្ងាត់ខ្លាំងទេ។

ព័ត៌មានបន្ថែមអំពីអនុគមន៍សញ្ញាសម្ងាត់របស់គ្រីប

វាហាក់ដូចជាមុខងារហាសិបសោភាត្រូវបានទាក់ទងទៅនឹងការអ៊ិនគ្រីបប៉ុន្តែការងារទាំងពីរនេះមានភាពខុសគ្នាយ៉ាងខ្លាំង។

ការអ៊ិនគ្រីបគឺជាវិធីពីរយ៉ាងដែលមានអ្វីត្រូវបានអ៊ិនគ្រីបដើម្បីមិនអាចអានបានប៉ុន្តែបន្ទាប់មកឌ្រីកត្រូវបានប្រើជាធម្មតាម្តងទៀត។ អ្នកអាច អ៊ិនគ្រីបឯកសារដែលអ្នកបានរក្សាទុក ដូច្នេះអ្នកដែលចូលប្រើវានឹងមិនអាចប្រើវាបានទេឬអ្នកអាចប្រើប្រាស់ការ ដាក់លេខកូដផ្ទេរឯកសារ ដើម្បីដាក់លេខកូដឯកសារដែលកំពុងផ្លាស់ទីលើបណ្តាញដូចជាឯកសារដែលអ្នកផ្ទុកឡើងឬទាញយកអ៊ីនធឺណិត។

ដូចដែលបានពិពណ៌នាខាងលើមុខងារហាសកូដត្រូវធ្វើការខុសគ្នាក្នុងករណីថាឆេកស៊ុយមិនត្រូវបានដាក់បញ្ច្រាសជាមួយពាក្យសម្ងាត់ដោះលេខពិសេសដូចជារបៀបដែលឯកសារដែលបានអ៊ិនគ្រីបត្រូវបានអានជាមួយពាក្យសម្ងាត់អ៊ិនគ្រីបពិសេស។ មុខងារហាសិបិកម្មដែលមានគោលបំណងតែមួយគត់គឺដើម្បីប្រៀបធៀបទិន្នន័យពីរយ៉ាងដូចជានៅពេលទាញយកឯកសាររក្សាទុកពាក្យសម្ងាត់ទាញទិន្នន័យពីមូលដ្ឋានទិន្នន័យជាដើម។

វាមានលទ្ធភាពសម្រាប់មុខងារសញ្ញាក្លែងក្លាយដើម្បីបង្កើតឆេកសាំដូចគ្នាសម្រាប់បំណែកផ្សេងៗនៃទិន្នន័យ។ នៅពេលរឿងនេះកើតឡើងវាត្រូវបានគេហៅថាការប៉ះទង្គិចគ្នា។ ច្បាស់ណាស់នេះគឺជាបញ្ហាដ៏ធំមួយដោយពិចារណាលើចំនុចទាំងស្រុងនៃមុខងារហាសកូដសម្ងាត់គឺធ្វើឱ្យឆែកឆែកតែមួយគត់សម្រាប់រាល់ទិន្នន័យបញ្ចូល។

មូលហេតុដែលការប៉ះទង្គិចគ្នាអាចកើតមានគឺដោយសារមុខងារនីមួយៗនៃមុខងារកូដសញ្ញានីមួយៗបង្កើតតម្លៃនៃប្រវែងថេរដោយមិនគិតពីទិន្នន័យបញ្ចូល។ ឧទាហរណ៍ MD5 cryptographic hash function បង្កើត 827ccb0eea8a706c4c34a16891f84e7b, 1f633b2909b9c1addf32302c7a497983 , និង e10adc3949ba59abbe56e057f20f883e សម្រាប់ប្លុកចំនួនបីខុសគ្នាទាំងស្រុង។

ឆេកសេចលើកទី 1 គឺពី 12345 លេខទីពីរត្រូវបានបង្កើតពីជាង 700 តួអក្សរនិងលេខនិងលេខបីគឺពី 123456 ។ ធាតុបញ្ចូលទាំងបីមានប្រវែងខុសៗគ្នាប៉ុន្តែលទ្ធផលគឺមានតែ 32 តួអក្សរដែលវែងចាប់តាំងពី MD5 ត្រូវបានប្រើ។

ដូចដែលអ្នកអាចឃើញមានស្ទើរតែគ្មានដែនកំណត់ចំពោះចំនួនឆេកសាំដែលអាចបង្កើតបានចាប់តាំងពីការផ្លាស់ប្តូរតូចៗនៅក្នុងធាតុបញ្ចូលត្រូវបានគេសន្មតថាបង្កើតឆេកសាំខុសគ្នាទាំងស្រុង។ ទោះយ៉ាងណាក៏ដោយដោយសារតែមានចំនួនកំណត់នៃចំនួនឆេកសាំមានមុខងារហាត់ហ្រ្វេសមួយអាចបង្កើតបានវាតែងតែមានលទ្ធភាពដែលអ្នកនឹងជួបប្រទះការប៉ះទង្គិច។

នេះហើយជាមូលហេតុដែលមុខងារហាសុកស៊ីអ៊ីនផ្សេងទៀតត្រូវបានបង្កើតឡើង។ ខណៈពេល MD5 បង្កើតតម្លៃតួអក្សរ 32 តួអក្សរ SHA-1 បង្កើតតួអក្សរ 40 និង SHA-2 (512) បង្កើត 128 ។ ចំនួនតួអក្សរដែលឆេកសាំមានកាន់តែច្រើនទំនងជាការប៉ះទង្គិចគ្នានឹងកើតឡើងព្រោះវាផ្តល់នូវកន្លែងបន្ថែមទៀតសម្រាប់ តម្លៃតែមួយគត់។