「夫を成功」へ導く妻の秘訣 座談会

eclipseを使ってHTMLのウェブサイトで入力したデータをjavaのプログラムで暗号化することは可能でしょうか?教えてください

A 回答 (2件)

具体的に何をされたいのでしょうか?


Webブラウザに表示している画面で利用者が入力したデータをWebサーバーへ送る際に暗号化したいということであればその間の通信をSSL化すればよいだけです。
この「教えて!Goo」のWebサイトもそうなっています。具体的にはCybertrust Japanという認証局が発行した証明書をWebサーバーにセットしてのSSL通信となっています。URLの先頭が http:// ではなく https:// となっているがそれです。

SSLについてはインターネット上に様々な解説ページがあります。
Googleなどで「SSL」といったキーワードで検索すれると簡単にみつけることが出来ます。ご自身で参照されて「わかりやすい」と感じられるページの説明をお読みになってみてください。

参考まで。
    • good
    • 1

Pythonを使って、暗号化・復号化はやったことはあります。

javaでもできるみたい。
以下、Java暗号化のサンプルが載っていました。ご参考まで。

https://blogs.yahoo.co.jp/dk521123/34330480.html
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qこのプログラミングの問題がいくら考えてもわかりません。for文とif文を組み合わせて使うと言われたの

このプログラミングの問題がいくら考えてもわかりません。for文とif文を組み合わせて使うと言われたのですが、よろしければ教えてください

Aベストアンサー

No.1です、
念のための追加です。

日本語で「〇〇の値が××だったら、、、。そうでなかったら~。」といった表現で書かれたものが多くのプログラミング言語ではifを用いた処理になります。
同じく「〇〇の値が××になるまで、、、を繰り返す。」といった表現で書かれたものfor文やwhile文を用いた処理になります。

参考まで。

Q以下ですが?公開したらセキュリティ上良くないでしょうか!?

以下ですが、質問内容で公開しようか迷っています。
もし公開してよくない内容でしたら非公開とします。
皆様どう思われるでしょうか?
よろしくお願いいたします
-------------------------------------------------
php.iniの設定のメールの設定
※現在使用しているメーラーOutlookのアカウントを参考に設定します。
SMTP= お使いのSMTPサーバー名  : 公開したい。
Smtp_port = お使いのSMTPポート番号 : 公開したい。
sendmail_form = お使いのメールアドレス: 非公開にします。
sendmail_path = Sendmailの場所 : 公開したい。
--------------------------------------------------
Sendmailの起動と設定

php.iniでSendmailを使用可能にしたら、次にsendmail.iniの設定を行います。
sendmail.iniの設定は、次のものです。
smtp_server = お使いのSMTPサーバー名 : 公開したい。
smtp_port = お使いのメールアドレス。 : 公開した。
auth_username = お使いのSMTP認証ユーザー名(SMTP認証が必要な場合) : メルアドなので降下できません。
auth_pasuword = お使いのSMTP認証パスワード(SMTP認証が必要な場合) :公開はしません。

以下ですが、質問内容で公開しようか迷っています。
もし公開してよくない内容でしたら非公開とします。
皆様どう思われるでしょうか?
よろしくお願いいたします
-------------------------------------------------
php.iniの設定のメールの設定
※現在使用しているメーラーOutlookのアカウントを参考に設定します。
SMTP= お使いのSMTPサーバー名  : 公開したい。
Smtp_port = お使いのSMTPポート番号 : 公開したい。
sendmail_form = お使いのメールアドレス: 非公開にします。
sendmail_pa...続きを読む

Aベストアンサー

公開するって、そういう意味でしたか。最初の知質問文からでは意図が読み取れませんでした。

意図は理解しました、それでも
「後者の場合、公開しても規約上問題はありませんか?」
はクリアされているのでしょうか?

> SMTPは@niftyのSMTPのサーバー側の設定値を
>に設定するように著書に書かれていました。

著書にも具体的な値は書かれていないのでしょ?
また、
> NTTレゾナントのセキュリティポリシーにより拒否されました。

ともなっているのに

> パスワードとメールアドレスさえ公開しなければOKだと思われます

