タグ付けされた質問 「cryptography」

安全な計算と通信のためのプロトコルとアルゴリズムの構築と分析に関する質問(認証、整合性、プライバシーの側面を含む)。

1
事前共有対称キーに基づいて認証プロトコルを破る
(Alice)からB(Bob)へ、またはその逆を認証することを目的とした次のプロトコルを検討してください。AAABBB A → B :B → A :A → B :「私はアリスです」、RAE(RA、K)E(⟨ RA+ 1 、PA⟩ 、K)A→B:「私はアリスです」、RAB→A:E(RA、K)A→B:E(⟨RA+1、PA⟩、K) \begin{align*} A \to B: &\quad \text{“I'm Alice”}, R_A \\ B \to A: &\quad E(R_A, K) \\ A \to B: &\quad E(\langle R_A+1, P_A\rangle, K) \\ \end{align*} はランダムなナンスです。RRR は事前共有対称キーです。KKK はペイロードです。PPP は、 mが K で暗号化されていることを意味します。E(m 、 K)E(m、K)E(m, …

1
Nisan-Wigderson擬似乱数ジェネレーターのセキュリティの証明
ましょう、部分的である -designおよびはブール関数です。Nisan-WigdersonジェネレーターG_fは次のように定義されます。S={Si}1≤i≤nS={Si}1≤i≤n\cal{S}=\{S_i\}_{1\leq i\leq n}F :{ 0 、1 } M → { 0 、1 } G F:{ 0 、1 } L → { 0 、1 } nは(m,k)(m、k)(m,k)f:{0,1}m→{0,1}f:{0、1}m→{0、1}f: \{0,1\}^m \to \{0,1\}Gf:{0,1}l→{0,1}nGf:{0、1}l→{0、1}nG_f: \{0,1\}^l \to \{0,1\}^n Gf(x)=(f(x|S1),…,f(x|Sn))Gf(バツ)=(f(バツ|S1)、…、f(バツ|Sn))G_f(x) = (f(x|_{S_1}) , \ldots, f(x|_{S_n}) ) 計算するにはの番目のビット我々はビット取るでインデックス付きのしてから適用彼らに。G f x S i fi私iGfGfG_fxxxSiSiS_ifff 仮定あるサイズの回路の-hard定数です。がことを証明するにはどうすればよいですか?1fff nccGf(nc1nc1nc\frac{1}{n^c}ncncn^ccccGfGfG_f(nc2,2nc)(nc2,2nc)(\frac{n^c}{2}, \frac{2}{n^c}) 定義: 部分設計は、サブセット、S …

2
wifiパスワードはWEPとWPAを使用してデータをどのように暗号化しますか?
(ワイヤレスネットワークに接続するために)入力するパスワードは、ワイヤレスネットワーク上のデータをどのように暗号化しますか? 読んだところ、入力したパスワードがパスフレーズと同じかどうかわかりません。それが正しい場合、パスフレーズはどのようにして4つのWEPキーを生成できますか? 4つのキーがWEPでどのように機能し、どのようにデータを暗号化するかを理解しています。また、WPAのキーがデータを暗号化する方法は知っていますが、知っておく必要があるのは次のことだけです。 ネットワークにアクセスするために入力するパスワードの利点は何ですか?また、このパスワードはデータの暗号化にどのように役立ちますか?

5
秘密鍵暗号化プロトコルの鍵はどのように交換されますか?
Windows NTはポイントツーポイントプロトコルを使用し、クライアントはストリーム暗号を使用してメッセージの配列をキーで暗号化することにより、サーバーと「安全に」通信できます。サーバーは、同じキー応答も暗号化します。しかし、このキーをどのように認識していますか?kkkkkk より一般的:アリスとボブが同じ秘密鍵で動作する暗号化/復号化アルゴリズムを使用している場合、この鍵を交換する安全な方法は何ですか?(別のキーのコースを使用せずに)kkk これは、私が秘密鍵暗号法を研究しているときにいつも自問してきたことです。

2
真ん中の男がメッセージを読むのを防ぐことができますか?
これらすべての中間者攻撃の防止について聞いたことがありますが、中間の男があなたのストリームだけを聞いていて、メッセージ自体を変更したくない場合、これがどのように機能するのか疑問に思っています。 真ん中の男は、対戦相手によって交換されたキーを取得するだけでなく、キーを変更してから、メッセージを再度復号化および暗号化できますか? 証明書はこれをどのように防ぐことができますか? 編集: 認証局が一般的に言っていると聞いたことがあります:「ええ、それは他のものです」。しかし、証明書の署名が不正でないことをどのように確認できますか?

2
記憶に残るIPv6アドレスの弱いハッシュ関数
IPv6の形式のIPv6アドレスは、862A:7373:3386:BF1F:8D77:D3D2:220F:D7E0IPv4の4オクテットよりも記憶や転記がはるかに困難です。 これを緩和する試みが 行われ、IPv6アドレスがより記憶に残るものになっています。 「これは比較的無害であり、支払う価値がないように曲げられている場合、これは比較的無害であり、見つけやすい」というフレーズがターゲットIPv6アドレスにハッシュされることを見つけるために逆にできる意図的に弱いハッシュ関数はありますか?もちろん、ハッシュには衝突する入力が多数あり、この例のフレーズのように、記憶に残る可能性のある文が自動的に提供される可能性があります。 私は2つの部分があると思います:最初に、両方の方向に良い分布を持つ弱いハッシュ。2つ目は、多くの衝突(短い、指定された言語の単語で構成され、場合によっては簡略化された文法に従う)から覚えやすいフレーズを選択するためのアルゴリズムです。 ハッシュ関数は弱くする必要がありますが、努力がまだ重要であることは間違いありません。ただし、フレーズがわかると、ターゲットアドレスへのハッシュの計算は非常に高速になります。 編集 私は、πのいくつかの数字を記憶するために、この関連するアイデア、Piphilologyを見つけました。 量子力学を含む激しい講義の後、もちろんアルコール飲料をどうやって望むか!


1
離散対数問題の複雑さを測定する方法は?
暗号スタック交換に関するこの質問への回答は、基本的に、対数問題の複雑さを測定するには、グループのサイズを表す数値の長さを考慮する必要があると述べています。それは恣意的なようですが、なぜグループのサイズを引数として選択しないのでしょうか。選択する引数を知るための基準はありますか?実際、グループのサイズによって複雑さが大きく変わるため、私は重要なことを見落としていたことを知っています。

6
プログラム検証手法は、ハートブリードのジャンルのバグの発生を防ぐことができますか?
ハートブリードバグの問題について、ブルースシュナイアーは4月15日の暗号グラムで次のように書いています。「破滅的」は正しい言葉です。1から10のスケールで、これは11です。私は数年前に、特定のオペレーティングシステムのカーネルが最新のプログラム検証システムで厳密に検証されていることを読みました。したがって、今日のプログラム検証手法を適用することで、Heartbleedのジャンルのバグが発生するのを防ぐことができますか、それとも、これはまだ非現実的か、または基本的に不可能でしょうか。

2
これらのCS領域にとって興味深い数学は何ですか?
私のCSの学位については、「標準的な」数学的背景のほとんどを持っています。 微積分:微分、積分、複素数 代数:フィールドまでの概念のほとんど。 数論:XGCDおよび関連するもの、主に暗号化用。 線形代数:固有ベクトル/固有値まで 統計:確率、検定 論理:命題、述語、モーダル、ハイブリッド。 CS領域での私の主な関心は、セキュリティ、暗号化、人工知能です。これらの分野、特にAIは現時点では私の主な研究分野ではないため、これらの領域にとって興味深いと思われる数学的なトピックについて何か提案があるかどうか疑問に思いました。

1
事前共有キーを備えたWPA2はゼロ知識証明の例ですか?
アクセスポイントをセットアップしてWPA2を選択する場合、事前共有キー(パスワード)、PSKを手動でAPとSTAの両方に入力する必要があります。 APとSTAの両方がお互いを認証する必要があります。しかし、彼らはPSKを明らかにせずにそうしなければなりません。どちらも相手に、実際に送信することなくPSKを知っていることを証明する必要があります。 それはゼロ知識証明の例ですか? そうだと思ったのですが、知識ゼロの証明とWPA2またはEPA-PSK(使用されている認証方法)をググるときに合法的なものは何も表示されません。

1
一方向プロパティを満たさないハッシュ関数への攻撃
私はコンピュータセキュリティコースを改訂しており、過去の質問の1つに悩まされています。はい、これ: アリス(AAA)は、ボブ(B)に共有シークレットS a bを使用してショートメッセージを送信し、メッセージが彼女からのものであることを認証したいと考えています。彼女は2つの部分を含む単一のメッセージを送信することを提案します: A → B :MMMBBBSabSabS_{ab}Hはハッシュ関数であり ∥意味連結。A→B:M,h(M∥Sab)A→B:M,h(M∥Sab) A \to B: \quad M, h(M \mathbin\parallel S_{ab})hhh∥∥\parallel ボブがメッセージがアリスから来たことを確認するために何をしているのか、なぜ(特性を除いて)ボブがこれを信じるのかを注意深く説明してください。hhh が一方向のプロパティを満たさず、事前イメージを生成できると仮定します。攻撃者ができることとその方法を説明します。hhh プリイメージの生成に比較的時間がかかる場合は、を変更せずにプロトコルを改善するための簡単な対策を提案します。hhh 私は最初のものを知っていると思います。ボブは受信したメッセージのハッシュを共有キーと一緒に取得し、そのハッシュをアリスから受信したハッシュと比較する必要があります。両者が一致する場合は、アリスがメッセージを送信したことを証明する必要があります。 2つ目の質問についてはわかりません。2番目の問題の答えは、攻撃者がハッシュを与えられた元のメッセージを簡単に取得できるということですか?それがどのように行われるかはわかりません。

1
現代の正規表現の表現力
私は最近、主に単語のグループを特別なプロパティと照合する正規表現の課題を提案するWebサイトについて友人と話し合いました。彼は||||||||、数|が素数であるような文字列に一致する正規表現を探していました。そのような言語は、通常であれば、補題をポンプの翻訳が素数のためにあるという事実与えますので、私はすぐにそれが今まで動作しません彼に言われた十分な大きさ、それが存在するのk ≤ pがあるようP + N kは、すべての主要ですN ≥ - 1、よく、これは全くケースしにくい(素数の配分、そのような未知の自明とプロパティを破砕、...)pppk≤pk≤pk \leq pp+nkp+nkp + nkn≥−1n≥−1n \geq -1 しかし、誰かが解決策に付属している:一致しない(||+?)\1+ キャプチャグループに一致するように、この表現しようとする(つまりすることができ||、|||、||||などの上の出現箇所)のn ≥ 2回。一致する場合、文字列で表される数はkで割り切れるので、素数ではありません。それ以外の場合です。k≥2k≥2k \geq 2|n≥2n≥2n \geq 2kkk そして、グループ化と後方参照により、正規表現が理論的な意味で...正規表現よりも実際にはるかに表現力豊かになることが明らかになったので、私は愚かに感じました。今では、実際の正規表現を実行するときに私が知らなかったルックアラウンドやその他の演算子も追加されました。 ウィキペディアによると、文脈自由文法によって生成された言語よりもさらに表現力があります。だからここに私の質問があります: 現代の正規表現エンジンを使用して、(文脈自由文法から生成された)代数言語を表現できますか より一般的な説明、または現代の正規表現で説明できる言語の種類の複雑さの少なくとも上限はありますか? より実用的には、その背後に深刻な理論がありますか、それとも有限オートマトンに基づく実際の正規表現の最初のブロックに実装可能と思われるたびに新しい機能を追加するだけですか? 「モダンな正規表現」は質問が具体的ではないことを知っていますが、少なくとも後方参照を使用することを意味します。もちろん、この「現代の正規表現」言語に対する特定の制限を想定している部分的な回答者がいる場合は、遠慮なく投稿してください。

2
データに対してリモートでアルゴリズムを実行し、回答が改ざんされていないことを確認する
私はこの特定のコンピューティング/暗号/データベースの問題について何年も考えてきましたが、すでに解決策があるかどうか知りたいだけです。正直なところ、この問題がどの分野に属しているかはわかりません。 一言で言えば、人物Aはデータのリストを持ち、別の人物(B)はこのリストの各アイテムにスコアを与え、これらすべてのスコアを合計してリスト全体の総合スコアを提供するアルゴリズムを持っています。データが非常に安全に保たれるように(できれば人物Aを離れないように)、データリストでアルゴリズムを実行して、人物Bがアルゴリズムが適切に実行され、改ざんされていないことを確認するにはどうすればよいでしょうか。 ここに例があります:アンナとボブは大きな村に住んでいます。アンナは自分のコンピューターに、村で行ったすべての良いことと悪いことのリストを持っています。ボブは、そのようなリストの非常に単純なスコアリングアルゴリズムを作成しました。これは、リストの各項目で実行され、スコアを与え、これらすべての数値を加算して、アンナに最終スコアを与えます。このスコアにより、ボブはアンナが村のコミュニティにとってどれほど有益であり、ボブの意見に固有のものであるかを知ることができます。(これは実際に私が作りたいシステムなので、これは単なる例ではありません) しかし、アンナはボブに彼女のリストを与えることを望んでいません。ボブはそこに潜在的に恥ずかしい情報にアクセスできるからです(誰もが自分のクローゼットにスケルトンを持っています)。ただし、ボブは嘘をついてボブにスコアが非常に高いのでボブが彼女を助ける可能性が高いと伝えるため、ボブは自分でアルゴリズムを実行することをアンナに信頼していません。 私がすでに考えたいくつかの解決策がありますが、すべて問題があります: A.ランダムな人物を見つけてデータを取得し、アルゴリズムを実行してスコアを送り返しますが、このランダムな人物がアンナを知らず、アンナを助けたり、データのコピーを作成したりして、後で試すのは難しい場合があります。それをたどってアンナを脅迫します。 B.アンナにアルゴリズムを実行させますが、たとえば、イベントを1と評価する代わりに、チェックコードをスコアにエンコードして1.0000000000797と評価します。これにより、ボブが後でこれをチェックコードとして使用して、指定されているかどうかを確認できます。スコアは正しいです。ただし、このチェックはボナによって誤用され、アンナが何をしたかを示すこともできます。また、アンナがボブのアルゴリズムを実行するにはフルアクセスが必要であることを考えると、このようなシステムはリバースエンジニアリングが簡単で、アンナが正しいチェックコードで誤ったスコアを出すことができると想像できます。 C.村は、そのようなデータとアルゴリズムを取得して一緒に実行するための安全なサーバーを作成します。ただし、AnnaとBobはどちらも、これを実行するのに十分なほど信頼しておらず、データのコピーを作成したり、スコアを変更したりすることはありません。また、私はこれがP2Pシステムであることを望みます。

1
連続ハッシュはありますか?
質問: そのジャムの情報トポロジー(暗号学的に安全な)ハッシュが存在することができる?{0,1}∗{0,1}∗\{0,1\}^{*} 私たちは、与えられた効率的に計算可能な近さ述語追加できると時間K(Y )(またはY自体を)あれば教えてくれるyがある非常に近いX(例えばレーベンシュタイン距離またはのハミング距離のxとyの未満であります固定定数c)?hk(x)hk(x)h_k(x)hk(y)hk(y)h_k(y)yyyyyyxxxxxxyyyccc バックグラウンド: 情報トポロジによって Iはポイントとトポロジー空間を意味上Σ *と塩基と{ X Σ *:X ∈ Σ * }。Σ∗Σ∗\Sigma^*Σ∗Σ∗\Sigma^*{xΣ∗:x∈Σ∗}{xΣ∗:x∈Σ∗}\{x\Sigma^* : x \in \Sigma^* \} トポロジについて考える良い方法は、オープンセットを肯定 / 検証可能なポイントのプロパティと見なすことです(つまり、trueの場合、trueであることを確認/観察できます)。これを念頭に置いて、クローズドセットは反駁可能なプロパティです。 関数は、開集合の逆画像が開いている場合は連続です。我々の場合、この手段は、その全てについてのy ∈ Σ *、あるI ⊆ Σ *ように F - 1(Y 、Σ *)= ⋃ X ∈ I X Σ *。f:Σ∗→Σ∗f:Σ∗→Σ∗f:\Sigma^* \to \Sigma^*y∈Σ∗y∈Σ∗y \in \Sigma^*I⊆Σ∗I⊆Σ∗I \subseteq \Sigma^*f−1(yΣ∗)=⋃x∈IxΣ∗.f−1(yΣ∗)=⋃x∈IxΣ∗.f^{-1}(y\Sigma^*) = \bigcup_{x\in …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.