У меня есть бизнес-требование, которое заставляет меня хранить информацию о кредитной карте клиента (номер, имя, срок действия, CVV2) на короткий период времени.
Обоснование: если клиент звонит, чтобы заказать продукт, и их кредитная карта отклоняется на месте, вы, вероятно, потеряете продажу. Если вы берете их данные, благодарите их за транзакцию, а затем обнаружите, что карта отклоняется, вы можете позвонить им обратно, и они с большей вероятностью найдут другой способ оплаты продукта. Если кредитная карта принята, вы очищаете детали от заказа.
Я не могу это изменить. Существующая система хранит данные кредитной карты в ясном тексте, а в новой системе, которую я создаю, чтобы заменить это, я, очевидно, не собираюсь повторять это!
Таким образом, мой вопрос заключается в том, как я могу безопасно хранить кредитную карту на короткий период времени. Я, очевидно, хочу какое-то шифрование, но какой лучший способ сделать это?
Среда: С#, WinForms, SQL-Server.