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

VirtualBox 5.2.0 - x86 virtualization so...
VirtualBox is a family of powerful x86 virtualization products for enterprise as well as home use. Not only is VirtualBox an extremely feature rich, high performance product for enterprise customers... Read more
Dropbox 37.4.29 - Cloud backup and synch...
Dropbox is an application that creates a special Finder folder that automatically syncs online and between your computers. It allows you to both backup files and keep them up-to-date between systems... Read more
Google Chrome 62.0.3202.62 - Modern and...
Google Chrome is a Web browser by Google, created to be a modern platform for Web pages and applications. It utilizes very fast loading of Web pages and has a V8 engine, which is a custom built... Read more
Chromium 62.0.3202.62 - Fast and stable...
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all Internet users to experience the web. Version 62.0.3202.62: High CVE-2017-5124: UXSS with... Read more
Fantastical 2.4.3 - Create calendar even...
Fantastical 2 is the Mac calendar you'll actually enjoy using. Creating an event with Fantastical is quick, easy, and fun: Open Fantastical with a single click or keystroke Type in your event... Read more
Things 3.2.1 - Elegant personal task man...
Things is a task management solution that helps to organize your tasks in an elegant and intuitive way. Things combines powerful features with simplicity through the use of tags and its intelligent... Read more
A Better Finder Attributes 6.06 - Change...
A Better Finder Attributes is the ultimate file-tweaking tool for OS X. It combines photo-shooting date and file date changing along with a few unique tricks of its own. Change EXIF Timestamps at... Read more
MacCleanse 6.0.5 - $29.95
MacCleanse is the product of thousands of hours of intense research and development. It meticulously scans all of the nooks and crannies of a computer for unnecessary junk that can take up huge... Read more
Smultron 10.0.2 - Easy-to-use, powerful...
Smultron 10 is an elegant and powerful text editor that is easy to use. You can use Smultron 10 to create or edit any text document. Everything from a web page, a note or a script to any single piece... Read more
Capto 1.2.5 - $29.99
Capto (was Voila) is an easy-to-use app that takes capturing, recording, video and image editing to the next level. With an intelligent file manager and quick sharing options, Capto is perfect for... Read more

