Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ciecleci/androidのOpenSSLに気をつけよう
Search
yamacraft
October 27, 2017
Technology
0
710
ciecleci/androidのOpenSSLに気をつけよう
2017年10月27日(金)に開催されたshibuya.apk #19にて発表した資料になります
yamacraft
October 27, 2017
Tweet
Share
More Decks by yamacraft
See All by yamacraft
なぜアプリのデザインとその実装はうまくいかないのか?
yamacraft
0
210
あんまり触れられてない気がする、Kotlin1.3の ありがたい追加機能
yamacraft
0
3k
ありがたいUIをもっと大事にしたい
yamacraft
2
2.3k
Quickstart-android/mlkitについて
yamacraft
2
4.7k
Firebase関連をCIでデプロイするときのTips
yamacraft
0
5k
開発用途で Realtime Databaseを 導入した話
yamacraft
2
4.6k
Realtime Databaseに向いてる・向いてないサービス
yamacraft
0
930
社内用アプリでFirebaseを使っている話
yamacraft
2
2k
弊社のアプリ開発CI環境
yamacraft
0
1.2k
Other Decks in Technology
See All in Technology
From Natural Language to K8s Operations: The MCP Architecture and Practice of kubectl-ai
appleboy
0
200
可観測性は開発環境から、開発環境にもオブザーバビリティ導入のススメ
layerx
PRO
0
240
ストレージエンジニアの仕事と、近年の計算機について / 第58回 情報科学若手の会
pfn
PRO
3
820
Dify on AWS 環境構築手順
yosse95ai
0
120
プレイドのユニークな技術とインターンのリアル
plaidtech
PRO
1
350
[2025年10月版] Databricks Data + AI Boot Camp
databricksjapan
1
260
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
13
82k
混合雲環境整合異質工作流程工具運行關鍵業務 Job 的經驗分享
yaosiang
0
180
JSConf JPのwebsiteをGatsbyからNext.jsに移行した話 - Next.jsの多言語静的サイトと課題
leko
2
180
Introdução a Service Mesh usando o Istio
aeciopires
1
290
オブザーバビリティが育むシステム理解と好奇心
maruloop
2
1.1k
事業開発におけるDify活用事例
kentarofujii
5
1.4k
Featured
See All Featured
Music & Morning Musume
bryan
46
6.9k
How GitHub (no longer) Works
holman
315
140k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
A designer walks into a library…
pauljervisheath
209
24k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Become a Pro
speakerdeck
PRO
29
5.6k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Side Projects
sachag
455
43k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
How to Ace a Technical Interview
jacobian
280
24k
The Language of Interfaces
destraynor
162
25k
Transcript
circleci/androidͷ OpenSSLʹؾΛ͚ͭΑ͏ @yamacraft
profile • @yamacraft (Wataru Yamada) • Mobile Application Engineer •
LeadingMark, inc • team Y.G.E.(private) • Ұ෦دߘ → → →
αϯϓϧϓϩδΣΫτ https://github.com/yamacraft/android.RequestPermissions
લஔ͖ • ઌ΄ͲͷϓϩδΣΫτCircle CI 1.0ͰϏϧυ͢ΔΈΛೖ Ε͍ͯͨ • Circle CI 2.0ͩͱϏϧυૣ͘ͳΔͱฉ͍ͨͷͰɺࢼ͠ʹରԠ
ͯ͠ΈΑ͏ͱࢥͬͨ • ͪͳΈʹൿಗใOpenSSLͰ҉߸Խͨ͠ϑΝΠϧʹೖΕͯ ͍Δʢ1.0࣌ʹެ͕ࣜҊͯͨ͠ํ๏Λ࠾༻ʣ • https://github.com/circleci/encrypted-files
Circle CI2.0Ͱઃఆͨ͠༰ • imageެࣜͷcircleci/androidΛ༻ • OpenSSLͰ҉߸Խͨ͠ϑΝΠϧΛ෮ݩ͠ɺγ εςϜͷڥมʹΈࠐΉ • ͋ͱ./gradlew build͢Δ͚ͩ
decryptͰ͖ͳ͍…
Ͳ͏ͯ͠… • circleci/android(apt)ͷOpenSSL 1.1.0f • mac OS(homebrew)ͷOpenSSL1.0.2l • 1.1.0͔Βޓੑʹͪΐͬͱʢ༷มߋʣ ͕͋ΔΒ͍͠…
ৄࡉ • OpenSSL1.1.0ͱҎલͷόʔδϣϯͱͷޓੑ • https://http2.try-and-test.net/openssl1_1_0_tips.html
ͰɺͲ͏ͨ͠ͷʁ • ҉߸ԽϑΝΠϧΛ࡞Δ࣌ʹɺҰํؔΛ sha256ࢦఆ͢ΔΦϓγϣϯΛࢦఆͯ͠ੜ͢ Δͱ෮߸ԽͰ͖ΔΑ͏ʹͳΔ • openssl aes-256-cbc -md sha256
-e -in secret-env-plain -out secret-env-cipher -k $KEY
ϏϧυͰ͖ͨʂ
·ͱΊ OpenSSLͷόʔδϣϯҧ͍ʹؾΛ͚ͭΑ͏ʂ
͓͠·͍