SQLBase for Smart Cards Relational Database for Java Cards - PowerPoint PPT Presentation

1 / 37
About This Presentation
Title:

SQLBase for Smart Cards Relational Database for Java Cards

Description:

Programming via any COM enabled tool. Open backend support. RDBMS Servers, ... WAP. SNAP API. SNAP Marshal. SNAP Comm. OLE DB Pool. Services. MTS, MSMQ. COM ... – PowerPoint PPT presentation

Number of Views:166
Avg rating:3.0/5.0
Slides: 38
Provided by: joefa2
Category:

less

Transcript and Presenter's Notes

Title: SQLBase for Smart Cards Relational Database for Java Cards


1
SQLBase for Smart CardsRelational Database for
Java Cards
SQL Network for AppliancesConnectivity for the
Post-PC Generation
  • Joe Falcone
  • Chief Technical Officer
  • Centura Software Corporation
  • joe.falcone_at_centurasoft.com

2
Things have changed
  • On the client side
  • Fat Client goes on diet
  • New mobile clients
  • New Post-PC clients
  • All connected
  • Client Agnosticism
  • On the server side
  • Storing more data
  • Hosting objects
  • Serving business logic
  • Integrating the back office
  • Server Centric Apps

3
The Post-PC Generation is HERE
  • Todays computing has developed around PCs
  • New Post-PC application platforms are very thin
  • Very limited computing power and memory resources
  • No single OS or User Interface standard
  • All clients are getting wired
  • Multiple and heterogeneous network protocols
  • New networked apps paradigms
  • Always available connectivity (on demand)
  • Always connected (permanent)
  • Occasionally connected (on availability)

4
The Centura Vision
Post-PC Computing is just an evolution of the
Client-ServerParadigm
5
The 5 Waves of Computing
HQ Corporation Enterprise Community
Users
Front Office
Back Office
Appliances
Web
Mobile Office
SQLBase SafeGarde
SQLBase Exchange
6
Post-PC Universe
Windows CEEPOCPALM OS
Hand Held DevicesMetaphorical UIHigh Computing
Power
8, 16, 32 bitsRTOSLinux, FreeBSD
Smart DevicesPhysical UIMinimum Computing Power
Smart CardsNo UILimited Computing Power
Java CardWindows SCMultos
7
Centura Solutions for the Post-PC Age
SQLBase for Smart Cards SQL Network for Appliances
8
Smart Cards Market Context
  • Java Card on the ramp
  • gt25 Java Card licensees
  • 32K and 64K chips to break price barriers soon
  • Multiple applications per card inevitable
  • Smart Card numbers
  • 3.4 billion cards in circulation by year end 2001
  • One card per habitant in the year 2002
  • At CardTech/SecureTech
  • Presenting Database Services for Java Cards
  • at Tuesday Java Card Workshop

9
General Needs and Issues
  • Multi-Application cards
  • Issue of Card Application ownership
  • Security
  • Application Size
  • Data Sharing
  • Application Terminal loading and maintenance
  • Portability
  • Write once and deploy everywhere
  • Support for multiple platforms
  • Integration with IT
  • Smart Card enables existing applications
  • Less complex programming

10
Applications Profile
  • Application Size
  • Very little computing power and memory
  • Ultra Light Cardlets
  • Database Storage Support
  • Very limited local file storage capacity
  • Security is an issue
  • Online remote RDBMS access is required
  • Network Services
  • GSM Cell Phone SIM cards adopting Java Card
  • POS ready to access corporate distributed
    services

11
Programming Requirements
  • Local Database Server on Smart Card
  • Data persistence
  • Capacity requirements for a few hundred records
  • Simple and light programming interfaces via SQL
  • Reduced SQL instruction set (coded)
  • Small database files
  • Remote RDBMS Transactions Support
  • Light and simple enabling classes
  • On-line and Queued access
  • Open backend support
  • Integration with core business logic

