Ứng dụng mật mã đồng cấu để bảo vệ quyền riêng tư dữ liệu trong Deep Learning...7 2.1 Hệ mật đồng cấu dựa trên bài toán tìm kiếm liên hợp Conjugacy Search Problem – CSP [5]...7 2.2 Mã hó
Trang 1Sinh viên thực hiện: KIỀU DUY KHÁNH
NGUYỄN MỸ HUYỀN
LÊ MINH HUYỀN
AT150328 AT150527 AT150228
Trang 2Hà Nội, 10-2021
Trang 3MỤC LỤC
DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT i
DANH MỤC HÌNH VẼ ii
PHẦN MỞ ĐẦU iii
CHƯƠNG 1 Cơ sở lý thuyết 1
1.1 Những vấn đề riêng tư trong Deep Learning 1
1.2 Giải pháp bảo vệ quyền riêng tư dữ liệu trong Deep Learning 1
1.2.1 Học máy phân tán – Federated machine learning 1
1.2.2 Quyền riêng tư khác biệt – Differential Privacy 2
1.2.3 Mã hóa đồng cấu 2
1.2.4 Tính toán bảo mật nhiều thành viên (Secure multi-party computation – SMPC) .3
1.3 Lược đồ mã hóa đồng cấu 4
1.4 Deep Learning: Mạng nơ-ron tích chập CNN 5
CHƯƠNG 2 Ứng dụng mật mã đồng cấu để bảo vệ quyền riêng tư dữ liệu trong Deep Learning 7
2.1 Hệ mật đồng cấu dựa trên bài toán tìm kiếm liên hợp (Conjugacy Search Problem – CSP) [5] 7
2.2 Mã hóa đồng cấu trong Deep Learning 8
CHƯƠNG 3 Áp dụng mã hóa đồng cấu vào mô hình mạng CNN 10
3.1 Thực nghiệm áp dụng mã hóa đồng cấu vào mô hình mạng CNN đơn giản 10
3.1.1 Kịch bản thực nghiệm 10
3.1.2 Quá trình triển khai 10
3.2 Kết quả thực nghiệm sau khi áp dụng mã hóa đồng cấu 13
3.3 Đánh giá kết quả 14
TÀI LIỆU THAM KHẢO 15
Trang 4DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT
AI Artificial Intelligence Trí tuệ nhân tạo
CNN Artificial Neural Network Mạng nơ-ron tích chập
Activation function Hàm kích hoạt
Trang 5DANH MỤC HÌNH VẼ
Hình 1.1 Các lớp của mạng CNN 6
Hình 2.1 Quy trình hoạt động của mã hóa đồng cấu trong Deep Learning 8
Hình 3.1 Mô tả bộ dữ liệu CIFAR-10 10
Hình 3.2 Mô hình CNN – mô hình huấn luyện 11
Hình 3.3 Mô hình pha mã hóa 11
Hình 3.4 Mô hình dự đoán 12
Hình 3.5 Mô hình pha giải mã 12
Hình 3.6 Kết quả đầu ra của hai mô hình (đến lớp FC) 13
Hình 3.7 Kết quả sau khi giải mã 14
Trang 6PHẦN MỞ ĐẦU
Deep Learning dựa trên các mạng nơ-ron nhân tạo đang trở thành một giải phápphổ biến cho các công việc như lập mô hình, phân loại, nhận dạng video, hình ảnh,giọng nói, văn bản cụ thể hơn là phân tích dữ liệu bệnh nhân để chẩn đoán, phân tíchthông tin người dùng, dự đoán xu thế, … Độ chính xác chưa từng thấy của phươngpháp này đã biến Deep Learning trở thành nền tảng của rất nhiều dịch vụ khác nhautrên Internet Các công ty thương mại thu thập dữ liệu người dùng trên quy mô lớn làngười hưởng lợi chính từ xu hướng này bởi sự thành công của các kỹ thuật học sâuphụ thuộc vào lượng dữ liệu đào tạo, dữ liệu càng lớn hiệu quả càng cao Việc thu thập
dữ liệu khổng lồ cần thiết cho việc học sâu tạo ra các vấn đề lớn về sự riêng tư củangười dùng Dữ liệu cá nhân có độ nhạy cảm cao như ảnh, bản ghi âm giọng nói đượccác công ty thu thập và lưu giữ vô thời hạn Người dùng không thể xóa nó cũng nhưhạn chế các mục đích mà nó được sử dụng Nếu như dữ liệu bị hạn chế thì cũng đồngnghĩa với việc một số vấn đề xã hội quan trọng sẽ không thể giải quyết bằng học máy
vì các nhà nghiên cứu không có quyền truy cập phần dữ liệu cần thiết để đào tạo Điềunày dẫn đến một thách thức đó là sự phát triển của mô hình học sâu cần phải đi cùngviệc bảo vệ sự riêng tư của dữ liệu người dùng
Một trong những phương pháp được đưa ra để giải quyết vấn đề bảo vệ quyềnriêng tư dữ liệu người dùng trong Deep Learning là Homomorphic Encryption – mãhóa đồng cấu Đây là kiểu mã hóa cho phép tính toán trên dữ liệu đã được mã hóa, dovậy việc đưa dữ liệu đã được mã hóa vào trong mô hình Deep Learning là hoàn toàn
có thể Điều này sẽ giúp các tổ chức, doanh nghiệp không cần tiết lộ bộ dữ liệu có tínhnhạy cảm mà vẫn có thể sử dụng các dịch vụ học máy, học sâu để phục vụ cho mụcđích của họ Đề tài “Ứng dụng mã hóa để đảm bảo dữ liệu riêng tư trong DeepLearning” sẽ đưa ra các khái niệm về mã hóa đồng cấu và quá trình áp dụng mã hóađồng cầu vào mô hình mạng nơ-ron học sâu đơn giản Tài liệu bao gồm các nội dungsau:
Chương 1 là nền tảng lý thuyết của đề tài, trong đó nêu ra các vấn đề liên quan đến
sự riêng tư dữ liệu trong Deep Learning và các giải pháp để bảo vệ quyền riêng tư dữ
Trang 7liệu Đồng thời đưa ra các khái niệm cơ bản về mã hóa đồng cấu và mô hình mạng họcsâu CNN đơn giản
Chương 2 sẽ trình bày về thuật toán mã hóa đồng cấu được sử dụng trong đề tài và
mô tả việc áp dụng mã hóa đồng cấu trong Deep Learning để bảo vệ quyền riêng tư dữliệu
Chương 3 sẽ mô tả quá trình thử nghiệm áp dụng mã hóa đồng cấu vào mô hìnhhọc sâu CNN, thực hiện so sánh kết quả của pha dự đoán giữa mô hình CNN trên dữliệu dạng rõ và mô hình CNN trên dữ liệu đã mã hóa và đánh giá ưu nhược điểm củagiải pháp này trong vấn đề bảo vệ quyền riêng tư dữ liệu trong Deep Learning
Trang 8
CHƯƠNG 1 Cơ sở lý thuyết
1.1 Những vấn đề riêng tư trong Deep Learning
Các mô hình học máy ngày càng phát triển trở nên phức tạp đồng nghĩa với việc nóyêu cầu một lượng lớn dữ liệu đào tạo, chính vì vậy các nhà cung cấp dịch vụ, nhàquảng cáo, các trang web… đã tìm cách để có thể thu thập được dữ liệu người dùng đểphục vụ cho từng lợi ích riêng của họ Khi chúng ta truy vấn, tìm kiếm, giao dịch muahàng, tương tác trên mạng xã hội các thông tin cá nhân của mỗi chúng ta bằng cáchnày hay cách khác, có thể ít nhiều cũng đã bị những nhà cung cấp dịch vụ nắm bắtđược chưa tính đến việc những thông tin đó có thể là những thông tin cá nhân nhạycảm Do đó, quyền riêng tư dữ liệu đang trở thành mối quan tâm đặc biệt của các tổchức và chính phủ
Trong mỗi hệ thống học sâu có thể có ba bên đóng vai trò khác nhau: bên đầu vào(chủ sở hữu hoặc người đóng góp dữ liệu), bên tính toán (bên nắm giữ tài nguyên tínhtoán hoặc mô hình học sâu) và bên kết quả (ta sẽ tạm gọi là người dùng cuối) Chủ sởhữu dữ liệu sẽ gửi dữ liệu của họ cho bên tính toán thực hiện các tác vụ được yêu cầu,kết quả đầu ra sau đó sẽ được chuyển cho người dùng cuối để thử nghiệm và ứngdụng Nếu cả ba vai trò này được đảm nhận bởi cùng một thực thể thì quyền riêng tưđược bảo toàn với điều kiện thực thể đó đáng tin cậy Thực tế, không phải công ty, tổchức nào cũng có đủ tiềm lực để đào tạo mô hình Deep Learning phục vụ cho mụcđích riêng lẻ, do vậy các vai trò trên thường được đảm nhiểm bởi từ hai hay nhiều thựcthế khác nhau Khi dữ liệu bị chuyển đổi ra bên ngoài, tính riêng tư dữ liệu cần phảiđược xem xét
1.2 Giải pháp bảo vệ quyền riêng tư dữ liệu trong Deep Learning
1.2.1 Học máy phân tán – Federated machine learning
Khái niệm về học máy liên kết [7] bắt đầu thu hút sự chú ý đáng kể vào khoảngnăm 2015 Nó thuộc về một lớp hệ thống phân tán, phi tập trung dựa trên nguyên tắcthực thi từ xa - nghĩa là phân phối các bản sao của thuật toán học máy đến các trangweb hoặc nơi chứa dữ liệu, sau đó thực hiện lặp lại huấn luyện cục bộ và trả kết quả
Trang 9tính toán vào kho lưu trữ trung tâm để cập nhật thuật toán chính Lợi ích chính mà điềunày mang lại đó là chủ sở hữu không cần chia sẻ dữ liệu của mình ra bên ngoài mà các
mô hình thuật toán vẫn có thể được đào tạo dựa trên dữ liệu đấy Bên cạnh đó, phươngpháp này không bắt buộc phải trực tuyến liên tục vì việc đào tạo có thể được thực hiệnngoại tuyến và kết quả được trả về sau đó Vì vậy, học máy liên kết được cho là đã trởthành kỹ thuật bảo vệ quyền riêng tư được sử dụng rộng rãi nhất Tuy nhiên, việc thiếu
mã hóa có thể cho phép kẻ tấn công đánh cắp dữ liệu nhận dạng cá nhân trực tiếp từnguồn sở hữu dữ liệu hoặc can thiệp vào quá trình giao tiếp Bản chất phi tập trung của
dữ liệu làm phức tạp việc quản lý dữ liệu để xác định tính vẹn toàn và chất lượng củakết quả Trong trường hợp các thuật toán cục bộ không được mã hóa hoặc các bản cậpnhật không được tổng hợp an toàn, dữ liệu có thể bị rò rỉ hoặc các thuật toán có thể bịgiả mạo, đánh cắp Hơn thế nữa mạng nơ-ron đại diện cho một dạng bộ nhớ với cácbiểu diễn nén của dữ liệu trong trọng số của chúng, việc xây dựng lại các phần dữ liệuhuấn luyện từ bộ mô hình học sâu là hoàn toàn có thể Người ta đã chỉ ra rằng hình ảnh
có thể được tái tạo với độ chính xác và chi tiết ấn tượng [2] Do đó, học tập liên kếtcung cấp một cách tiếp cận cơ sở hạ tầng đối với quyền riêng tư và bảo mật nhưng nócần phải kết hợp với các biện pháp khác để mở rộng phạm vi bảo vệ quyền riêng tưcủa mình
1.2.2 Quyền riêng tư khác biệt – Differential Privacy
Các phương pháp bảo vệ quyền riêng tư dựa vào sự nhiễu loạn dữ liệu cơ bản hoạtđộng thông qua việc sửa đổi ngẫu nhiên có hệ thống của tập dữ liệu hoặc thuật toánlàm giảm thông tin riêng về một cá nhân trong khi vẫn giữ được lập luận thống kê của
dữ liệu Trong đó cách giữ lại phân phối thống kê tổng thể của tập dữ liệu và giảmthông tin cá nhân có thể bị nhận dạng được gọi là quyền riêng tư khác biệt viết tắt là
DP (Differential Privacy) [3] Một tập dữ liệu là khác biệt về mặt riêng tư nếu mộtngười quan sát bên ngoài không thể suy ra một cá nhân cụ thể nào đó đã được sử dụng
để thu thập dữ liệu hay không Ví dụ có thể suy ra mối quan hệ giữa béo phì và bệnhtim mà không cần biết các chỉ số cơ thể của bệnh nhân Do đó, DP cung cấp khả năngchống lại các cuộc tấn công nhận dạng lại như liên kết hoặc thiết lập mối tương quantrong một phạm vi nhất định với tập dữ liệu Điều này giúp chúng ta đảm bảo rằng cácmạng học sâu không vô tình học được những điều không được phép từ dữ liệu
Trang 10Mã hóa đồng cấu – Homomorphic Encryption (HE) là một lược đồ mã hóa chophép tính toán trên dữ liệu được mã hóa như thể nó là văn bản thuần túy Đồng cấu làmột khái niệm toán học, theo đó cấu trúc được bảo toàn trong suốt quá trình tính toán
và chỉ có một số phép toán là đồng cấu đó là phép cộng và phép nhân Do vậy việc ápdụng HE cho mạng nơ-ron cũng yêu cầu các phép toán trong thuật toán phải tuân theogiới hạn này và cũng chính vì điều kiện trên mà các thuật toán mã hóa tiêu chuẩn, mãhóa nâng cao không thể sử dụng được Hiện đã có một số triển khai thuật toán HE vớicác mức hiệu quả khác nhau, trong đó sự đánh đổi giữa hiệu quả bảo mật và hiệu suấttính toán là vấn đề đáng chú ý nhất Tuy nhiên HE đã được áp dụng thành công chomạng nơ-ron phức hợp và lợi ích của nó thể hiện trong kịch bản máy học như một dịch
vụ, theo đó dữ liệu được gửi qua mạng để xử lý trên một máy chủ ngoài trang web(điện toán đám mây), nó cũng được sử dụng trong học máy liên kết để tổng hợp cácbản cập nhật thuật toán một cách an toàn
1.2.4 Tính toán bảo mật nhiều thành viên (Secure multi-party computation – SMPC)
Tính toán bảo mật có thể được mở rộng cho nhiều bên – tính toán nhiều bên antoàn (Secure multi-party computation – SMPC), có nghĩa quá trình xử lý được thựchiện trên các chia sẻ dữ liệu được mã hóa, phân chia giữa các bên theo cách mà khôngmột bên nào có thể tự mình truy xuất dữ liệu Kết quả tính toán được công bố màkhông bất kỳ bên nào nhìn thấy dữ liệu của chính nó, dữ liệu này chỉ được khôi phụckhi có sự đồng thuận Phương pháp này đã được sử dụng trong việc xác định và chẩnđoán trình tự gen mà không tiết lộ bộ gen của bệnh nhân [4] SMPC cho phép cung
Trang 11cấp các dịch vụ học máy có trách nhiệm về mặt đạo đức khi việc sử dụng dữ liệu chomục đích thương mại là không thể hoặc ít nhất là dưới sự kiểm soát của cá nhân vàtuân theo quy định pháp luật.
1.3 Lược đồ mã hóa đồng cấu
Các lược đồ mã hóa đồng cấu (Homomorphic Encryption – HE) [Deep NeuralNetwork over Encryption] bảo toàn cấu trúc không gian của thông điệp để chúng ta cóthể thực hiện được các phép toán như cộng và nhân trên không gian bản mã Giốngnhư các lược đồ mã hóa khác, HE có ba chức năng chính, đó là Gen, Enc, Dec tươngứng với tạo khóa, mã hóa và giải mã Tuy nhiên, một điểm khác biệt ở HE đó là nó còn
có chức năng đánh giá Eval Giả sử chúng ta có một thông điệp dạng rõ {mi} và bản
mã tương ứng là {ci} Xét tập bản mã C, hàm đánh giá sẽ xử lý khóa công khai pk và
bộ mã {ci} và tập C sao cho:
mã khác nhưng lượng nhiễu tăng lên Hàm Dec sẽ hoạt động chính xác nếu lượngnhiễu đó nhỏ hơn một ngưỡng Ngưỡng này tạo ra một giới hạn về số lượng phép toánđược thực hiện trên dữ liệu mã hóa Nếu muốn giảm nhiễu, phải đồng thời thực hiện
mã hóa và giải mã sao cho độ nhiễu không vượt quá ngưỡng cho phép, điều này cónghĩa sẽ phải sử dụng khóa bí mật sk
Vào năm 2009, mã hóa đồng cấu toàn phần (Fully Homomorphic Encryption –FHE) đã được ra đời và giải quyết vấn đề này Đây là một lược đồ HE hỗ trợ các mạch
có độ sâu tùy ý thông qua kỹ thuật xử lý độ sâu tính toán là bootstrapping Trong kỹthuật này, lượng nhiễu được giảm xuống đáng kể mà không cần truy cập khóa bí mật
sk Tuy nhiên, FHE tiêu tốn quá nhiều thời gian cũng như tài nguyên để tính toán, dovậy nó không được sử dụng nhiều trong thực tế Hạn chế này đã tạo ra bước tiến trong
Trang 12quá trình phát triển mã hóa HE, đó là LHE (Leveled Homomorphic Encryption) Lược
đồ này chỉ cho phép các mạch có độ sâu nhỏ hơn một ngưỡng cụ thể Nếu có thể biếtđược số lượng tính toán, LHE có thể được sử dụng thay thế cho FHE bởi nó có hiểusuất cao hơn thông qua kỹ thuật SIMD (Single-Instruction-Multiple-Data)
Bên cạnh những ưu điểm của mã hóa đồng cấu thì chúng cũng có một số hạn chế.Thứ nhất, đó là không gian thông điệp Hầu hết tất cả các lược đồ mã hóa HE đều chỉlàm việc với số nguyên, do vậy phải tiến hành chuyển đổi trước khi mã hóa dữ liệu.Thứ hai là kích thước của thông điệp sẽ tăng lên đáng kể sau khi mã hóa Hạn chế tiếptheo, đó là nhiễu, sau mỗi lần thực hiện phép toán, lượng nhiễu sẽ bị tăng lên, đặc biêt
là phép nhân sẽ làm nhiễu tăng đáng kể hơn cả Hạn chế cuối cùng và quan trọng nhất,
đó là HE không có phép chia, do vậy các phép toán phức tạp như hàm kích hoạt trongDeep Learning sẽ không được sử dụng trong quá trình tính toán trên dữ liệu đã được
HE mã hóa
1.4 Deep Learning: Mạng nơ-ron tích chập CNN
Deep Learning mô phỏng các thuật toán phân tích dữ liệu có cấu trúc logic tương
tự như cách con người đưa ra kết luận Để đạt được điều này, các ứng dụng DeepLearning đã sử dụng cấu trúc phân lớp của các thuật toán được gọi là mạng nơ-ronnhân tạo Thiết kế của mạng này được lấy cảm hứng từ mạng lưới thần kinh sinh họccủa não người, dẫn đến quá trình học mang lại nhiều tác dụng hơn so với các mô hìnhMachine Learning tiêu chuẩn Mạng nơ-ron là sự kết hợp của rất nhiều nơ-ron đượcsắp xếp thành các lớp nối tiếp nhau Mỗi nơ-ron nhận một đầu vào, sau đó tính toánhàm tương ứng với từng lớp nơ-ron, kết quả đầu ra sẽ là đầu vào cho lớp nơ-ron kếttiếp Mỗi lớp nơ-ron đều có cấu trúc hàm tính toán riêng từ đơn giản như các hàm sốtuyến tính đến các hàm số phi tuyến phức tạp hơn như Sigmoid, Max, Mean,…
Trang 13Hình 1.1 Các lớp của mạng CNN
Mạng nơ-ron tích chập (ConvNets hay CNNs, Convolutional Neural Network) làmột trong các mô hình mạng Deep Learning tiêu biểu, lấy ý tưởng từ tổ chức của vỏnão thị giác động vật Chúng đã được chứng mình là có hiệu quả đáng kể trong cáclĩnh dựa nhận diện và phân loại hình ảnh Một mạng CNN đơn giản bao gồm ba loạilớp chính đó là lớp tích chập (Convolutional Layer), lớp kết nối toàn phần (FC – FullyConnected) và lớp kích hoạt (Activation Layer) Trong đó, lớp đầu tiên của CNN luôn
là lớp tích chập, dùng để lựa chọn các đặc điểm, tính chất từ trong hình ảnh thô banđầu Trong lớp FC, đầu vào của nơ-ron ở lớp này sẽ bao gồm tất cả đầu ra của các nơ-ron ở lớp trước đó, mức độ ảnh hưởng của từng đầu vào sẽ được quyết định bởi trọng
số Lớp kích hoạt sẽ được cố định bởi một hàm phi tuyến ví dụ như Sigmoid, ReLU,Tanh giúp tạo ra sự phi tuyến cho mô hình