본문으로 건너뛰기
피드

샤미르 비밀 공유, “둘이면 열리고 하나로는 절대 안 열리는” 복구 방식

security 약 5분
vote
0
댓글
북마크

샤미르 비밀 공유는 중요한 비밀을 여러 조각으로 나누되, 정해진 개수 이상이 모여야만 원래 값을 복구할 수 있게 만드는 암호학 기법이다. 핵심은 ‘풀기 어렵다’가 아니라, 임계값보다 적은 조각으로는 비밀에 대한 정보가 아예 없다는 점이다.

  • 1

    샤미르 비밀 공유는 1979년 아디 샤미르가 제안한 임계값 기반 비밀 분할 방식이다.

  • 2

    2개 조각이면 직선, 3개 조각이면 포물선처럼 다항식 차수를 올려 필요한 조각 수를 조절한다.

  • 3

    실제 구현은 그래프 종이가 아니라 유한체 연산을 쓰며, 비밀은 다항식의 0 지점 값으로 숨긴다.

  • 4

    엔트는 이 방식을 레거시 키트 복구 흐름의 한 계층으로 사용하되, 카드 자체가 영구 복구 키가 되지 않게 설계했다.

  • 어떤 비밀은 한 사람에게 맡기기엔 너무 위험하고, 그렇다고 그 사람이 사라졌을 때 같이 날아가도 곤란함

    • 회사 마스터 키는 임원 3명이 모여야 열리게 하고 싶을 수 있음
    • 가족 계정 복구도 봉투 하나만 있으면 끝나는 구조보단, 여러 사람이 함께 확인해야 더 안전함
    • 팀 백업 키도 누군가 퇴사하거나 연락이 끊겨도 복구는 돼야 하지만, 한 명이 전체를 들고 있으면 그건 또 사고임
  • 아디 샤미르가 1979년에 낸 아이디어는 이 문제를 꽤 우아하게 푼다

    • 샤미르는 RSA의 S에 해당하는 그 사람임
    • 비밀을 여러 조각으로 나누고, 그중 정해진 개수 이상이 모이면 복구 가능하게 만듦
    • 중요한 건 “뚫기 어렵다”가 아니라 “정해진 개수보다 적으면 아무 정보도 안 나온다”는 점임

중요

> 샤미르 비밀 공유의 핵심은 난이도가 아니라 정보량임. 조각이 부족하면 가능한 비밀 후보가 전부 열려 있어서, 원래 비밀에 대해 얻는 정보가 0에 가깝다.

  • 2개 조각으로 복구하는 방식은 직선 하나로 이해하면 됨

    • 직선은 서로 다른 점 2개가 있으면 딱 하나로 결정됨
    • 점 1개만 있으면 그 점을 지나는 직선은 무한히 많고, 각 직선은 y축과 다른 위치에서 만남
    • 비밀을 y축과 만나는 값에 숨겨두면, 점 1개를 가진 사람은 어떤 비밀이 맞는지 전혀 좁힐 수 없음
  • 예를 들어 비밀이 숫자 7이면, y축의 7 지점을 지나는 랜덤한 직선을 하나 고름

    • 기울기는 비밀이 아니라 랜덤성 역할을 함
    • 각 사람에게는 이 직선 위의 점 하나만 나눠줌
    • 한 사람의 점 하나로는 수많은 직선이 가능하니, 비밀이 7인지 100인지 999인지 알 방법이 없음
    • 두 사람이 점을 합치면 직선이 확정되고, 그때 y축과 만나는 값을 읽어서 비밀을 복구함
  • 임계값을 더 올리고 싶으면 직선 대신 더 휘어진 곡선을 쓰면 됨

    • 2개 조각이 필요하면 직선
    • 3개 조각이 필요하면 포물선
    • 4개 조각이 필요하면 3차 곡선
    • 일반적으로 k개 조각이 필요하면 차수가 k - 1인 다항식을 사용함
  • 실제 구현은 그래프를 그리는 게 아니라 유한체 연산으로 처리함

    • 비밀은 다항식의 0 지점 값임
    • 랜덤 계수들이 비밀을 숨기는 역할을 함
    • 각 공유 조각은 다항식 위의 한 점임
    • 임계값보다 적은 조각으로는 가능한 비밀이 여전히 전부 가능하다는 게 보안의 핵심임
  • 엔트는 이 아이디어를 레거시 키트에 한 계층으로 넣었다고 설명함

    • 문제는 단순히 “비밀을 어떻게 나누나”가 아니었음
    • 복구가 가능해야 하지만, 나눠준 조각이 영구 복구 키처럼 남아 있으면 위험함
    • 그래서 카드가 복구 키 자체를 들고 있는 구조가 아니라, 로컬에서 별도 비밀을 재구성하고 서버가 개입하는 복구 흐름에 참여하는 방식임
    • 덕분에 발급된 카드를 폐기할 수 있고, 잃어버린 카드 하나가 영구적인 사고 지점이 되지 않음

