Ray Chance President Browsercraft, LLC rchance@browsercraft.com



Similar documents
Ray Chance President Browsercraft, LLC

BarTender Integration Methods. Integrating BarTender s Printing and Design Functionality with Your Custom Application WHITE PAPER

BarTender s.net SDKs

TABLE OF CONTENTS. Vendor Web & e-registration...2. Usage of Digital Signature Certificate...3. What is an etoken?. 4. General FAQ...

Protecting Networks and Data with Public Key Infrastructure (PKI)

ACCESS CONTROL SYSTEMS USER MANUAL

WHITE PAPER. Active Directory and the Cloud

PEGA MOBILITY A PEGA PLATFORM WHITEPAPER

Choosing a Mobile Application Development Approach

Security Center Unified Security Platform

Web Conferencing Glossary

Welch Allyn Connectivity SDK Development

What s new in Access 2013

Why NetDimensions Learning

HomeNet. Gateway User Guide

Middleware- Driven Mobile Applications

MyUSBOnly User Guide Menu

Nokia 9210i/9290 Communicators and PersonalJava TM Application Development

Desktop Computing in Skillport Finding Approved Folders and Printing Certificates of Completion

Apache Server Implementation Guide

Convenience and security

Trend Micro OfficeScan Best Practice Guide for Malware

TABLE OF CONTENTS. Vendor Registration Usage of Digital Signature Certificate... 3

BarTender s ActiveX Automation Interface. The World's Leading Software for Label, Barcode, RFID & Card Printing

DreamTeam User Guide. Product Usage and Best Practices Guide. By Adam Buxbaum

DreamSpark (formerly MSDNAA) ELMS (e-academy License Management System) Instructions for BC ibit Students

First Time On-Campus VLab Setup Windows XP Edition

TrustKey Tool User Manual

Skynax. Mobility Management System. System Manual

