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

Mã hóa và toàn vẹn CSDL với trong oracle (ppt)

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 (676.23 KB, 30 trang )

LOGO
www.themegallery.com

 
 !"#$%
#&'(
')#*+,-,./0123--3+45
')#*+,-,./0123--3+45
#640178#29'9')
7#-++-,#:0
3/24/15 1
LOGO
;02
TỔNG QUAN VỀ MÃ HÓA VÀ TOÀN VẸN DỮ LIỆU 1
MÃ HÓA DỮ LIỆU ORACLE BẰNG TDE2
CẤU HÌNH MÃ HÓA VÀ TOÀN VẸN DỮ LIỆU MẠNG

3
CHƯƠNG TRÌNH DEMO 4
3/24/152
LOGO
4#<=>')#*+,-,./012
>?>?@A%BC%DEDFGHI
>?>?>?BC%GHI
>?>?J?BEDFGHI
>?J?4KLKC%GHI?
>?J?>?'C%LM
>?J?J?'C%NHOPQR%
>?J?S?'C%KTUVGHI

3/24/153


LOGO
Tổng quan về mã hóa và toàn vẹn dữ liệu
>?>?>?BC%GHI

Thuật toán mật mã đề cập tới nghành khoa học nghiên cứu về mã hoá và giải mã thông tin. Cụ thể hơn là
nghiên cứu các cách thức chuyển đổi thông tin từ dạng rõ (clear text) sang dạng mã (cipher text) và ngược lại
- Ngày nay với sự phát triển của công nghệ và an toàn dữ liệu tầm nhận thức về mã hóa dữ liệu đối với mỗi
cá nhân và tổ chức ngày càng được nâng cao.
- Mã hóa dữ liệu là một chìa khóa kiểm soát an toàn dữ liệu rất nhiều sự quan tâm của các tổ chức trong
lưu trữ và truyền dữ liệu.
- Khi mã hóa dữ liệu ở mức cơ sở dữ liệu, có nhiều vùng nơi mà việc mã hóa được áp dụng và quản lý.
3/24/154
LOGO
Tổng quan về mã hóa và toàn vẹn dữ liệu
>?>?>?BC%GHI
4KHWC%QKUXM
- Mã hóa đối xứng
- Mã hóa bất đối xưng
- Hàm hash
3/24/155
LOGO
Tổng quan về mã hóa và toàn vẹn dữ liệu
>?>?J?BEDFGHI

là dữ liệu hay thông tin không bị thay đổi, mất mát trong khi
lưu trữ hay truyền tải. Nói cách khác tính toàn vẹn là tính không bị hiệu chỉnh của dữ liệu. Đây là 1 trong 4 khía cạnh
trong an toàn điện tử: authentication, nonrepudiation, reliability/privacy, usefulness.
Ngày nay các cuộc tấn công vào tính toàn vẹn của dữ liệu ngày càng tăng nhanh với hai tấn công chủ yếu là:
- Tấn công sửa đổi dữ liệu
- Tấn công replay.

3/24/156
LOGO
Tổng quan về mã hóa và toàn vẹn dữ liệu
>?>?J?BEDFGHI

3/24/157
Quy tắc toàn vẹn dữ liệu
- Quy tắc Null
- Giá trị cột duy nhất
- Giá trị khóa chính
- Quy tắc tham chiếu toàn vẹn
LOGO
CHƯƠNG 1: MÃ HÓA VÀ TOÀN VẸN DỮ LIỆU
>?J?4KLKC%GHI?

 
- Ưu điểm: Chủ động xây dựng modul, mã hóa và giải mã
- Nhược điểm: Mất công viết các modul, Không tận dụng được các modul có sắn trong DBMS

!"#$%&'()*(%+
- Ưu điểm: Đơn giản
- Nhược điểm: Nếu mất khóa thì toàn bộ dữ liệu bị mất

,-./01,
- Ưu điểm: Tận dụng các modul mã hóa, giải mã trong Oracle và tốc độ nhanh
- Nhược điểm: Phức tạp, lưu trữ và phân phối khóa phức tạp
3/24/158
LOGO
4#<=J')#*+/012-3+45YZ5
J?>?7I5

J?J?4TK[A\H]^%
J?S?#WEQ_K`%5
J?a?4bc-%KHOd%HHOE
J?e?fMC%5
3/24/159
LOGO
4#<=J')#*+/012-3+45YZ5
J?>?7I5
%Ug%OE%E%5KgEh5ilà cơ chế mã hóa dữ liệu trong suốt với người dùng cuối.


