应用程序中的安全信用卡交易

Posted

技术标签:

【中文标题】应用程序中的安全信用卡交易【英文标题】:Secure Credit Card transactions in app 【发布时间】:2012-08-13 22:16:16 【问题描述】:

我希望能够(通过信用卡)向使用我的应用的人销售产品。放入一些 EditText 并让他们给我他们的详细信息很容易,但问题当然是安全性。在应用程序中进行安全信用卡交易的好方法是什么?

我最关心的问题 - 其他人制作了一个看起来一样的假应用,具有相同的图标和应用名称,并让潜在用户下载他们的假应用并窃取他们的信用卡信息。 (人们甚至可以拥有相同的开发者帐户名称吗?)

到目前为止我所知道的 - 从 Google Play 提供的应用程序包名称是唯一的,因此用户可以识别包名称是否不正确。不过,这对普通用户来说并不是一个好的解决方案。

我不打算存储信用卡详细信息或其他任何内容。我只想能够安全地进行一次性卡交易。任何建议都将受到欢迎并获得很多支持。

【问题讨论】:

【参考方案1】:

您需要做的就是能够使用 Authorize.Net 或任何支付网关 API 进行支付。

Authorize.Net - android SDK

Boku Mobile Billing

【讨论】:

【参考方案2】:

既然您声明您将使用您的应用向用户销售产品,我假设您会将用户详细信息存储在数据库中的某个位置,是吗?此外,您将使用用户名和密码进行某种身份验证,因此这意味着即使其他人制作与您完全相同的应用程序,他们也不会拥有用户的用户名和密码(假设您散列您的用户名和他们的密码)或他/她在注册您的应用程序时提供的用户的真实姓名。即使黑客很聪明并且只使用一个虚拟登录页面,即无论输入的用户名和密码如何,您都已登录我相信如果用户没有看到一条消息说“嗨 X(真实姓名用户)”当他们登录您的应用程序时(如果您有一些功能可以在用户登录应用程序时显示用户的真实姓名,这很容易实现)。说了这么多,我还没有听说过有人复制整个应用程序(如果你制作一个复杂的应用程序,这绝非易事)只是为了窃取用户的信息。

关于安全地接受用户的信用卡信息并对其收费的问题,接受用户详细信息的最受信任、行业接受和安全的方式之一是使用Stripe.com。更重要的是,他们有一个很好的 RESTful API,您可以通过它拨打电话并以最安全的方式从用户的信用卡中收取必要的金额。这样做的好处是您不必将信用卡信息存储在任何地方,只需使用一次即可调用 Stripe API(顺便说一句,它在 Java 中可用)。

【讨论】:

以上是关于应用程序中的安全信用卡交易的主要内容,如果未能解决你的问题,请参考以下文章

仅授权信用卡交易是不是应该与数据库中的授权捕获交易分开存储?

PHP cURL - 处理信用卡交易时的安全性

如何对交易模块/支付模块进行压力测试

使用信用卡支付的 ASP.NET 应用程序

drupal信用卡安全

中行信用卡3D认证是啥?