TweetFollow Us on Twitter

eCommerce and Security

Volume Number: 13 (1997)
Issue Number: 11
Column Tag: Webtech

eCommerce and the Security Myth

by Jay Van Vark

The real security issues of eCommerce

eCommerce in Today's Market

Business is done with many communication technologies today, walk-in retail, mail-order phone, mail-order fax etc. The Web and the Internet are just one another communication medium with its own benefits and disadvantages. The cost for a business to have a world wide presence is the lowest in history with the World Wide Web. Budgets of the 1980's would have listed at least $100,000 per month in expenses to have a business handling international customers 24 hours a day, 7 days a week. Today those same budgets are closer to $5,000 per month and some even much lower. Yet the quality of service that the customer of these businesses is expecting continues to climb.

With these demands you need a scaleable sales force, immediate, accurate and secure information exchange, automatic delivery of products, and accurate tracking information for package delivery. In this article we will discuss the issues in constructing a web site that can give you all of this and much more. However, there are some pitfalls to be watchful of. The anonymity of the people buying from you can make you feel like you are talking to Mr. X. You rarely have the chance to speak directly with your customers. It is also far more difficult to get a feel for the size and condition of your vendors and your competitors. You have to help your customers overcome the fear that many people have putting their credit card number into a form on a web page. Using and understanding eCommerce can give you a strong advantage over your competitors while providing greater value and comfort to your customers.

How eCommerce is Different from Normal Business

eCommerce is very similar to the mail-order business. You normally do not have your customer right in front of you to confirm the signatures with the back of their credit card. You do have an advantage in eCommerce in that you can track exactly where your customer is "calling" from. This can help to reduce fraud, unlike mail-order and other types of communication. It also doesn't cost you any more to be open 24 hours a day, 7 days a week.

You have the opportunity to give your customer more information about their purchase, both in terms of product information and in delivery tracking, you can provide direct links to shipping services with tracking numbers and much more. With many of the emerging payment technologies you will also be able to offer smaller priced items for sale, that is, access to a complete new story for 50 cents is now practical in eCommerce, but it would be silly to do with mail-order. If you sell electronic products, like software, your customer doesn't have to wait for overnight delivery services, you can give them immediate delivery once the payment has been cleared.

To make sure that all of this access to information is accurate and secure, there are some precautions that you should take. Don't be like most people and assume that eCommerce is just an electronic catalog on a SSL server. These are the same people that are happy to accept the price for a product from a static HTML page. That would be like honoring a faxed order form that a customer has written their own prices written on; imagine buying a new PowerBook 1400 cs for, oh, how about $10. We will come back to this issue later, first what do we mean by SSL server?

What is SSL?

SSL stands for Secure Sockets Layer. This is the technique in which web servers and web browsers encrypt and decrypt all of the information that they transmit and recieve. Secret decoder ring time. Both ends establish and use the same scheme for making sure that no one else is listening to their conversation. Web browsers will typically indicate a secure connection with an alert when the connection is first established and with a key graphic somewhere in the window. As of this writing (August 1997), the only current SSL server implementation available on the Macintosh is from StarNine, WebStar SSL.

SSL encrypts every bit of data that is transmitted from the server to the customer and vice versa. Think about that one, every bit of data, text, pictures and all. This can be very wasteful if you don't use it carefully. Not to mention the fact that there are still some browsers out there that aren't capable of SSL and those users wouldn't be able to access the secure part of your site. You don't want to slam the door on any customers. So now that we have a technique to keep our conversation private, what does the conversation look like?

Flow of a eCommerce transaction

We often describe the web as being analogous to doing business with faxes. Imagine that the home page of your site is a fax back form. You have checkboxes for people to indicate what they are interested in and, in return, you send them another fax. The customer then fills out some more check boxes and we continue the exchange until they get what they want. The web is very similar, the site must respond with a page which elicits more information from the customer guiding them to their buying decision.