と判断される理由がわかりません。
サーバーを運営する企業に迷惑がかかる可能性を考慮にいれていますか?

Qpythonの集合のデータ変更

pythonの集合は、データに順番が無いようですが、
a = {1, 2, 3}

a = {1, 4, 3}
のように2番目のデータを2→4に変更することってできるのでしょうか?

Aベストアンサー

直接、更新するメソッドはないので
4を追加して、2を削除します。
a.add(4)
a.remove(2)

Qエクセルの指数近似について質問です。

エクセルの散布図で指数近似をすると、添付図のように大幅にずれてしまいます。
近似式が欲しいのですが、困っています。
どうか解決策を教えてください。よろしくお願いします。

Aベストアンサー

指数近似が適切な特性ではないため、ずれてしまうのだと思います。
例えば、ボールを投げたときの時間と高さの関係(放物線を描くので2次曲線)を、指数近似しているようなことになっていないでしょうか?

サンプルのデータを多項式の2次で近似したところ、相関係数は0.9997でした。
指数近似では0.9247でしたので、多項式近似のほうが適しているかと思います。
添付図参照です。

Qc言語の課題がわかりません

XOR を用いて文字列の暗号化及び暗号化された文字列の復号化をするプログラムを作成し,暗号化した文字列の結果は code.txt に出力し、復号化する際には code.txt からファイルを読み込んで復号化することとし、入力する文字列は最大で 9 文字までとする。暗号化および復号化には鍵として1つの文字用いる。鍵は暗号化の際に入力させ、復号化の際にも同じ鍵を用いる。暗号化は文字列の各文字ごとに鍵との間の XOR を取るものとする。と課題で出たのですが、自分には難しすぎて出来ません。どなたかおしえてください。プログラムの途中経過と実行例を記しておきます。
#include<stdio.h>
int main(){
int x;
char a[256],b[256];

printf("Select Mode 1.Encryption, 2.Decryption :");
scanf("%d",&x);
if(a==1){
printf("Input passphrase :");
scanf("%s",a);
printf("Input key:");
scanf("%d",b);
}else{
printf("Input key:");
scanf("%d",b);

}

if(a==3){
printf("Invalid value\n");
}
return 0;
}
<実行例 1>
Select Mode 1.Encryption, 2.Decryption : 1
Input passphrase : password
Input key : $
TEWWSKV@
<実行例 2>
Select Mode 1.Encryption, 2.Decryption : 2
Input key : $
Code : TEWWSKV@
Decode : password
<実行例 3>
Select Mode 1.Encryption, 2.Decryption : 3
Invalid value

XOR を用いて文字列の暗号化及び暗号化された文字列の復号化をするプログラムを作成し,暗号化した文字列の結果は code.txt に出力し、復号化する際には code.txt からファイルを読み込んで復号化することとし、入力する文字列は最大で 9 文字までとする。暗号化および復号化には鍵として1つの文字用いる。鍵は暗号化の際に入力させ、復号化の際にも同じ鍵を用いる。暗号化は文字列の各文字ごとに鍵との間の XOR を取るものとする。と課題で出たのですが、自分には難しすぎて出来ません。どなたかおしえてください...続きを読む

Aベストアンサー

以下、ファイルの入出力を絡めると理解が遠のくので、
シンプルに、画面を通しての入出力動作をするものにしました。
forループの中で行っている1行が最も重要な箇所なので、じっくり理解して下さい。

#include<stdio.h>
#include<string.h>

int main() {
int x;
char a[9+1];
char b[1+1];
char r[9+1];

memset(a, 0x00, sizeof(a));
memset(b, 0x00, sizeof(b));
memset(r, 0x00, sizeof(r));

printf("Select Mode 1.Encryption, 2.Decryption : ");
scanf_s("%d", &x);
if (x == 1) {

printf("Input passphrase : ");
scanf("%s", a);

printf("Input key: ");
scanf("%s", b);

} else if (x == 2) {
printf("Input key: ");
scanf("%s", b);

printf("Code : ");
scanf("%s", a);

printf("Decode : ");

} else {
printf("Invalid value\n");
return 0;
}

for (unsigned int i = 0; i < strlen(a); i++) {
r[i] = a[i] ^ b[0];
}

printf("%s\n", r);

return 0;
}

