31
Velneo vDevelop
Scripts
Lenguajes
JavaScript
VSSLCertificate
Esta clase representa un certificado lo que nos permite obtener información acerca de éste.
La función correspondiente a la clase VSSLInfo nos permite acceder a los certificados de la conexión segura TLS/SSL establecida con un componente de Velneo a un servidor de Velneo:
1
theApp.sslInfo().peerCertificateChain( nCertificado );
Copied!
Pero también es posible crear un objeto de esta clase usando un certificado en disco. Requiere importarla previamente a su uso:
importClass ( "VSSLCertificate" );

Indice de funciones

Constructor

VSSLCertificate VSSLCertificate()

Generales

String digest( Number nAlgorithm )
Date expiryDate()
Boolean isBlacklisted()
Boolean isNull()
VSSLKey privateKey()
VSSLKey publicKey()
String issuerInfo( String szAtributo )
String serialNumber()
Array subjectInfo( String szAtributo )
VByteArray toDer() → ByteArray con el contenido en formato DER
VByteArray toPem() → ByteArray con el contenido en formato PEM
String toText()
String version()

De importación

bool importPkcs12( VByteArray dataCertificate, String password )
bool importFromFilePkcs12( String fileName, String password )

Documentación de funciones

Constructor

VSSLCertificate VSSLCertificate()

Requiere importar previamente la clase:
importClass ( "VSSLCertificate" );

Funciones generales

String digest( Number nAlgorithm )

Devuelve un resumen o hash del certificado con el algoritmo que indiquemos como parámetro (por defecto MD5).
Parámetros:
  • Algoritmo: ver enums de algoritmos en VApp (AlgoritmoHash).

Date effectiveDate()

Devuelve la fecha a partir de la que el certificado es válido.

Date expiryDate()

Devuelve la fecha a partir de la que el certificado deja de ser válido.

Boolean isBlacklisted()

Devuelve true si el certificado está en la lista negra en caso contrario devolverá false.

Boolean isNull()

Devuelve true si el certificado es nulo, es decir, un certificado sin contenido, en caso contrario, devuelve false.

VSSLKey privateKey()

Retorna un objeto VSSLKey la clave privada del certificado (Sólo disponible en caso de haber importado el certificado).
Esta función no está disponibles mi en macOS ni en iOS.

VSSLKey publicKey()

Retorna un objeto VSSLKey la clave pública del certificado.
Esta función no está disponibles mi en macOS ni en iOS.

String issuerInfo( String szAtributo )

Devuelve un dato del certificado correspondiente a la información de generación, en función del parámetro indicado.
Parámetros:
  • szAtributo: cadena que indica el dato correspondiente al certificado que queremos obtener. Ver siguiente lista:
"O": nombre de la organización.
"CN": nombre común. Normalmente es el nombre del host.
"L": localidad.
"OU": nombre de la unidad organizacional.
"C": país.
"ST": estado o provincia.
"emailAdress": correo electrónico.

String serialNumber()

Número de serie del certificado en formato hexadecimal.

Array subjectInfo( String szAtributo )

Devuelve un array de cadenas con la información añadida al atributo que indicamos como parámetro.
Parámetros:
  • szAtributo: cadena que indica el dato correspondiente al certificado que queremos obtener. Ver siguiente lista:
"O": nombre de la organización.
"CN": nombre común. Normalmente es el nombre del host.
"L": localidad.
"OU": nombre de la unidad organizacional.
"C": país.
"ST": estado o provincia.
"emailAdress": correo electrónico.

VByteArray toDer()

Devuelve un objeto VByteArray con el contenido de la clave en formato DER.
Esta función no está disponibles mi en macOS ni en iOS.

VByteArray toPem()

Devuelve un objeto VByteArray con el contenido de la clave en formato PEM.
Esta función no está disponibles mi en macOS ni en iOS.

String toText()

Devuelve el certificado en una representación en texto legible.

String version()

Devuelve la versión del certificado.

Funciones de importación

bool importPkcs12( VByteArray dataCertificate, String password )

Importa un certificado desde un fichero P12.
Parámetros:
  • VByteArray dataCertificate: objeto de tipo VByteArray con el contenido del fichero del certificado.
  • String password: cadena con la contraseña del certificado.
Esta función no está disponibles mi en macOS ni en iOS.

bool importFromFilePkcs12( String fileName, String password )

Importa un certificado desde un fichero P12.
Parámetros:
  • String fileName: senda del fichero del certificado.
  • String password: cadena con la contraseña del certificado.
Esta función no está disponibles mi en macOS ni en iOS.

Ejemplo

Lectura de certificados en disco y obtención de su claves pública y privada

1
//Asumiendo que el certificado está en la caché local del cliente
2
3
var sendaCertificadoPFXActivo = theApp.clientCachePath() + "Certificado_activo.pfx";
4
var claveCertificadoActivo = "123456";
5
6
//Modos de importar
7
//Leems el fichero en VByteArray
8
var certificadoVB = new VSSLCertificate();
9
var contenido = new VByteArray();
10
var fp = new VFile( sendaCertificadoPFXActivo );
11
if ( fp.open( VFile.OpenModeReadOnly ) ){
12
contenido = fp.readAll();
13
fp.close();
14
}
15
16
certificadoVB.importPkcs12( contenido , claveCertificadoActivo )
17
18
//Leyendo directamente de disco
19
certificadoVB.importFromFilePkcs12( sendaCertificadoPFXActivo , claveCertificadoActivo )
20
21
//Utilizando los metodos
22
certificadoVB.toDer(); // retorna VByteArray no legible
23
certificadoVB.toPem().toLatin1String(); // retorna VByteArray legible
24
25
var clavePublica = certificadoVB.publicKey(); //retorna objeto VSSLKey
26
var clavePrivada = certificadoVB.privateKey(); //retorna objeto VSSLKey
27
28
clavePublica.algorithm();
29
clavePublica.toDer(); // retorna VByteArray no legible
30
clavePublica.toPem().toLatin1String(); // retorna VByteArray legible
31
clavePublica.type() // retorna el tipo de la clave
32
clavePublica.algorithm() // retorna el algoritmo de la clave
33
clavePublica.length() // Retorna el tamaño de la clave
Copied!
Última actualización 1mo ago