Business::OnlinePayment::StoredTransaction - Perl extension using the Business::OnlinePayment interface to store credit card transactions safely for later billing.
use Business::OnlinePayment; my $tx = new Business::OnlinePayment('StoredTransaction'); $tx->content( type => 'Visa', amount => '1.00', cardnumber => '1234123412341238', expiration => '0100', action => 'normal authorization', name => 'John Doe', password => '-----BEGIN RSA PUBLIC KEY----- MIGJAoGBAOoKKH0CZm6sWHGg4SygikvvAecDS+Lx6ilUZ8mIVJeV2d6YjEJRjy12 TSFdJTC0SiBDbJ4UHz5ayXhLShK0VvaQY+sfZwMX1SNZNYUyO8T7gY7QCzOrcSTS CcBBrNWzz0CMWUO5oOIIYevKEimtsDvBtlVaYJArJdwJq9KB/RjRAgMA//8= -----END RSA PUBLIC KEY-----' ); $tx->submit(); if ($tx->is_success()) { my $auth = $tx->authorization(); open FH, '>> /some/file' # don't do this it's stupid print FH $auth; } else { warn $tx->error_message(); }
This module stores uses the Business::OnlinePayment interface to store credit card details in a (hopefully) secure manner. It uses Storable to store the content, encrypts the content with a random Blowfish key, then encrypts the key with a programmer supplied public RSA key. The encrypted key, and content is base64 encoded and concatenated together and returned by the authorization() method as a string, which can then be stored in a database or on disk, to be retrieved by the Business::OnlinePayment::StoredTransaction::Unstore module using the corresponding private key (which should not be kept on the same server). Hopefully, if my implementation doesn't suck, this means that once the credit card information is encrypted, there is no way to get it back without the correct private key, which of course should be stored somewhere safe. I am however not a cryptographer, so it is up to you as the user of this module to determine if this is safe enough for you.
None by default.
Business::OnlinePayment Crypt::OpenSSL::RSA Crypt::Blowfish Crypt::CBC Business::OnlinePayment::StoredTransaction::Unstore
mock, <mock@obscurity.org<gt>
Copyright (C) 2004 by mock
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.4 or, at your option, any later version of Perl 5 you may have available.
To install Business::OnlinePayment::StoredTransaction, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Business::OnlinePayment::StoredTransaction
CPAN shell
perl -MCPAN -e shell install Business::OnlinePayment::StoredTransaction
For more information on module installation, please visit the detailed CPAN module installation guide.