náhled|300px|vpravo|Role Extensible Firmware Interface ve struktuře počítače Unified Extensible Firmware Interface (UEFI, v překladu jednotné rozšiřitelné firmwarové rozhraní) definuje softwarové rozhraní (API) mezi operačním systémem a firmwarem obsluhujícím hardware v osobním počítači. UEFI je nástupcem původního rozhraní BIOS, které bylo používáno od prvních IBM PC kompatibilních počítačů.Michael Kinney. “Solving BIOS Boot Issues with EFI”. Intel DeveloperUPDATEMagazine. September 2000, p. 1. Specifikace UEFI je spravována aliancí Unified EFI Forum, avšak původně byla vyvinuta společností Intel pod kratším názvem EFI. Hlavním přínosem je podpora Secure boot (viz níže) a velkých disků.

Charakteristika UEFI je nový standard, který je jako náhrada BIOSu oficiálně zaváděn z několika důvodů. Prvním a nejdůležitějším důvodem je podpora Secure boot (viz dále). Druhým důvodem je využití schopností nových procesorů a ukončení zpětné kompatibility s 16bitovými procesory 8086, které byly v prvních IBM PC kompatibilních počítačích. Třetím důvodem pak je podpora GPT, která umožňuje zavést operační systém z diskových oddílů (resp. pevných disků) větších než 2 TB (což je limit původního MBR).

Druhý a třetí výše uvedený důvod nemá reálný základ, protože již delší dobu existují varianty BIOSu, které tyto důvody řeší bez nutnosti zavádět nový standard (existuje 32bitový BIOS a existují BIOSy, které umí systém zavést z disků obsahujících GPT tabulku). Faktickým důvodem tak zřejmě je snaha prosadit Secure boot. Vedlejším efektem je jisté omezení alternativních operačních systémů (Linux, FreeBSD apod.).

Secure boot

UEFI Secure boot je ověřovací mechanismus, který umožňuje zajistit, že software spouštěný při startu počítače (bootování) je důvěryhodný, takže aplikace mohou později zjistit, zda není porušena integrita platformy (tj. narušení běhu počítače crackerem nebo malwarem). Aplikace mohou tohoto mechanismu využít, aby ochránily utajované údaje (například hesla uložená ve webovém prohlížeči nebo privátní klíče pro asymetrickou kryptografii). V systému Windows je k tomu používáno aplikační rozhraní Data Protection API (DPAPI), které pomocí TPM čipu a Secure bootu vytváří bezpečné úložiště (viz secure element).

Secure boot navržen tak, aby mohl zabránit aktivaci škodlivého kódu (malware) ještě před zavedením operačního systému. Secure boot pracuje na pricipu kontrolních součtů (otisk) a elektronického podpisu, který dokládá důvěryhodnost kódu, který zavaděč hodlá spustit. Pokud není důvěryhodnost kódu ověřena, je zabráněno jeho spuštění (aktivaci). Tímto způsobem je zabezpečen celý řetězec spouštění počítače včetně samotného operačního systému, který navíc znemožní přístup k funkcím, které by mohly zabezpečení obejít.

Většina stolních počítačů (IBM PC kompatibilních na platformě x86) obsahuje z výroby veřejný klíč firmy Microsoft, což znamená, že firma Microsoft funguje jako certifikační autorita pro Secure boot a tyto počítače automaticky důvěřují kódu, který obsahuje elektronický podpis Microsoftu. Veřejný klíč pro ověřování je uložen v BIOS/UEFI nebo v TPM čipu. Většina systémů je prodávána s aktivovanou funkcí Secure boot, takže může být zaveden jen Microsoftem podepsaný kód, ale obsahují možnost deaktivovat Secure boot nebo přidat vlastní klíče Platform key (PK). Některé dovolují odstranit veřejný klíč vložený výrobcem a systém pak bude zavádět pouze kód podepsaný dodatečně doplněným klíčem a nikoliv klíčem Microsoftu.

Firma Microsoft podepíše zavaděč (po splnění určitých podmínek a zaplacení poplatku) firmám i jednotlivcům (zavaděč se pak již nemůže měnit). Původní podmínky jsou však postupně zpřísňovány, takže v roce 2022 je téměř nemožné, aby jednotlivec tento podpis získal, což diskvalifikuje nezávislé vývojáře otevřeného software.

Většina UEFI kódu (tj. programů umístěných ve speciálním UEFI oddílu pevného disku) jsou podepsané zavaděče, ale mohou zde být i specializované programy (nástroje pro aktualizaci firmware počítače, nástroje pro kontrolu a výpis hardware počítače, diagnostiky závad a podobně).

