Network Accessible Trusted Assembly Cache
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Trusted assemblies caches in software systems are limited to predefined locations and cannot be modified without changing the program code, restricting flexibility and accessibility of trusted assemblies, which are typically located on the same computer system as the software applications.
Innovation Solution
A method to access a trusted assembly from a virtualized location, where the computer system resolves a virtualized location to a physical location, verifies the assembly's trustworthiness, and accesses it from that location, allowing for remote storage and dynamic location changes without modifying the program code.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If trusted assemblies cache is located on the same computer system and uses predefined locations, then program processing efficiency is improved through trusted access, but flexibility and accessibility of trusted assemblies deteriorates
Solution Approach 1:
The patent introduces a network dimension to the traditional local assemblies cache, allowing assemblies to be accessed from remote computer systems over a network. This transforms the single-location cache into a distributed network-wide cache system, enabling programs on different computers to access trusted assemblies remotely while maintaining the efficiency benefits of trusted access.
Solution Approach 2:
The patent creates a universal assemblies cache system that serves multiple computer systems and multiple programs simultaneously. The network-accessible cache acts as a shared resource that can be accessed by any authorized program on any computer in the network, providing universal access to trusted assemblies across the entire network infrastructure.
2Productivity
If trusted assemblies cache location is predefined in the software program, then program processing efficiency is improved through direct access, but adaptability of cache location deteriorates
Solution Approach 1:
The patent introduces an intermediary layer (the virtual path resolution mechanism and network cache access layer) between the program's predefined location reference and the actual physical cache location. This intermediary handles the translation and network communication, allowing programs to use simple predefined paths while the system manages the complex network location resolution and physical cache access transparently.
Solution Approach 2:
The patent extracts the cache location management functionality from the program code itself and places it in the system layer. The program only needs to specify a virtual path, while the system extracts and handles the complex tasks of resolution, network communication, and physical location determination, separating concerns between program simplicity and system flexibility.
3Reliability
If assemblies cache is secured to allow read and execute access but deny write access, then program security is improved through protection from overwriting, but program functionality deteriorates due to inability to update assemblies
Solution Approach 1:
The patent implements dynamic access control where the cache can transition between read-only and read-write states. Individual cache locations can be dynamically updated by authorized processes (maintaining security for most assemblies) while allowing necessary updates. The system dynamically manages which assemblies are locked and which can be updated, providing both security and update capability.
Solution Approach 2:
The patent applies different access permissions to different locations within the assemblies cache. Rather than making the entire cache read-only or read-write, the system applies local quality control where specific cache locations have read-only protection while others allow updates. This enables security for critical assemblies while permitting updates for others that need maintenance.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
In one embodiment, a computer system performs a method for accessing a trusted assembly from a virtualized location. A computer system detects receipt of a request to access an assembly. The address of the assembly is expressed in the request as a virtualized location. The computer system resolves the virtualized location to a physical location where the assembly is physically stored. The resolving includes accessing an information store that maintains the current physical location corresponding to the requested assembly's virtualized location. The computer system determines whether the requested assembly qualifies as a trusted assembly by verifying that the assembly sufficiently complies with information encoded within the assembly. Lastly, upon determining that the requested assembly is trusted, the computer system accesses the requested assembly from the physical location.