UEFI Variable Services RESTful API Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Operating systems typically limit access to firmware services, making it difficult for OS-based entities to access and manage firmware-managed resources, and existing methods for accessing firmware data are slow to implement and may not conform to industry standards, such as the Redfish standard for JSON formatting.

Innovation Solution

Utilizing existing UEFI variable services to implement a RESTful API that translates UEFI firmware variable service calls, including GetVariable, SetVariable, and GetNextVariable, into RESTful commands, allowing OS-based applications to access and manage firmware resources without exposing an additional firmware API, and providing security through HTTP Basic authentication or UEFI variable security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing UEFI variable services are used to access firmware resources, then access is restricted and requires additional firmware API exposure, but using a RESTful API allows standard OS applications to access firmware resources efficiently

Engineering Contradiction:
Improveaccess efficiencyVSAvoidfirmware API complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The firmware implements a universal RESTful API interface that can handle multiple types of firmware resource access operations (reading variables, setting variables, enumerating variables) through a single standardized interface, allowing OS applications to access different firmware resources using the same HTTP methods and JSON formatting rules

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces a RESTful API layer as an intermediary between OS applications and the underlying UEFI variable services. This intermediary translates standardized HTTP requests into UEFI-specific variable service calls, shielding applications from UEFI complexity while maintaining access efficiency

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If traditional firmware access methods are used, then access to firmware-managed resources is limited, but implementing a RESTful API enables standardized access conforming to industry standards like Redfish

Engineering Contradiction:
Improveaccess method flexibilityVSAvoidimplementation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The firmware implements dynamic response formatting that adapts to different request types and security contexts. The same RESTful interface can return different data formats (JSON, XML) and implement different authentication mechanisms based on the specific resource being accessed and the client's capabilities

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

A single RESTful API implementation provides universal access to multiple firmware resource types (system information, security settings, diagnostic data) using standardized HTTP methods, making the firmware adaptable to various OS applications without requiring application-specific firmware interfaces

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If firmware resources are accessed without standardized interfaces, then access is possible but security measures may be insufficient, but implementing standardized RESTful interfaces with HTTP Basic authentication enhances security

Engineering Contradiction:
ImprovesecurityVSAvoidauthentication mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The RESTful API layer acts as a secure intermediary that implements authentication and authorization logic. HTTP Basic authentication serves as the first layer of security, verifying client credentials before allowing access to firmware resources, while the translation layer can add additional UEFI-specific security checks

Inventive Principle:
Principle #24Intermediary (Mediator)

4Ease of operation

If OS-based applications directly access firmware services, then OS code changes are required, but using a RESTful API allows access without modifying OS code

Engineering Contradiction:
Improveapplication integration easeVSAvoidinterface layer complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The RESTful API implementation within the firmware provides self-service capabilities for OS applications. Applications can independently access firmware resources using standard HTTP clients and JSON parsing libraries without requiring OS-specific firmware interface implementations or code modifications

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10901821B2System and method for sending restful commands to UEFI firmware using UEFI variable services
Publication Date: 2021.01.26 INSYDE SOFTWARE CORP
  • US10901821B2 patent drawing
  • US10901821B2 patent drawing
  • US10901821B2 patent drawing

AI summary

A system and method for sending RESTful commands to UEFI firmware using UEFI variable services is discussed. Processed RESTful commands return data in a RESTful format.