問題タブ [blowfish]
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#blowfish NETの使用に関する問題:Uint32[]からbyte[]に変換する方法
C#では、Blowfish.NET 2.1.3のBlowfishECB.csファイルを使用しています(ここにあります)
C ++では不明ですが、同様です。
C ++では、Initialize(blowfish)プロシージャは次のとおりです。
C#では、Initialize(blowfish)の手順は同じです
これが問題です:
これは、C++でキーが初期化される方法です
ご覧のとおり、キーは2つのDWORDの配列で、合計8バイトです。
C#ではそのように宣言しますが、エラーが発生します
エラーは次のとおりです。
引数「1」:「uint[]」から「byte[]」に変換できません
私は何が間違っているのですか?
前もって感謝します!
c# - C# でフグ
私の C++ プログラムは、標準のフグを使用しています。
私の C# プログラムは、こちらの Blowfish 暗号化アルゴリズムを使用しています。
どちらのアプリケーション (TCP クライアント) も同じことを行います。つまり、パケットを受信し、暗号化してから送り返します。サーバーがパケットを正常に認識した場合は別のパケットを送信し、そうでない場合はソケットを閉じます。C++ と C# のすべての関数に従いましたが、暗号化以外はすべて同じです。
C++ ファイルには、暗号化が 1 つしかありません。ただし、私が持っているC#フグでは
- フグCBC
- フグCFB
- フグECB
- フグSimple
私の C++ プロジェクトではどれがどれなのかわからなかったので、ランダムにBlowfishECB
. しかし、それは機能しません.サーバー(私はそれにアクセスできません)は、パケットが暗号化されていると認識しません.
私の質問: C# 用の標準の Blowfish はありますか、またはこれが唯一のものである場合、この問題をどのように解決すればよいですか? 編集:
C++ フグのコードは、ここで見ることができます。
c# - How to use blowfish in C++ as an external dll in C#
It seems there's no blowfish in C# that would do the same as this one.So I decided to use it as an external and if it doesnt work again then translate the whole blowfish in C#. But first I'll try to use as an external.
Could you take a look at the C++ blowfish and tell me if I have to change the function parameters(some of them are LPBYTE,which is not included in C#).
Also,I'd be thankful if you tell me how to use them as an external dll(I have it compiled as a dll already),but the function parameters in C++ are frustrating me.
Edit: I need to call only Initialize,Encode and Decode.
Thanks in advance!
c# - C#: フグは文字数が少ないと機能しません
最新バージョンの Blowfish.NET を使用していますが、1 つ問題があります。
私はそれを正しい方法で呼び出しました.3番目のバイトから読み取り/書き込みを開始したいのですが、2バイトを使用しないため、長さは6 - 2です。
問題:
より長いデータを渡すと、フグは正常に動作しますが、これを暗号化する必要があります。問題は見つかりましたが、私の質問は次のとおりです。
c# - C++ フグはより少ない文字数で動作しますが、C# フグはそうではありません
C++ フグは 8 文字未満のブロックの暗号化をサポートしていますが、.NET はそうではありません。なぜですか?
C++ と C# の両方のアプリケーションで、次の配列を暗号化します
C++ と C# の両方のアプリケーションで、同じパラメーターを使用して Encrypt 関数を呼び出します。
ただし、C++ ではデータを暗号化しますが、C# では暗号化しません。
C# NET Blowfishの45、47、49行目は問題のある行です。45 行目の計算の後、結果は 0 になります。47 行目は 2 + 0 = 2 になり、49 行目 2 は 2 以上であるため、ループはありません。
C++フグにはパディングがありますが、理解しようとすると迷います。
私の問題は、C# ではパディングが C++ とまったく同じでなければならないため、有効な答えが得られることです。暗号化された配列を送信するサーバーが私のじゃない。
C++ フグで使用されるパディングと、C# NET での実装方法を教えてください。
//注: このパケットを複数回送信する必要はなく、1 回だけ送信する必要があります。
前もって感謝します!
c - CでのBlowfish暗号化の適応問題
Boneh-Franklin IdentityBasedEncryptionを実装するプログラムを書いています。実際の暗号化方法は、( https://voltar.org/ )から入手したBlowfishを使用しています。私はblowfish暗号化/復号化コードを自分のプログラムに適合させようとしています。私のプログラムの違いは、標準入力からメッセージを読み取り、暗号化して暗号化を印刷してから、復号化して復号化(元のメッセージである必要があります)を印刷することです。現在、「?」までの入力メッセージを読んでいます。文字を入力してから、サイトのコードに従ってください。ただし、復号化は読み取り不可能な文字として出力されます。この問題を解決しようとしましたが、行き詰まりました。手伝ってくれませんか?
************これは、入力メッセージを読み取るための私のコードです:***************
************次に、暗号化にコード(引用および参照)を使用しました***************
もちろん、プログラム引数ではなくstdinから読み取ったメッセージとして変更しました
************次に、復号化にコード(引用および参照)を使用しました***************
ここでは、暗号をトークン化して復号化用のプレーンchar配列を作成した部分を除外し、復号化する暗号配列を渡して(暗号化関数から出力されるため)、長さ=のプレーンchar配列に格納しました。 strlen(暗号)
どんな助けでも大歓迎です。ご不便をおかけして申し訳ございませんが、よろしくお願いいたします。
ruby - RubyでBlowfishでエンコードされたバイナリ文字列をASCIIに変換するにはどうすればよいですか?
Ruby とCrypt ライブラリを使用してプレーン テキストをエンコードしたいと考えています。次に、この暗号化されたテキストを (他のデータと共に) XML ファイル内の ASCII 16 進数文字列として送信したいと考えています。
次のコード スニペットがあります。
どの出力:
呼び出す必要があると思いenc.unpack()
ますが、unpack メソッドの呼び出しに必要なパラメーターがわかりません。
java - AS3Crypto と Javax.Crypto 間の ECB/PKS5/Blowfish の暗号化/復号化がパディング エラーで失敗する
ファイルとして送信された秘密鍵を持っているので、Blowfish を使用して一部の xml データを暗号化できます。AS3Crypto で使用できるようにキーにアクセスするにはどうすればよいですか? [Embed] メタタグを使用して埋め込む必要があると思います。mimeType="application/octet-stream" ですが、それが正しいかどうかはわかりません。このファイルを埋め込んでから、このファイルを秘密鍵として参照するにはどうすればよいですか? 暗号化している xml は、Java 側で復号化できません。各試行は次の例外で失敗します:
javax.crypto.BadPaddingException: 指定された最終ブロックが適切にパディングされていません。
おまけとして、lib を使用して Java 実装を操作した経験があり、使用する理想的なモード/パディング/IV を知っている場合、それは素晴らしいことです。ありがとう!
blowfish - TurboPowerBlowfishを.Netに移植する
Borland C ++で作成され、TurboPowerLockBoxコンポーネントに実装されたBlowfishアルゴリズムを使用したアプリケーションがあります。
このアプリケーションはC#に移植されました。現在、このアルゴリズムを使用するBorland C++dllを呼び出しています。ただし、64ビットOSでアプリケーションを実行すると、このdllを使用しようとするとエラーが発生します。アプリケーションを32ビットとしてコンパイルすると、すべてが機能しますが、このアプリケーションを64ビットアプリとして機能させたいと考えています。私が知る限り、それはC++のように機能する.NetBlowfishアルゴリズムが必要であることを意味します。
Blowfish.Netを見つけましたが、有望に見えます。ただし、同じキーとテキストを使用すると、暗号化された結果が一致しません。C++dllがBlowfishECBアルゴリズムを使用していることを知りました。また、結果をBase64に変換します。これも私が行いました。
これに関する助けをいただければ幸いです。これがC#のテストコードです。