2#3%,456*789
- TDE chỉ mã hóa dữ liệu ở mức File, dữ liệu khi lưu trong File sẽ ở dạng mã hóa. Cách
này giúp File dữ liệu bị đánh cắp nếu không có khóa thì không xem được.
- Người dùng có quyền truy cập; ví dụ quyền SELECT, đến dữ liệu thì mặc nhiên sẽ
nhìn thấy dữ liệu ở dạng bản rõ.
3/24/1510
LOGO
4#<=J')#*+/012-3+45YZ5
J?J?4TK[A\H]^%

TDE dùng “ví” (Wallet) để quản lý khóa
Ví trong Oracle cũng vậy, ví là một tập tin nhị phân và thường dùng để lưu khóa giải mã, ta gọi khóa
này là MK (Master Key).

:9
TDE lại mã hóa dữ liệu bảng trong Database với khóa CK (Column-Key, lưu ý mỗi bảng sẽ chỉ
có 1 khóa CK dù mã hóa nhiều cột). Oracle Database không lưu khóa CK ở dạng bản rõ, mà
Oracle lưu bản mã của khóa CK; tức là lưu kết quả của hàm này encrypt (CK, MK).
3/24/1511

LOGO
4#<=J')#*+/012-3+45YZ5
J?J?4TK[A\H]^%
[EcjOGHIC%5U%
1. Người dùng xem dữ liệu mã hóa TDE
2. Oracle đọc khóa MK từ Wallet lưu ngoài Database
3. Dùng mã MK giải mã CK trong database:
CK = decrypt (encrypted_CK, MK).
4. Dùng khóa CK để giải mã dữ liệu bảng mã hóa trong Database.
3/24/1512
LOGO
4#<=J')#*+/012-3+45YZ5
J?S?#WEQ_K`%5
Hoạt động của TDE
3/24/1513
LOGO
4#<=J')#*+/012-3+45YZ5
J?a?4bc-%KHOd%HHOE
;5<,=92>?@5A.BC
;5<,D9EA
;5<,F9/"#A
;5<,G92>?H#I%/A
3/24/1514
LOGO
4#<=S4k2#l#')#*+,-,./012'm0/+405,n5353
S?>?7fKWECDEDF
S?J?\EoCDEDF
S?S?4DQpEChEqKri
S?a?4bcKKEsUtCDEDFUXM-%KHOOE'%%O
3/24/1515

LOGO
4#<=S4k2#l#')#*+,-,./012'm0/+405,n5353
S?>?7fKWECDEDF
- Trong bất kỳ kết nối mạng nào, nó đều có khả năng hỗ trợ cho cả client và server nhiều hơn một thuật toán mã hoá và
toàn vẹn.
- Khi một kết nối được tạo, server sẽ chọn thuật toán, nếu có, sẽ chọn một trong các thuật toán trong file sqlnet.ora.
- Server tìm kiếm thuật toán phù hợp có sẵn trên cả client và server và đưa nó làm thuật toán đầu tiên trong danh sách sở
hữu của nó và cả danh sách của client.
+ Nếu một bên kết nối không chỉ ra một danh sách thuật toán, tất cả thuật toán được cài đặt ở bên đó đều
được chấp nhận.
+ Kết nối thất bại với lỗi ORA-12650 nếu một trong 2 bên chỉ định một thuật toán mà nó chưa được cài
đặt.
3/24/1516
LOGO
4#<=S4k2#l#')#*+,-,./012'm0/+405,n5353
S?J?\EoCDEDF
Để xem xét nên bật mã hoá hay toàn vẹn, bạn có thể chỉ định 4 giá trị có thể cho Các thông số cấu hình
mã hoá và toàn vẹn Oracle Advanced Security. 4 giá trị này lắng nghe theo thứ tự tăng độ bảo mật:

Rejected

Accepted (Giá trị mặc định của các thông số).

Requested

Required
3/24/1517
LOGO
S?J?\EoCDEDF
S?J?>?3OuOKEO


2JK@(E*L%M*,E@, (N%+O+,(:*K,:,4C
Trong kich bản này, bên này của kết nối không chỉ địch dịch vụ bảo mật.
- Nếu bên kia cài đặt giá trị Required, kết nối sẽ chấm dứt với lỗi ORA-12560.
- Nếu bên kia cài đặt giá trị Requested, Accepted hoặc Rejected, kết nỗi sẽ tiếp thục mà không có lỗi và
không kích hoạt dịch vụ bảo mật.
3/24/1518
LOGO
S?J?\EoCDEDF
S?J?J?+KKOgEO

2JK@#3*,E@, (N%+,4P,:,4&(:*.
Trong kịch bản này, bên này của kết nối không yêu cầu dịch vụ bảo mật nhưng nó được kích hoạt nếu bên kia cài đặt giá trị Required
hoặc Requested.
-
Nếu bên kia cài đặt Required hoặc Requested và một thuật toán mã hoá và toàn vẹn phù hợp được tìm thấy, kết nối sẽ tiếp tục mà
không có lỗi và dịch vụ bảo mật được kích hoạt.
-
Nếu bên kia cài đặt giá trị Required và không có thuật toán nào khớp được tìm thấy thì kết nối sẽ chấm dứt với lỗi ORA-12650.
- Nếu bên k19ia cài đặt giá trị Requested và không có thuật toán nào khớp được tìm thấy hoặc nếu bên kia cài đặt giá trị Accepted
hoặc Rejected, kết nối sẽ tiếp tục mà không có lỗi và dịch vụ bảo mật không được kích hoạt
3/24/1519
LOGO
S?J?\EoCDEDF
S?J?S?3OAOUEO

2JK@#3*,E@, (N%+(:*#Q6C
-
Nếu bên này của kết nối chỉ rõ mong muốn dịch vụ bảo mật nhưng không cần thiết. Dịch vụ bảo
mật sẽ được kích hoạt nếu bên kia chỉ rõ Accepted, Requested hoặc Required.

-
Nếu có các thuật toán phù hợp có sẵn ở bên kia, nếu không thì dịch vụ sẽ không được kích hoạt.
Nếu bên kia chỉ định Required và không có thuật toán nào khớp, kết nối sẽ thất bại.
3/24/1520
LOGO
S?J?\EoCDEDF
S?J?a?3OuOKEO

4rEDQv^fKWEKMw\oEpK^[Et.
- Nếu bên này của kết nối chỉ rõ dịch vụ bảo mật cần được kích hoạt. Kết nối thất bại nếu bên
còn lại chỉ định Rejected hoặc nếu không có thuật toán nào tương thích ở bên đó.
3/24/1521
LOGO
4#<=S4k2#l#')#*+,-,./012'm0/+405,n5353
S?S?4DQpEChEqKri
-
Các mầm khoá khác nhau được dùng để phát ra một số ngẫu nhiên trên client hoặc server.
-
Một trong số các mầm khoá có thể được dùng như là mầm mã hoá định nghĩa người dùng.
-
Cái này cài đặt với thông số sqlnet.crypto_seed trong file sqlnet.ora.
-
Nó có thể gồm 10 đến 70 ký tự và thay đổi trong bất kỳ thời điểm nào.
-
Trao đổi khoá Diffe-Hellman dùng số ngẫu nhiên để phát ra những khoá phiên duy nhất cho mỗi
phiên kết nối.
3/24/1522
LOGO
S?a?4bcKKEsUtCDEDFUXM-%KHOOE'%%O?
1. Dùng Oracle Net Manager để cấu hình mã hoá trên client và server

Điều hướng đến Oracle Advanced Security profile, hiện tab Oracle Advanced Security:
4cCE4HOEDUOO
3/24/1523
LOGO
2. Chọn Encryption tab.
3. Tuỳ vào hệ thống ở trên bạn cấu hình, chọn client hoặc server từ danh sách xổ xuống.
4. Ở Encryption Type, chọn một trong các giá trị:
- Requested
- Required
- Accepted
- Rejected
5. (Tuỳ chọn) Trong ô Encryption Seed, nhập ngẫu nhiên các ký tự (trong khoảng 10-70), mầm mã hoá cho
client có thể không cần giống trên server.
6. Chọn các thuật toán mã hoá trong Available Methods. Di chuyển nó đến Selected Methods bằng cách chọn
button [>].
3/24/1524
LOGO
7. Chọn File > Save Network Configuration. File sqlnet.ora sẽ được update.
8. Lặp lại quá trình này cho cấu hình mã hoá trên hệ thống khác. File sqlnet.ora trên 2 hệ thống nên chứa các dòng sau:
4cCE4HOEDUOO
3/24/1525

×