11

スペースが含まれるクレジットカード番号を受け付けない技術的/法律的/財務的/契約的/設計上の理由はありますか?

非常に多くの Web サイトでは、クレジット カード番号にスペースやダッシュを入れることを許可していません。私はいつもずさんなプログラミングにこれを置いてきましたが、以前はマーチャント API を使用していました。クレジット カードの処理方法がわかれば、文字列から文字を取り除く方法がわかります。設計者は、Web サイトに警告を表示しているため、ユーザーの不満を引き起こしていることを認識しています。彼らはカードのすぐそこにいます!これには恥の壁さえあります。

偽りの怠惰、下手なプログラミング、冷淡さ、サディズム… これらはすべて、コードを実行する人の最悪の事態を想定しています。私が思いつく最も寛大な点は、彼らがお金に関係するものに対して非常に保守的だということです. スペースを含むクレジット カード番号を受け入れてはならない、深くて本当に重要な理由があるのではないかといつも思っていました。ヒューリスティックを絶対に適用してはならない理由。電信時代にさかのぼる奇妙な金融法でしょうか?ハスターのクレジット カード番号を 3 回入力しないように、未知の悪から私たちを守ってくれる縁の下の力持ちかもしれません。

4

6 に答える 6

8

怠惰や時間の制約以外に正当な理由はありません。

優れた UI は、ユーザーと、ユーザーがデータについて考えるさまざまな方法に適応する必要があります。

UI は、ユーザーがクレジット カードにダッシュやスペースを入力するのに簡単に適応できます。

于 2009-12-13T20:24:20.877 に答える
1

私の最初の答えは「複雑さを最小限に抑えること」ですが、攻撃面がどこかにある場合、データを難読化すると主張することもできると思います-危険なルーター/スニファー/中間者- 「xxxx xxxx xxxx xxxx」はほぼ間違いなくクレジット カード番号ですが、「xxxxxxxxxxxxxxxx」にはいくつかの番号が含まれる可能性があります。もちろん、それは決定的なハッキングを妨げるものではなく、SSL などによって大幅に軽減されることを願っています.

強調しておきますが、これは正当な理由ではないと思いますが、理由になる可能性はあります...

于 2009-12-13T20:26:12.790 に答える
0

すべてに正当な理由があるわけではありません。最初にそれを行った人は、簡単だったのでスペースを許可しなかったと思います。そして、誰もがそれに従い、疑問を呈しませんでした。

于 2009-12-13T20:23:57.190 に答える
0

ユーザーがクレジット カード番号を要求するフォーム フィールドに何を入力しなければならないかを定めたマーチャント契約は何も覚えていません。正規化するために多大な努力はしませんが、空白とハイフンは削除します。ただし、再表示できる内容にはルールがありますが、それは単なるコンテンツの量であり、正確な形式ではありません.

ただし、電話番号や社会保障番号についても同様のことが見られるので、クレジット カード番号の問題ではないと思います。

これは主にミドルウェアの問題だと思います。あるグループがフロントエンドを開発し、別のグループがバックエンドを開発し、その間に誰も好まない、誰もがターゲットにしなければならない既製のミドルウェア コンポーネントがあります。ミドルウェアは、すべてのデータを正規化するのはどちらかの側の責任であると考えて、可能な限り厳密に記述されています。すると指差しが始まり、みんな泣きながら家に帰り、クレジットカード番号にスペースは使えません。

于 2009-12-13T20:24:08.007 に答える
-1

文字列から非数字を削除するのは簡単なので、私はいつもこれが非常に奇妙だと思っていました。

カードの種類 (Visa/MC/Amex/Discover) ごとにチェック ディジットを使用した固有のエンコードがあるため、これはさらに混乱を招きます。そのため、クレジット カード番号を入力し、カードの種類として VISA を選択すると、インテリジェント バリデーターがその番号が Visa 番号であることを確認します。そのため、CC 番号を正しく検証する場合は、ユーザーが指定した文字列から数字以外を削除する必要があります。

カード検証がうまく実装されていない主な理由は 3 つあります。

  • 数字以外を予期しない数字の検証をチェックします。
  • 怠惰でストレスの多いプログラマーは、事前検証なしですべての引数を支払いゲートウェイに渡し、ゲートウェイがクレジット カード情報を検証できるようにします。支払いゲートウェイは、引数/データの検証に関して、ユーザー インターフェイスよりもはるかに厳格です。
  • ユーザー提供の cc データを変更することによる架空の法的影響についての誤解。
于 2009-12-13T21:13:43.387 に答える
-1

ダッシュなしでANDを使用して受け入れることができるため、怠惰でプログラミングが少ないだけの問題だと思います。または、パーツごとに異なるテキスト ボックスを作成することもできます (巨大なテキスト ボックスを使用する代わりに、4 つまたは 5 つの小さなテキスト ボックスを使用します。または、人々が混乱する可能性があるためだけかもしれません)。

于 2009-12-13T20:46:46.883 に答える