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
Network_Security_in_Android.pdf
Search
ValentineRutto
November 16, 2019
Programming
0
55
Network_Security_in_Android.pdf
ValentineRutto
November 16, 2019
Tweet
Share
More Decks by ValentineRutto
See All by ValentineRutto
Kickstarting your tech career
valentinerutto
1
42
The D in SOLID Principles
valentinerutto
0
220
Consuming Rest Api with retrofit in Android
valentinerutto
0
220
Exposing Network Result Status in MVVM
valentinerutto
0
68
Complex ui animation with Motion layout
valentinerutto
0
90
Tech Opportunities
valentinerutto
1
96
Android paging library
valentinerutto
0
250
Android Room persistence library
valentinerutto
0
160
UI/UX FOR MOBILE
valentinerutto
0
250
Other Decks in Programming
See All in Programming
Ruby で作る RISC-V CPU エミュレーター / RISC-V CPU emulator made with Ruby
hayaokimura
5
1.1k
Serving TUIs over SSH with Go
caarlos0
0
670
JAWS DAYS 2025 re_Cheers: WEB
komakichi
0
120
Road to Ruby for A Linguistics Nerd
hayat01sh1da
PRO
0
280
実践Webフロントパフォーマンスチューニング
cp20
45
10k
ビカム・ア・コパイロット
ymd65536
1
130
fieldalignmentから見るGoの構造体
kuro_kurorrr
0
140
Boast Code Party / RubyKaigi 2025 After Event
lemonade_37
0
100
VibeCoding時代のエンジニアリング
daisuketakeda
0
200
インプロセスQAにおいて大事にしていること / In-process QA Meetup
medley
0
170
GitHub Copilot for Azureを使い倒したい
ymd65536
1
330
知識0からカンファレンスやってみたらこうなった!
syossan27
5
260
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.6k
Thoughts on Productivity
jonyablonski
69
4.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.3k
The Language of Interfaces
destraynor
158
25k
How to Ace a Technical Interview
jacobian
276
23k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
KATA
mclloyd
29
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Embracing the Ebb and Flow
colly
85
4.7k
A Tale of Four Properties
chriscoyier
159
23k
GraphQLの誤解/rethinking-graphql
sonatard
71
10k
Transcript
Network Security in Android
None
KOKO is mainstreaming liquid bio-ethanol cooking fuel as a fast,
safe and affordable alternative to dirty cooking fuels such as charcoal https://kokonetworks.com
Protecting your app from reverse engineering and man in the
middle attacks
SSL certificate pinning Obfuscation with proguard
SSL Certificate pinning Why SSL Certificate pinning? to prevent man
in the middle attack What is SSL? -Secure Socket Layer - its a protocol that has always been used to encrypt and secure transmitted data between server and client (website and browser).
SSL Certificate pinning What is ssl certificate pinning? is ensuring
that any client SSL request first validates that the server’s certificate exactly matches the bundle’s certificate previously stored in the application.
SSL Certificate pinning
SSL Certificate pinning What steps do we need? • Obtaining
a certificate for the desired host (preferably the whole certificate chain). • Pin the certificate to an instance of DefaultHttpClient
SSL Certificate pinning Get certificate public key from ssllabs This
is the hashed public key of the certificate
SSL Certificate pinning
SSL Certificate pinning
SSL Certificate pinning - Failure
Obfuscation What? -is a process of creating source code in
a form that is hard for human to understand. Why? To prevent reverse engineering To reduce your app size
1. Configure your gradle file (app/gradle) 2. Use default android
proguard rules or create your own 3. Edt your rules Obfuscation Steps
Obfuscated Code
Non-obfuscated code
Resources Proguard android ssl pinning practical proguard rules
Demo….!!!!!! Demo github link
Thank you !!