- PR -

JSPでRSAの復号化

1
投稿者投稿内容
kamicchi
会議室デビュー日: 2002/12/06
投稿数: 7
お住まい・勤務地: 東京都足立区
投稿日時: 2004-12-17 16:22
今現在、RSAで公開鍵で暗号化したデータを取得して、
JSP上で秘密鍵で復号化しようとしたら、
下のようなエラーが出ました。
意味がわからないので、もしご存知の方がいたら
ご教授願います。

java.io.InvalidClassException: COM.rsa.jsafe.SunJSSE_dn; local class incompatible: stream classdesc serialVersionUID = -777015125794823759, local class serialVersionUID = 7803535902620575444
java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:463)
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1521)
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
org.apache.jsp.check_jsp._jspService(check_jsp.java:59)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:122)
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2004-12-17 17:26
Javadocのjava.io.InvalidClassExceptionに
ずばり答えが書いてありましたが、参照されましたか?

オブジェクトストリームをデシリアライズするときに、
ローカルのクラスとオブジェクトストリームのシリアルバージョンが
一致していなくて例外が発生しています。
kamicchi
会議室デビュー日: 2002/12/06
投稿数: 7
お住まい・勤務地: 東京都足立区
投稿日時: 2004-12-17 17:49
Document APIは読みましたが、意味がよく理解できなかったので…
公開鍵と秘密鍵を秘密鍵を生成する際に、
ObjectOutputStream()を使ってFileOutputStream()を
通して保存しています。

そういう場合、SerialVersionは
どのように設定すればよろしいのでしょうか?
1

スキルアップ/キャリアアップ(JOB@IT)