Tải bản đầy đủ (.pptx) (43 trang)

Side-Channel Attacks

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.32 MB, 43 trang )

Side Channels
Attack
Thành viên
Nguyễn Văn Quân
Phạm Minh Thành
Đinh Trần Thái Sơn
Nguyễn Duy Tài
Mục lục

Giới thiệu

Side-Channel Attacks

Timing Attacks

Power Analysis

Information leaking

Cache Attacks

Phòng tránh
Side-channels

Có những thông tin bị lộ ra trong quá trình thực
thi.

Ví dụ: Các tên trộm phá khoá bằng cách nghe các
âm thanh từ khoá két sắt.

Tương tự,trong bảo mật, các hacker quan sát các


thông tin về thời gian/năng lượng,… để qua mặt
các bước bảo mật.
Ví dụ
Các thông tin có thể khai thác từ một máy cá nhân:

Thời gian

Nhiệt độ

Âm thanh

Cache

Năng lượng

Sóng điện


Định nghĩa Side-channels attack

Wiki: side channel attack is any attack based on
information gained from the
physical implementation of a cryptosystem,
rather than brute force or theoretical weaknesses
in the algorithms
( />
Sử dụng nhiều nhất trong việc phân tích mật mã.
Phân tích mật mã bằng Side Channel

Sự mã hoá:

Plaintext
Cipher
Ciphertext
Key
Phân tích mật mã bằng Side Channel

Sự mã hoá trong thực tế:
Plaintext
Cipher
Ciphertext
Key
Side
Channels
Phân tích mật mã bằng Side Channel

Side Channel Cryptanalysis: quan sát các “sản phẩm” phát ra từ hệ
thống mã hoá trong quá trình hoạt động

Các “kịch bản” tấn công:

Timing Attacks

Power Analysis

Information Leaking

Cache Attacks

Sound Analysis



Timing Attack
Nguyễn Văn Quân
Timing Attacks

Sử dụng thông tin về thời gian thực thi của hệ
thống để phân tích.

Timing Attacks dựa trên việc đo thời gian cần
cho một đơn vị để thực thi. Thông tin này có thể
dẫn đến thông tin về các dữ liệu bí mật.
Password verification

Giả sử ta có hàm pcmp dùng để kiểm tra password như sau:
Func pcmp(string pass,string input)
if pass.length != input.length return False
int i = 0
for c in pass :
if(c != input[i]): return False
else : i = i + 1
return True
Attacking…..
1. Thử lần lượt nhiều password, với độ dài khác
để xác định độ dài password.
2. Thử với từng kí tự để xác định pass nhờ đo thời
gian thực thi.
HOW????
How to fix it?

Func pcmp(string ori_pass,string input)

result = True
int i = 0
if input.length == 0 : return False
if (input.length > ori_pass.length) or (input.length) < ori_pass.length):
input = ori_pass
result = False
for c in ori_pass :
result = result & (input[i] == c)//phép AND
i = i + 1
return result
Power Analysis
Phạm Minh Thành
Power analysis

Là một dạng side channel attack

Dựa vào sự tiêu thụ năng lượng của phần cứng

Không xâm phạm vào thiết bị

Trích xuất những khóa đã mã hóa, các thông tin
bí mật khác từ thiết bị
Lịch sử

Được giới thiệu vào năm 1998

Bởi Paul Kocher, Joshua Jaffe và Benjamin Jun

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×