Skip to content

Combine PRK and IDK_S generation VTL calls - #1130

Open
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys
Open

Combine PRK and IDK_S generation VTL calls#1130
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys

Conversation

@athvu

Copy link
Copy Markdown
Contributor

No description provided.

@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from cdef9e4 to e06c50fCompareAugust 6, 2026 20:33
@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from b60829c to 56260e3CompareAugust 13, 2026 22:24
@athvu
Angelina Vu (athvu) marked this pull request as ready for review August 13, 2026 22:34

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Angelina,

Thank you for your effort! I have one recommendation: rather than modifying the fill_bytes_crng interface in the litebox crate, could you install a trusted seed throughVtl1Gate (e.g., set a new global var) and use that seed in LVBS's fill_bytes_crng implementation? As you already observed, the litebox crate is a shared common interface/abstraction. any changes of it affect many other subsystems, such that we require strong justification.

Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_shim_optee/src/idk.rs Outdated
Angelina Vu added 3 commits August 24, 2026 16:46
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
…neration.
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Undo changes to fill_bytes_crng interface
Set trusted seed through Vtl1Gate to use in LVBS fill_bytes_crng implementation
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, looks good to me. I left some comments and suggestion.

Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
}
VsmFunction::ExchangeSecrets => vtl1
.set_platform_root_key(params[0])
.and_then(|()| vtl1.set_crng_seed(params[0] + PRK_LEN as u64))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This depends on the ABI, but, at least for now, separating set_platform_root_key and set_crng_seed is a bit bad for performance and atomicity (redundant page mapping/copying and potential partial failure). That is, we can copy 64 bytes at once, rather than copy two 32 bytes in order. Anyway, it depends on VTL0-side argument passing, so it's up to you.

@github-actions

Copy link
Copy Markdown

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure enum_variant_added: enum variant added on exhaustive enum ---
Description:
A publicly-visible enum without #[non_exhaustive] has a new variant.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#enum-variant-new
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_added.ron
Failed in:
variant VsmFunction:ExchangeSecrets in /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:79
--- failure enum_variant_missing: pub enum variant removed or renamed ---
Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It may have been renamed or removed entirely.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_missing.ron
Failed in:
variant VsmFunction::SetPlatformRootKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:79
variant VsmFunction::GenerateIdentitySigningKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:80
--- failure pub_module_level_const_missing: pub module-level const is missing ---
Description:
A public const is missing or renamed
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/pub_module_level_const_missing.ron
Failed in:
VSM_VTL_CALL_FUNC_ID_GENERATE_IDENTITY_SIGNING_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:55
VSM_VTL_CALL_FUNC_ID_SET_PLATFORM_ROOT_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:52
--- failure trait_method_added: pub trait method added ---
Description:
A non-sealed public trait added a new method without a default implementation, which breaks downstream implementations of the trait
ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-item-no-default
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_method_added.ron
Failed in:
trait method litebox_common_lvbs::Vtl1Gate::set_crng_seed in file /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:973

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@athvu@sangho2
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Combine PRK and IDK_S generation VTL calls by athvu · Pull Request #1130 · microsoft/litebox · GitHub
Skip to content

Combine PRK and IDK_S generation VTL calls - #1130

Open
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys
Open

Combine PRK and IDK_S generation VTL calls#1130
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys

Conversation

@athvu

Copy link
Copy Markdown
Contributor

No description provided.

@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from cdef9e4 to e06c50fCompareAugust 6, 2026 20:33
@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from b60829c to 56260e3CompareAugust 13, 2026 22:24
@athvu
Angelina Vu (athvu) marked this pull request as ready for review August 13, 2026 22:34

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Angelina,

Thank you for your effort! I have one recommendation: rather than modifying the fill_bytes_crng interface in the litebox crate, could you install a trusted seed throughVtl1Gate (e.g., set a new global var) and use that seed in LVBS's fill_bytes_crng implementation? As you already observed, the litebox crate is a shared common interface/abstraction. any changes of it affect many other subsystems, such that we require strong justification.

Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_shim_optee/src/idk.rs Outdated
Angelina Vu added 3 commits August 24, 2026 16:46
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
…neration.
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Undo changes to fill_bytes_crng interface
Set trusted seed through Vtl1Gate to use in LVBS fill_bytes_crng implementation
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, looks good to me. I left some comments and suggestion.

Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
}
VsmFunction::ExchangeSecrets => vtl1
.set_platform_root_key(params[0])
.and_then(|()| vtl1.set_crng_seed(params[0] + PRK_LEN as u64))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This depends on the ABI, but, at least for now, separating set_platform_root_key and set_crng_seed is a bit bad for performance and atomicity (redundant page mapping/copying and potential partial failure). That is, we can copy 64 bytes at once, rather than copy two 32 bytes in order. Anyway, it depends on VTL0-side argument passing, so it's up to you.

