Devart.Data.Oracle.DirectUtils Advanced Security EncryptionType or ChecksumType

Discussion of open issues, suggestions and bugs regarding ADO.NET provider for Oracle
Post Reply
romanFleischer
Posts: 18
Joined: Wed 02 Jun 2010 16:28

Devart.Data.Oracle.DirectUtils Advanced Security EncryptionType or ChecksumType

Post by romanFleischer » Mon 13 Mar 2017 13:07

Hi,

we have trouble to connect our ORACLE12C in direct mode, although we are using the newest version of dotConnect (9.2.220.0).
The settings on our database server are:
SQLNET.ENCRYPTION_TYPES_SERVER = (AES256)
SQLNET.ENCRYPTION_SERVER = REQUIRED

SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER = (SHA256)
SQLNET.CRYPTO_CHECKSUM_SERVER = REQUIRED

But when we try to connect, we get the following error:
ORA-12656: Cryptographic checksum mismatch
[OracleException (0x80004005): ORA-12656: Cryptographic checksum mismatch]
Devart.Data.Oracle.as.c() +632
Devart.Data.Oracle.as.a() +85
Devart.Data.Oracle.as.a(Byte[] A_0, Int32 A_1, Int32 A_2) +322
Devart.Data.Oracle.as.h() +54
Devart.Data.Oracle.d3.a() +24
Devart.Data.Oracle.dr.a(cl A_0, p A_1) +581
Devart.Data.Oracle.OracleInternalConnection..ctor(cl connectionOptions, OracleInternalConnection proxyConnection) +542
Devart.Data.Oracle.ay.a(af A_0, Object A_1, DbConnectionBase A_2) +114
Devart.Common.DbConnectionFactory.a(DbConnectionPool A_0, af A_1, DbConnectionBase A_2) +324
Devart.Common.DbConnectionPool.a(DbConnectionBase A_0) +45
Devart.Common.DbConnectionPool.GetObject(DbConnectionBase owningConnection) +1079
Devart.Common.DbConnectionFactory.b(DbConnectionBase A_0) +207
Devart.Common.DbConnectionClosed.Open(DbConnectionBase outerConnection) +119
Devart.Common.DbConnectionBase.Open() +257
Devart.Data.Oracle.OracleConnection.Open() +947
Devart.Data.Oracle.Entity.aw.a(DbConnection A_0, OracleServerType& A_1, Nullable`1& A_2) +152
Devart.Data.Oracle.Entity.aw.b(DbConnection A_0) +53
Devart.Data.Oracle.Entity.OracleEntityProviderServices.GetDbProviderManifestToken(DbConnection connection) +36
System.Data.Entity.Core.Common.DbProviderServices.GetProviderManifestToken(DbConnection connection) +87

[ProviderIncompatibleException: The provider did not return a ProviderManifestToken string.]
System.Data.Entity.Core.Common.DbProviderServices.GetProviderManifestToken(DbConnection connection) +271
System.Data.Entity.Utilities.DbProviderServicesExtensions.GetProviderManifestTokenChecked(DbProviderServices providerServices, DbConnection connection) +33

Is there a possibility to configure the checksum to use, or is a default checksum used for connection?
How can we configure the used checksum and encryption type?

Thanks
Roman

Shalex
Site Admin
Posts: 9543
Joined: Thu 14 Aug 2008 12:44

Re: Devart.Data.Oracle.DirectUtils Advanced Security EncryptionType or ChecksumType

Post by Shalex » Fri 17 Mar 2017 16:17

We cannot reproduce the issue at the moment. Please specify:

1) the exact version (x.x.x.x), capacity (x86 or x64), platform (Linux or Windows) of your Oracle server

2) is the "Use FIPS-compliant algorithms for encryption" option enabled on your workstation? You can check this via HKLM\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy\Enabled registry key

3) send us a small test project with the corresponding DDL/DML script for reproducing

romanFleischer
Posts: 18
Joined: Wed 02 Jun 2010 16:28

Re: Devart.Data.Oracle.DirectUtils Advanced Security EncryptionType or ChecksumType

Post by romanFleischer » Tue 21 Mar 2017 12:55

Hi,

the registry key FIPSAlgorithmPolicy is not enabled on our workstation. After enabling this key, we get another Exception (InvalidOperationException).

Our oracle database is running on a Red Hat Enterprise Linux 6.8 OS
Oracle Version: 12.1.0.2.0
Oracle Patches: 23177536;Database PSU 12.1.0.2.160719, Oracle JavaVM Component (JUL2016)
23144544;DATABASE BUNDLE PATCH: 12.1.0.2.160719 (23144544)
Architecture (OS/Database): x86_64

The error occurs on every simple select statement and on every table.
I will try to create a small project with our used components and will send it to you within the next days.

Thanks
Roman

Shalex
Site Admin
Posts: 9543
Joined: Thu 14 Aug 2008 12:44

Re: Devart.Data.Oracle.DirectUtils Advanced Security EncryptionType or ChecksumType

Post by Shalex » Tue 28 Mar 2017 17:13

romanFleischer wrote:the registry key FIPSAlgorithmPolicy is not enabled on our workstation. After enabling this key, we get another Exception (InvalidOperationException).
1. Could you tell us the full stack trace of the error in this case?
romanFleischer wrote:The error occurs on every simple select statement and on every table.
I will try to create a small project with our used components and will send it to you within the next days.
2. So execution of conn.Open() passed successfully but the error was thrown by cmd.ExecuteReader(), is this correct? If possible, send us a small test project with the corresponding DDL/DML script for reproducing.

3. Please specify here (or send us) a full content of sqlnet.ora on your Oracle server.

4. Are you connecting to CDB or PDB instance of your Oracle 12c?

Post Reply