기술 맥락

  • 샤미르 비밀 공유가 흥미로운 이유는 백업을 “복사”하지 않고 “조건부 복구”로 바꿔주기 때문이에요. 보통 복구 키를 여러 곳에 복사하면 보관 지점이 늘어날수록 공격 표면도 같이 커지거든요.

  • 여기서는 비밀을 다항식의 0 지점 값으로 두고, 나머지 계수는 랜덤하게 채워요. 각 사용자에게는 다항식 위의 점 하나만 주기 때문에, 필요한 점 개수에 못 미치면 원래 비밀을 좁힐 단서가 생기지 않아요.

  • 엔트가 신경 쓴 부분은 “조각을 모으면 복구된다”에서 끝나지 않아요. 카드 자체가 영구 복구 키가 되면 분실이나 회수 불능이 바로 리스크가 되니까, 로컬 재구성과 서버 중재를 섞어서 폐기 가능한 복구 흐름을 만든 거예요.

  • 개발자 입장에선 이 패턴이 계정 복구, 조직 키 관리, 상속형 접근 권한 설계에 꽤 직접적으로 연결돼요. 단순히 키를 안전한 곳에 두는 문제가 아니라, 누가 몇 명 모였을 때 어떤 권한이 열릴지 정책으로 설계하는 문제에 가깝거든요.

이 글의 포인트는 ‘백업 키를 쪼갠다’가 아니라, 적은 조각으로는 정보가 0이라는 보안 성질에 있음. 계정 복구, 조직 키 관리, 상속형 복구 UX를 설계할 때 꽤 현실적인 힌트를 준다.

댓글

댓글

댓글을 불러오는 중...

security

엘에이 경찰, 사생활 침해 논란 끝에 플록 번호판 감시 계약 종료

엘에이 경찰이 번호판 인식 카메라 업체 플록 세이프티와의 3년 계약을 연장하지 않기로 했어. 시민권, 프라이버시, 데이터 보관과 공유 문제를 해결하지 못했다는 게 핵심 이유야. 플록은 미국 전역에 최소 8만 대 카메라망을 깔아 경찰과 연방기관이 차량을 추적할 수 있게 해왔고, 오탐·보안 사고·이민 단속 악용 의혹까지 겹치며 압박이 커졌어.

security

크로미움 148부터 Math.tanh 한 번으로 운영체제 지문이 새는 문제

크로미움 148 이후 V8이 Math.tanh 계산을 자체 구현 대신 운영체제의 수학 라이브러리에 맡기면서, 같은 입력값도 리눅스·맥·윈도우에서 마지막 비트가 달라지는 지문 신호가 생겼다. 이 차이는 User-Agent로 맥이라고 주장하면서 리눅스 수학 결과를 내는 식의 위장을 바로 들키게 만든다. CSS 삼각함수와 웹 오디오까지 보면 브라우저 수학 경로가 꽤 복잡하게 갈라지고, 제대로 흉내 내려면 실제 운영체제 라이브러리의 비트 단위 동작까지 맞춰야 한다.

security

출입통제도 클라우드 구독제로 간다…제로트러스트·AI 분석이 승부처

기업 출입보안이 사업장별 서버를 두는 방식에서 클라우드 기반 서비스형 출입통제(ACaaS)로 옮겨가고 있다. 시장은 2026년 17억8000만 달러에서 2030년 31억9000만 달러로 커질 전망이고, 제로트러스트·모바일 인증·AI 출입 분석·스마트빌딩 통합이 핵심 경쟁 포인트로 꼽힌다.

security

AWS·구글 클라우드, 양자컴퓨터 대비해 암호 체계 갈아엎는 중

AWS와 구글 클라우드가 양자컴퓨터 시대를 대비해 기존 공개키 암호와 양자내성암호를 함께 쓰는 하이브리드 전환을 시작했다. 핵심 배경은 지금 훔친 암호문을 나중에 양자컴퓨터로 푸는 ‘선수집·후해독’ 공격이고, 국내도 통신·금융·국방 등 5개 분야에 45억원을 투입해 실증에 들어간다.

security

보안 점검 맡긴 AI 에이전트가 악성코드를 직접 실행할 수 있다는 경고

AI 보안 에이전트가 저장소를 검사하다가 README 같은 문서에 숨은 프롬프트 인젝션에 속아 악성 바이너리를 실행할 수 있다는 연구가 나왔다. 클로드 코드와 코덱스의 자동 모드처럼 승인 없이 명령을 수행하는 구성에서 문제가 재현됐고, 여러 모델과 공급업체를 가로질러 같은 패턴이 통했다는 점이 핵심이다.