Lennart Poettering ááẠáááºááŸáááŒá¿áá¬áá»á¬ážááá¯ááŒá±ááŸááºážáááºááŸáá·áº kernel ááá¯á¶ááŒááºá áááºáá»áááŸá¯ááŸáá·áºá¡áááºážáá¶á áá áºáááºáááºážáá»ááºááá¯á¡áááºááŒá¯ááá·áºá¡ááŒáá·áºá¡áá á áºáá±ážááŒá®ážáá±á¬ááœááºááºá¡ááœá²á·á¡á ááºážááá¯ááá¯ážááŸááºážá á±áááºáááºááœááºá Linux ááŒáá·áºááŒá°ážááŸá¯áá»á¬ážá¡ááœáẠboot áá¯ááºáááºážá ááºááᯠáá±ááºáá®á¡á±á¬ááºááŒá¯áá¯ááºááẠá¡ááá¯ááŒá¯áá»ááºááá¯áá¯ááºáá±áá²á·áááºá áááá¯áá¬á¡áá áºááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááẠááá¯á¡ááºáá±á¬ááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážááẠsystemd-stubá systemd-measureá systemd-cryptenrollá systemd-cryptsetupá systemd-pcrphase ááŸáá·áº systemd-creds áá²á·ááá¯á·áá±á¬ á¡á áááºá¡ááá¯ááºážáá»á¬ážááᯠáááºáá±á¬ááºááŸá¯ááŸááá«áááºá
á¡ááá¯ááŒá¯áá¬ážáá±á¬ááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážááẠuniversal image UKI (Unified Kernel Image)á Linux kernel áá¯á¶á UEFI (UEFI boot stub) á០kernel ááᯠloading á¡ááœáẠhandler ááŸáá·áº initrd system áááºáááºážáá»ááºááᯠáá±á«ááºážá ááºážááŒááºážá¡áá á¡áá»á¯á¶ážáááºáá«áááºá root FS ááá¯ááááºáááºáá®á¡ááá·áºááœááºáááŠážá¡á ááŒá¯ááŒááºážá initrd RAM disk áá¯á¶á¡á á¬ážá á áá áºáá áºáá¯áá¯á¶ážááᯠUKI ááœáẠáá¯ááºááá¯ážáá¬ážááá¯ááºááŒá®ážá áááºážááẠááá·áºá¡á¬áž RAM áá²ááá¯á· á¡ááŒáá·áºááá·áºáá¬ážáá±á¬ á áá áºáááºáááºážáá»ááºáá»á¬ážááᯠáááºáá®ážááá¯ááºá á±áá«áááºá UKI áá¯ááºáá¯á¶á¡á¬áž PE áá±á¬áºáááºááŒáá·áº áá¯ááºáá±á¬ááºááá¯ááºáá±á¬ ááá¯ááºá¡ááŒá Ạáá±á¬áºáááºáá¯ááºáá¬ážááŒá®áž ááá¬ážááá¯ážáá» bootloaders áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áá¯á¶áá¬áá UEFI Firmware á០ááá¯ááºááá¯ááºáá±á«áºááá¯ááá¯ááºáá«áááºá
UEFI á០áá¯ááºážáá±á«áºááá¯ááá¯ááºááŸá¯ááẠááá·áºá¡á¬áž kernel ááá¯áá¬áá initrd á á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážááá¯áá« áá¯á¶ážááœáŸááºážáá¬ážááá·áº áá áºáá»á áºáááºáááºááŸáẠááá¬ááá á áºáá±ážááŸá¯ááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá áá áºáá»áááºáááºážááŸá¬áááºá á¡ááºááááºááá¯ááá·áºááœááºážááŒá®ážáá±á¬áẠkernel á¡áá áºááŸáá·áº ááŒá¿áá¬áá»á¬ážááœá±á·ááŸááá«á áá áºáá»áááºáááºážááŸá¬áááºá ááá¯ážáᬠbootloaders áá»á¬ážá០áá±á«áºááá¯ááŸá¯á¡ááœáẠáá¶á·ááá¯ážááŸá¯ááẠáááºááẠkernel áá¬ážááŸááºážáá»á¬ážá áœá¬ááᯠáá±ážááá¯á·ááŒááºážááŸáá·áº á¡áá¯ááºáá¯ááºááá·áº kernel ááá¯á· á¡ááá¯á¡áá»á±á¬ááºááŒááºááŸáá·áºááŒááºážáá²á·ááá¯á·áá±á¬ á¡ááºá¹áá«áááºáá»á¬ážááᯠáááºáááºááááºážááááºážáá¬ážááá¯ááºá á±áá«áááºá
áááºááŸáááœááºá Linux ááŒáá·áºáá»á®ááŸá¯á¡áá»á¬ážá á¯ááœááºá áááŠážá áááºááŒááºážáá¯ááºáááºážá ááºááẠâfirmware â áá áºáá»á áºáááºáááºááŸááºááá¯ážáá¬ážáá±á¬ Microsoft shim á¡ááœáŸá¬ â GRUB boot loader ááŒáá·áºááŒá°ážááŸá¯ â áá áºáá»á áºáááºááŒáá·áº áááºááŸááºááá¯ážáá¬ážáá±á¬ Linux kernel â áááºááŸááºáááá¯ážáá¬ážáá±á¬ initrd áááºáááºážáá»áẠâ root FSâ ááœááºážáááºááᯠá¡áá¯á¶ážááŒá¯áá«áááºá ááá¯ážáá¬ááŒáá·áºáá±ááŸá¯áá»á¬ážááœáẠinitrd á¡áááºááŒá¯ááŒááºáž áááŸáááŒááºážááẠáá¯á¶ááŒá¯á¶áá±ážááŒá¿áá¬áá»á¬ážááᯠáááºáá®ážáá±ážáá±á¬ááŒá±á¬áá·áºá á€áááºáááºážáá»ááºááœááºá root ááá¯ááºá áá áºááᯠáá¯ááºááŸááºááŒááºážá¡ááœááºáá±á¬á·áá»á¬ážááᯠáá¯ááºáá°ááŒááºážá¡ááœáẠá¡ááŒá¬ážá¡áá¬áá»á¬ážááŒá áºáá±á¬ááŒá±á¬áá·áº áá¯á¶ááŒá¯á¶áá±ážááŒá¿áá¬áá»á¬áž áááºáá®ážáá±ážáá«áááºá
SecureBoot áá¯ááºááá¯á¡áá¯á¶ážááŒá¯áá±á¬á¡áá«ááœáẠá€ááá¯ááºááᯠá¡áá¯á¶ážááŒá¯áá°á áá±ááá¹ááá áá áºááœáẠáá¯ááºáá¯ááºááŒá®áž ááŒáá·áºááŒá°ážááŸá¯áááááá¬á áá áºáá»á áºáááºáááºááŸááºááŒáá·áº á¡ááá¡ááŸááºáááŒá¯ááá¯ááºáá±á¬ááŒá±á¬áá·áº initrd áá¯á¶áá¡áááºááŒá¯ááŒááºážááᯠáá¶á·ááá¯ážááá¬ážáá«á (initrd ááá¯á¡áááºááŒá¯áááºá á¡áá¯á¶ážááŒá¯áá°ááẠáááºážááá¯á·áááá¯ááºááá¯ááºáá±á¬á·áá»á¬ážááá¯áá¯ááºáá¯ááºááŒá®áž UEFI firmware ááœáẠáááºáááºááá¯á¡ááºáááº)á ááá¯á·á¡ááŒááºá áááºááŸá boot organization ááẠshimá grub ááŸáá·áº kernel ááá¯á·ááŸááœá²á á¡ááŒá¬áž user space á¡á áááºá¡ááá¯ááºážáá»á¬ážá ááá¯ááºáá¬ááŸá¯ááᯠááááºážáá»á¯ááºáááºá¡ááœáẠTPM PCR (Platform Configuration Register) á០á¡áá»ááºá¡áááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááœáá·áºáááŒá¯áá«á áááºááŸáááŒá¿áá¬áá»á¬ážááŒá¬ážááœááºá á¡ááºááááºááá¯ááá·áºááœááºážááŒá®ážáá±á¬áẠááááºááá¯ááºááá·áº OS áá¬ážááŸááºážá¡áá±á¬ááºážáá»á¬ážá¡ááœáẠbootloader ááᯠá¡ááºááááºáá¯ááºááŒááºážá ááŸá¯ááºááœá±ážááŸá¯ááŸáá·áº TPM á¡ááœááºážááŸá áá±á¬á·áá»á¬ážáááºáá±á¬ááºááœáá·áºááᯠááá·áºáááºááá¯ááºá áœááºážáááŸáááŒááºážááá¯áááºáž áá±á¬áºááŒáá¬ážáá«áááºá
loading áááá¯áá¬á¡áá áºááᯠááááºáááºááŒááºážá á¡ááááááºážááá¯ááºáá»á¬ážááŸá¬-
- ááá¯ááºážáá²á០á¡áá¯á¶ážááŒá¯áá°áá±áá¬á¡áá áá»á²á·ááœááºáá¬ážááá·áº á¡ááŒáá·áºá¡á á á áºáá±ážáá¬ážáá±á¬ boot áá¯ááºáááºážá ááºááᯠáá¶á·ááá¯ážáá±ážáᬠá áááºáá¯ááºáá±á¬ááºáá±ááá·áº á¡á áááºá¡ááá¯ááºážáá»á¬ážá ááá¬ážáááºááŸá¯ááŸáá·áº ááá¯ááºáá¬ááŸá¯ááᯠá¡áááºááŒá¯áááºá
- ááááºážáá»á¯ááºáá¬ážáá±á¬ á¡áááºážá¡ááŒá áºáá»á¬ážááᯠááá¯ááºááŸááºá០ááá¯ááºážááŒá¬ážáá¬ážáá±á¬ TPM PCR ááŸááºáá¯á¶áááºáá»á¬ážááŸáá·áº áá»áááºáááºááŒááºážá
- boot áá¯ááºáá±á ááºá¡áá¯á¶ážááŒá¯ááá·áº kernelá initrdá configuration ááŸáá·áº local system ID ááá¯á·á¡áá±á«áºá¡ááŒá±áá¶á PCR áááºááá¯ážáá»á¬ážááᯠááŒáá¯áááºááœááºáá»ááºááá¯ááºááŸá¯á
- á áá áºáááááºá¡á¬ážáááºážáá±á¬áá¬ážááŸááºážááá¯á·ááŒááºááŸáá·áºááŒááºážááŸáá·áºáááºá ááºáá±á¬ rollback ááá¯ááºááá¯ááºááŸá¯áá»á¬ážááá¯áá¬ááœááºááŒááºážá
- á¡ááºááááºáá»á¬ážááᯠááá¯ážááŸááºážá á±ááŒá®áž áá¯á¶ááŒááºá áááºáá»áááŸá¯ááᯠááá¯ážááŒáŸáá·áºáá«á
- ááŒááºáááºá¡ááá®áá±ážááŸááºáž ááá¯á·ááá¯áẠTPM-áá¬ááœááºáá¬ážáá±á¬ á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá±ááá¹ááá á®áá¶áá±á¬ááºááœááºáá±ážááŸá¯áááá¯á¡ááºáá±á¬ OS á¡ááºááááºáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯á
- áááºáá¬ážáá±á¬ OS ááŸáá·áº áááºáááºáá»á¬ážá ááŸááºáááºááŸá¯ááᯠá¡áááºááŒá¯ááẠá¡áá±ážááááºážáááºááŸááºá¡ááœáẠá áá áºááẠá¡áááºááá·áºááŒá áºáá±áá«ááŒá®á
- á¡áá»áá¯á·áá±á¬ boot á¡ááá·áºáá»á¬ážááœáẠá¡áá±ážááŒá®ážáá±á¬áá±áá¬ááᯠáá°ážááœá²áá±á¬ááºááœááºááá¯ááºáááºá á¥ááá¬á TPM á០root ááá¯ááºá áá áºá¡ááœáẠáá¯ááºááŸááºááŒááºážáá±á¬á·áá»á¬ážááᯠáá¯ááºáá°ááŒááºážá
- root partition drive ááᯠdecrypt áá¯ááºááẠáá±á¬á·ááœáá·áºáááºá¡ááœáẠáá¯á¶ááŒá¯á¶áá±á¬á á¡ááá¯á¡áá»á±á¬áẠááŸáá·áº á¡áá¯á¶ážááŒá¯áá°-á¡ááá²á· áá¯ááºáááºážá ááºááᯠáá¶á·ááá¯ážáá±ážááŒááºážá
- TPM ááá«áá² á áá áºáá»á¬ážááá¯á· ááŒááºáááºáá±á¬ááºááŸáááá¯ááºááá·áºá áœááºážáááºááŒáá·áº TPM 2.0 áááºááŸááºáá»ááºááᯠáá¶á·ááá¯ážááá·áº áá»á áºááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒááºážá
source: opennet.ru