@github-actions

Copy link
Copy Markdown

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure enum_variant_added: enum variant added on exhaustive enum ---
Description:
A publicly-visible enum without #[non_exhaustive] has a new variant.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#enum-variant-new
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_added.ron
Failed in:
variant VsmFunction:ExchangeSecrets in /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:79
--- failure enum_variant_missing: pub enum variant removed or renamed ---
Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It may have been renamed or removed entirely.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_missing.ron
Failed in:
variant VsmFunction::SetPlatformRootKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:79
variant VsmFunction::GenerateIdentitySigningKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:80
--- failure pub_module_level_const_missing: pub module-level const is missing ---
Description:
A public const is missing or renamed
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/pub_module_level_const_missing.ron
Failed in:
VSM_VTL_CALL_FUNC_ID_GENERATE_IDENTITY_SIGNING_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:55
VSM_VTL_CALL_FUNC_ID_SET_PLATFORM_ROOT_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:52
--- failure trait_method_added: pub trait method added ---
Description:
A non-sealed public trait added a new method without a default implementation, which breaks downstream implementations of the trait
ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-item-no-default
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_method_added.ron
Failed in:
trait method litebox_common_lvbs::Vtl1Gate::set_crng_seed in file /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:973

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@athvu@sangho2
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Combine PRK and IDK_S generation VTL calls by athvu · Pull Request #1130 · microsoft/litebox · GitHub
Skip to content

Combine PRK and IDK_S generation VTL calls - #1130

Open
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys
Open

Combine PRK and IDK_S generation VTL calls#1130
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys

Conversation

@athvu

Copy link
Copy Markdown
Contributor

No description provided.

@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from cdef9e4 to e06c50fCompareAugust 6, 2026 20:33
@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from b60829c to 56260e3CompareAugust 13, 2026 22:24
@athvu
Angelina Vu (athvu) marked this pull request as ready for review August 13, 2026 22:34

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Angelina,

Thank you for your effort! I have one recommendation: rather than modifying the fill_bytes_crng interface in the litebox crate, could you install a trusted seed throughVtl1Gate (e.g., set a new global var) and use that seed in LVBS's fill_bytes_crng implementation? As you already observed, the litebox crate is a shared common interface/abstraction. any changes of it affect many other subsystems, such that we require strong justification.

Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_shim_optee/src/idk.rs Outdated
Angelina Vu added 3 commits August 24, 2026 16:46
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
…neration.
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Undo changes to fill_bytes_crng interface
Set trusted seed through Vtl1Gate to use in LVBS fill_bytes_crng implementation
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, looks good to me. I left some comments and suggestion.

Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
}
VsmFunction::ExchangeSecrets => vtl1
.set_platform_root_key(params[0])
.and_then(|()| vtl1.set_crng_seed(params[0] + PRK_LEN as u64))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This depends on the ABI, but, at least for now, separating set_platform_root_key and set_crng_seed is a bit bad for performance and atomicity (redundant page mapping/copying and potential partial failure). That is, we can copy 64 bytes at once, rather than copy two 32 bytes in order. Anyway, it depends on VTL0-side argument passing, so it's up to you.

@github-actions

Copy link
Copy Markdown

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure enum_variant_added: enum variant added on exhaustive enum ---
Description:
A publicly-visible enum without #[non_exhaustive] has a new variant.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#enum-variant-new
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_added.ron
Failed in:
variant VsmFunction:ExchangeSecrets in /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:79
--- failure enum_variant_missing: pub enum variant removed or renamed ---
Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It may have been renamed or removed entirely.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_missing.ron
Failed in:
variant VsmFunction::SetPlatformRootKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:79
variant VsmFunction::GenerateIdentitySigningKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:80
--- failure pub_module_level_const_missing: pub module-level const is missing ---
Description:
A public const is missing or renamed
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/pub_module_level_const_missing.ron
Failed in:
VSM_VTL_CALL_FUNC_ID_GENERATE_IDENTITY_SIGNING_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:55
VSM_VTL_CALL_FUNC_ID_SET_PLATFORM_ROOT_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:52
--- failure trait_method_added: pub trait method added ---
Description:
A non-sealed public trait added a new method without a default implementation, which breaks downstream implementations of the trait
ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-item-no-default
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_method_added.ron
Failed in:
trait method litebox_common_lvbs::Vtl1Gate::set_crng_seed in file /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:973

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@athvu@sangho2
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Combine PRK and IDK_S generation VTL calls by athvu · Pull Request #1130 · microsoft/litebox · GitHub
Skip to content

