SlideShare a Scribd company logo
1 of 24
Code the Clouds Mix-up Vol.1 
S3 Client-Side Encryption for Big Data 
〜コンテンツグラビティの実践〜 
2014.10.3 
吉田真吾 @yoshidashingo
自己紹介 
☁ cloudpack エバンジェリスト 
ソリューションアーキテクト 
– コンサルティング 
– AWS設計・移行支援 
– テクニカルマーケティング 
☁ バックグラウンド 
– GISシステム,証券システム基盤 
の開発を経て 
2013.1より現職
40サービス 
EC2 
EMR Kinesis WorkSpaces 
CloudWatch 
Direct 
Connect 
IAM 
Route 53 
SNS 
SES 
SimpleDB 
CloudFront 
VPC 
Redshift 
ElastiCache 
Elastic SWF 
CloudFormation 
Transcoder 
CloudTrail 
SQS 
Storage 
Data Gateway 
Pipeline 
DynamoDB 
Elastic 
Beanstalk 
Glacier 
OpsWorks 
S3 Import/ 
Export RDS 
CloudSearch 
Mechanical 
Turk 
Management 
Console 
Amazon Web Services
SDK  Toolkit 
Java 
Ruby 
.NET 
PHP 
Python (boto) 
JavaScript 
Amazon Web Services 
Node.js 
iOS 
Android 
AWS Toolkit for 
Visual Studio 
AWS Toolkit for 
Eclipse 
AWS Toolkit for 
Windows 
PowerShell 
AWS CLI
Amazon S3 
1B〜5TB 
Unlimited 
Fault Torelance 99.999999999 % 
High Availability 99.99 %
コンテンツグラビティ 
Content Gravity 
☁ 「データを処理の近くに置く」 
– あるいは処理をデータの近くに集める 
– リアルタイム(Real Time), 弾力性(Elasticity) 
☁ AWSでは 
– Object Storage  Amazon S3 
– RDBMS     Amazon RDS 
– NoSQL Database Amazon DynamoDB 
– Data Warehouse  Amazon Redshift 
などなどにデータを集約できる
あつめて 
Data Integration 
可視化 
Visualization
Data Integration 
☁ 大量に収集する 
– 1日に数百GB〜数十TBとか現実ある 
☁ リアルタイムに収集する 
– 粒度の小さい処理をたくさん実行する 
☁ セキュアに収集する 
– ノード間のファイアウォール 
– 経路の暗号化 (IPSec) 
– ストレージの暗号化 
– データの暗号化
Use Case: On-premise to Redshift 
NACLs  SG Bucket Policy 
PUT 
Server Replicator S3 
(EC2) 
GET 
COPY 
Redshift 
BI Tools 
☁ ノード間のファイアウォール 
☁ 経路の暗号化 (IPSec) 
☁ ストレージの暗号化 
NACLs  SG 
IPsec VPN 
IPsec VPN
S3のデータを暗号化する方式 
☁ Client-Side Encryption 
– 独自の鍵を利用できる 
☁ Server-Side Encryption 
– 鍵管理をAWSにまかせられる 
☁ Server-Side Encryption with 
Customer-Provided Encryption Keys 
– 独自の鍵を渡して暗号化する 
☁ 独自に暗号化して格納 
– 暗号化制御をすべて掌握できる
Client-Side Encryption (CSE) 
☁ AWS SDK for Java  Ruby でサポート 
– プライベート暗号キーを作成する(手元で管理) 
– エンベロープ暗号キーでファイルを暗号化 
– エンベロープ暗号キーをプライベート暗号キーで暗号化 
– 暗号化したファイルのメタデータに暗号化済みエンベロープキーを付 
与してアップロードする 
– psqlでRedshiftに接続する 
– ファイルとプライベート暗号キーをパラメータに渡してCOPY文を発行 
する
Java (暗号キーの生成) 
Create256BitAESsecret.java 
 
ここ見てね 
↓ 
http://yoshidashingo.hatenablog.com/entry/2014/08/10/193631
Java (アップロードプロセス) 
UploadDirectoryUsingSymmetricKeyClientSideEncryption.java 
 
ここ見てね 
↓ 
http://yoshidashingo.hatenablog.com/entry/2014/08/10/193631
RedshiftにCOPY 
mydb=# COPY test FROM 's3://bucketname//test.csv' CSV 
credentials 
'aws_access_key_id=xxxxxxxxxx;aws_secret_access_key=xxxxxxxx 
xx;master_symmetric_key=private_key' delimiter ',' encrypted;
AWS SDK for Ruby でも
Ruby (暗号キー生成アップロード) 
# Usage: ruby s3clienc_write.rb bucketname filename 
 
require 'rubygems' 
require 'aws-sdk' 
require 'openssl' 
 
bucketname = ARGV[0] 
filename = ARGV[1] 
keyname = 'key_' + bucketname + '_' + filename 
data = File.open(filename) 
 
# Creates and store a string key 
symmetric_key = OpenSSL::Cipher::AES256.new(:CBC).random_key 
 
File.open(keyname, 'wb') do |file| 
file.write(symmetric_key) 
end 
 
options = { :encryption_key = symmetric_key } 
s3_object = AWS.s3.buckets[bucketname].objects[filename] 
 