The basic flow of a eCommerce site has 4 major sections 1) Entry & Search, 2) Results, 3) Invoice, 4) Thank You. Each of these sections can be a single page on simple sites, or become complete sections on more complicated sites. On the Entry & Search page you must have some way for the customer to select what they want to see. (This actually can be embedded right in the Entry page if you only have a few products, but to keep the flow simple we'll assume that it is its own page.) On the Results page you display information about a product or products and the option to add it to the customer's shopping cart or Invoice. Once you are on the Invoice page you collect the necessary payment information from the customer and complete the order. These steps are illustrated in Figure 1.

Figure 1. Flow of a eCommerce Web Site, courtesy of Pacific Coast Software.

Here are some sites that follow the above flow, just to mention a few:

As you can tell from this type of flow, all of the pages past the entry page are returned from a CGI. There are a number of commercially available CGIs designed for both database access and the complete eCommerce process, including WebCatalog from StarNine, Tango Merchant from Everyware, Icat from Icat, and many others, both commercial and shareware. You can even write all of this interaction in your own CGI with AppleScript, Frontier or another programming language. Many of the commercial products have their own language to help you. Let's spend just a few minutes talking about the key functions reguired for the CGI to handle the eCommerce transaction.

Tracking the customer

Of primary importance in any transaction is that the customer feel comfortable with your communication. To make it seem like the website is talking to each customer individually you must track who the customer is and what they are interested in. The most common way this is achieved on the web is with the shopping cart concept. This allows many different people to be shopping on your site and all have their own sets of items in their cart. In our fax back example you would have to use something like the fax number to keep track of each customer. The equivalent with the web would be the IP number (known as IP tracking). The one major difference is that a customer's fax number doesn't change very often, while a customer's IP number can change everytime that they connect to the Internet -- for those people using dial up accounts or other dynamic addressing situations -- so IP numbers are not a very reliable way to track customers.

Another common tracking technique is cookies. You can have your website put a cookie onto the customer's machine so that it maintains important information, like the contents of their shopping cart. A better technique that I have found is tag propagation. This is a technique in which the first page that someone hits when they enter the site assigns a unique number, something like the number of seconds since 1904. This number is in turn passed thru every page on the site and the shopping cart information is stored in a file with that number on the server. This allows a customer to disconnect (by choice or happenstance) from the Internet and not loose the shopping cart information. This can be very important in situations where buying approval from someone else is required for the purchase. Most of the commercial products include a way of doing this. With WebCatalog you insert a cart=[cart] parameter into every HREF and form on your site.

Tracking the customer is very useful not just for the convenience of a shopping cart, but for things like tracking down people that you think are using stolen cards and, more importantly for that all allusive goal, to make the site more usable. Correlating this tracking information with the general web server logs can be used to determine trends of the people visiting your site, are they getting all the information they need to make a buying decision, are they understanding the buying process, are they loosing interest after a certain amount of time. One big advantage of this tracking log is to look for all the searches that people are doing on your site and were they are not finding any products. Maybe you should describe the products more effectively. All of these answers can help you understand ways to change your site to make it more useful.

Calculating Accurate Invoices

The hardest part about calculating invoices is just like fax transactions, you have to wait until you get all of the information from the customer before you can have accurate results. The most obvious place this happens is on the invoice page. Let's just say we had SKU, TITLE, QUANTITY and PRICE on our invoice. In the simplest case the customer gets to the invoice from the result of a search, usually with a simple hyperlink, so you assume a quantity of one. Since you want to allow the customer to order more than one of a product, you make the QUANTITY an input field on the invoice. To provide as much feedback as possible there may be a subtotal and other information on the invoice, so if the user changes the quantity, then they may no longer have accurate information.

This should be the first area of concern for the WebMaster. Once the customer has chosen some products, is the subtotal always accurate? Do they understand what they are looking at? Are there any ways to get the system to accept a "bad" subtotal? If the eCommerce product does not confirm the field "PRICE" from the web page with the value in the database, it will accept whatever the incoming page said the price was. What does that mean? You may have a sneaky customer looking at an invoice for a PowerBook 3400. The original page from the web server says the price is $3799. The sneaky customer can save the web page locally as source from his web browser, open the file with SimpleText and change the price to $10. Now the sneaky customer uses his web browser to view that file, fills in the rest of the purchase information and submits the form to the web server. Obviously, you must make sure that your site uses the "real" price for the PowerBook and not the $10 price!

This is just a simple example of calculation issues; add in taxes and shipping costs and you can see that this can easily get very complex. The best way to overcome these issues is to split the invoice into two pages, a proforma invoice and a final invoice. Most of the commercial products do a very good job taking care of these situations. The proforma invoice shows a listing of the shopping cart, possibly with a subtotal, as well as any other information that you need to complete a final invoice, like quantity for each item, what state they are buying from to help with the tax calculation, choice of shipping method etc. Collecting all of that information will allow you to calculate and display a final invoice. With Lasso and Tango you can communicate back to your current database, SQL, FileMaker etc., to calculate these numbers for your website. Not until you get to the Invoice page is any information sensitive. From this point on, you want to make sure that you are communicating only with the customer. You should make sure that no one is listening in.

Security Concerns

Areas that we DO care about security

As mentioned in the section about SSL we do want to protect the transmission of sensitive information with something like SSL to keep the eavesdroppers away, but another equally important issue for security is protection from attacks on your web server. People trying to find credit card numbers in accounting logs or just trying to steal products, to buy at ridiculously low or free prices. Prevention of this type of security breach is the most overlooked area. Much of the information on the machine should not be allowed any access. You don't want people knowing even about access statistics without you knowing about it.

The first obvious area to secure is the accounting files. Let's say the web server is doing a great job of keeping people out of sensitive areas, but the same machine is also your ftp server. People are prevented by the web server from getting to your accounting log, but maybe there is a security hole because your ftp server software allows access to this log... so my first advice, limit the access protocols to all sensitive data -- 1) store your accounting logs and other sensitive files outside of the web server folder, WebStar and many other web server products will not serve files outside of their folder tree, 2) don't run ftp and other protocol services on the same machine. Also, make sure that if you are delivering electronic product, only the person that bought it, gets it. For this you should either be copying the product to some unique place only that person is given access to or have a one time password scheme allowing only one shot at downloading the product.

The concern of the web server allowing access to files that are sensitive is best taken care of by your disk organization. Below is a screen shot of a sample organization of your web server folder structure using WebStar and WebCatalog:

Figure 2. Folder Structure for a typical web server.

Figure 3. Folder structure inside WebStar.

Figure 4. Folder structure inside WebCatalog.

Areas that we DON'T care about security

There are many areas within the selection and buying process that are considered public information and therefore don't need security. In fact, the whole process would be slowed down if it sent everything through a SSL server. Imagine if you received a mail-order catalog from MacWarehouse or Club-Mac and you had to put a decoder ring over each letter to figure out what it really was, that would take you hours just to read one page. That is what your browser is doing with SSL data. So, big picture, you only want to use SSL when you are expecting sensitive data from the customer, like a credit card number. Protect that from eavesdroppers with SSL, everything else should go thru the non-SSL server.

Conclusion

eCommerce is more secure than most business we conduct everyday and is getting better every minute. Knowing various hacking techniques on the Internet and having built an eCommerce package, if I wanted to get a few credit card numbers I would head for the local bar and go thru the dumpster long before I would start going after websites. Give yourself time to understand and work with your new sales force. A properly constructed website benefits the consumer with up to the minute information and immediate response. The same website serves as hundreds of sales people for the merchant, all trained with exactly the right information as well as access to tracking information etc. The positive return for the customer and the merchant will help to overcome the myth and fear of the security on the Internet. I would like to end on a observation about most credit cards, even if it is stolen, the owner is only liable for $50.

There are a variety of tools on the market to help you construct your eCommerce web site. Each has its own strengths and weaknesses. To choose the best for your needs, you must carefully research the speed and responsiveness of the server under load, how they handle the security areas and your database connectivity needs, do they have to handle a live existing database. You can find more information to help you with your research at these web addresses:


Jay Van Vark is the founder and CEO of Pacific Coast Software a Internet commerce tool and commerce site hosting company, developers of WebCatalog & WebMerchant, marketed by StarNine. Jay has an engineering background and continues to do much of the engineering on the products and services that Pacific Coast Software offers. He is also an active speaker with the MacCryptography conference as well as other Internet & Macintosh conferences. You can reach him at jayv2@pacific-coast.com.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All

Go from lowly lizard to wicked Wyvern in...
Do you like questing, and do you like dragons? If not then boy is this not the announcement for you, as Loongcheer Game has unveiled Quest Dragon: Idle Mobile Game. Yes, it is amazing Square Enix hasn’t sued them for copyright infringement, but... | Read more »
Aether Gazer unveils Chapter 16 of its m...
After a bit of maintenance, Aether Gazer has released Chapter 16 of its main storyline, titled Night Parade of the Beasts. This big update brings a new character, a special outfit, some special limited-time events, and, of course, an engaging... | Read more »
Challenge those pesky wyverns to a dance...
After recently having you do battle against your foes by wildly flailing Hello Kitty and friends at them, GungHo Online has whipped out another surprising collaboration for Puzzle & Dragons. It is now time to beat your opponents by cha-cha... | Read more »
Pack a magnifying glass and practice you...
Somehow it has already been a year since Torchlight: Infinite launched, and XD Games is celebrating by blending in what sounds like a truly fantastic new update. Fans of Cthulhu rejoice, as Whispering Mist brings some horror elements, and tests... | Read more »
Summon your guild and prepare for war in...
Netmarble is making some pretty big moves with their latest update for Seven Knights Idle Adventure, with a bunch of interesting additions. Two new heroes enter the battle, there are events and bosses abound, and perhaps most interesting, a huge... | Read more »
Make the passage of time your plaything...
While some of us are still waiting for a chance to get our hands on Ash Prime - yes, don’t remind me I could currently buy him this month I’m barely hanging on - Digital Extremes has announced its next anticipated Prime Form for Warframe. Starting... | Read more »
If you can find it and fit through the d...
The holy trinity of amazing company names have come together, to release their equally amazing and adorable mobile game, Hamster Inn. Published by HyperBeard Games, and co-developed by Mum Not Proud and Little Sasquatch Studios, it's time to... | Read more »
Amikin Survival opens for pre-orders on...
Join me on the wonderful trip down the inspiration rabbit hole; much as Palworld seemingly “borrowed” many aspects from the hit Pokemon franchise, it is time for the heavily armed animal survival to also spawn some illegitimate children as Helio... | Read more »
PUBG Mobile teams up with global phenome...
Since launching in 2019, SpyxFamily has exploded to damn near catastrophic popularity, so it was only a matter of time before a mobile game snapped up a collaboration. Enter PUBG Mobile. Until May 12th, players will be able to collect a host of... | Read more »
Embark into the frozen tundra of certain...
Chucklefish, developers of hit action-adventure sandbox game Starbound and owner of one of the cutest logos in gaming, has released their roguelike deck-builder Wildfrost. Created alongside developers Gaziter and Deadpan Games, Wildfrost will... | Read more »

Price Scanner via MacPrices.net

New today at Apple: Series 9 Watches availabl...
Apple is now offering Certified Refurbished Apple Watch Series 9 models on their online store for up to $80 off MSRP, starting at $339. Each Watch includes Apple’s standard one-year warranty, a new... Read more
The latest Apple iPhone deals from wireless c...
We’ve updated our iPhone Price Tracker with the latest carrier deals on Apple’s iPhone 15 family of smartphones as well as previous models including the iPhone 14, 13, 12, 11, and SE. Use our price... Read more
Boost Mobile will sell you an iPhone 11 for $...
Boost Mobile, an MVNO using AT&T and T-Mobile’s networks, is offering an iPhone 11 for $149.99 when purchased with their $40 Unlimited service plan (12GB of premium data). No trade-in is required... Read more
Free iPhone 15 plus Unlimited service for $60...
Boost Infinite, part of MVNO Boost Mobile using AT&T and T-Mobile’s networks, is offering a free 128GB iPhone 15 for $60 per month including their Unlimited service plan (30GB of premium data).... Read more
$300 off any new iPhone with service at Red P...
Red Pocket Mobile has new Apple iPhones on sale for $300 off MSRP when you switch and open up a new line of service. Red Pocket Mobile is a nationwide MVNO using all the major wireless carrier... Read more
Clearance 13-inch M1 MacBook Airs available a...
Apple has clearance 13″ M1 MacBook Airs, Certified Refurbished, available for $759 for 8-Core CPU/7-Core GPU/256GB models and $929 for 8-Core CPU/8-Core GPU/512GB models. Apple’s one-year warranty is... Read more
Updated Apple MacBook Price Trackers
Our Apple award-winning MacBook Price Trackers are continually updated with the latest information on prices, bundles, and availability for 16″ and 14″ MacBook Pros along with 13″ and 15″ MacBook... Read more
Every model of Apple’s 13-inch M3 MacBook Air...
Best Buy has Apple 13″ MacBook Airs with M3 CPUs in stock and on sale today for $100 off MSRP. Prices start at $999. Their prices are the lowest currently available for new 13″ M3 MacBook Airs among... Read more
Sunday Sale: Apple iPad Magic Keyboards for 1...
Walmart has Apple Magic Keyboards for 12.9″ iPad Pros, in Black, on sale for $150 off MSRP on their online store. Sale price for online orders only, in-store price may vary. Order online and choose... Read more
Apple Watch Ultra 2 now available at Apple fo...
Apple has, for the first time, begun offering Certified Refurbished Apple Watch Ultra 2 models in their online store for $679, or $120 off MSRP. Each Watch includes Apple’s standard one-year warranty... Read more

Jobs Board

DMR Technician - *Apple* /iOS Systems - Haml...
…relevant point-of-need technology self-help aids are available as appropriate. ** Apple Systems Administration** **:** Develops solutions for supporting, deploying, Read more
Omnichannel Associate - *Apple* Blossom Mal...
Omnichannel Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Operations Associate - *Apple* Blossom Mall...
Operations Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Cashier - *Apple* Blossom Mall - JCPenney (...
Cashier - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Blossom Mall Read more
IT Systems Engineer ( *Apple* Platforms) - S...
IT Systems Engineer ( Apple Platforms) at SpaceX Hawthorne, CA SpaceX was founded under the belief that a future where humanity is out exploring the stars is Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.