以下、ファイルの入出力を絡めると理解が遠のくので、
シンプルに、画面を通しての入出力動作をするものにしました。
forループの中で行っている1行が最も重要な箇所なので、じっくり理解して下さい。

#include<stdio.h>
#include<string.h>

int main() {
int x;
char a[9+1];
char b[1+1];
char r[9+1];

memset(a, 0x00, sizeof(a));
memset(b, 0x00, sizeof(b));
memset(r, 0x00, sizeof(r));

printf("Select Mode 1.Encryption, 2.Decryption : ");
scanf_s("%d", &x);
if (x == 1) {

printf(...続きを読む

Qjava 始めたばかりです

前回の質問から、ソートまで進みました。
足し算のプログラムの結果(2つしかありませんけど)、昇順にしたいと思います。
どの位置にプログラムを追加すれば良いんでしょうか?
なかなか思うように動かないので、よろしくお願いします。

package sample;

/*
additionクラス
キーボード2つの数字を入力後、その足し算結果を返す
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

class addition
{
//mainメソッドが初めに呼ばれる
public static void main(String args[]) throws IOException
{

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

System.out.print("aを入力してください:");
String str1 = br.readLine();
System.out.print("bを入力してください:");
String str2 = br.readLine();
System.out.print("cを入力してください:");
String str3 = br.readLine();

int a = Integer.parseInt(str1);
int b = Integer.parseInt(str2);
int c = Integer.parseInt(str3);

System.out.println("aは"+ a + "です"); //変数aの中身を表示
System.out.println("bは"+ b + "です"); //変数bの中身を表示
System.out.println("cは"+ c + "です"); //変数cの中身を表示

int d; //結果を入れる変数
int e; //結果を入れる変数
d = a+b; //演算して代入
e = a+c; //演算して代入

System.out.println(a + "+" + b +"=" + d +"です" );
System.out.println(a + "+" + b +"=" + e +"です" );



}
}

前回の質問から、ソートまで進みました。
足し算のプログラムの結果(2つしかありませんけど)、昇順にしたいと思います。
どの位置にプログラムを追加すれば良いんでしょうか?
なかなか思うように動かないので、よろしくお願いします。

package sample;

/*
additionクラス
キーボード2つの数字を入力後、その足し算結果を返す
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

class addition
{
//mainメソッドが初めに呼ばれる
publ...続きを読む

Aベストアンサー

文字数オーバーしますので これで理解してください。
   /**
* This method initializes jTextField3
*
* @return javax.swing.JTextField
*/
private JTextField getJTextField3() {
if (jTextField3 == null) {
jTextField3 = new JTextField();
jTextField3.setBounds(new Rectangle(122, 175, 184, 27));
jTextField3.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyReleased(java.awt.event.KeyEvent e) {
System.out.println("jTextField3");

String str = jTextField1.getText();
int a = Integer.parseInt(str);
str = jTextField2.getText();
int b = Integer.parseInt(str);
int c=a+b;
str=Integer.toString(c);
jTextField3.setText(str);
jTextField1.requestFocus();

}
});
}
return jTextField3;
}

文字数オーバーしますので これで理解してください。
   /**
* This method initializes jTextField3
*
* @return javax.swing.JTextField
*/
private JTextField getJTextField3() {
if (jTextField3 == null) {
jTextField3 = new JTextField();
jTextField3.setBounds(new Rectangle(122, 175, 184, 27));
jTextField3.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyReleased(java.awt.event.KeyEvent e) {
System.out.println("jTextField3");

...続きを読む

QC言語について質問です。 下記のように出力する際は、どのように記述すれば良いのでしょうか? ****

C言語について質問です。
下記のように出力する際は、どのように記述すれば良いのでしょうか?
********
* スタート *
********

Aベストアンサー

printf("********\n* %s *\n********\n", "スタート");

Q特殊な演算

2進数で表記された2つの数字を以下の演算で別の値を出す方法を考えています

その演算は同桁の数字が0と0なら0を
1と0,0と1なら1を
1,1も1
です。

010 と011 なら
1桁目が0、1なので1
2桁目は1,1なので1
3桁目は0,0なので0
となり 011 を返す


同桁の数字が0と0なら0を
1と0,0と1も0を
1,1は1
というバージョンも考えるのですが

エクセルでこのような演算を考えるには
関数であれVBAであれ
まず文字列としてleft() とか right() mid()を使って同桁の数字を取り出し
それを数値に直して計算し、3桁目*4+2桁*2+1桁 をして2進数表記にすればいいでしょうか?

それよりもっと楽なやり方はあるでしょうか?

お願いいたします

Aベストアンサー

使ってるExcelが2013かそれより新しければ、ビット演算関数があるので一発です。それより古いバージョンではVBAを使うか、1桁ごとに分解して演算するしかないですが。

QNullPointerException

以下のソースで、
NullPointerExceptionが出ます。
(202行目)
解決策がわかりません涙

どなたかわかる方いらっしゃいませんか?
https://pastebin.com/UV9TN4Sh

Aベストアンサー

> 710行目(https://pastebin.com/UV9TN4Sh
> )の
> wrkPassDto.setCheckResult(checkResult);
>
> ここに着目してみろと言われたのですが、ここからなにがわかりますか?

教えてくれる人がいるなら直接聞いたらいかがですか?
ここからなにがわかるかって、それをちゃんと自分で考えるように促されたのではないのですか?

特定の1クラスだけ見せられて、業務の仕組みも何がしたいかも分からない赤の他人に聞くことじゃありませんね。

710行目はInsertWorkData()内で、データ登録用のメソッドですよね。
私が見せられたロジックだけ見たら、今回発生している箇所との関係性はありません。

教えてくれてる人が言っているのは、こういうこと言ってるんじゃないんですか?
 ・登録(InsertWorkData())でcheckResultには必ず数字が入ってDB登録されなければならない仕様。
 ・よって、検索(handleSearch())でcheckResultを得た時、nullになりえない。
 ・としたら、登録(InsertWorkData())でcheckResultがnullで登録されていることがおかしい。
  登録(InsertWorkData())の呼出元に問題があるのではないか。

まあ仮にそうだとしたら、DB設計上、Not NULL制約がないのもどうかと思いますし、その時に問題視していたのは、202行目で例外になることではなく、登録処理の単体テスト的に、checkResult項目の結果がNG出してる、ということ。

仕事でやってて、教えてくれる人がいるのならば、こんなとこで質問してないで、ちゃんと自分で考えて、考えた結果をその方に質問してを繰り返して、社内で消化しましょうね。

> 710行目(https://pastebin.com/UV9TN4Sh
> )の
> wrkPassDto.setCheckResult(checkResult);
>
> ここに着目してみろと言われたのですが、ここからなにがわかりますか?

教えてくれる人がいるなら直接聞いたらいかがですか?
ここからなにがわかるかって、それをちゃんと自分で考えるように促されたのではないのですか?

特定の1クラスだけ見せられて、業務の仕組みも何がしたいかも分からない赤の他人に聞くことじゃありませんね。

710行目はInsertWorkData()内で、データ登録用のメソッドですよね。
私が...続きを読む

Qjavaです

a <> a = new a <>();

<>ここには何を指定するのでしょうか?

Aベストアンサー

https://www.milk-island.net/document/java/kihon/v1/

>ジェネリクスとは
>
>ListやMap、Setに格納する対象は、オブジェクトであれば何でも良いものの、そのままでは、取り出す際に明示的なキャストが必要となってしまいます。そこで、ジェネリクスという記法が Javaに取り入れられました。
>
>例えば、String型を格納する ArrayListの場合は、以下のように記述します。
>
> List<String> months = new ArrayList<String>();
>その後、Java1.7にてダイヤモンド演算子が登場し、表記がシンプルになりました。
>
> List<String> months = new ArrayList<>();

Javaのジェネリクスな話
https://qiita.com/b1ueskydragon/items/f6d42cd25847d1a50528


人気Q&Aランキング