質問編集履歴
8
誤字
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
PCとRaspberry Pi間のED
|
1
|
+
PCとRaspberry Pi間のECDHを実装する際に共通鍵を作成できません。
|
test
CHANGED
File without changes
|
7
タグの追加
test
CHANGED
File without changes
|
test
CHANGED
File without changes
|
6
文法の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -30,10 +30,8 @@
|
|
30
30
|
f.write(public_key_A.export_key(format='PEM'))
|
31
31
|
|
32
32
|
|
33
|
-
お互いで作成した公開鍵をpemファイルで書き込み、交換した所まで進みました。PC上に
|
33
|
+
お互いで作成した公開鍵をpemファイルで書き込み、交換した所まで進みました。つまりPC上には秘密鍵priA.pemとRaspberry piから送られてきた公開鍵pubB.pemがあり、この2つの鍵を使って共通鍵を生成したいと考えています。
|
34
|
-
|
35
|
-
こ
|
34
|
+
そこでmake_shared_key(private_key,public_key)という関数を作りましたが、shared_key(共通鍵)を生成するためのshared_key = private_key.exchange(public_key)部分でexchangeがエラーを起こします。
|
36
|
-
shared_key = private_key.exchange(public_key)でexchangeがエラーを起こします。
|
37
35
|
|
38
36
|
そもそもECC.generate(curve='P-256')を使って生成した公開鍵と秘密鍵ではECDHを作成することは不可能なのでしょうか?
|
39
37
|
また実装できる場合には、どのように修正すればよろしいでしょうか。
|
5
文法の修正
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
PCとRaspberry Pi
|
1
|
+
PCとRaspberry Pi間のEDCHを実装する際に共通鍵を作成できません。
|
test
CHANGED
File without changes
|
4
文法の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -30,7 +30,7 @@
|
|
30
30
|
f.write(public_key_A.export_key(format='PEM'))
|
31
31
|
|
32
32
|
|
33
|
-
お互いで作成した公開鍵をpemファイルで
|
33
|
+
お互いで作成した公開鍵をpemファイルで書き込み、交換した所まで進みました。PC上にある秘密鍵priA.pemとRaspberry piから送られてきた公開鍵pubB.pemを読み込みました。
|
34
34
|
|
35
35
|
この公開鍵と秘密鍵から共通鍵を生成したいと考え、make_shared_key(private_key,public_key)という関数を作りましたが、shared_key(共通鍵)を生成するための
|
36
36
|
shared_key = private_key.exchange(public_key)でexchangeがエラーを起こします。
|
3
誤字
test
CHANGED
File without changes
|
test
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
**PC側**
|
5
5
|
from Crypto. PublicKey import ECC
|
6
6
|
|
7
|
-
Aさんの秘密鍵、公開鍵生成
|
7
|
+
_Aさんの秘密鍵、公開鍵生成_
|
8
8
|
private_key_A = ECC.generate(curve='P-256')
|
9
9
|
|
10
10
|
with open("priA.pem", "w") as f:
|
@@ -19,7 +19,7 @@
|
|
19
19
|
**Raspberry Pi側**
|
20
20
|
from Crypto. PublicKey import ECC
|
21
21
|
|
22
|
-
|
22
|
+
_Bさんの秘密鍵、公開鍵生成_
|
23
23
|
private_key_B = ECC.generate(curve='P-256')
|
24
24
|
|
25
25
|
with open("priB.pem", "w") as f:
|
2
見やすくするため
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
### 前提
|
2
2
|
A(PC)さんとB(Raspberry Pi)さんでECDHを実装する際に共通鍵を作成でエラーが起こりました。
|
3
3
|
|
4
|
-
PC側
|
4
|
+
**PC側**
|
5
5
|
from Crypto. PublicKey import ECC
|
6
6
|
|
7
7
|
Aさんの秘密鍵、公開鍵生成
|
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
|
19
|
-
Raspberry Pi側
|
19
|
+
**Raspberry Pi側**
|
20
20
|
from Crypto. PublicKey import ECC
|
21
21
|
|
22
22
|
Aさんの秘密鍵、公開鍵生成
|
1
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
### 前提
|
2
|
-
A(PC)さんとB(Raspberry Pi)さんでECDH
|
2
|
+
A(PC)さんとB(Raspberry Pi)さんでECDHを実装する際に共通鍵を作成でエラーが起こりました。
|
3
3
|
|
4
4
|
PC側
|
5
5
|
from Crypto. PublicKey import ECC
|
6
6
|
|
7
|
-
|
7
|
+
Aさんの秘密鍵、公開鍵生成
|
8
8
|
private_key_A = ECC.generate(curve='P-256')
|
9
9
|
|
10
10
|
with open("priA.pem", "w") as f:
|
@@ -19,7 +19,7 @@
|
|
19
19
|
Raspberry Pi側
|
20
20
|
from Crypto. PublicKey import ECC
|
21
21
|
|
22
|
-
|
22
|
+
Aさんの秘密鍵、公開鍵生成
|
23
23
|
private_key_B = ECC.generate(curve='P-256')
|
24
24
|
|
25
25
|
with open("priB.pem", "w") as f:
|
@@ -91,5 +91,4 @@
|
|
91
91
|
|
92
92
|
### 補足情報(FW/ツールのバージョンなど)
|
93
93
|
|
94
|
-
ここにより詳細な情報を記載してください。
|
95
94
|
|