s3_object.write(data, options)
Ruby (ダウンロード) 
# Usage: ruby s3clienc_read.rb bucketname filename 
 
require 'rubygems' 
require 'aws-sdk' 
require 'openssl' 
 
s3=AWS::S3.new 
bucketname = ARGV[0] 
filename = ARGV[1] 
keyname = 'key_' + bucketname + '_' + filename 
 
symmetric_key = File.read(keyname) 
options = { :encryption_key = symmetric_key } 
s3_object = AWS.s3.buckets[bucketname].objects[filename] 
 
File.open(filename, 'wb') do |file| 
s3_object.read(options) do |chunk| 
file.write(chunk) 
end 
end
AWS SDK for Ruby V2(core)の対応 
☁ 今のところ、Server-Side Encryption 
with Customer-Provided Encryption 
Keys (SSE-C)しかない 
– 経路上での「データの暗号化」がされない 
– 経路の暗号化で担保するか、納得いかなけれ 
ばJavaで 
☁ 参考 
– http://docs.aws.amazon.com/sdkforruby/ 
api/frames.html
Read Later 
☁ AWS SDK for JavaでS3クライアント暗号化 
をしたCSVをAmazon RedshiftにCOPY(イン 
ポート)する 
http://yoshidashingo.hatenablog.com/entry/ 
2014/08/10/193631 
 
☁ AWS SDK for RubyでS3クライアント暗号化 
を試す 
http://yoshidashingo.hatenablog.com/entry/ 
2014/08/08/212646
最上位パートナー
人材募集中 ^^v

More Related Content

What's hot

【IVS CTO Night & Day】AWSにおけるビッグデータ活用
【IVS CTO Night & Day】AWSにおけるビッグデータ活用【IVS CTO Night & Day】AWSにおけるビッグデータ活用
【IVS CTO Night & Day】AWSにおけるビッグデータ活用Amazon Web Services Japan
 
Amazon guard duty_security_recap
Amazon guard duty_security_recapAmazon guard duty_security_recap
Amazon guard duty_security_recapTomoaki Sakatoku
 
AWS Summit Tokyo 2015 - JAWS-UG 東京 LT大会 JAWS-UG 初心者支部について
AWS Summit Tokyo 2015 - JAWS-UG 東京 LT大会 JAWS-UG 初心者支部についてAWS Summit Tokyo 2015 - JAWS-UG 東京 LT大会 JAWS-UG 初心者支部について
AWS Summit Tokyo 2015 - JAWS-UG 東京 LT大会 JAWS-UG 初心者支部についてNobuhiro Nakayama
 
aws mackerel twilio_handson_public
aws mackerel twilio_handson_publicaws mackerel twilio_handson_public
aws mackerel twilio_handson_publicTomoaki Sakatoku
 
JAWS-UG CLI専門支部 #49 Redshift入門
JAWS-UG CLI専門支部 #49 Redshift入門JAWS-UG CLI専門支部 #49 Redshift入門
JAWS-UG CLI専門支部 #49 Redshift入門Nobuhiro Nakayama
 
Amazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピング
Amazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピングAmazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピング
Amazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピングAmazon Web Services Japan
 
[HIGOBASHI.AWS] AWS ネットワーク小ネタ祭り
[HIGOBASHI.AWS] AWS ネットワーク小ネタ祭り[HIGOBASHI.AWS] AWS ネットワーク小ネタ祭り
[HIGOBASHI.AWS] AWS ネットワーク小ネタ祭りShuji Kikuchi
 
Security re:Cap 2017
Security re:Cap 2017Security re:Cap 2017
Security re:Cap 2017Kwiil Kang
 
Morning Session - AWS Serverless Ways
Morning Session - AWS Serverless WaysMorning Session - AWS Serverless Ways
Morning Session - AWS Serverless Waysakitsukada
 
【IVS CTO Night & Day】Networking Technology
【IVS CTO Night & Day】Networking Technology【IVS CTO Night & Day】Networking Technology
【IVS CTO Night & Day】Networking TechnologyAmazon Web Services Japan
 
AWSマネージドサービスをフル活用したヘルスケアIoTプラットフォーム
AWSマネージドサービスをフル活用したヘルスケアIoTプラットフォームAWSマネージドサービスをフル活用したヘルスケアIoTプラットフォーム
AWSマネージドサービスをフル活用したヘルスケアIoTプラットフォームHiroki Takeda
 
Introduction to Azure Service Fabric
Introduction to Azure Service FabricIntroduction to Azure Service Fabric
Introduction to Azure Service FabricTakekazu Omi
 
Azure Service Fabric 紹介
Azure Service Fabric 紹介Azure Service Fabric 紹介
Azure Service Fabric 紹介Takekazu Omi
 
20170902 kixs azure&azure stack
20170902 kixs azure&azure stack20170902 kixs azure&azure stack
20170902 kixs azure&azure stackOsamu Takazoe
 
AWS re:Invent 2021 コスト削減に役立つアップデートまとめ
AWS re:Invent 2021 コスト削減に役立つアップデートまとめAWS re:Invent 2021 コスト削減に役立つアップデートまとめ
AWS re:Invent 2021 コスト削減に役立つアップデートまとめServerworks Co.,Ltd.
 

What's hot (19)

