Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 General SQL Server Forums
 New to SQL Server Programming
 Debit/Credit Card security

Author  Topic 

Kaler
Starting Member

4 Posts

Posted - 2012-03-09 : 10:33:09
I am just wondering what is the recommended way to go about storing credit/debit card details on a sql database and provide adequate security to items such as the 16 digit number on the card. Any help would be appreciated as I am new to trying this.

Kristen
Test

22859 Posts

Posted - 2012-03-09 : 10:50:54
You'd be better off not to store them at all, and use an external service (such as ProtX / Sagepay) to handle them for you (and do the 3D Secure etc.)

If you are storing them it raises issues with getting your security clearance from the CCard company (there's a name for that clearance, sorry mind gone blank for the moment and forgotten the Jargon).

perhaps I should turn this round and ask why you want to store CCard No, rather than process off-site?
Go to Top of Page

X002548
Not Just a Number

15586 Posts

Posted - 2012-03-09 : 10:52:59
Iranian terrorist?

Brett

8-)

Hint: Want your questions answered fast? Follow the direction in this link
http://weblogs.sqlteam.com/brettk/archive/2005/05/25/5276.aspx


Want to help yourself?

http://msdn.microsoft.com/en-us/library/ms130214.aspx

http://weblogs.sqlteam.com/brettk/

http://brettkaiser.blogspot.com/


Go to Top of Page

uberman
Posting Yak Master

159 Posts

Posted - 2012-03-09 : 10:56:26
There will be all sort of compliance issues, data protection issues... think about things like... what happens if someone walks off with my servers? Will they be able to decrypt the data? What do I do when the security is compromised and the credit card numbers are posted all over the internet?

I agree fully with Kristen; the words "storing credit/debit card details" and "...I am new to trying this" just don't go together.

Go to Top of Page

Kaler
Starting Member

4 Posts

Posted - 2012-03-11 : 05:47:03
This is actually a fictional site for a college project so no actual credit card details for real people are going to be used as I am learning. The reason I posted the question was to get feedback on which way is the best way to actually go about and deal with these matters as I am in the design stage of creating my SQL tables and wanted to start off on the right foot:)
Go to Top of Page

GilaMonster
Master Smack Fu Yak Hacker

4507 Posts

Posted - 2012-03-11 : 06:57:31
The best way it not to store them at all. Store the last 4 digits, store the authorisation code that you get back from the credit card processing company. What you don't store can't be stolen. Yes, that means that the customer must enter a credit card number on each purchase. Minor inconvenience for much better security and much lower risk.

If for whatever reason they have to be stored, then they need strong encryption in the front end app or middle tier. Don't use SQL encryption, anyone with sysadmin or db_owner permissions can decrypt columns encrypted with key or certificate. Then you get into all the fun and games around key management and protection (and that's really not fun)

--
Gail Shaw
SQL Server MVP
Go to Top of Page
   

- Advertisement -