14.1. bs^ir^qfkd=obcib`qflk= Ñçê=emI=rkfuI=~åÇ=léÉåsjp=eçëíë

Image Enabled EMR / EHR

Blackboard Collaborate Session

Getting Started Guide

Base One's Rich Client Architecture

Before we dive in, here are a few terms that will be used throughout this document:

NetworkingPS Federated Identity Solution Solutions Overview

Welcome To Paragon 3.0

It is designed to resist the spam in the Internet. It can provide the convenience to the user and save the bandwidth of the network.

Developing and deploying mobile apps

Title: Harnessing Collaboration: SharePoint and Document Management

Ensuring the security of your mobile business intelligence

Strong Authentication for Secure VPN Access

JROTC CURRICULUM MANAGER INSTALLATION GUIDE VERSION 2.0

Getting Started with Apple Pay on the Authorize.Net Platform

IBM Security Access Manager for Enterprise Single Sign-On Version User Guide IBM SC

QUICK FEATURE GUIDE OF SNAPPII'S ULTRAFAST CODELESS PLATFORM

Voluntary Product Accessibility Template

Simple Computer Backup

Considerations for Mobile Application Development

Trends in Developing and Publishing Content: How HTML5 and Mobile Change the Game

RSView 32 ACTIVE DISPLAY SYSTEM GETTING RESULTS GUIDE. PUBLICATION VW32AD-GR001E-EN-E July 2011 Supersedes Publication VW32AD-GR001D-EN-E

ArcGIS 10.1: The Installation and Authorization User Guide

White paper December IBM Tivoli Access Manager for Enterprise Single Sign-On: An overview

JAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS QUARTER 2 NETWORKING AND OPERATING SYSTEMS ESSENTIALS. Module 1 - Office Applications

Lync Web App 2013 Guide

MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER

The perfect Document Management solution

Track accurately. Deliver with precision.

MOBILE SMARTPHONES AS SECURE SIGNATURE-CREATION DEVICES

Feature and Technical

Marcum LLP MFT Guide

KofaxExpress. Installation Guide

Compliance series Guide to meeting requirements of the UK Government Cyber Essentials Scheme

Integration Overview. Web Services and Single Sign On

St Petersburg College. Office of Professional Development. Technical Skills. Adobe

Multi-Factor Authentication Protecting Applications and Critical Data against Unauthorized Access

How To Develop A Mobile Application On An Android Device

DIGIPASS KEY series and smart card series for Juniper SSL VPN Authentication

Global Headquarters: 5 Speen Street Framingham, MA USA P F

Best Practice Configurations for OfficeScan (OSCE) 10.6

tips A quick and easy guide to securing your private information

Token User Guide. Version 1.0/ July 2013

Smart TPM. User's Manual. Rev MD-STPM-1001R

How to Install Applications (APK Files) on Your Android Phone

SEZ SEZ Online Manual Digital Signature Certficate [DSC] V Version 1.2

Software: Systems and Application Software

Web Developer Tutorial: SEO with Drupal: Page Title Module

Electronic Questionnaires for Investigations Processing (e-qip)

Secure Remote Control Security Features for Enterprise Remote Access and Control

STRONGER AUTHENTICATION for CA SiteMinder

Quick Takes What are Google Docs?

DEVELOP. Choosing a Development Tool. Microsoft Dynamics GP. White Paper

Instructions for downloading and installing the GPS Map update

The Future of Business IT Support

THRIVE WITH CLIENT & MATTER MANAGEMENT PROVEN ANSWERS TO DRIVE PERFORMANCE, QUALITY, AND CONSISTENCY

Contents. Identity Assurance (Scott Rea Dartmouth College) IdM Workshop, Brisbane Australia, August 19, 2008

Entrust Managed Services PKI Administrator Guide

Continuing Education Courses Offered for Credit. Course Catalog. Online learning anytime, anywhere just a click away!

DESKTOP COMPUTER SKILLS

BUILDER 3.0 Installation Guide with Microsoft SQL Server 2005 Express Edition January 2008

2sms SMS API Overview

APC Enterprise KVM Switches

The Dirty Secret Behind the UTM: What Security Vendors Don t Want You to Know

Introduction. Why (GIS) Programming? Streamline routine/repetitive procedures Implement new algorithms Customize user applications

Appscend Mobile Platform Whitepaper

UC Suite. For UNIVERGE SV9100. Smart Communications for Small and Medium Business

Global Banking and Bill Pay

Developing Database Business Applications using VB.NET

Chapter 3. Application Software. Chapter 3 Objectives. Application Software. Application Software. Application Software. What is application software?

Spyware Doctor Enterprise Technical Data Sheet

Transcription:

Ray Chance President Browsercraft, LLC rchance@browsercraft.com 1

EXECUTIVE SUMMARY Today we have reached a critical turning point for USB flash drive technology. Many exciting applications will soon hit the marketplace that will change how people view portable storage computing. Some say the reason we have arrived has to do with industry consolidation and the dramatic reduction in flash memory costs. These reasons are important, but if you truly examine past bottlenecks, one overriding factor quickly materializes USB flash drives are now much easier to program! The purpose of this white paper is to discuss emerging trends and to introduce new technologies available for building sophisticated USB flash drive applications with common desktop tools. We will map out real-world examples using simple desktop tools including Microsoft Word, HTML/JavaScript, and Indigo Rose AutoPlay Media Studio. This paper also discusses rapid development techniques for advanced programming environments including Microsoft Visual Studio v6.0,.net, and J2SE. Bottom-line: You no longer need a team of advanced programmers to create robust, portable, and secure applications leveraging the exciting capabilities of USB flash drives. WHY USB FLASH DRIVES? USB flash drives are rapidly becoming the next big thing in the computer industry. Futurists are predicting that in less than ten years no one will store data files, pictures, or music on standalone computers. Instead, you will carry your vital information on a key or credit card and instantly connect to a convenient computer just like you use ATMs today. Currently, organizations are investing in this technology by building efficient solutions for user authentication, data protection and security, and portable office applications. CURRENT CHALLENGES AND OPPORTUNITIES In the past, anyone interested in developing a USB flash drive application faced two significant challenges. First, you must select a hardware platform. Not all USB drives are built the same. Just like the earlier days prior to IBM DOS, standards were few. This means if you developed an application you must marry yourself to the hardware and re-code your solution for another platform. The good news is the industry is rapidly changing. In January, 2005 SanDisk and M-Systems teamed together to form U3 cross vendor platform intended to unify application development across all USB flash drives. At the heart of U3 is a common software development kit (SDK) framework. The result - any program developed on one device will also run on another so long 2

as both devices support the U3 standard. By uniting the industry around a common platform, drive manufacturers, applications developers, and consumers all benefit. The second challenge for USB flash drive application development is providing easier programming tools. Unlike developing desktop applications, USB flash drive programs must take into account unique conditions associated with portable media. For instance, what happens when you plug the USB flash drive into a desktop computer? Do you want a login prompt to appear? A virus scan program to activate? Do you want software to be installed or transferred to the target computer? Likewise, what happens when you unplug the USB flash drive? Do you want programs to shutdown? Internet sessions terminated? Do you want to encrypt data stored on the portable drive? These details may sound minor but they are essential in providing sound data protection within an efficient user interface. Today, manufacturers typically provide software development kits only supporting C++ development language. Even with the development of U3, due to the cross-platform considerations, you will more likely need to speak C++. For these reasons, Browsercraft has developed software tools that make USB flash drive programming much easier. Take for instance M- Systems DiskOnKey SDK. If you were to develop a program simply to show the message Hello World when the USB flash drive is plugged into a computer, you would need to write or include several hundred lines of code. Specifically, you would add required C++ libraries, headers files, and develop an effective call back program that will display the message when the device is plugged in. As an alternative, you may also use Visual Basic incorporating Browsercraft s COM-SDK for DiskOnKey. Here, you add one program reference and eight (8) lines of code to display Hello World when the USB device is plugged into the computer. Here is the specific source listing: Public Sub Main() dok.dokinit Initialize the SDK result = dok.waitfordeviceconnected(wait_time) Search for the key If Not result = DOK_OK Then ShowError (result) Show error if not found End Sub.. Private Sub dok_deviceconnected() Device is connected, show message Msgbox Hello World Display Message Box End Sub Which would you prefer to do? The secret is the development of widely accessible program components that leverages the underlining SDK s available from manufactures including the U3 initiative. This advantage is very clear when applications are mapped with various solution approaches: 3

File Security Company ABC desires to leverage electronic signature capability of Microsoft Word 2003. To provide an easy solution with added security, USB flash drives are issued containing a MS Word Macro that will automatically digitally sign documents. The goal is to securely store and retrieve a digital signature residing on the USB device. Unlike a desktop computer or laptop, the digital signature travels with you on your key chain. SDK Approach: Without a MS Word macro component, you will need to write a C++ program in MS Visual Studio that will manage the USB flash device while simultaneously accessing MS Word and applying the digital signature. Conclusion: Good luck! SDK and COM Components: Using the native language of MS Word you reference the Browsercraft COM-SDK and write simple macros to access the stored digital signature. These macros safely reside on the USB flash device for added data protection. Conclusion: Contact a junior level programmer. User Authentication Company XYZ wishes to issue USB flash drives for two-factor user authentication with automatic login. Unlike traditional smart cards that require client software and dedicated card reader, Company XYZ desires to provide a 100% web-based authentication solution. The goal is verify a user anywhere on the Internet using both a username/password plus hardware token for authentication. Specifically, the application will automatically navigate to a web page and either prompt or automatically fill in user credentials based on information stored on an attached USB flash drive. SDK Approach: Utilizing traditional SDK in C++ you will need to build a custom ActiveX control that will automate Internet Explorer to navigate to the specified web page and automatically supply form information including the hardware token from the attached USB flash device. Conclusion: Call you local advanced programmer! SDK and COM Components: Using components already built with Browsercraft COM-SDK and example programs you supply command line parameters specifying the required web page and user credentials. When the USB flash drive is attached to the computer, Internet Explorer is automatically launched and the user is logged in using the stored credentials on the USB flash drive. Simple JavaScript may also be written to automatically extract hardware token information. Conclusion: Easy web page development and command line programming. Portable Application Company 123 seeks to develop a multimedia application that will play an animated slide show with music when the USB flash device is plugged into a computer. The application must also encrypt data, protecting information stored on the portable device. 4

SDK Approach: Using SDK tools supplied by the USB manufacture you will need to develop a custom C++ program that will control the USB flash drive as well as play slide show, music, and encrypt data. Conclusion: Call me in six months! SDK and COM Components: Using standard desktop components you purchase an off-the-shelf program Indigo Rose AutoPlay Media Studio and combine it with the Browsercraft COM-SDK. AutoPlay Media Studio is an easy to use drag and drop development environment that enables you to quickly create your own custom CD/DVD menus, interactive presentations, and multimedia Windows applications. AutoPlay Media Studio is also COM component aware meaning it will recognize the commands available in the Browsercraft COM-SDK within its own development environment. Conclusion: Combine tools together for easier program development. C++, VB, VB.NET, C#, Java, VBA Macros, JavaScript, COM Aware Programming COM Components U3 SDK M-Systems SDK C++ Programming 5

Application Development Platform Solution Approach File Security SDK Develop digital signature program utilizing MS Visual Studio C++ SDK + COM Components Develop digital signature program utilizing MS Word Macros, VB, VB.NET, C#, C++, Java (Java COM bridge) User Authentication SDK Develop smart card replacement login utilizing MS Visual Studio C++ SDK + COM Components Develop smart card replacement login utilizing Internet Explorer and JavaScript, VB, VB.NET, C#, C++, Java (Java COM bridge) Portable Application SDK Develop multimedia solution utilizing MS Visual Studio C++ SDK + COM Components Develop multimedia solution utilizing Indigo Rose AutoPlay Media Studio, VB, VB.NET, C#, C++, Java (Java COM bridge) In addition to easy to use desktop tools, you may also take advantage of the rapid development capabilities utilizing advanced MS Visual Studio v6.0,.net, and J2SE. In these environments you reference the COM components instead of the native manufacturer s SDK. In J2SE, you would also incorporate a Java to COM bridge such as JACOB or jacozoom utilizing Java Native Interface (JNI). Browsercraft includes several working examples available for download and evaluation. In conclusion, COM components, supplemented with USB flash drive SDKs, provide an extremely flexible solution that promotes rapid application development. 6

Browsercraft is a web technology company specializing in providing portable, secure, and productive solutions. Our software tools help organizations focus resources, collaborate, and share information through new and exciting emerging technologies. Combined with our comprehensive professional services, Browsercraft provides high value solutions that break new barriers in worker productivity. For further information please visit us on the web at http://www.browsercraft.com 7