Results 1 to 15 of 15

Thread: Question about Credit Card hash storage

  1. #1
    Join Date
    Mar 2012
    Posts
    17

    Default Question about Credit Card hash storage

    As far as I understand in WHMCS, credit card hashes are stored in the config file.
    Is there an option not to do this?

    Saving credit card hashes on the same system is like having your pin numbers in the same wallet as your credit cards.

    Please clarify this. I was going to move from Clientexect to WHMCS and this one issue is holding me up.

  2. #2
    Join Date
    Dec 2010
    Location
    Cumbernauld, Scotland, UK
    Posts
    731

    Default

    What about saving to a separate file and folder, outwith public_html
    Same principle as the templates_c folder
    m8internet.com from Manage My Hosting
    Using WHMCS since 11 December 2011, running v5.0.3 since 27 April 2012

  3. #3
    Join Date
    Mar 2012
    Posts
    17

    Default

    Quote Originally Posted by m8internet View Post
    What about saving to a separate file and folder, outwith public_html
    Same principle as the templates_c folder
    No, that's not good enough. If the server is compromised, you're done for. Hash keys should never have to be stored.

  4. #4

    Default

    what is your suggestion on how they do this then, drhoo?

    an honest question, i am interested in how this would be done. if you store the DB on a remote server and that DB gets compromised then that's fine but if the host that accesses the DB and has the hash file gets compromised then you're buggered again. what other way's are there around this?

  5. #5
    Join Date
    Mar 2012
    Posts
    17

    Default

    You encrypt credit cards with key that's never stored anywhere. You have to remember it or store it in your office. Every time you need to process credit cards you need to enter the key.

    If anyone gets hold of your db, at least they need to do a bit of work to crack your key. Having to store the hash key on the same system is a big mistake.

  6. #6

    Default

    ok so a manual solution then

  7. #7
    Join Date
    Dec 2008
    Location
    Myrtle Beach, SC
    Posts
    401

    Default

    I would recommend not using the built in credit card storage at all and store all of your customers data with a tokenized vault. That way you can still do automated recurring payments and your customers credit card information is safe.

    WHMCS supports a few of these already and has scripts to convert your currently saved credit card data.

  8. #8
    Join Date
    Mar 2012
    Posts
    17

    Default

    Quote Originally Posted by everythingweb View Post
    ok so a manual solution then
    The only manual part is when you enter your key. You can still batch-process and take do other automated tasks.

  9. #9
    Join Date
    Feb 2009
    Location
    Atlanta, GA
    Posts
    1,683

    Default

    How do you expect to encrypt the credit cards in the first place without the hash? I suppose you could just store them as plain text until you can be bothered to login and enter the CC encryption hash.. right?

  10. #10
    Join Date
    Mar 2012
    Posts
    17

    Default

    Quote Originally Posted by laszlof View Post
    How do you expect to encrypt the credit cards in the first place without the hash? I suppose you could just store them as plain text until you can be bothered to login and enter the CC encryption hash.. right?
    You encrypt them with the same private key. The idea is very simple and has been in use for many years.

  11. #11

    Default

    Quote Originally Posted by laszlof View Post
    How do you expect to encrypt the credit cards in the first place without the hash? I suppose you could just store them as plain text until you can be bothered to login and enter the CC encryption hash.. right?
    Unfortunately automation is the issue and people signing up at random times during the month I'm sure WHMCS has charges going off almost every day - this will be an admin nightmare.

    The safest bet is probably to either have Paypal subscriptions as the only auto-bill option and then require a manual payment from each WHMCS client if they do not use Paypal (or any other payment providers who offer a similar subscription system where they store the CC's themselves).

    Unless you are a financial institution it's never wise to store CC details in my opinion

  12. #12
    Join Date
    Oct 2011
    Posts
    133

    Default

    Our Gateway, GoEMerchant - which I was able to cofigure with a little help and the PlanetAuthorize app will do their OWN reacurring in your merchant account. THis way they just have to pay once, request reacurring and you can go and set it for them

  13. #13
    Join Date
    Jul 2008
    Location
    Northumberland, UK
    Posts
    2,837

    Default

    maybe using a passphrase like CE

    Credit card information is encrypted within ClientExec once a customer enters their credit card information. ClientExec requires that you further encrypt this credit card information by adding a string word, called a passphrase, that is not stored anywhere on the server or database.

    Each time a customer enters their credit card number, you must "validate" the number using a passphrase. The credit card number is encrypted using the passphrase and can not be decrypted unless the passphrase is provided. The first time you "validate" a credit card your passphrase is set.

    Warning: The passphrase can not be retrieved if forgotten, you will be able to recreate a passphrase but all credit cards will have to be reentered.

    When processing credit card based invoices you will require this passphrase.
    Last edited by easyhosting; 05-26-12 at 08:07 PM. Reason: typo
    The Easyhost Media Group t/a Niceday Hosting
    FREE Browser Toolbar

  14. #14
    Join Date
    Jan 2010
    Location
    Christchurch, New Zealand
    Posts
    233

    Default

    Out of interest, if it's any help, we use ioncube to encrypt the config file, which contains the hash (and all other details)

    WHMCS seems to still run sweet - I know not the perfect solution but...

  15. #15
    Join Date
    Jan 2008
    Location
    UK
    Posts
    18

    Default

    Quote Originally Posted by FlexiHost View Post
    Out of interest, if it's any help, we use ioncube to encrypt the config file, which contains the hash (and all other details)

    WHMCS seems to still run sweet - I know not the perfect solution but...
    You do realise ioncube encoded files can easily be decoded, right? Would take only a couple of minutes to decode something as small as the config file.

    Or if you know the variable names stored inside (easily found for WHMCS config), you just include the encoded file in a php script and print out all the variables you want.
    Last edited by Y3K-Daniel; 05-30-12 at 12:45 AM.

Similar Threads

  1. WHMCS credit card storage - PCI level/Gateways
    By Twobit in forum The Lounge
    Replies: 7
    Last Post: 08-14-12, 09:06 AM
  2. Replies: 6
    Last Post: 10-05-11, 04:00 PM
  3. credit card storage
    By mhaskell in forum Feature Requests
    Replies: 0
    Last Post: 01-14-10, 01:32 AM