{"id":15489,"date":"2021-01-11T17:08:16","date_gmt":"2021-01-11T16:08:16","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/"},"modified":"2021-01-11T17:08:16","modified_gmt":"2021-01-11T16:08:16","slug":"oracle-21c-blockchain-tables","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/","title":{"rendered":"Oracle 21c: Blockchain Tables"},"content":{"rendered":"<p><strong>Oracle Blockchain Tables<\/strong><\/p>\n<p>With Oracle Database 20c\/21c the new feature Oracle Blockchain Tables has been introduced.<\/p>\n<p>Blockchain Tables enable Oracle Database users to create tamper-resistant data management without distributing a ledger across multiple parties.<\/p>\n<p>Database security can be improved by using Blockchain Tables to avoid user fraud and administrator fraud as well.<\/p>\n<p>One of the main characteristics of Oracle Blockchain Tables is that you can only append data. Table rows are chained using a cryptographic hashing approach.<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-46612\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg\" alt=\"\" width=\"1284\" height=\"588\" \/><\/a><\/p>\n<p>In addition, to avoid administrator or identity fraud, rows can optionally be signed with PKI (public key infrastructure) based on the user\u2019s private key.<\/p>\n<p>Use cases can be a centralized storage of compliance data, audit trail or clinical trial.<\/p>\n<p>Let\u2019s have a look how it works.<\/p>\n<p><u>Creating an Oracle Blockchain Table:<\/u><br \/>\nQuite easy, I\u2019ve used Oracle Database 20.3<\/p>\n<pre><code>\nselect version_full from v$instance;\nVERSION_FULL     \n-----------------\n20.3.0.0.0\n\nCREATE BLOCKCHAIN TABLE bank_ledger (bank VARCHAR2(128), deposit_date DATE, deposit_amount NUMBER)\n         NO DROP UNTIL 31 DAYS IDLE\n         NO DELETE LOCKED\n         HASHING USING \"SHA2_512\" VERSION \"v1\";\nError report -\nORA-05729: blockchain table cannot be created in root container\n\nselect name, pdb from v$services;\n\nalter session set container = pdb1;\n\nCREATE BLOCKCHAIN TABLE bank_ledger (bank VARCHAR2(128), deposit_date DATE, deposit_amount NUMBER)\n         NO DROP UNTIL 31 DAYS IDLE\n         NO DELETE LOCKED\n         HASHING USING \"SHA2_512\" VERSION \"v1\";\nBlockchain TABLE created.<\/code><\/pre>\n<p><u>Changing retention period on Blockchain Tables:<\/u><br \/>\nThe table was created with a retention time of \u201c31 DAYS IDLE\u201d, can we reset that value?<\/p>\n<pre><code>\nALTER TABLE bank_ledger NO DROP UNTIL 16 DAYS IDLE; \nError report - \nORA-05732: retention value cannot be lowered \n\nALTER TABLE bank_ledger NO DROP UNTIL 42 days idle; \nTable BANK_LEDGER altered.<\/code><\/pre>\n<p><u>Appending Data in Oracle Blockchain Tables:<\/u><br \/>\nThat\u2019s working fine.<\/p>\n<pre><code>\nSELECT user_name, distinguished_name, \n          UTL_RAW.LENGTH(certificate_guid) CERT_GUID_LEN, \n          DBMS_LOB.GETLENGTH(certificate) CERT_LEN \n          FROM DBA_CERTIFICATES ORDER BY user_name; \nno rows selected\n \ndesc bank_ledger \nName Null? Type \n------------------------------------ \nBANK VARCHAR2(128) \nDEPOSIT_DATE \nDATE \nDEPOSIT_AMOUNT NUMBER \n\nselect * from bank_ledger; \nno rows selected\n... \n1 row inserted. \n1 row inserted. \n1 row inserted.\n\nBANK             DEPOSIT_           DEPOSIT_AMOUNT \n-------------------------------------------------- \nUBS              01.01.20           444000000 \nCredit Suisse    02.02.20           22000000 \nVontobel         03.03.20           1000000\n<\/code><\/pre>\n<p><u>DML and DDL on Oracle Blockchain Tables:<\/u><br \/>\nLet\u2019s try to change some data.<\/p>\n<pre><code>\nupdate bank_ledger set deposit_amount=10000 where bank like 'UBS';\nError starting at line : 1 in command -\nupdate bank_ledger set deposit_amount=10000 where bank like 'UBS'\nError at Command Line : 1 Column : 8\nError report -\nSQL Error: ORA-05715: operation not allowed on the blockchain table\n\ndelete from bank_ledger where bank like 'UBS';\nError starting at line : 1 in command -\ndelete from bank_ledger where bank like 'UBS'\nError at Command Line : 1 Column : 13\nError report -\nSQL Error: ORA-05715: operation not allowed on the blockchain table\n\ndrop table bank_ledger;\nError starting at line : 1 in command -\ndrop table bank_ledger\nError report -\nORA-05723: drop blockchain table BANK_LEDGER not allowed\n<\/code><\/pre>\n<p><u>Copying data from an Oracle Blockchain Table:<\/u><br \/>\nOk, we can\u2019t change data in the original table, let\u2019s try to copy it.<\/p>\n<pre><code>\ncreate tablespace bank_data;\nTablespace BANK_DATA created.\n\nCREATE BLOCKCHAIN TABLE bad_bank_ledger (bank VARCHAR2(128), deposit_date DATE, deposit_amount NUMBER) \n         NO DROP UNTIL 31 DAYS IDLE\n         NO DELETE LOCKED\n         HASHING USING \"SHA2_512\" VERSION \"v1\"\n         tablespace bank_data;\nBlockchain TABLE created.\n\ninsert into bad_bank_ledger select * from bank_ledger;\nError starting at line : 1 in command -\ninsert into bad_bank_ledger select * from bank_ledger\nError at Command Line : 1 Column : 13\nError report -\nSQL Error: ORA-05715: operation not allowed on the blockchain table\n<\/code><\/pre>\n<p><u>Alternative actions on Oracle Blockchain Tables:<\/u><br \/>\nCan we move tablespaces or try to replace tables?<\/p>\n<pre><code>\ninsert into bad_bank_ledger values ('Vader', '09-09-2099', '999999999');\ninsert into bad_bank_ledger values ('Blofeld', '07-07-1977', '7777777');\ninsert into bad_bank_ledger values ('Lecter', '08-08-1988', '888888');\n\n1 row inserted.\n1 row inserted.\n1 row inserted.\n\nselect * from bad_bank_ledger;\nBANK                                   DEPOSIT_ DEPOSIT_AMOUNT\n----------------------------------------------- --------------\nVader                                  09.09.99      999999999\nBlofeld                                07.07.77        7777777\nLecter                                 08.08.88         888888\n\ncreate table new_bad_bank_ledger as select * from bad_bank_ledger;\nTable NEW_BAD_BANK_LEDGER created.\n\nupdate new_bad_bank_ledger set deposit_amount = 666666 where bank like 'Blofeld';\n1 row updated.\ncommit;\ncommit complete.\n\nselect * from new_bad_bank_ledger;\nBANK                                   DEPOSIT_ DEPOSIT_AMOUNT\n----------------------------------------------- --------------\nVader                                  09.09.99      999999999\nBlofeld                                07.07.77         666666\nLecter                                 08.08.88         888888\n\ndrop table bad_bank_ledger;\nError starting at line : 1 in command -\ndrop table bad_bank_ledger\nError report -\nORA-05723: drop blockchain table BAD_BANK_LEDGER not allowed\n\ndrop tablespace bank_data INCLUDING CONTENTS and datafiles;\nError starting at line : 1 in command -\ndrop tablespace bank_data INCLUDING CONTENTS and datafiles\nError report -\nORA-00604: error occurred at recursive SQL level 1\nORA-05723: drop blockchain table BAD_BANK_LEDGER not allowed\n00604. 00000 -  \"error occurred at recursive SQL level %s\"\n*Cause:    An error occurred while processing a recursive SQL statement\n           (a statement applying to internal dictionary tables).\n*Action:   If the situation described in the next error on the stack\n           can be corrected, do so; otherwise contact Oracle Support.\n<\/code><\/pre>\n<p><u>Move or Compress on Oracle Blockchain Table:<\/u><br \/>\nTable operations are forbidden in either case.<\/p>\n<pre><code>\nalter table bank_ledger move tablespace bank_data COMPRESS;\nError starting at line : 1 in command -\nalter table bank_ledger move tablespace bank_data COMPRESS\nError report -\nORA-05715: operation not allowed on the blockchain table\n\nalter table bank_ledger move tablespace bank_data;\nError starting at line : 1 in command -\nalter table bank_ledger move tablespace bank_data\nError report -\nORA-05715: operation not allowed on the blockchain table\n<\/code><\/pre>\n<p><u>Hidden Columns in Oracle Blockchain Tables:<\/u><br \/>\nEvery row is identified by hidden attributes.<\/p>\n<pre><code>\ncol table_name for a40\nset lin 999\nset pages 100\n\nSELECT * FROM user_blockchain_tables;\ndesc bank_ledger\nSELECT column_name, hidden_column FROM user_tab_cols WHERE table_name='BANK_LEDGER';\n\nTABLE_NAME                         ROW_RETENTION ROW TABLE_INACTIVITY_RETENTION HASH_ALG\n------------------------------------------------ --- -------------------------- --------\nBANK_LEDGER                                  YES                             42 SHA2_512\nBAD_BANK_LEDGER                              YES                             31 SHA2_512\n\nName           Null? Type          \n-------------- ----- ------------- \nBANK                 VARCHAR2(128) \nDEPOSIT_DATE         DATE          \nDEPOSIT_AMOUNT       NUMBER        \n\nCOLUMN_NAME                            HID\n-------------------------------------- ---\nORABCTAB_SIGNATURE$                    YES\nORABCTAB_SIGNATURE_ALG$                YES\nORABCTAB_SIGNATURE_CERT$               YES\nORABCTAB_SPARE$                        YES\nBANK                                   NO \nDEPOSIT_DATE                           NO \nDEPOSIT_AMOUNT                         NO \nORABCTAB_INST_ID$                      YES\nORABCTAB_CHAIN_ID$                     YES\nORABCTAB_SEQ_NUM$                      YES\nORABCTAB_CREATION_TIME$                YES\nORABCTAB_USER_NUMBER$                  YES\nORABCTAB_HASH$                         YES\n13 rows selected. \n\nset colinvisible on\ndesc bank_ledger\nName                                 Null? Type                        \n------------------------------------ ----- --------------------------- \nBANK                                       VARCHAR2(128)               \nDEPOSIT_DATE                               DATE                        \nDEPOSIT_AMOUNT                             NUMBER                      \nORABCTAB_SPARE$ (INVISIBLE)                RAW(2000 BYTE)              \nORABCTAB_SIGNATURE_ALG$ (INVISIBLE)        NUMBER                      \nORABCTAB_SIGNATURE$ (INVISIBLE)            RAW(2000 BYTE)              \nORABCTAB_HASH$ (INVISIBLE)                 RAW(2000 BYTE)              \nORABCTAB_SIGNATURE_CERT$ (INVISIBLE)       RAW(16 BYTE)                \nORABCTAB_CHAIN_ID$ (INVISIBLE)             NUMBER                      \nORABCTAB_SEQ_NUM$ (INVISIBLE)              NUMBER                      \nORABCTAB_CREATION_TIME$ (INVISIBLE)        TIMESTAMP(6) WITH TIME ZONE \nORABCTAB_USER_NUMBER$ (INVISIBLE)          NUMBER                      \nORABCTAB_INST_ID$ (INVISIBLE)              NUMBER    \n\nset lin 999\nset pages 100\ncol bank for a40\n\nselect bank, deposit_date, orabctab_creation_time$ from bank_ledger;\nBANK                                     DEPOSIT_ ORABCTAB_CREATION_TIME$        \n---------------------------------------- -------- -------------------------------\nUBS                                      01.01.20 25.09.20 13:17:03.946615000 GMT\nCredit Suisse                            02.02.20 25.09.20 13:17:03.951545000 GMT\nVontobel                                 03.03.20 25.09.20 13:17:03.952064000 GMT\n<\/code><\/pre>\n<p>We see that it is not possible to modify an Oracle Blockchain Table on database level. To avoid manipulations from users with root access there are several possibilities to protect data, e.g. by transferring cryptographic hashes and user signatures systematically to external vaults which would enable you to recover data against the most disaster scenarios.<\/p>\n<p><u>Resources:<\/u><\/p>\n<p><a href=\"https:\/\/www.oracle.com\/blockchain\/#blockchain-platform-tab\">https:\/\/www.oracle.com\/blockchain\/#blockchain-platform-tab<\/a><\/p>\n<p><a href=\"https:\/\/docs.oracle.com\/en\/cloud\/paas\/blockchain-cloud\/user\/create-rich-history-database.html#GUID-266145A1-EF3A-4917-B174-C50D4DB1A0E3\">https:\/\/docs.oracle.com\/en\/cloud\/paas\/blockchain-cloud\/user\/create-rich-history-database.html#GUID-266145A1-EF3A-4917-B174-C50D4DB1A0E3<\/a><\/p>\n<p><a href=\"https:\/\/docs.oracle.com\/en\/database\/oracle\/oracle-database\/21\/nfcon\/details-oracle-blockchain-table-282449857.html\">https:\/\/docs.oracle.com\/en\/database\/oracle\/oracle-database\/21\/nfcon\/details-oracle-blockchain-table-282449857.html<\/a><\/p>\n<p><a href=\"https:\/\/docs.oracle.com\/en\/database\/oracle\/oracle-database\/21\/admin\/managing-tables.html#GUID-43470B0C-DE4A-4640-9278-B066901C3926\">https:\/\/docs.oracle.com\/en\/database\/oracle\/oracle-database\/21\/admin\/managing-tables.html#GUID-43470B0C-DE4A-4640-9278-B066901C3926<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Oracle Blockchain Tables With Oracle Database 20c\/21c the new feature Oracle Blockchain Tables has been introduced. Blockchain Tables enable Oracle Database users to create tamper-resistant data management without distributing a ledger across multiple parties. Database security can be improved by using Blockchain Tables to avoid user fraud and administrator fraud as well. One of the [&hellip;]<\/p>\n","protected":false},"author":27,"featured_media":15490,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229,198,525,59],"tags":[2224,2225,220,2226,1672,96,458,137,286,223,2227,25,219],"type_dbi":[],"class_list":["post-15489","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-database-administration-monitoring","category-database-management","category-enterprise-content-management","category-oracle","tag-blockchain","tag-blockchain-table","tag-cdb","tag-distributed-ledger","tag-new-features","tag-oracle","tag-oracle-20c","tag-oracle-21c","tag-oracle-openworld","tag-pluggable-databases","tag-rich-history-database","tag-security","tag-upgrade"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Oracle 21c: Blockchain Tables - dbi Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Oracle 21c: Blockchain Tables\" \/>\n<meta property=\"og:description\" content=\"Oracle Blockchain Tables With Oracle Database 20c\/21c the new feature Oracle Blockchain Tables has been introduced. Blockchain Tables enable Oracle Database users to create tamper-resistant data management without distributing a ledger across multiple parties. Database security can be improved by using Blockchain Tables to avoid user fraud and administrator fraud as well. One of the [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-01-11T16:08:16+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1284\" \/>\n\t<meta property=\"og:image:height\" content=\"588\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Oracle Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Oracle Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/\"},\"author\":{\"name\":\"Oracle Team\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"headline\":\"Oracle 21c: Blockchain Tables\",\"datePublished\":\"2021-01-11T16:08:16+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/\"},\"wordCount\":366,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg\",\"keywords\":[\"blockchain\",\"Blockchain Table\",\"CDB\",\"Distributed Ledger\",\"New Features\",\"Oracle\",\"Oracle 20c\",\"Oracle 21C\",\"Oracle OpenWorld\",\"Pluggable Databases\",\"Rich History Database\",\"Security\",\"Upgrade\"],\"articleSection\":[\"Database Administration &amp; Monitoring\",\"Database management\",\"Enterprise content management\",\"Oracle\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/\",\"name\":\"Oracle 21c: Blockchain Tables - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg\",\"datePublished\":\"2021-01-11T16:08:16+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg\",\"width\":1284,\"height\":588},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Oracle 21c: Blockchain Tables\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\",\"name\":\"Oracle Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"caption\":\"Oracle Team\"},\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Oracle 21c: Blockchain Tables - dbi Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/","og_locale":"en_US","og_type":"article","og_title":"Oracle 21c: Blockchain Tables","og_description":"Oracle Blockchain Tables With Oracle Database 20c\/21c the new feature Oracle Blockchain Tables has been introduced. Blockchain Tables enable Oracle Database users to create tamper-resistant data management without distributing a ledger across multiple parties. Database security can be improved by using Blockchain Tables to avoid user fraud and administrator fraud as well. One of the [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/","og_site_name":"dbi Blog","article_published_time":"2021-01-11T16:08:16+00:00","og_image":[{"width":1284,"height":588,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg","type":"image\/jpeg"}],"author":"Oracle Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Oracle Team","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/"},"author":{"name":"Oracle Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"headline":"Oracle 21c: Blockchain Tables","datePublished":"2021-01-11T16:08:16+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/"},"wordCount":366,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg","keywords":["blockchain","Blockchain Table","CDB","Distributed Ledger","New Features","Oracle","Oracle 20c","Oracle 21C","Oracle OpenWorld","Pluggable Databases","Rich History Database","Security","Upgrade"],"articleSection":["Database Administration &amp; Monitoring","Database management","Enterprise content management","Oracle"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/","url":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/","name":"Oracle 21c: Blockchain Tables - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg","datePublished":"2021-01-11T16:08:16+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blockchain.jpg","width":1284,"height":588},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/oracle-21c-blockchain-tables\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Oracle 21c: Blockchain Tables"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee","name":"Oracle Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","caption":"Oracle Team"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/15489","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=15489"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/15489\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/15490"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=15489"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=15489"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=15489"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=15489"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}