Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8479029
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 10, 20262026-06-10T18:54:43+00:00 2026-06-10T18:54:43+00:00

When you use the Oracle JDBC client library to make an Oracle connection, is

  • 0

When you use the Oracle JDBC client library to make an Oracle connection, is the password or the security-handshake encrypted by default? (Want to know if there is a risk that the password can be sniffed over the wire when making a connection using the Oracle JDBC client library)

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-10T18:54:45+00:00Added an answer on June 10, 2026 at 6:54 pm

    The password is always encrypted when in transit over the network.

    That is not to say that it is impervious to attack. If an attacker can obtain the hash of a user’s password and they can monitor network traffic between a legitimate client and the database, then it is possible to obtain the plain-text password.

    For the curious, here is a summary of the authentication process across various versions of the Oracle database software. The steps dealing with the transit of the encrypted password are in bold. It is not entirely intuitive which version of the authentication protocol is being used by the JDBC driver because it doesn’t always match its advertised version. This is because the client can negotiate which protocol it wishes to use. For example, the 11g JDBC driver may not necessarily use the 11g authentication protocol when connecting to an 11g database (it may fall back to the 10g authentication protocol). I forget which drivers use which protocols.

    Authentication protocol in Oracle Database 8

    1. The client requests a server session key for a particular user.
    2. The server generates a server session key.
    3. The server encrypts the server session key using the requested user’s password hash as the secret key.
    4. The server transmits the encrypted server session key to the client.
    5. The client decrypts the encrypted server session key using the user’s password hash as the secret key.
    6. The client encrypts the user’s password using the server session key as the secret key. (proprietary algorithm based on DES)
    7. The client transmits the encrypted password to the server.
    8. The server decrypts the encrypted password using its server session key as the secret key.
    9. The server computes the hash of the decrypted password.
    10. If the computed password hash (from step 9) matches the copy stored on the server, then the user has provided the correct password.

    Authentication protocol in Oracle Database 9i

    1. The client requests a server session key for a particular user.
    2. The server generates a server session key.
    3. The server encrypts the server session key using the requested user’s password hash as the secret key.
    4. The server transmits the encrypted server session key to the client.
    5. The client decrypts the encrypted server session key using the user’s password hash as the secret key.
    6. The client encrypts the user’s password using the server session key as the secret key. (proprietary algorithm based on DES)
    7. The client transmits the encrypted password to the server.
    8. The server decrypts the encrypted password using its server session key as the secret key.
    9. The server computes the hash of the decrypted password.
    10. If the computed password hash (from step 9) matches the copy stored on the server, then the user has provided the correct password.

    Authentication protocol in Oracle Database 10g

    1. The client requests a session key from the server, specifying which user it wishes to connect as.
    2. The server generates a server session key.
    3. The server encrypts the server session key using the requested user’s password hash as the secret key.
    4. The server transmits the encrypted server session key to the client.
    5. The client decrypts the encrypted server session key using the requested user’s password hash as the secret key.
    6. The client generates a client session key.
    7. The client combines the client session key with the server session key.
    8. The client salts the user’s password.
    9. The client encrypts the user’s salted password using the combined session keys (from step 7) as its secret key. (AES-128)
    10. The client encrypts the client session key using the user’s password hash as the secret key.
    11. The client transmits the encrypted client session key and the encrypted, salted user password to the server.
    12. The server decrypts the encrypted client session key using the requested user’s password hash.
    13. The server combines the client session key with its server session key.
    14. The server decrypts the encrypted, salted password using the combined session keys (from step 13) as the secret key.
    15. The server un-salts the salted password.
    16. The server hashes the decrypted password.
    17. The server compares the computed password hash (from step 16) with the stored password hash. If they are equal, the user has provided the correct password.

    Authentication protocol in Oracle Database 11g

    1. The client requests a session key from the server, specifying which user it wishes to connect as.
    2. The server generates a server session key.
    3. The server generates verifier data.
    4. The server encrypts the server session key using the requested user’s password hash as the secret key.
    5. The server transmits the encrypted server session key ("AUTH_SESSKEY") and the verifier data ("AUTH_VFR_DATA") to the client.
    6. The client hashes the user’s password using the verifier data as the salt.
    7. The client decrypts the encrypted server session key using the user’s password hash as the secret key.
    8. The client generates a client session key.
    9. The client combines the client session key with the server session key.
    10. The client salts the user’s password.
    11. The client encrypts the user’s salted password using the combined session keys (from step 9) as its secret key. (AES-192)
    12. The client encrypts the client session key using the user’s password hash as the secret key.
    13. The client transmits the encrypted client session key and the encrypted, salted user password to the server.
    14. The server decrypts the encrypted client session key using the requested user’s password hash.
    15. The server combines the client session key with its server session key.
    16. The server decrypts the encrypted, salted password using the combined session keys (from step 15) as the secret key.
    17. The server un-salts the salted password.
    18. The server hashes the decrypted password.
    19. The server compares the computed password hash (from step 18) with the stored password hash. If they are equal, the user has provided the correct password.
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

When using an Oracle JDBC connection pool, is there a way to control how
I use the oracle.jdbc.pool.OracleDataSource for connection pooling. I would like the pool to check
I'm able to use Oracle SQLDeveloper to make a connection to an Oracle database.
I want to use the Oracle REGEXP_REPLACE to remove some dots from a String.
In my application I use connection to Oracle, when connection lost and I try
I use weblogic 10. Its provide an Oracle JDBC driver 10.2.0.2 (in the server/lib
i have an spring web application (on glassfish server) that use JDBC connection pool.
Is it possible to use a JDBC connection in a VB.net application? I am
Can anyone please tell me to use which jdbc driver to connect with oracle
Reasons for java.sql.SQLException: Closed Connection from Oracle?? java.sql.SQLException: Closed Connection at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.