問題タブ [one-time-password]
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.
php - パスワードリセット用のシークレットコードを生成する
ユーザーがパスワードをリセットできるようにするモジュールを実行しています。ほとんどのWebサイトが、一意のハッシュを持つクエリ文字列を含む確認リンクを提供していることに気付きました。
私の質問は、同じユーザーがパスワードを忘れるたびにこの一意のハッシュを生成するにはどうすればよいですか?このハッシュをデータベースに保存し、後で検証するために使用する必要がありますか?安全ですか?または、ワンタイムパスワードを生成するある種のアルゴリズムを作成する必要がありますか?どうすればOTPを生成できますか?
.net - クライアントで認証できる system.security.cryptography を使用して OTP を生成するにはどうすればよいですか?
system.security.cryptography 名前空間を使用してこのサンプル コードを見つけることができる場所を知っている人はいますか?または開発者が従うべき指示はありますか?
目的は、asp.net Web サイトに 2 要素認証を追加することです。Web サイトで、ユーザーにパスコードの入力を求めたい (キーフォブから取得した場合と同様)。クライアント側では、正しいパスコードを生成する vb.net windows.forms プログラムを提供したいと考えています。
これを system.security.cryptography 名前空間で小規模に行いたいと考えています。デバイスをいじったり、認証サーバー アプライアンスを購入したりしたくないサンプル コードを探していました。
そこにあるアルゴリズムのほとんどは、数学の高度な学位を必要とするか、Linux や PHP などの他のプラットフォーム用です。.net に相当するものを探しています。
cryptography - OTP/XOR 同じ鍵を持つ 2 つの暗号文の解読
同じ鍵を 2 回使用した 2 つの暗号文を解読するにはどうすればよいですか? たとえばplaintext1
、キー"abcdefg"
を使用し、キーをplaintext2
使用します"abcdefg"
。
ciphertext2 ^ ciphertext1
に等しいことはわかっていplaintext1 ^ plaintext2
ます。また、解読plaintext1 ^ plaintext2
方法は「ブックサイファー」の解読方法と同じです (「ランニングキー暗号」と呼ばれることもありますが、ランニングキー暗号はブックサイファーと同じではありませんよね?)。
辞書攻撃を使用することになっていることはわかっていますが、使用すべき辞書/単語リストと、これを解読するために使用されるアルゴリズムがわかりません。リンク、またはクラック方法を示すコードを提供してくれる人はいますか?
私は暗号化が初めてで、楽しみのためにこれをやりたかっただけです。誰でも私を助けることができますか?ありがとう。
c# - C# の HMAC ベースのワンタイム パスワード (RFC 4226 - HOTP)
私は、大文字と小文字を区別しない 6 桁/文字の有効期限のあるワンタイム パスワードを生成することに頭を悩ませようとしています。
私のソースはhttps://www.rfc-editor.org/rfc/rfc4226#section-5です
まずパラメータの定義
次に、HOTP を生成するアルゴリズムがあります。
次に、Truncate を次のように定義します。
次に、6 桁の HOTP の例を示します。
これを、ワンタイム パスワードを生成するための便利な C# コードに変換しようとして、途方に暮れています。次のように、期限切れの HMAC を作成するためのコードが既にあります。
上記のアルゴリズムで提案されているように、そこから6桁になる方法がわかりません。
cryptography - 暗号化用の完全にランダムなワンタイムパッド
一部のデータ(サイズが数KB)を暗号化するためにワンタイムパッドを作成する必要があります。このようなワンタイムパッドを生成して、次のような基本的な乱数生成に関連するすべての疑似乱数の問題を回避するにはどうすればよいrand()
ですか?
これに使用できる既存の信頼できるツールまたはライブラリはありますか?
security - ロックアウトポリシーとワンタイムパスワード
RFC 4226を使用して、自分のWebサイトにワンタイムパスワードシステムを実装しています。このパスワードは、SMSを介してモバイルデバイスに送信されます。ユーザーはモバイルデバイスでのみパスワードを受け取ることができ、パスワードは15分後に期限切れになります。
ユーザーは、通常使用される標準の英数字の「マスターパスワード」も持っています。3つの失敗のロックアウトワークフローを実装しました。このロックアウトは15分間続きます。
私の質問は、セキュリティの観点から、「マスターパスワード」のみをロックアウトすることは許容されますか?ワンタイムパスワード機能を使用する場合、ユーザーにロックアウトポリシーの回避を許可する必要がありますか?どんな種類のセキュリティホールを開いていますか?
linux - 安価なホーム サーバーの 2 要素認証?
Linux 専用サーバーの小規模なホーム ネットワークに、ある種の 2 要素認証を追加することを検討していました。おそらく最大で 10 台の物理デバイスが必要です。このような少量の注文を比較的安価に提供できる会社はありますか?
ありがとう、ダニエル
PS これは主に、システムのセットアップを楽しむためのものです。私は、リスクの高いマシンが機能するとは主張していません。
.net - データを保存せずに期限付きのキーまたはパスワードを生成するにはどうすればよいですか
これが私のシナリオです...
ユーザーのクライアント アプリケーションは、Web サービスにアクセスを要求します。
Web サービスは、X 秒/分のみ有効な「キー」で応答します (時間は可変であるか、少なくとも Web サービスで定義可能です)。
ユーザーのクライアント アプリケーションは、キーをすぐに使用してさらに要求を行います。
Web サービスは、キーがまだ有効であることを確認し、有効な場合はリクエストを続行し、そうでない場合はそれに応じて応答します。
キーを実際にデータベースに保存せずにこれを行う必要があるため、キーの生成に使用されるハッシュ(ソルトを使用)は何らかの形で時間に基づいている必要があると推測しています。
私が本当に求めているのは、これを行うための最良のアプローチは何かだと思います。
言語: VB.Net
jakarta-ee - J2EE Spring セキュリティ ワンタイム パスワード
ワンタイム パスワードを実装する必要があります。単一の請願については、インターネットにはたくさんの情報源がありますが、私はまだ疑問を持っています.
データベースを使用せずにシステムの再起動を乗り切ることは可能ですか?
c++ - 現在の時刻とユーザー名 + パスワードを使用して一意の PIN 番号 (6 桁) を生成しますか?
後で別のプログラムがピンを生成した時期とユーザー名とパスワードを知る必要があるため、現在の時刻を使用する必要があります。
概要:
ユーザー名 + パスワード + 現在時刻 = PIN [6 桁]
逆に生成されたピンです。どの特定のものかを知り、1 分経過したかどうかを確認する必要があります。
私は直接コードを求めているわけではありませんが、最善とは言いませんが、最良の方法/アルゴリズムを知る必要があります。ありがとう(ところで、私はcpp初心者です)
編集:
分かりにくくてすみません。実際、OTP は必要ありません。PIN を生成した後、他のプログラムを次のように実行する必要があります: {username} {password} {pin} の検証