Combine PRK and IDK_S generation VTL calls - #1130

Open
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys
Open

Combine PRK and IDK_S generation VTL calls#1130
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys

Conversation

@athvu

Copy link
Copy Markdown
Contributor

No description provided.

@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from cdef9e4 to e06c50fCompareAugust 6, 2026 20:33
@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from b60829c to 56260e3CompareAugust 13, 2026 22:24
@athvu
Angelina Vu (athvu) marked this pull request as ready for review August 13, 2026 22:34

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Angelina,

Thank you for your effort! I have one recommendation: rather than modifying the fill_bytes_crng interface in the litebox crate, could you install a trusted seed throughVtl1Gate (e.g., set a new global var) and use that seed in LVBS's fill_bytes_crng implementation? As you already observed, the litebox crate is a shared common interface/abstraction. any changes of it affect many other subsystems, such that we require strong justification.

Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_shim_optee/src/idk.rs Outdated
Angelina Vu added 3 commits August 24, 2026 16:46
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
…neration.
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Undo changes to fill_bytes_crng interface
Set trusted seed through Vtl1Gate to use in LVBS fill_bytes_crng implementation
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, looks good to me. I left some comments and suggestion.

Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
}
VsmFunction::ExchangeSecrets => vtl1
.set_platform_root_key(params[0])
.and_then(|()| vtl1.set_crng_seed(params[0] + PRK_LEN as u64))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This depends on the ABI, but, at least for now, separating set_platform_root_key and set_crng_seed is a bit bad for performance and atomicity (redundant page mapping/copying and potential partial failure). That is, we can copy 64 bytes at once, rather than copy two 32 bytes in order. Anyway, it depends on VTL0-side argument passing, so it's up to you.

@github-actions

Copy link
Copy Markdown

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure enum_variant_added: enum variant added on exhaustive enum ---
Description:
A publicly-visible enum without #[non_exhaustive] has a new variant.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#enum-variant-new
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_added.ron
Failed in:
variant VsmFunction:ExchangeSecrets in /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:79
--- failure enum_variant_missing: pub enum variant removed or renamed ---
Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It may have been renamed or removed entirely.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_missing.ron
Failed in:
variant VsmFunction::SetPlatformRootKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:79
variant VsmFunction::GenerateIdentitySigningKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:80
--- failure pub_module_level_const_missing: pub module-level const is missing ---
Description:
A public const is missing or renamed
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/pub_module_level_const_missing.ron
Failed in:
VSM_VTL_CALL_FUNC_ID_GENERATE_IDENTITY_SIGNING_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:55
VSM_VTL_CALL_FUNC_ID_SET_PLATFORM_ROOT_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:52
--- failure trait_method_added: pub trait method added ---
Description:
A non-sealed public trait added a new method without a default implementation, which breaks downstream implementations of the trait
ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-item-no-default
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_method_added.ron
Failed in:
trait method litebox_common_lvbs::Vtl1Gate::set_crng_seed in file /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:973

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@athvu@sangho2
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' Combine PRK and IDK_S generation VTL calls by athvu · Pull Request #1130 · microsoft/litebox · GitHub
Skip to content

Combine PRK and IDK_S generation VTL calls - #1130

Open
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys
Open

Combine PRK and IDK_S generation VTL calls#1130
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys

Conversation

@athvu

Copy link
Copy Markdown
Contributor

No description provided.

@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from cdef9e4 to e06c50fCompareAugust 6, 2026 20:33
@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from b60829c to 56260e3CompareAugust 13, 2026 22:24
@athvu
Angelina Vu (athvu) marked this pull request as ready for review August 13, 2026 22:34

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Angelina,

