Bootstrap Content Loading for Secure Low-Bandwidth Software Delivery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software applications, particularly web applications, face challenges due to their large size and storage requirements when designed to accommodate multiple settings and features, leading to bandwidth limitations and security issues, especially in contexts like OTT video streaming services.
Innovation Solution
The software application is split into modular chapters or modules, each built with specific features and settings, allowing for the creation of tailored applications that are downloaded and executed only when needed, using a bootstrap framework to manage dynamic loading and authentication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a software application is designed to cover all possible options and settings, then it can accommodate multiple service providers, countries, devices and features, but it becomes large in size and has significant persistent storage memory requirements
Solution Approach 1:
The software application is divided into multiple separate web pages, each corresponding to a specific setting combination (service provider, country, device type). Instead of one large application containing all features, the system creates multiple smaller, specialized web pages that can be independently served to users based on their specific needs.
Solution Approach 2:
Each web page is tailored with local quality by including only the source code portions relevant to its specific setting combination. This means each page has the exact features and functionality needed for that particular service provider, country, and device type, without unnecessary bloat from other configurations.
2Reliability
If a single page application is fully downloaded before running, then the application can execute locally with all features available, but the large size causes bandwidth limitations and slow loading times
Solution Approach 1:
The system extracts and removes unnecessary source code portions from each web page during the build process. By analyzing the specific settings for each web page and identifying which source code portions are not needed, the build system excludes those portions, resulting in smaller, more efficient web pages that download faster and consume less bandwidth.
Solution Approach 2:
The system implements dynamic code generation where the source code for each web page is dynamically assembled based on the specific settings combination. This allows the application to adapt its size and content to the user's specific needs, serving only the necessary code rather than a static large application for all scenarios.
3Ease of operation
If the entire application is downloaded before user authentication, then all functionality is available, but security issues arise as users can hack into the application and access content without subscription
Solution Approach 1:
The system performs preliminary action by implementing authentication checks and authorization logic during the web page generation and serving process. Before delivering the web page to the user, the system verifies the user's subscription status and permissions, and only then serves the appropriate web page with access to authorized content. This preliminary verification prevents unauthorized access before it can occur.
Solution Approach 2:
The system introduces an intermediary authentication layer between the user and the application content. This intermediary process validates user credentials and subscription status, and based on the validation result, selectively serves or blocks access to specific web pages and their associated content, thereby protecting copyrighted material from unauthorized access.
Data Source
AI summary
A method for content delivery to a user device, that helps to reduce bandwidth requirements and increases security of the content. The method includes receiving a download request from the user device, the download request including request data corresponding to characteristics of the user device, analyzing the request data to select a bootstrap module; transmitting the bootstrap module to the user device for download; analyzing an authentication characteristic to determine that the user device is authenticated for content viewing; transmitting a content catalogue to the user device; and upon receiving a user selection of a content item from the content catalogue, transmitting the user selected content item to the user device.


