問題タブ [luhn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Luhn アルゴリズム コードの何が問題になっていますか?
このコードを使用して、サンプル コードが有効なクレジット カード番号であるかどうかを ( Luhn アルゴリズムを使用して) Java でテストしようとしています。どこで私は間違えましたか?16 個の 1 桁の数字の配列を受け取ります。どんな助けでも大歓迎です。ありがとう!
algorithm - クレジット カード番号の Luhn または Verhoeff アルゴリズム
まず第一に、これがstackoverflowにあるべきかどうかはよくわかりませんが、とにかく聞いてみようと思いました.
以前は、クレジット カード番号のエラー チェックに常に luhn アルゴリズムを使用していましたが、今日は、主に時間をつぶすために、verhoeff アルゴリズムを php に実装しようと考えました。
自分のカード番号でテストしたところ、問題なく動作したので、将来、クレジット カード番号のエラー チェックに luhn ではなく verhoeff を使用する必要があるかどうかを考え始めました。
今私の質問:
luhn よりも verhoeff を使用することに大きな利点はありますか?
verhoeff は実装が少し複雑であり、luhn よりも多くの転記エラーを検出できることを知っています。これにより、自然に少し遅いと思うようになりますが、より多くの転記エラーを検出するという利点と欠点は別として (もしあなたは本当にそれを呼ぶことができます)わずかに遅いということですが、他の本当の違いは考えられません。
verhoeff アルゴリズムはすべての主要なカードで機能しますか?
luhn がすべての主要なカードで機能することはわかっていますが、verhoeff もそれらすべてで機能しますか? 私はそれがそれらすべてで機能すると仮定していますが、とにかくチェックする必要があると思いました.
luhn を使用してクレジット カード番号を確認している人しか見たことがない理由はありますか?
開発者としての私のすべての時間で、luhn アルゴリズムを使用してクレジット カード番号をチェックしている人を実際に見たことがあります。これには正当な理由があるのでしょうか、それとも単純に luhn の方が知名度が高いということでしょうか?
お時間をいただきありがとうございます。
c - C:クレジットカード番号チェッカー/Luhnのアルゴリズム
すべてが正常に見え、Luhnのアルゴリズムに従っているようですが、自分のクレジットカード番号または有効なはずのこのサンプル番号を入力すると、4388576018410707、それでも無効として返されます...
誰かが問題を見つけることができますか?
php - Luhnを使用したクレジットカードの検証
Luhnのアルゴリズムを使用してクレジットカードの検証に取り組んでいました。番号が有効なクレジットカード番号であるかどうかを確認する必要があります。
上記はAMEX、discover、visa、mastercardで機能しますか?確認できません。
php - LuhnCalc と bpay MOD10 バージョン 5
次の PHP コードを使用して、BPay の CRN を計算しています。
ただし、BPAY は MOD 10 のバージョン 5 のようで、ドキュメントが見つかりません。MOD10と同じではないようです。
テストされた次の数値:
2005,1597,3651,0584,9675
ご覧のとおり、どれも BPAY 番号と一致しません。
javascript - Luhnアルゴリズムの実装
クレジットカード番号の簡単な検証を実装しようとしています。ウィキペディアでLuhnアルゴリズムについて読みました:
- 右端のチェックディジットから数えて左に移動すると、2桁おきに値が2倍になります。
- 製品の桁(たとえば、10:1 + 0 = 1、14:1 + 4 = 5)を、元の数値の2倍にされていない桁と合計します。
- 10を法とする合計が0に等しい場合(合計がゼロで終わる場合)、その数はLuhnの式に従って有効です。それ以外の場合は無効です。
ウィキペディアでは、Luhnアルゴリズムの説明は非常に簡単に理解できます。ただし、 Rosetta Codeやその他の場所(アーカイブ)でのLuhnアルゴリズムの他の実装も確認しました。
これらの実装は非常にうまく機能しますが、なぜ配列を使用して作業を行うことができるのかについて私は混乱しています。彼らが使用する配列はLuhnアルゴリズムとは関係がないようで、ウィキペディアに記載されている手順をどのように達成するかはわかりません。
なぜ彼らは配列を使用しているのですか?それらの重要性は何ですか、そしてウィキペディアで説明されているようにアルゴリズムを実装するためにどのように使用されていますか?
c++ - クレジット カード番号の検証アルゴリズムにどのようにアプローチすればよいですか?
クレジットカード番号を検証するプログラムを書いていますが、Luhn のアルゴリズムを使用する必要があります。前もって言っておきますが、私はプログラミングを学び始めたばかりなので (先週のようにループについて説明しました)、慣れていないことがたくさんあります。算術をチェックする関数の 1 つに問題があります。基本的に、右から左に 1 桁ごとに 2 倍にして、すべてを足し合わせる必要があります。しかし、5 のように数を 2 倍して 10 になる場合、合計に 10 ではなく 1+0=1 を追加する必要があります。どうすればそれをプログラムに入れることができますか?
これまでのサンプルコード:
javascript - JavaScriptでのLuhnアルゴリズムの実装
C#にあるLuhmアルゴリズムの実装をJavaScriptに移植しようとしています。私はそれを移植して、それが機能していると思いましたが、正当なカードを検証することができません。私のAMEXは正常に検証されますが、私の2つのVISAはそうすることを拒否します。コードは次のとおりです。
誰かが私に何が悪いのか正しい方向に向けることができますか?これはC#バージョンでは問題なく機能すると思いましたが、今は疑問があります...よろしくお願いします。
paypal - PayPal Pro : 無効なクレジット カード番号を確認するだけで十分ですか?
PayPal Pro で支払いを行う直前に、Luhn アルゴリズムでクレジット カード番号を確認します。これは無効な番号を除外するだけであり、悪意のある攻撃 (有効だが認証されていない番号) を除外することはわかっています。
この方法で処理を進めても問題ないと考えられますか? それとも、オンライン決済システムで、CC 番号が本物であり、実際のカードと一致するかどうかを確認することが絶対に必要ですか? もしそうなら、それを達成する簡単な方法はありますか?
paypal - Luhn アルゴリズム機能の障害?
私の PayPal Pro クレジット カード決済システムでは、この質問に対する最初の回答で示した Luhn アルゴリズム関数を使用しています。ただし、クレジット カードで支払いを試みたように見える米国のクライアントが何人かいて、その詳細は関数によって拒否されました (false を返します)。ただし、私のスクリプトでは何度でも試すことができます。
同時に、他のクライアントの CC の詳細が機能によって実際に受け入れられ、支払いが成功したことも知っています。
関数自体に何か問題があるに違いないと結論付けています。それは可能ですか?