ප්‍රකාශිත Shufflecake, සැඟවුණු සංකේතාත්මක තැටි කොටස් සෑදීම සඳහා මෙවලම් කට්ටලයක්

ආරක්ෂක විගණන සමාගමක් වන Kudelski Security විසින් Shufflecake නම් මෙවලමක් ප්‍රකාශයට පත් කර ඇති අතර එමඟින් පවතින කොටස්වල සහ අහඹු අවශේෂ දත්ත වලින් වෙන්කර හඳුනාගත නොහැකි නිදහස් ඉඩක් පුරා විසිරී සැඟවුණු ගොනු පද්ධති නිර්මාණය කිරීමට ඔබට ඉඩ සලසයි. ප්‍රවේශ යතුර නොදැන අධිකරණ වෛද්‍ය විශ්ලේෂණ සිදු කිරීමේදී පවා ඒවායේ පැවැත්ම ඔප්පු කිරීමට අපහසු වන ආකාරයට කොටස් නිර්මාණය කර ඇත. උපයෝගිතා කේතය (shufflecake-userland) සහ Linux කර්නල් මොඩියුලය (dm-sflc) C වලින් ලියා GPLv3 බලපත්‍රය යටතේ බෙදා හරිනු ලැබේ, එමඟින් ප්‍රකාශිත කර්නල් මොඩියුලය ප්‍රධාන ලිනක්ස් කර්නලයට ඇතුළත් කිරීමට නොහැකි වනු ඇත. කර්නලය සපයන GPLv2 බලපත්‍රය .

ආරක්ෂාව අවශ්‍ය දත්ත සැඟවීම සඳහා Truecrypt සහ Veracrypt වලට වඩා මෙම ව්‍යාපෘතිය ස්ථානගත කර ඇත, Linux වේදිකාව සඳහා ස්වදේශීය සහය ඇති අතර විග්‍රහය ව්‍යාකූල කිරීම සඳහා එකිනෙක තුළ තැන්පත් කර ඇති සැඟවුණු කොටස් 15ක් දක්වා උපාංගයේ තැබීමට ඔබට ඉඩ සලසයි. ඔවුන්ගේ පැවැත්ම ගැන. ෂෆල්කේක් භාවිතා කිරීම රහසක් නොවේ නම්, විනිශ්චය කළ හැකි පරිදි, උදාහරණයක් ලෙස, පද්ධතියේ අනුරූප උපයෝගිතා තිබීමෙන්, නිර්මාණය කරන ලද සැඟවුණු කොටස් ගණන තීරණය කළ නොහැක. නිර්මාණය කරන ලද සැඟවුණු කොටස් ඕනෑම ගොනු පද්ධතියක් සඳහා පරිශීලකයාගේ අභිමතය පරිදි ආකෘතිගත කළ හැක, උදාහරණයක් ලෙස, ext4, xfs හෝ btrfs. සෑම කොටසක්ම තමන්ගේම අගුළු ඇරීමේ යතුරක් සහිත වෙනම අථත්‍ය වාරණ උපාංගයක් ලෙස සලකනු ලැබේ.

හෝඩුවාවන් ව්‍යාකූල කිරීම සඳහා, “පිළිගත හැකි ප්‍රතික්ෂේප කිරීමේ” හැසිරීම් ආකෘතිය භාවිතා කිරීමට යෝජිත වන අතර, එහි සාරය නම්, වටිනා දත්ත අඩු වටිනා දත්ත සහිත සංකේතාත්මක කොටස්වල අතිරේක ස්ථර ලෙස සඟවා, යම් ආකාරයක සැඟවුණු ධූරාවලියක් සාදයි. පීඩනයකදී, උපාංගයේ හිමිකරු සංකේතාත්මක කොටසෙහි යතුර හෙළිදරව් කළ හැකිය, නමුත් වෙනත් කොටස් (කැදලි මට්ටම් 15 දක්වා) මෙම කොටසෙහි සැඟවිය හැක, ඒවායේ පැවැත්ම තීරණය කිරීම සහ ඒවායේ පැවැත්ම තහවුරු කිරීම ගැටළුකාරී වේ.

