問題タブ [stream-cipher]
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.
c - C 対称ストリーム暗号
純粋なポータブル C で書かれたストリーム暗号の適切な実装を持っている人はいますか? 現時点では暗号の強度についてはそれほど気にしていません。これは概念実証のためだけのものだからです。ただし、速度は重要です。適切なストリーム暗号が見つからない場合は、定数で Xor することを考えました。
authentication - ストリーム暗号による認証が必要/推奨されていますか?
共有パスフレーズ/キーを使用してTCPベースのプログラムの通信を保護したい。ブロックサイズやパディングなどを処理せずにこれを行う最も簡単な方法は、ストリーム暗号を直接使用することです。そうすることで、データの量がクリアデータと暗号化データの間で変更されることはなく、変更は簡単です。
ストリーム暗号のみを使用するということは、認証がないことを意味します。認証なしの暗号化は十分に安全ではないため、使用すべきではないと私は常に考えています。
ストリーム暗号に認証を追加することが必須である場合、HMACを追加するか、認証された暗号化方式( NaClのcrypto_secretboxなど)を使用する必要があるため、ストリーム暗号が追加した単純さが失われます。最小メッセージ長があり、パディングを処理する必要があります。 ..。。
あなたは何をお勧めします?特定の場合に、認証なしでストリーム暗号のみを使用するのは安全ですか?
cryptography - 暗号化アルゴリズム (および/または暗号化キー) が不明なファイルを自動的に復号化するソフトウェア ツールはありますか?
ローカル テキスト ファイルを暗号化するようにかなり簡単にプログラムできる暗号化のアイデアがあります。
私のアプローチが斬新で、業界標準の暗号化技術を使用していないことを考えると、「クラッカー」アプリなどを使用して暗号化の強度をテストできますか?
それとも、これらすべてのツールは、暗号化プロセス (または傍受された「キー」) に関する高度な知識に依存しているのでしょうか? つまり、テスト用に独自のクラッカーを構築する必要があるのでしょうか?
encryption - AES-CTRモード(ストリーミングのような暗号化)平文の1ビットの変更は暗号文の1ビットを変更しますか?
私の理解では、ストリーム暗号(またはAES CTRモード)では、キーは実際にはIVを使用して暗号化されています(または、一般に、キーKから疑似ランダムバイトを生成します)。それよりも、このキーを使用して、XORを使用して平文を暗号化します。
しかし、私が理解していることから、同じキーKが使用されていると仮定すると、平文の1ビットの変更は、暗号文の1ビットのみを変更します。
私は正しいですか、それとも完全に間違っていましたか?
そして、私が正しければ、それはCBCよりも安全性が低いのではないでしょうか。(CBCでは、平文の1ビットが変更されるため、変更の時点から暗号文のすべてのビットが変更されます)
ありがとう !!!
python - Python:テキストが暗号化されているかどうかを確認する良い方法はありますか?
これは興味深いオンライン チャット サービスで、メッセージをキーで暗号化できるため、同じキーを持つ人だけがメッセージを読むことができます。このサービスの興味深い点 (私の意見では) は、使用しているキー以外のキーを使用して暗号化されたテキストが、大量の不要な暗号テキストではなく、単に「[encrypted]」と表示されるという事実です。私の質問は、Python で、特定のテキストが暗号テキストかどうかを判断する良い方法はありますか? この例では RC4 を使用しています。これは、実装できる最速のものだったからです ( Wikipediaの疑似コードに基づいています。ありがとう。
c - 暗号化後、exe ファイルは実行不可になります
基本的な LFSR ベースのストリーム暗号暗号化モジュールを C で作成した後、通常のテキスト ファイルで試し、次に Windows の .exe ファイルで試しました。ただし、復号化した後、ファイルは実行されておらず、16 ビットであるというエラーが発生します。明らかに復号化のエラーです。それとも、バイナリ コードを改ざんすると破損するようにファイルが作成されていますか?
私は、自分の側でエラーを見つけることを期待して、テキスト ファイルで自分のプログラムをチェックしています。しかし、質問は、誰かが実行可能ファイルで独自の暗号化プログラムを実行しようとしたことがありますか? これに対する彼らの明白な答えはありますか?
cryptography - DCPU-16 用のストリーム暗号を作成していますが、制限があるため、どれに焦点を当てる必要がありますか?
楽しみのために、 DCPU-16 (ゲーム0x10 cの架空の CPU)のアセンブリでストリーム暗号を作成しています。プロセッサには 16 ビットのレジスタしかなく、100 Khz で動作します。ただし、現時点では、メモリ アクセスと乗算や除算などは非常に高速です ( DIV
2 つの間接メモリ アクセスを使用する場合、5 サイクルしかかかりません)。
このような制約がある場合、私の最善の選択肢は何でしょうか? 私は RC4 を検討していましたが、私のコードを使用している他の人が正しく使用できず、別の WEP 災害が発生する可能性があることを懸念しています。他のプログラマーを自分たちから守るために、RC4 よりも複雑なことを行う必要があると感じていますが、最小単位として 16 ビット ワードではなく 8 ビット バイトを期待するマジック ナンバーまたは事前計算されたテーブルを使用するアルゴリズムについて懸念しています。
encryption - 短い暗号化文字列によるストリーム暗号化
Stream Cipher 暗号化方法を探しています。これにより、暗号化された文字列ができるだけ短くなり、英数字のみが含まれるようになります。そのようなものは.NETに組み込まれていますか? 調べてみましたが、これといったものは見つかりませんでした。
ありがとうございました、
php - PHPのISAAC暗号
ISAACストリーム暗号を使用しているクライアントとPHPで通信する必要があります。私の知る限り、PHPで利用可能な暗号ライブラリはどれもこの暗号を実装していません。PHPアプリケーションにISAAC暗号をどのように実装できますか?
(ISAACのJava実装を見つけ、PHPへの移植にほぼ成功しました。唯一の問題はPHPでの符号なし右シフトです。これを行うメソッドを作成しましたが、シフトの数値がネガティブ。)