매일 아침 개발자가 마주하는 신경망 모델의 트랜스포머(Transformer, 문맥을 파악해 텍스트를 처리하는 신경망 구조) 아키텍처와 데이터를 보호하는 암호화 알고리즘은 겉보기에 전혀 다른 목적을 가진 것처럼 보인다. 하나는 데이터에서 패턴을 학습해 결과를 생성하고, 다른 하나는 정보를 뒤섞어 숨기는 역할을 수행하기 때문이다. 하지만 이 두 분야의 핵심 알고리즘을 뜯어보면 놀라울 정도로 유사한 설계 원리가 관찰된다.

신경망과 암호화의 구조적 일치

과거의 순환 신경망(RNN, 데이터를 순차적으로 입력받아 처리하는 신경망)은 텍스트 토큰을 하나씩 입력받아 상태를 갱신한 뒤 결과를 출력한다. 이는 암호학의 SHA-3(데이터를 고정된 길이의 해시값으로 변환하는 암호화 알고리즘)에서 바이트를 상태에 흡수시킨 뒤 해시를 추출하는 스펀지 구조와 동일한 방식이다. 현대 하드웨어는 병렬 처리에 최적화되어 있어 순차적 처리는 성능 저하를 유발한다. 이에 따라 두 분야는 모두 긴 입력 데이터를 청크(Chunk, 데이터 처리 단위)로 나누어 병렬로 처리한 뒤, 단순 덧셈으로 결합하는 방식을 채택했다. 이때 발생하는 순서 정보 손실은 위치 인코딩(Position Encoding, 데이터의 순서를 신경망에 알려주는 기법)을 추가하여 해결한다. 신경망에서는 이 구조가 트랜스포머의 근간이 되었고, 암호학에서는 가장 빠른 메시지 인증 코드(MAC, 데이터의 무결성을 확인하는 암호화 기술)를 구동하는 핵심이 되었다.

반복적 혼합 계층의 설계 원리

예전에는 각 분야마다 복잡하고 독창적인 구조를 설계하려 애썼으나, 이제는 선형 변환과 비선형 변환을 반복하는 동일한 층을 여러 번 쌓는 방식을 표준으로 삼는다. 선형 변환은 벡터 위치 간의 정보를 섞어 상호작용을 유도하고, 비선형 변환은 모델에 복잡성을 부여하여 단순한 선형 결합을 넘어선 표현력을 갖게 한다. 구체적으로 신경망은 어텐션(Attention, 문장 내 단어 간 관계를 계산하는 기술)을 통해 행을 섞고 피드포워드(Feed-forward, 데이터를 순방향으로 전달하는 층)를 통해 열을 섞는다. 암호화 알고리즘인 AES(고급 암호화 표준) 역시 ShiftRows(행을 이동시키는 암호화 연산)와 MixColumns(열을 혼합하는 암호화 연산)를 교차하여 상태를 섞는다. 이러한 팩터화된 접근은 전체 상태를 한 번에 섞는 것보다 연산 효율이 높으며, 캐시와 레지스터 활용도를 극대화하여 하드웨어 가속에 유리하다.

하드웨어 성능과 알고리즘의 수렴

개발자가 체감하는 이러한 유사성은 두 분야가 공유하는 세 가지 독특한 속성에서 기인한다. 첫째, 엄격한 정답을 요구하는 컴파일러나 데이터베이스와 달리, 신경망은 미분 가능성만, 암호학은 가역성만 확보하면 된다. 이 자유도는 20줄 내외의 단순한 기본 연산을 반복하는 구조를 가능케 했다. 둘째, 모든 출력 비트가 모든 입력 비트에 복잡하게 의존해야 한다는 품질 기준이 동일하다. 이는 정보가 위치 간에 한 번이 아닌 여러 번 반복해서 흐르도록 설계하게 만든다. 셋째, 두 분야 모두 어셈블리 수준의 최적화와 커스텀 하드웨어 구현을 중시한다. 경제적 압박으로 인해 대규모 연산이 필수적인 상황에서, 병렬 처리가 쉽고 단순한 알고리즘은 자연스럽게 생존 경쟁에서 승리했다. 생물학적 진화가 눈이라는 구조를 여러 번 독립적으로 발명했듯, 인간의 연구 역시 고성능 하드웨어 위에서 복잡하게 정보를 섞어야 하는 환경 속에서 동일한 설계 구조를 반복해서 찾아내고 있다.

결국 신경망과 암호학의 수렴은 단순한 우연이 아니라, 하드웨어의 물리적 한계와 정보 혼합이라는 수학적 요구사항이 빚어낸 필연적인 진화의 결과다.