ගබඩා උපාංගයේ අහඹු ස්ථානවල තැන්පත් කර ඇති සංකේතාත්මක පෙති කට්ටලයක් ලෙස එක් එක් කොටස ගොඩනැගීමෙන් සැඟවීම සාක්ෂාත් කරගනු ලැබේ. කොටසෙහි අමතර ගබඩා ඉඩක් අවශ්‍ය වූ විට සෑම පෙත්තක්ම ගතිකව නිර්මාණය වේ. විශ්ලේෂණය වඩාත් අපහසු කිරීම සඳහා, විවිධ කොටස්වල පෙති විකල්ප වේ, i.e. ෂෆල්කේක් කොටස් එකිනෙකට යාබද කලාපවලට සම්බන්ධ නොවන අතර සියලුම කොටස්වල පෙති මිශ්‍ර කර ඇත. භාවිතා කරන ලද සහ නිදහස් පෙති පිළිබඳ තොරතුරු එක් එක් කොටස සමඟ සම්බන්ධිත ස්ථාන සිතියමක ගබඩා කර ඇත, එය සංකේතාත්මක ශීර්ෂයක් මගින් යොමු කෙරේ. කාඩ්පත් සහ ශීර්ෂකය සංකේතනය කර ඇති අතර, ප්‍රවේශ යතුර නොදැන, අහඹු දත්ත වලින් වෙන්කර හඳුනාගත නොහැක.

ශීර්ෂකය තව් වලට බෙදා ඇත, ඒ සෑම එකක්ම තමන්ගේම කොටස සහ ආශ්‍රිත පෙති නිර්වචනය කරයි. ශීර්ෂයේ ඇති තව් ගොඩගැසී ඇති අතර ප්‍රත්‍යාවර්තව සම්බන්ධ කර ඇත - ධූරාවලියේ (අඩු සැඟවුණු එක) පෙර කොටසේ පරාමිති විකේතනය කිරීමේ යතුර වත්මන් ස්ලට් එකේ අඩංගු වේ, ඒ හා සම්බන්ධ අඩු සැඟවුණු කොටස් විකේතනය කිරීමට එක් මුරපදයක් භාවිතා කිරීමට ඉඩ සලසයි. තෝරාගත් කොටස. අඩු සැඟවුණු සෑම කොටසක්ම කැදැලි කොටස්වල පෙති නොමිලේ ලෙස සලකයි.

පෙරනිමියෙන්, සියලුම Shufflecake උපවගන්ති ඉහළ මට්ටමේ කොටසට සමාන දෘශ්‍ය ප්‍රමාණය ඇත. උදාහරණයක් ලෙස, 1 GB උපාංගයක කොටස් තුනක් තිබේ නම්, ඒ සෑම එකක්ම 1 GB කොටසක් ලෙස පද්ධතියට දෘශ්‍යමාන වන අතර, ගබඩා කර ඇති දත්තවල මුළු ප්‍රමාණය ඉක්මවන්නේ නම්, පවතින මුළු තැටියේ ඉඩ ප්‍රමාණය සියලු කොටස් අතර බෙදා ගනු ලැබේ. උපාංගයේ සැබෑ ප්‍රමාණය, එය I/O දෝෂයක් ආරම්භ වනු ඇත.