12
Smart Card Platforms
Java Card Java 2.0 Uses 16 and 32 bit
Cards Programming in any Java Tool
Multos MAOSCO MONDEX Uses 8, 16 32 bit
Cards, including Java Card Programming in C
Java Windows Smart Card MS new OS
(modular) Uses 8 bit processors Programming in
Visual Studio VB
13
Database Services for Java Cards
14
Data Models for Smart Cards
Client/Server within the Smart Card
Local RDBMS on Smart CardCardlets talk to
SQLBase Server on Smart CardDML DDL
Client/Server to the Smart Card
Remote access to SQLBase on Smart CardExternal
applications talk to SQLBase Server on Smart
CardODBC JDBC interfaces via Proxy
Client/Server from the Smart Card
Access to remote data business logic
sourcesCardlets talk to Networked services via
SNAPIntegration Services
15

Client/Server within the Smart CardLocal DB
Access on the Card
Local RDBMS on Smart CardCardlets talk to
SQLBase Server on Smart CardDML DDL
16
Single Application Cards
  • Data is stored in file structures
  • Data manipulation is implemented as part of the
    application functionality
  • 25 of the application code is dedicated to data
    manipulation routines
  • Data can be persistent

17
The reality of Java Cards Today
  • Data is only persistent while the Cardlet is
    alive
  • Cardlets use file based data structures creating
    redundant proprietary data access routines
  • Cardlets could be disposable units and still
    benefit from data persistence
  • Cardlets should share basic cardholders data
  • To access external services Cardlets must develop
    proprietary interfaces

18
SQLBase for Smart Card
  • Client/Server Inside the Card
  • 8K RDBMS Java-based Server
  • Native page management engine
  • Full DML DDL support
  • Ultra light database file
  • Multiple Database files
  • High Security
  • Data space management

19
SQLBase for Smart Card Architecture
Cardlet
SQLBase for Smart Card
Security Mgr.
Connect
Business Logic
. . .
Select
SQL Engine
Fetch
Java Card JDBC Shared Objects
. . .
Insert
Page Mgr.
Logon
Update
Data Manipulation
Delete
Databases
. . .
. . .
System Tables
. . .
Java Byte Code
. . .
. . .
. . .
20
Characteristics
  • Internal Data Types
  • Byte
  • Integer
  • Short
  • Boolean
  • Binary
  • Char
  • W Char (Unicode)
  • External Data Types
  • Float
  • Double
  • Date
  • Time

21
Functions
  • DML
  • Insert statement
  • Update statement
  • Delete statement
  • Select statement
  • Fetch Next
  • Order By
  • Join (2)
  • DDL
  • Create table
  • Alter table (programmatic)
  • Drop table
  • Load/Unload
  • Truncate
  • Internal External
  • X X
  • X X
  • X X
  • X X
  • X X
  • X
  • X
  • X
  • X X
  • X
  • X X
  • X
  • X X

22
Functions
  • GENERAL
  • Connect /Disconnect
  • Commit
  • Rollback
  • DBA
  • Create Database
  • Destroy Database
  • Grant
  • Revoke
  • Set Server Password
  • Alter Password
  • Internal External
  • X X
  • X X
  • X X
  • X X
  • X X
  • X X
  • X X
  • X X
  • X X

23
Security
  • Uses native cryptography and Triple DES
  • Never Expose DB Schema
  • No catalog commands
  • Database Checksum for authentication
  • Server Password
  • Access code for Server owner to set and create
    databases
  • DBO Authority
  • Database Administration
  • User
  • RDBMS Native user with table access control
    mechanism
  • Cardholder PIN (Card)
  • Access code for the card holder

24
Other Features
  • Transaction Support
  • Limited to Log file size
  • Commit a transaction
  • Roll back a transaction
  • Multiple Connections
  • Multiple sessions, but one operation at a time
  • Primary Keys
  • Null not Null
  • Y2K Compliant

25
Design and Deployment
  • Card Designer
  • Server setup
  • Database design
  • Project Management
  • User Profiling
  • Version Control
  • Card customization
  • SQL pre-processor
  • Byte code generation
  • Cardholder personalization

26
Example Loyalty System
  • One common loyalty system
  • One Card
  • One Cardholder
  • Multiple Cardlets
  • Disposable Cardlets
  • Multiple databases

