Technologies-I: Uttam K. Roy
Technologies-I: Uttam K. Roy
Technologies-
I
Uttam K. Roy
© 4
Kid
© 5
Kid
© 6
Kids
© 7
Teenagers
© 8
Professional
© 9
Aged
© 10
Range of users(0-100)
© 11
U s e r s (in b illio n )
0
1
2
3
©
Year
WWW 1990-2015
12
Users in India
USA
CHINA
INDIA
© 13
Are all doing
useful things?
© 14
Impacts of WWW
© 15
They are linked
© 16
Internet Bank Fraud
Rs11,022 Crore of Frauds
Discovered In Public Sector Banks
Between Apr-Dec 2014
© 17
© 18
Bank Fraud Rate
12000
10000
Farud (in crore)
8000
6000
4000
2000
0
2009 2010 2011 2012 2013 2014 2015
Year
© 19
© 20
Resons?
Is WWW itself
faulty?
Not designed
properly?
© 21
Web as a piece of cake
© 22
Don’t ask me
I don’tanything.
know
I can use only
It’s not my job
facebook.
© 23
A little knowledge ↓ no. of
fraudulent activities drastically.
© 24
Two options
© 25
eb
Technologies-
I
Uttam K. Roy
Web Safety
© 27
Web
Technologies
: Basics
A brief history
© 29
WWW—A brief history
TimComputer
Berners-Lee was
Year 1990
working in CERN Lab. in
networks exist
Geneva, Switzerland.
that time
© 30
WWW—history contd.
Tim
Fileswanted
Developed
were a
tosystem
access
stored in
them
computers
© 31
What did he developed
Developed everything
Web server (CERN httpd)
Browser (WWW)
Protocol,
First website
Want to see?
© 32
First web site
© 33
First web site
© 34
© 35
Detail history
http://info.cern.ch
© 36
WWW Today
Internet
© 38
WWW—What?
WorldWide Web—a repository of
information
Text, audio, video, Image etc.
Accessible from everywhere
Mistakenly called as Internet
© 39
WWW
Purpose
◦ To share information
How to share?
◦ A protocol is needed
◦ HyperText Transfer Protocol (HTTP)
© 40
HyperText
Transfer
Protocol
HTTP Overview
Purpose?
◦ Transfer resources
A client-server protocol
Components
© 42
How HTTP works?
Network
Network
Send
Send me
me
index.html
index.html
Here
Here itit is
is
© 43
Web Server
Processes requests via HTTP
Distributes info on the WWW
Current market share
Product Vendor Percent(April 2015)
Apache Apache 39.25%
IIS Microsoft 27.83%
nginx NGINX, Inc. 14.87%
GWS Google 2.36%
© 44
The Protocol
Two message
◦ Request message
◦ Response message
Messages
Messages
Request
Request Response
Response
© 45
Message format
© 46
The Protocol
Request
Request
Response
Response
© 47
Resource Addresses
URL
◦ http://www.yahoo.com/
© 48
URL Format contd.
Method
© 49
HyperText
Markup
Language
What?
Used to write web pages
Layout
and hyperlink specification
language
Definesthe syntax and placement of
various media like text, images etc
Standardizedby World Wide Web
Consortium ( )
© 51
HTML Flavors
HTML – Hyper Text Markup
Language
SGML – Standard Generalized
Markup Language
XHTML - Extensible HTML
DHTML - Dynamic HTML
XML – Extensible Markup Language
© 52
Files
HTML is structured in hierarchical
order
Organized in hierarchical fashion
such as File management in
computer
DOM – Document Object Model
© 53
Components
Tags
◦ Commands to do something
<html>, <body>, <hr>, <br>
Attributes
© 54
Structure
Tree like structure <html>
<head>
html <title>
…
head body </title>
…
title </head>
<body>
…
</body>
</html>
© 55
Example
<html>
<head>
<title>First html</title>
</head>
<body>
Hello World!
<hr width="200" align="left">
</body>
</html>
© (/web/html/hello.html) 56
Result
© 57
Another Example
login.html
<html>
<head>
<title>My First html page</title>
</head>
<body>
<form action="ckeck.jsp">
<table>
<tr><td>login</td>
<td><input type="text" size=10></td></tr>
<tr><td>password</td>
<td><input type="password" size=10></td></tr>
</table>
<input type="reset" value="Clear">
<input type="submit" value="Login">
</form>
</body>
</html>
© 58
Another Example
© 59
Released5th version
in October 2014
http://www.w3.org/TR/html5/
© 60
Cascading
Style Sheet
CSS Motivation
Mixingdisplay instructions and style
information:
Adds complexity
Inefficient mechanism for handling display
characteristics of multi-page Web sites
Limits cross-platform compatibility of content
limits diversity of styles
Solution?
© 62
Separation of style info
Content
Style
Web
page
© 63
Benefits
Same CSS may be applied to
different web pages
Style Web
Web
page page
Web Web
page page
© 65
Benefits
Different
CSS may be applied to a
web page
Body
Layout Text
Text
Physical layout
Heading
Headings
Body
Body
© 66
CSS for devices
Choose suitable CSS
BROWSER
Content CSS
CSS
CSS
MOBILE
Content
Tab
© 67
Example
<!--/web/css/page1.html-->
<!--/web/css/page0.html-->
<html>
<body>
<head>
<link
<p><p rel="stylesheet" type="text/css"
style='color:red;font-size:40pt;'>
color:red; font-size:40pt;
href="mystyle1.css"
Hello World! />
</head>
</p>
</body>
<body>
</html>
<p>Hello World!</p> /*mystyle1.css*/
</body> p {
</html>
}
© 68
Another example
<!--page2.html-->
<html>
<head>
<link rel="stylesheet" type="text/css"
href="mystyle2.css" />
</style>
</head>
<body>
<p>abc</p>
</body>
</html>
p:first-letter {font-size: 500%; }
p:first-line {font-variant: small-
caps;font-weight: bold }
© 69
Result
© 70
Latest Standard
More features
Modules
© 71
An HTML system
HTML
document Web Server
Internet
Web Client
Parser, formatter,
interface
© 73
Role of HTML
HTML
© 74
Role of XML
Designed to structure, transport and
store data
Transformation and Dynamic data
customization
Interoperable
way to represent and
process documents
Self descriptive
© 75
Example
<note>
<to>John</to>
<from>Ani</from>
<heading>Reminder</heading>
<body>Return my book on Monday</body>
</note>
© 76
Another example
<song>
<title>Requiem</title>
<composer>Mozart</composer>
</song>
© 77
Another Example
<question>
<text>What is the full form of XML?</text>
<A>eXtra Markup Language</A>
<B>eXtensible Markup Language</B>
<C>X-Markup Language</C>
<D>eXpandable Markup Language</D>
<answer value=“B”/>
</question>
© 78
Another Example
<schedule>
<appointment>
<subject>Lecture on web design</subject>
<when>
<date day=‘29’ month=‘08’ year=‘2013’/>
<startTime hour=‘2’ minute=‘30’/>
</when>
</appointment>
<appointment>
<subject>Setting queston paper</subject>
<when>
<date day=‘29’ month=‘08’ year=‘2013’/>
<startTime hour=‘10’ minute=‘30’/>
</when>
</appointment>
</schedule>
© 79
Another Example
<contact>
<person>
<name>B. S. Roy</name>
<number>9345654334</number>
</person>
<person>
<name>G. Mahapatra</name>
<number>9444554734</number>
</person>
</contact>
© 80
Role of XML
Not a replacement of HTML
◦ XML focuses on what data are
◦ HTML focuses on how data look
Tagsare custom defined (not
predefined)
◦ Functional meaning depends on
application
© 81
Displaying XML
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl"
href="books.xsl"?>
<bookstore>
<book category="literature">
<title lang="beng">Sanchoita</title>
<author>Rabindranath Tagore</author>
<year>2009</year>
<price>200.00</price>
</book>
…
© 82
XSLT
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method='html' version='1.0' encoding='UTF-8' indent='yes'/>
<xsl:template match="/">
<html>
<body>
My Book Collection:
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th><th>Author</th><th>Year</th><th>Price</th>
</tr>
<xsl:for-each select="bookstore/book">
<tr>
<xsl:for-each select="./*">
<td><xsl:value-of select="."/></td>
</xsl:for-each>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
© 83
Result
© 84
Validation
XML documents contains custom
tags
Howwill you ensure that XML
document contains expected tags?
Solution
© 85
© 86
XSLT
© 88
XSLT
<employee>
<name>K. Pal</name>
<sex>male</sex>
<status>single</status>
<salary basic='1500' DA='1000'/>
</employee>
Transformation
Request
Network
Network
Response
Client-side Server-side
© 92
Programming Paradigm
Client-side
Server Side
◦ Servlet, JSP, JSF, ASP, PHP, CGI
© 93
Role
HTML
© 95
Example
The <script> Tag
◦ JavaScript programs are run from within an HTML
document
◦ <script> and </script>
Used to notify the browser that JavaScript statements
are contained within
© 96
Example contd.
Java Script Start Tag
<html>
<body>
<script language = "JavaScript">
document.writeln("Hello
world!");
</script> Java Script End Tag
</body>
</html>
© 97
Another example
multiplyEvent.htm
password.html
validation.html
DHTML/dynamicForm.htm
DHTML/dynamicTable.htm
© 98
Related Technologies
© 99
Server Side
Programming
Basic Idea
Find handler
temp.jsp
Execute
Network
Network
Here it is
HTML Response
Web Browser
Web Server Extension
© 101
Server-side technologies
Servlet
JSP
ASP
PHP
JavaScript
CGI
© 102
Java Server
Pages
JSP
Embed Java code in html pages
directly
Uses delimiters <% and %>
Java
is an extremely versatile
language
The power of JSP is unquestionable
© 104
Temperature conversion
<table border="1" align="center">
<caption>Temperature Conversion chart</caption>
<tr><th>Celsius</th><th>Fahrenheit</th></tr>
<%
for(int c = 0; c <= 100; c+=20) {
double f = (c*9)/5.0 + 32;
out.println("<tr><td>" + c + "</td><td>" + f +
"</td></tr>");
}
%>
</table>
© 105
Retrieving parameters
<%
String name =request.getParameter("name");
out.println("Hello " + name);
%>
© 106
Adding two numbers
<%
int a = Integer.parseInt(request.getParameter("a"));
int b = Integer.parseInt(request.getParameter("b"));
out.println(a + " + " + b + " = " + (a + b));
%>
© 107
Examples
temp.jsp
getParameterDemo.jsp
add.jsp
© 108
Session Tracking
intUrl.jsp
intHidden.jsp
intCookie.jsp
intSession.jsp
© 109
Java DataBase Connectivity
DataBase access
© 110
Supporting Databases
© 111
Example
// D:\apache-tomcat-
6.0.18\webapps\wt\ajax
//result.htm
//getResult.jsp
© 112
Problems of traditional web applications
A framework to develop better, faster and
© 114
Example
// D:\apache-tomcat-
6.0.18\webapps\wt\ajax
//getResult.jsp
© 115
Popular scripting language
Syntax
similar to C which is why it is
so popular.
An example
© 116
<?php echo '<p>Hi! from php'; ?>
© 117
Perl
#!D:/Perl64/bin/perl.exe
print "Content-type: text/html\n\n";
print "Hi! from perl!";
© 119
#!D:/Python27/python.exe
print "Content-Type: text/html\n"
print "Hi! from python"
© 120
Shell script
@echo off
echo Content-Type: text/plain
echo.
echo Hi! from batch file
© 121
#include <stdio.h>
int main() {
printf("Content-type: text/html\n\n");
printf("Hello world from c");
return 0;
}
© 122
An application
http://127.0.0.1:8080/web/exec.htm
© 123
Web Safety
© 125
© 126
Web Safety
How important?
It
is not possible to give up using
web and sit back
Must find a way out yourself
Conventional approaches have
failed to fully protect
© 127
Web Threats
Worms
Trojan Horse
Bots and Botnets
Hacking
Phishing
Spam
Spyware/Malware/Adware/Ransomware
Virus
© 128
Reasons?
Is not the web itself safe?
or
© 129
WWW: Weak Points
SMTP
CGI
Session Tracking
© 130
How do they spread?
Can't do anything without your help.
© 131
Anti-virus
Can an anti-virus really
protect your computer?
What is a virus?
An unwanted(?) program
© 132
An example
Write following in a batch file dc.bat
(say)
del *.class
© 133
How Anti-virus works?
Consults a virus definition file
If
file does not have info. about a
virus?
Anti-virus fails
Remedy
© 134
Important questions
How frequently will you update?
© 137
Be Web Safe
Check before Install
Use a firewall
© 138
Be Web Safe
Avoid sites that do not use https
© 139
Be Web Safe
Beware of AJAX
© 140
THINK
True
Helpful
Inspiring
Necessary
Kind
© 141
Web
Be
Wide
Wise