問題タブ [secret-key]
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.
web-config - Amazon AWS ID と秘密鍵を保管する最も安全な場所はどこですか?
ASP.NET を使用してアプリケーションを開発しています。Amazon AWS ID と秘密鍵を保管する最も安全な場所はどこですか?
私は 2 つの可能性について考えました: 実際の AmazonAPI.cs (クラス) 自体をプライベート メンバーとして。次に、web.config の appSettings 変数として?
AWS API for .NET を使用するには、API 呼び出しでこれらの認証情報を提供する必要があります。呼び出しに Web サービスは使用しません。呼び出しは、特に Amazon API 呼び出しをカプセル化する目的で作成した .cs クラス ファイルを介して行われます。
お願いできますか: それを行う方法を示すサンプル コードを提供してください (良い方法は、ここにあるようなものです) - ASP.NET 4.0 を使用する場合は、より良い方法があるかもしれませんが、よくわかりません。繰り返しますが、web.config で以下を暗号化します。
ありがとう。
ところで: IAM User Temporary Credentials を使用するオプションもあります - それについて何か知っていましたか?
java - javaで秘密鍵をゼロ化するにはどうすればよいですか?
次の Java コードは、メモリ内の秘密鍵をクリアする (すべてのバイト値を 0 に設定する) のに十分ですか?
つまり、getEncoded
メソッドは実際のキーへのコピーまたは参照を返しますか? コピーが返された場合、セキュリティ対策として秘密鍵をクリアするにはどうすればよいですか?
php - PHPを使用してコマンドで「gpgパスフレーズ」を渡すことにより、暗号化されたファイルを復号化する方法は?
コマンドラインでパスフレーズ/秘密鍵を渡してファイルを復号化する方法を知りたいです。
これを使用してみましたが、それでもパスフレーズを入力するように求められます。
echo shell_exec("echo $passphrase | gpg --passphrase-fd 0 -o $unencrypted_file -d $encrypted_file");
私の目標は、ファイルを自動的に復号化できるプログラムを PHP で作成することです。
java - 同一のパスワード ベースの暗号化キーを生成できないように見えるのはなぜですか?
私は、2 つの別々のソフトウェアを使用して、ネットワーク接続の両端で情報の暗号化と復号化を行う Java ソフトウェアに取り組んでいます。これを簡単にするために、データの暗号化を処理する Cryptographer クラスを 1 つ用意しています。現時点では、Controller (接続の一方の側) と Agent (もう一方の側) の両方がこのクラスを使用して、2 つのプログラム間で共有されるパスワードに基づいて SecretKey を生成します。
キーは、Cryptographer クラスの次の関数で生成されます。
暗号化自体は、encrypt 関数で行われます。
そして、decrypt 関数によって復号化されます。
暗号化は正常に機能しているようですが、受信側でシリアル化されたオブジェクトを復号化しようとすると、InvalidKeyException がスローされます。コントローラとエージェントで個別に生成されたキーを比較すると、同じパスワードをソースとしているにもかかわらず、同一のキーを生成していないことがわかります。
さて、私は Java での暗号化は初めてなので、ここで何か間違ったことをしている可能性は十分にあります。これには、私が見逃しているランダムな要素があるようです。目標は、接続の両側で同一のパスワードから同一のキーを生成することです。それで、明らかに間違っていることはありますか?さらにコードが必要な場合は、お知らせください。投稿させていただきます。
java - 同じ秘密鍵を複数回使用する必要がありますか?
登録ユーザーのパスワード(AES暗号化)をHTTPリクエストを介してサーバーに送信するコンピューターセキュリティコース用のJava SEベースのアプリケーション(大学イントラネット)を開発しています。次の手順を実行します。
- ユーザーはイントラネットアプリに登録します。
- クライアントは、AESで暗号化された学生のパスワードを含むHTTPリクエストを送信します。
- PHPスクリプトは、AES暗号文を復号化してハッシュします。
- ハッシュ化されたパスワードはデータベースに保存されます。
AESについて読んだことから、暗号化プロセスの一部として秘密鍵が必要になります。サーバースクリプトは暗号を復号化するために秘密鍵を必要とするので、毎回同じ秘密鍵を使用するのは悪い考えですか?スクリプトが暗号文を受信すると、一方向ハッシュ関数を使用して暗号文をデータベースに保存します。
facebook - イベントアプリ秘密鍵
標準の Facebook イベント アプリの秘密鍵を見つけるにはどうすればよいですか? Wordpress で Facebook イベント ウィジェットを使用するために必要です
java - Java AES: このキーをサポートするプロバイダがインストールされていません: javax.crypto.spec.SecretKeySpec
128 ビット AES 暗号化をセットアップしようとしていますが、Cipher.init で例外がスローされます。
No installed provider supports this key: javax.crypto.spec.SecretKeySpec
次のコードを使用して、クライアント側でキーを生成しています。
このキーは、ヘッダーとしてサーバーに渡されます。この関数を使用してエンコードされた Base64 です。
サーバーはヘッダーをプルし、
これをデバッグするために、クライアント側で鍵を生成した後と、サーバー側で cipher.init の直前にブレークポイントを設定しました。Netbeans によると、SecretKey を構成するバイトは同一で、長さは 16 バイトです (実際、私が知る限り、オブジェクトは同一です)。
無制限の強度の JCE については認識していますが、128 ビット AES にそれが必要だったという印象はありません。
クライアント側: Java バージョン "1.6.0_26"
サーバー側: Java バージョン「1.6.0_20」
何か案は?
facebook - API キー/シークレットを介して Facebook アプリ ID を取得する
データベースに保存されているすべての古い Facebook アプリの API キー/シークレットがたくさんあります。ただし、Facebook は、私が持っていないアプリ ID のみの API キーをサポートしていません。私はそれを取得しようとしました:
さいころはありません。次のようなアプリ ID でのみ選択できます。
アプリ ID がないと、ユーザーをログインさせることも、ユーザー ID を取得することもできません。どうすればそれらを入手できるか、または入手できないのでしょうか?
facebook-graph-api - サーバー コンポーネントなしで安全に Facebook の実績をアンロックできますか?
Facebook の実績のロックを解除するには、ユーザー アクセス トークンではなくアプリケーション アクセス トークンを使用する必要があります。おそらく、ユーザーがグラフ API 呼び出しで自分の実績のロックを解除できないようにするためです。アプリケーション トークンは、アプリ ID (パブリック ナレッジ) とアプリケーション シークレット キー (プライベート) の組み合わせです。これは、アプリケーションにサーバー コンポーネントがある場合は簡単に実現できます。アプリケーションの秘密鍵をサーバー コードに安全に埋め込むことができるため、漏洩を恐れず、条件が満たされたときにサーバーが実績のロックを解除するように要求するだけです。ただし、アプリケーションにサーバー コンポーネントがない場合 (つまり、ネイティブの iOS または Android アプリケーションの場合)、アプリケーション バイナリに秘密鍵を埋め込まないと実績のロックを解除できないようです (悪いこと)。
php - KEYを公開せずにAjaxからAPIへ
私が尋ねようとしていることの答えはNOだと確信していますが、誰かが私に別の考えを与えることができるかもしれないので、とにかく尋ねています.
API 呼び出しを介してサードパーティの Web サービスから情報を取得するコントロール パネルを開発しています。ブラウザーでミリ秒単位で結果を返す AJAX を使用して呼び出しを行うことはできますが、このサービスの API キーを公開することになります。これはアクセスが制限されたイントラネットですが、従業員は、たとえば Safari のアクティビティ ウィンドウを監視するだけで、盗聴してプライベート API キーを取得できます。従業員は信頼できますが、信頼するだけで開発のセキュリティを危険にさらしたくありません。
私が今行っているのは、CURL呼び出しで呼び出しを行うphpをAJAXingすることですが、そうするのに約2〜3秒かかります.php自体ではなく、共有ホスティングがサードパーティのサーバーに行き来します。
秘密鍵を公開せずにブラウザに直接 API へのリクエストを実行させる方法はありますか? 定義上は不可能だと思いますが、シナリオを共有しているので、誰かがより良いアイデアを持っている可能性があります(フェッチされる情報が秒単位で変化するため、キャッシュを回避しようとしています)
問題ではありませんが、これに関連して疑問があります。Mac OS ターミナルまたはローカルの Apache で CURL を介して API 呼び出しを行うと、結果を取得するのに毎回 12 秒ほどかかりますが、ブラウザーはまったく同じコンピューターと接続で使用されます。ミリ秒単位で取得します。私は CURL が内部でどのように機能するかについてあまり詳しくありませんが、CURL のメカニズムが遅いか、私の Mac でうまく機能していません。
ありがとう