Funkci secure bootu podporují systémy Windows 8 a Windows 8.1, Windows Server 2012 a 2012 R2, Windows 10, Windows Server 2016, 2019 a 2022, Windows 11, VMware vSphere 6.5 a několik linuxových distribucí, například Fedora podporuje Secure boot od verze 18 z roku 2013, Debian od verze 10 (Buster z roku 2019),Ubuntu (od verze 12.04.2), Linux Mint (od verze 21.3), AlmaLinux OS (od verze 8.4), Red Hat Enterprise Linux (od verze 7), CentOS (od verze 7) a další.

Shim Shim je malý open source zavaděč, který je dobře zdokumentovaný a kód je auditovaný, a je tak bez problémů podepsán Microsoftem. Slouží jako prvostupňový zavaděč alternativních systémů, takže individuální vývojáři nemusí žádat o elektronický podpis Microsoftu. Shim obsahuje veřejný klíč příslušné linuxové distribuce a umožňuje tak zachovat důvěryhodný řetězec při bootování a aktivování operačního systému (GRUB, jádro a jeho moduly/ovladače atd.).

Omezení secure bootu Secure boot nedokáže zamezit softwarovým chybám v operačním systému, a tak nezajišťuje 100% bezpečnost.https://www.novinky.cz/internet-a-pc/bezpecnost/411712-chyba-ohrozuje-stovky-milionu-uzivatelu-windows-oprava-je-v-nedohlednu.html - Chyba ohrožuje stovky miliónů uživatelů Windows. Oprava je v nedohlednu Obsahuje zadní vrátka.http://appleinsider.com/articles/16/08/10/oops-microsoft-leaks-its-golden-key-unlocking-windows-secure-boot-and-exposing-the-danger-of-backdoors - Oops: Microsoft leaks its Golden Key, unlocking Windows Secure Boot and exposing the danger of backdoors

Historie Původní záměr vytvořit EFI vznikl v počátcích vývoje prvních systémů Intel-HP Itanium v polovině 90. let 20. století. Pro platformu větších serverů, na které se Itanium zaměřovalo, byla považována omezení PC BIOSu (16bitový režim procesoru, 1 MB adresovatelného místa aj.) za nepřijatelná. Pokus o řešení těchto problémů se nejprve nazýval Intel Boot Initiative a později byl přejmenován na Extensible Firmware Interface.Dong Wei, Beyond BIOS (foreword), Intel Press, 2006,

EFI specifikace verze 1.02 byla vydána Intelem 12. prosince 2000. (Původní vydání 1.01 obsahovalo nesprávné právní údaje a informace o ochranné známce a bylo rychle staženo.See the Revision History section of specification version 1.10)

EFI specifikace verze 1.10 byla vydána Intelem 1. prosince 2002. Oproti 1.02 zahrnovala ovladačový model EFI a mnoho menších vylepšení.

V roce 2005 Intel poskytl specifikaci UEFI Foru, které je nyní zodpovědné za vývojUnified EFI Forum. “UEFI - About UEFI" a propagaci EFI. To bylo přejmenováno na Unified EFI (UEFI), ale ve většině dokumentace jsou oba termíny zaměnitelné.

UEFI Forum vydalo 7. ledna 2007 UEFI specifikaci verze 2.1. Ta přidala a vylepšila šifrování, síťovou autentizaci a architekturu uživatelského rozhraní.

Poslední specifikace UEFI je verze 2.11, která byla zveřejněna v prosinci 2024. Implementace

Intel Platform Innovation Framework pro EFI Intel Platform Innovation Framework pro EFI (známé také jako „Framework“) je soubor specifikací vyvinutých Intelem v souvislosti s EFI. Zatímco EFI specifikuje rozhraní operačního systému a firmwaru, Framework specifikuje strukturu používanou k vytvoření firmwaru pod rozhraním EFI.

Platformy používající UEFI nebo Framework První pracovní stanice a servery Itanium od Intelu, uvedené v roce 2000, podporovaly EFI 1.02.

První systémy Itanium 2 od Hewlett-Packard, uvedené v roce 2002, podporovaly EFI 1.10. Bylo na nich možné provozovat Windows, Linux, FreeBSD a HP-UX, v červnu 2003 byla doplněna podpora v OpenVMS.

V listopadu 2003 uvedla firma Gateway svůj počítač Gateway 610 Media Center. Šlo o první počítačový systém platformy x86 s Windows, který používal firmware založené na Frameworku – InsydeH2O od Insyde Software. Bootování Windows stále záviselo na BIOSu, implementovaném jako compatibility support module (CSM, modul pro podporu kompatibility).

