We are living in an era of data deluge where more than 2.5 Exabytes of data are created every single day. In order to deal with the increasing demand for processing big data, centralized systems have been progressively replaced by distributed systems where multiple nodes located on different machines collectively act as a single coherent system. However, distributed systems suffer from reliability and security issues due to inevitable node failure events and adversarial attacks. This thesis focuses on constructing reliable, secure, and resource-efficient distributed systems based on coding and information theory. In the first part, we obtain the secrecy capacity, the maximum data size that can be stored with perfect secrecy, in clustered distributed storage system and provide explicit coding schemes to securely store the data against eavesdroppers. In the second part, we suggest a general framework for the coded Practical Byzantine Fault Tolerance consensus algorithm for enabling resource-efficient agreement among distributed nodes under Byzantine attacks. In the last part, we propose communication-computation efficient secure aggregation which considerably reduces the amount of communication/computational resources required for private federated learning.
우리는 매일 2.5 엑사바이트 이상의 데이터가 생성되는 데이터 홍수의 시대에 살고 있다. 활용할 데이터가 많아짐에 따라 기존의 중앙 집중 시스템은 여러 노드가 하나의 목적을 가지고 협력적으로 활용되는 분산 시스템으로 점진적으로 대체되고 있다. 하지만 분산 시스템은 내부 결함과 악의적 공격에 취약하다는 단점이 존재한다. 이 논문에서는 부호 및 정보이론을 활용하여 신뢰 가능하고 안전하며 자원 효율적인 분산 시스템을 구축하는 것을 목표로 한다. 첫 번째 파트에서는 군집형 분산 저장 시스템에서 외부 도청자에게 데이터 노출 없이 안전하게 저장할 수 있는 데이터의 최대 크기인 보안 용량을 얻고, 이를 달성할 수 있는 부호화 기술을 제안한다. 두 번째 파트에서는 비잔틴 공격에 강인하고, 노드 간 필요 통신량을 최소로 갖는 자원 효율적인 부호화 비잔틴 장애 허용 합의 알고리즘을 제안한다. 마지막 파트에서는 다수의 노드가 하나의 모델을 학습하는 연합 학습 시스템에서 노드의 개인 정보 유출 없이 데이터를 집계하는 통신/계산 효율적 안전 집계 방식을 제안한다.