විවෘත නොවන කැදලි කොටස් අවකාශය වෙන් කිරීම සඳහා සහභාගී නොවේ, i.e. ඉහළ මට්ටමේ කොටසක් පිරවීමට ගන්නා උත්සාහයක ප්‍රතිඵලයක් ලෙස කැදැලි කොටස්වල දත්ත ඉරා දමනු ඇත, නමුත් දෝෂය ආරම්භ වීමට පෙර කොටසෙහි තැබිය හැකි දත්තවල ප්‍රමාණය විශ්ලේෂණය කිරීමෙන් ඒවායේ පැවැත්ම හෙළි කිරීමට නොහැකි වනු ඇත (එය අවධානය වෙනතකට යොමු කිරීම සඳහා ඉහළ කොටස්වල වෙනස් කළ නොහැකි දත්ත අඩංගු වන අතර කිසි විටෙකත් වෙන වෙනම භාවිතා නොකරන බව උපකල්පනය කෙරේ, සහ සාමාන්‍ය වැඩ සෑම විටම නවතම කැදැලි කොටස සමඟ සිදු කරනු ලැබේ, මෙම යෝජනා ක්‍රමයම ඇඟවෙන්නේ පැවැත්මේ රහස පවත්වා ගැනීම වඩා වැදගත් බවයි. මෙම දත්ත නැති කිරීමට වඩා දත්ත).

ඇත්ත වශයෙන්ම, ෂෆල්කේක් කොටස් 15 ක් සෑම විටම සාදනු ලැබේ - පරිශීලක මුරපදය භාවිතා කරන ලද කොටස් වලට අමුණා ඇති අතර, භාවිතයට නොගත් කොටස් අහඹු ලෙස ජනනය කරන ලද මුරපදයකින් සපයනු ලැබේ (සැබවින්ම කොටස් කීයක් භාවිතා කරන්නේද යන්න තේරුම් ගත නොහැක). Shufflecake කොටස් ආරම්භ කරන විට, ඒවා ස්ථානගත කිරීම සඳහා වෙන් කර ඇති තැටිය, කොටස් හෝ අථත්‍ය වාරණ උපාංගය අහඹු දත්ත වලින් පුරවනු ලැබේ, එමඟින් සාමාන්‍ය පසුබිමට එරෙහිව Shufflecake පාර-දත්ත සහ දත්ත හඳුනා ගැනීමට නොහැකි වේ.

Shufflecake ක්‍රියාත්මක කිරීම තරමක් ඉහළ කාර්ය සාධනයක් ඇත, නමුත් උඩින් පැවතීම හේතුවෙන්, LUKS උපපද්ධතිය මත පදනම් වූ තැටි සංකේතනයට සාපේක්ෂව එය ප්‍රතිදානයේ දළ වශයෙන් දෙගුණයක් මන්දගාමී වේ. Shufflecake භාවිතා කිරීම RAM සහ සේවා දත්ත ගබඩා කිරීම සඳහා තැටි ඉඩ සඳහා අමතර වියදම් ද ඇති කරයි. මතක පරිභෝජනය එක් කොටසකට 60 MB ලෙස ඇස්තමේන්තු කර ඇති අතර තැටි ඉඩ මුළු ප්‍රමාණයෙන් 1% කි. සංසන්දනය කිරීම සඳහා, WORAM තාක්ෂණය, අරමුණට සමාන, භාවිතා කළ හැකි තැටි අවකාශය 5% අහිමි වීමත් සමඟ 200 සිට 75 වාරයක් මන්දගාමී වේ.

මෙවලම් කට්ටලය සහ කර්නල් මොඩියුලය පරීක්ෂා කර ඇත්තේ ඩේබියන් සහ උබුන්ටු වල කර්නල් 5.13 සහ 5.15 සමඟ පමණි (උබුන්ටු 22.04 මත සහය දක්වයි). වැදගත් දත්ත ගබඩා කිරීම සඳහා භාවිතා නොකළ යුතු වැඩ කරන මූලාකෘතියක් ලෙස ව්යාපෘතිය තවමත් සැලකිය යුතු බව සටහන් වේ. අනාගතයේදී, කාර්ය සාධනය, විශ්වසනීයත්වය සහ ආරක්ෂාව සඳහා අතිරේක ප්‍රශස්තිකරණයන් සිදු කිරීමට මෙන්ම, Shufflecake කොටස් වලින් ආරම්භ කිරීමේ හැකියාව ලබා දීමට අපි සැලසුම් කරමු.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න