【IVS CTO Night & Day】AWSにおけるビッグデータ活用
【IVS CTO Night & Day】AWSにおけるビッグデータ活用【IVS CTO Night & Day】AWSにおけるビッグデータ活用
【IVS CTO Night & Day】AWSにおけるビッグデータ活用
 
AWS KMSと鍵の話
AWS KMSと鍵の話AWS KMSと鍵の話
AWS KMSと鍵の話
 
JAWS-UG 情シス支部 #3
JAWS-UG 情シス支部 #3JAWS-UG 情シス支部 #3
JAWS-UG 情シス支部 #3
 
[Japan Tech summit 2017] DEP 008
[Japan Tech summit 2017] DEP 008[Japan Tech summit 2017] DEP 008
[Japan Tech summit 2017] DEP 008
 
Amazon guard duty_security_recap
Amazon guard duty_security_recapAmazon guard duty_security_recap
Amazon guard duty_security_recap
 
AWS Summit Tokyo 2015 - JAWS-UG 東京 LT大会 JAWS-UG 初心者支部について
AWS Summit Tokyo 2015 - JAWS-UG 東京 LT大会 JAWS-UG 初心者支部についてAWS Summit Tokyo 2015 - JAWS-UG 東京 LT大会 JAWS-UG 初心者支部について
AWS Summit Tokyo 2015 - JAWS-UG 東京 LT大会 JAWS-UG 初心者支部について
 
aws mackerel twilio_handson_public
aws mackerel twilio_handson_publicaws mackerel twilio_handson_public
aws mackerel twilio_handson_public
 
JAWS-UG CLI専門支部 #49 Redshift入門
JAWS-UG CLI専門支部 #49 Redshift入門JAWS-UG CLI専門支部 #49 Redshift入門
JAWS-UG CLI専門支部 #49 Redshift入門
 
Amazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピング
Amazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピングAmazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピング
Amazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピング
 
[HIGOBASHI.AWS] AWS ネットワーク小ネタ祭り
[HIGOBASHI.AWS] AWS ネットワーク小ネタ祭り[HIGOBASHI.AWS] AWS ネットワーク小ネタ祭り
[HIGOBASHI.AWS] AWS ネットワーク小ネタ祭り
 
Security re:Cap 2017
Security re:Cap 2017Security re:Cap 2017
Security re:Cap 2017
 
Morning Session - AWS Serverless Ways
Morning Session - AWS Serverless WaysMorning Session - AWS Serverless Ways
Morning Session - AWS Serverless Ways
 
【IVS CTO Night & Day】Networking Technology
【IVS CTO Night & Day】Networking Technology【IVS CTO Night & Day】Networking Technology
【IVS CTO Night & Day】Networking Technology
 
AWSマネージドサービスをフル活用したヘルスケアIoTプラットフォーム
AWSマネージドサービスをフル活用したヘルスケアIoTプラットフォームAWSマネージドサービスをフル活用したヘルスケアIoTプラットフォーム
AWSマネージドサービスをフル活用したヘルスケアIoTプラットフォーム
 
Introduction to Azure Service Fabric
Introduction to Azure Service FabricIntroduction to Azure Service Fabric
Introduction to Azure Service Fabric
 
Azure Service Fabric 紹介
Azure Service Fabric 紹介Azure Service Fabric 紹介
Azure Service Fabric 紹介
 
[Japan Tech summit 2017] DEP 005
[Japan Tech summit 2017] DEP 005[Japan Tech summit 2017] DEP 005
[Japan Tech summit 2017] DEP 005
 
20170902 kixs azure&azure stack
20170902 kixs azure&azure stack20170902 kixs azure&azure stack
20170902 kixs azure&azure stack
 
AWS re:Invent 2021 コスト削減に役立つアップデートまとめ
AWS re:Invent 2021 コスト削減に役立つアップデートまとめAWS re:Invent 2021 コスト削減に役立つアップデートまとめ
AWS re:Invent 2021 コスト削減に役立つアップデートまとめ
 

Viewers also liked

AWSへのWindows Server 2003の移行 そして今後インフラとどう向き合うべきか
AWSへのWindows Server 2003の移行 そして今後インフラとどう向き合うべきかAWSへのWindows Server 2003の移行 そして今後インフラとどう向き合うべきか
AWSへのWindows Server 2003の移行 そして今後インフラとどう向き合うべきか真吾 吉田
 
(SEC315) NEW LAUNCH: Get Deep Visibility into Resource Configurations | AWS r...
(SEC315) NEW LAUNCH: Get Deep Visibility into Resource Configurations | AWS r...(SEC315) NEW LAUNCH: Get Deep Visibility into Resource Configurations | AWS r...
(SEC315) NEW LAUNCH: Get Deep Visibility into Resource Configurations | AWS r...Amazon Web Services
 
10分で押さえる AWS re:Invent 2014 新サービス・アップデート
10分で押さえる AWS re:Invent 2014 新サービス・アップデート10分で押さえる AWS re:Invent 2014 新サービス・アップデート
10分で押さえる AWS re:Invent 2014 新サービス・アップデート真吾 吉田
 
Using LXC on Production
Using LXC on ProductionUsing LXC on Production
Using LXC on ProductionIsao Shimizu
 
