Credit Card Number Storage

bbrendan

Registered User.
Local time
Today, 18:13
Joined
Oct 31, 2001
Messages
35
Hi All,

Im hoping someone might have some guidence on this.

I am working on an import program to Download orders from a website. We currently get the credit card details from the website on a printed form. We can get this information via a file, but im concerned about storage for the CC numbers I would like to store these in access.
Does anyone have any suggestions as to way to hash out or unhash the numbers in access?

thanks
brendan
 
It will depend upon what format the file is in, and whether you intend to import the data or to manually enter it.

If the file contains only the CC numbers, and those numbers are each on their own line, you're all set. You can import the data into an Access table, using the appropriate driver.

If the file contains columnar data, it must be formatted properly (CSV or similar) and should likely be convertible to .txt format.

After you get around the importation issue, then you can work on the format for the field.
 
Brendan, you have two distinct issues here.

One is that you need to IMPORT data. I'm convinced you can do that. It is just an issue of the mechanics of data flow. Eminently doable in many different ways.

The other issue is that you need to HOLD data safely in Access. This is tricker - but not because I doubt your abilities. It just takes some extra care because of your environment - i.e. some flavor of Windows.

Let's be honest - we're dealing with Windows, not noted as one of the more secure versions of operating system ever built. So you already have one strike against you. You didn't say whether you were on Windows 98, Windows me, WindowsNT, Windows 2K, or Windows XP, so that makes a difference. NT and 2K have a reasonable if not perfect security kernel. You would still need a good NT administrator to set up the protection, but it is at least feasible. For 98 on the other hand, it is time to laugh so hard as to bring tears to the eyes.

The implication of storing encoded or encrypted data in a table is that if you are going to be able to later compare, retrieve, or report it, you have to also be able to DECRYPT the data. Which means that Access needs to have both the encryption and decryption software modules available to it. So if someone steals your database, they also steal the keys. Unless... you split the database and very carefully hide the key in a third place.

So your problem in securing your database against intrusion is a multi-fold problem, requiring a multi-fold approach.

First, make sure that you are on an O/S that has NT-class (and I'm not talking NT 3.1 here, either) security or higher.

Second, consider storing the data separately from the rest of the database. I.e. Front-End, Back-End case. You DON'T want the cryptology code on the same computer as the data to be protected by that code. Because you MUST assume that the person who really wants to get to your data WILL get to it. So you have to make sure you don't do the moral equivalent of leaving the keys to the car under the floor mat.

Third, if it is at all possible, get a copy of some security encryption software that provides you a programming library. Then define a few references to that library, probably in a .DLL file. You can define public, external references in VBA and make them callable from queries, reports, forms, etc. But if it is external to the front-end file, all the better. Because the more places a hacker has to go, the more frustrated s/he might become before getting all the files needed to "crack the nut" and retrieve the data.

Fourth, consider using external, non-Access files to hold key strings. Perhaps using the VBA Open and Close commands to get to these external files. Make sure that the files are stored elsewhere from the .MDB files. Perhaps on other networked drives that have passwords required for entry when you boot up the system rather than having an automatic, no-password connection. Again, diversify the locations of what you store, and make sure that at least some of the key components (pun intended! ;) ) are not with the rest of your data.

Fifth, and this is a conceptual thing, make sure that YOU are one of the persons whose credit card information is in that data base. If THAT won't make you paranoid enough to implement really careful security designs, nothing will.

Now, I'm assuming that you have to use Access. But there is a another reasonable and prudent approach if you have the money for it. ORACLE databases can be made to implement extra security when required. Other databases such as Sybase can also add value to this mix, security-wise. So if you have a way to make the data storage work through ODBC to a more secure storage methodology, that would help a LOT.
 
Hi Shep & Doc Man,

I appreciated both of your responses.
Firslty getting the data into access is fine!, and Doc man, you have raised some valid points with regards to storage, and other issue

Thinking about it, we have a MSSQL2000 db here also. I might investigate what sort of encryption functionality I might be able to employ in the SQLDB then use a odbc link from access to drop the data directly into the SQL DB.

I just wish I had some sort of example softeware to play with!

again thanks for your help

cheers
brendan
 
Just as an added comment, if the Access database (front-end) is on one machine and that other database is on another machine, you also get the benefits associated with Access not having to flood your network with the entire contents of a table in order to find a single item. With ODBC, you just send SQL queries and get back result sets. Less network load.

So having a back-end database server, if compatible with Access, is a good thing despite the extra headaches of having two places to maintain. I'm sorry to say that sometimes that is the price you have to pay for security.
 
bbrendan:

go to www.freevbcode.com and search for encryption. There are many examples of encryption techniques and most should work (with some minor tweaking) with Access.
 

Users who are viewing this thread

Back
Top Bottom