V lednu 2006 začala společnost Apple Inc. prodávat své první počítače Macintosh s procesory Intel. Ty používají EFI a Framework namísto Open Firmware, který byl používán na předchozích Macích s procesory PowerPC.Apple Computer. “Universal Binary Programming Guidelines, Second Edition: Extensible Firmware Interface (EFI)" 5. dubna 2006 vydal Apple aplikaci Boot Camp, která umožňuje instalaci Windows XP nebo Vista bez nutnosti přeinstalovat Mac OS X. Také byla vydána aktualizace firmwaru doplňující k EFI podporu BIOSu. Pozdější modely Maců ji již obsahují. Všechny nyní prodávané Macintoshe (mimo Xserve) tedy umožňují provoz operačních systémů vyžadujících BIOS jako například Windows XP nebo Vista.

Převážná většina základních desek Intelu se prodává s firmwarem založeným na Frameworku. Během roku 2005 bylo prodáno více než milion systémů od Intelu obsahujících Framework.Intel, Framework Overview V roce 2006 se začaly prodávat nové mobilní, desktopové a serverové produkty používající Framework, například desky obsahující čipovou sadu řady Intel 945. Jejich firmware ovšem neobsahuje podporu EFI a je omezen použitím BIOSu.An Intel pdf with information about EFI on their boards

Od roku 2005 se EFI implementuje také na jiné architektury než IBM PC jako například vestavěné systémy založené na jádrech XScale.Overview of the Intel Platform Innovation Framework

V roce 2007 uvedla společnost Hewlett-Packard multifunkční tiskárny série 8000 s firmwarem vyhovujícím specifikaci EFI.HP Printer’s site

V roce 2008 přešlo na technologii UEFI mnoho systémů platformy x64. Ačkoli některé z nich stále podporují pouze bootování systémů vyžadujících BIOS pomocí CSM, jiné začaly podporovat bootování operačních systémů založených na UEFI. Jsou to například: server IBM x3450, základní desky MSI s ClickBIOSem, všechny notebooky a Microsoft Tablet PC řady HP EliteBook nebo novější notebooky HP Compaq (6730b, 6735b aj.) Plánuje se, že na přelomu let 2009 a 2010 bude více než 50 % počítačů platformy x86-64 založeno na UEFI.

Operační systémy Operační systém, který podporuje bootování z (U)EFI, je podle (U)EFI specifikace nazýván (U)EFI-aware OS (tj. OS uvědomující si UEFI). Termín bootování z (U)EFI označuje přímé bootování systému s použitím (U)EFI OS loaderu uloženého na jakémkoli nosiči dat.

Linuxové systémy jsou schopné používat EFI pro bootování již od roku 2000 pomocí EFI bootloaderu ELILO nebo později EFI verzí GRUBuEFI version of Grub (Debian Linux) - Retrieved on 1 May 2008.a pomocí bootovacího správce systemd-boot. V linuxovém jádře lze s UEFI použít protokol ACPI (obvykle na počítačích typu PC) nebo protokol DeviceTree (pro mobilní telefony a tablety). HP-UX používá od roku 2002 (U)EFI jako způsob bootování na systémech IA-64. HP OpenVMS používá (U)EFI od svého počátečního ověřovacího vydání v prosinci 2003 a pro produkční vydání od ledna 2005.HP OpenVMS Release History - Retrieved on 16 September 2008 Apple adoptoval EFI pro svoji linii počítačů Macintosh používající procesory Intel. Mac OS X verze 10.4 Tiger pro Intel a Mac OS X verze 10.5 Leopard podporují EFI verze 1.10 ve 32bitovém režimu, i s 64bitovými procesory. (Novější Macy mají 64bitové EFI.) Itanium ve verzích pro Windows 2000 (Advanced Server Limited Edition a Datacenter Server Limited Edition) podporovalo v roce 2002 EFI 1.10. Jako požadavek platformy podle specifikace DIG64 podporují EFI Windows Server 2003 pro IA-64, Windows XP 64-bit Edition a Windows 2000 Advanced Server Limited Edition, vydané pro rodinu procesorů Intel Itanium.Microsoft Windows Server TechCenter. “Extensible Firmware Interface " Microsoft zavedl podporu UEFI pro operační systém Windows na platformě x64 ve verzích, Windows 11, Windows Server 2008, Windows Vista Service Pack 1/Service Pack 2, Windows 7 a 32-bitové i 64-bitové verze Windows 8, Windows 8.1 a Windows 10. NetBSD podporuje UEFI od roku 2018 verzi 8.0 pro architektury x86-64 a také na více verzích platformy ARM od verze 9.0.