BigQuery case study in Groovenauts & Dive into the DataflowJavaSDK
BigQuery case study in Groovenauts & Dive into the DataflowJavaSDKBigQuery case study in Groovenauts & Dive into the DataflowJavaSDK
BigQuery case study in Groovenauts & Dive into the DataflowJavaSDKnagachika t
 
JAWS札幌 re:Invent 2014レポート ― サーバレスの時代へ
JAWS札幌 re:Invent 2014レポート ― サーバレスの時代へJAWS札幌 re:Invent 2014レポート ― サーバレスの時代へ
JAWS札幌 re:Invent 2014レポート ― サーバレスの時代へRasmus Ekman
 
Mspからみたsensu
MspからみたsensuMspからみたsensu
MspからみたsensuTakuto Matsuu
 
Explore aws in depth
Explore aws in depthExplore aws in depth
Explore aws in depthTatsuro Handa
 
AWS SDK for Go in #jawsmeguro
AWS SDK for Go in #jawsmeguroAWS SDK for Go in #jawsmeguro
AWS SDK for Go in #jawsmeguroKenta Suzuki
 
(SEC406) NEW LAUNCH: Building Secure Applications with AWS Key Management Ser...
(SEC406) NEW LAUNCH: Building Secure Applications with AWS Key Management Ser...(SEC406) NEW LAUNCH: Building Secure Applications with AWS Key Management Ser...
(SEC406) NEW LAUNCH: Building Secure Applications with AWS Key Management Ser...Amazon Web Services
 
EmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについてEmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについてSatoshi Akama
 
Blue-Green Deployment Pattern on AWS
Blue-Green Deployment Pattern on AWSBlue-Green Deployment Pattern on AWS
Blue-Green Deployment Pattern on AWS真吾 吉田
 
AWS Lambda: Event-driven Code in the Cloud
AWS Lambda: Event-driven Code in the CloudAWS Lambda: Event-driven Code in the Cloud
AWS Lambda: Event-driven Code in the CloudAmazon Web Services
 
とある事業の脱レガシー
とある事業の脱レガシーとある事業の脱レガシー
とある事業の脱レガシーHisateru Tanaka
 
Git for Begineers GitHub ハンズオン
Git for Begineers GitHub ハンズオンGit for Begineers GitHub ハンズオン
Git for Begineers GitHub ハンズオンEmma Haruka Iwao
 

Viewers also liked (20)

AWSへのWindows Server 2003の移行 そして今後インフラとどう向き合うべきか
AWSへのWindows Server 2003の移行 そして今後インフラとどう向き合うべきかAWSへのWindows Server 2003の移行 そして今後インフラとどう向き合うべきか
AWSへのWindows Server 2003の移行 そして今後インフラとどう向き合うべきか
 
Free
FreeFree
Free
 
(SEC315) NEW LAUNCH: Get Deep Visibility into Resource Configurations | AWS r...
(SEC315) NEW LAUNCH: Get Deep Visibility into Resource Configurations | AWS r...(SEC315) NEW LAUNCH: Get Deep Visibility into Resource Configurations | AWS r...
(SEC315) NEW LAUNCH: Get Deep Visibility into Resource Configurations | AWS r...
 
10分で押さえる AWS re:Invent 2014 新サービス・アップデート
10分で押さえる AWS re:Invent 2014 新サービス・アップデート10分で押さえる AWS re:Invent 2014 新サービス・アップデート
10分で押さえる AWS re:Invent 2014 新サービス・アップデート
 
Using LXC on Production
Using LXC on ProductionUsing LXC on Production
Using LXC on Production
 
BigQuery case study in Groovenauts & Dive into the DataflowJavaSDK
BigQuery case study in Groovenauts & Dive into the DataflowJavaSDKBigQuery case study in Groovenauts & Dive into the DataflowJavaSDK
BigQuery case study in Groovenauts & Dive into the DataflowJavaSDK
 
JAWS札幌 re:Invent 2014レポート ― サーバレスの時代へ
JAWS札幌 re:Invent 2014レポート ― サーバレスの時代へJAWS札幌 re:Invent 2014レポート ― サーバレスの時代へ
JAWS札幌 re:Invent 2014レポート ― サーバレスの時代へ
 
Mspからみたsensu
MspからみたsensuMspからみたsensu
Mspからみたsensu
 
Explore aws in depth
Explore aws in depthExplore aws in depth
Explore aws in depth
 
AWS SDK for Go in #jawsmeguro
AWS SDK for Go in #jawsmeguroAWS SDK for Go in #jawsmeguro
AWS SDK for Go in #jawsmeguro
 
(SEC406) NEW LAUNCH: Building Secure Applications with AWS Key Management Ser...
(SEC406) NEW LAUNCH: Building Secure Applications with AWS Key Management Ser...(SEC406) NEW LAUNCH: Building Secure Applications with AWS Key Management Ser...
(SEC406) NEW LAUNCH: Building Secure Applications with AWS Key Management Ser...
 
EmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについてEmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについて
 
cloudpack-ers2014
cloudpack-ers2014 cloudpack-ers2014
cloudpack-ers2014
 
Blue-Green Deployment Pattern on AWS
Blue-Green Deployment Pattern on AWSBlue-Green Deployment Pattern on AWS
Blue-Green Deployment Pattern on AWS
 
