SlideShare a Scribd company logo
1 of 41
Download to read offline
Oracle Cloud ウェビナー
ファンデーションシリーズ
ブロックチェーンから⽣まれた技術で、
データの耐改ざん性を⾼めるメリットとは︖
〜コンバージド・データベースの世界〜
2021年4⽉8⽇
⽇本オラクル株式会社
テクノロジー事業戦略統括
ビジネス推進本部 ⼤橋雅⼈
ソリューションアーキテクト本部 中村岳
1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介
2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース
3. Oracle Blockchain Tableのデモ
4. Oracle Blockchain Tableを使ってみよう
本⽇お話しする内容
Copyright © 2021, Oracle and/or its affiliates
2
1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介
2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース
3. Oracle Blockchain Tableのデモ
4. Oracle Blockchain Tableを使ってみよう
本⽇お話しする内容
Copyright © 2021, Oracle and/or its affiliates
3
シングル・データ・プラットフォームがデータドリブン実践の鍵
Copyright © 2021, Oracle and/or its affiliates
4
従来 理想
• 散在するデータ、複雑なデータ配置
• 複雑なデータ活⽤、価値提供の鈍化
• 多⼤なセキュリティリスク、運⽤保守コスト
• 集約され、⼀貫性のあるデータ
• 市場変化に追従する、鮮度のよいデータ活⽤
• ⼀元化されたセキュリティ、シンプルな運⽤保守
データタイプ、機能別のデータサイロ 集約された、シングル・データ・プラットフォーム
=コンバージドデータベース
基幹システム SaaS 新規アプリ 基幹システム SaaS 新規アプリ
オラクルが提供するシングル・データ・プラットフォーム
Copyright © 2021, Oracle and/or its affiliates
5
構造化
データ
JSON
キー
バリュー
地理情報 グラフ ファイル
あらゆるデータタイプとワークロード
に1つのデータベースで対応
ブロック
チェーン
JSON
ハイパー
スケール
機械学習
地理情報 グラフ
永続化
メモリ
インメモリ
アナリティクス
マルチ
テナント
Cloud
Integration
インメモリ
IoT
オンプレミス
Oracle
Autonomous
Database
Oracle
Exadata Cloud
Oracle
Exadata Cloud
@Customer
コンバージド機能
シングル・データ・プラットフォーム
=コンバージドデータベース
企業内の様々なデータ
最新 Oracle Database 21c 主要な新機能
Copyright © 2021, Oracle and/or its affiliates
6
JavaScript
ブロックチェーン表
• 複雑なSQL表現をカプセル化するシンプ
ルな⽅法
• スキャンは最⼤10倍速
アップデートは最⼤4倍速
• 暗号化でチェインされた⾏で構成される
変更不可能なSQL表
• Oracle Database内部でJavaScript
のコードを実⾏
ネーティブ JSON 型
SQLマクロ
開発者やアーキテクトに
AutoML
• 新規/既存のアプリケーションの
パフォーマンスを⾼速化
• 機械学習モデルの構築を簡易化
• インメモリ列ストアの⾃⼰管理
インメモリ・ベクター結合
グラフ分析
インメモリの拡張
新たなMLアルゴリズム
• 異常検出、回帰分析、分類分析 を強化
分析やデータ・サイエンティストに データベース管理者に
永続メモリ
• PDB毎のスタンバイ
OSレベルの PDB 分離化
• 新シャーディングアドバイザーと
スキーマ解析ツール
• より⾼速に、しかもアプリケーションの変
更なしで
• アプリケーションのダウンタイムなしに
セキュリティコンプライアンスを確保
シャーディングの強化
段階的パスワード切替
マルチテナントの強化
ブロックチェーン/DLTと改ざん不能型データベース︓それぞれの⽤途
対応する
主要な
ニーズ
例となる
ユースケース
§ 複数の企業間で⽔平に確実かつリアルタイムに
データを持ち寄り共有したい
§ 企業をまたいだワークフローを信頼できるかたち
で実⾏したい
§ 原材料〜製造〜輸送〜⼩売までの⼀貫した
データ持ち寄りによるサプライチェーンの全体最
適化
§ スマートコントラクトによる取引約定〜決済まで
の企業間ワークフローの
⾃動化、効率化、迅速化
§ 台帳上での価値交換
分権/分散
ブロックチェーン/DLT
§ 法律上確実な保存が要求される契約情報や会
計、財務データの保持
§ 重要なアクセス情報や操作履歴などの
システムログを監査証跡として保存
§ データを外部犯⾏、内部犯⾏両⾯から保護し、
セキュリティ確保
§ 保存して以降、誰にも変更・削除できないよう
データを保持したい
§ 監督機関、監査法⼈などに対し、改ざんされて
いないことを証明したい
中央集権
改ざん不能型データベース
Copyright © 2021, Oracle and/or its affiliates
7
• データの不変性、耐改ざん性
• データベースの持ち主であっても、
⼀旦書き込まれたデータを更新、削除できないようにする仕組みを備えている
• 検証可能性と監査性、証跡性
• 更新、削除されていないことを検証できる仕組みを備えている
• 検証可能であることにより改ざんされていないことの監査も容易に
• 中央集権型(NOT分散/分権)
• 複数組織で所有や管理を分散できるようにはなっていない
• (「分散データベース」は複数組織で分散できるわけではない)
改ざん不能型データベースとは︖
Copyright © 2021, Oracle and/or its affiliates
8
耐改ざん性を追加、監査性を強化した特別なデータベース・テーブル
データベース上のレコードに耐改ざん性と監査性を付与
• 追記オンリーの不変なデータ…テーブル所有者も特権ユーザも改ざん不能
• ハッシュチェーンで⾏をリンク…整合性の検証、改ざんされていないことの証明が可能
Oracle Databaseの⼀部として⾼度で多彩な機能とともに容易に利⽤可能
• 他のテーブルと組み合わせたトランザクション
• 容易にデータ統合、多様なBIツールを⽤いての分析
• データベーストリガー、PL/SQLプログラムを利⽤したロジック表現
• レプリケーション、バックアップなどの耐障害性/⾼可⽤性機能、
アクセスコントロールなどのセキュリティ保護機能も併⽤可能
※19cではRU19.10アップデートおよび個別パッチ32431413を適⽤することで利⽤可能に。
データベースの基本機能として含まれており追加ライセンスは不要(SE2でも利⽤可能)。
Blockchain Table︓Oracle Database 21c&19cで利⽤可能(※)
Copyright © 2021, Oracle and/or its affiliates
9
追記オンリーのテーブルで、イミュータブル/不変なデータを保持
• ⾏のDELETEの制約(前述の通りn⽇〜無制限の保持期間を設定可能)
• データ量を削減したい場合、適切な保持期間を設定しておいたうえで、
保持期間を過ぎた⾏を整合性を検証した上で(必要に応じて外部にアーカイブしつつ)削除する
• 保持期間を過ぎた⾏の⼀括削除⽤PL/SQLパッケージファンクション
DBMS_BLOCKCHAIN_TABLE.delete_expired_rows()
• ⾏のUPDATEとMERGEが不可
• テーブルのDROPの制約(前述の通りn⽇〜無制限の保護期間を設定可能)
• テーブルDROPは⾏のINSERT前なら常に可能(誤ってテーブル作成した場合すぐなら消せる)
• テーブルのTRUNCATEが不可
• カラムの追加、削除および名前変更が不可
• データ型の変更や⼀部の⻑さ、精度の変更、NULL制約変更も不可
• Blockchain Tableの通常のテーブルへの変換、およびその逆の変換は不可
• パーティションのDROPが不可
Blockchain Tableの特性①︓データの削除、変更を制約
Copyright © 2021, Oracle and/or its affiliates
10
ハッシュ値によるデータの検証可能性により、テーブルの中で完結した監査性を提供
Blockchain Tableの特性②︓ハッシュチェーン
• ⾏のINSERT時、⾃動的に
{⾏データ+前の⾏のハッシュ値}
に対して計算したハッシュ値を隠しカラムに保持
• ある⾏のハッシュ値はその前の⾏のハッシュ値に依存し、その前
の⾏のハッシュ値はその前の前の⾏のハッシュ値に依存し…
→ハッシュチェーンのつながりで改ざんが検知可能に
• ハッシュチェーンと⾏データを突合しながら辿っていくことで、整合
性(INSERT以降、⾏データが変更、削除されていないこと)
の検証が可能
• 検証⽤PL/SQLパッケージファンクション
DBMS_BLOCKCHAIN_TABLE.verify_rows()
ID User Value
1 Tom 500
2 Carol 176
3 Steve 500
4 John 176
5 Mike 332
6 Sarah 632
7 Eve 25
8 Prisha 850
Hash
ADSJS
%SHS
SH@1
DHD3
*EGG
AH11
LIO$
SHS4
Copyright © 2021, Oracle and/or its affiliates
11
ブロックチェーン/DLT基盤や専⽤データベースと⽐較して……
利⽤のハードルが低い
• ⼀般的なOracle Databaseのスキルで⼗分使いこなせるため、学習コストが低い
• 通常のテーブルとの使い勝⼿の差異が⼩さく、アプリケーション透過的な利⽤が可能
• 通常テーブルからの乗り換えに必要な改修はゼロ〜最⼩限
アプリケーション側の負担が⼩さい
• ふつうアプリケーションはイミュータブル(変更/削除しない)データのみを扱うわけではない
• イミュータブルデータ専⽤のデータベースを使う場合、
アプリケーションは少なくともふたつのデータベースを扱わなくてはならない
• 同⼀DB上で通常のテーブルとBlockchain Tableを扱えるためトランザクション、整合性担保が容易
データ分析、データ統合が容易
• Blockchain Table上でそのまま集計、分析が可能
• 他テーブル上のデータとのJOINやVIEW、多様なデータ統合ツールやBIツールも利⽤可能
処理性能
• Oracle Databaseの様々な処理性能向上⼿段を適⽤可能(例︓Exadataを利⽤)
Oracle Databaseの1テーブルとして使えることのメリット
Copyright © 2021, Oracle and/or its affiliates
12
アプリケーションの負担を減らし、分析のための余分な⼿間も削減
単⼀⽤途データベース vs Oracle Database
App
BI
DIツール
イミュータブル
データ専⽤DB
(⼜はブロックチェーン/DLT)
通常データ⽤
DB
トランザクション
トランザクション
複製
複製
分析
分析⽤
DB
整合性担保は
アプリの責任
単⼀⽤途データベースの場合 Oracle Databaseの場合
App
BI
分析のための
データ統合に
余分な⼿間
トランザクション
Oracle
Database
分析
DB機能で
整合性担保
同⼀DB上で
容易に分析
Copyright © 2021, Oracle and/or its affiliates
13
• セキュリティ担保や監査上、証跡として利⽤するログ
(例︓⼊退室ログ、アクセスログ)に耐改ざん性を付与
• 保存先を変えるだけで活⽤可能
• ログファイル→Blockchain Table
• 通常のテーブル→Blockchain Table
• アプリケーション側の変更はゼロ〜最⼩限
• 元々データベースに保存している場合は保存先の
テーブルをBlockchain Tableとして作り直すだけで
OK
• 参照、検索、分析も通常のテーブルにあるレコードの
場合と同様の使い勝⼿
• コンプライアンスに関わる様々な業務データの保存にも
活⽤可能(例︓会計や財務、契約などの情報)
• ブロックチェーン台帳と違い、⼤きなデータサイズ、
複雑なデータモデルにも対応可
• JSON形式で業務データを保存
• あとからのカラムの追加削除が不能なため、JSON
形式を上⼿に使うのが実践的
• (21cバージョン以降では)21cで追加された
JSON形式カラムを利⽤可能
• CLOB、BLOB形式でドキュメントファイルや画像ファイ
ルを保存
• 紙原本保存の慣⾏を不要に
Blockchain Tableを活⽤する際の実装イメージ
重要なログの保存先をBC Tableに変更 様々な業務データ、ドキュメントを保存
Copyright © 2021, Oracle and/or its affiliates
14
• すぐに、簡単に使える
• 耐改ざん性と監査性の課題をシンプルに、最低限のコストだけで解決
• アプリケーションの改修はゼロ〜最⼩限、学習コストも極⼩
• ピンポイントソリューション
• 他の箇所に影響を与えることなく、データベースの⼀部分、アプリケーションの⼀部分のみにセキュリティ
向上を適⽤可能
• 参照、分析、データ統合、BIツール等は通常テーブルと同様にそのまま使える
• どこでも利⽤可能
• クラウドでもオンプレミスでも利⽤可能
• 追加ライセンス不要︓データベースのすべてのエディションで利⽤可能
Blockchain Tableまとめ
Copyright © 2021, Oracle and/or its affiliates
15
DB管理者職務分掌
/アクセスパス制限
(Database Vault)
内部犯⾏や悪意ある操作によるデータ抽出、破壊、改竄を保護
知財・機密情報、個⼈情報を守るデータベースセキュリティソリューション
ユーザー
データベース
管理者
イベント
DF11233 U*1
$5Ha1qui %H1
HSKQ112 A14
FASqw34 £$1
DF@£!1ah HH!
データの暗号化
(Transparent
Data Encryption)
⾏列レベルのアクセス制御
(Virtual Private DB,
Real Application Security)
不正検知・証跡管理
(Audit Vault and
Database Firewall)
通信暗号化
(標準機能)
レポート
アラート
ポリシー
開発
データの伏字化
(Data Masking
and Subsetting)
多要素認証
(Identity CS)
改ざん対策
(Blockchain Table)
セキュリティアセスメント、監査・
検知の可視化・⾃動化
(Data Safe CS)
Copyright © 2021, Oracle and/or its affiliates
16
テーブル作成時に”Immutable”キーワードを追加するだけでインサー
トオンリーの不変なテーブルを作成
• リレーショナルデータ、JSONやLOBドキュメントも格納可能
• 帳簿データだけでなく参照情報もテーブルに保管
通常のテーブルと同様に利⽤が可能だが、以下の操作には制約:
• ⾏のUPDATEとDELETE
• テーブル定義の変更
• Immutable Tableの通常のテーブルへの変換、およびその逆
• データベースディクショナリでテーブルメタデータの修正
アプリケーションに変更を加えることなくImmutable Tableを利⽤可能
近⽇追加予定︓Oracle Immutable Table
CREATE IMMUTABLE TABLE
trade_ledger (…);
ID User Value
1 Tom 500
2 Carol 176
3 Wang 500
4 Eve 25
TRADE LEDGER
データベース19.11, 21.3で利⽤可能
Copyright © 2021, Oracle and/or its affiliates
17
1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介
2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース
3. Oracle Blockchain Tableのデモ
4. Oracle Blockchain Tableを使ってみよう
本⽇お話しする内容
Copyright © 2021, Oracle and/or its affiliates
18
情報の真正性の担保=確実な保管と監査、証明を⼤幅にシンプル化
Blockchain Tableを⽤いることで…
情報の
確実な保管
監査と証明
様々な情報を収集し、突き合わせて整合性を確認
複雑で⼿間のかかる監査プロセス
データベースに情報を保存しつつ、
耐改ざん性のために紙原本や別媒体での記録
→記録、保管に余分なコスト
Blockchain Tableに保存し、
データ活⽤の利便性と耐改ざん性を両⽴
Blockchain Tableで完結した検証可能性により
監査、証明が容易
Copyright © 2021, Oracle and/or its affiliates
19
Blockchain Table: 主なユースケース
Copyright © 2021, Oracle and/or its affiliates
20
内外からの攻撃に対してデータを保護
・勘定系システム、決済系システムなどのトランザクションログ
・証券や各種アセットの所有権を管理する原簿
セキュリティ上重要な記録の保存
・アプリケーションのアクセスログや監査ログ
・⾼セキュリティエリアへの⼊退室記録
種々の認定、証明のエビデンス、法律上確実な保存が要求される情報
・従業員の出退勤記録、企業の会計、財務のデータ
・⾒積、契約、請求や⽀払のやり取りに係るドキュメント
・原産地証明、検査証、品質認証、RE100証明、CO2排出量証明など
Blockchain Tableのご利⽤事例
GDPR関連データへのアクセスなど、
銀⾏の法的に重要な業務について
のレポートおよび監査ログを
Blockchain Tableに保存
管理ワークフロー(申請、確認、
データ暗号化)の法的な記録を⾼
い監査性で保持できるように
コーポレート・ガバナンスに係るワークフ
ローの作業をBlockchain Tableに記
録して追跡可能にすることで、信頼性、
不変性を担保し、また、証書を発⾏
ドキュメントへのデジタル印の⽣成を可
能に︓
• ドキュメントの初版
• ドキュメントのレビュー
• 承認ワークフロー 等
匿名化された(ある距離内/持続時間
以上の)接触の記録をBlockchain
Tableに保管
アプリユーザーがCOVID19陽性となった
場合には、X-RINGのボタンを押すことで、
濃厚接触した可能性があるすべてのユー
ザーに警告通知を送ることができる
スマートコンプライアンス
法律×テクノロジー 接触追跡ソリューション
Copyright © 2021, Oracle and/or its affiliates
21
耐改ざん性を向上
⽂章の耐改ざんソリューション
Copyright © 2021, Oracle and/or its affiliates
22
A部⾨ B部⾨ C部⾨
• ファイルの中⾝および操作履歴をBlockchain Table
で保持することで、⽂章の真正性および監査性を向上
作成 更新 承認
監査チェック
Blockchain Tableは
Oracle Databaseのテーブルなので、
• ドキュメントファイルそのものを登録可能
• ドキュメントの中⾝の⽂章も検索可能
• 改ざんされていないことの証明や監査が容易
耐改ざん性と、信憑性を向上
品質管理の検査履歴の耐改ざんおよび外部証明ソリューション
検査装置
2.データの分析、検索
1.検査結果ファイル、ファイルのハッシュ、検査値を、
耐改ざん性の⾼いBlockchain Tableに登録
4. 真正性を証明するために、品質証明書
の情報とハッシュ値をブロックチェーン上で共有
5.品質証明書を取引先に開⽰
取引先
3.品質証明書を作成、
Blockchain Tableに登録
6.品質証明書の真正性を
ハッシュ値で確認
Copyright © 2021, Oracle and/or its affiliates
23
脱炭素への取り組み案
24
CO2排出量DB
可視化
予測
アクション
Copyright © 2021, Oracle and/or its affiliates |
CO2排出量DB
CO2排出量、品質検査/品質認証、RE100証明、原産地証明
などへの展開可能
1.⾃社の稼働実績に基づいた
CO2排出量を算出、集約
2.集約されたCO2排出量を可視化、
詳細な改善アクションへ
4.LCAでの排出量正当性のため、
他社企業とのデータ開⽰
3.CO2排出量の正当性証明のため
取引先、投資家、監査機関へ共有
⾃社 他社
取引先、投資家、
監査機関
1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介
2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース
3. Oracle Blockchain Tableのデモ
4. Oracle Blockchain Tableを使ってみよう
本⽇お話しする内容
Copyright © 2021, Oracle and/or its affiliates
25
Blockchain Tableと通常のテーブルでの基本的な操作の⽐較で耐改ざん性を体験
このシナリオでは…
• 通常のテーブルとBlockchain Tableを作成し、品質情報に⾒⽴てたデータを格納する
• 両者に対してデータのUPDATE/更新(→改ざん)、DELETE/削除(→隠蔽)の操作結果を⽐較する
• Blockchain Table独特の隠しカラムに⾃動的に保存されるデータの有⽤性を理解する
サンプルSQLスクリプトシナリオ︓品質情報の保存
Copyright © 2021 Oracle and/or its affiliates
26
QUALITY
製品の品質検査の
結果データを保存する
通常のテーブル
QUALITY_BCT
製品の品質検査の
結果データを保存する
Blockchain Table
・UPDATE
・DELETE
・UPDATE
・DELETE
Copyright © 2021 Oracle and/or its affiliates
27
-- ※※※まずは通常のテーブルを作成し操作を実験※※※
-- QUALITYという名前の品質検査結果を記録する通常のテーブルを作成
-- 製品ID、検査結果スコア、検査実施⽇時
CREATE TABLE quality (
product_id VARCHAR2(256) NOT NULL,
test_score NUMBER NOT NULL,
inspection_date DATE NOT NULL
);
-- QUALITYテーブルに品質検査結果データをINSERT
INSERT INTO quality VALUES ('aaa111', 88, TO_DATE('2021/03/02 10:12:34', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality VALUES ('bbb222', 89, TO_DATE('2021/03/02 11:11:22', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality VALUES ('ccc333', 64, TO_DATE('2021/03/02 12:18:44', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality VALUES ('ddd444', 92, TO_DATE('2021/03/02 13:13:21', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality VALUES ('fff666', 89, TO_DATE('2021/03/02 14:22:04', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality VALUES ('ggg777', 93, TO_DATE('2021/03/02 15:23:12', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality VALUES ('hhh888', 94, TO_DATE('2021/03/02 16:12:58', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality VALUES ('iii999', 90, TO_DATE('2021/03/02 17:18:07', 'YYYY-MM-DD HH24:MI:SS'));
-- QUALITYテーブルの品質検査結果データを全件表⽰
SELECT * FROM quality ORDER BY product_id;
-- 検査結果スコアが89点(ギリギリ不合格)のものを90点(ギリギリ合格)に更新…品質情報の改ざん
-- 成功する
UPDATE quality
SET test_score = 90
WHERE test_score = '89';
-- 検査結果スコアが⼀定以上低かった不良品のデータを削除…隠ぺい
-- 成功する
DELETE FROM quality
WHERE test_score < 70;
-- 検査漏れしていた製品の結果を過去⽇時で新規登録…ねつ造
-- 成功する
INSERT INTO quality VALUES ('eee555', 90, TO_DATE('2021/03/02 14:00:45', 'YYYY-MM-DD HH24:MI:SS'));
-- QUALITYテーブルの品質検査結果データを全件表⽰
SELECT * FROM quality ORDER BY product_id;
-- ※※※次にBlockchain Tableを作成し操作を実験※※※
-- QUALITY_BCTという名前の品質検査結果を記録するBlockchain Tableを作成
CREATE BLOCKCHAIN TABLE quality_bct (
product_id VARCHAR2(256) NOT NULL,
test_score NUMBER NOT NULL,
inspection_date DATE NOT NULL
)
NO DROP UNTIL 0 DAYS IDLE
NO DELETE
HASHING USING "SHA2_512" VERSION "v1"
;
-- QUALITY_BCTテーブルに品質検査結果データをINSERT
INSERT INTO quality_bct VALUES ('aaa111', 88, TO_DATE('2021/03/02 10:12:34', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality_bct VALUES ('bbb222', 89, TO_DATE('2021/03/02 11:11:22', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality_bct VALUES ('ccc333', 64, TO_DATE('2021/03/02 12:18:44', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality_bct VALUES ('ddd444', 92, TO_DATE('2021/03/02 13:13:21', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality_bct VALUES ('fff666', 89, TO_DATE('2021/03/02 14:22:04', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality_bct VALUES ('ggg777', 93, TO_DATE('2021/03/02 15:23:12', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality_bct VALUES ('hhh888', 94, TO_DATE('2021/03/02 16:12:58', 'YYYY-MM-DD HH24:MI:SS'));
INSERT INTO quality_bct VALUES ('iii999', 90, TO_DATE('2021/03/02 17:18:07', 'YYYY-MM-DD HH24:MI:SS'));
-- QUALITY_BCTテーブルの品質検査結果データを全件表⽰
SELECT * FROM quality_bct ORDER BY product_id;
-- 検査結果スコアが89点(ギリギリ不合格)のものを90点(ギリギリ合格)に更新…品質情報の改ざん
-- 失敗する(Blockchain Tableの制約)
UPDATE quality_bct
SET test_score = 90
WHERE test_score = '89';
-- 検査結果スコアが⼀定以上低かった不良品のデータを削除…隠ぺい
-- 失敗する(Blockchain Tableの制約)
DELETE FROM quality_bct
WHERE test_score < 70;
-- 検査漏れしていた製品の結果を過去⽇時で新規登録…ねつ造
-- 成功する…ただし隠しカラムに⾃動で記録されるタイムスタンプと齟齬が出るため識別可能
INSERT INTO quality_bct VALUES ('eee555', 90, TO_DATE('2021/03/02 14:00:45', 'YYYY-MM-DD HH24:MI:SS'));
-- ⼀部の隠しカラム含めBlockchain Tableのデータを表⽰
-- Blockchain Tableでは、⾃動的にINSERT時のタイムスタンプが登録されている
SELECT product_id, test_score, inspection_date, ORABCTAB_CREATION_TIME$ "bc_date", ORABCTAB_HASH$ "hash"
FROM quality_bct
ORDER BY product_id;
-- ※※※Blockchain Tableのその他の操作※※※
-- 隠しカラムの表⽰をONにしてからテーブル定義を表⽰
SET COLINVISIBLE ON;
DESC quality_bct;
-- Blockchain Tableの⾏の整合性を検証
DECLARE
verified_rows NUMBER;
BEGIN
DBMS_BLOCKCHAIN_TABLE.VERIFY_ROWS('admin','quality_bct', NULL, NULL, NULL, NULL, verified_rows);
DBMS_OUTPUT.PUT_LINE('Number of rows verified = '|| verified_rows);
END;
-- Blockchain Tableに対してTRUNCATE(テーブル上のデータ全削除)を試す
-- テーブル作成時にNO DELETEを指定している場合は常に失敗する
TRUNCATE TABLE quality_bct;
-- Blockchain Tableに対してDROP(テーブルごと削除)を試す
-- テーブル作成時のNO DROP UNTIL n DAYS IDLEの指定およびテーブル上の最新データの経過⽇数次第で可不可が分かれる
-- NO DROP UNTIL 0 DAYS IDLEで作成している場合は常に成功する
DROP TABLE quality_bct;
サンプルSQLスクリプト 〜コピペしてご利⽤ください〜
1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介
2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース
3. Oracle Blockchain Tableのデモ
4. Oracle Blockchain Tableを使ってみよう
本⽇お話しする内容
Copyright © 2021, Oracle and/or its affiliates
28
Oracle Cloudでは以下いずれかのサービスのOracleデータベース上で
Blockchain Tableの利⽤が可能です︓
• Autonomous Database
• フルマネージド型のデータベース
• ワークロードごとに以下のタイプを選択︓
• Autonomous Data Warehouse︓分析ワークロード、データウェアハウス
• Autonomous Transaction Processing︓オンライントランザクション処理
• Database Cloud Service
• カスタマーマネージド型のデータベース
Oracle Cloud Free TierでBlockchain Tableを試⽤する⽅法
Copyright © 2021, Oracle and/or its affiliates
29
Oracle Cloud Free Tier: Free TrialとAlways Free
Oracle Cloudにサインナップいただくと、両⽅が利⽤可能です
• https://www.oracle.com/jp/cloud/free/
Free Trial
30 300 +
Always Free
Copyright © 2021, Oracle and/or its affiliates
30
• データベースバージョンの制約︓現状、21cバージョンを選択して構築したAutonomous Databaseでのみ
Blockchain Tableの利⽤が可能です
• サービスの制約︓現状、21cバージョンを選択して構築するには以下の制約があります
• ①Always Free枠で構築するAutonomous Databaseに限定
• ②Ashburn、Phoenixなどのいくつかのリージョンに限定
• 上記の制約を満たすためには、Free Trial環境としてクラウドテナントをサインアップする際に選択するホーム
リージョン(Home Region)を②に含まれるリージョンにしておく必要があります
• 理由︓Always Free枠でのサービスの利⽤はホームリージョン内に限られる、また、サインアップ以降
ホームリージョンの変更ができないため
• 以上から、Ashburnをホームリージョンとして指定することを推奨します
Autonomous DatabaseでのBlockchain Table試⽤(2021年3⽉時点)
Copyright © 2021, Oracle and/or its affiliates
31
• データベースバージョンの制約︓以下いずれかでBlockchain Tableを利⽤可能です
• 21cバージョンを選択して構築したDatabase Cloud Service ←おすすめ
• 19cバージョンを選択して構築し、RU19.10アップデートおよび個別パッチ32431413を適⽤した
Database Cloud Service
• サービスの制約︓Database Cloud ServiceはAlways Free枠で提供されていないため、Free Trialクレ
ジット範囲内での使⽤が必要です
• Database Cloud Serviceを試⽤する場合は、リージョンの制約はありません
Database Cloud ServiceでのBlockchain Table試⽤(2021年3⽉時点)
Copyright © 2021, Oracle and/or its affiliates
32
無償トライアルで利⽤可能なワークショップ
お客さまのクラウド環境ですぐに利⽤できるワークショップを多数
掲載。画⾯キャプチャおよび実⾏コマンドを記載、実環境にて
順を追って操作⽅法を学習することが可能。
英語ですが、ブラウザの翻訳機能を使って⽇本語で利⽤可能。
https://apexapps.oracle.com/pls/apex/dbpm/r/livelabs/home
Oracle LiveLabs
Copyright © 2021, Oracle and/or its affiliates
33
無償トライアルで利⽤可能なワークショップ:Oracle blockchain tablesのチュートリアル
Oracle blockchain tablesのチュートリアル
英語ですが、ブラウザの翻訳機能を使って⽇本語で利⽤可能。
https://apexapps.oracle.com/pls/apex/dbpm/r/livelabs/view-workshop?wid=746&session=13873808601344
Oracle LiveLabs
Copyright © 2021, Oracle and/or its affiliates
34
• 【公式ブログ】Blockchain TableによるOracle Databaseのコンバージドデータベースの拡張
• Blockchain Tableの技術的な特⻑およびユースケースの紹介記事
https://blogs.oracle.com/oracle4engineer/blockchain-table
• 【公式ドキュメント】 Oracle Database 21cドキュメント
• 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/nfcon/details-oracle-blockchain-table-
282449857.html
• 【イベントスライド】 Oracle Databaseの新機能 Blockchain Tableのご紹介
• https://speakerdeck.com/gakumura/oracle-databasefalsexin-ji-neng-blockchain-tablefalsegoshao-jie
• 【イベントスライド】 2021/3/17 BlockchainGIG Exhibition
• イベントページ、動画
https://oracle-code-tokyo-dev.connpass.com/event/204286/
• 改ざん不能データベース登場の背景とOracle Blockchain Platformのご紹介
https://speakerdeck.com/gakumura/gai-zanbu-neng-detabesudeng-chang-falsebei-jing-to-oracle-blockchain-
platformfalsegoshao-jie
• Blockchain GIG Exhibition Blockchain Tableセッション資料
https://www.slideshare.net/oracle4engineer/20210317-blockchain-gig-exhibition-blockchain-table
Blockchain Tableについての参考Webサイト
Copyright © 2021, Oracle and/or its affiliates
35
• 【ご参考ブログ】Oracle CloudでOracle Database 20c(プレビュー)のBlockchain Tableを使ってみた話
• Blockchain Tableを作成し、基本的な操作をテスト
https://miyacle.com/2020/07/oracle-cloud%E3%81%A7oracle-database-
20c%E3%83%97%E3%83%AC%E3%83%93%E3%83%A5%E3%83%BC%E3%81%AEblockchain-
table%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%81%9F%E8%A9%B1/
• 【ご参考ブログ】Oracle CloudのAlways FreeのATPのAPEXを使って作った我が家の体重管理アプリを、Blockchain
Tablesで改ざんできないようにした
• Blockchain Tableを作成し、APEXで操作
https://qiita.com/maato/items/4a43841132074aa35d81
• 【ご参考ブログ】21cのブロックチェーン 表を使ってみる
• Blockchain TableにネイティブJSON型(21cで追加)でデータを保存し、APEXから表⽰
https://apexugj.blogspot.com/2020/12/blockchain-table-with-json.html
• 【ご参考ブログ】 Blockchain TableにドキュメントのPDFファイルを保存してOracle Textで全⽂検索してみた
• https://gakumura.hatenablog.com/entry/how-to-store-files-into-blob-and-use-oracletext-on-blockchain-
tables
Blockchain Tableについての参考Webサイト
Copyright © 2021, Oracle and/or its affiliates
36
Oracle Cloud Infrastructure (PaaS/IaaS): 無償トライアル
Copyright © 2021, Oracle and/or its affiliates
37
無償トライアルのお申し込みサイト
• https://www.oracle.com/jp/cloud/free/
無償トライアルについて
• $300(約35,000円)のクレジットを無償取得できます
- トライアル期間中は優遇レート(=IaaS料⾦のみ)が適⽤されるため、多様な
サービスをお試しいただけます
- 30⽇間有効、以降も有償環境として継続使⽤可能
• 多くのサービスが利⽤可能
- 対象サービス https://www.oracle.com/jp/cloud/free/
• 主な利⽤⽤途
- クラウドへの移⾏・性能テスト
- 利⽤を検討するサービスの機能評価
• 利⽤可能なユーザ
- 新規ユーザ
Oracle Cloud Infrastructure 主要情報⼀覧
Copyright © 2021, Oracle and/or its affiliates
38
1
2
Oracleアーキテクチャ・センター
https://docs.oracle.com/ja/solutions/
クラウド環境の検討や実装に役⽴つように設計されたリファレンス・アーキテクチャとソリューショ
ン・プレイブックのカタログを多数掲載。ダウンロード、カスタマイズ、およびデプロイできるコードま
たはスクリプトも含む。
リファレンス・アーキテクチャ、ソリューション・プレイブックを概説した下記ブログもご参照ください。
https://blogs.oracle.com/oracle4engineer/move-workload-to-oraclecloud
3
OCIサービスアップデート
https://blogs.oracle.com/oracle4engineer/4サービス・アップデート
毎⽉公開するOCIのサービス・アップデート情報をスライドで分かり易く説明。各サービスの詳
細なアップデート情報は、各サービスのドキュメントや下記「OCI活⽤資料集」をご覧ください。
4
5
OCIお客様活⽤事例
https://blogs.oracle.com/oracle4engineer/oracle-cloud-platformpaasiaas
OCIを活⽤したお客様の事例のご紹介。データベースはもちろんのこと、アナリティックス、セキュ
リティ、システム管理、コンテンツ管理、ブロックチェーン、チャットボットなど様々なサービスのお
客様事例をご紹介します。
OCI活⽤資料集
https://oracle-japan.github.io/ocidocs/
OCIを使ってみたい! という⽅のための技術ドキュメント集。 OCIのサービス別技術資料をはじ
め、PPTスライドを中⼼とした公開ドキュメントや、セミナーで使⽤した資料をアップロードしてい
ます。
6 OCIセミナー情報
https://blogs.oracle.com/oracle4engineer/column_cloud_seminar
今後開催予定のウェビナー(含むハンズオントレーニング)についてご案内します。
ほぼ毎週 2回+ハンズオンを様々なテーマで開催中︕
オラクルエンジニア通信
https://bloegs.oracle.com/oracle4engineer/
技術資料、コラム、マニュアルなど、OCIに関するその他の情報は、「オラクルエンジニア通信」
よりお届けしています。
チュートリアル: OCI を使ってみよう
https://oracle-japan.github.io/ocitutorials/
OCIを使ってみよう! という⼈のためのチュートリアル集。各項ごとに画⾯ショットなどを交えなが
らステップ・バイ・ステップで作業を進めて、OCIの機能についてひととおり学習することができるよ
うになっています。
7
OCIドキュメント
各サービスのマニュアル。
https://docs.cloud.oracle.com/ja-jp/iaas/Content/home.htm
8
Oracle Code Night
https://oracle-code-tokyo-dev.connpass.com/
オラクルのテクノロジーだけに限定しない、Developer(開発者)のDeveloper(開発
者)によるDeveloper(開発者)のための開発者向けコミュニティ Meetup セミナーのこ
と。
ほぼ毎週 様々なテーマで開催中︕
9
Oracle Cloud Infrastructure 主要情報をまとめたポータル(以下1­9を含む)
https://blogs.oracle.com/oracle4engineer/column_oci_links
•
•
• :
• #1: , INDETAIL,
• #2: , ,
• #3: G.U. Labs, TIS
• #4: IBM , NTT
• #5: , LayerX
• #6: ,
• #7: , NTT , LayerX
• #8: ,
•
• CONNPASS Oracle Code Night
Blockchain GIGの紹介
Copyright © 2021 Oracle and/or its affiliates
39
私たちのミッションは、⼈々が新たな⽅法で
データを理解し、本質を⾒極め、無限の可能性
を解き放てるよう⽀援していくことです。
Our mission is to help people see data in new ways,
discover insights, unlock endless possibilities.
ご視聴
ありがとうございました
Copyright © 2021, Oracle and/or its affiliates
41

More Related Content

More from オラクルエンジニア通信

Oracle Cloud Infrastructure:2022年9月度サービス・アップデート
Oracle Cloud Infrastructure:2022年9月度サービス・アップデートOracle Cloud Infrastructure:2022年9月度サービス・アップデート
Oracle Cloud Infrastructure:2022年9月度サービス・アップデートオラクルエンジニア通信
 
Oracle Cloud Infrastructure:2022年8月度サービス・アップデート
Oracle Cloud Infrastructure:2022年8月度サービス・アップデートOracle Cloud Infrastructure:2022年8月度サービス・アップデート
Oracle Cloud Infrastructure:2022年8月度サービス・アップデートオラクルエンジニア通信
 
Oracle Cloud Infrastructure:2022年7月度サービス・アップデート
Oracle Cloud Infrastructure:2022年7月度サービス・アップデートOracle Cloud Infrastructure:2022年7月度サービス・アップデート
Oracle Cloud Infrastructure:2022年7月度サービス・アップデートオラクルエンジニア通信
 
Oracle Cloud Infrastructure:2022年6月度サービス・アップデート
Oracle Cloud Infrastructure:2022年6月度サービス・アップデートOracle Cloud Infrastructure:2022年6月度サービス・アップデート
Oracle Cloud Infrastructure:2022年6月度サービス・アップデートオラクルエンジニア通信
 
Oracle Cloud Infrastructure:2022年5月度サービス・アップデート
Oracle Cloud Infrastructure:2022年5月度サービス・アップデートOracle Cloud Infrastructure:2022年5月度サービス・アップデート
Oracle Cloud Infrastructure:2022年5月度サービス・アップデートオラクルエンジニア通信
 
Oracle Cloud Infrastructure:2022年4月度サービス・アップデート
Oracle Cloud Infrastructure:2022年4月度サービス・アップデートOracle Cloud Infrastructure:2022年4月度サービス・アップデート
Oracle Cloud Infrastructure:2022年4月度サービス・アップデートオラクルエンジニア通信
 
Oracle Cloud Infrastructure データベース・クラウド:各バージョンのサポート期間 (2022年4月版)
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間 (2022年4月版)Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間 (2022年4月版)
Oracle Cloud Infrastructure データベース・クラウド:各バージョンのサポート期間 (2022年4月版)オラクルエンジニア通信
 
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会オラクルエンジニア通信
 
Oracle Cloud Infrastructure:2022年3月度サービス・アップデート
Oracle Cloud Infrastructure:2022年3月度サービス・アップデートOracle Cloud Infrastructure:2022年3月度サービス・アップデート
Oracle Cloud Infrastructure:2022年3月度サービス・アップデートオラクルエンジニア通信
 
Oracle Cloud Infrastructure:2022年2月度サービス・アップデート
Oracle Cloud Infrastructure:2022年2月度サービス・アップデートOracle Cloud Infrastructure:2022年2月度サービス・アップデート
Oracle Cloud Infrastructure:2022年2月度サービス・アップデートオラクルエンジニア通信
 
Oracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデートOracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデートオラクルエンジニア通信
 
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)オラクルエンジニア通信
 
Oracle Cloud Infrastructure:2021年12月度サービス・アップデート
Oracle Cloud Infrastructure:2021年12月度サービス・アップデートOracle Cloud Infrastructure:2021年12月度サービス・アップデート
Oracle Cloud Infrastructure:2021年12月度サービス・アップデートオラクルエンジニア通信
 
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]オラクルエンジニア通信
 
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)オラクルエンジニア通信
 
Oracle Cloud Infrastructure:2021年11月度サービス・アップデート
Oracle Cloud Infrastructure:2021年11月度サービス・アップデートOracle Cloud Infrastructure:2021年11月度サービス・アップデート
Oracle Cloud Infrastructure:2021年11月度サービス・アップデートオラクルエンジニア通信
 
Oracle Cloud Infrastructure:2021年10月度サービス・アップデート
Oracle Cloud Infrastructure:2021年10月度サービス・アップデートOracle Cloud Infrastructure:2021年10月度サービス・アップデート
Oracle Cloud Infrastructure:2021年10月度サービス・アップデートオラクルエンジニア通信
 
ゼロトラスト、この1年でお客様の4つの気づき ~内部不正、ランサムウェアとの戦い方~ (Oracle Cloudウェビナーシリーズ: 2021年10月6日)
ゼロトラスト、この1年でお客様の4つの気づき ~内部不正、ランサムウェアとの戦い方~ (Oracle Cloudウェビナーシリーズ: 2021年10月6日)ゼロトラスト、この1年でお客様の4つの気づき ~内部不正、ランサムウェアとの戦い方~ (Oracle Cloudウェビナーシリーズ: 2021年10月6日)
ゼロトラスト、この1年でお客様の4つの気づき ~内部不正、ランサムウェアとの戦い方~ (Oracle Cloudウェビナーシリーズ: 2021年10月6日)オラクルエンジニア通信
 

More from オラクルエンジニア通信 (20)

Oracle Cloud Infrastructure:2022年9月度サービス・アップデート
Oracle Cloud Infrastructure:2022年9月度サービス・アップデートOracle Cloud Infrastructure:2022年9月度サービス・アップデート
Oracle Cloud Infrastructure:2022年9月度サービス・アップデート
 
Oracle Cloud Infrastructure:2022年8月度サービス・アップデート
Oracle Cloud Infrastructure:2022年8月度サービス・アップデートOracle Cloud Infrastructure:2022年8月度サービス・アップデート
Oracle Cloud Infrastructure:2022年8月度サービス・アップデート
 
Oracle Cloud Infrastructure:2022年7月度サービス・アップデート
Oracle Cloud Infrastructure:2022年7月度サービス・アップデートOracle Cloud Infrastructure:2022年7月度サービス・アップデート
Oracle Cloud Infrastructure:2022年7月度サービス・アップデート
 
Oracle Cloud Infrastructure:2022年6月度サービス・アップデート
Oracle Cloud Infrastructure:2022年6月度サービス・アップデートOracle Cloud Infrastructure:2022年6月度サービス・アップデート
Oracle Cloud Infrastructure:2022年6月度サービス・アップデート
 
Oracle Cloud Infrastructure:2022年5月度サービス・アップデート
Oracle Cloud Infrastructure:2022年5月度サービス・アップデートOracle Cloud Infrastructure:2022年5月度サービス・アップデート
Oracle Cloud Infrastructure:2022年5月度サービス・アップデート
 
Oracle Cloud Infrastructure:2022年4月度サービス・アップデート
Oracle Cloud Infrastructure:2022年4月度サービス・アップデートOracle Cloud Infrastructure:2022年4月度サービス・アップデート
Oracle Cloud Infrastructure:2022年4月度サービス・アップデート
 
Oracle Cloud Infrastructure データベース・クラウド:各バージョンのサポート期間 (2022年4月版)
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間 (2022年4月版)Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間 (2022年4月版)
Oracle Cloud Infrastructure データベース・クラウド:各バージョンのサポート期間 (2022年4月版)
 
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
 
Oracle Cloud Infrastructure:2022年3月度サービス・アップデート
Oracle Cloud Infrastructure:2022年3月度サービス・アップデートOracle Cloud Infrastructure:2022年3月度サービス・アップデート
Oracle Cloud Infrastructure:2022年3月度サービス・アップデート
 
Oracle Cloud Infrastructure:2022年2月度サービス・アップデート
Oracle Cloud Infrastructure:2022年2月度サービス・アップデートOracle Cloud Infrastructure:2022年2月度サービス・アップデート
Oracle Cloud Infrastructure:2022年2月度サービス・アップデート
 
Oracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデートOracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデート
 
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
 
Oracle Cloud Infrastructure:2021年12月度サービス・アップデート
Oracle Cloud Infrastructure:2021年12月度サービス・アップデートOracle Cloud Infrastructure:2021年12月度サービス・アップデート
Oracle Cloud Infrastructure:2021年12月度サービス・アップデート
 
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
 
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
 
Oracle Cloud Infrastructure:2021年11月度サービス・アップデート
Oracle Cloud Infrastructure:2021年11月度サービス・アップデートOracle Cloud Infrastructure:2021年11月度サービス・アップデート
Oracle Cloud Infrastructure:2021年11月度サービス・アップデート
 
第18回しゃちほこオラクル俱楽部
第18回しゃちほこオラクル俱楽部第18回しゃちほこオラクル俱楽部
第18回しゃちほこオラクル俱楽部
 
第17回しゃちほこオラクル俱楽部
第17回しゃちほこオラクル俱楽部第17回しゃちほこオラクル俱楽部
第17回しゃちほこオラクル俱楽部
 
Oracle Cloud Infrastructure:2021年10月度サービス・アップデート
Oracle Cloud Infrastructure:2021年10月度サービス・アップデートOracle Cloud Infrastructure:2021年10月度サービス・アップデート
Oracle Cloud Infrastructure:2021年10月度サービス・アップデート
 
ゼロトラスト、この1年でお客様の4つの気づき ~内部不正、ランサムウェアとの戦い方~ (Oracle Cloudウェビナーシリーズ: 2021年10月6日)
ゼロトラスト、この1年でお客様の4つの気づき ~内部不正、ランサムウェアとの戦い方~ (Oracle Cloudウェビナーシリーズ: 2021年10月6日)ゼロトラスト、この1年でお客様の4つの気づき ~内部不正、ランサムウェアとの戦い方~ (Oracle Cloudウェビナーシリーズ: 2021年10月6日)
ゼロトラスト、この1年でお客様の4つの気づき ~内部不正、ランサムウェアとの戦い方~ (Oracle Cloudウェビナーシリーズ: 2021年10月6日)
 

Recently uploaded

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 

Recently uploaded (11)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

Oracle Blockchain Tableのご紹介 (Oracle Cloudウェビナーシリーズ: 2021年4月8日)

  • 2. 1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介 2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース 3. Oracle Blockchain Tableのデモ 4. Oracle Blockchain Tableを使ってみよう 本⽇お話しする内容 Copyright © 2021, Oracle and/or its affiliates 2
  • 3. 1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介 2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース 3. Oracle Blockchain Tableのデモ 4. Oracle Blockchain Tableを使ってみよう 本⽇お話しする内容 Copyright © 2021, Oracle and/or its affiliates 3
  • 4. シングル・データ・プラットフォームがデータドリブン実践の鍵 Copyright © 2021, Oracle and/or its affiliates 4 従来 理想 • 散在するデータ、複雑なデータ配置 • 複雑なデータ活⽤、価値提供の鈍化 • 多⼤なセキュリティリスク、運⽤保守コスト • 集約され、⼀貫性のあるデータ • 市場変化に追従する、鮮度のよいデータ活⽤ • ⼀元化されたセキュリティ、シンプルな運⽤保守 データタイプ、機能別のデータサイロ 集約された、シングル・データ・プラットフォーム =コンバージドデータベース 基幹システム SaaS 新規アプリ 基幹システム SaaS 新規アプリ
  • 5. オラクルが提供するシングル・データ・プラットフォーム Copyright © 2021, Oracle and/or its affiliates 5 構造化 データ JSON キー バリュー 地理情報 グラフ ファイル あらゆるデータタイプとワークロード に1つのデータベースで対応 ブロック チェーン JSON ハイパー スケール 機械学習 地理情報 グラフ 永続化 メモリ インメモリ アナリティクス マルチ テナント Cloud Integration インメモリ IoT オンプレミス Oracle Autonomous Database Oracle Exadata Cloud Oracle Exadata Cloud @Customer コンバージド機能 シングル・データ・プラットフォーム =コンバージドデータベース 企業内の様々なデータ
  • 6. 最新 Oracle Database 21c 主要な新機能 Copyright © 2021, Oracle and/or its affiliates 6 JavaScript ブロックチェーン表 • 複雑なSQL表現をカプセル化するシンプ ルな⽅法 • スキャンは最⼤10倍速 アップデートは最⼤4倍速 • 暗号化でチェインされた⾏で構成される 変更不可能なSQL表 • Oracle Database内部でJavaScript のコードを実⾏ ネーティブ JSON 型 SQLマクロ 開発者やアーキテクトに AutoML • 新規/既存のアプリケーションの パフォーマンスを⾼速化 • 機械学習モデルの構築を簡易化 • インメモリ列ストアの⾃⼰管理 インメモリ・ベクター結合 グラフ分析 インメモリの拡張 新たなMLアルゴリズム • 異常検出、回帰分析、分類分析 を強化 分析やデータ・サイエンティストに データベース管理者に 永続メモリ • PDB毎のスタンバイ OSレベルの PDB 分離化 • 新シャーディングアドバイザーと スキーマ解析ツール • より⾼速に、しかもアプリケーションの変 更なしで • アプリケーションのダウンタイムなしに セキュリティコンプライアンスを確保 シャーディングの強化 段階的パスワード切替 マルチテナントの強化
  • 7. ブロックチェーン/DLTと改ざん不能型データベース︓それぞれの⽤途 対応する 主要な ニーズ 例となる ユースケース § 複数の企業間で⽔平に確実かつリアルタイムに データを持ち寄り共有したい § 企業をまたいだワークフローを信頼できるかたち で実⾏したい § 原材料〜製造〜輸送〜⼩売までの⼀貫した データ持ち寄りによるサプライチェーンの全体最 適化 § スマートコントラクトによる取引約定〜決済まで の企業間ワークフローの ⾃動化、効率化、迅速化 § 台帳上での価値交換 分権/分散 ブロックチェーン/DLT § 法律上確実な保存が要求される契約情報や会 計、財務データの保持 § 重要なアクセス情報や操作履歴などの システムログを監査証跡として保存 § データを外部犯⾏、内部犯⾏両⾯から保護し、 セキュリティ確保 § 保存して以降、誰にも変更・削除できないよう データを保持したい § 監督機関、監査法⼈などに対し、改ざんされて いないことを証明したい 中央集権 改ざん不能型データベース Copyright © 2021, Oracle and/or its affiliates 7
  • 8. • データの不変性、耐改ざん性 • データベースの持ち主であっても、 ⼀旦書き込まれたデータを更新、削除できないようにする仕組みを備えている • 検証可能性と監査性、証跡性 • 更新、削除されていないことを検証できる仕組みを備えている • 検証可能であることにより改ざんされていないことの監査も容易に • 中央集権型(NOT分散/分権) • 複数組織で所有や管理を分散できるようにはなっていない • (「分散データベース」は複数組織で分散できるわけではない) 改ざん不能型データベースとは︖ Copyright © 2021, Oracle and/or its affiliates 8
  • 9. 耐改ざん性を追加、監査性を強化した特別なデータベース・テーブル データベース上のレコードに耐改ざん性と監査性を付与 • 追記オンリーの不変なデータ…テーブル所有者も特権ユーザも改ざん不能 • ハッシュチェーンで⾏をリンク…整合性の検証、改ざんされていないことの証明が可能 Oracle Databaseの⼀部として⾼度で多彩な機能とともに容易に利⽤可能 • 他のテーブルと組み合わせたトランザクション • 容易にデータ統合、多様なBIツールを⽤いての分析 • データベーストリガー、PL/SQLプログラムを利⽤したロジック表現 • レプリケーション、バックアップなどの耐障害性/⾼可⽤性機能、 アクセスコントロールなどのセキュリティ保護機能も併⽤可能 ※19cではRU19.10アップデートおよび個別パッチ32431413を適⽤することで利⽤可能に。 データベースの基本機能として含まれており追加ライセンスは不要(SE2でも利⽤可能)。 Blockchain Table︓Oracle Database 21c&19cで利⽤可能(※) Copyright © 2021, Oracle and/or its affiliates 9
  • 10. 追記オンリーのテーブルで、イミュータブル/不変なデータを保持 • ⾏のDELETEの制約(前述の通りn⽇〜無制限の保持期間を設定可能) • データ量を削減したい場合、適切な保持期間を設定しておいたうえで、 保持期間を過ぎた⾏を整合性を検証した上で(必要に応じて外部にアーカイブしつつ)削除する • 保持期間を過ぎた⾏の⼀括削除⽤PL/SQLパッケージファンクション DBMS_BLOCKCHAIN_TABLE.delete_expired_rows() • ⾏のUPDATEとMERGEが不可 • テーブルのDROPの制約(前述の通りn⽇〜無制限の保護期間を設定可能) • テーブルDROPは⾏のINSERT前なら常に可能(誤ってテーブル作成した場合すぐなら消せる) • テーブルのTRUNCATEが不可 • カラムの追加、削除および名前変更が不可 • データ型の変更や⼀部の⻑さ、精度の変更、NULL制約変更も不可 • Blockchain Tableの通常のテーブルへの変換、およびその逆の変換は不可 • パーティションのDROPが不可 Blockchain Tableの特性①︓データの削除、変更を制約 Copyright © 2021, Oracle and/or its affiliates 10
  • 11. ハッシュ値によるデータの検証可能性により、テーブルの中で完結した監査性を提供 Blockchain Tableの特性②︓ハッシュチェーン • ⾏のINSERT時、⾃動的に {⾏データ+前の⾏のハッシュ値} に対して計算したハッシュ値を隠しカラムに保持 • ある⾏のハッシュ値はその前の⾏のハッシュ値に依存し、その前 の⾏のハッシュ値はその前の前の⾏のハッシュ値に依存し… →ハッシュチェーンのつながりで改ざんが検知可能に • ハッシュチェーンと⾏データを突合しながら辿っていくことで、整合 性(INSERT以降、⾏データが変更、削除されていないこと) の検証が可能 • 検証⽤PL/SQLパッケージファンクション DBMS_BLOCKCHAIN_TABLE.verify_rows() ID User Value 1 Tom 500 2 Carol 176 3 Steve 500 4 John 176 5 Mike 332 6 Sarah 632 7 Eve 25 8 Prisha 850 Hash ADSJS %SHS SH@1 DHD3 *EGG AH11 LIO$ SHS4 Copyright © 2021, Oracle and/or its affiliates 11
  • 12. ブロックチェーン/DLT基盤や専⽤データベースと⽐較して…… 利⽤のハードルが低い • ⼀般的なOracle Databaseのスキルで⼗分使いこなせるため、学習コストが低い • 通常のテーブルとの使い勝⼿の差異が⼩さく、アプリケーション透過的な利⽤が可能 • 通常テーブルからの乗り換えに必要な改修はゼロ〜最⼩限 アプリケーション側の負担が⼩さい • ふつうアプリケーションはイミュータブル(変更/削除しない)データのみを扱うわけではない • イミュータブルデータ専⽤のデータベースを使う場合、 アプリケーションは少なくともふたつのデータベースを扱わなくてはならない • 同⼀DB上で通常のテーブルとBlockchain Tableを扱えるためトランザクション、整合性担保が容易 データ分析、データ統合が容易 • Blockchain Table上でそのまま集計、分析が可能 • 他テーブル上のデータとのJOINやVIEW、多様なデータ統合ツールやBIツールも利⽤可能 処理性能 • Oracle Databaseの様々な処理性能向上⼿段を適⽤可能(例︓Exadataを利⽤) Oracle Databaseの1テーブルとして使えることのメリット Copyright © 2021, Oracle and/or its affiliates 12
  • 13. アプリケーションの負担を減らし、分析のための余分な⼿間も削減 単⼀⽤途データベース vs Oracle Database App BI DIツール イミュータブル データ専⽤DB (⼜はブロックチェーン/DLT) 通常データ⽤ DB トランザクション トランザクション 複製 複製 分析 分析⽤ DB 整合性担保は アプリの責任 単⼀⽤途データベースの場合 Oracle Databaseの場合 App BI 分析のための データ統合に 余分な⼿間 トランザクション Oracle Database 分析 DB機能で 整合性担保 同⼀DB上で 容易に分析 Copyright © 2021, Oracle and/or its affiliates 13
  • 14. • セキュリティ担保や監査上、証跡として利⽤するログ (例︓⼊退室ログ、アクセスログ)に耐改ざん性を付与 • 保存先を変えるだけで活⽤可能 • ログファイル→Blockchain Table • 通常のテーブル→Blockchain Table • アプリケーション側の変更はゼロ〜最⼩限 • 元々データベースに保存している場合は保存先の テーブルをBlockchain Tableとして作り直すだけで OK • 参照、検索、分析も通常のテーブルにあるレコードの 場合と同様の使い勝⼿ • コンプライアンスに関わる様々な業務データの保存にも 活⽤可能(例︓会計や財務、契約などの情報) • ブロックチェーン台帳と違い、⼤きなデータサイズ、 複雑なデータモデルにも対応可 • JSON形式で業務データを保存 • あとからのカラムの追加削除が不能なため、JSON 形式を上⼿に使うのが実践的 • (21cバージョン以降では)21cで追加された JSON形式カラムを利⽤可能 • CLOB、BLOB形式でドキュメントファイルや画像ファイ ルを保存 • 紙原本保存の慣⾏を不要に Blockchain Tableを活⽤する際の実装イメージ 重要なログの保存先をBC Tableに変更 様々な業務データ、ドキュメントを保存 Copyright © 2021, Oracle and/or its affiliates 14
  • 15. • すぐに、簡単に使える • 耐改ざん性と監査性の課題をシンプルに、最低限のコストだけで解決 • アプリケーションの改修はゼロ〜最⼩限、学習コストも極⼩ • ピンポイントソリューション • 他の箇所に影響を与えることなく、データベースの⼀部分、アプリケーションの⼀部分のみにセキュリティ 向上を適⽤可能 • 参照、分析、データ統合、BIツール等は通常テーブルと同様にそのまま使える • どこでも利⽤可能 • クラウドでもオンプレミスでも利⽤可能 • 追加ライセンス不要︓データベースのすべてのエディションで利⽤可能 Blockchain Tableまとめ Copyright © 2021, Oracle and/or its affiliates 15
  • 16. DB管理者職務分掌 /アクセスパス制限 (Database Vault) 内部犯⾏や悪意ある操作によるデータ抽出、破壊、改竄を保護 知財・機密情報、個⼈情報を守るデータベースセキュリティソリューション ユーザー データベース 管理者 イベント DF11233 U*1 $5Ha1qui %H1 HSKQ112 A14 FASqw34 £$1 DF@£!1ah HH! データの暗号化 (Transparent Data Encryption) ⾏列レベルのアクセス制御 (Virtual Private DB, Real Application Security) 不正検知・証跡管理 (Audit Vault and Database Firewall) 通信暗号化 (標準機能) レポート アラート ポリシー 開発 データの伏字化 (Data Masking and Subsetting) 多要素認証 (Identity CS) 改ざん対策 (Blockchain Table) セキュリティアセスメント、監査・ 検知の可視化・⾃動化 (Data Safe CS) Copyright © 2021, Oracle and/or its affiliates 16
  • 17. テーブル作成時に”Immutable”キーワードを追加するだけでインサー トオンリーの不変なテーブルを作成 • リレーショナルデータ、JSONやLOBドキュメントも格納可能 • 帳簿データだけでなく参照情報もテーブルに保管 通常のテーブルと同様に利⽤が可能だが、以下の操作には制約: • ⾏のUPDATEとDELETE • テーブル定義の変更 • Immutable Tableの通常のテーブルへの変換、およびその逆 • データベースディクショナリでテーブルメタデータの修正 アプリケーションに変更を加えることなくImmutable Tableを利⽤可能 近⽇追加予定︓Oracle Immutable Table CREATE IMMUTABLE TABLE trade_ledger (…); ID User Value 1 Tom 500 2 Carol 176 3 Wang 500 4 Eve 25 TRADE LEDGER データベース19.11, 21.3で利⽤可能 Copyright © 2021, Oracle and/or its affiliates 17
  • 18. 1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介 2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース 3. Oracle Blockchain Tableのデモ 4. Oracle Blockchain Tableを使ってみよう 本⽇お話しする内容 Copyright © 2021, Oracle and/or its affiliates 18
  • 20. Blockchain Table: 主なユースケース Copyright © 2021, Oracle and/or its affiliates 20 内外からの攻撃に対してデータを保護 ・勘定系システム、決済系システムなどのトランザクションログ ・証券や各種アセットの所有権を管理する原簿 セキュリティ上重要な記録の保存 ・アプリケーションのアクセスログや監査ログ ・⾼セキュリティエリアへの⼊退室記録 種々の認定、証明のエビデンス、法律上確実な保存が要求される情報 ・従業員の出退勤記録、企業の会計、財務のデータ ・⾒積、契約、請求や⽀払のやり取りに係るドキュメント ・原産地証明、検査証、品質認証、RE100証明、CO2排出量証明など
  • 21. Blockchain Tableのご利⽤事例 GDPR関連データへのアクセスなど、 銀⾏の法的に重要な業務について のレポートおよび監査ログを Blockchain Tableに保存 管理ワークフロー(申請、確認、 データ暗号化)の法的な記録を⾼ い監査性で保持できるように コーポレート・ガバナンスに係るワークフ ローの作業をBlockchain Tableに記 録して追跡可能にすることで、信頼性、 不変性を担保し、また、証書を発⾏ ドキュメントへのデジタル印の⽣成を可 能に︓ • ドキュメントの初版 • ドキュメントのレビュー • 承認ワークフロー 等 匿名化された(ある距離内/持続時間 以上の)接触の記録をBlockchain Tableに保管 アプリユーザーがCOVID19陽性となった 場合には、X-RINGのボタンを押すことで、 濃厚接触した可能性があるすべてのユー ザーに警告通知を送ることができる スマートコンプライアンス 法律×テクノロジー 接触追跡ソリューション Copyright © 2021, Oracle and/or its affiliates 21
  • 22. 耐改ざん性を向上 ⽂章の耐改ざんソリューション Copyright © 2021, Oracle and/or its affiliates 22 A部⾨ B部⾨ C部⾨ • ファイルの中⾝および操作履歴をBlockchain Table で保持することで、⽂章の真正性および監査性を向上 作成 更新 承認 監査チェック Blockchain Tableは Oracle Databaseのテーブルなので、 • ドキュメントファイルそのものを登録可能 • ドキュメントの中⾝の⽂章も検索可能 • 改ざんされていないことの証明や監査が容易
  • 24. 脱炭素への取り組み案 24 CO2排出量DB 可視化 予測 アクション Copyright © 2021, Oracle and/or its affiliates | CO2排出量DB CO2排出量、品質検査/品質認証、RE100証明、原産地証明 などへの展開可能 1.⾃社の稼働実績に基づいた CO2排出量を算出、集約 2.集約されたCO2排出量を可視化、 詳細な改善アクションへ 4.LCAでの排出量正当性のため、 他社企業とのデータ開⽰ 3.CO2排出量の正当性証明のため 取引先、投資家、監査機関へ共有 ⾃社 他社 取引先、投資家、 監査機関
  • 25. 1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介 2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース 3. Oracle Blockchain Tableのデモ 4. Oracle Blockchain Tableを使ってみよう 本⽇お話しする内容 Copyright © 2021, Oracle and/or its affiliates 25
  • 26. Blockchain Tableと通常のテーブルでの基本的な操作の⽐較で耐改ざん性を体験 このシナリオでは… • 通常のテーブルとBlockchain Tableを作成し、品質情報に⾒⽴てたデータを格納する • 両者に対してデータのUPDATE/更新(→改ざん)、DELETE/削除(→隠蔽)の操作結果を⽐較する • Blockchain Table独特の隠しカラムに⾃動的に保存されるデータの有⽤性を理解する サンプルSQLスクリプトシナリオ︓品質情報の保存 Copyright © 2021 Oracle and/or its affiliates 26 QUALITY 製品の品質検査の 結果データを保存する 通常のテーブル QUALITY_BCT 製品の品質検査の 結果データを保存する Blockchain Table ・UPDATE ・DELETE ・UPDATE ・DELETE
  • 27. Copyright © 2021 Oracle and/or its affiliates 27 -- ※※※まずは通常のテーブルを作成し操作を実験※※※ -- QUALITYという名前の品質検査結果を記録する通常のテーブルを作成 -- 製品ID、検査結果スコア、検査実施⽇時 CREATE TABLE quality ( product_id VARCHAR2(256) NOT NULL, test_score NUMBER NOT NULL, inspection_date DATE NOT NULL ); -- QUALITYテーブルに品質検査結果データをINSERT INSERT INTO quality VALUES ('aaa111', 88, TO_DATE('2021/03/02 10:12:34', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality VALUES ('bbb222', 89, TO_DATE('2021/03/02 11:11:22', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality VALUES ('ccc333', 64, TO_DATE('2021/03/02 12:18:44', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality VALUES ('ddd444', 92, TO_DATE('2021/03/02 13:13:21', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality VALUES ('fff666', 89, TO_DATE('2021/03/02 14:22:04', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality VALUES ('ggg777', 93, TO_DATE('2021/03/02 15:23:12', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality VALUES ('hhh888', 94, TO_DATE('2021/03/02 16:12:58', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality VALUES ('iii999', 90, TO_DATE('2021/03/02 17:18:07', 'YYYY-MM-DD HH24:MI:SS')); -- QUALITYテーブルの品質検査結果データを全件表⽰ SELECT * FROM quality ORDER BY product_id; -- 検査結果スコアが89点(ギリギリ不合格)のものを90点(ギリギリ合格)に更新…品質情報の改ざん -- 成功する UPDATE quality SET test_score = 90 WHERE test_score = '89'; -- 検査結果スコアが⼀定以上低かった不良品のデータを削除…隠ぺい -- 成功する DELETE FROM quality WHERE test_score < 70; -- 検査漏れしていた製品の結果を過去⽇時で新規登録…ねつ造 -- 成功する INSERT INTO quality VALUES ('eee555', 90, TO_DATE('2021/03/02 14:00:45', 'YYYY-MM-DD HH24:MI:SS')); -- QUALITYテーブルの品質検査結果データを全件表⽰ SELECT * FROM quality ORDER BY product_id; -- ※※※次にBlockchain Tableを作成し操作を実験※※※ -- QUALITY_BCTという名前の品質検査結果を記録するBlockchain Tableを作成 CREATE BLOCKCHAIN TABLE quality_bct ( product_id VARCHAR2(256) NOT NULL, test_score NUMBER NOT NULL, inspection_date DATE NOT NULL ) NO DROP UNTIL 0 DAYS IDLE NO DELETE HASHING USING "SHA2_512" VERSION "v1" ; -- QUALITY_BCTテーブルに品質検査結果データをINSERT INSERT INTO quality_bct VALUES ('aaa111', 88, TO_DATE('2021/03/02 10:12:34', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality_bct VALUES ('bbb222', 89, TO_DATE('2021/03/02 11:11:22', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality_bct VALUES ('ccc333', 64, TO_DATE('2021/03/02 12:18:44', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality_bct VALUES ('ddd444', 92, TO_DATE('2021/03/02 13:13:21', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality_bct VALUES ('fff666', 89, TO_DATE('2021/03/02 14:22:04', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality_bct VALUES ('ggg777', 93, TO_DATE('2021/03/02 15:23:12', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality_bct VALUES ('hhh888', 94, TO_DATE('2021/03/02 16:12:58', 'YYYY-MM-DD HH24:MI:SS')); INSERT INTO quality_bct VALUES ('iii999', 90, TO_DATE('2021/03/02 17:18:07', 'YYYY-MM-DD HH24:MI:SS')); -- QUALITY_BCTテーブルの品質検査結果データを全件表⽰ SELECT * FROM quality_bct ORDER BY product_id; -- 検査結果スコアが89点(ギリギリ不合格)のものを90点(ギリギリ合格)に更新…品質情報の改ざん -- 失敗する(Blockchain Tableの制約) UPDATE quality_bct SET test_score = 90 WHERE test_score = '89'; -- 検査結果スコアが⼀定以上低かった不良品のデータを削除…隠ぺい -- 失敗する(Blockchain Tableの制約) DELETE FROM quality_bct WHERE test_score < 70; -- 検査漏れしていた製品の結果を過去⽇時で新規登録…ねつ造 -- 成功する…ただし隠しカラムに⾃動で記録されるタイムスタンプと齟齬が出るため識別可能 INSERT INTO quality_bct VALUES ('eee555', 90, TO_DATE('2021/03/02 14:00:45', 'YYYY-MM-DD HH24:MI:SS')); -- ⼀部の隠しカラム含めBlockchain Tableのデータを表⽰ -- Blockchain Tableでは、⾃動的にINSERT時のタイムスタンプが登録されている SELECT product_id, test_score, inspection_date, ORABCTAB_CREATION_TIME$ "bc_date", ORABCTAB_HASH$ "hash" FROM quality_bct ORDER BY product_id; -- ※※※Blockchain Tableのその他の操作※※※ -- 隠しカラムの表⽰をONにしてからテーブル定義を表⽰ SET COLINVISIBLE ON; DESC quality_bct; -- Blockchain Tableの⾏の整合性を検証 DECLARE verified_rows NUMBER; BEGIN DBMS_BLOCKCHAIN_TABLE.VERIFY_ROWS('admin','quality_bct', NULL, NULL, NULL, NULL, verified_rows); DBMS_OUTPUT.PUT_LINE('Number of rows verified = '|| verified_rows); END; -- Blockchain Tableに対してTRUNCATE(テーブル上のデータ全削除)を試す -- テーブル作成時にNO DELETEを指定している場合は常に失敗する TRUNCATE TABLE quality_bct; -- Blockchain Tableに対してDROP(テーブルごと削除)を試す -- テーブル作成時のNO DROP UNTIL n DAYS IDLEの指定およびテーブル上の最新データの経過⽇数次第で可不可が分かれる -- NO DROP UNTIL 0 DAYS IDLEで作成している場合は常に成功する DROP TABLE quality_bct; サンプルSQLスクリプト 〜コピペしてご利⽤ください〜
  • 28. 1. ブロックチェーンから⽣まれた技術、Oracle Blockchain Tableのご紹介 2. Oracle Blockchain Tableによりデータの耐改ざん性を⾼めるメリット、ユースケース 3. Oracle Blockchain Tableのデモ 4. Oracle Blockchain Tableを使ってみよう 本⽇お話しする内容 Copyright © 2021, Oracle and/or its affiliates 28
  • 29. Oracle Cloudでは以下いずれかのサービスのOracleデータベース上で Blockchain Tableの利⽤が可能です︓ • Autonomous Database • フルマネージド型のデータベース • ワークロードごとに以下のタイプを選択︓ • Autonomous Data Warehouse︓分析ワークロード、データウェアハウス • Autonomous Transaction Processing︓オンライントランザクション処理 • Database Cloud Service • カスタマーマネージド型のデータベース Oracle Cloud Free TierでBlockchain Tableを試⽤する⽅法 Copyright © 2021, Oracle and/or its affiliates 29
  • 30. Oracle Cloud Free Tier: Free TrialとAlways Free Oracle Cloudにサインナップいただくと、両⽅が利⽤可能です • https://www.oracle.com/jp/cloud/free/ Free Trial 30 300 + Always Free Copyright © 2021, Oracle and/or its affiliates 30
  • 31. • データベースバージョンの制約︓現状、21cバージョンを選択して構築したAutonomous Databaseでのみ Blockchain Tableの利⽤が可能です • サービスの制約︓現状、21cバージョンを選択して構築するには以下の制約があります • ①Always Free枠で構築するAutonomous Databaseに限定 • ②Ashburn、Phoenixなどのいくつかのリージョンに限定 • 上記の制約を満たすためには、Free Trial環境としてクラウドテナントをサインアップする際に選択するホーム リージョン(Home Region)を②に含まれるリージョンにしておく必要があります • 理由︓Always Free枠でのサービスの利⽤はホームリージョン内に限られる、また、サインアップ以降 ホームリージョンの変更ができないため • 以上から、Ashburnをホームリージョンとして指定することを推奨します Autonomous DatabaseでのBlockchain Table試⽤(2021年3⽉時点) Copyright © 2021, Oracle and/or its affiliates 31
  • 32. • データベースバージョンの制約︓以下いずれかでBlockchain Tableを利⽤可能です • 21cバージョンを選択して構築したDatabase Cloud Service ←おすすめ • 19cバージョンを選択して構築し、RU19.10アップデートおよび個別パッチ32431413を適⽤した Database Cloud Service • サービスの制約︓Database Cloud ServiceはAlways Free枠で提供されていないため、Free Trialクレ ジット範囲内での使⽤が必要です • Database Cloud Serviceを試⽤する場合は、リージョンの制約はありません Database Cloud ServiceでのBlockchain Table試⽤(2021年3⽉時点) Copyright © 2021, Oracle and/or its affiliates 32
  • 34. 無償トライアルで利⽤可能なワークショップ:Oracle blockchain tablesのチュートリアル Oracle blockchain tablesのチュートリアル 英語ですが、ブラウザの翻訳機能を使って⽇本語で利⽤可能。 https://apexapps.oracle.com/pls/apex/dbpm/r/livelabs/view-workshop?wid=746&session=13873808601344 Oracle LiveLabs Copyright © 2021, Oracle and/or its affiliates 34
  • 35. • 【公式ブログ】Blockchain TableによるOracle Databaseのコンバージドデータベースの拡張 • Blockchain Tableの技術的な特⻑およびユースケースの紹介記事 https://blogs.oracle.com/oracle4engineer/blockchain-table • 【公式ドキュメント】 Oracle Database 21cドキュメント • 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/nfcon/details-oracle-blockchain-table- 282449857.html • 【イベントスライド】 Oracle Databaseの新機能 Blockchain Tableのご紹介 • https://speakerdeck.com/gakumura/oracle-databasefalsexin-ji-neng-blockchain-tablefalsegoshao-jie • 【イベントスライド】 2021/3/17 BlockchainGIG Exhibition • イベントページ、動画 https://oracle-code-tokyo-dev.connpass.com/event/204286/ • 改ざん不能データベース登場の背景とOracle Blockchain Platformのご紹介 https://speakerdeck.com/gakumura/gai-zanbu-neng-detabesudeng-chang-falsebei-jing-to-oracle-blockchain- platformfalsegoshao-jie • Blockchain GIG Exhibition Blockchain Tableセッション資料 https://www.slideshare.net/oracle4engineer/20210317-blockchain-gig-exhibition-blockchain-table Blockchain Tableについての参考Webサイト Copyright © 2021, Oracle and/or its affiliates 35
  • 36. • 【ご参考ブログ】Oracle CloudでOracle Database 20c(プレビュー)のBlockchain Tableを使ってみた話 • Blockchain Tableを作成し、基本的な操作をテスト https://miyacle.com/2020/07/oracle-cloud%E3%81%A7oracle-database- 20c%E3%83%97%E3%83%AC%E3%83%93%E3%83%A5%E3%83%BC%E3%81%AEblockchain- table%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%81%9F%E8%A9%B1/ • 【ご参考ブログ】Oracle CloudのAlways FreeのATPのAPEXを使って作った我が家の体重管理アプリを、Blockchain Tablesで改ざんできないようにした • Blockchain Tableを作成し、APEXで操作 https://qiita.com/maato/items/4a43841132074aa35d81 • 【ご参考ブログ】21cのブロックチェーン 表を使ってみる • Blockchain TableにネイティブJSON型(21cで追加)でデータを保存し、APEXから表⽰ https://apexugj.blogspot.com/2020/12/blockchain-table-with-json.html • 【ご参考ブログ】 Blockchain TableにドキュメントのPDFファイルを保存してOracle Textで全⽂検索してみた • https://gakumura.hatenablog.com/entry/how-to-store-files-into-blob-and-use-oracletext-on-blockchain- tables Blockchain Tableについての参考Webサイト Copyright © 2021, Oracle and/or its affiliates 36
  • 37. Oracle Cloud Infrastructure (PaaS/IaaS): 無償トライアル Copyright © 2021, Oracle and/or its affiliates 37 無償トライアルのお申し込みサイト • https://www.oracle.com/jp/cloud/free/ 無償トライアルについて • $300(約35,000円)のクレジットを無償取得できます - トライアル期間中は優遇レート(=IaaS料⾦のみ)が適⽤されるため、多様な サービスをお試しいただけます - 30⽇間有効、以降も有償環境として継続使⽤可能 • 多くのサービスが利⽤可能 - 対象サービス https://www.oracle.com/jp/cloud/free/ • 主な利⽤⽤途 - クラウドへの移⾏・性能テスト - 利⽤を検討するサービスの機能評価 • 利⽤可能なユーザ - 新規ユーザ
  • 38. Oracle Cloud Infrastructure 主要情報⼀覧 Copyright © 2021, Oracle and/or its affiliates 38 1 2 Oracleアーキテクチャ・センター https://docs.oracle.com/ja/solutions/ クラウド環境の検討や実装に役⽴つように設計されたリファレンス・アーキテクチャとソリューショ ン・プレイブックのカタログを多数掲載。ダウンロード、カスタマイズ、およびデプロイできるコードま たはスクリプトも含む。 リファレンス・アーキテクチャ、ソリューション・プレイブックを概説した下記ブログもご参照ください。 https://blogs.oracle.com/oracle4engineer/move-workload-to-oraclecloud 3 OCIサービスアップデート https://blogs.oracle.com/oracle4engineer/4サービス・アップデート 毎⽉公開するOCIのサービス・アップデート情報をスライドで分かり易く説明。各サービスの詳 細なアップデート情報は、各サービスのドキュメントや下記「OCI活⽤資料集」をご覧ください。 4 5 OCIお客様活⽤事例 https://blogs.oracle.com/oracle4engineer/oracle-cloud-platformpaasiaas OCIを活⽤したお客様の事例のご紹介。データベースはもちろんのこと、アナリティックス、セキュ リティ、システム管理、コンテンツ管理、ブロックチェーン、チャットボットなど様々なサービスのお 客様事例をご紹介します。 OCI活⽤資料集 https://oracle-japan.github.io/ocidocs/ OCIを使ってみたい! という⽅のための技術ドキュメント集。 OCIのサービス別技術資料をはじ め、PPTスライドを中⼼とした公開ドキュメントや、セミナーで使⽤した資料をアップロードしてい ます。 6 OCIセミナー情報 https://blogs.oracle.com/oracle4engineer/column_cloud_seminar 今後開催予定のウェビナー(含むハンズオントレーニング)についてご案内します。 ほぼ毎週 2回+ハンズオンを様々なテーマで開催中︕ オラクルエンジニア通信 https://bloegs.oracle.com/oracle4engineer/ 技術資料、コラム、マニュアルなど、OCIに関するその他の情報は、「オラクルエンジニア通信」 よりお届けしています。 チュートリアル: OCI を使ってみよう https://oracle-japan.github.io/ocitutorials/ OCIを使ってみよう! という⼈のためのチュートリアル集。各項ごとに画⾯ショットなどを交えなが らステップ・バイ・ステップで作業を進めて、OCIの機能についてひととおり学習することができるよ うになっています。 7 OCIドキュメント 各サービスのマニュアル。 https://docs.cloud.oracle.com/ja-jp/iaas/Content/home.htm 8 Oracle Code Night https://oracle-code-tokyo-dev.connpass.com/ オラクルのテクノロジーだけに限定しない、Developer(開発者)のDeveloper(開発 者)によるDeveloper(開発者)のための開発者向けコミュニティ Meetup セミナーのこ と。 ほぼ毎週 様々なテーマで開催中︕ 9 Oracle Cloud Infrastructure 主要情報をまとめたポータル(以下1­9を含む) https://blogs.oracle.com/oracle4engineer/column_oci_links
  • 39. • • • : • #1: , INDETAIL, • #2: , , • #3: G.U. Labs, TIS • #4: IBM , NTT • #5: , LayerX • #6: , • #7: , NTT , LayerX • #8: , • • CONNPASS Oracle Code Night Blockchain GIGの紹介 Copyright © 2021 Oracle and/or its affiliates 39