public final class com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider extends com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionKeyStoreProvider
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider
super_class: com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionKeyStoreProvider
{
private static final java.util.logging.Logger windowsCertificateStoreLogger;
descriptor: Ljava/util/logging/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static boolean isWindows;
descriptor: Z
flags: (0x0008) ACC_STATIC
java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0000)
static final java.lang.String localMachineDirectory;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "LocalMachine"
static final java.lang.String currentUserDirectory;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "CurrentUser"
static final java.lang.String myCertificateStore;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "My"
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc "com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider"
invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
1: putstatic com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.windowsCertificateStoreLogger:Ljava/util/logging/Logger;
2: ldc "os.name"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
ldc "windows"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 5
3: iconst_1
putstatic com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.isWindows:Z
4: goto 6
5: StackMap locals:
StackMap stack:
iconst_0
putstatic com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.isWindows:Z
6: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionKeyStoreProvider.<init>:()V
1: aload 0
ldc "MSSQL_CERTIFICATE_STORE"
putfield com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.name:Ljava/lang/String;
2: getstatic com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.windowsCertificateStoreLogger:Ljava/util/logging/Logger;
ldc Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
3: ldc "SQLServerColumnEncryptionCertificateStoreProvider"
4: invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;)V
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
public void setName(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.name:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
0 2 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.name:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
public byte[] encryptColumnEncryptionKey(java.lang.String, java.lang.String, byte[]);
descriptor: (Ljava/lang/String;Ljava/lang/String;[B)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new com.microsoft.sqlserver.jdbc.SQLServerException
dup
aconst_null
1: ldc "R_InvalidWindowsCertificateStoreEncryption"
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
aconst_null
iconst_0
iconst_0
2: invokespecial com.microsoft.sqlserver.jdbc.SQLServerException.<init>:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;IZ)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
0 3 1 masterKeyPath Ljava/lang/String;
0 3 2 encryptionAlgorithm Ljava/lang/String;
0 3 3 plainTextColumnEncryptionKey [B
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
masterKeyPath
encryptionAlgorithm
plainTextColumnEncryptionKey
private byte[] decryptColumnEncryptionKeyWindows(java.lang.String, java.lang.String, byte[]);
descriptor: (Ljava/lang/String;Ljava/lang/String;[B)[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
1: aload 3
2: invokestatic com.microsoft.sqlserver.jdbc.AuthenticationJNI.DecryptColumnEncryptionKey:(Ljava/lang/String;Ljava/lang/String;[B)[B
3: areturn
4: StackMap locals:
StackMap stack: com.microsoft.sqlserver.jdbc.DLLException
astore 4
start local 4 5: aload 4
invokevirtual com.microsoft.sqlserver.jdbc.DLLException.GetErrCode:()I
aload 4
invokevirtual com.microsoft.sqlserver.jdbc.DLLException.GetParam1:()Ljava/lang/String;
aload 4
invokevirtual com.microsoft.sqlserver.jdbc.DLLException.GetParam2:()Ljava/lang/String;
aload 4
invokevirtual com.microsoft.sqlserver.jdbc.DLLException.GetParam3:()Ljava/lang/String;
invokestatic com.microsoft.sqlserver.jdbc.DLLException.buildException:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
6: aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
0 7 1 masterKeyPath Ljava/lang/String;
0 7 2 encryptionAlgorithm Ljava/lang/String;
0 7 3 encryptedColumnEncryptionKey [B
5 7 4 e Lcom/microsoft/sqlserver/jdbc/DLLException;
Exception table:
from to target type
0 3 4 Class com.microsoft.sqlserver.jdbc.DLLException
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
masterKeyPath
encryptionAlgorithm
encryptedColumnEncryptionKey
public byte[] decryptColumnEncryptionKey(java.lang.String, java.lang.String, byte[]);
descriptor: (Ljava/lang/String;Ljava/lang/String;[B)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.windowsCertificateStoreLogger:Ljava/util/logging/Logger;
ldc Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
1: ldc "decryptColumnEncryptionKey"
ldc "Decrypting Column Encryption Key."
2: invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
3: getstatic com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.isWindows:Z
ifeq 8
4: aload 0
aload 1
aload 2
5: aload 3
6: invokevirtual com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.decryptColumnEncryptionKeyWindows:(Ljava/lang/String;Ljava/lang/String;[B)[B
astore 4
start local 4 7: goto 9
end local 4 8: StackMap locals:
StackMap stack:
new com.microsoft.sqlserver.jdbc.SQLServerException
dup
ldc "R_notSupported"
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
aconst_null
invokespecial com.microsoft.sqlserver.jdbc.SQLServerException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
start local 4 9: StackMap locals: byte[]
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.SQLServerColumnEncryptionCertificateStoreProvider.windowsCertificateStoreLogger:Ljava/util/logging/Logger;
ldc Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
10: ldc "decryptColumnEncryptionKey"
ldc "Finished decrypting Column Encryption Key."
11: invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
12: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
0 13 1 masterKeyPath Ljava/lang/String;
0 13 2 encryptionAlgorithm Ljava/lang/String;
0 13 3 encryptedColumnEncryptionKey [B
7 8 4 plainCek [B
9 13 4 plainCek [B
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
masterKeyPath
encryptionAlgorithm
encryptedColumnEncryptionKey
public boolean verifyColumnMasterKeyMetadata(java.lang.String, boolean, byte[]);
descriptor: (Ljava/lang/String;Z[B)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
iload 2
aload 3
invokestatic com.microsoft.sqlserver.jdbc.AuthenticationJNI.VerifyColumnMasterKeyMetadata:(Ljava/lang/String;Z[B)Z
1: ireturn
2: StackMap locals:
StackMap stack: com.microsoft.sqlserver.jdbc.DLLException
astore 4
start local 4 3: aload 4
invokevirtual com.microsoft.sqlserver.jdbc.DLLException.GetErrCode:()I
aload 4
invokevirtual com.microsoft.sqlserver.jdbc.DLLException.GetParam1:()Ljava/lang/String;
aload 4
invokevirtual com.microsoft.sqlserver.jdbc.DLLException.GetParam2:()Ljava/lang/String;
aload 4
invokevirtual com.microsoft.sqlserver.jdbc.DLLException.GetParam3:()Ljava/lang/String;
invokestatic com.microsoft.sqlserver.jdbc.DLLException.buildException:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
4: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/microsoft/sqlserver/jdbc/SQLServerColumnEncryptionCertificateStoreProvider;
0 5 1 masterKeyPath Ljava/lang/String;
0 5 2 allowEnclaveComputations Z
0 5 3 signature [B
3 5 4 e Lcom/microsoft/sqlserver/jdbc/DLLException;
Exception table:
from to target type
0 1 2 Class com.microsoft.sqlserver.jdbc.DLLException
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
masterKeyPath
allowEnclaveComputations
signature
}
SourceFile: "SQLServerColumnEncryptionCertificateStoreProvider.java"