Amazon EFS
Amazon EFSAmazon EFS
Amazon EFS
 
AWS Lambda: Event-driven Code in the Cloud
AWS Lambda: Event-driven Code in the CloudAWS Lambda: Event-driven Code in the Cloud
AWS Lambda: Event-driven Code in the Cloud
 
MySQL in the Cloud
MySQL in the CloudMySQL in the Cloud
MySQL in the Cloud
 
Sensu発表資料
Sensu発表資料Sensu発表資料
Sensu発表資料
 
とある事業の脱レガシー
とある事業の脱レガシーとある事業の脱レガシー
とある事業の脱レガシー
 
Git for Begineers GitHub ハンズオン
Git for Begineers GitHub ハンズオンGit for Begineers GitHub ハンズオン
Git for Begineers GitHub ハンズオン
 

Similar to S3 Client-Side Encryption by AWS SDK for Java/Ruby

これからのクラウドネイティブアプリケーションの話をしよう
これからのクラウドネイティブアプリケーションの話をしようこれからのクラウドネイティブアプリケーションの話をしよう
これからのクラウドネイティブアプリケーションの話をしよう真吾 吉田
 
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or ServerlessRunning Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or ServerlessKeisuke Nishitani
 
20120528 aws meister-reloaded-awssd-kforjava-public
20120528 aws meister-reloaded-awssd-kforjava-public20120528 aws meister-reloaded-awssd-kforjava-public
20120528 aws meister-reloaded-awssd-kforjava-publicAmazon Web Services Japan
 
20140621 july techfesta (JTF2014) 突発**むけAWS
20140621 july techfesta (JTF2014) 突発**むけAWS20140621 july techfesta (JTF2014) 突発**むけAWS
20140621 july techfesta (JTF2014) 突発**むけAWSYasuhiro Araki, Ph.D
 
Amazon Web Services(AWS)とcloudpack について
Amazon Web Services(AWS)とcloudpack についてAmazon Web Services(AWS)とcloudpack について
Amazon Web Services(AWS)とcloudpack についてHiroyasu Suzuki
 
CommVault with Cloudian for Data Backup and Archive
CommVault with Cloudian for Data Backup and ArchiveCommVault with Cloudian for Data Backup and Archive
CommVault with Cloudian for Data Backup and ArchiveCLOUDIAN KK
 
【セミナー講演資料】オープンクラウドソリューションのご紹介
【セミナー講演資料】オープンクラウドソリューションのご紹介【セミナー講演資料】オープンクラウドソリューションのご紹介
【セミナー講演資料】オープンクラウドソリューションのご紹介Nissho-Blocks
 
