Assinatura digital no arquivo .CAB – usando ou criando sua assinatura

Quando falamos em assinar o arquivo .CAB, precisamos observar alguns pontos...

Assinatura digital no arquivo .CAB – usando ou criando sua assinatura

 

No artigo anterior, falamos sobre:

·        O que significa ser: Ser confiável no Internet Explorer;

·        Colocando a mão na massa: Como criar o arquivo de gabinete (.CAB)

 

Hoje falaremos sobre alguns temas bem complexos e delicados e depois passaremos a exemplos práticos.

 

Quando falamos em assinar o arquivo .CAB, precisamos observar alguns pontos, principalmente quando precisamos que o código  execute alguma coisa fora do modo seguro Java ou ainda sempre que precisemos instalar o código no computador local ou cliente a partir de uma página da Web. Para resolvermos isso, podemos assinar um arquivo .CAB usando o utilitário Signcode.exe, que está incluido no SDK para Java. Teremos a frente alguns exemplos.

 

No SDK, clique em Índice e clique em S. Scroll para encontrar "Assinando arquivos de gabinete com permissões Java". (trecho encontrado como referência no site da Microsoft, em www.microsoft.com/java.


Agora, vamos tratar de alguns pontos que devemos considerar:

Marcando suas referências em um arquivo .CAB assinado

Há várias formas de criar um referência ao seu arquivo .CAB  que será assinado, em código, no HTML. Algumas desses parâmetros:

 Agora que tal um exemplo?

 

Bem! Em determinados momentos é possível usar a seguinte classe Java com os três pequenos exemplos a seguir:

Atenção: Devemos nos Certificar que tenhamos instalada a versão jvc.exe no caminho do SDK para Java 2.0, via compilação 4337 ou mais atual, com isso simplificamos a permissão de declaração e haverá uma exibição de um MessageBox Win32, for quando executada.

 

package simple;

import com.ms.security.*;

public class Simple extends java.applet.Applet

{

   public void init()

   {

      try {

         if (Class.forName("com.ms.security.PolicyEngine") != null)

    PolicyEngine.assertPermission(PermissionID.SYSTEM);

      } catch (Throwable cnfe) {  }

      try {

 MessageBox(0, "MessageBox successfully called.", "Java", 0);

      } catch (UnsatisfiedLinkError ule) {

 System.err.println("Caught exception: " + ule);

 System.err.println("Probably wrong version of Java                             compiler.");

      }

    }

 

    /** @dll.import("USER32") */

static native int MessageBox(int hwndOwner, String text, String title, int style);

}

                                   

Observem que a inclusão de linha está inserida nas linhas de comando do Signcode.exe, (que falaremos no próximo artigo!)

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados