WO2011162591A1 - Système et procédé d'authentification et d'exécution d'applications logicielles à partir d'un serveur de confiance relié à un serveur de prestataire de services - Google Patents
Système et procédé d'authentification et d'exécution d'applications logicielles à partir d'un serveur de confiance relié à un serveur de prestataire de services Download PDFInfo
- Publication number
- WO2011162591A1 WO2011162591A1 PCT/MY2010/000277 MY2010000277W WO2011162591A1 WO 2011162591 A1 WO2011162591 A1 WO 2011162591A1 MY 2010000277 W MY2010000277 W MY 2010000277W WO 2011162591 A1 WO2011162591 A1 WO 2011162591A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- server
- service provider
- trusted server
- software application
- trusted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/305—Authentication, i.e. establishing the identity or authorisation of security principals by remotely controlling device operation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2153—Using hardware token as a secondary aspect
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/105—Multiple levels of security
Definitions
- the present invention relates to system and method that allow a computer to access software applications stored in a remote server, and more particularly, to system and method that allow clients to access and execute software applications stored at a server site via a trusted third party.
- the Internet is a global system of interconnected computer networks, such as local area networks (LAN), wide area networks (WAN), and virtual private networks (VPN) formed into a single global network.
- LAN local area networks
- WAN wide area networks
- VPN virtual private networks
- a computer user by using the Internet, is able to interactively communicate with users located in different countries.
- a computer user resides in one particular country can access files stored in a server located in another country. For example, a user in Malaysia is able to access and download a document file from a university in U.S.
- the Internet acts like a universal library by providing electronic access to resources and information throughout the world.
- a user is able to view information or download files from the Internet, the user lacks a suitable system for providing the user to remotely execute software applications through the Internet.
- One advantage of providing such system is to prevent the user's computer from being attacked, as it is not required for the user to download any files or executable software applications from the Internet.
- Another advantage of providing such system is the improvement in efficiency, as the system can be implemented via a relatively slow network given that only data related to the software application are sent via the Internet.
- it is another advantage of providing such system in which it can be implemented even if the user's computer is low in performance, as the software application is not required to run on the user's computer.
- the object of the present invention is to provide a system for verifying and executing software application from a trusted third party server.
- the trusted server provides security analysis mechanisms, such as a language-based security mechanism to verify the security level of a software application or service based on predefined security policies and provides an environment for executing the software application in the trusted server.
- the system for verifying and executing software application from a remote server comprises of a server located at the service provider site, hereinafter refer to as “service provider server”, another server located at the trusted third party site, hereinafter refer to as “trusted server”, for connection to the service provider server, and a remote user terminal, hereinafter refer to as “client system”, for connection to the trusted server.
- the client system comprises of preferably but not limited to any devices that are capable of establishing a network connection, such as desktop computers, laptop computers, personal digital assistants (PDA), and cellular devices.
- the service provider server having means for storing at least one software application, means for duplicating a mirror copy of the software application, means for transmitting the image copy of the software application upon receiving a remote access request, and means for transmitting a proof-carrying result (PCR) value upon receiving a PCR request from the trusted server;
- the trusted server having means for establishing a trustworthy connection link between the trusted server and service provider server, means for receiving a verification request from the client system, a verification agent for verifying security properties of the software application, means for requesting input data from the client system, means for requesting the image copy of the software application from the service provider server, means for executing the software application using the input data, means for obtaining an output data from the executed software application, means for transmitting the output data to the client system, and an internal database for storing a list of available service provider server;
- the client system having means for transmitting user access request to the trusted server, means for transmitting input data to the trusted server upon receiving a request from the same, and means for receiving the output data from the
- the trustworthy connection link between the trusted server and service provider server further comprises of using Trusted Platform Module (TPM) to evaluate the trustworthiness of the service provider server and deciding whether or not to establish the connection link.
- TPM Trusted Platform Module
- the trusted server further comprises of verifying and executing a plurality of software applications from a plurality of service provider servers simultaneously.
- the network connection between the trusted server and service provider server, and client system and trusted server are established via preferably but not limited to the Local Area Network (LAN), Wide Area Network (WAN), Virtual Private Network (VPN), and Internet.
- LAN Local Area Network
- WAN Wide Area Network
- VPN Virtual Private Network
- Internet preferably but not limited to the Internet.
- the client system further comprises of an optional verification means for verifying the security properties of the software application.
- Another object of the present invention is to provide a method for verifying and executing software application from a trusted third party server.
- the trusted server provides the end-user (client) to use a software application or a service on a remote platform.
- the trusted server provides security analysis to verify the security level of the software application and an environment for executing the software application in the trusted server host machine.
- the method for verifying and executing software application from a remote server comprises of transmitting a verification request to a trusted server by the client system, requesting proof-carrying result (PCR) values from the service provider server by the trusted server, transmitting the PCR values to the trusted server by the service provider server, evaluating the trustworthiness of the service provider server using the PCR values by the trusted server, forwarding the verification request to the service provider server by the trusted server, duplicating at least an image copy of the software application by the service provider, transmitting at least an image copy of the software application to the trusted server, verifying the security properties of the software application by the trusted server, transmitting a signed acknowledgement to the client system and requesting the input data for software application execution by the trusted server, transmitting the input data to the trusted server by the client system, executing the mirror copy of the software application using the input data in the trusted server, and transmitting the output data obtained from executing the mirror copy of the software application to the client system by the trusted server.
- PCR proof-carrying result
- the PCR values are evaluated using the verification agent in the trusted system. Furthermore, the security properties of the software application are verified by comparing the security properties with a set of pre-defined security policy defined by the trusted server or the client system.
- the verification request further comprises of providing the trusted server with an identity (ID) of the service provider server by the client system.
- ID an identity of the service provider server by the client system.
- the verification request further comprises of providing at least a set of predefined security policy for verifying the security properties of the software application.
- the trusted server further comprises of generating at least a verification certificate and forward said certificate to the client system.
- the client system further comprises of verifying the verification certificate using the verification means.
- the trusted server further comprises of searching the internal database for determining a suitable service provider server for software application execution.
- Figure 1 is a block diagram of a system in accordance with the present invention
- Figure 2 is a block diagram of a service provider server in accordance with the system of the present invention
- FIG. 3 is a block diagram of a trusted server in accordance with the system of the present invention.
- Figure 4 is a block diagram of a client system in accordance with the system of the present invention
- Figure 5 is a data flow diagram for the system shown in Figure 1 in accordance with an embodiment of the present invention
- FIG. 6 is a data flow diagram for the system shown in Figure 1 in accordance with another embodiment of the present invention.
- FIG 7 is a data flow diagram for the system shown in Figure 1 in accordance with yet another embodiment of the present invention.
- Figure 8 is a data flow diagram for the system shown in Figure 1 in accordance with still yet another embodiment of the present invention.
- the system (100) comprises a service provider server (200) having at least one software application (210), a trusted server (300) having a network connection (500) with the service provider server (200), and a client system (400) having a network connection (500) with the trusted server (300).
- the network connection (500) comprises of preferably but not limited to Local Area Network (LAN), Wide Area Network (WAN), Virtual Private Network (VPN), and the Internet.
- the software applications (210) are stored in a media storage (220) having a direct connection to the service provider server (200).
- the media storage (220) comprises of any computer storage means, such as an internal hard disk, external hard disk, and USB thumb drive.
- a processing means (230), such as a CPU or a microcontroller unit having a built-in trusted platform module (TPM) chip is connected to the media storage (220) for creating a duplicate image copy of the required software application (210) and transfer the same to a network adapter (240).
- TPM trusted platform module
- the image copy of the software application (210) is then forwarded to the trusted server (300) via the network adapter (240), which is having a direct connection to the network (500).
- the built-in TPM chip will not be further described in this specification, as it is a common knowledge for a person having ordinary skill in the art of computer security.
- a processing means (330) such as a CPU or a microcontroller unit for executing the image copy of the software application (210) to obtain an output data.
- the processing means (330) further comprises of a verification agent (350) for verifying the security level of the software application (210).
- the verification agent (350) is a software-based verification program stored in the processing means (330), e.g. a verification firmware stored in the BIOS of the processing means.
- a network adapter (320) having direct connection to the network (500) and secured network (510) is connected to the processing means (330).
- the network adapter (320) further comprises of a TPM verification module (310) for verifying the trusted level of the service provider server (200). If the TPM of the service provider server (200) satisfies the pre-defined trusted level, the secured network (510) will be established between the service provider server (200) and the trusted server (300); otherwise no network connection will be established between the two parties (200, 300).
- the trusted server (300) further comprises of an internal database (340) for storing a list of trusted service provider servers (200). Also, the trusted server (300) is able to verify and execute a plurality of software applications (210) from a plurality of service provider servers (200) simultaneously.
- An input data (440) required for executing the software application (210) is stored in a media storage (430) having a direct connection to the client system (400).
- the media storage (430) comprises of any computer storage means, such as an internal hard disk, external hard disk, USB thumb drive, and any of the market available memory cards.
- a processing means (420), such as a CPU or a microcontroller unit is connected to the media storage (430) for retrieving the input data (440) required to execute the software application (210) and transfer to a network adapter (410).
- the input data (440) is then forwarded to the trusted server (300) via the network adapter (410), which is having a direct connection to the network (500).
- the client system (400) comprises of preferably but not limited to personal computers, laptop computers, personal digital assistants (PDA), and cellular devices. Furthermore, the client system (400) further comprises of verification means for verifying the security level of the software application (210). In another word, the security level of the software application (210) can be optionally verified by the client system (400) for the second time. Referring to figure 5, a preferred embodiment of a method for verifying and executing a software application (210) from a trusted server (300) linked to a service provider server (200) is provided.
- the client system (400) having the input data (440) sends the trusted server (300) a user access request.
- the trusted server (300) sends a request for PCR values to the service provider server (200).
- the service provider server (200) returns the trusted server (300) with the PCR values for evaluating the trustworthy level of the service provider server (200).
- the trusted server (300) evaluates the trustworthy level of the service provider server (200) by using the verification agent (310).
- the trusted server (300) forwards the user access request to the service provider server (200) requesting an image copy of the required software application (210).
- the service provider server (200) duplicates and image copy of the software application (210) and transmits the same to the trusted server (300).
- the trusted server (300) verifies the security properties of the software application (210) through checking the application code by means of language-based security technique.
- the language-based security technique will not be further described in this specification, as it is a common knowledge for a person having ordinary skill in the art of computer security.
- the trusted server (300) transmits a signed acknowledgement to the client system (400) informing the user that the software application (210) is safe to use and requests a copy of the input data (440) for software application (210) execution from the client system (400).
- the client system (400) forwards a copy of the input data (440) to the trusted server (300).
- the trusted server (300) executes the software application (210) by inputting the input data (440).
- the trusted server (300) upon completion of the software application execution process, the trusted server (300) returns to the client system (400) with a copy of output data obtained from the execution process.
- the user access request from the client system (400) comprises of the identification (ID) of the service provider server (200) and information of the software application (210) of user's interest. Furthermore, the client system (400) further comprises of verifying the trustworthiness of the signed acknowledgement from the trusted server (300) by using the verification means (450). Referring to figure 6, another preferred embodiment of the method for verifying and executing a software application (210) from a trusted server (300) linked to a service provider server (200) is provided. In this embodiment, at step 640, the user access request from the client system (400) further comprises of providing the trusted server (300) a user pre-defined security policy for verifying the security level of the software application (210).
- the security level of the software application (210) is verified in accordance with the user pre-defined security policy at step 612.
- the trusted server (300) further comprises of an internal database (340) having a complete list of available service provider servers (200).
- the trusted server (300) may browse through the internal database (340) at step 622 for determining a service provider server (200) having the software application (210) of user interest.
- the user access request from the client system (400) further comprises of providing the trusted server (300) a user pre-defined security policy for verifying the security level of the software application (210).
- the trusted server (300) further comprises of an internal database (340) having a complete list of available service provider servers (200).
- the trusted server (300) may browse through the internal database (340) at step 622 for determining a service provider server (200) having the software application (210) of user interest.
- a summary then of what has been hereinbefore described by way of example of the present invention is a system (100) for verifying and executing software applications (210) from a trusted server (300) linked to a service provider server (200), comprising a service provider server (200); a trusted server (300) having a network (500) connection to the service provider server (200); and a client system (400) having a network (500) connection to the trusted server (300);
- the service provider server (200) having means (220) for storing at least one software application (210), means (230) for duplicating an image copy of the software application (210), means (240) for transmitting the image copy of the software application (210) upon receiving a remote access request, and means (240) for transmitting a proof-carrying result (PCR) value upon receiving a PCR request from the trusted server (300);
- the trusted server (300) having means (310, 320) for establishing a trustworthy connection link between the trusted server (300) and service provider server (200), means (320) for
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
L'invention concerne un système (100) et un procédé d'authentification et d'exécution d'applications logicielles distantes (210), comportant un serveur (200) de prestataire de services, un serveur tiers (300) de confiance doté d'une connexion via un réseau (500) au serveur (200) de prestataire de services, et un système client (400) doté d'une connexion via le réseau (500) au serveur (300) de confiance. Le serveur (200) de prestataire de services conserve des applications logicielles (210), qui sont dupliquées et envoyées au serveur (300) de confiance suite à la réception d'une demande d'accès d'utilisateur émanant de celui-ci. Le serveur (300) de confiance est doté de moyens (350) d'authentification du niveau de sécurité de l'application logicielle (210) et de moyens (330) pour son exécution. Le système client (400) est doté de moyens d'envoi d'une demande d'accès d'utilisateur au serveur (300) de confiance, de moyens (410) d'envoi de données (440) d'entrée au serveur (300) de confiance et de moyens (410) de réception de données de sortie provenant de celui-ci.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| MYPI2010002964 | 2010-06-22 | ||
| MYPI2010002964A MY164406A (en) | 2010-06-22 | 2010-06-22 | System and method for verifying and executing software applications from a trusted server linked to a service provider server |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2011162591A1 true WO2011162591A1 (fr) | 2011-12-29 |
Family
ID=45371617
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/MY2010/000277 Ceased WO2011162591A1 (fr) | 2010-06-22 | 2010-11-15 | Système et procédé d'authentification et d'exécution d'applications logicielles à partir d'un serveur de confiance relié à un serveur de prestataire de services |
Country Status (2)
| Country | Link |
|---|---|
| MY (1) | MY164406A (fr) |
| WO (1) | WO2011162591A1 (fr) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018052256A1 (fr) * | 2016-09-16 | 2018-03-22 | Samsung Electronics Co., Ltd. | Procédé de fourniture d'accès sécurisé à des services ido d'hôtel par l'intermédiaire de dispositifs mobiles |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6295607B1 (en) * | 1998-04-06 | 2001-09-25 | Bindview Development Corporation | System and method for security control in a data processing system |
| US20020129277A1 (en) * | 2001-03-12 | 2002-09-12 | Caccavale Frank S. | Using a virus checker in one file server to check for viruses in another file server |
| US20090320115A1 (en) * | 2008-06-24 | 2009-12-24 | Dean Irvin L | Secure Network Portal |
| US20100083376A1 (en) * | 2008-09-26 | 2010-04-01 | Symantec Corporation | Method and apparatus for reducing false positive detection of malware |
-
2010
- 2010-06-22 MY MYPI2010002964A patent/MY164406A/en unknown
- 2010-11-15 WO PCT/MY2010/000277 patent/WO2011162591A1/fr not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6295607B1 (en) * | 1998-04-06 | 2001-09-25 | Bindview Development Corporation | System and method for security control in a data processing system |
| US20020129277A1 (en) * | 2001-03-12 | 2002-09-12 | Caccavale Frank S. | Using a virus checker in one file server to check for viruses in another file server |
| US20090320115A1 (en) * | 2008-06-24 | 2009-12-24 | Dean Irvin L | Secure Network Portal |
| US20100083376A1 (en) * | 2008-09-26 | 2010-04-01 | Symantec Corporation | Method and apparatus for reducing false positive detection of malware |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018052256A1 (fr) * | 2016-09-16 | 2018-03-22 | Samsung Electronics Co., Ltd. | Procédé de fourniture d'accès sécurisé à des services ido d'hôtel par l'intermédiaire de dispositifs mobiles |
| EP3497913A4 (fr) * | 2016-09-16 | 2019-06-19 | Samsung Electronics Co., Ltd. | Procédé de fourniture d'accès sécurisé à des services ido d'hôtel par l'intermédiaire de dispositifs mobiles |
| US10477398B2 (en) | 2016-09-16 | 2019-11-12 | Samsung Electronics Co., Ltd. | Method of providing secure access to hotel IoT services through mobile devices |
Also Published As
| Publication number | Publication date |
|---|---|
| MY164406A (en) | 2017-12-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11874921B2 (en) | Digital protection that travels with data | |
| US11165811B2 (en) | Computer security vulnerability assessment | |
| US9356965B2 (en) | Method and system for providing transparent trusted computing | |
| JP5396051B2 (ja) | 承認済みファイルと信頼されたドメインのデータベースを作成及び更新する方法及びシステム | |
| Oberheide et al. | CloudAV: N-Version Antivirus in the Network Cloud. | |
| CN105052108B (zh) | 自动欺骗性数字证书检测 | |
| CN109074452B (zh) | 用于生成绊网文件的系统和方法 | |
| US20190199711A1 (en) | System and method for secure online authentication | |
| US9455994B1 (en) | Techniques for intelligently executing a digital signature | |
| US20180234234A1 (en) | System for describing and tracking the creation and evolution of digital files | |
| US8307276B2 (en) | Distributed content verification and indexing | |
| US10091213B2 (en) | Systems and methods to provide secure storage | |
| US11522901B2 (en) | Computer security vulnerability assessment | |
| CN108027856A (zh) | 使用可信平台模块来建立攻击信息的实时指示器 | |
| US9860230B1 (en) | Systems and methods for digitally signing executables with reputation information | |
| WO2023174389A1 (fr) | Procédé et appareil d'évaluation d'état de sécurité, dispositif électronique et support de stockage lisible | |
| Abdullah et al. | Achieving consistency of software updates against strong attackers | |
| JP2008522292A (ja) | 情報システム構成要素解析から算出したトラストスコアに基づいて複数のネットワークエンドポイント間のアクセスを制御する方法 | |
| US12489753B2 (en) | Fine-grained segmentation and traffic isolation in data confidence fabric networks | |
| US11144636B2 (en) | Systems and methods for identifying unknown attributes of web data fragments when launching a web page in a browser | |
| WO2011162591A1 (fr) | Système et procédé d'authentification et d'exécution d'applications logicielles à partir d'un serveur de confiance relié à un serveur de prestataire de services | |
| Collins et al. | A Model for Opportunistic Network Exploits: The Case of P2P Worms. | |
| US9569619B1 (en) | Systems and methods for assessing internet addresses | |
| US20240403451A1 (en) | Software Engine for Abstracting Security Controls In One-Way Transfer Systems | |
| CN110347941B (zh) | 用于标识网页数据片段的未知属性的系统和方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10853749 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 10853749 Country of ref document: EP Kind code of ref document: A1 |