[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編
[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編
[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編Amazon Web Services Japan
 
AWSクラウドデザインパターン - JEITA講演 -
AWSクラウドデザインパターン - JEITA講演 - AWSクラウドデザインパターン - JEITA講演 -
AWSクラウドデザインパターン - JEITA講演 - SORACOM, INC
 
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...都元ダイスケ Miyamoto
 
Cloudian presentation for Cassandra Conference 2012 in Tokyo
Cloudian presentation for Cassandra Conference 2012 in TokyoCloudian presentation for Cassandra Conference 2012 in Tokyo
Cloudian presentation for Cassandra Conference 2012 in TokyoCLOUDIAN KK
 
Microsoft Azure Update 20151112
Microsoft Azure Update 20151112Microsoft Azure Update 20151112
Microsoft Azure Update 20151112Ayako Omori
 
Architecting+for+high+availability
Architecting+for+high+availabilityArchitecting+for+high+availability
Architecting+for+high+availabilityanzhong70
 
サーバーレスアプリケーションの作り方
サーバーレスアプリケーションの作り方サーバーレスアプリケーションの作り方
サーバーレスアプリケーションの作り方Yoichi Toyota
 
CloudStack Overview@OSC2012Fukuoka
CloudStack Overview@OSC2012FukuokaCloudStack Overview@OSC2012Fukuoka
CloudStack Overview@OSC2012FukuokaSatoshi Shimazaki
 
華麗なるElastic Beanstalkでの環境構築
華麗なるElastic Beanstalkでの環境構築華麗なるElastic Beanstalkでの環境構築
華麗なるElastic Beanstalkでの環境構築Takehito Tanabe
 

Similar to S3 Client-Side Encryption by AWS SDK for Java/Ruby (20)

これからのクラウドネイティブアプリケーションの話をしよう
これからのクラウドネイティブアプリケーションの話をしようこれからのクラウドネイティブアプリケーションの話をしよう
これからのクラウドネイティブアプリケーションの話をしよう
 
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or ServerlessRunning Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
 
20120528 aws meister-reloaded-awssd-kforjava-public
20120528 aws meister-reloaded-awssd-kforjava-public20120528 aws meister-reloaded-awssd-kforjava-public
20120528 aws meister-reloaded-awssd-kforjava-public
 
20140621 july techfesta (JTF2014) 突発**むけAWS
20140621 july techfesta (JTF2014) 突発**むけAWS20140621 july techfesta (JTF2014) 突発**むけAWS
20140621 july techfesta (JTF2014) 突発**むけAWS
 
Amazon VPCトレーニング-VPCの説明
Amazon VPCトレーニング-VPCの説明Amazon VPCトレーニング-VPCの説明
Amazon VPCトレーニング-VPCの説明
 
CloudStack Overview
CloudStack OverviewCloudStack Overview
CloudStack Overview
 
Amazon Web Services(AWS)とcloudpack について
Amazon Web Services(AWS)とcloudpack についてAmazon Web Services(AWS)とcloudpack について
Amazon Web Services(AWS)とcloudpack について
 
CommVault with Cloudian for Data Backup and Archive
CommVault with Cloudian for Data Backup and ArchiveCommVault with Cloudian for Data Backup and Archive
CommVault with Cloudian for Data Backup and Archive
 
AWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDKAWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDK
 
【セミナー講演資料】オープンクラウドソリューションのご紹介
【セミナー講演資料】オープンクラウドソリューションのご紹介【セミナー講演資料】オープンクラウドソリューションのご紹介
【セミナー講演資料】オープンクラウドソリューションのご紹介
 
[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編
[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編
[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編
 
AWSクラウドデザインパターン - JEITA講演 -
AWSクラウドデザインパターン - JEITA講演 - AWSクラウドデザインパターン - JEITA講演 -
AWSクラウドデザインパターン - JEITA講演 -
 
PHP on Cloud
PHP on CloudPHP on Cloud
PHP on Cloud
 
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
 
Cloudian presentation for Cassandra Conference 2012 in Tokyo
Cloudian presentation for Cassandra Conference 2012 in TokyoCloudian presentation for Cassandra Conference 2012 in Tokyo
Cloudian presentation for Cassandra Conference 2012 in Tokyo
 
Microsoft Azure Update 20151112
Microsoft Azure Update 20151112Microsoft Azure Update 20151112
Microsoft Azure Update 20151112
 
Architecting+for+high+availability
Architecting+for+high+availabilityArchitecting+for+high+availability
Architecting+for+high+availability
 
サーバーレスアプリケーションの作り方
サーバーレスアプリケーションの作り方サーバーレスアプリケーションの作り方
サーバーレスアプリケーションの作り方
 
CloudStack Overview@OSC2012Fukuoka
CloudStack Overview@OSC2012FukuokaCloudStack Overview@OSC2012Fukuoka
CloudStack Overview@OSC2012Fukuoka
 
華麗なるElastic Beanstalkでの環境構築
華麗なるElastic Beanstalkでの環境構築華麗なるElastic Beanstalkでの環境構築
華麗なるElastic Beanstalkでの環境構築
 

More from 真吾 吉田

SageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したいSageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したい真吾 吉田
 
JAWSUG_yokohama_10yrs
JAWSUG_yokohama_10yrsJAWSUG_yokohama_10yrs
JAWSUG_yokohama_10yrs真吾 吉田
 
アウトプットしよう これはあなたの成長の物語
アウトプットしよう これはあなたの成長の物語アウトプットしよう これはあなたの成長の物語
アウトプットしよう これはあなたの成長の物語真吾 吉田
 
コミュニティ型組織でヒーローを育てる
コミュニティ型組織でヒーローを育てるコミュニティ型組織でヒーローを育てる
コミュニティ型組織でヒーローを育てる真吾 吉田
 
仮想サーバは、もう不要?!今からIoTやるなら 「サーバレス・コンピューティング」
仮想サーバは、もう不要?!今からIoTやるなら「サーバレス・コンピューティング」仮想サーバは、もう不要?!今からIoTやるなら「サーバレス・コンピューティング」
仮想サーバは、もう不要?!今からIoTやるなら 「サーバレス・コンピューティング」真吾 吉田
 
アジャイルな開発組織のOKRベストプラクティス&アンチパターン
アジャイルな開発組織のOKRベストプラクティス&アンチパターンアジャイルな開発組織のOKRベストプラクティス&アンチパターン
アジャイルな開発組織のOKRベストプラクティス&アンチパターン真吾 吉田
 
Azureをフル活用したサーバーレスの潮流について
Azureをフル活用したサーバーレスの潮流についてAzureをフル活用したサーバーレスの潮流について
Azureをフル活用したサーバーレスの潮流について真吾 吉田
 
AWS re:Invent 2018 re:Cap
AWS re:Invent 2018 re:CapAWS re:Invent 2018 re:Cap
AWS re:Invent 2018 re:Cap真吾 吉田
 
多様性・アジャイル・クラウドで変化に強いIT組織を作る
多様性・アジャイル・クラウドで変化に強いIT組織を作る多様性・アジャイル・クラウドで変化に強いIT組織を作る
多様性・アジャイル・クラウドで変化に強いIT組織を作る真吾 吉田
 
宇宙一早い AWS re:Invent 2018 re:cap
宇宙一早い AWS re:Invent 2018 re:cap宇宙一早い AWS re:Invent 2018 re:cap
宇宙一早い AWS re:Invent 2018 re:cap真吾 吉田
 
Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018真吾 吉田
 
CYDASアジャイル開発状況報告LT
CYDASアジャイル開発状況報告LTCYDASアジャイル開発状況報告LT
CYDASアジャイル開発状況報告LT真吾 吉田
 
AWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャAWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャ真吾 吉田
 
Kubernetesのない世界 すべてがサーバーレスになる
Kubernetesのない世界 すべてがサーバーレスになるKubernetesのない世界 すべてがサーバーレスになる
Kubernetesのない世界 すべてがサーバーレスになる真吾 吉田
 
Storylineでデザインする心地よい会話体験
Storylineでデザインする心地よい会話体験Storylineでデザインする心地よい会話体験
Storylineでデザインする心地よい会話体験真吾 吉田
 
Kubernetes on Alibaba Cloud
Kubernetes on Alibaba CloudKubernetes on Alibaba Cloud
Kubernetes on Alibaba Cloud真吾 吉田
 
Alexaスキルを作ろう
Alexaスキルを作ろうAlexaスキルを作ろう
Alexaスキルを作ろう真吾 吉田
 

More from 真吾 吉田 (20)

SageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したいSageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したい
 
JAWSUG_yokohama_10yrs
JAWSUG_yokohama_10yrsJAWSUG_yokohama_10yrs
JAWSUG_yokohama_10yrs
 
アウトプットしよう これはあなたの成長の物語
アウトプットしよう これはあなたの成長の物語アウトプットしよう これはあなたの成長の物語
アウトプットしよう これはあなたの成長の物語
 
ServerlessとNoOps
ServerlessとNoOpsServerlessとNoOps
ServerlessとNoOps
 
コミュニティ型組織でヒーローを育てる
コミュニティ型組織でヒーローを育てるコミュニティ型組織でヒーローを育てる
コミュニティ型組織でヒーローを育てる
 
仮想サーバは、もう不要?!今からIoTやるなら 「サーバレス・コンピューティング」
仮想サーバは、もう不要?!今からIoTやるなら「サーバレス・コンピューティング」仮想サーバは、もう不要?!今からIoTやるなら「サーバレス・コンピューティング」
仮想サーバは、もう不要?!今からIoTやるなら 「サーバレス・コンピューティング」
 
アジャイルな開発組織のOKRベストプラクティス&アンチパターン
アジャイルな開発組織のOKRベストプラクティス&アンチパターンアジャイルな開発組織のOKRベストプラクティス&アンチパターン
アジャイルな開発組織のOKRベストプラクティス&アンチパターン
 
Azureをフル活用したサーバーレスの潮流について
Azureをフル活用したサーバーレスの潮流についてAzureをフル活用したサーバーレスの潮流について
Azureをフル活用したサーバーレスの潮流について
 
AWS re:Invent 2018 re:Cap
AWS re:Invent 2018 re:CapAWS re:Invent 2018 re:Cap
AWS re:Invent 2018 re:Cap
 
多様性・アジャイル・クラウドで変化に強いIT組織を作る
多様性・アジャイル・クラウドで変化に強いIT組織を作る多様性・アジャイル・クラウドで変化に強いIT組織を作る
多様性・アジャイル・クラウドで変化に強いIT組織を作る
 
宇宙一早い AWS re:Invent 2018 re:cap
宇宙一早い AWS re:Invent 2018 re:cap宇宙一早い AWS re:Invent 2018 re:cap
宇宙一早い AWS re:Invent 2018 re:cap
 
Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018
 
CYDASアジャイル開発状況報告LT
CYDASアジャイル開発状況報告LTCYDASアジャイル開発状況報告LT
CYDASアジャイル開発状況報告LT
 
AWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャAWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャ
 
Kubernetesのない世界 すべてがサーバーレスになる
Kubernetesのない世界 すべてがサーバーレスになるKubernetesのない世界 すべてがサーバーレスになる
Kubernetesのない世界 すべてがサーバーレスになる
 
Storylineでデザインする心地よい会話体験
Storylineでデザインする心地よい会話体験Storylineでデザインする心地よい会話体験
Storylineでデザインする心地よい会話体験
 
Kubernetes on Alibaba Cloud
Kubernetes on Alibaba CloudKubernetes on Alibaba Cloud
Kubernetes on Alibaba Cloud
 
Alexaスキルを作ろう
Alexaスキルを作ろうAlexaスキルを作ろう
Alexaスキルを作ろう
 
Serverless for VUI
Serverless for VUIServerless for VUI
Serverless for VUI
 
VUXデザイナー
VUXデザイナーVUXデザイナー
VUXデザイナー
 

Recently uploaded

論文紹介: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
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: 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
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: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
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)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)

論文紹介: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...
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: 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
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介: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
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

S3 Client-Side Encryption by AWS SDK for Java/Ruby

  • 1. Code the Clouds Mix-up Vol.1 S3 Client-Side Encryption for Big Data 〜コンテンツグラビティの実践〜 2014.10.3 吉田真吾 @yoshidashingo
  • 2. 自己紹介 ☁ cloudpack エバンジェリスト ソリューションアーキテクト – コンサルティング – AWS設計・移行支援 – テクニカルマーケティング ☁ バックグラウンド – GISシステム,証券システム基盤 の開発を経て 2013.1より現職
  • 3. 40サービス EC2 EMR Kinesis WorkSpaces CloudWatch Direct Connect IAM Route 53 SNS SES SimpleDB CloudFront VPC Redshift ElastiCache Elastic SWF CloudFormation Transcoder CloudTrail SQS Storage Data Gateway Pipeline DynamoDB Elastic Beanstalk Glacier OpsWorks S3 Import/ Export RDS CloudSearch Mechanical Turk Management Console Amazon Web Services
  • 4. SDK Toolkit Java Ruby .NET PHP Python (boto) JavaScript Amazon Web Services Node.js iOS Android AWS Toolkit for Visual Studio AWS Toolkit for Eclipse AWS Toolkit for Windows PowerShell AWS CLI
  • 5. Amazon S3 1B〜5TB Unlimited Fault Torelance 99.999999999 % High Availability 99.99 %
  • 6. コンテンツグラビティ Content Gravity ☁ 「データを処理の近くに置く」 – あるいは処理をデータの近くに集める – リアルタイム(Real Time), 弾力性(Elasticity) ☁ AWSでは – Object Storage Amazon S3 – RDBMS Amazon RDS – NoSQL Database Amazon DynamoDB – Data Warehouse Amazon Redshift などなどにデータを集約できる
  • 7. あつめて Data Integration 可視化 Visualization
  • 8. Data Integration ☁ 大量に収集する – 1日に数百GB〜数十TBとか現実ある ☁ リアルタイムに収集する – 粒度の小さい処理をたくさん実行する ☁ セキュアに収集する – ノード間のファイアウォール – 経路の暗号化 (IPSec) – ストレージの暗号化 – データの暗号化
  • 9. Use Case: On-premise to Redshift NACLs SG Bucket Policy PUT Server Replicator S3 (EC2) GET COPY Redshift BI Tools ☁ ノード間のファイアウォール ☁ 経路の暗号化 (IPSec) ☁ ストレージの暗号化 NACLs SG IPsec VPN IPsec VPN
  • 10. S3のデータを暗号化する方式 ☁ Client-Side Encryption – 独自の鍵を利用できる ☁ Server-Side Encryption – 鍵管理をAWSにまかせられる ☁ Server-Side Encryption with Customer-Provided Encryption Keys – 独自の鍵を渡して暗号化する ☁ 独自に暗号化して格納 – 暗号化制御をすべて掌握できる
  • 11. Client-Side Encryption (CSE) ☁ AWS SDK for Java Ruby でサポート – プライベート暗号キーを作成する(手元で管理) – エンベロープ暗号キーでファイルを暗号化 – エンベロープ暗号キーをプライベート暗号キーで暗号化 – 暗号化したファイルのメタデータに暗号化済みエンベロープキーを付 与してアップロードする – psqlでRedshiftに接続する – ファイルとプライベート暗号キーをパラメータに渡してCOPY文を発行 する
  • 12. Java (暗号キーの生成) Create256BitAESsecret.java ここ見てね ↓ http://yoshidashingo.hatenablog.com/entry/2014/08/10/193631
  • 13. Java (アップロードプロセス) UploadDirectoryUsingSymmetricKeyClientSideEncryption.java ここ見てね ↓ http://yoshidashingo.hatenablog.com/entry/2014/08/10/193631
  • 14. RedshiftにCOPY mydb=# COPY test FROM 's3://bucketname//test.csv' CSV credentials 'aws_access_key_id=xxxxxxxxxx;aws_secret_access_key=xxxxxxxx xx;master_symmetric_key=private_key' delimiter ',' encrypted;
  • 15. AWS SDK for Ruby でも
  • 16. Ruby (暗号キー生成アップロード) # Usage: ruby s3clienc_write.rb bucketname filename require 'rubygems' require 'aws-sdk' require 'openssl' bucketname = ARGV[0] filename = ARGV[1] keyname = 'key_' + bucketname + '_' + filename data = File.open(filename) # Creates and store a string key symmetric_key = OpenSSL::Cipher::AES256.new(:CBC).random_key File.open(keyname, 'wb') do |file| file.write(symmetric_key) end options = { :encryption_key = symmetric_key } s3_object = AWS.s3.buckets[bucketname].objects[filename] s3_object.write(data, options)
  • 17. Ruby (ダウンロード) # Usage: ruby s3clienc_read.rb bucketname filename require 'rubygems' require 'aws-sdk' require 'openssl' s3=AWS::S3.new bucketname = ARGV[0] filename = ARGV[1] keyname = 'key_' + bucketname + '_' + filename symmetric_key = File.read(keyname) options = { :encryption_key = symmetric_key } s3_object = AWS.s3.buckets[bucketname].objects[filename] File.open(filename, 'wb') do |file| s3_object.read(options) do |chunk| file.write(chunk) end end
  • 18. AWS SDK for Ruby V2(core)の対応 ☁ 今のところ、Server-Side Encryption with Customer-Provided Encryption Keys (SSE-C)しかない – 経路上での「データの暗号化」がされない – 経路の暗号化で担保するか、納得いかなけれ ばJavaで ☁ 参考 – http://docs.aws.amazon.com/sdkforruby/ api/frames.html
  • 19. Read Later ☁ AWS SDK for JavaでS3クライアント暗号化 をしたCSVをAmazon RedshiftにCOPY(イン ポート)する http://yoshidashingo.hatenablog.com/entry/ 2014/08/10/193631 ☁ AWS SDK for RubyでS3クライアント暗号化 を試す http://yoshidashingo.hatenablog.com/entry/ 2014/08/08/212646
  • 20.
  • 21.
  • 22.