Applet acessando classes via Rmi para conexão de banco via jdbc

Boa tarde, Gostaria de saber se alguém pode me ajudar.
Desenvolvi uma applet que realiza assinatura digital de um pdf, esse arquivo eu busco de uma base de dados oracle e depois que o arquivo esta assinado posto ele novamente la na base. A applet lê o arquivo dll na máquina do cliente para pegar a private key do token usando a biblioteca nativa PKCS11. Para acessar o banco desenvolvi uma classe para ser acessada via RMI através da applet.
Após exportar as classes da minha applet para um jar e assinar o mesmo, configurei o proxy e o serviço Rmi utilizando rmic (foi gerado os arquivos skeleton e stub) e rmiregistry. startei o serviço através da minha classe de implementação, o serviço ficou ativo. Mas ao rodar minha applet que foi assinada usando o jarsigner e atribuido os grants necessessários ao java.policy me é retornado o seguinte erro:


java.lang.SecurityException: class "AssinadorDigitalImpl_Stub"'s signer information does not match signer information of other classes in the same package
	at java.lang.ClassLoader.checkCerts(Unknown Source)
	at java.lang.ClassLoader.preDefineClass(Unknown Source)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at sun.applet.AppletClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at sun.rmi.server.LoaderHandler.loadClass(Unknown Source)
	at java.rmi.server.RMIClassLoader$2.loadClass(Unknown Source)
	at java.rmi.server.RMIClassLoader.loadClass(Unknown Source)
	at sun.rmi.server.MarshalInputStream.resolveClass(Unknown Source)
	at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
	at java.io.ObjectInputStream.readClassDesc(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.readObject(Unknown Source)
	at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
	at java.rmi.Naming.lookup(Unknown Source)
	at AssinadorDigitalApplet.signSelectedFile(AssinadorDigitalApplet.java:159)
	at AssinadorDigitalApplet.access$1(AssinadorDigitalApplet.java:121)
	at AssinadorDigitalApplet$1.actionPerformed(AssinadorDigitalApplet.java:95)
	at java.awt.Button.processActionEvent(Unknown Source)
	at java.awt.Button.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
java.lang.SecurityException: class "AssinadorDigitalImpl_Stub"'s signer information does not match signer information of other classes in the same package
	at java.lang.ClassLoader.checkCerts(Unknown Source)
	at java.lang.ClassLoader.preDefineClass(Unknown Source)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at sun.applet.AppletClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at sun.rmi.server.LoaderHandler.loadClass(Unknown Source)
	at java.rmi.server.RMIClassLoader$2.loadClass(Unknown Source)
	at java.rmi.server.RMIClassLoader.loadClass(Unknown Source)
	at sun.rmi.server.MarshalInputStream.resolveClass(Unknown Source)
	at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
	at java.io.ObjectInputStream.readClassDesc(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.readObject(Unknown Source)
	at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
	at java.rmi.Naming.lookup(Unknown Source)
	at AssinadorDigitalApplet.signSelectedFile(AssinadorDigitalApplet.java:159)
	at AssinadorDigitalApplet.access$1(AssinadorDigitalApplet.java:121)
	at AssinadorDigitalApplet$1.actionPerformed(AssinadorDigitalApplet.java:95)
	at java.awt.Button.processActionEvent(Unknown Source)
	at java.awt.Button.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

Pela mensagem que ele me mostrou me parece que tenho que assinar o stub tb? Não estou encontrando nada relacionado, se alguém puder dar um help, agradeço.
Será que as classes que vão ser acessadas via Rmi tb devem ser assinadas?

Obrigado.

Minha tática nesses casos aí normalmente é pegar todas as classes de todos os arquivos jars que uso e botar tudo num único arquivo jar que passa a ser o único arquivo jar que assino.

Inté.

Opa kWill blza? Então foi exatamente o que eu fiz, so que as classes de acesso a BD vão ficar em um servidor logo elas não podem ficar junto com o jar da applet, pois o servidor rmi não localizaria as classes e eu não conseguiria gerar os arquivos skeleton e stub dentro do jar. Não sei se é possivel assinar um .class sem ele estar dentro de um jar. Ja fiz outras applets assinadas tb e funcionou mas essa é a primeira vez que estou tentando fazer isso acessando outras classes via Rmi. De qualquer forma valeu pela força.