Lecture 11
Lecture 11
Client-Side Technology
Server-Side Technology
Client-Side Technology
• Helpers and Plug-ins
– Helper programs are applications that can add
functionality to Web browsers
• Examples: WinZip or Acrobat Reader
• A helper program has to be installed by the user
• The helper program is then invoked
• Any program can basically become a helper
• A major drawback of helpers is their complex
communication with the browser. Plug-ins can solve this
problem
– A plug-in is a helper program permanently installed
into the browser for optimized communication
Client-Side Technology
• Java Applets
– Programs written in Java that are loaded dynamically
into the browser
– They run in a so-called “sandbox”, which prevents
them from directly accessing system resources on
the client, or lets them access resources only after
checking security policies
– Applets are loaded by a Web server and executed in
a browser within a runtime environment called Java
Virtual Machine
– Applets are not persistently stored on a system.
Client-Side Technology
• ActiveX Controls
– ActiveX Controls are standard COM (Components Objects Model)
components designed to provide a certain set of interfaces (COM interfaces)
– A Web browser can load such a component from a Web server, instantiate it
via the COM runtime system, and then use that component’s functionality
– ActiveX Controls are compiled into binary code, which provides excellent
performance
– ActiveX Controls are stored in the browser’s special cache directory for
faster processing
– It can access all system areas and functions of the user who owns the
security context
– Therefore, Microsoft has developed a method allowing ActiveX Control
vendors to use a crypto method to sign these components
– When an ActiveX Control is loaded in a browser, the certificate of the
ActiveX vendor can be displayed
– A user can decide whether he or she agrees to run the program
– It can be developed in different languages: Java, Visual Basic, and C++
Next Class
• Document-Specific Technologies for Client-Side