자기상관 (Autocorrelation)

고급암호학수정일

자기상관(autocorrelation)은 하나의 수열을 지연(lag) k만큼 밀어 놓은 자기 자신과 비교했을 때의 선형 상관입니다. 즉 지금의 값이 k단계 뒤(또는 앞)의 값을 선형적으로 얼마나 예측하는지를 나타내며, 지연마다 다른 값을 가지므로 지연 k의 함수 R(k)로 표현합니다.

자세히 알아보기

표본 자기상관은 r_k = Σ(x_t − x̄)(x_{t+k} − x̄) / Σ(x_t − x̄)²로 계산하며, 지연 0에서는 항상 1입니다. 지연에 따른 r_k를 그린 그래프(코렐로그램)를 보면 주기성이나 추세가 드러납니다. 백색 잡음처럼 독립적인 수열은 k ≠ 0인 모든 지연에서 자기상관이 0에 가깝습니다.

이진 수열에서는 비트를 ±1로 바꿔 C(k) = Σ(−1)s_t ⊕ s_{t+k}로 정의하는 경우가 많습니다. 솔로몬 골롬이 제시한 의사난수 수열의 세 가지 조건(골롬의 무작위성 공리) 중 하나가 '자기상관이 두 값만 가질 것'이며, 최대 길이 LFSR 수열(m-수열)은 이 조건을 완벽히 만족합니다. 그러나 m-수열은 베를레캄프-매시 알고리즘으로 쉽게 예측되므로, 좋은 자기상관은 무작위성의 필요조건일 뿐 충분조건이 아닙니다.

블록체인·암호화폐에서는

  • 난수 검정: 『응용 암호학 핸드북(HAC)』이 소개하는 기본 무작위성 검정 다섯 가지에 자기상관 검정이 포함되며, 지갑 키 생성기나 하드웨어 난수원의 출력이 시간적으로 상관되어 있지 않은지 점검하는 데 쓰입니다. NIST SP 800-90B의 잡음원 평가에서도 표본 간 의존성을 확인합니다.
  • 시장 분석: 수익률의 자기상관이 유의미하게 0과 다르면 과거 수익률로 미래를 예측할 여지가 있다는 뜻이어서, 약형 효율적 시장 가설의 검증 도구가 됩니다. 수익률 자체보다 '변동성'(수익률 제곱)의 자기상관이 강하게 나타나는 변동성 군집 현상이 암호화폐에서도 관찰됩니다.
  • 통신·위치 측정: GPS 신호 같은 확산 코드는 자기상관이 날카로운 수열을 써서 신호 시점을 정확히 찾습니다.

쉽게 말하면

자기상관은 '어제의 나와 오늘의 내가 얼마나 닮았는가'를 재는 값입니다.

예시

수열 1, 0, 1, 0, 1, 0, …은 지연 1에서 자기상관이 −1(완전히 반대), 지연 2에서 +1(완전히 같음)입니다. 이런 수열은 예측이 너무 쉬워 난수로 쓸 수 없습니다.

진짜 무작위 비트열이라면 지연 1의 자기상관이 0 근처여야 하며, n비트 표본에서 그 표준 편차는 대략 1/√n입니다. 이보다 훨씬 큰 값은 생성기를 의심할 신호입니다.

이 글은 학습을 위한 일반 정보이며 투자 권유나 법률 자문이 아닙니다. 가상자산은 가격 변동이 크고 원금 손실 위험이 있습니다.