Thank you for your effort! I have one recommendation: rather than modifying the fill_bytes_crng interface in the litebox crate, could you install a trusted seed throughVtl1Gate (e.g., set a new global var) and use that seed in LVBS's fill_bytes_crng implementation? As you already observed, the litebox crate is a shared common interface/abstraction. any changes of it affect many other subsystems, such that we require strong justification.

Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_shim_optee/src/idk.rs Outdated
Angelina Vu added 3 commits August 24, 2026 16:46
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
…neration.
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Undo changes to fill_bytes_crng interface
Set trusted seed through Vtl1Gate to use in LVBS fill_bytes_crng implementation
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, looks good to me. I left some comments and suggestion.

Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
}
VsmFunction::ExchangeSecrets => vtl1
.set_platform_root_key(params[0])
.and_then(|()| vtl1.set_crng_seed(params[0] + PRK_LEN as u64))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This depends on the ABI, but, at least for now, separating set_platform_root_key and set_crng_seed is a bit bad for performance and atomicity (redundant page mapping/copying and potential partial failure). That is, we can copy 64 bytes at once, rather than copy two 32 bytes in order. Anyway, it depends on VTL0-side argument passing, so it's up to you.

@github-actions

Copy link
Copy Markdown

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure enum_variant_added: enum variant added on exhaustive enum ---
Description:
A publicly-visible enum without #[non_exhaustive] has a new variant.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#enum-variant-new
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_added.ron
Failed in:
variant VsmFunction:ExchangeSecrets in /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:79
--- failure enum_variant_missing: pub enum variant removed or renamed ---
Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It may have been renamed or removed entirely.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_missing.ron
Failed in:
variant VsmFunction::SetPlatformRootKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:79
variant VsmFunction::GenerateIdentitySigningKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:80
--- failure pub_module_level_const_missing: pub module-level const is missing ---
Description:
A public const is missing or renamed
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/pub_module_level_const_missing.ron
Failed in:
VSM_VTL_CALL_FUNC_ID_GENERATE_IDENTITY_SIGNING_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:55
VSM_VTL_CALL_FUNC_ID_SET_PLATFORM_ROOT_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:52
--- failure trait_method_added: pub trait method added ---
Description:
A non-sealed public trait added a new method without a default implementation, which breaks downstream implementations of the trait
ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-item-no-default
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_method_added.ron
Failed in:
trait method litebox_common_lvbs::Vtl1Gate::set_crng_seed in file /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:973

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@athvu@sangho2
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Combine PRK and IDK_S generation VTL calls by athvu · Pull Request #1130 · microsoft/litebox · GitHub
Skip to content

Combine PRK and IDK_S generation VTL calls - #1130

Open
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys
Open

Combine PRK and IDK_S generation VTL calls#1130
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys

Conversation

@athvu

Copy link
Copy Markdown
Contributor

No description provided.

@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from cdef9e4 to e06c50fCompareAugust 6, 2026 20:33
@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from b60829c to 56260e3CompareAugust 13, 2026 22:24
@athvu
Angelina Vu (athvu) marked this pull request as ready for review August 13, 2026 22:34

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Angelina,

Thank you for your effort! I have one recommendation: rather than modifying the fill_bytes_crng interface in the litebox crate, could you install a trusted seed throughVtl1Gate (e.g., set a new global var) and use that seed in LVBS's fill_bytes_crng implementation? As you already observed, the litebox crate is a shared common interface/abstraction. any changes of it affect many other subsystems, such that we require strong justification.

Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_shim_optee/src/idk.rs Outdated
Angelina Vu added 3 commits August 24, 2026 16:46
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
…neration.
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Undo changes to fill_bytes_crng interface
Set trusted seed through Vtl1Gate to use in LVBS fill_bytes_crng implementation
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, looks good to me. I left some comments and suggestion.

Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
}
VsmFunction::ExchangeSecrets => vtl1
.set_platform_root_key(params[0])
.and_then(|()| vtl1.set_crng_seed(params[0] + PRK_LEN as u64))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This depends on the ABI, but, at least for now, separating set_platform_root_key and set_crng_seed is a bit bad for performance and atomicity (redundant page mapping/copying and potential partial failure). That is, we can copy 64 bytes at once, rather than copy two 32 bytes in order. Anyway, it depends on VTL0-side argument passing, so it's up to you.

@github-actions