Cardholder
Transactions
Subscriber
ID (PK)NameLast NameEmailPhoneBalance
ID (PK)Merchant ID (FK)Subscriber ID
(FK)DatePhoneAmountDescription
ID (PK)Name
Merchant
ID (PK)Name
27
Value Added Proposition
  • Converts Smart Card into a general purpose
    computer
  • Enabling disposable Cardlets
  • Allowing data persistence independent of the
    Cardlets physical presence on the card
  • Enabling Cardlets to share data in a safe manner
  • Optimize space management
  • Allowing the Cardlets to focus on business logic
    and not in data management thus reducing size
    complexity
  • Maintaining optimal data space management

28
Client/Server to the Smart CardExternal
Application Access to the Smart Card Database
Remote Access to SQLBase on Smart CardExternal
Apps talk to SQLBase Server on Smart CardODBC
JDBC interfaces via Proxy
29
Remote SQLBase for Smart Card
  • External access via ODBC and JDBC interfaces
  • Transparent Smart Card commands
  • Reader and card independence
  • Like Client/Server for any programming tool

30
Value Added Proposition
  • Simple data manipulation on the card via open
    standards from external applications
  • JDBC ODBC
  • Simple Smart Card programming
  • Enables traditional programmers to use Smart
    Cards
  • Using standard programming tools like VB,
    SQLWindows, Java, VC, etc.

31

Client/Server from the Smart CardRemote Access
to DB Business Logic
Local access to remote data business logic
sourcesCardlets talk to Networked services via
SNAPIntegration Services
32
SQL Network for Appliances
  • Projection of Smart Card and Terminals into a
    Windows NT environment as COM objects
  • Programming via any COM enabled tool
  • Open backend support
  • RDBMS Servers,
  • MTS Transaction Monitor
  • MSMQ Message Queue service
  • Directory Services, etc
  • Network support for GSM SMS, TCP/IP, etc

33
Two Tier Architecture
Client
Backend
Data Storage
DB Access
External Functions
Triggers
Internal Functions
Store Procedures
Constants
Ref. Integrity
Procedural Log.
Variables
Validations
TP Monitors
User Interface
Message Servers
Client APIs
Directory Servers
Runtime
Other
34
N Tier Architecture
SQL Network for Appliances
Client
Backend
Data Storage
DB Access
Triggers
COM Objects
Store Procedures
MTS Interface
Ref. Integrity
MSMQ Interface
Other Interfaces
Validations
TP Monitors
User Interface
Message Servers
Client APIs
Directory Servers
Runtime
Other
35
SNAP Model Taxonomy
SQL Network for Appliances
Client
Validations
User Interface
Constants
Services MTS, MSMQ
Variables
Procedural Log.
Internal Functions
DB Access
External Functions
36
How SNAP Works
Client
SQL Network for Appliances
Business Logic
TCP/IP
RS-232
. . .
COM
Communication Services
SNAP API
SMS
FTP
XML
HTTP
SNAP Marshal
WAP
. . .
SNAP Comm
. . .
37
Open Scalable Architecture
SQL Network for Appliances
Clients
Backends
Session Manager
TCP/IP
Java
COM
COM Objects
SQL
RS-232
Custom
Emit
OLE DB Pool
Custom
38
SQL Network for Appliances
SQL Network for Appliances
Clients
Backend
Integration Services
Hand Held PCs
RDBMS
Appliances
MTS
Smart Devices
MSMQ
Smart Cards
Directory Services
Phones
Other (SAP)
COM OLE DB
39
SQL Network for Appliances
  • On the Smart Card
  • Simple external function calls
  • Multiple Cardlets support
  • High security
  • Message based
  • On the Terminal
  • Client adapter
  • Projects COM object
  • Supports MTS, MSMQ, OLE DB

40
Real Life Example
Virtual Bank
  • One Electronic Purse
  • One Card
  • One holder
  • Multiple apps
  • Remote Transactions
  • Disposable Cardlets
  • Multiple databases

Drug Store
Grocery Store
41
SNAP Value Added Proposition
  • Simplify Cardlets by accessing external
    functions
  • Maintain critical business logic on the server
    side
  • Access to Business Intelligence
  • MSMQ message queue service
  • MTS transaction monitor
  • Directory Servers
  • Database Servers
  • True application partitioning with business logic
    and data access on the server
  • Extend the physical limits of the card by using
    server side resources
  • Simplifying the integration of existing apps

42
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com