Message-Id: <34D2255D.2906C338@tts.dowjones.com>
Date: Fri, 30 Jan 1998 14:09:17 -0500
From: john MacNeille <mac@tts.dowjones.com>
To: java-security@web1.javasoft.com
Subject: problem with key agreement
This is a multi-part message in MIME format.
--------------32BDBBFF7AA1A9C6303A34C6
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
I am getting a InvalidKeyAgreement exception during phase 2 of
the example in the jce documentation. Is there a working example
available?
also the KeyPairGenerator initialize call with 1024 never returns but
does so
with 16.
I have included my code and would greatly appreciate any help you can
offer.
thanks
John MacNeille
--------------32BDBBFF7AA1A9C6303A34C6
Content-Type: application/x-unknown-content-type-VisualCafeFile.Document; name="KeyAgreementTest.java"
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename="KeyAgreementTest.java"
aW1wb3J0IGphdmEuc2VjdXJpdHkuKjsNCmltcG9ydCBqYXZhLnNlY3VyaXR5LnNwZWMuKjsN
CmltcG9ydCBqYXZhLnNlY3VyaXR5LlByb3ZpZGVyLio7DQoNCmltcG9ydCBqYXZheC5jcnlw
dG8uKjsNCg0KaW1wb3J0IGNvbS5zdW4uY3J5cHRvLnByb3ZpZGVyLio7DQoNCnB1YmxpYyBj
bGFzcyBLZXlBZ3JlZW1lbnRUZXN0DQp7DQoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0
cmluZyBhcmdzW10pDQoJew0KCQlLZXlBZ3JlZW1lbnRUZXN0IGtleVRlc3QgPSBuZXcgS2V5
QWdyZWVtZW50VGVzdCgpOw0KCQlrZXlUZXN0LmRvSXRFbmNvZGVkKCk7DQoNCgkJLy9rZXlU
ZXN0LmRvSXQoKTsNCgl9DQoNCglwdWJsaWMgdm9pZCBkb0l0KCkNCgl7DQoJCVNlY3VyaXR5
LmFkZFByb3ZpZGVyKG5ldyBTdW5KQ0UoKSk7DQoNCgkJQWN0aW9ucyBhbGljZQkJCT0gbmV3
IEFjdGlvbnMoKTsNCgkJS2V5UGFpciBhbGljZXNLZXlQYWlyCT0gYWxpY2UuZ2VuZXJhdGVL
ZXlQYWlyKCk7DQoNCgkJQWN0aW9ucyBib2IJCQkJPSBuZXcgQWN0aW9ucygpOw0KCQlLZXlQ
YWlyIGJvYnNLZXlQYWlyCQk9IGJvYi5nZW5lcmF0ZUtleVBhaXIoKTsNCg0KCQlieXRlW10J
c2VjcmV0MQkJPSBhbGljZS5nZW5lcmF0ZVNlY3JldChhbGljZXNLZXlQYWlyLmdldFByaXZh
dGUoKSwgYm9ic0tleVBhaXIuZ2V0UHVibGljKCkpOw0KCQlieXRlW10Jc2VjcmV0MgkJPSBi
b2IuZ2VuZXJhdGVTZWNyZXQoYm9ic0tleVBhaXIuZ2V0UHJpdmF0ZSgpLCBhbGljZXNLZXlQ
YWlyLmdldFB1YmxpYygpKTsNCg0KCQlTeXN0ZW0ub3V0LnByaW50bG4oIktleUFncmVlbWVu
dFRlc3Q6OmRvSXQgIiArIG5ldyBTdHJpbmcoc2VjcmV0MSkpOw0KCQlTeXN0ZW0ub3V0LnBy
aW50bG4oIktleUFncmVlbWVudFRlc3Q6OmRvSXQgIiArIG5ldyBTdHJpbmcoc2VjcmV0Mikp
Ow0KCX0NCg0KCXB1YmxpYyB2b2lkIGRvSXRFbmNvZGVkKCkNCgl7DQoJCVNlY3VyaXR5LmFk
ZFByb3ZpZGVyKG5ldyBTdW5KQ0UoKSk7DQoNCgkJQWN0aW9ucyBhbGljZQkJCT0gbmV3IEFj
dGlvbnMoKTsNCgkJS2V5UGFpciBhbGljZXNLZXlQYWlyCT0gYWxpY2UuZ2VuZXJhdGVLZXlQ
YWlyKCk7DQoNCgkJQWN0aW9ucyBib2IJCQkJPSBuZXcgQWN0aW9ucygpOw0KCQlLZXlQYWly
IGJvYnNLZXlQYWlyCQk9IGJvYi5nZW5lcmF0ZUtleVBhaXIoKTsNCg0KCQlieXRlW10JCWFs
aWNlc0VuY29kZWRQdWJsaWNLZXkgPSBhbGljZS5lbmNvZGVQdWJsaWNLZXkoYWxpY2VzS2V5
UGFpcik7DQoJCVB1YmxpY0tleQlhbGljZXNEZWNvZGVkUHVibGljS2V5ID0gYWxpY2UuZGVj
b2RlUHVibGljS2V5KGFsaWNlc0VuY29kZWRQdWJsaWNLZXkpOw0KDQoJCWJ5dGVbXQkJYm9i
c0VuY29kZWRQdWJsaWNLZXkgPSBib2IuZW5jb2RlUHVibGljS2V5KGJvYnNLZXlQYWlyKTsN
CgkJUHVibGljS2V5CWJvYnNEZWNvZGVkUHVibGljS2V5ID0gYm9iLmRlY29kZVB1YmxpY0tl
eShib2JzRW5jb2RlZFB1YmxpY0tleSk7DQoNCgkJYnl0ZVtdCXNlY3JldDEJCT0gYWxpY2Uu
Z2VuZXJhdGVTZWNyZXQoYWxpY2VzS2V5UGFpci5nZXRQcml2YXRlKCksIGJvYnNEZWNvZGVk
UHVibGljS2V5KTsNCgkJYnl0ZVtdCXNlY3JldDIJCT0gYm9iLmdlbmVyYXRlU2VjcmV0KGJv
YnNLZXlQYWlyLmdldFByaXZhdGUoKSwgYWxpY2VzRGVjb2RlZFB1YmxpY0tleSk7DQoNCgkJ
U3lzdGVtLm91dC5wcmludGxuKCJLZXlBZ3JlZW1lbnRUZXN0Ojpkb0l0ICIgKyBuZXcgU3Ry
aW5nKHNlY3JldDEpKTsNCgkJU3lzdGVtLm91dC5wcmludGxuKCJLZXlBZ3JlZW1lbnRUZXN0
Ojpkb0l0ICIgKyBuZXcgU3RyaW5nKHNlY3JldDIpKTsNCgl9DQp9DQoNCmNsYXNzIEFjdGlv
bnMNCnsNCglwdWJsaWMgQWN0aW9ucygpDQoJew0KCX0NCg0KCXB1YmxpYyBLZXlQYWlyIGdl
bmVyYXRlS2V5UGFpcigpDQoJew0KCQlLZXlQYWlyR2VuZXJhdG9yIGRoS2V5UGFpckdlbmVy
YXRvcgk9IG51bGw7DQoJCXRyeQ0KCQl7DQoJCQlkaEtleVBhaXJHZW5lcmF0b3IgPSBLZXlQ
YWlyR2VuZXJhdG9yLmdldEluc3RhbmNlKCJESCIpOw0KDQoJCQkvL2RoS2V5UGFpckdlbmVy
YXRvci5pbml0aWFsaXplKDEwMjQpOw0KCQkNCgkJCWphdmEuc2VjdXJpdHkuU2VjdXJlUmFu
ZG9tIGpyYW5kOw0KCQkJanJhbmQgPSBuZXcgamF2YS5zZWN1cml0eS5TZWN1cmVSYW5kb20o
InJhbmRvbSIuZ2V0Qnl0ZXMoKSk7DQoJCQlkaEtleVBhaXJHZW5lcmF0b3IuaW5pdGlhbGl6
ZSgxNiwganJhbmQpOw0KDQoJCQlyZXR1cm4gZGhLZXlQYWlyR2VuZXJhdG9yLmdlbmVyYXRl
S2V5UGFpcigpOw0KDQoJCX0NCgkJY2F0Y2ggKE5vU3VjaEFsZ29yaXRobUV4Y2VwdGlvbiBl
cnIpDQoJCXsNCgkJCVN5c3RlbS5vdXQucHJpbnRsbigiQWN0aW9uczo6Z2VuZXJhdGVQdWJs
aWNLZXlzICIgKyBlcnIudG9TdHJpbmcoKSk7DQoJCX0NCg0KCQlyZXR1cm4gbnVsbDsNCgl9
DQoNCg0KCXB1YmxpYyBieXRlW10gZ2VuZXJhdGVTZWNyZXQoUHJpdmF0ZUtleSBwcml2S2V5
LCBQdWJsaWNLZXkgb3RoZXJzUHViS2V5KQ0KCXsNCgkJYnl0ZVtdIHNlY3JldCA9ICJLZXkg
QWdyZWVtZW50IEZhaWxlZCIuZ2V0Qnl0ZXMoKTsNCgkJS2V5QWdyZWVtZW50CQlkaEtleUFn
cmVlCQkJPSBudWxsOw0KDQoJCXRyeQ0KCQl7DQoJCQlkaEtleUFncmVlID0gS2V5QWdyZWVt
ZW50LmdldEluc3RhbmNlKCJESCIpOw0KCQl9DQoJCWNhdGNoIChOb1N1Y2hBbGdvcml0aG1F
eGNlcHRpb24gZXJyKQ0KCQl7DQoJCQlTeXN0ZW0ub3V0LnByaW50bG4oIkFjdGlvbnM6Omdl
bmVyYXRlU2VjcmV0IDEgIiArIGVyci50b1N0cmluZygpKTsNCgkJCWVyci5wcmludFN0YWNr
VHJhY2UoKTsNCgkJCXJldHVybiBzZWNyZXQ7DQoJCX0NCgkNCgkJdHJ5DQoJCXsNCgkJCWRo
S2V5QWdyZWUuZG9QaGFzZSgxLCBwcml2S2V5KTsNCgkJfQ0KCQljYXRjaCAoSW52YWxpZEtl
eUV4Y2VwdGlvbiBlcnIpDQoJCXsNCgkJCVN5c3RlbS5vdXQucHJpbnRsbigiQWN0aW9uczo6
Z2VuZXJhdGVTZWNyZXQgMiAiICsgZXJyLnRvU3RyaW5nKCkpOw0KCQkJZXJyLnByaW50U3Rh
Y2tUcmFjZSgpOw0KCQkJcmV0dXJuIHNlY3JldDsNCgkJfQ0KCQkJDQoJCXRyeQ0KCQl7DQoJ
CQlkaEtleUFncmVlLmRvUGhhc2UoMiwgb3RoZXJzUHViS2V5KTsNCgkJfQ0KCQljYXRjaCAo
SW52YWxpZEtleUV4Y2VwdGlvbiBlcnIpDQoJCXsNCgkJCVN5c3RlbS5vdXQucHJpbnRsbigi
QWN0aW9uczo6Z2VuZXJhdGVTZWNyZXQgNSAiICsgZXJyLnRvU3RyaW5nKCkpOw0KCQkJZXJy
LnByaW50U3RhY2tUcmFjZSgpOw0KCQkJcmV0dXJuIHNlY3JldDsNCgkJfQ0KDQoJCXJldHVy
biBkaEtleUFncmVlLmdlbmVyYXRlU2VjcmV0KCk7DQoJfQ0KDQoJcHVibGljIGJ5dGVbXSBl
bmNvZGVQdWJsaWNLZXkoS2V5UGFpciBkaEtleVBhaXIpDQoJew0KCQlieXRlW10gZGhQdWJL
ZXlFbmNvZGVkCT0gbnVsbDsNCgkJZGhQdWJLZXlFbmNvZGVkID0gZGhLZXlQYWlyLmdldFB1
YmxpYygpLmdldEVuY29kZWQoKTsNCgkJcmV0dXJuIGRoUHViS2V5RW5jb2RlZDsNCgl9DQoN
CglwdWJsaWMgUHVibGljS2V5IGRlY29kZVB1YmxpY0tleShieXRlW10gb3RoZXJzUHViS2V5
RW5jb2RlZCkNCgl7DQoJCVB1YmxpY0tleSBvdGhlcnNQdWJLZXkJCQkJPSBudWxsOw0KCQlY
NTA5RW5jb2RlZEtleVNwZWMJZGhQdWJLZXlTcGVjCT0gbnVsbDsNCgkJS2V5RmFjdG9yeQkJ
CWRoS2V5RmFjdG9yeQk9IG51bGw7DQoJDQoJCXRyeQ0KCQl7DQoJCQlkaFB1YktleVNwZWMg
PSBuZXcgWDUwOUVuY29kZWRLZXlTcGVjKG90aGVyc1B1YktleUVuY29kZWQpOw0KDQoJCQlk
aEtleUZhY3RvcnkgPSBLZXlGYWN0b3J5LmdldEluc3RhbmNlKCJESCIpOw0KCQkJb3RoZXJz
UHViS2V5ID0gZGhLZXlGYWN0b3J5LmdlbmVyYXRlUHVibGljKGRoUHViS2V5U3BlYyk7DQoJ
CX0NCgkJY2F0Y2ggKE5vU3VjaEFsZ29yaXRobUV4Y2VwdGlvbiBlcnIpDQoJCXsNCgkJCVN5
c3RlbS5vdXQucHJpbnRsbigiQWN0aW9uczo6Z2VuZXJhdGVTZWNyZXQgMyAiICsgZXJyLnRv
U3RyaW5nKCkpOw0KCQkJZXJyLnByaW50U3RhY2tUcmFjZSgpOw0KCQl9DQoJCWNhdGNoIChJ
bnZhbGlkS2V5U3BlY0V4Y2VwdGlvbiBlcnIpDQoJCXsNCgkJCVN5c3RlbS5vdXQucHJpbnRs
bigiQWN0aW9uczo6Z2VuZXJhdGVTZWNyZXQgNCAiICsgZXJyLnRvU3RyaW5nKCkpOw0KCQkJ
ZXJyLnByaW50U3RhY2tUcmFjZSgpOw0KCQl9DQoNCgkJcmV0dXJuIG90aGVyc1B1YktleTsN
Cgl9DQoNCn0NCg==
--------------32BDBBFF7AA1A9C6303A34C6--