Copy link
Copy Markdown

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure enum_variant_added: enum variant added on exhaustive enum ---
Description:
A publicly-visible enum without #[non_exhaustive] has a new variant.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#enum-variant-new
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_added.ron
Failed in:
variant VsmFunction:ExchangeSecrets in /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:79
--- failure enum_variant_missing: pub enum variant removed or renamed ---
Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It may have been renamed or removed entirely.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_missing.ron
Failed in:
variant VsmFunction::SetPlatformRootKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:79
variant VsmFunction::GenerateIdentitySigningKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:80
--- failure pub_module_level_const_missing: pub module-level const is missing ---
Description:
A public const is missing or renamed
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/pub_module_level_const_missing.ron
Failed in:
VSM_VTL_CALL_FUNC_ID_GENERATE_IDENTITY_SIGNING_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:55
VSM_VTL_CALL_FUNC_ID_SET_PLATFORM_ROOT_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:52
--- failure trait_method_added: pub trait method added ---
Description:
A non-sealed public trait added a new method without a default implementation, which breaks downstream implementations of the trait
ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-item-no-default
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_method_added.ron
Failed in:
trait method litebox_common_lvbs::Vtl1Gate::set_crng_seed in file /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:973

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@athvu@sangho2
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); })(); Combine PRK and IDK_S generation VTL calls by athvu · Pull Request #1130 · microsoft/litebox · GitHub
Skip to content

Combine PRK and IDK_S generation VTL calls - #1130

Open
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys
Open

Combine PRK and IDK_S generation VTL calls#1130
Angelina Vu (athvu) wants to merge 5 commits into
mainfrom
avu/keys

Conversation

@athvu

Copy link
Copy Markdown
Contributor

No description provided.

@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from cdef9e4 to e06c50fCompareAugust 6, 2026 20:33
@athvu
Angelina Vu (athvu)force-pushed the avu/keys branch 2 times, most recently from b60829c to 56260e3CompareAugust 13, 2026 22:24
@athvu
Angelina Vu (athvu) marked this pull request as ready for review August 13, 2026 22:34

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Angelina,

Thank you for your effort! I have one recommendation: rather than modifying the fill_bytes_crng interface in the litebox crate, could you install a trusted seed throughVtl1Gate (e.g., set a new global var) and use that seed in LVBS's fill_bytes_crng implementation? As you already observed, the litebox crate is a shared common interface/abstraction. any changes of it affect many other subsystems, such that we require strong justification.

Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_shim_optee/src/idk.rs Outdated
Angelina Vu added 3 commits August 24, 2026 16:46
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
…neration.
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Undo changes to fill_bytes_crng interface
Set trusted seed through Vtl1Gate to use in LVBS fill_bytes_crng implementation
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>
Signed-off-by: Angelina Vu <angelinavu@microsoft.com>

@sangho2Sangho Lee (sangho2) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, looks good to me. I left some comments and suggestion.

Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
Comment threadlitebox_platform_lvbs/src/host/lvbs_impl.rs Outdated
Comment threadlitebox_runner_lvbs/src/lib.rs Outdated
}
VsmFunction::ExchangeSecrets => vtl1
.set_platform_root_key(params[0])
.and_then(|()| vtl1.set_crng_seed(params[0] + PRK_LEN as u64))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This depends on the ABI, but, at least for now, separating set_platform_root_key and set_crng_seed is a bit bad for performance and atomicity (redundant page mapping/copying and potential partial failure). That is, we can copy 64 bytes at once, rather than copy two 32 bytes in order. Anyway, it depends on VTL0-side argument passing, so it's up to you.

@github-actions

Copy link
Copy Markdown

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure enum_variant_added: enum variant added on exhaustive enum ---
Description:
A publicly-visible enum without #[non_exhaustive] has a new variant.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#enum-variant-new
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_added.ron
Failed in:
variant VsmFunction:ExchangeSecrets in /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:79
--- failure enum_variant_missing: pub enum variant removed or renamed ---
Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It may have been renamed or removed entirely.
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_missing.ron
Failed in:
variant VsmFunction::SetPlatformRootKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:79
variant VsmFunction::GenerateIdentitySigningKey, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:80
--- failure pub_module_level_const_missing: pub module-level const is missing ---
Description:
A public const is missing or renamed
ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/pub_module_level_const_missing.ron
Failed in:
VSM_VTL_CALL_FUNC_ID_GENERATE_IDENTITY_SIGNING_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:55
VSM_VTL_CALL_FUNC_ID_SET_PLATFORM_ROOT_KEY in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/17ec97183756e80b13e1778dfaf85ac786992729/litebox_common_lvbs/src/lib.rs:52
--- failure trait_method_added: pub trait method added ---
Description:
A non-sealed public trait added a new method without a default implementation, which breaks downstream implementations of the trait
ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-item-no-default
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_method_added.ron
Failed in:
trait method litebox_common_lvbs::Vtl1Gate::set_crng_seed in file /home/runner/work/litebox/litebox/litebox_common_lvbs/src/lib.rs:973

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@athvu@sangho2