4 of the best Halloween updates for mobi...
Halloween is certainly one of our favorite times for mobile game updates. Many popular titles celebrate this spooky season with fun festivities that can stretch from one week to even the whole month. As we draw closer and closer to Halloween, we'... | Read more »
Fire Rides guide - how to swing to succe...
It's another day, which means another Voodoo game has come to glue our hands to our mobile phones. Yes, it's been an especially prolific month for this particular mobile publisher, but we're certainly not complaining. Fire Rides is yet another... | Read more »
Time Recoil (Games)
Time Recoil 1.0.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0.1 (iTunes) Description: Time Recoil is a top-down shooter where you kill to slow time, dominate slow motion gunfights, and trigger devastating special... | Read more »
Campfire Cooking (Games)
Campfire Cooking 1.0 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0 (iTunes) Description: | Read more »
Returner 77 (Games)
Returner 77 1.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0 (iTunes) Description: Returner 77 is a cinematic space mystery puzzle game. You are in a giant alien spaceship hovering above Earth, after everything... | Read more »
Dune! guide - how to toe the line and ge...
Publisher Voodoo is at it again with an all new high score chaser -- Dune! In this fast-paced arcade game, you have to propel yourself along sand dunes, gaining enough momentum to jump above the line to score points, while making sure you have... | Read more »
The best deals on the App Store this wee...
Happy Tuesday, dear readers. Your favorite part of the week as officially arrived. It's time to take a look at the best deals in games. Things are admittedly a bit sparse, but there are a few diamonds in the rough to see you through if you're... | Read more »
Be the last person standing in Legacy of...
Yoozoo Games’ popular action MMO Legacy of Discord is getting a huge new update to celebrate its first anniversary. Perhaps the biggest change is the addition of an exciting survival mode titled Last Guardian. This new survival mode will pit you... | Read more »
Home Street guide - how to make friends...
From the creators of Food Street comes Home Street, a new simulation game that tasks you with building a social network and designing a beautiful home. It's a bit like The Sims, but you won't have to worry about the daily chores involved (feeding,... | Read more »
Color Ballz guide - how to bounce to the...
Color Ballz is an addictive new arcade title from Ketchapp Studios. It takes old school mechanics from games like Brickles and puts a fun twist on it. Your job? To catch balls with a paddle and send them back into a chute to be carried back to... | Read more »

Price Scanner via MacPrices.net

13″ MacBook Pros on sale for up to $120 off M...
B&H Photo has 2017 13″ MacBook Pros in stock today and on sale for up to $120 off MSRP, each including free shipping plus NY & NJ sales tax only: – 13-inch 2.3GHz/128GB Space Gray MacBook... Read more
15″ MacBook Pros on sale for up to $200 off M...
B&H Photo has 15″ MacBook Pros on sale for up to $200 off MSRP. Shipping is free, and B&H charges sales tax in NY & NJ only: – 15″ 2.8GHz MacBook Pro Space Gray (MPTR2LL/A): $2249, $150... Read more
Roundup of Apple Certified Refurbished iMacs,...
Apple has a full line of Certified Refurbished 2017 21″ and 27″ iMacs available starting at $1019 and ranging up to $350 off original MSRP. Apple’s one-year warranty is standard, and shipping is free... Read more
Sale! 27″ 3.8GHz 5K iMac for $2098, save $201...
Amazon has the 27″ 3.8GHz 5K iMac (MNED2LL/A) on sale today for $2098 including free shipping. Their price is $201 off MSRP, and it’s the lowest price available for this model (Apple’s $1949... Read more
Sale! 10″ Apple WiFi iPad Pros for up to $100...
B&H Photo has 10.5″ WiFi iPad Pros in stock today and on sale for $50-$100 off MSRP. Each iPad includes free shipping, and B&H charges sales tax in NY & NJ only: – 10.5″ 64GB iPad Pro: $... Read more
Apple iMacs on sale for up to $130 off MSRP w...
B&H Photo has 21-inch and 27-inch iMacs in stock and on sale for up to $130 off MSRP including free shipping. B&H charges sales tax in NY & NJ only: – 27″ 3.8GHz iMac (MNED2LL/A): $2179 $... Read more
2017 3.5GHz 6-Core Mac Pro on sale for $2799,...
B&H Photo has the 2017 3.5GHz 6-Core Mac Pro (MD878LL/A) on sale today for $2799 including free shipping plus NY & NJ sales tax only . Their price is $200 off MSRP. Read more
12″ 1.2GHz Space Gray MacBook on sale for $11...
Amazon has the 2017 12″ 1.2GHz Space Gray Retina MacBook on sale for $100 off MSRP. Shipping is free: 12″ 1.2GHz Space Gray MacBook: $1199.99 $100 off MSRP Read more
Bare Bones Software Releases macOS High Sierr...
Bare Bones Software has announced the release and immediate availability of BBEdit 12.0, a significant upgrade to its professional strength text and code editor. BBEdit 12 introduces a new foundation... Read more
Yale Announces Availability of Apple HomeKit-...
Yale Locks & Hardware has announced that Apple HomeKit support for its Assure Lock family is available this month. The new Yale iM1 Network Module, which provides support for the Apple Home app... Read more

Jobs Board

*Apple* News Product Marketing Mgr., Publish...
Job Summary The Apple News Product Marketing Manager will work closely with a cross-functional group to assist in defining and marketing new features and services. Read more
Fraud Analyst, *Apple* Advertising Platform...
Job Summary Apple Ad Platforms has an opportunity to redefine advertising on mobile devices. Apple reaches hundreds of millions of iPhone, iPod touch, and iPad Read more
*Apple* Information Security - Security Data...
Job Summary This role is responsible for helping to strengthen Apple 's information security posture through the identification and curation of security event data. Read more
Lead *Apple* Solution Consultant - Apple In...
…develop a team of diverse partner employees focusing on excellence to deliver the Apple story. Even when you're not present, you will maintain a consistent influence Read more
watchOS Frameworks Engineering Manager, *App...
Job Summary Join the team that is shaping the future of software development for Apple Watch! Apple is looking for an exceptional software engineering leader to Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.