<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1" data-init="VerticalStudentView" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="vertical" data-usage-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@vertical+block@ebcee7eca1d64bc695caf5f1a0d5bbe7" data-request-token="79b95f08013211efabb30242ac12000b" data-graded="True" data-has-score="False">
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@video+block@887ee19104ba426ba3d3636d2e8aafbc">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-course-id="course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1" data-init="XBlockToXModuleShim" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="video" data-usage-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@video+block@887ee19104ba426ba3d3636d2e8aafbc" data-request-token="79b95f08013211efabb30242ac12000b" data-graded="True" data-has-score="False">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Video</h3>
<div
id="video_887ee19104ba426ba3d3636d2e8aafbc"
class="video closed"
data-metadata='{"autoAdvance": false, "autohideHtml5": false, "autoplay": false, "captionDataDir": null, "completionEnabled": false, "completionPercentage": 0.95, "duration": 0.0, "end": 0.0, "generalSpeed": 1.0, "lmsRootURL": "https://p.ost2.fyi", "poster": null, "prioritizeHls": false, "publishCompletionUrl": "/courses/course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1/xblock/block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@video+block@887ee19104ba426ba3d3636d2e8aafbc/handler/publish_completion", "recordedYoutubeIsAvailable": true, "savedVideoPosition": 0.0, "saveStateEnabled": false, "saveStateUrl": "/courses/course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1/xblock/block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@video+block@887ee19104ba426ba3d3636d2e8aafbc/handler/xmodule_handler/save_user_state", "showCaptions": "false", "sources": [], "speed": null, "start": 0.0, "streams": "1.00:a_opy_LOCE4", "transcriptAvailableTranslationsUrl": "/courses/course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1/xblock/block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@video+block@887ee19104ba426ba3d3636d2e8aafbc/handler/transcript/available_translations", "transcriptLanguage": "en", "transcriptLanguages": {"en": "English"}, "transcriptTranslationUrl": "/courses/course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1/xblock/block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@video+block@887ee19104ba426ba3d3636d2e8aafbc/handler/transcript/translation/__lang__", "ytApiUrl": "https://www.youtube.com/iframe_api", "ytMetadataEndpoint": "", "ytTestTimeout": 1500}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="887ee19104ba426ba3d3636d2e8aafbc"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@markdown+block@3714e7deb6094f66a168920dfde374f9">
<div class="xblock xblock-public_view xblock-public_view-markdown" data-course-id="course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1" data-block-type="markdown" data-usage-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@markdown+block@3714e7deb6094f66a168920dfde374f9" data-request-token="79b95f08013211efabb30242ac12000b" data-graded="True" data-has-score="False">
<div class="markdown_xblock"><h2>EFI_TIME structure details</h2>
<div class="codehilite">
<pre><span></span><code><span class="c1">///</span>
<span class="c1">/// EFI Time Abstraction:</span>
<span class="c1">/// Year: 1900 - 9999</span>
<span class="c1">/// Month: 1 - 12</span>
<span class="c1">/// Day: 1 - 31</span>
<span class="c1">/// Hour: 0 - 23</span>
<span class="c1">/// Minute: 0 - 59</span>
<span class="c1">/// Second: 0 - 59</span>
<span class="c1">/// Nanosecond: 0 - 999,999,999</span>
<span class="c1">/// TimeZone: -1440 to 1440 or 2047</span>
<span class="c1">///</span>
<span class="k">typedef</span> <span class="k">struct</span> <span class="p">{</span>
<span class="n">UINT16</span> <span class="n">Year</span><span class="p">;</span>
<span class="n">UINT8</span> <span class="n">Month</span><span class="p">;</span>
<span class="n">UINT8</span> <span class="n">Day</span><span class="p">;</span>
<span class="n">UINT8</span> <span class="n">Hour</span><span class="p">;</span>
<span class="n">UINT8</span> <span class="n">Minute</span><span class="p">;</span>
<span class="n">UINT8</span> <span class="n">Second</span><span class="p">;</span>
<span class="n">UINT8</span> <span class="n">Pad1</span><span class="p">;</span>
<span class="n">UINT32</span> <span class="n">Nanosecond</span><span class="p">;</span>
<span class="n">INT16</span> <span class="n">TimeZone</span><span class="p">;</span>
<span class="n">UINT8</span> <span class="n">Daylight</span><span class="p">;</span>
<span class="n">UINT8</span> <span class="n">Pad2</span><span class="p">;</span>
<span class="p">}</span> <span class="n">EFI_TIME</span><span class="p">;</span>
</code></pre>
</div>
</div>
</div>
</div>
<div class="vert vert-2" data-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@markdown+block@dd84a158bb3c4a3396e2c7f60df58f71">
<div class="xblock xblock-public_view xblock-public_view-markdown" data-course-id="course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1" data-block-type="markdown" data-usage-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@markdown+block@dd84a158bb3c4a3396e2c7f60df58f71" data-request-token="79b95f08013211efabb30242ac12000b" data-graded="True" data-has-score="False">
<div class="markdown_xblock"><h2>WIN_CERTIFICATE_UEFI_GUID structure details</h2>
<div class="codehilite">
<pre><span></span><code><span class="c1">///</span>
<span class="c1">/// Certificate which encapsulates a GUID-specific digital signature</span>
<span class="c1">///</span>
<span class="k">typedef</span> <span class="k">struct</span> <span class="p">{</span>
<span class="c1">///</span>
<span class="c1">/// This is the standard WIN_CERTIFICATE header, where</span>
<span class="c1">/// wCertificateType is set to WIN_CERT_TYPE_EFI_GUID.</span>
<span class="c1">///</span>
<span class="n">WIN_CERTIFICATE</span> <span class="n">Hdr</span><span class="p">;</span>
<span class="c1">///</span>
<span class="c1">/// This is the unique id which determines the</span>
<span class="c1">/// format of the CertData. .</span>
<span class="c1">///</span>
<span class="n">EFI_GUID</span> <span class="n">CertType</span><span class="p">;</span>
<span class="c1">///</span>
<span class="c1">/// The following is the certificate data. The format of</span>
<span class="c1">/// the data is determined by the CertType.</span>
<span class="c1">/// If CertType is EFI_CERT_TYPE_RSA2048_SHA256_GUID,</span>
<span class="c1">/// the CertData will be EFI_CERT_BLOCK_RSA_2048_SHA256 structure.</span>
<span class="c1">///</span>
<span class="n">UINT8</span> <span class="n">CertData</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span>
<span class="p">}</span> <span class="n">WIN_CERTIFICATE_UEFI_GUID</span><span class="p">;</span>
</code></pre>
</div>
</div>
</div>
</div>
<div class="vert vert-3" data-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@done+block@d1bf005a4cd3445da8834df85981f426">
<div class="xblock xblock-public_view xblock-public_view-done" data-course-id="course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1" data-block-type="done" data-usage-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@done+block@d1bf005a4cd3445da8834df85981f426" data-request-token="79b95f08013211efabb30242ac12000b" data-graded="True" data-has-score="True">
<div class="page-banner"><div class="alert alert-warning"><span class="icon icon-alert fa fa fa-warning" aria-hidden="true"></span><div class="message-content">Completion is only accessible to enrolled learners. Sign in or register, and enroll in this course to view it.</div></div></div>
</div>
</div>
<div class="vert vert-4" data-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@discussion+block@19aae7f0f6814002b7c3ed6b81696123">
<div class="xblock xblock-public_view xblock-public_view-discussion" data-course-id="course-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1" data-block-type="discussion" data-usage-id="block-v1:OpenSecurityTraining2+Arch4021_intro_UEFI+2023_v1+type@discussion+block@19aae7f0f6814002b7c3ed6b81696123" data-request-token="79b95f08013211efabb30242ac12000b" data-graded="True" data-has-score="False">
<div class="page-banner"><div class="alert alert-warning"><span class="icon icon-alert fa fa fa-warning" aria-hidden="true"></span><div class="message-content">Discussion is only accessible to enrolled learners. Sign in or register, and enroll in this course to view it.</div></div></div>
</div>
</div>
</div>
<script type="text/javascript">
(function (require) {
require(['/static/js/dateutil_factory.be68acdff619.js?raw'], function () {
require(['js/dateutil_factory'], function (DateUtilFactory) {
DateUtilFactory.transform('.localized-datetime');
});
});
}).call(this, require || RequireJS.require);
</script>
<script>
function emit_event(message) {
parent.postMessage(message, '*');
}
</script>
</div>