Oracle Concepts

Introduction to ProvenDB for Oracle Concepts

ProvenDB for Oracle brings the strength of blockchain immutability and tamper-proofing to Oracle databases.

When data is added to or modified in a database being monitored by ProvenDB for Oracle, cryptographic signatures of the data are created. These signatures can be "signed" by your company's cryptographic key (possibly the same key that guarantees the identity of your website). These signatures are aggregated and anchored to a public Blockchain such as Bitcoin, Hedera or Ethereum.


Figure 1 ProvenDB for Oracle architecture

Once anchored to the public Blockchain, the signatures form an impeccable and irrefutable proof of the integrity and origin time of the Oracle rows. The Blockchain record – which cannot be altered by any known technology – proves the overall integrity and timestamp of items in the database, eliminating any possibility of undetected tampering or backdating.

ProvenDB for Oracle integrates with the Oracle Flashback query and Oracle Flashback Data Archive technologies. If these are enabled, ProvenDB for Oracle allows you to generate and validate proofs for historical data as well as the current contents of the database. Using ProvenDB for Oracle in conjunction with Oracle Flashback technologies, you can maintain a fully auditable, tamper-proof history of data changes with the integrity and provenance of every data item backed by immutable blockchain proofs.

Oracle Blockchain tables

Oracle 20c supports a new “Blockchain” table type. A blockchain table is an append-only table in which each new row is cryptographically dependent on a previous row. Oracle Blockchain tables serve a useful purpose, but are not truly immutable or tamper-proof. A Database Administrator could potentially “fake” a blockchain table with an apparent timestamp simply by manipulating the system clock. To prevent tampering, Oracle recommends that you periodically export hashes and sequence numbers from the database so that any attempt to change these within the database can be detected.

ProvenDB for Oracle is compatible with Oracle Blockchain tables and can be used to create “real” blockchain anchors that will detect any attempt to create a falsified blockchain ledger. Furthermore, ProvenDB for Oracle offers capabilities in advance of the Oracle Blockchain table capability – it can be used with any table types, and can be used with Oracle versions prior to 20c.